:root{color-scheme:dark;--ink:#dcecf6;--accent:#42d2ee;--line:#24465e}body{color:#deedf8;background:#07121f;background-image:radial-gradient(ellipse at 50% 0,#123b56 0,transparent 65%)}header{background:linear-gradient(105deg,#0a1c2e,#0d2941 58%,#0a1a2c);border-bottom:1px solid #28536c;box-shadow:0 4px 32px #0005;position:relative}header:after{content:'';position:absolute;bottom:-1px;left:25%;right:25%;height:1px;background:linear-gradient(90deg,transparent,#55dafa,transparent)}.brand b{color:#effaff;text-shadow:0 0 22px #39c2f530}.brand small{color:#7ea9c5}.header-note{color:#98b8cf}.dot{background:#50dded;box-shadow:0 0 11px #50dded88}main{background:transparent}.sidebar,.detail{background:linear-gradient(155deg,#10283b,#0b1e30 75%);border:1px solid #244358;border-radius:10px;box-shadow:inset 0 1px 0 #a6e9ff08,0 12px 32px #0002}.sidebar h1{color:#e6f4fc;font-weight:500}.sidebar .eyebrow,.detail>.eyebrow{color:#68b3ce}.intro{color:#8bacc1}.stats{border-color:#254254}.stats>div+div{border-color:#254254}.stats b{color:#52d9f2;text-shadow:0 0 18px #31bada25;font-weight:400}.stats span{color:#9cb5c7}.search{background:#071b2a;border:1px solid #2a4961;color:#74b3cd}.search input{color:#d7edf9}.search input::placeholder{color:#82a0b5}.zone-item{color:#adc4d5;border-radius:5px}.zone-item .id{background:#18364a;color:#88bed9;border:1px solid #2b536b}.zone-item:hover{background:#173b51;color:#d4f6ff;border-color:#2b6079}.zone-item.active{background:linear-gradient(90deg,#12445d,#123148);border-color:#2c88a6;color:#c4f5ff;box-shadow:inset 3px 0 #4de2f3,0 0 15px #24aed20a}.zone-item.active .id{background:#197698;color:#e8fcff;border-color:#52c1de}footer{border-color:#244153;color:#8faabc}.workspace{background:#091c2d;border-color:#2b536b;box-shadow:inset 0 0 65px #0c436822,0 12px 32px #0002}.view-toolbar{background:linear-gradient(180deg,#112d42,transparent);padding-bottom:8px}.segmented{background:#071b2b;border-color:#2a526b}.segmented button{color:#8eafc5}.segmented button.active{background:linear-gradient(120deg,#164663,#155978);color:#c9f7ff;box-shadow:inset 0 0 0 1px #3293b2,0 0 12px #27c3e515}.view-toolbar>button{background:#102e43;color:#b4d2e5;border-color:#315a73}.view-toolbar label{color:#9cc2d7}.view-toolbar input{accent-color:#38bfdc}#viewport{background-image:radial-gradient(ellipse at center,#123e5b55,transparent 70%),linear-gradient(#2b66831c 1px,transparent 1px),linear-gradient(90deg,#2b66831c 1px,transparent 1px);background-size:auto,40px 40px,40px 40px}#viewport:before,#viewport:after{content:'';position:absolute;width:22px;height:22px;pointer-events:none;z-index:1;border-color:#4092b6;opacity:.6}#viewport:before{top:14px;left:14px;border-top:1px solid;border-left:1px solid}#viewport:after{bottom:14px;right:14px;border-bottom:1px solid;border-right:1px solid}#viewport canvas{position:relative;z-index:0}.map-label{background:#09283ce8;color:#b4e3f4;border:1px solid #477e98;border-radius:3px;box-shadow:0 3px 9px #0003;font-variant-numeric:tabular-nums}.map-label.selected{background:#176887;color:#eaffff;border-color:#68dff2;box-shadow:0 0 13px #34c7e444}.map-caption{color:#9bb7cb;padding-top:12px}.coral{background:#4e8ba9}.gray{background:#607583}.cyan{background:#63c9dc}.map-bottom{border-color:#234257;color:#90aec2}.map-bottom b{color:#88a8bd}.detail>.eyebrow{border-color:#26465b}.detail h2{color:#e3f5ff;font-weight:500}.detail p{color:#a3bdcf}.detail .badge{background:#123c4e;border-color:#28728b;color:#70dcf0}.facts{background:#081e30;border-color:#23495e;box-shadow:inset 0 1px 0 #ffffff04}.facts span{color:#91aec2}.facts b{color:#d2e8f7}#enter-p06{background:linear-gradient(110deg,#126583,#178aad);border:1px solid #3cbeda;color:#f0feff;box-shadow:0 4px 18px #0a85ab25}#enter-p06:hover{background:linear-gradient(110deg,#197d9c,#1b9cbd);box-shadow:0 0 20px #1aadc333}.p06-photos button{border-color:#3a627b;background:#0a2134}.p06-photos button:hover{border-color:#66d7ec}.next{color:#9db6c8;border-color:#328ca9}.subtle{color:#93adbf!important}button:focus-visible,input:focus-visible{outline-color:#75e4f7}button:hover{border-color:#62c6e0;color:#d5f8ff}button:disabled{opacity:.35;cursor:default}dialog{background:#102a3e;border-color:#35657f;color:#dceefa;box-shadow:0 25px 100px #0008}.modal-head{color:#d2eefc}.modal-head button{background:#183e55;color:#bfdfef;border-color:#35657c}#modal-content p{color:#a4bece}dialog::backdrop{background:#020b14bb;backdrop-filter:blur(8px)}::-webkit-scrollbar-thumb{background:#2a4f68}::selection{background:#1b7491;color:#fff}.zoom-control{display:flex;align-items:center;gap:10px;margin:2px auto 0;width:min(480px,calc(100% - 32px));padding:10px 14px;background:linear-gradient(100deg,#10334a,#0c2639);border:1px solid #315b73;border-radius:8px;box-shadow:0 5px 18px #0002}.zoom-title{font-size:11px;color:#b0d1e4;white-space:nowrap;margin-right:3px}.zoom-title small{display:block;color:#5ca1bf;font-size:8px;letter-spacing:2px;line-height:1.2}.zoom-control button{width:28px;height:28px;flex-shrink:0;display:grid;place-items:center;padding:0;color:#c0f2ff;background:#153c53;border:1px solid #34667f;border-radius:5px;font-size:17px;line-height:1}.zoom-control button:hover{background:#1c5570;border-color:#64cde6}.zoom-control output{width:48px;text-align:right;font:12px 'Segoe UI',sans-serif;font-variant-numeric:tabular-nums;color:#6be2f3}.zoom-control input[type=range]{--zoom-fill:17%;appearance:none;-webkit-appearance:none;flex:1;min-width:40px;height:5px;margin:0 3px;background:linear-gradient(90deg,#39c5e4 var(--zoom-fill),#284c63 var(--zoom-fill));border-radius:8px;cursor:ew-resize;touch-action:none}.zoom-control input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:15px;height:15px;background:#b1f3ff;border:3px solid #299cc0;border-radius:50%;box-shadow:0 0 10px #45d9f477;cursor:ew-resize}.zoom-control input[type=range]::-moz-range-thumb{width:10px;height:10px;background:#b1f3ff;border:3px solid #299cc0;border-radius:50%;box-shadow:0 0 10px #45d9f477}.zoom-control input[type=range]:focus-visible{outline-offset:8px}a{color:#68d5f0}@media(max-width:1150px){.zoom-control{gap:7px;padding:9px 10px}.zoom-title small{display:none}}@media(max-width:850px){.zoom-control{width:calc(100% - 24px)}.zoom-title small{display:block}.workspace{min-height:560px}.view-toolbar{background:#102d41}}

.zone-explanation{max-width:680px;padding:24px 28px 32px}.zone-explanation h2{font-size:26px;line-height:1.5;margin:18px 0 24px}.zone-explanation p{line-height:1.95;color:#c7dce7;font-size:16px}.zone-explanation .facts{margin:24px 0}.zone-explanation .subtle{font-size:13px;color:#86a8bb}

.p01-feature-photo button{width:100%;padding:0;overflow:hidden;border-radius:10px}.p01-feature-photo img,.p01-explanation-photo{display:block;width:100%;height:auto;object-fit:contain;border-radius:10px}.p01-explanation-photo{margin:0 0 24px}

#modal:has(.zone-explanation){width:min(1240px,94vw);max-width:94vw;max-height:94dvh;box-sizing:border-box}
#modal:has(.zone-explanation) #modal-content{overflow:visible}
.zone-explanation{max-width:none;display:grid;grid-template-columns:minmax(260px,0.85fr) minmax(0,1.35fr);align-items:center;gap:32px;padding:24px;box-sizing:border-box}
.zone-explanation h2{font-size:clamp(19px,2vw,28px);line-height:1.5;margin:16px 0}.zone-explanation p{font-size:clamp(13px,1.2vw,17px);line-height:1.95;margin:0}.zone-explanation figure{margin:0;min-width:0}.zone-explanation .p01-explanation-photo{width:100%;max-height:65dvh;object-fit:contain;margin:0}.zone-explanation figcaption{margin-top:12px;color:#8daebf;font-size:12px}
@media(max-height:650px){.zone-explanation{padding:12px;gap:20px}.zone-explanation h2{font-size:20px}.zone-explanation p{font-size:13px;line-height:1.65}}

/* Neutral architectural canvas inside the dark control interface. */
#viewport{background:radial-gradient(ellipse at 45% 40%,#e8eeec 0%,#d4dfde 65%,#c0cece 100%)}
#flat-map{background:#e0e6e5}#flat-map [data-zone]:hover{filter:none}#flat-map .zone-footprint{transition:fill .18s,stroke .18s}#flat-map [data-zone]:hover .zone-footprint,#flat-map [data-zone]:focus .zone-footprint{fill:#8fcfd0;stroke:#338b94}
.map-label{background:#f1f5f2ed;color:#375861;border-color:#93a9ac;box-shadow:0 2px 8px #354e5920}.map-label.selected{background:#245970;color:#eefaff;border-color:#81bbc4}.map-label:hover{background:#9ad8d9;color:#173d49;border-color:#3c8c96}
.legend.coral{background:#d1d8d5;border:1px solid #83999d}.legend.gray{background:#9eaaae}

#viewport{background:radial-gradient(ellipse at 45% 40%,#163447,#0a1e2e 72%,#071827)}#flat-map{background:#0a1c2c}
.map-label{background:#12364be8;color:#c0e7ef;border-color:#356277;box-shadow:0 2px 8px #00172244}.map-label.selected{background:#1a586f;color:#edfcff}.map-label:hover{background:#226d83;color:white}
#flat-map .zone-footprint{fill:transparent;stroke:transparent}#flat-map [data-zone]:hover .zone-footprint,#flat-map [data-zone]:focus .zone-footprint{fill:#58cbe455;stroke:#58cbe4}

.warehouse-explanation{max-width:850px;padding:24px 32px;text-align:left}.warehouse-explanation h2{font-size:26px;color:#e4f5fa;margin:0 0 22px}.warehouse-explanation p{font-size:17px!important;line-height:2!important;color:#c6dce6!important;margin:0}

.p06-section-grid{display:grid;grid-template-columns:1fr;gap:5px}.p06-section-grid .wide{margin:0;text-align:left}.p06-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 26px}.p06-info-grid h3{color:#70d3e2;font-size:15px;margin:5px 0}.p06-info-grid p{font-size:13px;line-height:1.65;margin:0}.p06-info-grid section{border-top:1px solid #284858;padding-top:10px}@media(max-width:800px){.p06-info-grid{grid-template-columns:1fr}}

#flow-hud{position:absolute;left:16px;bottom:15px;z-index:3;width:min(360px,calc(100% - 32px));padding:13px 16px;box-sizing:border-box;background:#071e31ed;border:1px solid #2a7389;border-left:3px solid #63d2de;border-radius:8px;pointer-events:none;color:#d7eaf0;box-shadow:0 8px 24px #00101f55}#flow-hud[hidden]{display:none}#flow-hud b,#flow-hud span,#flow-hud small{display:block;margin-bottom:5px}#flow-hud small{font-size:10px;color:#8ab3c4}#flow-hud b{color:#72e1e3;font-size:13px}#flow-hud span{font-size:13px}#flow-hud progress{width:100%;height:4px;accent-color:#62d1dd}.flow-actions{padding:10px 0 14px;margin-bottom:12px;border-bottom:1px solid #274b62}.flow-actions label{font-size:12px;color:#a7c3d0}.flow-actions select{margin-left:9px;color:#ccebf0;background:#12394f;border:1px solid #30637a;border-radius:4px;padding:3px 10px}

.flow-jump-label{display:block;margin-top:10px}.flow-jump-label select{max-width:160px}
#flow-hud{width:min(650px,calc(100% - 32px));padding:12px 16px 9px;pointer-events:auto;background:linear-gradient(120deg,#092133f5,#0b2939f5);border-color:#3d7287;border-left-color:#e6bd60;box-shadow:0 8px 25px #00101f77;backdrop-filter:blur(12px)}
#flow-hud .film-heading{display:flex;align-items:center;gap:14px}#flow-hud .film-heading>div{min-width:120px}#flow-hud .film-heading small{font-size:9px;letter-spacing:.10em}#flow-hud .film-heading b{color:#f0ca75;font-size:16px;letter-spacing:.08em}#flow-hud .film-heading>span{flex:1;color:#e2edf0;font-size:12px}#flow-hud .film-heading button{padding:5px 10px}
#flow-hud button,#flow-hud select{color:#d1e6ef;background:#113346;border:1px solid #365668;border-radius:4px;font-size:11px;padding:5px 8px;cursor:pointer}#flow-hud button:hover{border-color:#85c4d0;background:#20465a}#flow-hud button:focus-visible,#flow-hud input:focus-visible,#flow-hud select:focus-visible{outline:2px solid #f1c56b;outline-offset:2px}
#film-stages{display:flex;gap:3px;margin:6px 0;overflow-x:auto;padding-bottom:2px}#film-stages button{white-space:nowrap;flex:1;border:0;border-bottom:2px solid #355369;padding:5px 3px;background:transparent;color:#91b5c7;font-size:10px}#film-stages button.active{color:#f4d38b;border-bottom-color:#edc262;background:#77612c33}
.film-progress{display:flex;align-items:center;gap:12px}.film-progress input{width:100%;height:6px;accent-color:#edc56b;cursor:ew-resize}.film-progress output{white-space:nowrap;font-size:10px;font-variant-numeric:tabular-nums;color:#adc6d2}.film-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:9px 0 7px}.film-controls label{display:flex;align-items:center;gap:4px;color:#9fbfce;font-size:11px}.film-controls input{accent-color:#ebc674}#flow-jump{max-width:145px}#flow-counts{margin-bottom:0!important;color:#739baa!important;font-size:10px!important}
#film-finale{position:absolute;top:30%;left:50%;transform:translateX(-50%);padding:20px 28px;white-space:nowrap;border:1px solid #d1b368;background:#102534ed;border-radius:10px;color:#f1d18c;z-index:5;box-shadow:0 20px 70px #0006;pointer-events:none}#film-finale[hidden]{display:none}.film-genealogy p{display:flex;justify-content:space-between;padding:7px 10px;background:#15384b;border-radius:4px;margin:5px 0}.film-genealogy b{color:#edcb7d}.film-data{max-width:780px!important}.flow-actions p{font-size:12px;line-height:1.7;color:#a9c4d1}
@media(max-width:950px){#flow-hud{left:8px;bottom:8px;width:calc(100% - 16px);padding:8px}.film-controls{gap:5px}#flow-hud .film-heading small{font-size:8px}#film-stages button{font-size:9px}#flow-jump{max-width:110px}}
