/* A powered steel console. Ornament is outside the geographic artwork. */
:root{--signal:#e76b79;--ice:#9ac8d1;--panel:#0b131b;--edge:#40535e}
body{background:radial-gradient(ellipse at 15% 0,#301820 0,transparent 45%),radial-gradient(ellipse at 90% 35%,#132a34,transparent 55%),#05090d}
.console{border-image:none;border:8px solid #171e25;outline:1px solid #55616a;box-shadow:0 0 0 3px #030609,0 25px 90px #000,inset 0 0 0 1px #76868f40}
.console:before{border-color:#4d667144;box-shadow:inset 3px 0 #0008,inset -3px 0 #0008}
header{background:#080e15;border-bottom-color:#823e4b}
header:before{content:'';position:absolute;inset:0;background:url('assets/terminal-circuitry.svg') center/100% 100% no-repeat;pointer-events:none;opacity:.85}
header:after{height:2px;background:linear-gradient(90deg,#571f2b,#df6778 20%,#422d43 48%,#98bec9 75%,#213b48);box-shadow:0 0 14px #cb435233}
.terminal-panorama{opacity:.42;filter:saturate(.55)}
header .eyebrow{font:10px/1.6 Consolas,'Courier New',monospace;color:#e18c97;letter-spacing:3px}
h1{font-family:'Bahnschrift','Segoe UI',sans-serif;font-weight:500;font-variant:normal;text-transform:uppercase;font-size:clamp(25px,2.4vw,41px);letter-spacing:3px;line-height:1.08;color:#e3ebed;text-shadow:0 0 24px #9cceda1a}
.subtitle{color:#92aab7;letter-spacing:2.2px}
.imperial-assembly{filter:drop-shadow(0 6px 12px #0009)}
.status{border:1px solid #3b5663;border-left:2px solid #a75364;background:linear-gradient(110deg,#131d29f2,#090f17f2);outline-color:#8eafb61a;box-shadow:inset 0 -2px #05090d,0 0 20px #080c13;font-family:Consolas,monospace;color:#cee0e3}
.status:after{content:'';display:block;margin-top:9px;height:13px;background:linear-gradient(90deg,#df6979 0 2%,transparent 2% 5%,#855166 5% 9%,transparent 9% 12%,#759ead 12% 20%,transparent 20% 23%,#496879 23% 42%,transparent 42% 45%,#334a5b 45% 100%);clip-path:polygon(0 60%,10% 60%,13% 15%,16% 95%,20% 40%,25% 60%,100% 60%,100% 85%,0 85%)}
.status span{color:#91a7b5}.status i{background:#e06b7a;box-shadow:0 0 9px #df5369}
.house-registry{background:linear-gradient(#17212a,#0c131b);border-bottom:1px solid #455661;box-shadow:inset 0 1px #afd3d51a}
.house-registry>span{color:#8babb8}.house-registry button{color:#c8d7df;border-bottom-color:#3b515e}
.house-registry button:hover,.house-registry button:focus-visible{background:#21303a;border-color:#a6c7cf}
.toolbar,.navigation{background:linear-gradient(110deg,#141d26,#0a1119);border-bottom-color:#344953}
.toolbar button,#filters button,.directory-heading button,#viewCityLimits{font-family:Consolas,'Courier New',monospace;border-color:#455967;background:linear-gradient(135deg,#1a2933,#0b141e);box-shadow:inset 0 1px #a4c7d224,inset 0 -2px #0008;transition:background .16s,border-color .16s}
.toolbar button[aria-pressed=true],.directory-heading button[aria-pressed=true]{color:#f2dedf;background:linear-gradient(120deg,#38222d,#18222d);border-color:#a65a6a;box-shadow:inset 2px 0 #e97784,inset 0 1px #ffabb924,0 0 10px #bd415214}
.toolbar button[aria-pressed=true]:after{left:10px;right:10px;background:#d47886;box-shadow:none}
.toolbar button:hover,#filters button:hover,#viewCityLimits:hover{background:#263640;border-color:#bdd5db}
.zoom{border-color:#3b4e5a}.zoom output{font:12px Consolas;color:#b1d5dc;text-shadow:none}
.search span,.region-select{color:#a1b7c1}.search input,select{border-color:#405966;border-bottom-color:#75939e;background:#060e16;color:#dfebed;box-shadow:inset 0 3px 8px #0008}
.search input:focus,select:focus{border-color:#b2d2da;box-shadow:0 0 0 2px #73bec41a}
.scale-note{color:#a4a5bd}
#network-controls{background:repeating-linear-gradient(0deg,#b6d2e003 0 1px,transparent 1px 4px),linear-gradient(110deg,#121c28,#0a141d);border-bottom-color:#4b6571}
#filters button[aria-pressed=true]{background:linear-gradient(#233540,#14202c);border-top-color:#6b8594;border-bottom-color:#4d6875;color:#e4edf1}
#filters button[aria-pressed=false]{background:#0c151d;border-color:#354751;border-left-color:var(--key)}
.legend{color:#a9bec8}.caution{color:#bb929a}
.workspace{background:linear-gradient(90deg,#24313a,#060d15 1%,#060d15 99%,#24313a);padding-top:12px}
.map-section{border-color:#61808c;box-shadow:0 0 0 3px #02060b,0 0 0 4px #293b48,0 12px 30px #0009}
.map-section:before{content:'';position:absolute;z-index:3;inset:-1px;pointer-events:none;background:linear-gradient(#d18a96,#d18a96) left top/27px 2px no-repeat,linear-gradient(#d18a96,#d18a96) left top/2px 27px no-repeat,linear-gradient(#accbd0,#accbd0) right top/27px 2px no-repeat,linear-gradient(#accbd0,#accbd0) right top/2px 27px no-repeat,linear-gradient(#accbd0,#accbd0) left bottom/27px 2px no-repeat,linear-gradient(#accbd0,#accbd0) left bottom/2px 27px no-repeat,linear-gradient(#d18a96,#d18a96) right bottom/27px 2px no-repeat,linear-gradient(#d18a96,#d18a96) right bottom/2px 27px no-repeat}
.map-tag{font-family:Consolas,monospace;border-color:#5c7f8e;border-left-color:#ce6d7e;background:linear-gradient(110deg,#19202ef5,#081721f0);color:#cedde1;box-shadow:0 4px 15px #0008}
.map-tag span{color:#c2dce1}.compass{color:#c7dce1;background:#09151fe8;border-color:#638594}
.map-foot{background:linear-gradient(#16222d,#0a131c);border-top-color:#536d7a;color:#a3bdc8}
.map-hint{border-left-color:#ad6578;color:#b3c7d1;background:#08121dea}
#record{border-color:#536e7b;background:radial-gradient(ellipse at 0 0,#331e2e,transparent 48%),linear-gradient(125deg,#131e2b,#0a141e);box-shadow:inset 0 1px #bed5e023,0 8px 24px #0008}
.record-top{font-family:Consolas,monospace;background:linear-gradient(100deg,#33212d,#172430 65%,#101c27);border-bottom-color:#966071;color:#e3cbd3;box-shadow:0 3px 15px #0008}
.record-top button{border-color:#6c647a;background:#09131d;color:#d6e0e4}.record-top button:hover{background:#693648}
#recordImage{border-bottom-color:#758996}#recordSymbol{background:radial-gradient(ellipse,#322738,#0c1924 75%);color:#bcb5d4;border-color:#4e6d7b}
#recordStatus{font-family:Consolas,monospace;color:#d792a3}#recordName{color:#e3ebee}.role{color:#bdc7dc}
#recordDesc,dd{color:#c6d3dc}dt{font-family:Consolas,monospace;color:#92b2c0}#overviewCaption{color:#9cb8c4;background:#101e2a;border-color:#425b69}
.house-badge{background:linear-gradient(90deg,#36435d35,transparent);border-color:#60768b55}.house-badge span{color:#c5cfdd}
#viewCityLimits{color:#d2e1e5;border-left:2px solid #ac677b}#viewCityLimits span{color:#9bb9c9}
#bookExcerpts{border-color:#745168}#bookExcerpts h3{color:#c5d3df}#bookExcerpts blockquote{border-left-color:#b76478}#bookExcerpts blockquote p{color:#d6dce3}
.directory{border-color:#405b68;background:linear-gradient(135deg,#15212c,#0a131d)}
.directory-heading h3{font:500 19px/1.3 Bahnschrift,'Segoe UI',sans-serif;letter-spacing:2px;text-transform:uppercase;color:#cedde3}.directory-heading span{color:#96afbd}
#placeDirectory button{background:linear-gradient(130deg,#1a2935,#101a26);border-color:#536d7c66;border-left-color:#718ca2;box-shadow:inset 0 1px #ced9e210,inset 0 -2px #03091170}
#placeDirectory button:after{inset:auto 7px 7px auto;width:5px;height:5px;border:1px solid #65818f;transform:rotate(45deg);opacity:.65}
#placeDirectory b{color:#d4e2e9}#placeDirectory small{color:#a9bdcd}
#placeDirectory button:hover{background:linear-gradient(130deg,#2d3a4a,#142737);border-color:#a6bdcb;box-shadow:0 0 14px #89bac118}
#placeDirectory button[aria-pressed=true]{background:linear-gradient(125deg,#3e293a,#1b2838);border-color:#c17a90;border-left-color:#ef9aad;box-shadow:inset 3px 0 #cc657c,0 0 13px #b959711a}
#depth-panel{background:linear-gradient(110deg,#152433,#101622);border-color:#617c8c}.depth-level{border-color:#69828e}.depth-level b{color:#c7dbe3}
footer{background:linear-gradient(#0c161f,#121923);color:#9db2c0}footer>span{color:#be8c99;font:10px/1.6 Consolas,monospace;letter-spacing:1.5px}
.terminal-bottom{background:linear-gradient(#1b2330,#0c141f);border-top-color:#596175;color:#95aebf}
.terminal-bottom b{color:#b5ccd5}.terminal-bottom .circuit{height:2px;background:linear-gradient(90deg,#863e58,#c8788e 25%,#223943 26%,#729baa 70%,#223943);box-shadow:0 0 10px #a6536722}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #b0d9e1;outline-offset:3px}
@media(max-width:1150px) and (min-width:761px){h1{font-size:28px;letter-spacing:1.5px}.status{padding:10px}.header-copy{width:38%}}
@media(max-width:760px){body{padding:4px}.console{border-width:4px}header{padding:17px 12px}header:before{background-size:auto 100%;opacity:.5}h1{font-size:25px;letter-spacing:1.5px}.subtitle{font-size:7px;letter-spacing:1px}.house-registry{gap:2px}.toolbar button{font-size:9px}.map-section:before{opacity:.7}.record-open #record{border-color:#7995a7;border-radius:0;box-shadow:0 -12px 55px #000d,0 0 0 3px #09131de0}.directory-heading h3{font-size:17px;letter-spacing:1px}.terminal-bottom{font-size:6px}footer>span{font-size:8px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
