:root{--bg:#0a0c1a;--bg-2:#0d1024;--bg-3:#11142e;--panel:#0d1024;--panel-2:#141838;--line:#1a1d35;--line-2:#2a2f4d;--ink:#e8e6df;--ink-2:#9a99a8;--ink-3:#8180a0;--amber:#ffb45a;--amber-2:#ffcc7a;--amber-dim:#a87738;--warn:#ff6b3d;--ok:#7af0c4;--accent:var(--amber);--mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--mono);height:100%;margin:0;padding:0;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.crt:before{content:"";pointer-events:none;z-index:9998;mix-blend-mode:overlay;background:repeating-linear-gradient(0deg,#ffb45a06 0 1px,#0000 1px 4px);position:fixed;inset:0}.crt:after{content:"";pointer-events:none;z-index:9999;background:radial-gradient(#0000 60%,#00000080 100%);position:fixed;inset:0}.flicker{animation:6s infinite flicker}@keyframes flicker{0%,98%{opacity:1}98.5%{opacity:.85}99%{opacity:1}99.5%{opacity:.92}to{opacity:1}}.desktop{background:radial-gradient(ellipse at 20% 10%, #ffb45a0d, transparent 50%), radial-gradient(ellipse at 80% 90%, #7af0c406, transparent 50%), var(--bg);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.status-header{background:var(--bg-2);border-bottom:2px solid var(--accent);color:var(--accent);letter-spacing:.15em;flex-shrink:0;padding:6px 14px 4px;font-size:11px}.status-row{align-items:center;gap:24px;display:flex}.status-row .sp{flex:1}.status-row b{font-weight:600}.fkey-strip{border-top:1px dashed var(--line-2);color:var(--accent);letter-spacing:.12em;align-items:stretch;margin:5px -14px -4px;padding-top:5px;font-size:10px;display:flex}.fkey{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;flex:1;justify-content:center;align-items:center;gap:5px;min-width:0;padding:3px 4px;transition:color .1s,background .1s;display:flex}.fkey+.fkey{border-left:1px solid var(--line)}.fkey b{color:var(--ink)}.fkey:hover{color:var(--ink);background:#ffb45a12}.fkey:focus-visible{outline:1px dashed var(--accent);outline-offset:-2px}.dock{padding:9px 16px calc(10px + env(safe-area-inset-bottom,0px));background:linear-gradient(180deg, #0d102400, var(--bg-2) 70%);flex-shrink:0;justify-content:center;align-items:flex-end;gap:4px;display:flex;position:relative}.dock:before{content:"";background:linear-gradient(90deg,#0000,#ffb45a80,#0000);height:1px;position:absolute;top:0;left:0;right:0}.dock-app{appearance:none;cursor:pointer;color:var(--ink-2);font-family:var(--mono);background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:4px 11px 6px;transition:transform .14s ease-out;display:flex;position:relative}.dock-glyph{color:var(--accent);letter-spacing:.02em;font-size:18px;line-height:1;transition:filter .15s}.dock-label{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);font-size:8px;transition:color .14s}.dock-app:hover{transform:translateY(-5px)}.dock-app:hover .dock-glyph{filter:drop-shadow(0 0 9px #ffb45a99)}.dock-app:hover .dock-label{color:var(--accent)}.dock-app:focus-visible{outline:1px dashed var(--accent);outline-offset:3px}.dock-app.open .dock-label{color:var(--ink-2)}.dock-app.active .dock-label{color:var(--accent)}.dock-app.open:after{content:"";background:var(--ink-3);border-radius:50%;width:4px;height:4px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.dock-app.active:after{background:var(--accent);box-shadow:0 0 7px var(--accent)}.desktop-area{background-image:linear-gradient(#ffb45a06 1px,#0000 1px),linear-gradient(90deg,#ffb45a06 1px,#0000 1px);background-size:32px 32px;flex:1;position:relative;overflow:hidden}.desktop-glow{pointer-events:none;z-index:0;mix-blend-mode:screen;will-change:mask-position;background-color:#ffb45a0d;background-image:linear-gradient(#ffc4788c 1px,#0000 1px),linear-gradient(90deg,#ffc4788c 1px,#0000 1px);background-size:32px 32px;animation:34s ease-in-out infinite alternate spotlight-roam;position:absolute;inset:0;-webkit-mask:radial-gradient(circle,#000 0%,#0000008c 32%,#0000 66%) 8% 16%/760px 760px no-repeat;mask:radial-gradient(circle,#000 0%,#0000008c 32%,#0000 66%) 8% 16%/760px 760px no-repeat}@keyframes spotlight-roam{0%{-webkit-mask-position:8% 16%;mask-position:8% 16%}20%{-webkit-mask-position:82% 10%;mask-position:82% 10%}42%{-webkit-mask-position:66% 84%;mask-position:66% 84%}64%{-webkit-mask-position:24% 70%;mask-position:24% 70%}84%{-webkit-mask-position:92%;mask-position:92%}to{-webkit-mask-position:40% 34%;mask-position:40% 34%}}.window{background:var(--panel);border:1px solid var(--accent);box-shadow:0 0 0 1px var(--bg), 0 18px 60px #0009, inset 0 0 0 1px #ffb45a0d;flex-direction:column;min-width:240px;min-height:160px;transition:box-shadow .18s ease-out;display:flex;position:absolute}.window.focused{box-shadow:0 0 0 1px var(--bg), 0 0 0 2px var(--accent), 0 0 28px #ffb45a1f, 0 22px 70px #000000bf}.window.maximized{bottom:8px;right:8px;width:auto!important;height:auto!important;top:8px!important;left:8px!important}.window.minimized{display:none}.resize-grip{cursor:nwse-resize;z-index:10;touch-action:none;background:linear-gradient(135deg, transparent 0 6px, var(--accent) 6px 7px, transparent 7px 9px, var(--accent) 9px 10px, transparent 10px 12px, var(--accent) 12px 13px, transparent 13px);opacity:.6;width:16px;height:16px;transition:opacity .12s;position:absolute;bottom:0;right:0}.resize-grip:hover{opacity:1}.win-titlebar{background:linear-gradient(180deg, var(--bg-3), var(--bg-2));border-bottom:1px solid var(--accent);height:24px;color:var(--accent);letter-spacing:.15em;-webkit-user-select:none;user-select:none;cursor:move;touch-action:none;flex-shrink:0;align-items:center;gap:10px;padding:0 8px;font-size:10px;display:flex}.win-titlebar b{font-weight:600}.win-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.win-titlebar .meta{color:var(--ink-3);white-space:nowrap;margin-left:auto}.win-controls{flex-shrink:0;gap:4px;display:flex}.win-controls button{border:1px solid var(--accent);width:20px;height:15px;color:var(--accent);font-family:var(--mono);cursor:pointer;background:0 0;place-items:center;padding:0;font-size:9px;line-height:1;transition:background .1s,color .1s;display:grid}.win-controls button:hover{background:var(--accent);color:#000}.win-controls button:focus-visible{outline:1px dashed var(--accent);outline-offset:1px}.win-body{color:var(--ink);overscroll-behavior:contain;flex:1;padding:12px;font-size:12px;line-height:1.55;position:relative;overflow:auto}.win-body::-webkit-scrollbar{width:8px;height:8px}.win-body::-webkit-scrollbar-track{background:var(--bg-2)}.win-body::-webkit-scrollbar-thumb{background:var(--line-2);border:1px solid var(--bg-2)}.amber{color:var(--accent)}.amber-2{color:var(--amber-2)}.dim{color:var(--ink-2)}.dim-2{color:var(--ink-3)}.warn{color:var(--warn)}.ok{color:var(--ok)}.section-rule{color:var(--accent);letter-spacing:.15em;border-bottom:1px dashed var(--line-2);text-transform:uppercase;margin-bottom:8px;padding-bottom:4px;font-size:10px;display:block}.caret{background:var(--accent);width:8px;height:13px;animation:1s step-end infinite blink;display:inline-block;transform:translateY(3px)}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes typeIn{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.print-line{white-space:pre;animation:.4s steps(40,end) forwards typeIn}@keyframes openWin{0%{opacity:0;clip-path:inset(48% 0);transform:scale(.9)translateY(10px)}55%{clip-path:inset(0)}to{opacity:1;transform:scale(1)translateY(0)}}.window.opening{transform-origin:50% 20%;animation:.3s cubic-bezier(.2,.9,.25,1.05) forwards openWin}@keyframes closeWin{0%{opacity:1;transform:scale(1)}to{opacity:0;clip-path:inset(48% 0);transform:scale(.92)translateY(6px)}}.window.closing{animation:.2s ease-in forwards closeWin}.boot{color:var(--accent);font-family:var(--mono);z-index:10000;cursor:default;text-shadow:0 0 7px #ffb45a8c,0 0 18px #ffb45a2e;background:#000;flex-direction:column;justify-content:center;align-items:center;padding:24px;font-size:13px;display:flex;position:fixed;inset:0;overflow:hidden}.boot:before{content:"";pointer-events:none;z-index:1;background:repeating-linear-gradient(0deg,#ffb55a16 0 1px,#0000 1px 4px);position:fixed;inset:0}.boot-terminal{z-index:3;width:min(680px,100%);margin:auto;position:relative;transform:translateY(-2vh)}.boot-line{opacity:0;white-space:pre;min-height:1.32em;animation:.55s steps(54,end) forwards typeIn}.boot-line.show{opacity:1}.boot-text{color:var(--amber-2)}.boot-check{grid-template-columns:minmax(18ch,max-content) minmax(4ch,1fr) auto auto;align-items:center;column-gap:8px;max-width:560px;display:grid}.boot-label{text-overflow:ellipsis;overflow:hidden}.boot-fill{opacity:.9;border-top:2px dotted;min-width:4ch;height:1px;transform:translateY(1px)}.boot-status{color:var(--amber-2)}.boot-warn .boot-status{color:var(--warn)}.boot-progress{border:1px solid var(--accent);background:#ffb45a14;width:96px;height:10px;padding:1px;box-shadow:inset 0 0 10px #000000bf}.boot-progress i{background:repeating-linear-gradient(90deg, var(--accent) 0 5px, transparent 5px 7px);width:0;height:100%;animation:1.2s steps(14,end) forwards boot-progress;display:block}.boot-ready{color:var(--amber-2);margin-top:1.2em}.boot-tap{appearance:none;color:var(--accent);font:inherit;text-align:left;cursor:pointer;text-shadow:inherit;background:0 0;border:0;margin-top:18px;padding:0;line-height:1.25;animation:1.8s steps(2,end) infinite boot-tap-pulse}.boot-tap span{display:block}.boot-tap:focus-visible{outline:1px dashed var(--accent);outline-offset:6px}@keyframes boot-progress{to{width:var(--boot-progress)}}@keyframes boot-tap-pulse{0%,to{opacity:.78}50%{opacity:1}}@media (max-width:560px){.boot{padding:18px 14px;font-size:11px}.boot-check{grid-template-columns:minmax(14ch,1fr) auto;column-gap:6px;max-width:none}.boot-label{grid-area:1/1}.boot-status{grid-area:1/2}.boot-fill{display:none}.boot-progress{grid-area:2/1/auto/-1;width:min(180px,60vw);margin:2px 0 1px}}@media (max-width:380px){.boot{padding:16px 12px;font-size:10px}}.btn{letter-spacing:.1em;border:1px solid var(--accent);color:var(--accent);cursor:pointer;font-size:10px;font-family:var(--mono);background:0 0;align-items:center;gap:6px;padding:4px 10px;text-decoration:none;transition:background .12s,color .12s,box-shadow .12s;display:inline-flex}.btn:hover{background:var(--accent);color:#000;box-shadow:0 0 14px #ffb45a40}.btn:focus-visible{outline:1px dashed var(--accent);outline-offset:2px}.btn.primary{background:var(--accent);color:#000}.btn.primary:hover{background:var(--amber-2)}.btn:disabled{opacity:.55;cursor:default;box-shadow:none}.tag{letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--line-2);color:var(--ink-2);white-space:nowrap;align-items:center;gap:5px;padding:2px 6px;font-size:9px;display:inline-flex}.tag.live{color:var(--ok);border-color:var(--ok)}.tag.beta{color:var(--accent);border-color:var(--accent)}.tag.oss{color:var(--amber-2);border-color:var(--amber-2)}.tag.archived{color:var(--ink-3);border-color:var(--ink-3);text-decoration:line-through}.term-screen{background:#06080f;height:100%;padding:14px;font-size:12px;line-height:1.55;overflow-y:auto}.term-screen.nano-active{padding:0;overflow:hidden}.term-screen>div{white-space:pre-wrap;overflow-wrap:anywhere}.term-screen.nano-active>div{white-space:normal}.term-screen .prompt-line{align-items:baseline;min-height:1.55em;display:flex}.term-screen .prompt{color:var(--accent)}.term-screen .out{color:var(--ink)}.term-screen .err{color:var(--warn)}.term-screen input.cmd{color:var(--ink);font-family:var(--mono);caret-color:#0000;background:0 0;border:none;outline:none;min-width:0;max-width:calc(100% - 19ch);padding:0;font-size:12px}.nano-screen{height:100%;color:var(--ink);background:#02040a;outline:none;flex-direction:column;display:flex;overflow:hidden}.nano-titlebar,.nano-status,.nano-help{background:var(--accent);color:#000;font-family:var(--mono);flex:none;align-items:center;font-size:12px;line-height:1.35;display:flex}.nano-titlebar{justify-content:space-between;padding:2px 8px;font-weight:600}.nano-status{background:var(--ink-2);padding:2px 8px}.nano-help{flex-wrap:wrap;gap:24px;padding:3px 8px}.nano-buffer{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);font-family:var(--mono);background:#06080f;flex:1;margin:0;padding:10px 12px;font-size:12px;line-height:1.55;overflow:auto}.tape-label{background:var(--accent);color:#000;letter-spacing:.15em;padding:1px 6px;font-size:9px;font-weight:600;display:inline-block}.win-body{scrollbar-width:thin;scrollbar-color:var(--line-2) var(--bg-2)}.fade-in{opacity:0;animation:.3s ease-out forwards fadeIn}@keyframes fadeIn{to{opacity:1}}.doc-paper{border:1px solid var(--line-2);min-height:400px;color:var(--ink);background:#13162e;padding:24px;font-family:Inter,system-ui,sans-serif;font-size:11px;line-height:1.7}.doc-paper h1{color:var(--accent);letter-spacing:.05em;font-size:18px;font-family:var(--mono);margin:0 0 4px}.doc-paper h2{color:var(--accent);letter-spacing:.15em;text-transform:uppercase;font-size:11px;font-family:var(--mono);border-bottom:1px solid var(--line-2);margin:18px 0 8px;padding-bottom:4px}.doc-paper p{color:var(--ink-2);margin:0 0 8px}.doc-paper ul{color:var(--ink-2);margin:0 0 8px;padding-left:18px}.doc-paper li{margin-bottom:3px}.doc-paper .role{color:var(--ink);font-weight:500}.doc-paper .when{color:var(--ink-3);font-size:10px;font-family:var(--mono);float:right}
.bit-window{z-index:9000;background:var(--bg-2);border:1px solid var(--accent);width:340px;box-shadow:0 0 0 1px var(--bg), 0 18px 50px #000000b3;font-family:var(--mono);-webkit-user-select:none;user-select:none;flex-direction:column;display:flex;position:fixed;top:82px;left:auto;right:18px}.bit-window.dragging{transition:none}.bit-window.minimized{width:auto}.bit-header{background:var(--bg);border-bottom:1px solid var(--accent);height:24px;color:var(--accent);letter-spacing:.15em;cursor:move;touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:0 10px;font-size:10px;display:flex}.bit-header .led{background:var(--ok);width:7px;height:7px;box-shadow:0 0 6px var(--ok);border-radius:50%;animation:1.6s ease-in-out infinite bit-pulse}@keyframes bit-pulse{0%,to{opacity:1}50%{opacity:.45}}.bit-header .name{flex:1}.bit-header .ctrl{border:1px solid var(--accent);color:var(--accent);width:18px;height:14px;font-family:var(--mono);cursor:pointer;background:0 0;padding:0;font-size:9px;line-height:1}.bit-header .ctrl:hover{background:var(--accent);color:#000}.bit-stage{background:radial-gradient(ellipse at 50% 90%, #ffb45a1f, transparent 60%), repeating-linear-gradient(90deg, transparent 0 19px, #ffb45a0a 19px 20px), var(--bg);border-bottom:1px solid var(--line-2);height:140px;position:relative;overflow:hidden}.bit-stage:after{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#ffb45a06 0 1px,#0000 1px 4px);position:absolute;inset:0}.robot{cursor:pointer;width:76px;height:104px;animation:3.6s ease-in-out infinite bit-float;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.robot.poking{animation:.35s ease-out bit-poked}.robot.walking{animation:1.2s ease-in-out infinite bit-walk}@keyframes bit-float{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,-3px)}}@keyframes bit-poked{0%{transform:translate(-50%)}30%{transform:translate(-46%,4px)rotate(2deg)}60%{transform:translate(-54%,-2px)rotate(-2deg)}to{transform:translate(-50%)}}@keyframes bit-walk{0%,to{transform:translate(-50%)rotate(-1deg)}50%{transform:translate(-50%,-2px)rotate(1deg)}}.robot .antenna{background:var(--accent);width:2px;height:14px;position:absolute;top:-2px;left:50%;transform:translate(-50%)}.robot .antenna .ball{background:var(--ok);width:7px;height:7px;box-shadow:0 0 8px var(--ok);border-radius:50%;animation:1.4s ease-in-out infinite bit-pulse;position:absolute;top:-3px;left:50%;transform:translate(-50%)}.robot .head{background:var(--bg-3);border:2px solid var(--accent);width:48px;height:40px;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:inset -3px -4px #00000040,inset 2px 2px #ffffff26}.robot.tilt-l .head{transition:transform .3s;transform:translate(-50%)rotate(-4deg)}.robot.tilt-r .head{transition:transform .3s;transform:translate(-50%)rotate(4deg)}.robot .visor{background:#06080f;border:1px solid #000;justify-content:space-around;align-items:center;height:20px;display:flex;position:absolute;top:8px;left:6px;right:6px;overflow:hidden}.robot .eye{background:var(--ok);width:9px;height:9px;box-shadow:0 0 6px var(--ok);border-radius:50%;animation:4s infinite bit-blink}.robot .eye.r{animation-delay:50ms}@keyframes bit-blink{0%,93%,97%,to{transform:scaleY(1)}94%,96%{transform:scaleY(.1)}}.robot.thinking .eye{background:var(--accent);box-shadow:0 0 6px var(--accent);animation:1s infinite bit-think}@keyframes bit-think{0%,to{transform:scale(1)}50%{transform:scale(.6)}}.robot.happy .eye{border-radius:0;width:9px;height:3px}.robot.alert .eye{background:var(--warn);box-shadow:0 0 6px var(--warn);animation:.6s infinite bit-pulse-eye}@keyframes bit-pulse-eye{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.robot .mouth{background:#000;width:18px;height:3px;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.robot.talking .mouth{animation:.22s steps(2,end) infinite bit-talk}@keyframes bit-talk{0%{height:3px}to{height:5px}}.robot .bolt{background:#000;border-radius:50%;width:3px;height:3px;position:absolute;top:18px}.robot .bolt.l{left:2px}.robot .bolt.r{right:2px}.robot .neck{background:var(--ink-3);width:14px;height:6px;position:absolute;top:54px;left:50%;transform:translate(-50%);box-shadow:inset 0 -2px #0006}.robot .chassis{background:var(--bg-3);border:2px solid var(--accent);width:54px;height:32px;position:absolute;top:60px;left:50%;transform:translate(-50%);box-shadow:inset -3px -3px #0006,inset 2px 2px #ffb45a26}.robot .chassis .panel{border:1px solid var(--line-2);background:#06080f;justify-content:center;align-items:center;gap:3px;padding:0 4px;display:flex;position:absolute;inset:5px 6px}.robot .chassis .panel .led{background:var(--accent);border-radius:50%;width:5px;height:5px;animation:1.8s ease-in-out infinite bit-blip}@keyframes bit-blip{0%,to{opacity:.3}50%{opacity:1}}.robot .chassis .panel .led:nth-child(2){background:var(--ok);animation-delay:.3s}.robot .chassis .panel .led:nth-child(3){background:var(--warn);animation-delay:.6s}.robot .chassis .panel .led:nth-child(4){animation-delay:.9s}.robot .arm{background:var(--accent);width:6px;height:22px;position:absolute;top:64px;box-shadow:inset -1px 0 #0000004d}.robot .arm.l{transform-origin:top;animation:3s ease-in-out infinite bit-arm-sway;left:8px}.robot .arm.r{transform-origin:top;animation:3s ease-in-out infinite reverse bit-arm-sway;right:8px}.robot .arm .hand{background:var(--ink-3);width:8px;height:5px;position:absolute;bottom:-4px;left:-1px}@keyframes bit-arm-sway{0%,to{transform:rotate(0)}50%{transform:rotate(6deg)}}.robot.waving .arm.r{animation:.4s ease-in-out infinite bit-wave}@keyframes bit-wave{0%,to{transform:rotate(-30deg)}50%{transform:rotate(-60deg)}}.robot .treads{background:var(--bg-3);border:2px solid var(--accent);align-items:center;gap:2px;width:64px;height:14px;padding:0 3px;display:flex;position:absolute;bottom:0;left:50%;overflow:hidden;transform:translate(-50%)}.robot .treads .seg{background:repeating-linear-gradient(90deg, var(--accent) 0 3px, var(--bg-3) 3px 6px);flex:1;height:6px;animation:.6s linear infinite bit-roll}.robot.walking .treads .seg{animation-duration:.25s}@keyframes bit-roll{0%{background-position:0 0}to{background-position:-6px 0}}.bit-speech{background:var(--bg-2);border:1px solid var(--accent);max-width:170px;color:var(--ink);z-index:2;padding:6px 8px;font-size:10px;line-height:1.5;animation:.25s ease-out bit-pop-in;position:absolute;top:14px;left:14px}.bit-speech:after{content:"";border-top:5px solid #0000;border-bottom:5px solid #0000;border-left:6px solid var(--accent);width:0;height:0;position:absolute;bottom:14px;right:-6px}@keyframes bit-pop-in{0%{opacity:0;transform:translateY(4px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.bit-chat{flex-direction:column;height:280px;display:flex}.bit-log{scrollbar-width:thin;scrollbar-color:var(--line-2) var(--bg-2);flex:1;min-height:0;padding:10px;font-size:11px;line-height:1.5;overflow-y:auto}.bit-log::-webkit-scrollbar{width:6px}.bit-log::-webkit-scrollbar-track{background:var(--bg-2)}.bit-log::-webkit-scrollbar-thumb{background:var(--line-2)}.bit-msg{margin-bottom:8px;animation:.25s ease-out bit-fadeUp}@keyframes bit-fadeUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.bit-msg .who{letter-spacing:.18em;color:var(--ink-3);margin-bottom:2px;font-size:8px}.bit-msg.bit .who{color:var(--accent)}.bit-msg.you .who{color:var(--ok)}.bit-msg .text{color:var(--ink);white-space:pre-line}.bit-msg.bit .text{color:var(--ink)}.bit-msg.you .text{color:var(--ink-2)}.bit-typing{gap:3px;padding:4px 0;display:inline-flex}.bit-typing i{background:var(--accent);border-radius:50%;width:5px;height:5px;animation:1s ease-in-out infinite bit-typing}.bit-typing i:nth-child(2){animation-delay:.15s}.bit-typing i:nth-child(3){animation-delay:.3s}@keyframes bit-typing{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}.bit-suggest{border-top:1px dashed var(--line-2);flex-wrap:wrap;gap:4px;padding:6px 10px;display:flex}.bit-suggest .chip{font-family:var(--mono);letter-spacing:.05em;border:1px solid var(--line-2);color:var(--ink-2);cursor:pointer;background:0 0;padding:3px 7px;font-size:9px;transition:all .12s}.bit-suggest .chip:hover{border-color:var(--accent);color:var(--accent);background:#ffb45a0f}.bit-input{border-top:1px solid var(--line-2);background:var(--bg);align-items:center;gap:6px;padding:6px 10px;display:flex}.bit-input .ps{color:var(--accent);letter-spacing:.1em;font-size:10px}.bit-input input{color:var(--ink);font-family:var(--mono);caret-color:var(--accent);background:0 0;border:none;outline:none;flex:1;font-size:11px}.bit-input input::placeholder{color:var(--ink-3)}.bit-input button{background:var(--accent);color:#000;font-family:var(--mono);letter-spacing:.1em;cursor:pointer;border:none;padding:3px 8px;font-size:9px}.bit-input button:hover{background:var(--amber-2)}.bit-window .robot .head,.bit-window .robot .chassis{background-color:var(--accent)}.bit-dock{z-index:9000;flex-direction:column;align-items:flex-end;gap:9px;display:flex;position:fixed;bottom:80px;right:18px}.bit-dock-speech{background:var(--bg-2);border:1px solid var(--accent);max-width:236px;color:var(--ink);box-shadow:0 0 0 1px var(--bg), 0 12px 30px #0000008c;padding:7px 10px;font-size:10px;line-height:1.5;animation:.25s ease-out bit-pop-in;position:relative}.bit-dock-speech:after{content:"";border-left:5px solid #0000;border-right:5px solid #0000;border-top:6px solid var(--accent);width:0;height:0;position:absolute;bottom:-6px;right:24px}.bit-mini{cursor:pointer;background:var(--bg-2);border:1px solid var(--accent);place-items:center;width:60px;height:60px;padding:0;transition:box-shadow .15s;animation:3s ease-in-out infinite bit-float;display:grid;position:relative}.bit-mini:hover{box-shadow:0 0 18px #ffb45a4d}.bit-mini .robot{animation:none;bottom:-22px;transform:translate(-50%)scale(.58)}.bit-mini .robot .head,.bit-mini .robot .chassis{background-color:var(--accent)}
html,body{overscroll-behavior:none}button,input,textarea,select{font:inherit}button{color:inherit}code{color:var(--accent);font-family:var(--mono)}.boot-ready{color:var(--accent);margin-top:14px}.fkey{appearance:none;font-family:var(--mono);color:var(--accent);background:0 0;border:0}.app-stack{flex-direction:column;gap:12px;display:flex}.bio-pre{color:var(--ink);font-family:var(--mono);white-space:pre-wrap;margin:0;font-size:11px;line-height:1.7}.button-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.project-list,.skill-groups,.writing-list{gap:12px;display:grid}.skill-groups{grid-template-columns:repeat(auto-fill,minmax(min(360px,100%),1fr));align-items:start;gap:14px}.project-record{border:1px solid var(--line-2);background:#ffb45a06;padding:12px;transition:border-color .15s,background .15s}.project-record:hover{border-color:var(--accent);background:#ffb45a0d}.record-head{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.record-head h2,.skill-group h2,.writing-row h2{color:var(--ink);letter-spacing:0;margin:0;font-size:13px}.record-signal{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:7px 0 5px;font-size:10px}.record-role{color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase;margin:0 0 7px;font-size:10px}.record-date{color:var(--amber-2);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:10px}.stack-line{color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase;margin-top:8px;font-size:9px}.stack-line b{color:var(--ink-2);font-weight:500}.feature-chips{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.feature-chips span{border:1px dotted var(--line-2);color:var(--ink-2);letter-spacing:.06em;padding:1px 6px;font-size:9px}.evidence-list{color:var(--ink-2);margin:10px 0 0;padding-left:18px}.evidence-list li{margin:4px 0}.skill-group{border:1px solid var(--line-2);background:#ffb45a04;padding:10px 12px 6px}.skill-group h2{border-bottom:1px dashed var(--line-2);align-items:baseline;gap:8px;padding-bottom:8px;display:flex}.skill-count{color:var(--ink-3);letter-spacing:.08em;margin-left:auto;font-size:10px}.skill-legend{color:var(--ink-2);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;gap:6px 18px;margin:2px 0 12px;font-size:9px;display:flex}.skill-legend span{align-items:center;gap:6px;display:inline-flex}.skill-meter{gap:2px;display:inline-flex}.skill-meter i{border:1px solid var(--amber-dim);width:7px;height:10px}.skill-meter i.on{background:var(--accent);border-color:var(--accent)}.skill-level{flex-direction:column;align-items:flex-end;gap:5px;display:inline-flex}.skill-ledger-row{border-bottom:1px dotted var(--line);grid-template-columns:1fr auto;align-items:start;gap:12px;padding:10px 0;display:grid}.skill-ledger-row:last-child{border-bottom:0}.skill-ledger-row b{color:var(--accent);font-weight:500}.skill-ledger-row p,.writing-row p,.archive-lesson p{color:var(--ink-2);margin:3px 0 0}.writing-row{border-bottom:1px dashed var(--line-2);grid-template-columns:auto 1fr auto;align-items:start;gap:10px;padding:10px 0;display:grid}.writing-toggle{appearance:none;cursor:pointer;text-align:left;width:100%;color:inherit;font:inherit;background:0 0;border:0;justify-content:space-between;align-items:baseline;gap:10px;margin:0;padding:0;display:flex}.writing-toggle:hover h2{color:var(--accent)}.writing-toggle:focus-visible{outline:1px dashed var(--accent);outline-offset:3px}.writing-body{border-top:1px dotted var(--line);margin-top:8px;padding-top:8px}.writing-body p{color:var(--ink-2);margin:0 0 9px;line-height:1.65}.writing-body .button-row{margin-top:4px}.archive-copy{margin-bottom:10px}.archive-row{border-bottom:1px dashed var(--line-2);padding:8px 0}.archive-row>button{appearance:none;cursor:pointer;background:0 0;border:0;justify-content:space-between;width:100%;padding:0;display:flex}.archive-lesson{border:1px dotted var(--line-2);background:var(--bg-2);margin-top:8px;padding:10px}.intent-tabs{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.intent-tabs button{appearance:none;cursor:pointer;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line-2);color:var(--ink-2);background:0 0;padding:4px 10px;font-size:9px;transition:border-color .12s,color .12s,background .12s}.intent-tabs button:hover{border-color:var(--accent);color:var(--accent)}.intent-tabs button.active{border-color:var(--accent);background:var(--accent);color:#000}.intent-hint{color:var(--ink-3);margin:8px 0 0;font-size:10px}.contact-form{gap:10px;margin-top:12px;display:grid}.contact-form label{color:var(--accent);letter-spacing:.14em;gap:5px;font-size:9px;display:grid}.contact-form input,.contact-form textarea{appearance:none;border:1px solid var(--line-2);width:100%;color:var(--ink);caret-color:var(--accent);box-shadow:none;-webkit-text-fill-color:var(--ink);background-color:#06080f;border-radius:0;outline:none;padding:8px}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);color:var(--ink);-webkit-text-fill-color:var(--ink);background-color:#06080f}:is(.contact-form input:valid,.contact-form textarea:valid,.contact-form input:user-valid,.contact-form textarea:user-valid){color:var(--ink);-webkit-text-fill-color:var(--ink);background-color:#06080f}.contact-form input:-webkit-autofill{border-color:var(--line-2);-webkit-text-fill-color:var(--ink);caret-color:var(--accent);transition:background-color 9999s ease-in-out;box-shadow:inset 0 0 0 1000px #06080f}.contact-form input:-webkit-autofill:hover{border-color:var(--line-2);-webkit-text-fill-color:var(--ink);caret-color:var(--accent);transition:background-color 9999s ease-in-out;box-shadow:inset 0 0 0 1000px #06080f}.contact-form input:-webkit-autofill:focus{border-color:var(--line-2);-webkit-text-fill-color:var(--ink);caret-color:var(--accent);transition:background-color 9999s ease-in-out;box-shadow:inset 0 0 0 1000px #06080f}.contact-form textarea:-webkit-autofill{border-color:var(--line-2);-webkit-text-fill-color:var(--ink);caret-color:var(--accent);transition:background-color 9999s ease-in-out;box-shadow:inset 0 0 0 1000px #06080f}.contact-form textarea:-webkit-autofill:hover{border-color:var(--line-2);-webkit-text-fill-color:var(--ink);caret-color:var(--accent);transition:background-color 9999s ease-in-out;box-shadow:inset 0 0 0 1000px #06080f}.contact-form textarea:-webkit-autofill:focus{border-color:var(--line-2);-webkit-text-fill-color:var(--ink);caret-color:var(--accent);transition:background-color 9999s ease-in-out;box-shadow:inset 0 0 0 1000px #06080f}.contact-form textarea{resize:vertical;min-height:120px}.contact-form .hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.game-shell{flex-direction:column;gap:8px;height:100%;display:flex}.game-hud{color:var(--ink-2);letter-spacing:.08em;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:10px;display:flex}.game-hud .hearts{color:var(--warn);letter-spacing:.18em}.game-canvas-wrap{border:1px solid var(--accent);background:#06080f;flex:1;min-height:240px;position:relative;overflow:hidden}.game-canvas-wrap canvas{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;outline:none;position:absolute;inset:0}.game-won-actions{justify-content:center;gap:8px;display:flex;position:absolute;bottom:16px;left:0;right:0}.game-title-hit{appearance:none;cursor:pointer;background:0 0;border:0;padding:0;position:absolute;inset:0}.game-title-hit:focus-visible{outline:1px dashed var(--accent);outline-offset:-4px}.game-msg{min-height:1.4em;color:var(--accent);margin:0;font-size:11px}.game-controls{color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase;font-size:9px}.game-touch{justify-content:space-between;align-items:center;gap:8px;display:none}.game-touch .pad{grid-template-rows:repeat(2,46px);grid-template-columns:repeat(3,46px);gap:5px;display:grid}.game-touch button{appearance:none;border:1px solid var(--accent);background:var(--bg-2);color:var(--accent);font-family:var(--mono);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;font-size:14px}.game-touch button:active{background:var(--accent);color:#000}.game-touch .atk{letter-spacing:.1em;border-radius:50%;width:64px;height:64px;font-size:11px}.status-row span{white-space:nowrap}@media (pointer:coarse){.game-touch{display:flex}.game-controls,.bit-dock.yield,.bit-window.yield{display:none}}@media (max-width:860px){.status-header{padding-inline:8px}.status-row{gap:10px;overflow:hidden}.status-row span:nth-of-type(2),.status-row span:nth-of-type(3){display:none}.dock{justify-content:flex-start;gap:0;padding-inline:8px;overflow-x:auto}.window{max-width:calc(100vw - 16px);max-height:calc(100dvh - 150px)}.window.maximized{max-height:none;bottom:8px;right:8px;top:8px!important;left:8px!important}.bit-window{width:auto;bottom:124px;top:auto!important;left:8px!important;right:8px!important}.bit-window .bit-stage{height:96px}.bit-window .bit-chat{height:200px}.fkey-strip{margin-inline:-8px;overflow-x:auto}.fkey{flex:none}}.bio-body{gap:10px;max-width:72ch;display:grid}.bio-body p{margin:0;line-height:1.65}.doc-tabs{margin:0 0 12px}.doc-paper .doc-contact-line{font-family:var(--mono);letter-spacing:.08em;color:var(--ink-3);font-size:10px}.doc-role-line{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);font-size:10px}.cert-list{gap:10px;margin:14px 0;display:grid}.cert-row{appearance:none;width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;border:1px solid var(--line-2);background:#ffb45a05;grid-template-columns:auto 1fr auto;align-items:start;gap:12px;padding:10px 12px;transition:border-color .12s,background .12s;display:grid}.cert-row:hover{border-color:var(--accent);background:#ffb45a0d}.cert-row:hover .cert-open{color:var(--accent)}.cert-row:focus-visible{outline:1px dashed var(--accent);outline-offset:2px}.cert-row .tape-label{margin-top:2px}.cert-row p{margin:3px 0 0}.cert-open{color:var(--ink-3);font-family:var(--mono);letter-spacing:.12em;white-space:nowrap;align-self:center;font-size:9px;transition:color .12s}.cert-viewer{gap:10px;display:grid}.cert-frame{margin:0}.cert-frame img{border:1px solid var(--line-2);background:#fff;width:100%;height:auto;display:block}.cert-frame figcaption{color:var(--ink-2);margin-top:8px;font-size:11px;line-height:1.5}.cv-hunt-shell{gap:8px;display:grid}.cv-hunt-status{color:var(--ink-2);letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:10px;font-size:9px;display:flex}.cv-hunt-count{color:var(--accent);margin-left:auto}.cv-hunt{position:relative}@media (pointer:fine){.cv-hunt{cursor:none}}.cv-hunt-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.cv-bug{width:16px;height:13px;position:absolute;top:0;left:0}.cv-bug .shell{background:var(--bg);border:1px solid var(--warn);animation:.5s steps(2,end) infinite bug-scurry;position:absolute;inset:1px 2px 3px}.cv-bug .shell:after{content:"";background:var(--warn);opacity:.7;width:3px;position:absolute;top:1px;bottom:1px;right:1px}.cv-bug .feeler{background:var(--warn);width:1px;height:4px;position:absolute;top:-2px}.cv-bug .feeler.l{right:2px;transform:rotate(24deg)}.cv-bug .feeler.r{right:5px;transform:rotate(-14deg)}.cv-bug .legs{background:repeating-linear-gradient(90deg, var(--warn) 0 1px, transparent 1px 4px);height:3px;animation:.18s steps(2,end) infinite bug-legs;position:absolute;bottom:0;left:2px;right:2px}@keyframes bug-legs{to{background-position:2px 0}}@keyframes bug-scurry{0%{transform:translateY(0)}to{transform:translateY(-1px)}}.cv-bug.zap{animation:.4s steps(4,end) forwards bug-zap}.cv-bug.zap .shell{background:var(--ok);border-color:var(--ok);box-shadow:0 0 10px var(--ok);animation:none}.cv-bug.zap .legs{animation:none}@keyframes bug-zap{0%{filter:brightness(3)}50%{filter:brightness(.3)}to{filter:brightness(2)}}.cv-bug .ash-bits,.cv-bug.ash .shell,.cv-bug.ash .legs,.cv-bug.ash .feeler{display:none}.cv-bug.ash .ash-bits{background:#000;width:2px;height:2px;animation:1.3s ease-out forwards ash-settle;display:block;position:absolute;top:6px;left:7px;box-shadow:-4px 3px #2a2622,3px 3px #000,-1px 4px #3a332b,5px 4px #16130f,-5px 5px #241f1a,1px 5px #000}@keyframes ash-settle{0%{opacity:1;transform:translateY(-2px)}to{opacity:0;transform:translateY(3px)}}.cv-net{opacity:0;width:0;height:0;transition:opacity .12s;position:absolute;top:0;left:0}.cv-net .mesh{border:1px solid var(--ok);background:repeating-linear-gradient(0deg,#7af0c447 0 1px,#0000 1px 5px),repeating-linear-gradient(90deg,#7af0c447 0 1px,#0000 1px 5px);border-radius:50%;width:26px;height:26px;position:absolute;top:-13px;left:-13px;box-shadow:0 0 12px #7af0c459,inset 0 0 6px #7af0c433}.cv-net .grip{background:var(--amber-dim);transform-origin:0 0;width:3px;height:15px;position:absolute;top:9px;left:9px;transform:rotate(-45deg)}.cv-net.zapping .mesh{animation:.4s steps(3,end) net-zap}@keyframes net-zap{0%,to{box-shadow:0 0 12px #7af0c459}50%{border-color:#fff;box-shadow:0 0 22px #7af0c4e6,inset 0 0 10px #7af0c499}}@media (max-width:560px){.record-head,.skill-ledger-row,.writing-row{grid-template-columns:1fr}.record-head .tag,.skill-ledger-row .tag,.writing-row .tag{justify-self:start}.skill-level{flex-direction:row;align-items:center;gap:8px}.cert-row{grid-template-columns:1fr;gap:6px}.cert-open{justify-self:start}.doc-paper{padding:16px}}
