/* Buildless viewer styles; no remote font or stylesheet dependencies. */
:root{--ink:#243b32;--muted:#68736b;--forest:#285644;--cream:#f5f3ec;--line:#dcdfd5;--lime:#dce8b9;--white:#fffef9;--serif:Georgia,'Times New Roman',serif;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,canvas:focus-visible,[role=slider]:focus-visible{outline:3px solid #c58d37;outline-offset:4px}button{border:0}a{color:inherit}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.masthead{height:85px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 36px;gap:24px;background:var(--cream)}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;font-size:15px;font-weight:600;letter-spacing:2.3px}.brand-mark{position:relative;font-family:var(--serif);font-size:42px;line-height:1;letter-spacing:-3px;font-weight:400;width:39px}.brand-mark span{position:absolute;font-family:Arial;font-size:23px;right:0;top:0}.brand-sub{display:block;font-size:10px;letter-spacing:.5px;font-weight:400;margin-top:6px;color:var(--muted)}.header-place{font-size:10px;letter-spacing:1.5px;text-align:center;color:#647066}.header-place span{display:block;font-size:10px;letter-spacing:.8px;margin-top:7px;opacity:.7}.quiet{background:none;font-size:12px;padding:12px 0}.quiet span{margin-left:15px;font-size:19px}main{display:grid;grid-template-columns:338px 1fr;height:calc(100dvh - 85px)}.panel{display:flex;flex-direction:column;padding:36px 28px 19px;border-right:1px solid var(--line);overflow-y:auto;scrollbar-width:thin;position:relative;z-index:5}.eyebrow{font-size:9px;letter-spacing:1.65px;font-weight:600;color:#7c8376}h1{font-family:var(--serif);font-size:33px;line-height:1.14;letter-spacing:-1.1px;font-weight:400;margin:20px 0 15px}h1 em{font-weight:400;color:#657b60}.intro{font-size:12px;line-height:1.7;color:var(--muted);margin:0 0 25px}.scenarios{border:0;padding:0;margin:0;display:grid;gap:9px}.scenarios legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.scenario{padding:16px 13px;display:flex;align-items:center;text-align:left;background:transparent;border:1px solid #daddd2;border-radius:8px;gap:11px;transition:background .2s,border-color .2s}.scenario:hover{background:#e8ecdf}.scenario.active{background:var(--forest);border-color:var(--forest);color:#fffef5}.scenario strong{display:block;font-size:12px;font-weight:500;letter-spacing:.1px}.scenario small{display:block;font-size:9px;line-height:1.5;color:var(--muted);margin-top:5px}.scenario.active small{color:#c1d4c2}.option-dot{width:11px;height:11px;border:1px solid #a6afa0;flex:0 0 11px;border-radius:50%}.active>.option-dot{background:#d6e8ac;border-color:#d6e8ac;box-shadow:inset 0 0 0 3px var(--forest)}.option-number{margin-left:auto;font-family:var(--serif);font-size:17px;opacity:.5}.compare-button{background:none;display:flex;align-items:center;gap:8px;font-size:11px;text-align:left;padding:17px 1px 9px;width:100%}.compare-button svg{width:18px;height:18px}.switch{position:relative;margin-left:auto;width:28px;height:16px;border-radius:20px;background:#d4d9cd}.switch:after{content:'';position:absolute;width:10px;height:10px;border-radius:50%;background:#fff;left:3px;top:3px;transition:transform .2s}.compare-button[aria-pressed=true] .switch{background:var(--forest)}.compare-button[aria-pressed=true] .switch:after{transform:translateX(12px)}.panel-rule{height:1px;background:var(--line);margin:23px 0}.section-heading{font-size:9px;letter-spacing:1.5px;color:#6a7768;margin-bottom:13px}.presets{display:grid;grid-template-columns:1fr 1fr;gap:8px}.preset{font-size:10px;text-align:left;padding:12px 10px;background:transparent;border:1px solid #daddd2;border-radius:5px;white-space:nowrap}.preset span{font-size:13px;padding-right:5px;color:#6f7b64}.preset.active{background:#e6ebd9;border-color:#c9d1bc}.preset:hover{background:#e6ebd9}.walk-button{display:flex;align-items:center;gap:9px;background:none;margin-top:13px;padding:12px 0;text-align:left;font-size:11px}.walk-button svg{width:20px;height:20px}.walk-button span:last-child{margin-left:auto;font-size:19px}.walk-button[aria-pressed=true]{color:#48814f;font-weight:600}.context-note{display:flex;gap:8px;align-items:flex-start;margin-top:auto;padding-top:35px}.status-dot{width:6px;height:6px;background:#688253;border-radius:50%;display:inline-block;flex:0 0 6px}.context-note .status-dot{margin-top:6px}.context-note p{font-size:10px;line-height:1.7;margin:0;color:#7d8578}.context-note strong{font-weight:500;color:#566850}.panel-footer{border-top:1px solid var(--line);margin-top:23px;padding-top:16px;display:grid;gap:7px}.panel-footer>span{font-size:8px;letter-spacing:1.3px;color:#87907f}.text-button{background:none;text-align:left;padding:0;font-size:10px;color:#526a54;line-height:1.8}#world{position:relative;min-width:0;overflow:hidden;background:#dfdfcf;isolation:isolate}#scene{display:block;width:100%;height:100%;outline-offset:-3px;touch-action:none;cursor:grab}#scene.dragging{cursor:grabbing}.scene-top{position:absolute;left:27px;top:23px;right:24px;display:flex;align-items:center;justify-content:space-between;pointer-events:none;z-index:12}.scene-top>*{pointer-events:auto}.scene-tag{display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:1px;background:#fffef6e8;border:1px solid #e6e7d988;padding:12px 14px;border-radius:5px;box-shadow:0 2px 8px #24342306}.tag-rule{height:11px;width:1px;background:#cdd2c4;margin:0 2px}#scene-subtitle{font-size:10px;letter-spacing:0;color:#7f8778}.icon-button{width:36px;height:36px;border:1px solid #d8ddce;background:#fffef6ed;border-radius:5px;display:grid;place-items:center;box-shadow:0 2px 8px #24342307}.icon-button svg{width:18px;height:18px}.icon-button:hover,.zoom-tools button:hover{background:#e9eedc}.icon-button.active{background:#e8efd9}.world-tools{position:absolute;right:24px;top:88px;display:flex;flex-direction:column;gap:10px;z-index:12}.compass{position:relative;background:none;width:36px;height:66px;padding:0}.compass>span{position:absolute;top:0;left:0;right:0;font-size:10px;font-weight:600}.compass svg{position:absolute;top:20px;left:0;width:36px;height:36px;stroke-width:1;fill:#f9faef;stroke:#506448;transition:transform .12s}.compass .compass-half{fill:#506448}.zoom-tools{display:grid;border:1px solid #d8ddce;border-radius:5px;overflow:hidden;box-shadow:0 2px 8px #24342307}.zoom-tools button{background:#fffef6ed;width:34px;height:35px;font-size:20px;font-weight:300}.zoom-tools button+button{border-top:1px solid #d8ddce}.world-bottom{position:absolute;left:27px;bottom:47px;right:26px;display:flex;justify-content:space-between;align-items:end;pointer-events:none;z-index:11}.navigation-hint{font-size:10px;color:#556049;display:flex;align-items:center;gap:9px;text-shadow:0 1px 8px #fff,0 1px 4px #fff}.navigation-hint i{padding:0 7px;color:#9a9f8b;font-style:normal}.mouse-icon{border:1.4px solid #68745b;width:11px;height:16px;border-radius:6px;position:relative}.mouse-icon:after{content:'';width:1px;height:5px;position:absolute;background:#68745b;top:1px;left:4px}.scale{position:relative;height:28px;min-width:50px;color:#56654d}.scale span{position:absolute;bottom:12px;right:0;left:0;text-align:center;font-size:9px;text-shadow:0 1px 4px white}.scale i{position:absolute;bottom:4px;left:0;right:0;height:5px;border:1px solid #56654d;border-top:0}.model-caption{position:absolute;bottom:17px;left:27px;font-size:9px;line-height:1.5;color:#6d7661;max-width:74%;text-shadow:0 1px 6px #fff}.corner-coordinate{position:absolute;bottom:17px;right:26px;font-size:8px;letter-spacing:1.2px;color:#75816b}.loading{position:absolute;inset:0;background:#e5e6db;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;z-index:30;transition:opacity .45s}.loading.done{opacity:0;pointer-events:none}.loading-symbol{position:relative;font-family:var(--serif);font-size:80px;line-height:1;margin:0 0 10px;color:#657e59}.loading-symbol span{font-family:Arial;font-size:35px;position:absolute;top:6px;right:-24px}.loading strong{font-family:var(--serif);font-weight:400;font-size:25px}.loading>span{font-size:11px;color:#7d8773}.loading-track{width:180px;height:2px;background:#d0d6c5;margin-top:12px;overflow:hidden}.loading-track i{display:block;width:40%;height:100%;background:#6b845d;animation:load 1.8s ease-in-out infinite}@keyframes load{from{transform:translateX(-110%)}to{transform:translateX(350%)}}#labels{position:absolute;inset:0;pointer-events:none;z-index:6}.place-label{position:absolute;white-space:nowrap;transform:translate(-50%,-100%);font-size:9px;letter-spacing:.2px;color:#3c4b39;padding:5px 8px;border:1px solid #fff6;border-radius:3px;background:#fffef3df;box-shadow:0 2px 8px #263b2220;text-align:center;transition:opacity .15s}.place-label:after{content:'';position:absolute;bottom:-9px;left:50%;height:8px;width:1px;background:#63715780}.place-label.primary{font-size:10px;font-weight:500;background:#2b5744ed;color:#f8f6e7;border-color:#2b5744}.place-label small{font-size:8px;display:block;font-weight:400;opacity:.65;margin-top:3px}#comparison{position:absolute;inset:0;pointer-events:none;z-index:9}.compare-title{position:absolute;top:80px;font-size:10px;color:#46603c;background:#fffdebe6;padding:9px 12px;border-radius:4px;letter-spacing:.5px;box-shadow:0 2px 8px #263b220a}.compare-title strong{font-size:9px;margin-left:8px;font-weight:500;letter-spacing:1px}.compare-title.left{left:26px}.compare-title.right{right:77px}#divider{position:absolute;top:0;bottom:0;left:50%;width:3px;background:#fffdf0;box-shadow:0 0 8px #263b2226;pointer-events:auto;cursor:ew-resize;touch-action:none}#divider span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;background:#fffdf1;display:grid;place-items:center;border:1px solid #d8dfc9;border-radius:50%;font-size:22px;box-shadow:0 2px 10px #263b2233}.walk-help{position:absolute;bottom:100px;left:50%;transform:translateX(-50%);background:#fffdf1ef;border:1px solid #d6decb;padding:14px 17px;border-radius:7px;z-index:10;box-shadow:0 5px 25px #253c1b13;min-width:300px;text-align:center}.walk-help strong{font-family:var(--serif);font-size:18px;font-weight:400;display:block;margin-bottom:7px}.walk-help>span{display:block;font-size:10px;line-height:1.5;color:#78836c}.walk-help button{font-size:10px;background:none;text-decoration:underline;padding:10px 0 0}.movement-pad{position:absolute;bottom:105px;left:25px;display:grid;grid-template-columns:repeat(3,37px);grid-template-rows:repeat(2,37px);gap:3px;z-index:15;opacity:.9}.movement-pad button{background:#fffcece8;border:1px solid #bdc9ad;border-radius:5px;font-size:20px;touch-action:none;user-select:none}.movement-pad button[data-move=forward]{grid-column:2}.movement-pad button[data-move=left]{grid-column:1;grid-row:2}.movement-pad button[data-move=back]{grid-column:2;grid-row:2}.movement-pad button[data-move=right]{grid-column:3;grid-row:2}[hidden]{display:none!important}dialog{width:min(720px,calc(100vw - 36px));max-height:calc(100dvh - 60px);border:1px solid #d6dec7;border-radius:12px;padding:40px;background:#f8f7ef;color:var(--ink);box-shadow:0 15px 80px #152b2940;overflow:auto}dialog::backdrop{background:#102d274a;backdrop-filter:blur(4px)}.close-dialog{position:absolute;right:19px;top:14px;width:30px;height:30px;background:none;font-size:27px;font-weight:300;color:#66775e}h2{font-family:var(--serif);font-size:34px;font-weight:400;margin:17px 0 19px;letter-spacing:-.6px}dialog p{font-size:12px;line-height:1.8;color:#6b7864}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:25px 0;padding:24px 0}.about-grid span{font-size:9px;letter-spacing:1.2px;color:#859179}h3{font-family:var(--serif);font-size:22px;font-weight:400;margin:10px 0}.about-grid p{font-size:11px}.assumption-note{background:#e9eedf;border-radius:6px;padding:15px 18px}.primary-button{display:inline-block;background:var(--forest);color:#fbf8e8;padding:13px 18px;border-radius:5px;font-size:11px;text-decoration:none;margin-top:9px;line-height:1.5}.primary-button.secondary{color:var(--forest);background:#e3e9d7}.downloads{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.small-note{font-size:10px!important;color:#8b9484!important}#source-content h3{font-size:19px;margin-top:23px}#source-content ul{padding-left:17px;font-size:11px;line-height:1.85;color:#697663}#source-content a{color:#2f694b;text-underline-offset:3px}.source-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:#e8edde;border-radius:6px;padding:17px;margin:20px 0}.source-metrics strong{font-family:var(--serif);font-size:23px;display:block;font-weight:400}.source-metrics span{font-size:9px;color:#738068;display:block;margin-top:5px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#world:fullscreen{width:100vw;height:100dvh}.world-error{max-width:440px;padding:25px;text-align:center}.world-error a{display:inline-block;margin-top:15px}
@media(min-width:1500px){main{grid-template-columns:370px 1fr}.panel{padding:43px 34px 23px}h1{font-size:37px}.intro{font-size:13px;margin-bottom:29px}.scenario{padding:20px 14px}.scenario strong{font-size:13px}.scenario small{font-size:10px}.section-heading{margin-bottom:17px}.preset{padding:15px 11px}.panel-rule{margin:27px 0}.walk-button{margin-top:18px}.context-note p{font-size:11px}}
@media(max-height:790px) and (min-width:861px){.panel{padding-top:24px}.eyebrow{font-size:8px}h1{font-size:29px;margin:15px 0 10px}.intro{margin-bottom:18px}.scenario{padding:13px 11px}.panel-rule{margin:18px 0}.context-note{padding-top:20px}.panel-footer{margin-top:16px}.preset{padding:10px}.masthead{height:70px}main{height:calc(100dvh - 70px)}}
@media(max-width:1100px) and (min-width:861px){main{grid-template-columns:300px 1fr}.panel{padding-left:23px;padding-right:23px}h1{font-size:30px}.header-place{display:none}.scene-subtitle{display:none}.corner-coordinate{display:none}}
@media(max-width:860px){.masthead{height:65px;padding:0 19px}.brand{font-size:12px;gap:11px}.brand-mark{font-size:35px;width:32px}.brand-sub{font-size:8px;letter-spacing:.3px}.brand-mark span{font-size:20px}.header-place{display:none}.quiet{font-size:10px}.quiet span{margin-left:4px}main{display:flex;flex-direction:column;height:calc(100dvh - 65px)}.panel{padding:15px 18px 14px;display:grid;grid-template-columns:1fr auto;gap:10px 12px;overflow:visible;flex:0 0 auto;border-right:0;border-bottom:1px solid var(--line)}.panel>.eyebrow,.panel h1,.intro,.panel-rule,.section-heading,.context-note,.panel-footer{display:none}.scenarios{grid-column:1/-1;display:flex;gap:8px}.scenario{flex:1;padding:11px 10px;gap:8px}.scenario strong{font-size:11px}.scenario small{font-size:8px;margin-top:3px}.option-number{display:none}.compare-button{font-size:10px;padding:2px 0;grid-column:1;grid-row:2;width:164px}.compare-button svg{display:none}.presets{grid-column:1/-1;grid-row:3;display:flex;gap:6px}.preset{flex:1;text-align:center;font-size:9px;padding:9px 3px}.preset span{display:none}.walk-button{grid-column:2;grid-row:2;font-size:10px;margin:0;padding:2px 0;gap:5px}.walk-button svg{width:16px;height:16px}.walk-button span:last-child{display:none}#world{flex:1;min-height:0}.scene-top{top:15px;left:15px;right:14px}.scene-tag{font-size:8px;padding:10px 11px;gap:7px}.tag-rule,#scene-subtitle{display:none}.world-tools{right:14px;top:68px;gap:8px}.world-bottom{bottom:45px;left:15px;right:15px}.navigation-hint{font-size:9px}.navigation-hint i{padding:0 4px}.navigation-hint .mouse-icon{display:none}.model-caption{left:15px;bottom:12px;font-size:8px;max-width:82%}.corner-coordinate{display:none}.place-label{font-size:8px;padding:4px 6px}.place-label.primary{font-size:9px}.place-label small{display:none}.compare-title{top:65px;padding:7px 8px;font-size:8px}.compare-title strong{font-size:7px;margin-left:4px}.compare-title.left{left:15px}.compare-title.right{right:61px}.walk-help{bottom:85px;left:15px;transform:none;min-width:0;max-width:calc(100% - 145px);padding:11px;text-align:left}.walk-help strong{font-size:16px}.walk-help>span{font-size:9px}.movement-pad{left:auto;right:15px;bottom:85px;grid-template-columns:repeat(3,34px);grid-template-rows:repeat(2,34px)}.loading strong{font-size:21px;text-align:center;padding:0 20px}.loading>span{font-size:10px;text-align:center;padding:0 25px}dialog{padding:30px 23px}h2{font-size:29px}.about-grid{grid-template-columns:1fr;gap:12px}.about-grid p{margin-bottom:0}.loading-symbol{font-size:65px}.source-metrics{padding:12px;gap:7px}.source-metrics strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
@media(max-width:860px){.compare-button,.walk-button{min-height:36px}.preset{min-height:36px}#save-view{min-height:32px;text-align:left;grid-column:1/-1}}

.back-to-community{font-size:13px;color:#294a3a;text-decoration:none;padding:12px}.back-to-community:hover{text-decoration:underline}@media(max-width:600px){.back-to-community{font-size:11px;max-width:150px}}

/* Group identity stays readable on smaller screens. */
.brand>span:last-child{min-width:0}.brand{max-width:55%}@media(max-width:600px){.brand{max-width:62%;font-size:11px}.brand-sub{font-size:9px}.back-to-community{max-width:115px}}
