:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f2eee5;--ink:#302e28;--muted:#686257;--ochre:#826122;--rule:#c9c2b4;--serif:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;font-family:var(--mono);color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,select{font:inherit;color:inherit;min-height:44px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button,select{border:1px solid var(--rule);background:var(--paper);border-radius:2px}button{padding:10px 15px}button:hover:not(:disabled){background:#e7e0d2}button:active:not(:disabled){background:#d9cdb4}:focus-visible{outline:3px solid var(--ochre);outline-offset:4px}[hidden],.hidden{display:none!important}p{margin:0}.viewer{isolation:isolate;width:100%;height:100dvh;position:relative}#view{touch-action:none;background:#e5e0d6;width:100%;height:100%;display:block}#view:focus-visible{outline-offset:-6px}.identity{top:max(28px, env(safe-area-inset-top));left:max(32px, env(safe-area-inset-left));pointer-events:none;border-left:2px solid var(--ochre);background:#f2eee5ed;padding:12px 18px 14px 12px;position:absolute}.identity-heading{align-items:baseline;gap:10px;display:flex}.drawing-mark{color:var(--ochre);font-size:25px}h1{font-family:var(--serif);letter-spacing:-.035em;margin:0;font-size:clamp(21px,2.4vw,30px);font-weight:400}h1 span{color:var(--ochre);padding:0 5px}.identity p{color:var(--muted);margin:7px 0 0 25px;font-size:10px;line-height:1.6}.model-stamp{top:max(34px, env(safe-area-inset-top));right:max(32px, env(safe-area-inset-right));text-align:right;overflow-wrap:anywhere;pointer-events:none;background:#f2eee5ed;gap:6px;max-width:28vw;padding:10px 12px;font-size:10px;line-height:1.5;display:grid;position:absolute}.stamp-label,.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--muted);font-size:10px;line-height:1.6}#model-version{color:var(--ink)}#welcome{top:50%;left:max(48px, env(safe-area-inset-left));border:1px solid var(--rule);background:#f2eee5f7;width:min(430px,100% - 48px);max-height:calc(100dvh - 230px);padding:30px;position:absolute;overflow-y:auto;transform:translateY(-46%);box-shadow:0 12px 50px #302e2814}#welcome .eyebrow{justify-content:space-between;gap:16px;display:flex}h2{font-family:var(--serif);letter-spacing:-.04em;margin:19px 0 14px;font-size:clamp(32px,4vw,43px);font-weight:400;line-height:1.08}.welcome-intro{font-family:var(--serif);max-width:32ch;font-size:18px;line-height:1.5}.welcome-instructions{border-top:1px solid var(--rule);gap:11px;margin:22px 0;padding-top:15px;font-size:11px;line-height:1.7;display:grid}.welcome-instructions p{grid-template-columns:56px 1fr;gap:12px;display:grid}.instruction-label{color:var(--muted)}kbd{border:1px solid var(--rule);min-width:19px;font:10px/1.7 var(--mono);text-align:center;border-bottom-width:2px;border-radius:2px;margin-right:3px;padding:0 4px;display:inline-block}button.primary{background:var(--ink);border-color:var(--ink);width:100%;color:var(--paper);justify-content:space-between;align-items:center;padding:15px 17px;font-size:12px;display:flex}button.primary:hover{background:#504a3d}button.primary span{color:#d7bf88;font-size:20px}.welcome-footnote{color:var(--muted);margin-top:13px;font-size:10px;line-height:1.8}#loading{z-index:10;background:var(--paper);place-items:center;padding:24px;display:grid;position:absolute;inset:0}.loading-card{text-align:center}.loading-symbol{border:1px solid var(--rule);border-top:2px solid var(--ochre);width:38px;height:38px;margin:0 auto 28px;animation:2s linear infinite revolve;display:block}#load-status{font-family:var(--serif);margin-top:12px;font-size:24px;line-height:1.4}@keyframes revolve{to{transform:rotate(360deg)}}.reticle{background:var(--paper);pointer-events:none;border-radius:50%;width:5px;height:5px;display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #302e28a6}body.walking .reticle{display:block}body.walking #view{cursor:none}body.walking .identity{background:#f2eee5d9}.bottom-bar{bottom:max(24px, env(safe-area-inset-bottom));left:max(32px, env(safe-area-inset-left));right:max(32px, env(safe-area-inset-right));pointer-events:none;justify-content:space-between;align-items:end;gap:16px;display:flex;position:absolute}.status-line{background:#f2eee5ed;align-items:center;gap:9px;max-width:36ch;padding:10px 12px;font-size:10px;line-height:1.6;display:flex}.status-dot{border:1px solid var(--ochre);border-radius:50%;flex:0 0 5px;height:5px}body.ready .status-dot{background:var(--ochre)}.toolbar{pointer-events:auto;border:1px solid var(--rule);background:var(--paper);align-items:stretch;gap:4px;padding:5px;font-size:10px;display:flex}.toolbar>button{white-space:nowrap;border-color:#0000}.room-control{border-right:1px solid var(--rule);align-items:center;gap:7px;padding-left:10px;padding-right:8px;display:flex}.room-control label{color:var(--muted);white-space:nowrap}#room{border-color:#0000;max-width:145px;padding:8px 4px}#help-toggle span{color:var(--ochre);margin-left:6px}.touch-pad{display:none}dialog{border:1px solid var(--rule);background:var(--paper);width:min(560px,100% - 32px);max-height:calc(100dvh - 40px);color:var(--ink);padding:28px;overflow-y:auto;box-shadow:0 24px 100px #0003}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#25231d7a}.help-header{justify-content:space-between;align-items:center;gap:12px;display:flex}#help-close{font-size:10px}#help-close span{margin-left:8px;font-size:17px}dialog h2{margin:25px 0}h3{text-transform:uppercase;letter-spacing:.1em;color:var(--ochre);margin:0 0 13px;font-size:10px;font-weight:400}.help-list{margin:0;font-size:12px;line-height:1.7}.help-list>div{grid-template-columns:65px 1fr;gap:12px;margin-bottom:13px;display:grid}dt{color:var(--muted)}dd{margin:0}.help-note{border-top:1px solid var(--rule);margin-top:22px;padding-top:20px}.help-note p{font-size:12px;line-height:1.8}.help-note p+p{margin-top:10px}.help-note .export-note{color:var(--ochre);font-size:11px}@media (width<=850px){.bottom-bar{flex-direction:column;align-items:stretch;gap:8px}.status-line{align-self:flex-start;max-width:100%}.toolbar{justify-content:space-between}.model-stamp{font-size:9px;top:112px}}@media (pointer:coarse){.touch-pad{right:max(24px, env(safe-area-inset-right));bottom:calc(155px + env(safe-area-inset-bottom));grid-template-rows:repeat(2,48px);grid-template-columns:repeat(3,48px);gap:5px;display:grid;position:absolute}.touch-pad button{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#f2eee5f0;padding:0;font-size:23px}#touch-forward{grid-column:2}#touch-left{grid-area:2/1}#touch-back{grid-area:2/2}#touch-right{grid-area:2/3}body:has(#welcome:not(.hidden):not([hidden])) .touch-pad{visibility:hidden}}@media (width<=540px){.identity{top:max(16px, env(safe-area-inset-top));left:max(16px, env(safe-area-inset-left));right:max(16px, env(safe-area-inset-right));padding:8px 10px 10px}h1{font-size:24px}.identity p{margin-left:0;font-size:9px}.drawing-mark{display:none}.model-stamp{max-width:calc(100% - 32px);padding:5px 8px;top:106px;right:16px}.stamp-label{display:none}#welcome{width:calc(100% - 32px);max-height:calc(100dvh - 300px);padding:22px;top:145px;left:16px;transform:none}#welcome .eyebrow{font-size:9px}h2{font-size:35px}.welcome-intro{font-size:17px}.bottom-bar{left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom))}.toolbar{flex-wrap:wrap;gap:2px}.room-control{border-right:0;border-bottom:1px solid var(--rule);justify-content:space-between;width:100%}#room{flex:1;max-width:none}.toolbar>button{flex:1;padding:8px}.status-line{padding:5px 9px;font-size:9px}dialog{padding:22px}}@media (height<=600px) and (width>=541px){.identity{top:12px;left:16px}.model-stamp{top:12px;right:16px}#welcome{max-height:calc(100dvh - 220px);padding:20px;top:105px;left:16px;transform:none}.bottom-bar{bottom:max(10px, env(safe-area-inset-bottom))}.touch-pad{bottom:120px}}@media (prefers-reduced-motion:reduce){.loading-symbol{animation:none}}
