/* Personnel terminal: precise frames, clear copy, original square portraits. */
.people-directory{--terminal:#71cbd8;--terminal-line:#356471;--terminal-ink:#e2f1f3}
.people-directory .page-head{border-left:4px solid var(--terminal);padding-left:17px;margin-bottom:28px}
.people-directory .page-head h1{font-weight:800;letter-spacing:-.045em}
.people-directory .page-head p{color:#9cb5bf}
.people-directory .cast-regions-all{display:flex;gap:0;border:0;border-bottom:1px solid #356471;background:#102028;margin-top:20px}
.people-directory .cast-regions-all a{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:12px;padding:15px 18px;flex:1;border:0;position:relative;min-height:56px}
.people-directory .cast-regions-all a+a{border-left:1px solid #29444f}
.people-directory .cast-regions-all a span{font-size:17px;font-weight:700;letter-spacing:-.035em}
.people-directory .cast-regions-all small{display:none}.people-directory .cast-regions-all b{font:10px var(--mono);align-self:center;color:#7699a6}
.people-directory .cast-regions-all [aria-current]{background:#71cbd8;color:#07151b;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,0 100%)}
.people-directory .cast-regions-all [aria-current] b{color:#224954}.people-directory .cast-regions-all [aria-current]:after{display:none}
.people-directory .cast-sector{padding:29px 0 17px;align-items:flex-end}
.people-directory .cast-sector h2{font-size:23px;font-weight:750;display:flex;gap:10px;align-items:center;color:#dfedf0}
.people-directory .cast-sector h2:before{content:'';display:block;width:13px;height:13px;background:var(--terminal);clip-path:polygon(0 0,100% 0,100% 40%,40% 40%,40% 100%,0 100%)}
.people-directory .cast-sector>span{border-bottom:2px solid #4b8492;padding-bottom:5px;font:10px var(--mono);color:#7bbdcc;letter-spacing:.07em}
.people-directory .resident-list{border:0;gap:22px 25px}
.people-directory .resident-entry{--resident-accent:#71cbd8;background:#0e1b23;border:1px solid #31535f;border-top-color:#5b8c9b;padding:53px 20px 19px;gap:16px 20px;position:relative;transition:border-color .18s,background .18s;isolation:isolate}
.people-directory .resident-entry:before{content:'';position:absolute;right:-1px;bottom:-1px;width:14px;height:14px;background:linear-gradient(135deg,transparent 45%,#71cbd8 46% 51%,#0b141b 52%);pointer-events:none}
.people-directory .resident-entry:hover,.people-directory .resident-entry:focus-within{border-color:#72bdcc;background:#10222b}
.resident-chrome{position:absolute;left:0;top:0;right:0;height:31px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;background:#17313d;border-bottom:1px solid #31535f;color:#83b5c5}
.resident-chrome>span{font:9px var(--mono);letter-spacing:.09em}
.resident-chrome>a{font-size:10px;color:#b8d6df;display:flex;gap:5px;align-items:center;white-space:nowrap}
.resident-chrome>a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.people-directory .resident-photo{position:relative;outline:1px solid #31535f;outline-offset:4px}
.people-directory .resident-photo:after,.dossier-portrait:after{content:'';position:absolute;inset:-5px;pointer-events:none;background:linear-gradient(var(--resident-accent),var(--resident-accent)) 0 0/15px 2px no-repeat,linear-gradient(var(--resident-accent),var(--resident-accent)) 0 0/2px 15px no-repeat,linear-gradient(var(--resident-accent),var(--resident-accent)) 100% 100%/15px 2px no-repeat,linear-gradient(var(--resident-accent),var(--resident-accent)) 100% 100%/2px 15px no-repeat}
.people-directory .resident-identity{padding-right:24px}
.people-directory .resident-identity>p{color:var(--resident-accent);font-size:11px;margin-bottom:8px}
.people-directory .resident-identity :is(h2,h3){font-weight:800;letter-spacing:-.055em;font-size:25px;margin-bottom:6px}
.people-directory .resident-identity :is(h2,h3) a{color:#f0f5f5;text-decoration:none}
.people-directory .resident-identity :is(h2,h3) a:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.people-directory .resident-identity>small{font:10px var(--mono);color:#a4b8c2;margin:8px 0 12px}
.people-directory .resident-base{display:flex;align-items:baseline;gap:9px;border:0;border-top:1px solid #294853;margin:12px 0 0;padding:9px 0 0;width:100%;font-size:11px;color:#b5cdd4}
.resident-field{font-size:9px;color:#6e9aa9;flex-shrink:0}.resident-base>span:last-child{text-decoration:underline;text-decoration-color:#4e7280;text-underline-offset:3px}
.people-directory .resident-summary{border-top:1px solid #294853;padding-top:13px;color:#afc4cd;font-size:13px;line-height:1.85}
.people-directory .resident-entry>.save-btn{top:47px!important;right:12px!important;color:#7da6b6;background:transparent}
.people-directory .resident-entry>.save-btn.is-saved{color:#b4eced}
.people-directory .resident-entry:focus-within .resident-photo:after{animation:portrait-confirm .4s ease-out}
@keyframes portrait-confirm{0%{filter:brightness(2.6);box-shadow:0 0 14px #71cbd840}100%{filter:brightness(1);box-shadow:none}}
.character-profile{--resident-accent:#71cbd8}
.dossier-strip{display:flex;justify-content:space-between;gap:15px;background:#17313d;border:1px solid #3c6978;padding:10px 16px;margin-top:24px;color:#a9d9e3;font:10px var(--mono);letter-spacing:.08em}
.dossier-strip>span:last-child{font-family:inherit;font-size:10px;letter-spacing:0;color:#819eaa}
.character-profile .character-header{border:1px solid #3c6978!important;border-top:0!important;background:#0f1f28!important;padding:29px!important;margin:0!important;gap:32px}
.dossier-portrait{position:relative;flex-shrink:0;outline:1px solid #31535f;outline-offset:4px;width:240px;height:240px}
.character-profile .character-header .portrait-detail{border:0;border-radius:0;width:100%;height:100%;object-fit:contain}
.character-profile .character-header h1{font-weight:800;letter-spacing:-.05em;color:#edf7f8}
.character-profile .character-header .character-role{color:var(--resident-accent);font-size:13px}
.character-profile .character-english{color:#8aadb9;font-size:12px}
.character-profile .character-facts{border:1px solid #3c6978!important;border-top:0!important;background:#0b171f!important}
.character-profile .character-facts>div{border-color:#294853;padding:15px 20px}
.character-profile .character-facts span{color:#70acbd;font-size:10px}
.character-profile .character-facts strong,.character-profile .character-facts a{color:#d0e2e9}
.character-profile .character-quote{border:1px solid #315b69;border-left:4px solid var(--resident-accent);background:#10232d;padding:22px 25px!important}
.character-profile .character-quote .quote-label{color:var(--resident-accent)}
.character-profile .character-section h2:before,.character-profile .character-speech h2:before{content:'//';font:15px var(--mono);color:#5ca6b9;margin-right:10px}
@media(max-width:700px){.character-profile .character-header{padding:24px!important}.dossier-portrait{width:200px;height:200px}.character-profile .character-header{gap:25px}.dossier-strip{font-size:9px;padding:10px 13px}}
@media(max-width:600px){
.people-directory .page-head{padding-left:13px;border-left-width:3px}.people-directory .page-head h1{font-size:30px}.people-directory .page-head p{font-size:12px}
.people-directory .cast-regions-all a{padding:12px 8px;min-height:50px;gap:6px}.people-directory .cast-regions-all a span{font-size:clamp(12px,3.6vw,15px);white-space:nowrap}.people-directory .cast-regions-all b{font-size:9px}
.people-directory .cast-sector{padding-top:25px}.people-directory .cast-sector h2{font-size:21px}.people-directory .cast-sector>span{font-size:9px}
.people-directory .resident-list{gap:18px}.people-directory .resident-entry{padding:49px 16px 17px;gap:16px}.people-directory .resident-entry.with-photo{grid-template-columns:96px minmax(0,1fr)}
.people-directory .resident-identity{padding-right:14px}.people-directory .resident-identity :is(h2,h3){font-size:23px;line-height:1.25}.people-directory .resident-identity>p{font-size:10px;line-height:1.6;margin-bottom:7px}.people-directory .resident-identity>small{font-size:9px;margin:7px 0 9px}
.people-directory .resident-base{font-size:10px;gap:7px;margin-top:9px;padding-top:8px;line-height:1.6}.resident-field{font-size:9px}
.resident-chrome{height:29px;padding:0 10px}.resident-chrome>span{font-size:8px;letter-spacing:.07em}.resident-chrome>a{font-size:9px}
.people-directory .resident-entry>.save-btn{top:43px!important;right:8px!important;min-width:25px;min-height:25px}.people-directory .resident-entry>.save-btn .save-symbol{font-size:22px}
.people-directory .resident-summary{padding-top:12px;font-size:13px;line-height:1.9}
.character-profile .character-facts>div{padding:13px 15px}.character-profile .character-header .character-role{font-size:12px}.character-profile .character-header h1{font-size:32px}.character-profile .character-quote p{font-size:20px}
}
@media(max-width:350px){.people-directory .resident-entry{padding-left:12px;padding-right:12px}.people-directory .resident-entry.with-photo{grid-template-columns:82px minmax(0,1fr);gap:13px}.people-directory .resident-identity :is(h2,h3){font-size:21px}.people-directory .resident-identity>p{font-size:9px}.people-directory .cast-regions-all a{gap:4px;padding-left:5px;padding-right:5px}.people-directory .cast-regions-all a span{font-size:12px}.people-directory .cast-regions-all b{font-size:8px}.resident-base .resident-field{display:none}}
@media(prefers-reduced-motion:reduce){.people-directory .resident-entry:focus-within .resident-photo:after{animation:none}}
@media(max-width:350px){.people-directory .cast-regions-all b{display:none}}
/* Quiet pass: one frame around the portrait; colour only where it helps. */
.people-directory .page-head{border:0;padding-left:0}
.people-directory .cast-regions-all{background:transparent;border-bottom-color:#35444c}
.people-directory .cast-regions-all a+a{border-left:0}
.people-directory .cast-regions-all a{color:#8b9da7}
.people-directory .cast-regions-all [aria-current]{background:transparent;color:#e4eef1;clip-path:none}
.people-directory .cast-regions-all b,.people-directory .cast-regions-all [aria-current] b{color:#7b929e}
.people-directory .cast-regions-all [aria-current]:after{display:block;content:'';position:absolute;bottom:-1px;left:18px;right:18px;height:2px;background:#8db8c1}
.people-directory .cast-sector h2:before{background:#7c9eaa;width:10px;height:10px}
.people-directory .cast-sector>span{border-bottom:0;padding-bottom:0;color:#7e939e;letter-spacing:.04em}
.people-directory .resident-list{gap:0 35px}
.people-directory .resident-entry{border:0;border-bottom:1px solid #2d3e46;background:transparent;padding:44px 30px 24px 0;gap:17px 22px;transition:none}
.people-directory .resident-entry:before{display:none}
.people-directory .resident-entry:hover,.people-directory .resident-entry:focus-within{background:transparent;border-color:#46606c}
.people-directory .resident-chrome{left:0;right:auto;height:20px;padding:0;top:13px;background:transparent;border:0;color:#758b96}
.people-directory .resident-chrome>a{display:none}
.people-directory .resident-chrome>span{font-size:9px;letter-spacing:.06em}
.people-directory .resident-photo{outline:none}
.people-directory .resident-identity{padding-right:5px}
.people-directory .resident-identity>p{color:#a4b4bd}
.people-directory .resident-identity>small{color:#8097a3}
.people-directory .resident-base{border:0;padding-top:0;margin-top:10px;color:#9eafb9}
.people-directory .resident-base .resident-field{color:#6e858f}
.people-directory .resident-summary{border:0;padding-top:0;color:#aabcc5}
.people-directory .resident-entry>.save-btn{top:39px!important;right:0!important;color:#7a929f}
.people-directory .resident-entry>.save-btn.is-saved{color:#bed9df}
.character-profile .dossier-strip{background:transparent;border:0;border-bottom:1px solid #354c57;color:#839fab;padding-left:0;padding-right:0}
.character-profile .character-header{background:transparent!important;border:0!important;padding-left:0!important;padding-right:0!important}
.character-profile .dossier-portrait{outline:none}
.character-profile .character-header .character-role{color:#b3c3cc}
.character-profile .character-facts{background:transparent!important;border-left:0!important;border-right:0!important;border-color:#354c57!important}
.character-profile .character-facts span{color:#829da9}
@media(max-width:600px){
.people-directory .page-head{padding-left:0;border:0}
.people-directory .cast-regions-all [aria-current]:after{left:8px;right:8px}
.people-directory .resident-list{gap:0}
.people-directory .resident-entry{padding:40px 28px 23px 0;gap:15px 18px}
.people-directory .resident-chrome{height:18px;top:10px;padding:0}
.people-directory .resident-chrome>span{font-size:8px}
.people-directory .resident-base{padding-top:0;margin-top:9px}
.people-directory .resident-summary{padding-top:0}
.people-directory .resident-entry>.save-btn{top:35px!important;right:0!important}
}
@media(max-width:350px){.people-directory .resident-entry{padding-left:0;padding-right:26px;gap:14px}}
