.sm-button{width:auto;grid-auto-flow:column;gap:6px;padding:0 9px;font:300 10px/1 JetBrains Mono,ui-monospace,monospace;letter-spacing:.08em}.sm-glyph{display:grid;place-items:center;color:var(--vm-accent)}.sm-glyph svg *{transform-box:fill-box;transform-origin:20% 80%}.sm-nib{transition:transform .42s var(--vm-spring)}.sm-button:hover .sm-nib,.shader-menu.is-open .sm-nib{transform:rotate(-14deg) translate(-.5px,.5px)}.sm-label{color:var(--vm-text)}.sm-mode{font-size:8.5px;letter-spacing:.1em;color:var(--vm-muted);border:1px solid var(--vm-line);border-radius:4px;padding:2px 3px 1px}.sm-mode:empty{display:none}.sm-caret{color:var(--vm-muted);transition:transform .24s var(--vm-ease)}.shader-menu.is-open .sm-caret{transform:rotate(180deg)}.sm-menu{width:264px}.sm-key{float:right;font-size:8.5px;letter-spacing:.06em;padding:2px 4px 1px;border:1px solid var(--vm-line);border-radius:4px;color:var(--vm-muted)}.sm-item{display:grid;grid-template-columns:1fr 16px;align-items:center;gap:8px;width:100%;padding:6px 8px;border:0;border-radius:var(--vm-radius);background:transparent;color:var(--vm-text);text-align:left;cursor:pointer;outline:none;opacity:0;transform:translateY(-4px);transition:background-color .16s,opacity .22s var(--vm-ease),transform .26s var(--vm-ease)}.shader-menu.is-open .sm-item{opacity:1;transform:none;transition-delay:0s,calc(var(--i, 0) * 22ms),calc(var(--i, 0) * 22ms)}.sm-item:hover,.sm-item:focus-visible{background:var(--vm-hover)}.sm-item:focus-visible{box-shadow:inset 0 0 0 1.5px var(--vm-accent)}.sm-item .vm-model{font-size:14px}.sm-item[aria-checked=true] .vm-check{opacity:1}.sm-item small{line-height:1.35}.sm-group{margin:6px 4px 0;padding:8px 4px 2px;border-top:1px solid var(--vm-line);font:400 9px/1.2 JetBrains Mono,ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--vm-text);display:flex;align-items:baseline;gap:8px;white-space:nowrap}.sm-group small{font-size:9.5px;line-height:1.3;letter-spacing:.02em;text-transform:none;color:var(--vm-muted)}.sm-menu{max-height:calc(100vh - 96px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.sm-note{display:none;margin:0;padding:0 4px 2px;font-size:10.5px;line-height:1.35;color:var(--vm-muted)}.shader-menu[data-group=landscape][data-mode="2d"][data-scene=false] .sm-note--guess,.shader-menu[data-mode="2d"][data-scene=true] .sm-note--scene{display:block}.sm-name{display:flex;align-items:baseline;gap:8px}.sm-scene{align-self:center;font:400 8.5px/1 JetBrains Mono,ui-monospace,monospace;font-style:normal;letter-spacing:.08em;color:var(--vm-muted);border:1px solid var(--vm-line);border-radius:4px;padding:2px 4px 1px;display:none}.shader-menu[data-mode="2d"] .sm-scene{display:inline-block}.sm-foot{margin:4px;padding-top:6px;border-top:1px solid var(--vm-line);display:grid;gap:6px}.sm-foot__label{padding:4px 4px 0}.sm-modes{height:26px;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.sm-modes .seg-toggle__btn{flex:1;justify-content:center}.sm-modes .seg-toggle__btn:focus-visible{outline:none;box-shadow:inset 0 0 0 1.5px var(--vm-accent)}@media(max-width:720px),(pointer:coarse)and (max-height:520px){.sm-label,.sm-caret{display:none}.chrome-top .sm-menu{right:auto;left:50%;transform-origin:top center;translate:-50% 0}}@media(prefers-reduced-motion:reduce){.sm-nib,.sm-caret,.sm-item{transition:none}}.sm-tune{display:none;flex-wrap:wrap;align-items:center;gap:4px;margin:2px 4px 4px;padding-top:6px;border-top:1px solid var(--vm-line)}.shader-menu[data-tunable=true] .sm-tune{display:flex}.sm-tune__btn{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid var(--vm-line);border-radius:6px;background:transparent;color:var(--vm-text);font:inherit;font-size:11px;line-height:1.2;cursor:pointer;outline:none;transition:background-color .16s,border-color .16s}.sm-tune__btn:hover{background:var(--vm-hover)}.sm-tune__btn:focus-visible{box-shadow:inset 0 0 0 1.5px var(--vm-accent)}.sm-tune__open{flex:1 1 auto;justify-content:space-between}.sm-tune__open .sm-key{margin:0}.sm-tune__status{flex:1 0 100%;min-height:14px;margin:2px 2px 0;font-size:10.5px;color:var(--vm-muted)}@media(prefers-reduced-motion:reduce){.sm-tune__btn{transition:none}}.look-picker__shader{margin-top:10px;padding-top:9px;border-top:1px solid rgba(var(--ink),.12);display:grid;gap:6px;flex:none;position:relative;z-index:2}.look-picker__shader[hidden]{display:none}.look-picker .shader-menu{width:100%}.look-picker .sm-button{width:100%;height:30px;grid-template-columns:auto 1fr auto auto;justify-items:start;padding:0 8px;background:rgba(var(--ink),.06);backdrop-filter:none;-webkit-backdrop-filter:none}.look-picker .sm-button:hover,.look-picker .shader-menu.is-open .sm-button{background:rgba(var(--ink),.11)}.look-picker .sm-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:italic 400 12.5px/1 Playfair Display,Georgia,serif;letter-spacing:.01em}.look-picker .sm-caret{transform:rotate(90deg)}.look-picker .shader-menu.is-open .sm-caret{transform:rotate(-90deg)}.look-picker .sm-menu{top:auto;bottom:-11px;right:calc(100% + 22px);transform:translate(8px) scale(.97);transform-origin:bottom right;max-height:min(calc(100vh - 120px),640px)}.look-picker .shader-menu.is-open .sm-menu{transform:none}@media(max-width:720px),(pointer:coarse)and (max-height:520px){.look-picker__shader{margin-top:8px;padding-top:7px;grid-template-columns:auto 1fr;align-items:center;gap:10px}.look-picker .sm-label,.look-picker .sm-caret{display:block}.look-picker .sm-caret{transform:rotate(180deg)}.look-picker .shader-menu.is-open .sm-caret{transform:none}.look-picker .sm-menu{bottom:calc(100% + 10px);right:0;left:auto;width:min(92vw,300px);max-height:56vh;transform:translateY(8px) scale(.97);transform-origin:bottom center}}.look-picker:has(.shader-menu.is-open){z-index:23}.cam-zoom{display:block;flex:none;height:14px;line-height:14px;width:30px;text-align:center;font-size:8.5px;letter-spacing:.04em;font-variant-numeric:tabular-nums;color:rgba(var(--ink),.72);-webkit-user-select:none;user-select:none}.cam-tip{position:fixed;left:0;top:0;z-index:23;max-width:260px;padding:5px 9px;border-radius:var(--twlt-radius);border:1px solid rgba(var(--ink),.14);background:rgba(var(--paper),.94);color:var(--twlt-text);font-family:JetBrains Mono,monospace;font-weight:300;font-size:10px;letter-spacing:.02em;line-height:1.35;box-shadow:0 6px 18px #00000038;pointer-events:none;opacity:0;translate:-4px -50%;transition:opacity .16s ease,translate .16s ease}.cam-tip.on{opacity:1;translate:0 -50%}html.is-booting .cam-tip{display:none}#canvas[data-hand=look]{cursor:grab}#canvas[data-hand=pan]{cursor:move}#canvas[data-hand=grabbing]{cursor:grabbing}#canvas[data-hand=director]{cursor:default}.view-markers{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9;pointer-events:none;overflow:hidden;contain:layout style;--poi-ink: 242, 234, 223;--poi-shade: 20, 18, 16}:root[data-mode=light] .view-markers{--poi-ink: 42, 36, 32;--poi-shade: 245, 242, 238}.view-markers.is-off,html.is-booting .view-markers,html[data-view="2d"] .view-markers{display:none}.poi{all:unset;position:absolute;left:0;top:0;width:0;height:0;pointer-events:none;will-change:transform,opacity}.poi.is-hidden{display:none}.poi-head{position:absolute;left:0;top:0;width:26px;height:26px;margin:-13px 0 0 -13px;display:grid;place-items:center;pointer-events:auto;cursor:pointer;scale:var(--poi-scale, 1);transition:scale .25s cubic-bezier(.34,1.56,.64,1)}.poi.is-hover .poi-head{scale:calc(var(--poi-scale, 1) * 1.18)}.poi-head i{display:block;width:11px;height:11px;box-sizing:border-box;border-radius:50%;border:1.5px solid rgb(var(--poi-ink));background:var(--poi-accent, var(--twlt-accent));box-shadow:0 0 0 1px rgba(var(--poi-shade),.55),0 1px 6px #00000059}.poi-stem{position:absolute;left:-.5px;top:5px;width:1px;height:var(--poi-stem, 18px);background:linear-gradient(rgba(var(--poi-ink),.85),rgba(var(--poi-ink),0));pointer-events:none}.poi-label{position:absolute;left:16px;top:0;translate:-4px -50%;display:flex;align-items:baseline;gap:8px;padding:5px 9px;white-space:nowrap;border-radius:var(--twlt-radius);border:1px solid rgba(var(--ink),.14);background:rgba(var(--paper),.94);color:var(--twlt-text);font-family:JetBrains Mono,monospace;font-weight:300;font-size:10px;letter-spacing:.04em;box-shadow:0 6px 18px #00000040;opacity:0;pointer-events:none;transition:opacity .18s ease,translate .18s ease}.poi-label b{font-family:Playfair Display,Georgia,serif;font-style:italic;font-weight:400;font-size:13px;letter-spacing:.01em}.poi-label span{color:rgba(var(--ink),.72)}.poi-label kbd{font:inherit;font-size:9px;padding:1px 4px;border-radius:3px;border:1px solid rgba(var(--ink),.18);color:rgba(var(--ink),.72)}.poi.is-hover .poi-label{opacity:1;translate:0 -50%;pointer-events:auto}.view-markers[data-look=firewatch] .poi-head i{border:0;width:11px;height:11px;box-shadow:0 0 0 2px rgba(var(--poi-shade),.6)}.view-markers[data-look=sumi] .poi-head i{border:0;width:9px;height:9px;background:rgb(var(--poi-ink));border-radius:46% 54% 50% 50%/55% 45%;box-shadow:0 0 0 3px rgba(var(--poi-ink),.14)}.view-markers[data-look=sumi] .poi-stem{width:1.5px;left:-.75px}.view-markers[data-look=benday] .poi-head i{width:12px;height:12px;border:1.5px solid rgb(var(--poi-ink));background:radial-gradient(circle,var(--poi-accent) 1.4px,transparent 1.6px) 0 0 / 3.5px 3.5px,rgb(var(--poi-shade))}.view-markers[data-look=fieldguide] .poi-head i{border-radius:1px;rotate:45deg;width:9px;height:9px}.view-markers[data-look=topo] .poi-head i{width:0;height:0;border-radius:0;background:none;box-shadow:none;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:10px solid var(--poi-accent);filter:drop-shadow(0 0 1px rgb(var(--poi-shade))) drop-shadow(0 1px 3px rgba(0,0,0,.35))}.view-markers[data-look=pyrograph] .poi-head i{background:transparent;border:2px solid var(--poi-accent);box-shadow:0 0 0 1px rgba(var(--poi-shade),.6),0 0 8px var(--poi-accent)}.view-markers[data-look=naturalist] .poi-head i{width:12px;height:12px;background:radial-gradient(circle,var(--poi-accent) 2.4px,transparent 2.8px),rgba(var(--poi-shade),.35)}.key-sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:24px;background:rgba(var(--paper),.38);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility 0s linear .22s}.key-sheet.is-open{opacity:1;visibility:visible;transition:opacity .22s ease}.ks-card{width:min(720px,100%);max-height:calc(100vh - 48px);overflow-y:auto;box-sizing:border-box;padding:20px 24px 22px;border-radius:calc(var(--twlt-radius) + 6px);border:1px solid rgba(var(--ink),.14);background:rgb(var(--paper));color:var(--twlt-text);font-family:JetBrains Mono,monospace;font-weight:300;font-size:11px;box-shadow:0 24px 60px #00000059;translate:0 8px;transition:translate .3s cubic-bezier(.16,1,.3,1);outline:none}.key-sheet.is-open .ks-card{translate:0 0}.ks-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.ks-head h2{margin:0;font-family:Playfair Display,Georgia,serif;font-style:italic;font-weight:400;font-size:22px;color:var(--twlt-accent)}.ks-close{all:unset;display:grid;place-items:center;width:28px;height:28px;border-radius:var(--twlt-radius);cursor:pointer;color:rgba(var(--ink),.75)}.ks-close:hover{background:rgba(var(--ink),.08);color:var(--twlt-text)}.ks-close:focus-visible{outline:1px solid var(--twlt-accent)}.ks-groups{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px}.ks-groups h3{margin:0 0 8px;font-size:9.5px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:rgba(var(--ink),.72)}.ks-groups dl{margin:0;display:grid;gap:5px}.ks-row{display:grid;grid-template-columns:112px 1fr;align-items:baseline;gap:10px}.ks-row dt{display:flex;flex-wrap:wrap;align-items:center;gap:3px}.ks-row dd{margin:0;color:rgba(var(--ink),.86);line-height:1.4}.ks-row kbd{font:inherit;font-size:10px;min-width:12px;text-align:center;padding:1px 5px;border-radius:4px;border:1px solid rgba(var(--ink),.22);border-bottom-width:2px;color:var(--twlt-text)}.ks-to{color:rgba(var(--ink),.62);padding:0 1px}@media(max-width:720px){.camera-rail{-webkit-mask-image:linear-gradient(#000 calc(100% - 22px),transparent);mask-image:linear-gradient(#000 calc(100% - 22px),transparent)}.ks-groups{grid-template-columns:1fr}.ks-card{padding:16px 18px}}@media(prefers-reduced-motion:reduce){.cam-tip,.poi-head,.poi-label,.key-sheet,.ks-card{transition:none}}#canvas[data-hand=save]{cursor:crosshair}.save-reticle{position:fixed;left:0;top:0;z-index:9;width:0;height:0;pointer-events:none;opacity:0;transition:opacity .16s ease;will-change:transform}.save-reticle.on{opacity:1}html.is-booting .save-reticle,html[data-view="2d"] .save-reticle{display:none}.save-reticle__ring{position:absolute;left:-14px;top:-14px;width:28px;height:28px;box-sizing:border-box;border-radius:50%;border:1.5px solid var(--twlt-accent);box-shadow:0 0 0 1px rgba(var(--paper),.7),inset 0 0 0 1px rgba(var(--paper),.5);transition:scale .18s ease,border-color .18s ease}.save-reticle__ring:before,.save-reticle__ring:after{content:"";position:absolute;left:50%;top:50%;background:var(--twlt-accent)}.save-reticle__ring:before{width:3px;height:3px;margin:-1.5px 0 0 -1.5px;border-radius:50%}.save-reticle__ring:after{width:1px;height:8px;margin:-26px 0 0 -.5px;opacity:.8}.save-reticle__label{position:absolute;left:20px;top:0;translate:0 -50%;padding:3px 7px;white-space:nowrap;border-radius:var(--twlt-radius);border:1px solid rgba(var(--ink),.14);background:rgba(var(--paper),.94);color:var(--twlt-text);font-family:JetBrains Mono,monospace;font-weight:300;font-size:10px;letter-spacing:.06em}.save-reticle__label:empty{display:none}.save-reticle.is-sky .save-reticle__ring{border-color:rgba(var(--ink),.45);scale:.78}.save-reticle.is-sky .save-reticle__ring:before,.save-reticle.is-sky .save-reticle__ring:after{background:rgba(var(--ink),.45)}.save-reticle.is-sky .save-reticle__label{display:none}.save-reticle.is-shake .save-reticle__ring,.cam-save.is-shake{animation:save-shake .38s cubic-bezier(.36,.07,.19,.97)}.save-reticle.is-blink .save-reticle__ring,.cam-save.is-blink{animation:save-blink .4s steps(2,jump-none)}@keyframes save-shake{20%{translate:-4px 0}40%{translate:4px 0}60%{translate:-3px 0}80%{translate:2px 0}}@keyframes save-blink{50%{opacity:.25}}.save-press{position:fixed;left:-24px;top:-24px;z-index:9;width:48px;height:48px;pointer-events:none;opacity:0}.save-press svg{width:100%;height:100%;rotate:-90deg;overflow:visible}.save-press circle{fill:none;stroke:var(--twlt-accent);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:126;stroke-dashoffset:126;filter:drop-shadow(0 0 1px rgba(var(--paper),.9))}.save-press.on{opacity:1}.save-press.on circle{animation:save-fill .52s linear forwards}@keyframes save-fill{to{stroke-dashoffset:0}}.cam-yours{position:relative}.cam-count{position:absolute;left:17px;top:2px;min-width:12px;height:12px;padding:0 2px;box-sizing:border-box;border-radius:6px;background:var(--twlt-accent);color:rgb(var(--paper));font-size:8px;line-height:12px;text-align:center;font-variant-numeric:tabular-nums;scale:0;transition:scale .25s cubic-bezier(.34,1.56,.64,1)}.cam-count.on{scale:1}.cam-yours.is-here{color:var(--twlt-accent)}.cam-yours-card{position:fixed;z-index:24;width:248px;max-height:min(420px,calc(100vh - 24px));display:flex;flex-direction:column;box-sizing:border-box;border-radius:calc(var(--twlt-radius) + 4px);border:1px solid rgba(var(--ink),.16);background:rgba(var(--paper),.97);color:var(--twlt-text);font-family:JetBrains Mono,monospace;font-weight:300;font-size:11px;box-shadow:0 14px 38px #0000004d,0 2px 6px #00000024;animation:yours-in .2s cubic-bezier(.22,.8,.2,1)}.cam-yours-card[hidden]{display:none}@keyframes yours-in{0%{opacity:0;translate:-6px 0}}.cam-yours-head{display:flex;justify-content:space-between;align-items:baseline;padding:10px 12px 6px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.cam-yours-n{color:rgba(var(--ink),.72);letter-spacing:.04em;text-transform:none;font-variant-numeric:tabular-nums}.cam-yours-list{list-style:none;margin:0;padding:0 5px;overflow-y:auto;scrollbar-width:thin}.cam-yours-row{display:flex;align-items:center;gap:2px;border-radius:var(--twlt-radius)}.cam-yours-row:hover,.cam-yours-row:focus-within{background:rgba(var(--ink),.07)}.cam-yours-row.is-here{background:rgba(var(--ink),.11)}.cam-yours-go,.cam-yours-icon,.cam-yours-act{all:unset;box-sizing:border-box;cursor:pointer;border-radius:var(--twlt-radius)}.cam-yours-go:focus-visible,.cam-yours-icon:focus-visible,.cam-yours-act:focus-visible{outline:1px solid var(--twlt-accent);outline-offset:-1px}.cam-yours-go{flex:1;min-width:0;display:flex;align-items:center;gap:9px;padding:6px 7px}.cam-yours-dot{flex:none;width:9px;height:9px;box-sizing:border-box;border-radius:50%;border:1.5px solid var(--twlt-accent);background:radial-gradient(circle,var(--twlt-accent) 0 1.6px,transparent 2px)}.cam-yours-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:13px;font-weight:400}.cam-yours-row.is-here .cam-yours-name{color:var(--twlt-accent)}.cam-yours-icon{flex:none;display:grid;place-items:center;width:24px;height:24px;color:rgba(var(--ink),.72);opacity:0;transition:opacity .15s ease}.cam-yours-row:hover .cam-yours-icon,.cam-yours-row:focus-within .cam-yours-icon,.cam-yours-icon:focus-visible{opacity:1}.cam-yours-icon:hover{color:var(--twlt-text);background:rgba(var(--ink),.1)}.cam-yours-icon[data-del]:hover{color:var(--cos-danger, #c0392b)}@media(hover:none){.cam-yours-icon{opacity:1}}.cam-yours-input{all:unset;flex:1;min-width:0;margin:2px 4px;padding:4px 6px;border-radius:var(--twlt-radius);border:1px solid var(--twlt-accent);background:rgb(var(--paper));color:var(--twlt-text);font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:13px}.cam-yours-empty{margin:0;padding:4px 12px 10px;line-height:1.55;color:rgba(var(--ink),.78)}.cam-yours-card kbd{font:inherit;font-size:9.5px;padding:0 4px;border-radius:3px;border:1px solid rgba(var(--ink),.22);color:var(--twlt-text)}.cam-yours-foot{display:flex;gap:4px;padding:6px 5px;margin-top:4px;border-top:1px solid rgba(var(--ink),.1)}.cam-yours-act{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 4px;color:rgba(var(--ink),.8);font-size:10px;letter-spacing:.04em}.cam-yours-act:hover{background:rgba(var(--ink),.08);color:var(--twlt-text)}.cam-yours-act svg{width:14px;height:14px}html.is-booting .cam-yours-card{display:none}.poi--mine .poi-head i{width:13px;height:13px;border:2px solid var(--twlt-accent);background:radial-gradient(circle,var(--twlt-accent) 0 2px,rgba(var(--poi-shade),.55) 2.5px);box-shadow:0 0 0 1px rgba(var(--poi-ink),.8),0 1px 6px #00000059}.poi--mine .poi-stem{background:linear-gradient(var(--twlt-accent),transparent);opacity:.85}.view-markers[data-look] .poi--mine .poi-head i{width:13px;height:13px;border:2px solid var(--twlt-accent);border-radius:50%;background:radial-gradient(circle,var(--twlt-accent) 0 2px,rgba(var(--poi-shade),.55) 2.5px)}.cam-avoid[data-avoid=strict] .cam-ico{color:var(--twlt-accent)}.cam-avoid[data-avoid=off] .cam-ico{opacity:.5}@media(min-height:861px)and (max-height:1000px){.camera-rail{--cam-row: 24px}}@media(prefers-reduced-motion:reduce){.save-reticle,.save-reticle__ring,.cam-count,.cam-yours-icon{transition:none}.cam-yours-card{animation:none}.save-press.on circle{animation-duration:.52s}}.cam-avoid .cam-label{display:flex;flex-direction:column;line-height:1.15}.cam-avoid .cam-label b{font-size:8.5px;letter-spacing:.06em}.camera-rail:not(.is-nav) .cam-trail{display:none}.camera-rail.is-nav [data-tool=pan],.camera-rail.is-nav [data-tool=save]{display:none}.cam-trail .cam-label{display:flex;flex-direction:column;line-height:1.15;overflow:hidden}.cam-trail .cam-label b{font-size:8.5px;letter-spacing:.06em;overflow:hidden;text-overflow:ellipsis}.nav-pad{position:fixed;right:14px;bottom:calc(232px + env(safe-area-inset-bottom,0px));z-index:21;display:grid;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(3,44px);gap:4px;grid-template-areas:". f u" "l . r" ". b d";touch-action:none;user-select:none;-webkit-user-select:none}.nav-pad[hidden]{display:none}.nav-pad__btn{all:unset;box-sizing:border-box;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(var(--ink),.16);background:rgba(var(--paper),.84);color:var(--twlt-text);transition:background var(--twlt-speed) ease}.nav-pad__btn.is-down{background:rgba(var(--ink),.16);color:var(--twlt-accent)}.nav-pad--f{grid-area:f}.nav-pad--b{grid-area:b}.nav-pad--l{grid-area:l}.nav-pad--r{grid-area:r}.nav-pad--u{grid-area:u}.nav-pad--d{grid-area:d}.nav-pad:not(.is-fly) .is-fly{display:none}@media(min-width:721px){.nav-pad{bottom:28px}}.nav-pad.is-fly .is-walk{display:none}.nav-pad__btn.is-walk{position:relative}.nav-pad__ring{position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;width:calc(100% + 2px);height:calc(100% + 2px);rotate:-90deg;pointer-events:none}.nav-pad__ring circle{fill:none;stroke:var(--twlt-accent);stroke-width:2.5;stroke-linecap:round}.nav-hints{position:fixed;left:50%;bottom:84px;translate:-50% 0;z-index:21;display:grid;justify-items:center;pointer-events:none}.nav-hint{all:unset;box-sizing:border-box;grid-area:1 / 1;display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px 0 6px;border-radius:999px;border:1px solid rgba(var(--ink),.16);background:rgba(var(--paper),.9);box-shadow:0 6px 22px #0000002e;color:var(--twlt-text);font-family:JetBrains Mono,monospace;font-weight:400;font-size:11px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;opacity:0;user-select:none;-webkit-user-select:none}.nav-hint--launch{padding-left:14px}.nav-hint--land.is-on{pointer-events:auto;cursor:pointer}.nav-hint--land:focus-visible{outline:2px solid var(--twlt-accent);outline-offset:2px}.nav-hint__word--quiet{color:rgba(var(--ink),.78)}.nav-hint__keys{display:inline-flex}.nav-hint__key{display:block;overflow:visible}.nav-hint__cap{fill:rgba(var(--ink),.06);stroke:rgba(var(--ink),.42);stroke-width:1.5}.nav-hint__glyph{fill:none;stroke:var(--twlt-text);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.nav-hint__fill{fill:var(--twlt-accent);opacity:.38}.nav-hint.is-holding .nav-hint__cap{stroke:var(--twlt-accent)}.nav-hint__keys--touch,.nav-hints.is-touch .nav-hint__keys--key{display:none}.nav-hints.is-touch .nav-hint__keys--touch{display:inline-flex}.nav-hints__live{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:720px),(pointer:coarse)and (max-height:520px){.nav-hints{left:60px;translate:none;justify-items:start;bottom:calc(220px + env(safe-area-inset-bottom,0px))}}.camera-panel{position:fixed;top:76px;right:16px;bottom:16px;width:304px;z-index:31;display:flex;flex-direction:column;box-sizing:border-box;border-radius:calc(var(--twlt-radius) + 6px);border:1px solid rgba(var(--ink),.12);background:rgba(var(--paper),.95);box-shadow:0 18px 48px #00000047,0 2px 6px #0000001f;color:var(--twlt-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:12px;overflow:hidden;transform:translate(calc(100% + 24px));opacity:0;visibility:hidden;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .3s ease,visibility 0s linear .42s}.camera-panel.is-open{transform:none;opacity:1;visibility:visible;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .2s ease,visibility 0s}html.is-booting .camera-panel,html[data-view="2d"] .camera-panel{display:none}html .look-picker{transition:opacity var(--twlt-speed) ease,transform .42s cubic-bezier(.22,1,.36,1)}@media(min-width:721px){html.camera-docked .look-picker{transform:translate(calc(var(--twlt-edge) - 332px))}}@media(min-width:721px)and (pointer:coarse)and (max-height:520px){html.camera-docked .look-picker{transform:translate(50%);opacity:0!important;pointer-events:none}}html .controls-toggle{transition:all .3s ease,right .42s cubic-bezier(.22,1,.36,1)}@media(min-width:721px){html.camera-docked .controls-toggle{right:calc(32px + 332px - var(--twlt-edge))}html.camera-docked .cam-cta{right:calc(32px + 40px + 10px + 332px - var(--twlt-edge))}}@media(max-width:720px),(pointer:coarse)and (max-height:520px){html.camera-docked .controls-toggle,html.camera-docked .cam-cta{opacity:0!important;pointer-events:none;transition:opacity .25s ease}}.cam-cta{position:fixed;bottom:32px;right:82px;z-index:20;height:40px;display:flex;align-items:center;gap:9px;padding:0 14px 0 11px;border:1px solid rgba(var(--ink),.14);border-radius:10px;background:rgba(var(--paper),.62);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:rgba(var(--ink),.86);cursor:pointer;font:inherit;opacity:0;animation:fadeIn 2s ease 1.5s both;transition:background .25s ease,border-color .25s ease,transform .35s cubic-bezier(.22,1,.36,1),opacity .25s ease,right .42s cubic-bezier(.22,1,.36,1)}.cam-cta:hover{background:rgba(var(--paper),.82);border-color:rgba(var(--ink),.24);transform:translateY(-1px)}.cam-cta:active{transform:translateY(0) scale(.98)}.cam-cta:focus-visible{outline:2px solid var(--twlt-accent);outline-offset:3px}.cam-cta__glyph{flex:none}.cam-cta__iris{transform-box:fill-box;transform-origin:center;transition:transform .6s cubic-bezier(.22,1,.36,1)}.cam-cta:hover .cam-cta__iris,.cam-cta[aria-expanded=true] .cam-cta__iris{transform:rotate(60deg)}.cam-cta__text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.05}.cam-cta__label{font-family:JetBrains Mono,monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase}.cam-cta__lens{margin-top:2px;font-family:JetBrains Mono,monospace;font-size:10px;color:rgba(var(--ink),.74);font-variant-numeric:tabular-nums}.cam-cta__dof{width:6px;height:6px;margin-left:1px;border-radius:50%;border:1px solid rgba(var(--ink),.4);transition:background .3s ease,border-color .3s ease,box-shadow .3s ease}.cam-cta.has-dof .cam-cta__dof{background:var(--twlt-accent);border-color:var(--twlt-accent);box-shadow:0 0 6px var(--twlt-accent)}:root[data-mode=light] .cam-cta{color:#2a2420}:root[data-mode=light] .cam-cta__lens{color:#4a4a4a}html.is-booting .cam-cta,html[data-view="2d"] .cam-cta{display:none}.cmp-head{display:flex;align-items:flex-start;justify-content:space-between;padding:14px 14px 10px 16px;border-bottom:1px solid rgba(var(--ink),.08)}.cmp-title{margin:0;font-family:JetBrains Mono,monospace;font-weight:400;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--twlt-text)}.cmp-sub{margin:3px 0 0;font-size:11px;color:rgba(var(--ink),.74)}.cmp-close{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:var(--twlt-radius);background:transparent;color:rgba(var(--ink),.8);cursor:pointer}.cmp-close:hover{background:rgba(var(--ink),.08);color:var(--twlt-text)}.cmp-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px 16px 16px;scrollbar-width:thin;scrollbar-color:rgba(var(--ink),.25) transparent}.cmp-plan{position:relative;width:100%;aspect-ratio:1;border-radius:var(--twlt-radius);overflow:hidden;border:1px solid rgba(var(--ink),.12);background:rgba(var(--ink),.06)}.cmp-plan canvas,.cmp-plan svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.pl-trail{fill:none;stroke:rgba(var(--ink),.62);stroke-width:1.1;stroke-dasharray:3 2;stroke-linecap:round;stroke-linejoin:round}.pl-canoe{stroke:#b4532a;stroke-width:3;stroke-linecap:round}.pl-fire{fill:#f08a3c;stroke:rgba(var(--paper),.9);stroke-width:1}.pl-fire-glow{fill:#f08a3c47}.pl-north{font:600 9px JetBrains Mono,monospace;fill:var(--twlt-text);paint-order:stroke;stroke:rgba(var(--paper),.85);stroke-width:3px}.pl-north-arrow{fill:var(--twlt-text)}.pl-wedge{fill:color-mix(in srgb,var(--twlt-accent) 26%,transparent);stroke:var(--twlt-accent);stroke-width:1.2;stroke-linejoin:round}.pl-eye{fill:var(--twlt-accent);stroke:rgba(var(--paper),.95);stroke-width:1.5}.pl-sun-disc{fill:#f2c14e;stroke:rgba(var(--paper),.9);stroke-width:1.2}.pl-sun-rays{stroke:#f2c14e;stroke-width:1.4;stroke-linecap:round}.pl-sun.is-down .pl-sun-disc{fill:rgba(var(--paper),.9);stroke:rgba(var(--ink),.6);stroke-dasharray:2 1.5}.pl-sun-label{font:400 8.5px JetBrains Mono,monospace;fill:var(--twlt-text);paint-order:stroke;stroke:rgba(var(--paper),.9);stroke-width:3px}.pl-pin{cursor:pointer;outline:none}.pl-hit{fill:transparent}.pl-pin-head{fill:rgba(var(--paper),.94);stroke:rgba(var(--ink),.7);stroke-width:1.1;transition:fill .2s ease,stroke .2s ease}.pl-pin-wedge{fill:rgba(var(--ink),.34)}.pl-pin-num{font:500 8.5px JetBrains Mono,monospace;fill:var(--twlt-text);pointer-events:none}.pl-pin:hover .pl-pin-head,.pl-pin:focus-visible .pl-pin-head{stroke:var(--twlt-accent);stroke-width:1.6}.pl-pin.is-on .pl-pin-head{fill:var(--twlt-accent);stroke:rgba(var(--paper),.95)}.pl-pin.is-on .pl-pin-num{fill:rgb(var(--paper))}.pl-pin.is-on .pl-pin-wedge{fill:color-mix(in srgb,var(--twlt-accent) 60%,transparent)}.cmp-status{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:26px;margin:8px 0 2px;font-family:JetBrains Mono,monospace;font-size:10.5px;color:rgba(var(--ink),.82)}.cmp-shot{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmp-back{flex:none;display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border:1px solid color-mix(in srgb,var(--twlt-accent) 45%,transparent);border-radius:var(--twlt-radius);background:transparent;color:var(--twlt-accent);font:inherit;cursor:pointer}.cmp-back[hidden]{display:none}.cmp-back:hover svg{transform:rotate(-60deg)}.cmp-back svg{transition:transform .35s cubic-bezier(.22,1,.36,1)}.cmp-sec{padding:12px 0;border-top:1px solid rgba(var(--ink),.08)}.cmp-sec:first-of-type{margin-top:8px}.cmp-label{margin:0 0 8px;font-family:JetBrains Mono,monospace;font-weight:400;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(var(--ink),.78)}.cmp-label span{margin-left:6px;letter-spacing:.04em;text-transform:none;color:rgba(var(--ink),.72)}.cmp-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:30px}.cmp-row+.cmp-row{margin-top:4px}.cmp-key{margin:0;font-size:12px;font-weight:400;color:rgba(var(--ink),.82);white-space:nowrap}.cmp-key--head{font-weight:500;color:var(--twlt-text)}.cmp-val{flex:none;min-width:42px;text-align:right;font:10.5px JetBrains Mono,monospace;font-variant-numeric:tabular-nums;color:rgba(var(--ink),.8)}.cmp-note{margin:6px 0 0;font:10.5px/1.45 JetBrains Mono,monospace;color:rgba(var(--ink),.76)}.cmp-note:empty{display:none}.camera-panel kbd{font:400 9px JetBrains Mono,monospace;margin-left:6px;padding:1px 4px;border-radius:4px;border:1px solid rgba(var(--ink),.2);color:rgba(var(--ink),.76);letter-spacing:0}.cmp-seg{display:flex;gap:2px;padding:3px;border-radius:calc(var(--twlt-radius) + 2px);border:1px solid rgba(var(--ink),.12);background:rgba(var(--ink),.04)}.cmp-seg button{flex:1 1 auto;min-width:0;padding:5px 7px;border:0;border-radius:calc(var(--twlt-radius) - 1px);background:transparent;color:rgba(var(--ink),.8);font:400 10.5px JetBrains Mono,monospace;font-variant-numeric:tabular-nums;white-space:nowrap;cursor:pointer;transition:background-color .2s ease,color .2s ease}.cmp-seg button:hover{background:rgba(var(--ink),.08);color:var(--twlt-text)}.cmp-seg button[aria-pressed=true]{background:rgba(var(--ink),.14);color:var(--twlt-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--twlt-accent) 45%,transparent)}.cmp-seg button:focus-visible,.cmp-switch:focus-visible,.cmp-wide:focus-visible,.cmp-text:focus-visible,.cmp-back:focus-visible,.cmp-close:focus-visible{outline:1.5px solid var(--twlt-accent);outline-offset:1px}.cmp-lens button{padding:6px 4px}.cmp-mini{flex:none}.cmp-stops{flex:1;margin-left:4px}.cmp-stops button{padding:5px 2px;font-size:10px}.cmp-range{flex:1;min-width:0;height:18px;margin:0;background:transparent;accent-color:var(--twlt-accent);cursor:pointer}.cmp-switch{flex:none;position:relative;width:32px;height:18px;padding:0;border:1px solid rgba(var(--ink),.3);border-radius:999px;background:rgba(var(--ink),.1);cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.cmp-switch i{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:rgba(var(--ink),.75);transition:transform .24s cubic-bezier(.22,1,.36,1),background-color .2s ease}.cmp-switch[aria-checked=true]{background:var(--twlt-accent);border-color:var(--twlt-accent)}.cmp-switch[aria-checked=true] i{transform:translate(14px);background:rgb(var(--paper))}.cmp-dof-body{opacity:0;display:block;max-height:0;overflow:hidden;transition:max-height .32s cubic-bezier(.22,1,.36,1),opacity .2s ease}.cmp-dof-body.is-on{max-height:320px;opacity:1}.cmp-dist-row{display:none}.camera-panel.dof-manual .cmp-dist-row{display:flex}.cmp-wide{display:flex;align-items:center;gap:8px;width:100%;margin:6px 0 2px;padding:7px 10px;border:1px solid rgba(var(--ink),.16);border-radius:var(--twlt-radius);background:transparent;color:rgba(var(--ink),.84);font:400 11.5px -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;text-align:left;cursor:pointer}.cmp-wide span{flex:1}.cmp-wide:hover{background:rgba(var(--ink),.06);color:var(--twlt-text)}.cmp-wide[aria-pressed=true]{border-color:var(--twlt-accent);color:var(--twlt-accent)}.cmp-foot{margin:12px 0 0;padding-top:12px;border-top:1px solid rgba(var(--ink),.08);font-size:11px;line-height:1.5;color:rgba(var(--ink),.76)}.cmp-actions{display:flex;justify-content:space-between;gap:8px;margin-top:10px}.cmp-text{display:inline-flex;align-items:center;padding:6px 8px;border:0;border-radius:var(--twlt-radius);background:transparent;color:rgba(var(--ink),.84);font:400 11.5px -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;cursor:pointer}.cmp-text:hover{background:rgba(var(--ink),.07);color:var(--twlt-text)}@media(max-width:720px){.cam-cta{width:40px;padding:0;justify-content:center}.cam-cta__text{display:none}.cam-cta__dof{position:absolute;top:6px;right:6px;width:5px;height:5px;margin:0;border-color:transparent}.camera-panel{top:auto;left:8px;right:8px;bottom:8px;width:auto;max-height:min(62vh,560px);transform:translateY(calc(100% + 24px))}.cmp-plan{width:min(100%,240px);margin:0 auto}html .look-picker{transition:opacity var(--twlt-speed) ease,bottom .42s cubic-bezier(.22,1,.36,1)}html.camera-docked .look-picker{bottom:calc(var(--cmp-sheet-h, 0px) + 16px)}html.camera-docked .camera-rail,html.camera-docked .site-footer,html.camera-docked .time-label{opacity:0!important;pointer-events:none;transition:opacity .25s ease}}@media(prefers-reduced-motion:reduce){.cam-cta,.cam-cta__iris{transition:none}.cam-cta:hover{transform:none}.camera-panel,.camera-panel.is-open,.cmp-dof-body,.cmp-switch,.cmp-switch i,.cmp-back svg,.cmp-seg button{transition:none}}.camera-panel .cmp-drift[hidden]{display:none}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--ink: 232, 220, 200;--paper: 20, 18, 16;--twlt-text: var(--twlt-chrome-text, #E8DCC8);--twlt-accent: var(--twlt-chrome-accent, #C8A064);--twlt-ui-size: 10px;--twlt-edge: 32px;--twlt-radius: 8px;--twlt-speed: .25s;--look-accent: #C8A064}:root[data-mode=light]{--ink: 42, 36, 32;--paper: 245, 242, 238;--twlt-text: #2A2420;--twlt-accent: #8A6820}html,body{width:100%;height:100%;overflow:hidden;background:var(--twlt-first, #000);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}#canvas,#canvas2d{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;transition:opacity .3s ease}#canvas2d{opacity:0;pointer-events:none}html.is-first-paint #canvas{opacity:0}@media(prefers-reduced-motion:reduce){#canvas{transition:none}}#overlay{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10}.brand-title{position:absolute;top:40px;left:44px;font-family:Playfair Display,Georgia,serif;font-style:italic;font-weight:500;font-size:28px;letter-spacing:.02em;color:#c8a064;text-shadow:0 2px 20px rgba(0,0,0,.6);transition:color 1.5s ease;-webkit-user-select:none;user-select:none}.brand-subtitle{position:absolute;top:78px;left:46px;font-family:JetBrains Mono,monospace;font-weight:300;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#e8dcc866;text-shadow:0 1px 10px rgba(0,0,0,.5);-webkit-user-select:none;user-select:none}.site-footer{position:absolute;bottom:32px;left:44px;-webkit-user-select:none;user-select:none}.site-footer__title{font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:13px;color:#e8dcc859;margin-bottom:4px}.site-footer__credit{font-family:JetBrains Mono,monospace;font-weight:300;font-size:10px;line-height:1.6;letter-spacing:.06em;color:#e8dcc840}.time-scrubber{position:absolute;bottom:20px;left:50%;transform:translate(-50%);width:200px;height:20px;display:flex;align-items:center;pointer-events:all;cursor:pointer;opacity:0;transition:opacity .4s ease}.time-scrubber:hover{opacity:1}.time-scrubber__track{width:100%;height:1px;background:#e8dcc833;border-radius:1px;position:relative}.time-scrubber__fill{position:absolute;top:0;left:0;height:100%;background:#e8dcc880;border-radius:1px;transition:width .1s linear}.time-scrubber__thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:8px;height:8px;border-radius:50%;background:#e8dcc8b3;box-shadow:0 0 6px #e8dcc84d}.time-label{position:absolute;bottom:44px;left:50%;transform:translate(-50%);font-family:JetBrains Mono,monospace;font-weight:300;font-size:10px;letter-spacing:.1em;color:#e8dcc873;text-transform:uppercase;opacity:1;transition:color .4s ease;-webkit-user-select:none;user-select:none}.time-clock{opacity:.6;margin-left:.5em}.time-scrubber:hover~.time-label,.time-label.visible{color:#e8dcc8b3}@keyframes fadeIn{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}.brand-title,.site-footer{animation:fadeIn 2s ease .5s both}.controls-toggle{position:fixed;bottom:32px;right:32px;z-index:20;width:40px;height:40px;border:1px solid rgba(var(--ink),.12);border-radius:10px;background:rgba(var(--paper),.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:rgba(var(--ink),.5);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;opacity:0;animation:fadeIn 2s ease 1.5s both}.controls-toggle:hover{background:rgba(var(--paper),.8);color:rgba(var(--ink),.8);border-color:rgba(var(--ink),.2)}.controls-toggle--hidden{opacity:0!important;pointer-events:none}.controls-panel{position:fixed;top:0;right:0;bottom:0;width:280px;z-index:30;background:rgba(var(--paper),.85);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-left:1px solid rgba(var(--ink),.08);transform:translate(100%);transition:transform .35s cubic-bezier(.16,1,.3,1);overflow-y:auto;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:rgba(var(--ink),.7)}.controls-panel--open{transform:translate(0)}.controls-panel::-webkit-scrollbar{width:4px}.controls-panel::-webkit-scrollbar-track{background:transparent}.controls-panel::-webkit-scrollbar-thumb{background:#3d363066;border-radius:2px}.controls-panel::-webkit-scrollbar-thumb:hover{background:#a699854d}.cp-header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 12px;border-bottom:1px solid rgba(var(--ink),.06)}.cp-title{font-family:JetBrains Mono,monospace;font-weight:300;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(var(--ink),.4)}.cp-close{background:none;border:none;color:rgba(var(--ink),.4);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;transition:all .2s}.cp-close:hover{color:rgba(var(--ink),.8);background:rgba(var(--ink),.06)}.cp-section{padding:16px 20px;border-bottom:1px solid rgba(var(--ink),.04)}.cp-section-label{font-family:JetBrains Mono,monospace;font-weight:300;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:rgba(var(--ink),.3);margin-bottom:12px}.cp-row{margin-bottom:10px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.cp-row--inline{flex-wrap:nowrap;justify-content:space-between}.cp-label{font-size:11px;color:rgba(var(--ink),.55);flex-shrink:0;min-width:65px}.cp-value{font-family:JetBrains Mono,monospace;font-size:10px;color:rgba(var(--ink),.35);min-width:28px;text-align:right;flex-shrink:0}.cp-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;height:3px;background:rgba(var(--ink),.1);border-radius:2px;outline:none;cursor:pointer}.cp-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:rgba(var(--ink),.5);border:none;cursor:pointer;transition:background .2s}.cp-slider::-webkit-slider-thumb:hover{background:rgba(var(--ink),.75)}.cp-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:rgba(var(--ink),.5);border:none;cursor:pointer}.cp-pill{font-family:JetBrains Mono,monospace;font-weight:300;font-size:10px;padding:3px 8px;border-radius:4px;border:1px solid rgba(var(--ink),.1);background:transparent;color:rgba(var(--ink),.4);cursor:pointer;transition:all .2s;white-space:nowrap}.cp-pill:hover{border-color:rgba(var(--ink),.2);color:rgba(var(--ink),.65)}.cp-pill--active{background:rgba(var(--ink),.1);border-color:rgba(var(--ink),.2);color:rgba(var(--ink),.8)}.cp-pill--sm{font-size:9px;padding:2px 6px}.cp-speed-pills,.cp-clock-wrap{display:flex;justify-content:center;padding:4px 0 8px}.cp-clock{width:130px;height:130px;cursor:pointer}.cp-time-presets{display:flex;gap:4px;flex-wrap:wrap}.cp-toggle-pair{display:flex;gap:2px}.cp-btn--icon{width:28px;height:28px;border-radius:6px;border:1px solid rgba(var(--ink),.12);background:transparent;color:rgba(var(--ink),.5);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.cp-btn--icon:hover{background:rgba(var(--ink),.08);color:rgba(var(--ink),.8)}.cp-btn--wide{width:100%;height:32px;border-radius:6px;border:1px solid rgba(var(--ink),.12);background:transparent;color:rgba(var(--ink),.5);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;font-family:JetBrains Mono,monospace;font-weight:300;font-size:10px;letter-spacing:.05em;transition:all .2s}.cp-btn--wide:hover{background:rgba(var(--ink),.08);color:rgba(var(--ink),.8);border-color:rgba(var(--ink),.2)}.cp-btn--wide:active{background:rgba(var(--ink),.12)}.cp-switch{position:relative;width:34px;height:18px;cursor:pointer;flex-shrink:0}.cp-switch input{display:none}.cp-switch__track{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(var(--ink),.1);border-radius:9px;transition:background .25s}.cp-switch__track:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:rgba(var(--ink),.4);transition:all .25s cubic-bezier(.16,1,.3,1)}.cp-switch input:checked+.cp-switch__track{background:#c8a0644d}.cp-switch input:checked+.cp-switch__track:after{left:18px;background:#c8a064cc}.cp-footer{padding:12px 20px}.cp-hint{font-family:JetBrains Mono,monospace;font-size:9px;color:rgba(var(--ink),.2);letter-spacing:.05em}.chrome-top{--chrome-h: 28px;position:fixed;top:32px;right:32px;z-index:22;display:flex;align-items:center;gap:8px;pointer-events:none;animation:fadeIn 2s ease 1.5s both}.view-toggle,.seg-toggle{height:var(--chrome-h);display:flex;align-items:stretch;gap:0;border-radius:8px;border:1px solid rgba(var(--ink),.12);background:rgba(var(--paper),.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);overflow:hidden;pointer-events:all}.seg-toggle__glyph{display:grid;place-items:center;padding:0 2px 0 9px;color:var(--twlt-accent);cursor:pointer}.seg-toggle__btn,.view-toggle__btn{font-family:JetBrains Mono,monospace;font-weight:300;font-size:10px;letter-spacing:.08em;padding:0 12px;display:flex;align-items:center;border:none;background:transparent;color:rgba(var(--ink),.6);cursor:pointer;transition:all .25s ease;-webkit-user-select:none;user-select:none}.seg-toggle__btn:hover,.view-toggle__btn:hover{color:rgba(var(--ink),.85)}.seg-toggle__btn.is-active,.view-toggle__btn--active{background:rgba(var(--ink),.1);color:rgba(var(--ink),.85)}.sound-toggle .seg-toggle__glyph{padding:0 1px 0 9px}.sound-toggle .sb{transform-box:fill-box;transform-origin:center;transform:scaleY(var(--b1, .18));transition:transform .12s linear,opacity .4s ease}.sound-toggle .sb2{transform:scaleY(var(--b2, .18))}.sound-toggle .sb3{transform:scaleY(var(--b3, .18))}.sound-toggle[data-sound=off] .sb{opacity:.55;transition-duration:.6s}.sound-toggle[data-sound=pending] .sb{animation:sound-wait 2.4s ease-in-out infinite}.sound-toggle[data-sound=pending] .sb2{animation-delay:.3s}.sound-toggle[data-sound=pending] .sb3{animation-delay:.6s}.sound-toggle[data-sound=starting] .sb{animation:sound-wait .9s ease-in-out infinite}@keyframes sound-wait{0%,to{opacity:.45}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.sound-toggle .sb{transition:none;animation:none!important}}@media(max-width:720px){.sound-toggle__btn{font-size:0;padding:0 9px 0 4px}}:root[data-mode=light] .controls-panel{color:#2a2420}:root[data-mode=light] .cp-title,:root[data-mode=light] .cp-section-label,:root[data-mode=light] .cp-value{color:#6b6b6b}:root[data-mode=light] .cp-label,:root[data-mode=light] .cp-pill,:root[data-mode=light] .cp-btn--icon,:root[data-mode=light] .cp-btn--wide,:root[data-mode=light] .cp-hint,:root[data-mode=light] .controls-toggle,:root[data-mode=light] .view-toggle__btn,:root[data-mode=light] .seg-toggle__btn{color:#4a4a4a}:root[data-mode=light] .seg-toggle__glyph{color:#8a6820}:root[data-mode=light] .cp-pill--active,:root[data-mode=light] .view-toggle__btn--active,:root[data-mode=light] .seg-toggle__btn.is-active{color:#2a2420}:root[data-mode=light] .cp-clock text{fill:#4a4a4a}.look-picker{position:fixed;right:var(--twlt-edge);top:84px;bottom:88px;height:fit-content;max-height:calc(100vh - 172px);margin:auto 0;display:flex;flex-direction:column;z-index:20;width:132px;padding:10px;border-radius:calc(var(--twlt-radius) + 4px);border:1px solid rgba(var(--ink),.12);background:rgba(var(--paper),.62);backdrop-filter:blur(14px) saturate(1.1);-webkit-backdrop-filter:blur(14px) saturate(1.1);pointer-events:all;color:var(--twlt-text);font-family:JetBrains Mono,monospace;font-weight:300;font-size:var(--twlt-ui-size);animation:fadeIn 2s ease 1.2s both;transition:opacity var(--twlt-speed) ease}.look-picker__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.look-picker__label{letter-spacing:.14em;text-transform:uppercase;opacity:.75}.theme-toggle{display:flex;gap:2px}.theme-toggle button{width:20px;height:20px;padding:0;display:grid;place-items:center;border:none;border-radius:5px;background:transparent;cursor:pointer;color:rgba(var(--ink),.55);transition:color var(--twlt-speed) ease,background var(--twlt-speed) ease}.theme-toggle button:hover{color:rgba(var(--ink),.9)}.theme-toggle button.is-active{color:var(--twlt-text);background:rgba(var(--ink),.12)}.look-picker__tiles{display:flex;flex-direction:column;gap:6px;min-height:0;overflow-y:auto;scrollbar-width:none}.look-tile{position:relative;display:block;width:100%;height:44px;flex-shrink:0;padding:0;border:none;border-radius:var(--twlt-radius);overflow:hidden;cursor:pointer;background:var(--look-accent);outline:1px solid rgba(var(--ink),.1);outline-offset:-1px;transition:height var(--twlt-speed) cubic-bezier(.2,.8,.2,1),outline-color var(--twlt-speed) ease,transform var(--twlt-speed) cubic-bezier(.2,.8,.2,1)}.look-tile__poster{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center 58%;transform:scale(1.08);transition:transform 1.2s cubic-bezier(.2,.8,.2,1),filter var(--twlt-speed) ease;filter:saturate(.85) brightness(.88)}.look-tile:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#0a0908b8,#0a090826 70%)}.look-tile__num,.look-tile__name{position:absolute;z-index:1;bottom:6px;color:#f2eadf;text-shadow:0 1px 6px rgba(0,0,0,.6)}.look-tile__num{left:8px;opacity:.7;font-size:9px}.look-tile__name{left:22px;font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:13px;letter-spacing:.01em}.look-tile:hover .look-tile__poster{transform:scale(1.16);filter:saturate(1) brightness(1)}.look-tile:focus-visible{outline:2px solid var(--twlt-accent)}.look-tile--active{height:64px;outline:1.5px solid var(--look-accent)}.look-tile--active .look-tile__poster{filter:none;transform:scale(1)}.look-tile--active:before{content:"";position:absolute;z-index:1;right:8px;top:8px;width:6px;height:6px;border-radius:50%;background:var(--look-accent);box-shadow:0 0 0 2px #0a090880}.look-picker__caption{margin-top:8px;line-height:1.45;font-size:9.5px;letter-spacing:.02em;color:rgba(var(--ink),.82);display:grid}.look-picker__caption>span{grid-area:1 / 1;visibility:hidden;opacity:0;transition:opacity .18s ease}.look-picker__caption>span.is-shown{visibility:visible;opacity:1}@media(max-height:860px){.look-picker{padding:8px}.look-picker__head{margin-bottom:6px}.look-picker__tiles{gap:4px}.look-tile{height:30px;flex:0 0 auto}.look-tile--active{height:46px}.look-tile__num,.look-tile__name{bottom:5px}.look-tile__name{font-size:12px}.look-picker__caption{font-size:9px}}@media(max-height:640px){.look-picker__caption{display:none}}html.is-regenerating .look-picker{opacity:.4}html[data-view="2d"] .look-picker{opacity:0;pointer-events:none}.brand-title{transition:color 1.5s ease,transform 1.8s cubic-bezier(.22,.8,.2,1);transform-origin:50% 50%}html.is-booting .brand-title{transform:translate(var(--boot-dx, 0),var(--boot-dy, 0)) scale(var(--boot-s, 1));text-shadow:0 1px 2px rgba(0,0,0,.5),0 0 22px rgba(18,14,10,.55),0 0 60px rgba(18,14,10,.3)}.brand-title{transition:color 1.5s ease,transform 1.8s cubic-bezier(.22,.8,.2,1),text-shadow 1.8s ease}.brand-subtitle{transition:opacity .9s ease .9s}.brand-title.is-gliding{transition:color 1.5s ease,text-shadow 1.8s ease}.brand-title--mark.is-gliding .wm-svg{transition:color 1.5s ease,filter 1.8s ease}html.is-booting .brand-subtitle{opacity:0;transition:none}.boot-cue{position:absolute;left:50%;top:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:9px;pointer-events:none;-webkit-user-select:none;user-select:none;transition:opacity .8s ease}.boot-cue__line{position:relative;width:132px;height:1px;background:#e8dcc838;overflow:hidden}.boot-cue__fill{position:absolute;top:0;right:0;bottom:0;left:0;background:#c8a064;transform:scaleX(0);transform-origin:left center;transition:transform .3s linear}.boot-cue__label{font-family:JetBrains Mono,monospace;font-weight:400;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#f0e8dadb;text-shadow:0 1px 2px rgba(0,0,0,.55),0 0 14px rgba(0,0,0,.45)}html:not(.is-booting) .boot-cue{opacity:0}.boot-cue--done{opacity:0}.twlt-fallback{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;background:#0e0d0c var(--poster) center / cover no-repeat}.twlt-fallback:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0a090861}.twlt-fallback__inner{position:relative;text-align:center;-webkit-user-select:none;user-select:none;padding:0 24px}.twlt-fallback__title{font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:30px;color:#c8a064;text-shadow:0 2px 24px rgba(0,0,0,.6)}.twlt-fallback__status{margin-top:10px;font-family:JetBrains Mono,monospace;font-weight:300;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#e8dcc8d1}@media(max-width:720px),(pointer:coarse)and (max-height:520px){.look-picker{top:auto;bottom:84px;right:50%;transform:translate(50%);margin:0;max-height:none;animation:none;width:min(92vw,560px);padding:8px}.look-picker__tiles{flex-direction:row;overflow-x:auto;scrollbar-width:none}.look-tile{flex:0 0 72px;height:48px}.look-tile--active{height:48px}.look-tile__name{left:6px;bottom:4px;font-size:11px}.look-tile__num{display:none}.chrome-top{top:16px;right:16px}.chrome-top .vm-menu{right:auto;left:0;transform-origin:top left}.brand-title{top:62px;left:20px;font-size:26px}.brand-subtitle{top:98px;left:22px}.site-footer{left:20px;bottom:22px}.time-label{left:auto;right:132px;transform:none;bottom:34px}}@media(prefers-reduced-motion:reduce){.look-tile,.look-tile__poster,.brand-title,.brand-subtitle,.boot-cue,.boot-cue__fill{transition:none}}.camera-rail{position:fixed;left:20px;top:128px;bottom:112px;height:fit-content;max-height:calc(100vh - 240px);margin:auto 0;z-index:21;display:flex;flex-direction:column;gap:2px;padding:5px;width:40px;overflow:hidden;border-radius:calc(var(--twlt-radius) + 4px);border:1px solid rgba(var(--ink),.12);background:rgba(var(--paper),.84);color:var(--twlt-text);font-family:JetBrains Mono,monospace;font-weight:300;font-size:var(--twlt-ui-size);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;opacity:0;translate:-8px 0;transition:width .28s cubic-bezier(.22,.8,.2,1),opacity .6s ease,translate .6s cubic-bezier(.22,.8,.2,1);box-sizing:border-box}.camera-rail.is-in{opacity:1;translate:0 0}.camera-rail:hover,.camera-rail:focus-within{width:196px}.camera-rail.is-asleep{opacity:0;translate:-56px 0;pointer-events:none}html.is-booting .camera-rail{opacity:0;pointer-events:none}html[data-view="2d"] .camera-rail .cam-group:not(:last-child),html[data-view="2d"] .camera-rail .cam-sep{display:none}.cam-group{display:flex;flex-direction:column;gap:2px}.cam-sep{height:1px;margin:3px 4px;background:rgba(var(--ink),.12);flex:none}.cam-btn{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:10px;height:var(--cam-row, 26px);width:100%;padding:0 0 0 5px;border-radius:var(--twlt-radius);cursor:pointer;color:rgba(var(--ink),.78);white-space:nowrap;transition:background var(--twlt-speed) ease,color var(--twlt-speed) ease;flex:none}.cam-btn:hover{background:rgba(var(--ink),.08);color:var(--twlt-text)}.cam-btn:focus-visible{outline:1px solid var(--twlt-accent);outline-offset:-1px}.cam-btn[aria-checked=true],.cam-btn[aria-pressed=true]{background:rgba(var(--ink),.12);color:var(--twlt-accent)}.cam-btn:disabled{cursor:default;color:rgba(var(--ink),.38);background:none}.cam-ico{display:grid;place-items:center;width:18px;height:18px;flex:none}.cam-glyph{display:grid;place-items:center}.cam-label{flex:1;min-width:0;letter-spacing:.08em;text-transform:uppercase;opacity:0;transition:opacity .2s ease}.cam-label b{font-weight:400;color:var(--twlt-accent)}.cam-lod .cam-label{display:flex;flex-direction:column;line-height:1.15}.cam-lod .cam-label b{font-size:8.5px;letter-spacing:.06em;overflow:hidden;text-overflow:ellipsis}.cam-btn kbd{font:inherit;font-size:9px;margin-right:6px;padding:1px 4px;border-radius:3px;border:1px solid rgba(var(--ink),.18);color:rgba(var(--ink),.7);opacity:0;transition:opacity .2s ease}.camera-rail:hover .cam-label,.camera-rail:focus-within .cam-label,.camera-rail:hover kbd,.camera-rail:focus-within kbd{opacity:1}.cam-pips{display:grid;grid-template-columns:repeat(2,6px);gap:3px}.cam-pips i{width:6px;height:6px;border-radius:1.5px;background:rgba(var(--ink),.2);transition:background var(--twlt-speed) ease}.cam-pips i.on{background:var(--twlt-accent)}.camera-rail.is-generating .cam-regen .cam-ico{animation:cam-spin 1.4s linear infinite}@keyframes cam-spin{to{rotate:360deg}}.cam-handle{position:fixed;left:0;top:50%;width:3px;height:72px;margin-top:-36px;z-index:21;border-radius:0 3px 3px 0;background:rgba(var(--ink),.35);opacity:0;pointer-events:none;transition:opacity .4s ease}.cam-handle.on{opacity:1}.cam-status{position:fixed;top:36px;left:50%;translate:-50% -6px;z-index:22;margin:0;padding:5px 12px;border-radius:999px;border:1px solid rgba(var(--ink),.12);background:rgba(var(--paper),.62);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--twlt-text);font-family:JetBrains Mono,monospace;font-weight:300;font-size:var(--twlt-ui-size);letter-spacing:.12em;text-transform:uppercase;opacity:0;pointer-events:none;transition:opacity .4s ease,translate .4s ease}.cam-status.on{opacity:1;translate:-50% 0}html.is-booting .cam-status{opacity:0}@media(max-height:860px){.camera-rail{--cam-row: 24px}}@media(max-height:780px){.camera-rail{--cam-row: 22px;gap:1px;padding:4px}}@media(max-width:720px){.camera-rail{--cam-row: 24px;left:10px;top:116px;bottom:268px;max-height:calc(100vh - 384px)}.cam-status{top:56px}}@media(prefers-reduced-motion:reduce){.camera-rail,.cam-label,.cam-btn kbd,.cam-status{transition:none}.camera-rail.is-generating .cam-regen .cam-ico{animation:none}}.brand-title--mark{--wm-h: 62px;--wm-boot-s: 2.1;--wm-ink: #EDD3A0;--wm-halo: drop-shadow(0 0 1px rgba(16, 10, 6, .8)) drop-shadow(0 0 4px rgba(16, 10, 6, .5)) drop-shadow(0 2px 12px rgba(16, 10, 6, .35));--wm-halo-boot: drop-shadow(0 0 2px rgba(16, 10, 6, .6)) drop-shadow(0 2px 22px rgba(16, 10, 6, .55));--wm-accent: var(--look-accent, #C8A064);line-height:0;text-shadow:none;animation:none}.brand-title--mark[data-tone=dark]{--wm-ink: #231710;--wm-halo: drop-shadow(0 0 1.5px rgba(245, 238, 225, .7)) drop-shadow(0 1px 8px rgba(245, 238, 225, .5));--wm-halo-boot: drop-shadow(0 0 2px rgba(245, 238, 225, .75)) drop-shadow(0 2px 22px rgba(245, 238, 225, .55))}.brand-title--mark .wm-svg{filter:var(--wm-halo);transition:color 1.5s ease,filter 1.8s ease}html.is-booting .brand-title--mark{text-shadow:none;transition:none}html.is-booting .brand-title--mark .wm-svg{filter:var(--wm-halo-boot)}@media(max-width:720px),(pointer:coarse)and (max-height:520px){.brand-title--mark{--wm-h: 46px;--wm-boot-s: 1.6}}@media(prefers-reduced-motion:reduce){.brand-title--mark .wm-svg{transition:none}}
