@font-face{font-family:Inter;src:url(../fonts/inter.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(../fonts/jetbrains-mono.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden;background:#050510;color:#fff;font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer}a{color:#ffb84d;text-decoration:none}a:hover{text-decoration:underline}#app{position:fixed;inset:0;width:100vw;height:100vh;display:block}#vignette{position:fixed;inset:0;pointer-events:none;z-index:5;background:radial-gradient(ellipse 78% 78% at 50% 48%,transparent 52%,rgba(0,0,0,.42) 100%)}.hidden{display:none!important}#splash{--paper: #efe9dd;--ink: #24201b;--ink-2: #4a443b;--dim: #82796c;--rule: rgba(36, 32, 27, .2);--grid: rgba(36, 32, 27, .05);--amber: #f0a33a;--amber-ink: #9a5508;--door-x: 41.7%;--door-y: 79.3%;position:fixed;inset:0;z-index:1000;overflow:hidden;background-color:var(--paper);color:var(--ink);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:28px 28px;transition:opacity 1.5s ease-out}#splash.hidden{opacity:0;pointer-events:none}#splash-content{position:absolute;inset:0;animation:cover-in 1s cubic-bezier(.2,.7,.2,1) both}@keyframes cover-in{0%{opacity:0}to{opacity:1}}.cover-drawing{--s: min(106vh, 62vw);position:absolute;width:var(--s);height:var(--s);margin:0;right:0;top:calc(50% - var(--s) / 2)}.cover-drawing img,.cover-leaders{position:absolute;inset:0;width:100%;height:100%;display:block;-webkit-mask-image:radial-gradient(circle at var(--door-x) var(--door-y),#000 calc(var(--load, 0) * 118%),transparent calc(var(--load, 0) * 118% + 6%));mask-image:radial-gradient(circle at var(--door-x) var(--door-y),#000 calc(var(--load, 0) * 118%),transparent calc(var(--load, 0) * 118% + 6%))}.cover-leaders{overflow:visible;pointer-events:none;animation:cover-in .6s both}.cover-leaders polyline{fill:none;stroke:#24201b80;stroke-width:.09}.cover-leaders circle{fill:var(--ink)}.cover-leaders .door{stroke:var(--amber);fill:var(--amber)}.cover-leaders polyline.door{fill:none;stroke-width:.14}.cover-leaders circle.door{animation:door-breathe 1.8s ease-in-out infinite;transform-box:fill-box;transform-origin:center}@keyframes door-breathe{50%{transform:scale(1.6);opacity:.55}}.cover-leaders .lit{stroke:var(--ink);stroke-width:.16}.cover-leaders circle.lit{fill:var(--ink);scale:1.8;transform-box:fill-box;transform-origin:center}.cover-leaders .door.lit{stroke:var(--amber);stroke-width:.24}.cover-leaders circle.door.lit{fill:var(--amber);animation-duration:.9s}.callout{position:absolute;translate:0 -50%;white-space:nowrap;text-align:left;padding:3px 5px;border:0;border-radius:0;background:var(--paper);color:var(--ink);font:500 10.5px/1.35 JetBrains Mono,monospace;letter-spacing:.12em;text-transform:uppercase;animation:cover-in .6s both}.callout.l{translate:-100% -50%;text-align:right}.callout b{color:var(--amber-ink);font-weight:500;margin-right:4px}.callout i{display:block;font-style:normal;color:var(--dim);letter-spacing:.06em;text-transform:none}span.callout{cursor:default}.callout:hover i{color:var(--ink-2)}.callout.sam,.callout.door{color:var(--amber-ink)}.callout.door{cursor:pointer;transition:background .2s ease,color .2s ease}.callout.door:is(:hover,:focus-visible,.lit){background:var(--amber);color:var(--ink)}.callout.door:is(:hover,.lit) i{color:var(--ink)}.door-hit{position:absolute;width:56px;height:56px;translate:-50% -50%;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}.door-hit:focus-visible{outline:2px solid var(--amber-ink);outline-offset:2px}.cover-side{position:absolute;left:40px;top:0;bottom:0;width:min(32vw,440px);z-index:1;display:flex;flex-direction:column;justify-content:center}.cover-top{position:absolute;top:24px;left:0;font:500 11px/1 JetBrains Mono,monospace;letter-spacing:.14em;color:var(--amber-ink)}#splash h1{margin:0 0 22px;font:600 clamp(38px,min(4.6vw,8vh),76px)/.98 "Inter",sans-serif;letter-spacing:-.035em;color:var(--ink)}.cover-lede{margin:0 0 12px;font:400 15px/1.6 Inter,sans-serif;color:var(--ink-2)}.cover-note{margin:0 0 26px;font:400 12px/1.6 JetBrains Mono,monospace;color:var(--dim)}.cover-block{width:100%;border-collapse:collapse;background:#efe9ddd9;font:500 10.5px/1 JetBrains Mono,monospace;letter-spacing:.1em;text-transform:uppercase}.cover-block th,.cover-block td{border:1px solid var(--rule);border-bottom:0;padding:9px 10px;text-align:left;vertical-align:top}.cover-block th{width:1%;white-space:nowrap;color:var(--dim);font-weight:500}.cover-block td{color:var(--ink)}#start-btn{position:relative;width:100%;padding:17px 14px;border:1px solid var(--ink);border-radius:0;background:var(--amber);color:var(--ink);text-align:left;font:600 12.5px/1 JetBrains Mono,monospace;letter-spacing:.14em;text-transform:uppercase;transition:background .2s ease}#start-btn:after{content:"→";position:absolute;right:14px;top:50%;translate:0 -50%;font-size:16px;transition:translate .2s ease}#start-btn:hover{background:#f5b24f}#start-btn:hover:after{translate:4px -50%}#start-btn:disabled{cursor:progress;color:var(--ink-2);background:linear-gradient(to right,rgba(240,163,58,.35) calc(var(--load, 0) * 100%),transparent 0)}#start-btn:disabled:after{content:""}.cover-more{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:14px}#splash .ghost-btn{padding:0;border:0;background:none;color:var(--ink);font:12px/1 JetBrains Mono,monospace;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#24201b59}#splash .ghost-btn:hover{color:var(--amber-ink)}#splash .ghost-btn:disabled{opacity:.4;cursor:progress}#splash .hint{font:10.5px/1 JetBrains Mono,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}@media(max-width:760px){#splash{overflow-y:auto}#splash-content{position:relative;min-height:100%}.cover-drawing{--s: 100vw;position:relative;right:auto;top:auto;margin:-2vw 0 -6vw}.callout,.cover-leaders :not(.door),.cover-block{display:none}.cover-side{position:relative;left:0;width:auto;padding:0 20px 32px}.cover-top{position:static;margin:0 0 14px}#splash h1{margin-bottom:14px}.cover-note{margin-bottom:20px}}.entering .cover-side>:not(#splash-actions),.entering #splash-skip,.entering .cover-more{display:none}#splash-ready{display:none}.entering #splash.ready #splash-ready{display:flex;align-items:center;gap:10px;margin:0 0 12px;font:600 11px/1 JetBrains Mono,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--amber-ink);animation:ready-in .5s ease both}#splash-ready:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 4px #f0a33a40;animation:ready-pulse 1.6s ease-in-out infinite}.entering #splash.ready #start-btn{animation:ready-in .5s ease .08s both}#splash-back{display:block;margin-top:16px}#splash-back[hidden]{display:none}.entering #splash.ready #splash-back{animation:ready-in .5s ease .16s both}@keyframes ready-in{0%{opacity:0;translate:0 6px}}@keyframes ready-pulse{50%{box-shadow:0 0 0 7px #f0a33a14}}@media(prefers-reduced-motion:reduce){#splash-ready:before,.entering #splash.ready :is(#splash-ready,#start-btn,#splash-back){animation:none}}@media(hover:none)and (pointer:coarse){#splash-kbd-hint{display:none}}.cover-fx{position:fixed;inset:0;width:100%;height:100%;pointer-events:none}.cover-board{position:fixed;inset:0;pointer-events:none;font:500 8.5px/1 JetBrains Mono,monospace;letter-spacing:.06em;color:var(--dim)}.cb-rule{position:absolute;background-color:#efe9ddf0;background-repeat:repeat-x}.cb-top{top:0;left:18px;right:0;height:18px;border-bottom:1px solid var(--rule);background-image:linear-gradient(90deg,rgba(36,32,27,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(36,32,27,.22) 1px,transparent 1px);background-size:28px 8px,7px 4px;background-position:-18px 100%,-18px 100%}.cb-left{left:0;top:18px;bottom:0;width:18px;border-right:1px solid var(--rule);background-repeat:repeat-y;background-image:linear-gradient(rgba(36,32,27,.5) 1px,transparent 1px),linear-gradient(rgba(36,32,27,.22) 1px,transparent 1px);background-size:8px 28px,4px 7px;background-position:100% -18px,100% -18px}.cb-bottom{bottom:0;left:18px;right:0;height:8px;border-top:1px solid var(--rule);background-image:linear-gradient(90deg,rgba(36,32,27,.22) 1px,transparent 1px);background-size:7px 4px}.cb-right{right:0;top:18px;bottom:8px;width:8px;border-left:1px solid var(--rule);background-repeat:repeat-y;background-image:linear-gradient(rgba(36,32,27,.22) 1px,transparent 1px);background-size:4px 7px}.cb-corner{position:absolute;left:0;top:0;width:18px;height:18px;background:var(--ink)}.cb-corner:before,.cb-corner:after{content:"";position:absolute;background:var(--paper)}.cb-corner:before{left:4px;right:4px;top:8.5px;height:1px}.cb-corner:after{top:4px;bottom:4px;left:8.5px;width:1px}.cb-n{position:absolute}.cb-top .cb-n{left:calc(var(--at) - 18px + 3px);top:2px}.cb-left .cb-n{top:calc(var(--at) - 18px + 3px);left:2px}.cb-mark{position:absolute;left:0;top:0;opacity:0;transition:opacity .3s ease}.cb-top .cb-mark{width:1px;height:100%;margin-left:-18px;background:var(--ink)}.cb-left .cb-mark{height:1px;width:100%;margin-top:-18px;background:var(--ink)}.cb-top .cb-mark:after,.cb-left .cb-mark:after{content:"";position:absolute;border:4px solid transparent}.cb-top .cb-mark:after{left:-4px;bottom:-1px;border-bottom-color:var(--ink)}.cb-left .cb-mark:after{top:-4px;right:-1px;border-right-color:var(--ink)}.cover-board.is-reading .cb-mark{opacity:1}.cb-xy{position:absolute;left:30px;bottom:20px;display:flex;gap:6px;margin:0;padding:6px 9px;background:var(--ink);color:#efe9dd99;font-size:9.5px;letter-spacing:.1em}.cb-xy b{min-width:4ch;color:var(--paper);font-weight:600;font-variant-numeric:tabular-nums}.cb-xy b:first-of-type{margin-right:6px}.cb-title{position:absolute;right:26px;bottom:26px;border-collapse:collapse;background:#efe9dde6;font:500 9.5px/1 JetBrains Mono,monospace;letter-spacing:.1em;text-transform:uppercase;animation:cover-in .8s .3s both}.cb-title th,.cb-title td{padding:7px 9px;border:1px solid var(--rule);text-align:left;white-space:nowrap}.cb-title th{color:var(--dim);font-weight:500}.cb-title td{color:var(--ink)}.cover-scan{position:absolute;inset:6%;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent)}.cover-scan:before{content:"";position:absolute;left:0;right:0;top:-100%;height:100%;background:linear-gradient(transparent calc(100% - 64px),#24201b0f calc(100% - 1px),#24201b73 calc(100% - 1px));animation:cover-scan 7.5s linear infinite}@keyframes cover-scan{0%{translate:0 0;opacity:0}6%,92%{opacity:1}to{translate:0 100%;opacity:0}}.cover-boot{margin:0 0 30px;animation:cover-in .6s both}.boot-eyebrow{margin:0 0 12px;font:600 11px/1 JetBrains Mono,monospace;letter-spacing:.2em;color:var(--amber-ink)}.boot-eyebrow i{margin:0 8px;font-style:normal;color:var(--dim)}.boot-title{margin:0 0 22px;font:600 clamp(32px,min(3.6vw,6.6vh),60px)/1 "Inter",sans-serif;letter-spacing:-.03em;color:var(--ink)}.boot-log{list-style:none;margin:0 0 14px;padding:12px 0 0;border-top:1px solid var(--rule);min-height:126px;font:500 11px/19px JetBrains Mono,monospace;color:var(--ink-2)}.boot-log li{display:flex;align-items:baseline;gap:8px}.boot-log li:before{content:"›";color:var(--dim)}.boot-log span{min-width:0;max-width:62%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.boot-log i{flex:1;min-width:12px;border-bottom:1px dotted rgba(36,32,27,.3);translate:0 -4px}.boot-log b{font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.boot-log b:after{content:" ✓"}.boot-log li.wait b{color:var(--dim)}.boot-log li.wait b:after{content:""}.boot-log li.is-new{animation:boot-in .25s ease both}.boot-log li.done,.boot-log li.done b{color:var(--amber-ink);font-weight:600}@keyframes boot-in{0%{opacity:0;translate:-6px 0}}.boot-bar{display:flex;align-items:center;gap:12px;font:600 11px/1 JetBrains Mono,monospace}.boot-segs{flex:1;display:grid;grid-auto-flow:column;gap:2px}.boot-segs i{height:10px;background:#24201b1a;transition:background .2s ease}.boot-segs i.on{background:var(--ink)}.boot-segs i.now{background:var(--ink);animation:seg-blink .7s steps(2) infinite}@keyframes seg-blink{50%{opacity:.25}}.boot-segs{position:relative;overflow:hidden}.boot-segs:after{content:"";position:absolute;inset:0 0 0 -13px;opacity:0;pointer-events:none;background:repeating-linear-gradient(-45deg,rgba(240,163,58,.55) 0 4px,transparent 4px 9px)}.is-compiling .boot-segs:after{opacity:1;animation:seg-run .9s linear infinite}@keyframes seg-run{0%{translate:0 0}to{translate:12.728px 0}}.boot-log li.wait span{max-width:88%}.boot-log li.wait:last-child b{animation:seg-blink .9s steps(2) infinite}.boot-pct{min-width:4ch;text-align:right;color:var(--ink)}.boot-mb{min-width:7ch;text-align:right;font-style:normal;font-weight:500;color:var(--dim)}@media(max-width:760px){.cover-board{display:none}.boot-title{font-size:30px;margin-bottom:16px}.boot-log{min-height:88px}}html.ink-cursor,html.ink-cursor *{cursor:none!important}.ink-layer{position:fixed;inset:0;z-index:9999;width:100vw;height:100vh;pointer-events:none}@media(prefers-reduced-motion:reduce){.cover-boot,.cb-title,.boot-log li.is-new,.boot-segs i.now,.is-compiling .boot-segs:after,.boot-log li.wait:last-child b{animation:none}}.top-ui{position:fixed;top:20px;z-index:50;display:flex;align-items:center;gap:12px;pointer-events:auto}.top-ui.left{left:20px}.top-ui.right{right:20px}.ui-btn{padding:10px 16px;background:#14142099;border:1px solid rgba(255,255,255,.12);border-radius:10px;color:#fff;font-size:13px;font-weight:500;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.ui-btn:hover{background:#ffb84d26;border-color:#ffb84d66;transform:translateY(-1px)}.ui-btn .icon{display:inline-flex;align-items:center}#audio-toggle .mute-line,#audio-toggle.muted .wave{display:none}#audio-toggle.muted .mute-line{display:block}#audio-toggle.muted{color:#8c8473}.ui-btn[hidden],#sky-time .sun{display:none}#sky-time[aria-pressed=true] .sun{display:inline}#sky-time[aria-pressed=true] .moon{display:none}#sky-rain[aria-pressed=false]{color:#8c8473}#sky-rain[aria-pressed=false] .drops{display:none}.sky-btn:disabled{cursor:progress}@media(max-width:560px){.sky-btn .label,#audio-toggle .label{display:none}.top-ui.right{gap:8px}}#audio-toggle[aria-expanded=true]{background:#ffb84d26;border-color:#ffb84d66}.sound{position:relative}#sound-panel{position:absolute;top:calc(100% + 8px);left:0;width:min(272px,calc(100vw - 40px));padding:12px 14px 10px;display:grid;gap:2px;background:#141420db;border:1px solid rgba(255,255,255,.12);border-radius:12px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 10px 30px #0006;font-family:JetBrains Mono,monospace;font-size:11.5px;color:#c4b9a5}#sound-panel[hidden]{display:none}.mix-row{display:grid;grid-template-columns:86px 1fr 30px;align-items:center;gap:10px;min-height:30px;cursor:pointer}.mix-row output{text-align:right;color:#ffb84d;font-variant-numeric:tabular-nums}.mix-on{grid-template-columns:1fr auto;padding-bottom:6px;margin-bottom:4px;border-bottom:1px solid rgba(255,255,255,.08);color:#fff}.mix-on input{position:absolute;opacity:0;width:1px;height:1px}.mix-on i{position:relative;width:30px;height:16px;border-radius:999px;background:#ffffff29;transition:background .2s}.mix-on i:after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#c4b9a5;transition:translate .2s,background .2s}.mix-on input:checked+i{background:#ffb84d73}.mix-on input:checked+i:after{translate:14px 0;background:#ffb84d}.mix-on input:focus-visible+i{outline:2px solid #ffb84d;outline-offset:2px}#sound-panel:has(#mix-on:not(:checked)) .mix-row:not(.mix-on) span{opacity:.5}.mix-row input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:18px;margin:0;background:none;cursor:pointer}.mix-row input[type=range]::-webkit-slider-runnable-track{height:2px;border-radius:1px;background:#fff3}.mix-row input[type=range]::-moz-range-track{height:2px;border-radius:1px;background:#fff3}.mix-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;margin-top:-5px;border:0;border-radius:50%;background:#ffb84d}.mix-row input[type=range]::-moz-range-thumb{width:12px;height:12px;border:0;border-radius:50%;background:#ffb84d}.mix-row input[type=range]:focus-visible{outline:2px solid rgba(255,184,77,.6);outline-offset:2px;border-radius:4px}.mix-reset{justify-self:end;margin-top:4px;padding:4px 0;border:0;background:none;font:inherit;font-size:10.5px;color:#8c8473;text-decoration:underline;text-underline-offset:3px}.mix-reset:hover{color:#ffb84d}.ui-btn .arrow{transition:transform .2s}.ui-btn:hover .arrow{transform:translate(3px)}#clock{font-family:JetBrains Mono,monospace;font-size:12px;color:#ffb84d;padding:8px 12px;background:#14142099;border-radius:8px;backdrop-filter:blur(12px)}#hint-box{position:fixed;top:76px;left:20px;z-index:30;padding:14px 18px;background:#0f0f19b3;border:1px solid rgba(255,255,255,.08);border-radius:12px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:12px;line-height:1.7;color:#c4b9a5;max-width:260px;transition:opacity .4s;pointer-events:none}#hint-box b{color:#ffb84d;font-weight:500}#hint-box.hidden,body.is-focused #hint-box{opacity:0}body:has(#sound-panel:not([hidden])) #hint-box{opacity:0}.kbd{display:inline-block;padding:2px 6px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:4px;font-family:JetBrains Mono,monospace;font-size:10px;color:#fff}#tooltip{position:fixed;z-index:60;padding:6px 12px;background:#ffb84df2;color:#1a0d05;border-radius:6px;font-size:12px;font-weight:600;pointer-events:none;opacity:0;transition:opacity .15s ease;transform:translate(-50%,-130%);white-space:nowrap;box-shadow:0 4px 12px #0000004d}#tooltip.show{opacity:1}#phone-notif{position:fixed;bottom:30px;right:30px;z-index:40;padding:14px 18px;background:#1c1a26f2;border:1px solid rgba(255,255,255,.1);border-radius:14px;backdrop-filter:blur(12px);max-width:280px;opacity:0;transform:translate(20px);transition:all .4s ease;box-shadow:0 10px 30px #0006}#phone-notif.show{opacity:1;transform:translate(0)}#phone-notif .nf-app{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:11px;color:#8c8473}#phone-notif .nf-icon{width:18px;height:18px;border-radius:4px;background:#ffb84d}#phone-notif .nf-title{font-size:13px;font-weight:600;color:#fff;margin-bottom:2px}#phone-notif .nf-msg{font-size:12px;color:#c4b9a5;line-height:1.5}@media(max-width:768px){#hint-box{font-size:11px;padding:10px 14px;max-width:220px;top:68px}.ui-btn{padding:8px 12px;font-size:12px}.top-ui.left{gap:8px}#clock{font-size:11px;padding:6px 9px}#phone-notif{right:12px;bottom:12px;max-width:calc(100vw - 24px)}}#leave{text-decoration:none;letter-spacing:.02em}#leave-ask{position:fixed;inset:0;margin:auto;height:fit-content;width:min(360px,calc(100vw - 40px));padding:22px 22px 18px;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:#1414209e;color:#fff;backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);box-shadow:0 24px 60px #00000073}#leave-ask[open]{animation:leave-in .24s cubic-bezier(.2,.7,.2,1)}#leave-ask::backdrop{background:#08081059;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}@keyframes leave-in{0%{opacity:0;transform:translateY(8px) scale(.98)}}.leave-title{margin:0 0 18px;font-size:15.5px;line-height:1.5;font-weight:500}.leave-actions{display:flex;justify-content:flex-end;gap:10px}.leave-actions button{padding:9px 16px;border-radius:9px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;border:1px solid rgba(255,255,255,.16);background:#ffffff0f;color:#fff;transition:background .2s,border-color .2s}.leave-actions button:hover{background:#ffffff24}.leave-actions .leave-go{background:#ffb84d;border-color:#ffb84d;color:#1a1408}.leave-actions .leave-go:hover{background:#ffc871}.leave-pass{position:fixed;inset:0;z-index:2000;pointer-events:none}.leave-pass .veil{position:absolute;inset:0;opacity:0;background-color:#efe9dd;background-image:linear-gradient(rgba(36,32,27,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(36,32,27,.05) 1px,transparent 1px);background-size:28px 28px}.leave-pass .flood{position:absolute;inset:0;background:#f0a33a;clip-path:circle(0 at 0 0)}@media(max-width:560px){#leave{padding:10px 12px}}#view-switch{position:fixed;left:50%;bottom:84px;transform:translate(-50%);z-index:45;display:flex;align-items:center;gap:12px;padding:7px 14px;border-radius:13px;background:#100f18b8;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 32px #0006;opacity:0;pointer-events:none;transition:opacity .5s ease,transform .5s ease,left .5s cubic-bezier(.16,1,.3,1)}#view-switch.ready{opacity:1;pointer-events:auto}#view-switch .view-items{display:flex;gap:2px}#view-switch button{font-family:JetBrains Mono,monospace;font-size:11.5px;letter-spacing:.3px;padding:6px 12px;border:none;border-radius:8px;background:transparent;color:#8c8473;transition:color .18s,background .18s}#view-switch button:hover{color:#d4c8b3;background:#ffffff0d}#view-switch button.on{color:#1a0d05;background:#ffb84d}#view-switch button.walk{margin-left:8px;position:relative}#view-switch button.walk:before{content:"";position:absolute;left:-5px;top:6px;bottom:6px;width:1px;background:#ffffff24}#walk-hint{position:fixed;top:22px;left:50%;transform:translate(-50%);z-index:46;padding:9px 16px;border-radius:10px;background:#100f18b8;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font:11.5px/1.5 JetBrains Mono,monospace;color:#c4b9a5;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .5s}#walk-hint.show{opacity:1}#walk-hint b{color:#ffb84d;font-weight:500}#walk-stick{position:fixed;left:18px;bottom:132px;z-index:46;width:104px;height:104px;border-radius:50%;background:#100f1873;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:none;touch-action:none}#walk-stick .knob{position:absolute;left:50%;top:50%;width:42px;height:42px;margin:-21px 0 0 -21px;border-radius:50%;background:#ffb84d8c;border:1px solid rgba(255,184,77,.9)}@media(pointer:coarse){body.walking:not(.is-focused) #walk-stick{display:block}}#view-switch.focus-shift{left:calc((100% - min(44vw,590px))/2)}#item-dock{position:fixed;left:50%;bottom:22px;transform:translate(-50%);z-index:45;display:flex;align-items:center;gap:12px;overflow:hidden;max-width:min(94vw,900px);padding:9px 14px;border-radius:14px;background:#100f18b8;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 12px 40px #00000073;opacity:0;transition:opacity .5s ease,transform .5s ease;pointer-events:none}#item-dock.ready{opacity:1;pointer-events:auto}#item-dock.focus-shift{left:calc((100% - min(44vw,590px))/2);transition:left .5s cubic-bezier(.16,1,.3,1),opacity .5s ease,transform .5s ease}#item-dock .dock-items button.current{color:var(--dock-accent, #ffb84d);border-color:color-mix(in srgb,var(--dock-accent, #ffb84d) 55%,transparent);background:color-mix(in srgb,var(--dock-accent, #ffb84d) 12%,transparent)}#item-dock .dock-label,#view-switch .dock-label{font-family:JetBrains Mono,monospace;font-size:10.5px;letter-spacing:1px;color:#55503f;flex-shrink:0;padding-right:12px;border-right:1px solid rgba(255,255,255,.08)}.dock-items{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.dock-items::-webkit-scrollbar{display:none}#item-dock:before,#item-dock:after{content:"";position:absolute;top:6px;bottom:6px;width:34px;pointer-events:none;opacity:0;transition:opacity .2s ease;border-radius:14px}#item-dock:before{left:0;background:linear-gradient(to right,#100f18f2,#100f1800)}#item-dock:after{right:0;background:linear-gradient(to left,#100f18f2,#100f1800)}#item-dock.more-left:before{opacity:1}#item-dock.more-right:after{opacity:1}.dock-items button{font-family:JetBrains Mono,monospace;font-size:11.5px;white-space:nowrap;padding:7px 11px;border-radius:8px;border:1px solid transparent;background:transparent;color:#a09988;transition:color .18s,background .18s,border-color .18s}.dock-items button:hover{color:var(--dock-accent, #ffb84d);background:#ffffff0d;border-color:color-mix(in srgb,var(--dock-accent, #ffb84d) 40%,transparent)}@media(max-width:768px){#view-switch{bottom:72px;gap:8px;padding:6px 10px}#item-dock{bottom:12px;gap:8px;padding:7px 10px}#item-dock .dock-label,#view-switch .dock-label{display:none}#item-dock.focus-shift,#view-switch.focus-shift{left:50%;opacity:0;transform:translate(-50%) translateY(14px);pointer-events:none}.dock-items button{font-size:11px;padding:6px 9px}#view-switch button{padding:5px 9px;font-size:10.5px}}.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 16px}.tag{padding:4px 12px;font-family:JetBrains Mono,monospace;font-size:11px;background:#ffb84d1a;color:#ffb84d;border:1px solid rgba(255,184,77,.25);border-radius:999px}.skill-cat{margin-bottom:18px}.skill-cat .cat-label{font-size:11px;font-weight:600;color:#8c8473;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.award{display:inline-block;padding:2px 10px;background:#ffb84d26;color:#ffb84d;border-radius:4px;font-size:11px;font-weight:500;margin-top:6px}.contact-row{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}.contact-link{padding:8px 14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:999px;font-size:12px;color:#d4c8b3;transition:all .2s;display:inline-flex;align-items:center;gap:6px;font-family:JetBrains Mono,monospace;letter-spacing:.4px}.contact-link:before{content:">";color:#ffb84d;opacity:.7}.contact-link:hover{background:#ffb84d1a;border-color:#ffb84d4d;color:#ffb84d;text-decoration:none}#focus-dim{position:fixed;inset:0;z-index:140;pointer-events:none;background:radial-gradient(ellipse 45% 60% at 28% 50%,#0000 35%,#0000008c);opacity:0;transition:opacity .6s ease}#focus-dim.show{opacity:1}body.card-sheet #focus-dim{background:radial-gradient(ellipse 70% 36% at 50% 26%,#0000 35%,#0000008c)}#surfaces{position:fixed;inset:0;z-index:5;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .45s ease,visibility 0s linear .45s}#surfaces.show{opacity:1;visibility:visible;transition:opacity .45s ease,visibility 0s}#surfaces>.surface{position:absolute;left:0;top:0;transform-origin:0 0;pointer-events:none}#surfaces>.surface:not(.on){display:none}#surfaces.show>.surface{pointer-events:auto}.screen-ui{box-sizing:border-box;overflow:hidden;display:flex;flex-direction:column;font:13px/1.55 Inter,sans-serif;color:#d9d0c1;background:#16151f}.screen-ui button{font:inherit;color:inherit;background:none;border:0}.screen-ui .bar{flex:none;display:flex;align-items:center;gap:10px;height:30px;padding:0 12px;background:#1f1d2a;border-bottom:1px solid #2b2838;font:11px JetBrains Mono,monospace;color:#8c8473}.screen-ui .body{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#3a3648 transparent}.screen-ui .dots i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.screen-ui .dots i:nth-child(1){background:#e0605a}.screen-ui .dots i:nth-child(2){background:#e0b04a}.screen-ui .dots i:nth-child(3){background:#5fb86a}.editor .tabs{display:flex;gap:2px;align-self:flex-end}.editor .tab{padding:6px 11px 7px;border-radius:5px 5px 0 0;color:#8c8473}.editor .tab:hover{color:#d4c8b3}.editor .tab.on{background:#16151f;color:#ffb84d}.editor .body{padding:16px 24px 20px}.editor h1{font:600 21px/1.25 JetBrains Mono,monospace;color:#ffb84d;margin:0 0 3px}.editor h1 .hash{color:#5c5566;margin-right:8px}.editor .tagline{color:#a39a8a;font-style:italic;margin:0 0 12px}.editor .facts{display:flex;flex-wrap:wrap;gap:4px 0;margin:0 0 10px;font:12px/1.5 JetBrains Mono,monospace;color:#e8dfcf}.editor .facts span+span:before{content:"·";color:#5c5566;margin:0 8px}.editor .stack{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 14px}.editor .stack span{font:11px JetBrains Mono,monospace;padding:2px 8px;border:1px solid rgba(255,184,77,.3);border-radius:10px;color:#e6c48a}.editor details{border-top:1px solid #2b2838}.editor summary{cursor:pointer;list-style:none;padding:8px 0;font:500 12.5px JetBrains Mono,monospace;color:#d4c8b3}.editor summary::-webkit-details-marker{display:none}.editor summary:before{content:"▸";color:#ffb84d;display:inline-block;width:16px}.editor details[open] summary:before{content:"▾"}.editor summary:hover{color:#ffb84d}.editor details p,.editor details li{font-size:13px;color:#c7bdad;margin:0 0 8px}.editor details ul{padding-left:18px;margin:0 0 10px}.editor details strong{color:#e8dfcf;font-weight:600}.editor details a{color:#ffb84d}.editor .actions{display:flex;gap:10px;margin-top:16px}.editor .read{background:#ffb84d;color:#1a0d05;border-radius:6px;padding:8px 14px;font:600 12px JetBrains Mono,monospace}.editor .read:hover{background:#ffc978}.term{background:#111018}.term .body{padding:12px 16px 16px;font:12.5px/1.75 JetBrains Mono,monospace;color:#cfc5b3}.term p{margin:0}.term .pr{color:#5fd38d;margin-right:8px}.term .row{display:grid;grid-template-columns:104px 1fr;gap:10px;width:100%;text-align:left;padding:3px 8px;margin:1px 0;border-radius:4px;color:#b8ae9d}.term .row:hover{background:#ffffff0d;color:#e8dfcf}.term .row.on{background:#ffb84d21;color:#ffb84d}.term .row .dir{color:#7fb2ff}.term .row.on .dir{color:#ffb84d}.term .gap{height:10px}.term .out{color:#a39a8a;padding-left:16px;text-indent:-12px}.term .out:before{content:"- ";color:#5c5566}.term .cursor{display:inline-block;width:8px;height:14px;background:#ffb84d;vertical-align:-2px;animation:term-blink 1.05s steps(1) infinite}.term .hint{color:#5c5566;margin-top:12px;font-size:11px}@keyframes term-blink{50%{opacity:0}}.paper{box-sizing:border-box;overflow:hidden;padding:42px 46px 34px;border-radius:2px;background:linear-gradient(172deg,#f2ecdf,#e6dcc8 55%,#d8ccb5);color:#2a241d;font:12.5px/1.55 Inter,sans-serif;box-shadow:0 10px 26px #00000080}.paper.dim{background:linear-gradient(172deg,#a8a092,#938b7c)}.paper h1{font:700 29px/1.1 JetBrains Mono,monospace;letter-spacing:-.5px;color:#1d1914;margin:0 0 6px}.paper .pp-role{margin:0;color:#544b40}.paper .pp-contact{margin:6px 0 0;font:11px JetBrains Mono,monospace;color:#8a5a1c}.paper a{color:#8a5a1c;text-decoration:none}.paper a:hover{text-decoration:underline}.paper h2{margin:22px 0 4px;padding-bottom:5px;border-bottom:1px solid rgba(70,52,30,.22);font:600 11px JetBrains Mono,monospace;letter-spacing:.14em;text-transform:uppercase;color:#95601f}.paper p{margin:0 0 3px}.paper .pp-row{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-top:9px}.paper .pp-row b{font-weight:600;font-size:13px;color:#1d1914}.paper .pp-row span{flex:none;font:10.5px JetBrains Mono,monospace;color:#6f6557}.paper .pp-dim{color:#6f6557;font-size:11.5px}.paper .pp-skill{margin-top:6px}.paper .pp-skill b{font-weight:600;color:#1d1914}.paper footer{position:absolute;left:46px;right:46px;bottom:22px;display:flex;gap:16px;font:10px JetBrains Mono,monospace;color:#8c8272}.paper footer span{margin-left:auto}body.is-surface #item-dock,body.is-surface #view-switch,body.is-surface #hint-box,body.is-surface #walk-stick,body.is-surface .top-ui.right{opacity:0!important;pointer-events:none!important}#surface-close,#paper-hint{position:fixed;z-index:60;padding:8px 14px;border-radius:9px;background:#100f18b8;border:1px solid rgba(255,255,255,.12);color:#c4b9a5;font:11.5px JetBrains Mono,monospace;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);opacity:0;pointer-events:none;transition:opacity .4s}#surface-close{top:18px;right:18px}body.is-surface #surface-close{opacity:1;pointer-events:auto}#surface-close:hover{color:#ffb84d;border-color:#ffb84d66}#paper-hint{left:50%;bottom:22px;transform:translate(-50%);white-space:nowrap}#paper-hint.show{opacity:1}#surfaces-flat{position:fixed;inset:0;z-index:55;display:none;flex-direction:column;gap:10px;padding:64px 12px 14px;background:#08070ce6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}#surfaces-flat.show{display:flex}#surfaces-flat.show.paper-mode{display:block;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#3a3648 transparent}#surfaces-flat .surface{position:relative!important;transform:none!important}#surfaces-flat .screen-ui{width:100%!important;height:auto!important;border-radius:8px;border:1px solid #2b2838}#surfaces-flat .term{flex:none;max-height:40%}#surfaces-flat .editor{flex:1;min-height:0}#surfaces-flat .paper{width:auto!important;height:auto!important;max-width:620px;margin:0 auto;padding:28px 22px 24px}#surfaces-flat .paper footer{position:static;margin-top:18px}#obj-card{--oc-accent: #ffb84d;position:fixed;left:0;top:0;z-index:150;width:360px;max-height:calc(100vh - 190px);box-sizing:border-box;display:flex;flex-direction:column;background:#111019db;color:#d4c8b3;font:13.5px/1.65 Inter,sans-serif;border:1px solid color-mix(in srgb,var(--oc-accent) 28%,transparent);border-radius:12px;box-shadow:0 18px 50px #00000080;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;visibility:hidden;transform:translate(-10px);transition:opacity .3s ease,transform .45s cubic-bezier(.16,1,.3,1),visibility 0s linear .45s}#obj-card.show{opacity:1;visibility:visible;transform:none;transition:opacity .35s ease .08s,transform .5s cubic-bezier(.16,1,.3,1) .08s,visibility 0s}#obj-card .oc-top{flex:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 12px 0 18px;font:11px JetBrains Mono,monospace;letter-spacing:.4px;color:#7d7566}#obj-card .oc-close{font:10.5px JetBrains Mono,monospace;color:#8c8473;background:none;border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:3px 8px}#obj-card .oc-close:hover{color:var(--oc-accent);border-color:color-mix(in srgb,var(--oc-accent) 45%,transparent)}#obj-card .oc-body{padding:10px 18px 4px;overflow-y:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#3a3648 transparent}#obj-card h2{font:600 18px/1.3 JetBrains Mono,monospace;color:var(--oc-accent);margin:0 0 2px}#obj-card h2 .soft{color:#8c8473;font-weight:400;font-size:14px}#obj-card .oc-sub{font:11.5px/1.5 JetBrains Mono,monospace;color:#8c8473;margin:0 0 12px}#obj-card p{margin:0 0 10px}#obj-card .oc-dim{color:#9a9181;font-size:12.5px}#obj-card .oc-dim b{color:#c4b9a5;font-weight:500}#obj-card .award,#obj-card .tag-list{margin:0 0 12px}#obj-card .contact-row{margin:4px 0 8px}#obj-card .oc-read{flex:none;align-self:flex-start;margin:6px 18px 16px;padding:8px 14px;border:0;border-radius:6px;background:var(--oc-accent);color:#1a0d05;font:600 12px JetBrains Mono,monospace}#obj-card .oc-read:hover{filter:brightness(1.12)}#obj-card .oc-read[hidden]{display:none}#obj-card .oc-item{display:flex;align-items:center;gap:14px;margin:2px 0 12px}#obj-card .oc-icon{width:40px;height:40px;flex:none;border-radius:10px;border:1.5px solid var(--oc-accent);color:var(--oc-accent);display:flex;align-items:center;justify-content:center}#obj-card .oc-icon svg{width:22px;height:22px;display:block}#obj-card .oc-label{font:11px/1.6 JetBrains Mono,monospace;color:#8c8473;letter-spacing:.4px}#obj-card .oc-label b{display:block;font-size:15px;font-weight:600;color:var(--oc-accent);letter-spacing:0}#obj-card.oc-term{width:430px;background:#0c0b12ed;font:12px/1.7 JetBrains Mono,monospace;color:#cfc5b3}#obj-card.oc-term .oc-top{padding:7px 10px 7px 14px;background:#1f1d2a;border-bottom:1px solid #2b2838;border-radius:12px 12px 0 0}#obj-card.oc-term .oc-body{padding-top:12px}#obj-card.oc-term p{margin:0 0 6px}#obj-card.oc-term .pr{color:#5fd38d;margin-right:8px}#obj-card.oc-term .lv{display:grid;grid-template-columns:92px 1fr;gap:10px;margin:0 0 6px}#obj-card.oc-term .lv .k{color:#7fb2ff}#obj-card.oc-term .gap{margin-top:12px}#obj-card.oc-term .out{color:#a39a8a}#obj-card.oc-term .cursor{display:inline-block;width:7px;height:13px;background:#ffb84d;vertical-align:-2px;animation:term-blink 1.05s steps(1) infinite}#obj-card .oc-time{font:600 44px/1.1 JetBrains Mono,monospace;letter-spacing:2px;color:var(--oc-accent);margin:2px 0 6px}#card-leader{position:fixed;inset:0;width:100%;height:100%;z-index:149;pointer-events:none;overflow:visible;opacity:0;transition:opacity .3s ease}#card-leader.show{opacity:1;transition-delay:.12s}#card-leader line{stroke:var(--oc-accent, #ffb84d);stroke-width:1;stroke-opacity:.65}#card-leader .pin{fill:var(--oc-accent, #ffb84d)}#card-leader .halo{fill:none;stroke:var(--oc-accent, #ffb84d);stroke-opacity:.45}#obj-card.sheet{left:10px!important;top:auto!important;right:10px;bottom:10px;width:auto;max-height:50vh;transform:translateY(16px)}#obj-card.sheet.show{transform:none}#reader{--rd-accent: #ffb84d;position:fixed;inset:0;z-index:170;display:none;background:#09080ecc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}#reader.show{display:block;animation:rd-in .35s ease both}@keyframes rd-in{0%{opacity:0}to{opacity:1}}#reader .rd-scroll{height:100%;overflow-y:auto}#reader .rd-article{max-width:700px;margin:0 auto;padding:56px 24px 96px;color:#d9d0c1;font:16px/1.75 Inter,sans-serif}#reader .rd-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:26px;font:12px JetBrains Mono,monospace;color:#8c8473}#reader-close{font:11.5px JetBrains Mono,monospace;color:#c4b9a5;background:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:7px 12px;white-space:nowrap}#reader-close:hover{color:var(--rd-accent);border-color:color-mix(in srgb,var(--rd-accent) 45%,transparent)}#reader h1{font:600 clamp(26px,5vw,36px)/1.15 "JetBrains Mono",monospace;color:var(--rd-accent);margin:0 0 6px}#reader .rd-tagline{color:#a39a8a;font-style:italic;margin:0 0 18px}#reader .rd-facts{display:flex;flex-wrap:wrap;gap:4px 0;margin:0 0 12px;font:13px/1.5 JetBrains Mono,monospace;color:#e8dfcf}#reader .rd-facts span+span:before{content:"·";color:#5c5566;margin:0 9px}#reader .rd-stack{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 28px}#reader .rd-stack span{font:12px JetBrains Mono,monospace;padding:3px 9px;border:1px solid rgba(255,184,77,.3);border-radius:12px;color:#e6c48a}#reader .rd-tagline:empty,#reader .rd-facts:empty,#reader .rd-stack:empty{display:none}#reader .rd-facts:empty+.rd-stack:empty+.rd-body,#reader .rd-facts:not(:empty)+.rd-stack:empty+.rd-body{margin-top:24px}#reader .rd-body h3{font:600 12.5px JetBrains Mono,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--rd-accent);margin:30px 0 8px}#reader .rd-body p,#reader .rd-body li{color:#cfc5b5}#reader .rd-body ul{padding-left:20px}#reader .rd-body li{margin-bottom:8px}#reader .rd-body strong{color:#efe6d6}#reader .rd-body a{color:var(--rd-accent)}#reader .rd-body code{font:13px JetBrains Mono,monospace;padding:1px 6px;background:#ffb84d1f;color:#ffb84d;border-radius:4px}#reader .rd-body .skill-cat{margin-bottom:20px}
