/* Relationship history: scoped to staff connection views. */
.connection-hub{margin-top:20px;overflow:hidden;border-color:#51302d;background:linear-gradient(145deg,#2b191d 0%,#201718 42%,#1d1718 100%)}
.connection-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 26px;border-bottom:1px solid #49302e;background:radial-gradient(ellipse at top right,#711e3544,transparent 65%)}
.connection-eyebrow{font-size:10px;letter-spacing:.17em;color:#d3ab65;font-weight:600}.connection-heading h2{font-family:var(--display);font-size:28px;line-height:1.25;margin:5px 0 7px;color:#f2e4ce}.connection-heading p{margin:0;color:#bda997;font-size:13px;line-height:1.6}.connection-heading>.btn{flex:none}
.connection-filters{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:20px 26px 8px}.connection-filters label{margin:0;min-width:155px}.connection-filters .connection-search{flex:1;min-width:200px}.connection-filters .input{width:100%;background:#181313;border-color:#48312f;font-size:13px;min-height:42px}.connection-list-meta{display:flex;justify-content:space-between;gap:12px;padding:5px 26px 16px;font-size:11px;color:#a99180}.connection-list-meta>span:first-child{color:#d4b993}
#review-connections-list{padding:0 20px;display:grid;gap:10px}.connection-card{min-width:0;border:1px solid #49322f;border-radius:12px;background:#251b1c;overflow:hidden}.connection-card[open]{border-color:#896236;background:#291d1e}.connection-summary{list-style:none;display:grid;grid-template-columns:64px minmax(0,1fr) auto 65px 18px;gap:16px;align-items:center;padding:18px;cursor:pointer;transition:background .15s}.connection-summary::-webkit-details-marker{display:none}.connection-summary:hover{background:#6e293322}.connection-summary:focus-visible{outline:2px solid #e8c27d;outline-offset:-3px;border-radius:10px}.connection-seals{display:flex;align-items:center}.connection-seals>span{display:grid;place-items:center;flex:none;width:39px;height:39px;border-radius:12px;background:linear-gradient(145deg,#752338,#3e1b28);border:1px solid #a95d64;color:#f6d4b2;font:24px var(--display)}.connection-seals>span+span{margin-left:-10px;transform:translateY(8px);background:linear-gradient(145deg,#235e50,#192c29);border-color:#5c9582;color:#b7e0c9}.connection-seals>span.is-gang{background:linear-gradient(145deg,#654277,#302139);border-color:#9971ae;color:#e1c8f1}
.connection-names{min-width:0}.connection-names strong{display:block;font-size:15px;line-height:1.5;color:#f3e3cb;overflow-wrap:anywhere}.connection-names strong>span{color:#b38161;margin:0 5px;font-weight:400}.connection-names small{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:#b09a89;margin-top:5px;line-height:1.6}.connection-names small>span{color:#968170}.connection-snapshot{display:flex;gap:6px;align-items:flex-end;flex-direction:column}.connection-tone{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:10px;font-weight:600;padding:4px 9px;border-radius:20px;border:1px solid}.connection-tone:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}.tone-positive{color:#8ed8b2;background:#19382b;border-color:#396b52}.tone-neutral{color:#e7c385;background:#3d3020;border-color:#71572f}.tone-negative{color:#f3a2af;background:#461f2b;border-color:#8c4554}.tone-mixed{color:#d6b4f1;background:#34233f;border-color:#76528c}.tone-unrecorded{color:#baa99b;background:#292222;border-color:#56443b}.connection-status{font-size:10px;color:#baa28d;line-height:1.5}.connection-total{text-align:right}.connection-total strong{display:block;color:#ead0a1;font:25px var(--display);line-height:1.2}.connection-total small{font-size:9px;letter-spacing:.06em;color:#aa9380}.connection-expand{font-size:20px;color:#b99a6b;text-align:center}.connection-card[open] .connection-expand{transform:rotate(180deg)}
.connection-history{padding:18px 22px 22px;border-top:1px solid #49322f;background:#19141480}.connection-history-heading{display:flex;align-items:baseline;gap:12px;margin-bottom:18px}.connection-history-heading h3{font-size:13px;margin:0;color:#d8bd95}.connection-history-heading>span{font-size:11px;color:#a28b7a}.connection-timeline{border-left:1px solid #674630;margin:0 0 18px 5px;padding-left:23px}.connection-report{position:relative;padding:0 0 20px;overflow-wrap:anywhere}.connection-report:last-child{padding-bottom:0}.connection-report:before{content:'';position:absolute;width:7px;height:7px;left:-28px;top:9px;background:#dbb575;border:2px solid #2c1c1c;border-radius:50%}.connection-report-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.connection-report time{font-size:12px;font-weight:600;color:#e3c79c}.connection-report-source{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12px;color:#e2cbb2;margin:6px 0}.connection-report-source>span{font-size:11px;color:#ac9582}.connection-report>p{font-size:13px;line-height:1.7;color:#cfb9a1;margin:8px 0}.connection-review-link{display:inline-block;font-size:11px;color:#e1b96f;margin-top:4px}.connection-reference summary{font-size:11px;color:#b69b7d;cursor:pointer}.connection-reference p{font-size:12px;color:#b9a18b;line-height:1.6;max-width:100%;overflow-wrap:anywhere}
.connection-pagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:14px;color:#ac9582;font-size:11px;padding:16px 20px}.connection-pagination:empty{display:none}.connection-pagination>.btn{font-size:11px}.connection-footnotes{margin-top:16px;border-top:1px solid #49302d;padding:5px 26px 12px}.connection-guide,.connection-unlinked{padding:12px 0}.connection-guide>summary,.connection-unlinked>summary{font-size:12px;color:#bda481;cursor:pointer;line-height:1.5}.connection-guide p{font-size:12px;line-height:1.7;color:#b09a86;margin:10px 0;max-width:850px}.connection-guide a{font-size:12px;color:#d7b677}.connection-unlinked>summary{color:#e0b365}.connection-unlinked-item{padding:12px 0;border-bottom:1px solid #48302b;overflow-wrap:anywhere}.connection-unlinked-item strong{font-size:13px;color:#dec5a3}.connection-unlinked-item small{font-size:11px;color:#aa8d75;margin-left:12px}.connection-unlinked-item p{font-size:12px;line-height:1.6;color:#bfa487;margin:5px 0}.connection-empty{text-align:center;padding:36px 20px;border:1px dashed #654233;border-radius:12px}.connection-empty strong{font:22px var(--display);color:#e0c9a6}.connection-empty p{color:#b49a82;font-size:13px;line-height:1.6}
[data-manual-relationships]{border:1px solid #4c342d;background:#211819;border-radius:12px;margin-top:18px;padding:0 18px}[data-manual-relationships]>summary{padding:16px 0;font-size:13px;font-weight:600;cursor:pointer;color:#d5b784}[data-manual-relationships]>.panel{border:0;margin:0!important}.connection-hub .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:850px){.connection-summary{grid-template-columns:55px minmax(0,1fr) auto 16px;gap:12px}.connection-total{display:none}.connection-seals>span{width:35px;height:35px;font-size:21px}.connection-names strong{font-size:14px}.connection-names small>span{display:none}.connection-heading{padding:20px}.connection-heading h2{font-size:25px}}
@media(max-width:560px){.connection-heading{align-items:flex-start;flex-direction:column;gap:14px}.connection-heading>.btn{width:100%}.connection-filters{padding:16px 16px 8px;gap:8px}.connection-filters .connection-search{flex-basis:100%}.connection-filters label:not(.connection-search){flex:1;min-width:130px}.connection-list-meta{padding:8px 16px 14px}.connection-list-meta>span:last-child{display:none}#review-connections-list{padding:0 10px}.connection-summary{padding:14px 12px;grid-template-columns:46px minmax(0,1fr) 16px;gap:10px}.connection-seals>span{width:30px;height:30px;border-radius:9px;font-size:19px}.connection-snapshot{grid-column:2;grid-row:2;align-items:flex-start;flex-direction:row;flex-wrap:wrap}.connection-expand{grid-column:3;grid-row:1}.connection-history{padding:16px}.connection-footnotes{padding:4px 16px 10px}.connection-report-top{gap:8px}.connection-names small{margin-top:2px}}

/* Family-first directory, with focused connections inside each card. */
#review-connections-list.family-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.family-relationship-card{min-width:0;border:1px solid #603a3c;border-radius:14px;background:linear-gradient(130deg,#3f202999,#241a1c);overflow:hidden;align-self:start}.family-relationship-card>summary{list-style:none;display:flex;align-items:center;gap:16px;padding:22px;cursor:pointer}.family-relationship-card>summary::-webkit-details-marker{display:none}.family-relationship-card>summary:hover{background:#8c35451a}.family-relationship-card>summary:focus-visible{outline:2px solid #e8c27d;outline-offset:-3px;border-radius:12px}.family-relationship-seal{display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:14px;background:#532636;border:1px solid var(--family-accent,#a95d64);color:#f4d9b4;font:30px var(--display)}.family-relationship-name{min-width:0;flex:1}.family-relationship-name strong{font:23px var(--display);display:block;line-height:1.3;color:#efddc3;overflow-wrap:anywhere}.family-relationship-name small{display:block;font-size:10px;color:#b99b86;margin-top:7px;line-height:1.6}.family-relationship-count{display:flex;flex-direction:column;text-align:right;color:#e1bd7e;font:27px var(--display)}.family-relationship-count small{font:9px var(--body,system-ui);color:#ae9280;letter-spacing:.03em;margin-top:2px}.family-relationship-open{font-size:11px;color:#d7b578;display:flex;align-items:center;gap:8px}.family-relationship-open>span{font-size:20px}.family-relationship-card[open]{grid-column:1/-1;border-color:#977044}.family-relationship-card[open]>.family-relationship-body{border-top:1px solid #583a30}.family-relationship-card[open] .family-relationship-open>span{transform:rotate(180deg)}.family-relationship-body{padding:0 18px 18px;background:#18131455}.family-connection-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px 2px;color:#b49b84;font-size:11px}.family-connection-actions>span{flex:1}.family-connection-list{display:grid;gap:10px}.family-connection-list .connection-card{background:#261b1c}.connection-development{border:1px solid #58402f;border-radius:10px;background:#39271e55;padding:16px 18px;margin-bottom:20px}.development-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:#dec39a}.development-heading>span{font-size:11px;color:#b69b7e}.development-steps{display:flex;margin:14px 0;gap:6px}.development-steps>span{flex:1;padding:8px 10px;border-radius:6px;border:1px solid #4a3730;background:#231a18;color:#8f7b6a;font-size:11px;text-align:center}.development-steps>.current{color:#f0cb85;border-color:#b98b41;background:#69471d44}.development-steps>.done{color:#91ccb1;border-color:#3e725a;background:#244e3b44}.development-meter{height:5px;border-radius:4px;background:#181411;overflow:hidden;margin:8px 0 10px}.development-meter i{display:block;height:100%;background:linear-gradient(90deg,#b98b41,#f1d59e);border-radius:4px}.connection-development>small{display:block;font-size:11px;color:#bfa587;line-height:1.7}.development-confirmed{font-size:13px;color:#92d9b7}
@media(max-width:1100px){#review-connections-list.family-card-grid{grid-template-columns:minmax(0,1fr)}.family-relationship-card>summary{padding:18px}.family-relationship-name strong{font-size:22px}}
@media(max-width:600px){.family-relationship-card>summary{padding:16px 12px;gap:10px}.family-relationship-seal{width:40px;height:44px;font-size:25px}.family-relationship-name strong{font-size:20px}.family-relationship-count{font-size:22px}.family-relationship-count small{font-size:8px}.family-relationship-open{font-size:0}.family-relationship-open>span{font-size:20px}.family-relationship-body{padding:0 10px 12px}.development-steps>span{font-size:10px;padding:8px 4px}.connection-development{padding:12px}}

.connection-names small>span.connection-quick-progress{display:inline;color:#d7b67e}

/* Clickable logo cards and a bounded relationship popup. */
button.family-relationship-card{display:flex;align-items:center;gap:16px;padding:22px;width:100%;text-align:left;cursor:pointer;font:inherit;color:inherit;transition:border-color .15s,background .15s,transform .15s}button.family-relationship-card:hover{border-color:#b58453;background:linear-gradient(130deg,#532635,#2b1c20);transform:translateY(-1px)}button.family-relationship-card:focus-visible{outline:2px solid #ebc480;outline-offset:3px}.family-relationship-seal.crest{background:#2a1e20;overflow:hidden}.family-relationship-seal img{width:100%;height:100%;object-fit:contain;display:block}.family-relationship-dialog{width:min(1020px,calc(100vw - 32px));max-width:1020px!important;max-height:calc(100dvh - 40px);display:flex;flex-direction:column;overflow:hidden}.family-relationship-dialog>.modal-head,.family-relationship-dialog>.modal-foot{flex:none}.family-relationship-dialog>.modal-body{overflow:auto;overscroll-behavior:contain;min-height:0;padding:0 24px 20px}.family-popup-heading{display:flex;align-items:center;gap:18px;padding:4px 0 18px;border-bottom:1px solid #54372f}.family-popup-heading>.family-relationship-seal{width:68px;height:68px;border-radius:16px}.family-popup-heading strong{font:26px var(--display);color:#edd7b5}.family-popup-heading p{font-size:12px;color:#af9680;margin:5px 0 0}.family-relationship-dialog .family-relationship-body{background:none;padding:0}.family-relationship-dialog .family-connection-list{gap:10px}.family-relationship-dialog .modal-head h2{font-size:27px}.family-relationship-dialog .modal-head p{font-size:12px;color:#b39b85;line-height:1.6}.family-relationship-dialog .modal-foot{border-top:1px solid #50352f;background:#211819}
@media(max-width:600px){button.family-relationship-card{padding:16px 12px;gap:10px}.family-relationship-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.family-relationship-dialog>.modal-body{padding:0 12px 14px}.family-relationship-dialog .modal-head{padding:18px 14px}.family-relationship-dialog .modal-head h2{font-size:23px}.family-popup-heading>.family-relationship-seal{width:54px;height:54px}.family-popup-heading strong{font-size:23px}}

.connection-seals .crest{overflow:hidden}.connection-seals .crest img{width:100%;height:100%;object-fit:contain;display:block}
