:root{color-scheme:light;--bg:#efecdf;--ink:#303b32;--line:#ccc8b8;--muted:#6b7065;--gold:#a68143}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 system-ui,sans-serif}header,main,footer{max-width:1600px;margin:auto;padding:24px 32px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:20px}.brand{font:28px Georgia;text-decoration:none}nav{display:flex;gap:20px}a{color:inherit;text-underline-offset:4px}header nav{font-size:13px}.intro{display:flex;align-items:center;justify-content:space-between;gap:20px}.eyebrow{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:0 0 9px}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.15}h1{font-size:clamp(30px,4vw,52px);margin:0 0 16px}h2{font-size:27px;margin:18px 0}.edition{font-size:11px;white-space:nowrap}.edition b{font:30px Georgia;margin-left:12px}.lead{max-width:860px;margin:0 0 24px;font-size:16px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:22px}.workspace>section{min-width:0}.stage{height:min(71vh,820px);min-height:500px;position:relative;background:#cbcfc1;overflow:hidden;border:1px solid var(--line)}canvas{display:block;width:100%;height:100%;touch-action:none}.labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.labels button{position:absolute;transform:translate(-50%,-100%);pointer-events:auto;font:11px system-ui;padding:3px 6px;border:1px solid #8a876b;background:#f5f0dcdd;white-space:nowrap}.labels button[aria-pressed=true]{background:#324d3e;color:#fff;border-color:#324d3e}.zoom{position:absolute;right:12px;bottom:42px;display:grid;gap:5px}.zoom button{width:32px;height:32px;font-size:21px;line-height:1;padding:0}.compass{position:absolute;top:16px;right:17px;display:grid;justify-items:center;font-size:11px}.compass span{display:block;font-size:28px;line-height:1;transform-origin:center}.scene-note{position:absolute;bottom:9px;left:13px;font-size:10px;background:#eeecdacb;padding:3px 8px;pointer-events:none}#loading{position:absolute;inset:0;display:grid;place-content:center;background:#d8dacdcc;font-size:14px;padding:30px;text-align:center}#loading[hidden]{display:none}button{font:13px system-ui;cursor:pointer;background:#f4f0e5;border:1px solid var(--line);color:var(--ink);padding:8px 12px}button[aria-pressed=true]{background:#344c3d;border-color:#344c3d;color:#faf4e5}.views{flex-wrap:wrap;gap:7px;margin:13px 0}.hint,.status{font-size:11px;color:var(--muted);margin:8px 0}.status{min-height:18px}aside{background:#e6e2d5;border:1px solid var(--line);padding:20px;align-self:start}aside>label{display:block;font-size:12px;margin:14px 0 6px}select{padding:9px 6px;font:13px system-ui;max-width:100%;background:#f6f1e5;color:var(--ink);border:1px solid var(--line)}aside select{width:100%}aside p{font-size:13px}fieldset{border:0;border-top:1px solid var(--line);padding:18px 0 0;margin-top:24px}legend{font-size:11px;color:var(--muted);padding:0 6px 0 0}fieldset label{display:block;margin:7px 0;font-size:12px;cursor:pointer}input{accent-color:#344c3d}.legend{margin:22px 0;font-size:11px}.legend span{display:block}.legend span:before{content:'';display:inline-block;width:15px;height:3px;background:var(--color);margin:0 7px 3px 0}.caution{font-size:11px;line-height:1.6;color:var(--muted);border-top:1px solid var(--line);padding-top:15px}.threshold{padding:10px;border-left:2px solid var(--gold);background:#f0e7d2}.profiles{margin-top:30px;padding-top:18px;border-top:1px solid var(--line)}.section-head{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.section-head h2{margin-right:auto}.section-head label{font-size:12px}.chart{overflow-x:auto;border:1px solid var(--line);margin-top:18px;background:#f7f3e8}.chart svg{display:block;width:100%;min-width:660px;height:auto}.chart text{font:12px system-ui;fill:#535a4c}#profile-note{font-size:13px}details{margin-top:24px}summary{cursor:pointer}.notes{display:grid;grid-template-columns:1fr 1fr;gap:45px;border-top:1px solid var(--line);margin-top:36px;padding-top:12px}.notes p{max-width:600px;font-size:14px}footer{font-size:11px;border-top:1px solid var(--line);color:var(--muted)}button:focus-visible,a:focus-visible,select:focus-visible,canvas:focus-visible{outline:2px solid #8b6634;outline-offset:3px}@media(max-width:1000px){.workspace{grid-template-columns:1fr}.stage{height:66vh;min-height:450px}aside{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}aside .eyebrow,aside>label,aside>select,aside article{grid-column:1}aside fieldset{grid-column:2;grid-row:1/5;margin-top:0}aside .legend,aside .caution{grid-column:2}aside .caution{grid-row:5/7}}@media(max-width:600px){header,main,footer{padding:18px}.brand{font-size:22px}header nav{font-size:11px;gap:7px;flex-direction:column}.edition{display:none}.stage{min-height:390px;height:60vh}aside{display:block}.notes{grid-template-columns:1fr;gap:12px}.views button{font-size:11px;padding:8px}.section-head h2{width:100%;margin-bottom:8px}.scene-note{font-size:9px}.lead{font-size:14px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.variant-state{position:absolute;left:13px;top:12px;max-width:calc(100% - 75px);padding:5px 9px;background:#f5eddde8;border-left:3px solid #a68143;font-size:11px;pointer-events:none}.variant-control{margin:18px 0;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.variant-control label{font-size:12px;display:block;margin-bottom:7px}.variant-control p{font-size:11px;color:var(--muted);margin-bottom:0}@media(min-width:601px) and (max-width:1000px){aside{display:block}}

.variant-control[hidden]{display:none}.bridge-toggle{margin-top:14px;line-height:1.5}.bridge-toggle input{vertical-align:middle}

.embedded body>header,.embedded .intro,.embedded .lead,.embedded .profiles,.embedded .notes,.embedded body>footer{display:none}.embedded main{padding:18px;max-width:none}.embedded .stage{height:min(55vw,660px);min-height:450px}.embedded .workspace{grid-template-columns:minmax(0,1fr) 285px}@media(max-width:1000px){.embedded .workspace{grid-template-columns:1fr}.embedded .stage{height:62vw;min-height:390px;max-height:650px}}@media(max-width:600px){.embedded main{padding:10px}.embedded .stage{height:390px;min-height:390px}}

.livny-profile{border:1px solid var(--line);background:#f7f3e8;padding:12px}.livny-profile svg{display:block;width:100%;height:auto}.livny-profile text{font:9px system-ui;fill:#606352}
.embedded.site-dark{color-scheme:dark;--bg:#1c211b;--ink:#e9e3cf;--line:#464a3d;--muted:#bdbeaa}.embedded.site-dark aside{background:#252b22}.embedded.site-dark select,.embedded.site-dark button{background:#31392b;color:#e9e3cf}.embedded.site-dark button[aria-pressed=true]{background:#b7a373;color:#1c211b}.embedded.site-dark .threshold{background:#3a392a}.embedded.site-dark .scene-note,.embedded.site-dark .variant-state{color:#303b32}@media(min-width:1001px){.embedded aside{max-height:calc(min(55vw,660px) + 150px);overflow-y:auto}}
.labels button.interior-marker{max-width:180px;white-space:normal;line-height:1.25;text-align:left;border-left:4px solid var(--marker-color);background:#f8f1dfed;color:#303b32;box-shadow:0 2px 8px #30332938}.labels button.interior-marker.source-hypothesis{border-style:dashed;border-left-style:solid}.labels button.road-marker{border-color:#6f4c2f;border-left-color:#6f4c2f}.labels button.unresolved-marker{border-style:dashed;border-color:#8f5360;color:#6b3440}.legend .area:before{height:9px;opacity:.6}.legend .dashed:before{height:0;background:none;border-top:2px dashed var(--color)}

.standalone body>header,.standalone .intro,.standalone .lead,.standalone .profiles,.standalone .notes,.standalone body>footer{display:none}.standalone body{overflow:hidden}.standalone main{max-width:none;padding:0}.standalone .workspace{height:100vh;grid-template-columns:minmax(0,1fr) 310px;gap:0}.standalone .workspace>section{display:flex;min-height:0;flex-direction:column}.standalone .stage{height:auto;min-height:0;flex:1;border:0}.standalone .views{padding:0 12px}.standalone .hint,.standalone .status{padding-inline:12px}.standalone aside{height:100vh;overflow-y:auto;border-block:0;border-right:0}@media(max-width:700px){.standalone body{overflow:auto}.standalone .workspace{display:block;height:auto}.standalone .workspace>section{display:block}.standalone .stage{height:68vh;min-height:390px}.standalone aside{height:auto}}

.labels button,.labels button.interior-marker{width:9px;height:9px;max-width:9px;padding:0;border:1px solid #f5f0dcb8;border-radius:50%;background:var(--marker-color,#626956);color:transparent;font-size:0;line-height:0;white-space:nowrap;opacity:.48;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #303b3230;transition:opacity .16s ease,transform .16s ease}.labels button:hover,.labels button:focus-visible,.labels button[aria-pressed=true]{z-index:10;width:auto;height:auto;max-width:190px;padding:3px 6px;border:1px solid #8a876b;border-radius:2px;background:#f5f0dce8;color:#303b32;font:11px/1.25 system-ui;white-space:nowrap;opacity:.9;transform:translate(-50%,-100%);box-shadow:0 2px 7px #3033292e}.labels button.interior-marker:hover,.labels button.interior-marker:focus-visible,.labels button.interior-marker[aria-pressed=true]{max-width:180px;border-left:3px solid var(--marker-color);white-space:normal;text-align:left}.labels button[aria-pressed=true]{background:#425346e8;color:#fff;border-color:#425346}.labels button.interior-marker[aria-pressed=true]{background:#f5f0dced;color:#303b32}
.context-map{margin:22px 0 0;max-width:720px}.context-map img{display:block;width:100%;height:auto;border:1px solid var(--line);background:#eae7d9}.context-map figcaption{margin-top:7px;color:var(--muted);font-size:11px}.embedded .context-map,.standalone .context-map{display:none}

.viewer-info{margin:0 0 12px;border:1px solid var(--line);background:#f6f2e7}.viewer-info summary{cursor:pointer;padding:7px 12px;font-size:12px;color:var(--muted)}.viewer-info .lead,.viewer-info .hint{margin:0;padding:5px 12px 10px;max-width:100%}.standalone .viewer-info,.embedded .viewer-info{display:none}
.workspace,.embedded .workspace,.standalone .workspace{position:relative;grid-template-columns:minmax(0,1fr)}.workspace aside,.embedded .workspace aside,.standalone .workspace aside{position:absolute;top:0;right:0;z-index:12;display:flex;flex-direction:column;width:min(355px,100%);height:min(78vh,820px);max-height:100%;overflow:auto;visibility:hidden;pointer-events:none;transform:translateY(8px);opacity:0;box-shadow:-8px 5px 22px #30332930;transition:transform .18s ease,opacity .18s ease}.panel-open .workspace aside{visibility:visible;pointer-events:auto;transform:none;opacity:1}.workspace aside #inspector{order:-1;margin-bottom:12px}.workspace aside #inspector h2{margin-top:6px}.panel-toggle{position:absolute;z-index:11;right:12px;top:10px;padding:6px 10px;background:#f5f0dce8;font-size:11px}.compass{top:51px}.standalone .workspace>section{min-height:0}.standalone .stage{flex:1}.standalone .hint,.standalone .status{display:none}
.views{position:relative;align-items:center;gap:5px;margin:8px 0}.views>button,.extra-views>summary{padding:6px 10px;font-size:12px}.extra-views{position:relative}.extra-views>summary{list-style:none;border:1px solid var(--line);background:#f4f0e5;cursor:pointer}.extra-views>summary::-webkit-details-marker{display:none}.extra-views>summary::after{content:' ▾'}.extra-view-list{position:absolute;z-index:15;top:100%;right:0;width:min(540px,90vw);max-height:min(56vh,470px);overflow:auto;padding:10px;display:flex;flex-wrap:wrap;gap:5px;background:#f6f2e7;border:1px solid var(--line);box-shadow:0 9px 20px #30332930}.extra-view-list button{font-size:11px;padding:6px 8px}.extra-views:not([open]) .extra-view-list{display:none}
@media(max-width:700px){.workspace aside,.embedded .workspace aside,.standalone .workspace aside{height:min(72vh,620px)}.standalone .workspace{height:100vh;display:flex;flex-direction:column}.standalone .workspace>section{display:flex;flex:1;min-height:0}.standalone .stage{height:auto;min-height:0;flex:1}.standalone .views{padding:4px 8px;max-height:88px;overflow:visible}.standalone .views>button{padding:5px 7px;font-size:10px}.extra-view-list{right:-8px}.panel-toggle{right:8px}}
.labels button.context-marker{--marker-color:#4d665b}.labels button.context-marker.context-expanded{z-index:3;width:auto;height:auto;max-width:165px;padding:4px 7px;border:1px solid #758776;border-radius:3px;background:#f5f0dcdf;color:#293a32;font:10px/1.2 system-ui;white-space:normal;text-align:left;opacity:.9;transform:translate(-50%,-115%);box-shadow:0 2px 7px #30332929}
.labels button.context-marker.context-expanded.context-near-top{transform:translate(-50%,15%)}
.labels button.outer-settlement-marker{--marker-color:#6b8060;width:12px;height:12px;max-width:12px;border:2px solid #f6f0df;border-radius:50%;background:#6b8060;opacity:.75;box-shadow:0 0 0 2px #3445357a}
.labels button.outer-settlement-marker:hover,.labels button.outer-settlement-marker:focus-visible,.labels button.outer-settlement-marker[aria-pressed=true]{width:auto;height:auto;max-width:none;padding:4px 7px;border:1px solid #6b8060;border-radius:3px;background:#f5f0dce8;color:#293a32;font:11px/1.2 system-ui;white-space:nowrap;opacity:1}
.labels button.outer-wall-marker{--marker-color:#884e3e;width:12px;height:12px;max-width:12px;border:2px solid #f6f0df;border-radius:2px;background:#884e3e;opacity:.8;box-shadow:0 0 0 2px #58382f88}
.labels button.outer-wall-marker:hover,.labels button.outer-wall-marker:focus-visible,.labels button.outer-wall-marker[aria-pressed=true]{width:auto;height:auto;max-width:none;padding:4px 7px;border:1px solid #884e3e;border-radius:3px;background:#f5f0dce8;color:#293a32;font:11px/1.2 system-ui;white-space:nowrap;opacity:1}
.secret-well-profile{margin:12px 0;border:1px solid var(--line);background:#f7f3e8;padding:7px}.secret-well-profile svg{display:block;width:100%;height:auto}.secret-well-profile text{font:9px system-ui;fill:#514b3f}
.interior-tour-start{position:absolute;left:14px;top:12px;z-index:11;background:#f6f0dfee;padding:8px 12px;font-size:12px}
.interior-tour-panel{position:absolute;left:14px;bottom:16px;z-index:13;width:min(420px,calc(100% - 28px));padding:14px;background:#f5f0e5f2;border:1px solid #b7ab93;box-shadow:0 4px 22px #171b2433;color:#302c24;border-radius:5px}
.interior-tour-panel[hidden],.interior-tour-start[hidden]{display:none}.interior-tour-panel h2{font-size:17px;margin:9px 0 6px}.interior-tour-panel p{font:12px/1.5 system-ui;margin:6px 0}.interior-tour-panel select{width:100%;font-size:12px}.interior-tour-panel .interior-tour-note,.interior-tour-panel .interior-tour-help{font-size:10px;color:#726650}.interior-tour-nav{display:flex;gap:7px;margin-top:10px}.interior-tour-nav button{font-size:12px;min-height:36px}.interior-tour-nav button:last-child{margin-left:auto}.interior-tour-nav button:disabled{opacity:.4;cursor:default}
.interior-tour-active .labels,.interior-tour-active .zoom,.interior-tour-active .variant-state,.interior-tour-active .scene-note,.interior-tour-active .panel-toggle{visibility:hidden}.interior-tour-active canvas{touch-action:none;cursor:grab}.interior-tour-active canvas:active{cursor:grabbing}
@media(max-width:600px){.interior-tour-panel{left:8px;bottom:8px;width:calc(100% - 16px);padding:10px}.interior-tour-panel h2{font-size:14px}.interior-tour-panel .interior-tour-help{display:none}.interior-tour-start{left:8px;top:8px}}
.interior-tour-transport{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:10px 0}.interior-tour-transport select{width:auto}.interior-tour-transport button{font-size:11px;padding:7px 9px}.interior-tour-transport span{font:11px system-ui;color:#71654f}.interior-tour-transport progress{width:100%;height:5px;accent-color:#506447}.interior-tour-transport [hidden]{display:none}.interior-tour-panel button:disabled{cursor:default;opacity:.45}.interior-tour-panel{max-height:calc(100% - 24px);overflow:auto}
.free-walk-start{position:absolute;left:14px;top:54px;z-index:11;background:#f6f0dfee;font-size:12px;padding:8px 12px}.free-walk-start:disabled{cursor:wait;opacity:.7}
.free-walk-panel{position:absolute;left:14px;bottom:16px;z-index:13;width:min(405px,calc(100% - 28px));padding:11px 13px;border:1px solid #b7ab93;border-radius:5px;background:#f5f0e5ed;color:#302c24;box-shadow:0 4px 22px #171b2433}.free-walk-panel p{font:12px/1.5 system-ui;margin:3px 0 7px}.free-walk-panel p[role=status]{font-size:11px;color:#726650}.free-walk-panel>div{display:flex;justify-content:space-between;gap:8px}.free-walk-panel button{font-size:11px;min-height:34px}.free-walk-panel[hidden],.free-walk-start[hidden]{display:none}
.free-walk-crosshair{display:none;position:absolute;top:50%;left:50%;width:4px;height:4px;border-radius:50%;background:#f6f1e7b3;box-shadow:0 0 0 1px #20282066;transform:translate(-50%,-50%);pointer-events:none}.free-walk-active .free-walk-crosshair{display:block}
.free-walk-active .labels,.free-walk-active .zoom,.free-walk-active .variant-state,.free-walk-active .scene-note,.free-walk-active .panel-toggle{visibility:hidden}.free-walk-active .interior-tour-start,.free-walk-preparing .interior-tour-start,.interior-tour-active .free-walk-start{display:none}.free-walk-active canvas{cursor:crosshair;touch-action:none}
.free-walk-panel .free-walk-speed{align-items:center;margin:10px 0;font:12px system-ui}.free-walk-speed label{margin:0;font:inherit}.free-walk-speed input{min-width:60px;flex:1;width:auto;accent-color:#506447}.free-walk-speed output{min-width:58px;text-align:right;font-variant-numeric:tabular-nums}.free-walk-nav{flex-wrap:wrap}.free-walk-nav button{padding:7px 9px}
@media(max-width:600px){.free-walk-start{left:8px;top:50px}.free-walk-panel{left:8px;bottom:8px;width:calc(100% - 16px)}}
.free-flight-start{position:absolute;left:14px;top:100px;z-index:11;background:#f6f0dfee;font-size:12px;padding:8px 12px}
.free-flight-panel{position:absolute;left:14px;bottom:16px;z-index:13;width:min(405px,calc(100% - 28px));padding:11px 13px;border:1px solid #b7ab93;border-radius:5px;background:#f5f0e5ed;color:#302c24;box-shadow:0 4px 22px #171b2433}
.free-flight-panel[hidden],.free-flight-start[hidden]{display:none}.free-flight-panel p{font:12px/1.5 system-ui;margin:3px 0 7px}.free-flight-panel p[role=status]{font-size:11px;color:#726650}
.free-flight-panel button{font-size:11px;min-height:34px}.free-flight-panel>div{display:flex;justify-content:space-between;gap:8px}.free-flight-panel .free-flight-speed{align-items:center;margin:10px 0;font:12px system-ui}.free-flight-speed input{min-width:60px;flex:1;accent-color:#506447}.free-flight-speed output{min-width:58px;text-align:right;font-variant-numeric:tabular-nums}
.free-flight-crosshair{display:none;position:absolute;top:50%;left:50%;width:4px;height:4px;border-radius:50%;background:#f6f1e7b3;box-shadow:0 0 0 1px #20282066;transform:translate(-50%,-50%);pointer-events:none}.free-flight-active .free-flight-crosshair{display:block}
.free-flight-active .labels,.free-flight-active .zoom,.free-flight-active .variant-state,.free-flight-active .scene-note,.free-flight-active .panel-toggle{visibility:hidden}.free-flight-active canvas{cursor:crosshair;touch-action:none}
.free-flight-active .interior-tour-start,.free-flight-active .free-walk-start,.free-walk-active .free-flight-start,.free-walk-preparing .free-flight-start,.interior-tour-active .free-flight-start{display:none}
@media(max-width:600px){.free-flight-start{left:8px;top:92px}.free-flight-panel{left:8px;bottom:8px;width:calc(100% - 16px)}}
.extra-view-list{display:block;top:auto;bottom:calc(100% + 6px)}.extra-view-group{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 10px}.extra-view-group:last-child{margin-bottom:0}.extra-view-group h3{flex:0 0 100%;margin:0 0 3px;font:600 11px/1.3 system-ui;color:var(--muted)}

/* Keep scene controls in flow within one overlay, including wrapped mobile rows. */
.standalone body{overflow:hidden}.standalone .workspace{height:100dvh}.standalone .views{max-height:none;flex-shrink:0}
.viewer-toolbar{position:absolute;z-index:11;inset:12px 12px auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 12px;pointer-events:none}
.viewer-modes{display:flex;flex-wrap:wrap;gap:6px;min-width:0}
.viewer-modes>button,.viewer-toolbar>.panel-toggle{position:static;margin:0;min-height:36px;padding:8px 11px;font-size:12px;background:#f6f0dff2;pointer-events:auto}
.viewer-toolbar>.variant-state{position:static;grid-column:1/-1;justify-self:start;max-width:100%;font-size:10px;padding:4px 8px}
.workspace aside .panel-close{order:-2;align-self:flex-end;position:sticky;top:0;z-index:1;margin:0 0 12px;min-height:36px;background:var(--bg)}
.compass{top:auto;bottom:163px}.scene-note{max-width:calc(100% - 76px)}
.embedded .status{display:none}.embedded .hint{margin-bottom:0}
@media(max-width:600px){.viewer-toolbar{inset:8px 8px auto;gap:6px}.viewer-modes{gap:5px}.viewer-modes>button,.viewer-toolbar>.panel-toggle{padding:8px;font-size:11px}.viewer-toolbar>.variant-state{font-size:9px}.extra-views{margin-top:0}.extra-view-list{position:fixed;left:10px;right:10px;bottom:100px;width:auto;max-height:60vh}}
