.os-layer{z-index:1000;pointer-events:none;--os-top:32px;--os-bottom:34px;position:fixed;inset:0}.os-layer.no-chrome{--os-top:0px;--os-bottom:0px}.os-layer>*{pointer-events:auto}.win{background:var(--panel);color:var(--fg);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 18px 50px #0000008c}.win-bar{background:var(--panel-bar);border-bottom:1px solid var(--border-soft);cursor:move;-webkit-user-select:none;user-select:none;color:var(--muted);flex:none;align-items:center;gap:8px;padding:5px 8px;font-size:.78rem;display:flex}.win-title{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.win-btns{gap:2px;display:flex}.win-btns button{width:26px;height:18px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:2px;font-family:inherit;font-size:.7rem;line-height:1}.win-btns button:hover{color:var(--fg-strong);background:#80808038}.win-btns button.x:hover{color:#fff;background:#c0392b}.win-body{flex:1;min-height:0;position:relative;overflow:hidden}.win-grip{z-index:5;position:absolute}.g-n{cursor:ns-resize;height:6px;top:-3px;left:8px;right:8px}.g-s{cursor:ns-resize;height:6px;bottom:-3px;left:8px;right:8px}.g-w{cursor:ew-resize;width:6px;top:8px;bottom:8px;left:-3px}.g-e{cursor:ew-resize;width:6px;top:8px;bottom:8px;right:-3px}.g-nw{cursor:nwse-resize;width:12px;height:12px;top:-3px;left:-3px}.g-ne{cursor:nesw-resize;width:12px;height:12px;top:-3px;right:-3px}.g-sw{cursor:nesw-resize;width:12px;height:12px;bottom:-3px;left:-3px}.g-se{cursor:nwse-resize;width:12px;height:12px;bottom:-3px;right:-3px}.term{background:var(--term-bg);height:100%;color:var(--term-fg);cursor:text;white-space:pre-wrap;word-break:break-word;padding:10px 12px;font-family:inherit;font-size:.82rem;line-height:1.15;overflow-y:auto}.term>*{min-height:1.15em;line-height:1.15;font-size:inherit;border:0;margin:0;padding:0;font-family:inherit}.term .out{color:var(--term-fg)}.term .in{color:var(--term-ok)}.term .err{color:var(--term-err)}.term .dim{color:var(--term-dim)}.term .ps1{color:var(--term-ok)}.term .ps1 .path{color:var(--term-dim)}.term-row{flex-wrap:nowrap;align-items:baseline;gap:0;min-width:0;display:flex}.term-input{min-width:0;color:inherit;font:inherit;font-size:inherit;line-height:inherit;height:auto;caret-color:var(--term-ok);background:0 0;border:none;outline:none;flex:auto;margin:0;padding:0}.desktop{z-index:900;background:linear-gradient(color-mix(in oklab, var(--fg) 2%, transparent), color-mix(in oklab, var(--fg) 2%, transparent)), var(--bg);color:var(--fg);background-position:50%;background-size:cover;position:fixed;inset:0;overflow:hidden}.desktop-topbar{background:var(--panel-bar);border-bottom:1px solid var(--border-soft);z-index:20;white-space:nowrap;align-items:center;gap:10px;height:32px;padding:0 8px;font-size:.76rem;display:flex;position:relative}.desktop-topbar>.small{text-overflow:ellipsis;min-width:0;overflow:hidden}.topbar-sep{background:var(--border-soft);align-self:stretch;width:1px;margin:7px 0}.topbar-right{align-items:center;gap:12px;margin-left:auto;display:flex}.topbar-clock{opacity:.75;font-variant-numeric:tabular-nums;letter-spacing:.05em}.start-btn{border:1px solid var(--border);color:var(--fg);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:7px;padding:2px 10px;font-family:inherit;font-size:.76rem;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.start-glyph{color:var(--accent)}.start-btn:hover,.start-btn.open{border-color:var(--accent-dim);color:var(--accent);background:color-mix(in oklab, var(--accent) 12%, transparent)}.start-scrim{z-index:1100;position:fixed;inset:0}.start-menu{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);z-index:1200;width:226px;max-height:62vh;padding:5px;animation:.12s ease-out menu-in;position:absolute;top:34px;left:6px;overflow:auto;box-shadow:0 18px 46px #0000008c}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)}}.start-menu button{text-align:left;width:100%;color:var(--fg);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:3px;align-items:center;gap:9px;padding:5px 7px;font-size:.8rem;display:flex}.start-menu button:hover{background:color-mix(in oklab, var(--accent) 13%, transparent);color:var(--accent)}.snap-preview{z-index:4000;pointer-events:none;border:2px solid var(--accent);border-radius:var(--radius);background:color-mix(in oklab, var(--accent) 16%, transparent);justify-content:center;align-items:center;transition:left 90ms,top 90ms,width 90ms,height 90ms;display:flex;position:fixed;box-shadow:inset 0 0 0 1px #ffffff24,0 0 0 9999px #0000000d}.snap-label{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-strong);background:color-mix(in oklab, var(--accent) 30%, #0000008c);border:1px solid var(--accent);border-radius:3px;padding:3px 8px;font-size:.7rem}.desktop-icons{position:absolute;inset:30px 0 34px}.dicon{width:92px;height:88px;color:var(--fg);border-radius:var(--radius);cursor:pointer;-webkit-user-select:none;user-select:none;text-align:center;background:0 0;border:1px solid #0000;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:.72rem;display:flex;position:absolute}.dicon:hover,.dicon.dragging{background:color-mix(in oklab, var(--accent) 8%, transparent);border-color:var(--border)}.dicon.is-selected{background:color-mix(in oklab, var(--accent) 18%, transparent);border-color:color-mix(in oklab, var(--accent) 55%, transparent)}.dicon.is-selected .glyph{border-color:var(--accent);color:var(--accent)}.select-band{z-index:3;pointer-events:none;border:1px solid color-mix(in oklab, var(--accent) 70%, transparent);background:color-mix(in oklab, var(--accent) 14%, transparent);position:absolute}.drop-ghost{z-index:2;pointer-events:none;border:1px dashed color-mix(in oklab, var(--accent) 60%, transparent);background:color-mix(in oklab, var(--accent) 8%, transparent);width:92px;height:88px;transition:left 90ms,top 90ms;position:absolute}.dicon .glyph,.start-menu .mglyph{letter-spacing:.03em;color:var(--fg);border:1px solid var(--border);background:color-mix(in oklab, var(--panel) 60%, transparent);border-radius:4px;justify-content:center;align-items:center;font-family:inherit;font-size:.72rem;line-height:1;transition:border-color .12s,box-shadow .12s;display:inline-flex}.dicon .glyph{width:38px;height:38px;box-shadow:inset 0 1px 0 color-mix(in oklab, var(--fg) 10%, transparent);font-size:.8rem}.dicon:hover .glyph,.dicon.dragging .glyph{border-color:var(--accent);color:var(--accent);box-shadow:inset 0 1px 0 color-mix(in oklab, var(--accent) 22%, transparent), 0 0 0 3px color-mix(in oklab, var(--accent) 10%, transparent)}.dicon span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:88px;color:color-mix(in oklab, var(--fg) 82%, transparent);overflow:hidden}.start-menu .mglyph{flex:none;width:28px;height:22px}.taskbar{background:var(--panel-bar);border-top:1px solid var(--border-soft);z-index:1100;scrollbar-width:none;align-items:center;gap:6px;height:34px;padding:0 8px;display:flex;position:absolute;bottom:0;left:0;right:0;overflow:auto hidden}.taskbar::-webkit-scrollbar{display:none}.taskbar>*{text-overflow:ellipsis;flex:none;max-width:45vw;overflow:hidden}.task{border:1px solid var(--border);color:var(--muted);cursor:grab;white-space:nowrap;background:0 0;border-radius:3px;align-items:center;gap:6px;padding:2px 8px;font-family:inherit;font-size:.74rem;display:flex}.task.active{color:var(--accent);border-color:var(--accent-dim)}.task.drop-target{outline:1px dashed var(--accent)}.app-pad{height:100%;padding:12px;font-size:.8rem;overflow:auto}.taskmgr table{border-collapse:collapse;width:100%;font-size:.78rem}.taskmgr td,.taskmgr th{text-align:left;border-bottom:1px solid var(--border-soft);padding:3px 6px}.dot{border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.dot.on{background:#5fd47d}.dot.off{background:#d05c5c}.editor-toolbar,.browser-toolbar{border-bottom:1px solid var(--border-soft);background:var(--panel-bar);align-items:center;gap:6px;padding:6px;display:flex}.editor-toolbar input,.browser-toolbar input{background:var(--term-bg);border:1px solid var(--border);color:var(--fg);font:inherit;border-radius:3px;outline:none;flex:1;padding:3px 6px;font-size:.76rem}.browser-tabs{background:var(--panel-bar);border-bottom:1px solid var(--border-soft);align-items:stretch;gap:2px;padding:4px 4px 0;display:flex;overflow-x:auto}.browser-tab{border:1px solid var(--border-soft);background:var(--panel);max-width:160px;color:var(--muted);cursor:default;white-space:nowrap;border-bottom:none;border-radius:3px 3px 0 0;align-items:center;gap:6px;padding:3px 6px;font-size:.72rem;display:flex}.browser-tab span{text-overflow:ellipsis;overflow:hidden}.browser-tab.is-active{background:var(--term-bg);color:var(--fg);border-color:var(--border)}.browser-tab button,.browser-newtab{color:inherit;font:inherit;cursor:pointer;opacity:.6;background:0 0;border:none;padding:0 4px;font-size:.7rem}.browser-tab button:hover,.browser-newtab:hover{opacity:1;color:var(--accent)}.browser-toolbar .mini-btn:disabled{opacity:.35;cursor:default}.browser-bookmarks{border-bottom:1px solid var(--border-soft);background:var(--panel);gap:4px;padding:4px 6px;display:flex;overflow-x:auto}.browser-bookmarks button{color:var(--muted);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:3px;padding:1px 6px;font-size:.7rem}.browser-bookmarks button:hover{color:var(--fg);border-color:var(--border-soft)}.browser-dial{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin-top:10px;display:grid}.browser-dial button{background:var(--panel);border:1px solid var(--border-soft);color:var(--fg);font:inherit;cursor:pointer;text-align:left;border-radius:4px;flex-direction:column;align-items:flex-start;gap:4px;padding:10px;font-size:.76rem;display:flex}.browser-dial button:hover{border-color:var(--accent)}.browser-dial span{color:var(--muted);font-size:.68rem}.editor-area{resize:none;background:var(--term-bg);width:100%;height:100%;color:var(--fg);font:inherit;border:none;outline:none;padding:10px;font-size:.82rem}.mini-btn{border:1px solid var(--border);color:var(--fg);cursor:pointer;background:0 0;border-radius:3px;padding:2px 8px;font-family:inherit;font-size:.74rem}.mini-btn:hover{border-color:var(--accent-dim);color:var(--accent)}.overlay-full{z-index:5000;color:#ddd;background:#000;justify-content:center;align-items:center;padding:24px;font-size:.9rem;display:flex;position:fixed;inset:0}.bsod{max-width:620px;line-height:1.8}.bsod h2{color:#fff;margin-bottom:14px;font-size:1.4rem}.kiosk-build{z-index:4500;background:var(--bg);background-image:radial-gradient(circle, var(--bg-dots,#ffffff0d) 1px, transparent 1px);color:var(--fg);background-size:40px 40px;position:fixed;inset:0;overflow:hidden}.kb-guides{pointer-events:none;background:linear-gradient(to right, transparent calc(50% - 325px), color-mix(in oklab, var(--accent) 28%, transparent) calc(50% - 325px), color-mix(in oklab, var(--accent) 28%, transparent) calc(50% - 324px), transparent calc(50% - 324px), transparent calc(50% + 324px), color-mix(in oklab, var(--accent) 28%, transparent) calc(50% + 324px), color-mix(in oklab, var(--accent) 28%, transparent) calc(50% + 325px), transparent calc(50% + 325px));opacity:.7;transition:opacity .5s;position:absolute;inset:0}.kiosk-build.is-settle .kb-guides{opacity:0}.kb-page{transform-origin:50% 20%;max-width:650px;height:100%;margin:0 auto;padding:20px;overflow:hidden}.kiosk-build.is-settle .kb-page{animation:.62s cubic-bezier(.2,.85,.2,1) forwards kb-settle}@keyframes kb-settle{0%{filter:blur(.3px);transform:scale(1.008)}60%{filter:none;transform:scale(.998)}to{filter:none;transform:scale(1)}}.kb-el,.kb-row{opacity:0;animation:.32s cubic-bezier(.2,.9,.2,1) forwards kb-place;animation-delay:calc(var(--kb-i) * 34ms);position:relative;transform:translateY(6px)}.kb-row{flex-wrap:wrap;gap:20px;display:flex}@keyframes kb-place{to{opacity:1;transform:translateY(0)}}.kb-word{display:inline-block;position:relative}.kb-bar{background:color-mix(in oklab, var(--fg) 12%, transparent);box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--accent) 22%, transparent);border-radius:2px;display:block;position:absolute;inset:.18em 0;overflow:hidden}.kb-bar:after{content:"";background:linear-gradient(100deg, transparent 20%, color-mix(in oklab, var(--accent) 30%, transparent) 50%, transparent 80%);animation:1.1s linear infinite kb-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes kb-shimmer{to{transform:translate(100%)}}.kb-ink{clip-path:inset(0 100% 0 0);font-style:normal;display:block}.kiosk-build.is-type .kb-ink,.kiosk-build.is-settle .kb-ink{animation:.42s cubic-bezier(.4,0,.1,1) forwards kb-wipe;animation-delay:calc(var(--kb-i) * 78ms)}@keyframes kb-wipe{to{clip-path:inset(0)}}.kiosk-build.is-type .kb-bar,.kiosk-build.is-settle .kb-bar{animation:.3s forwards kb-burn;animation-delay:calc(var(--kb-i) * 78ms + .22s)}@keyframes kb-burn{to{opacity:0;transform:scaleY(.6)}}.kb-page .kb-brand .kb-ink{color:var(--accent);font-size:1rem;font-weight:700}.kb-nav{gap:20px;margin-top:4px;font-size:.9rem}.kb-nav .kb-ink{color:var(--fg);opacity:.85}.kb-rule{background:var(--border,color-mix(in oklab, var(--fg) 20%, transparent));transform-origin:0;height:1px;animation:.4s forwards kb-rule-draw;animation-delay:calc(var(--kb-i) * 34ms);margin:18px 0 30px;transform:scaleX(0)}@keyframes kb-rule-draw{to{transform:scaleX(1)}}.kb-h1 .kb-ink{margin:6px 0;font-size:1.7rem;font-weight:700;line-height:1.3}.kb-h2 .kb-ink{color:var(--accent);margin:22px 0 8px;font-size:1.2rem;font-weight:700}.kb-h3 .kb-ink{margin:14px 0 4px;font-size:1rem;font-weight:700}.kb-p .kb-ink,.kb-small .kb-ink{margin:6px 0;font-size:.86rem;line-height:1.7}.kb-small .kb-ink{opacity:.6;font-size:.78rem}.kb-btn{display:inline-block}.kb-btn .kb-ink{border:1px solid var(--border,color-mix(in oklab, var(--fg) 24%, transparent));color:var(--accent);margin:6px 0 10px;padding:2px 8px;font-size:.8rem;display:inline-block}.kb-foot{opacity:.65;margin-top:12px;font-size:.78rem}.kb-sweep{pointer-events:none;background:linear-gradient(to bottom, transparent, color-mix(in oklab, var(--accent) 12%, transparent), transparent);opacity:0;height:22vh;position:absolute;top:0;left:0;right:0}.kiosk-build.is-type .kb-sweep{animation:2.2s cubic-bezier(.4,0,.4,1) forwards kb-sweep}@keyframes kb-sweep{0%{opacity:.9;transform:translateY(-30vh)}90%{opacity:.5}to{opacity:0;transform:translateY(110vh)}}@keyframes kb-blink{50%{opacity:.2}}.duckfight.is-hurt{animation:.22s steps(2,end) duck-shake}@keyframes duck-shake{50%{transform:translate(6px,-4px)}}.duck-hit{animation:.22s steps(2,end) duck-hit!important}@keyframes duck-hit{50%{filter:invert();transform:scale(1.08)}}.duck-hp{width:min(420px,78vw);position:relative}.duck-hp-label{opacity:.85;justify-content:space-between;margin-bottom:4px;font-size:.72rem;display:flex}.duck-hp-track{background:#00000073;border:1px solid #ffd9a066;height:8px}.duck-hp-fill{background:linear-gradient(90deg,#ffb347,#ff6a00);height:100%;transition:width .18s linear}.duck-log{text-align:left;opacity:.85;width:min(420px,78vw);min-height:96px;font-size:.7rem;line-height:1.25;position:relative;overflow:hidden}.duck-log-cmd{color:#ffd9a0;font-weight:600}.duck-weapons{flex-wrap:wrap;justify-content:center;gap:8px;display:flex;position:relative}.duck-give-up{animation:1.4s ease-in-out infinite duck-pulse}@keyframes duck-pulse{50%{opacity:.55}}.kiosk-open{z-index:4400;background:var(--bg);pointer-events:none;animation:.9s cubic-bezier(.2,.8,.2,1) forwards kiosk-open;position:fixed;inset:0}@keyframes kiosk-open{0%{clip-path:inset(46% round 12px);opacity:1}to{clip-path:inset(0);opacity:0}}.spin-root{transform-origin:50%}.spin-stage{z-index:900;transform-origin:50%;pointer-events:none;position:fixed;inset:0}.spin-kiosk{z-index:4500;transform-origin:50%;pointer-events:none;position:fixed;inset:0}.win-spin{transform-origin:50%;will-change:transform}.spin-cw{animation:2s linear infinite site-spin}.spin-ccw{animation:2s linear infinite reverse site-spin}html[data-spin=on],html[data-spin=on] body{overflow:hidden}@keyframes site-spin{to{transform:rotate(360deg)}}.theme-panel{z-index:4300;background:var(--panel);border-right:1px solid var(--border);width:240px;padding:14px;font-size:.78rem;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.theme-panel label{color:var(--muted);justify-content:space-between;align-items:center;margin:10px 0;display:flex}.theme-panel input[type=color]{border:1px solid var(--border);background:0 0;width:46px;height:24px;padding:0}.duckfight{z-index:5200;color:#ffd9a0;text-align:center;background:radial-gradient(circle at 50% 90%,#4a1200 0%,#170500 55%,#000 100%);flex-direction:column;justify-content:center;align-items:center;gap:14px;font-size:.85rem;display:flex;position:fixed;inset:0;overflow:hidden}.duckfight .flames{filter:blur(2px);background:linear-gradient(#f000 15%,#ff6e00d9);height:34%;animation:.35s steps(2,end) infinite flicker;position:absolute;bottom:0;left:0;right:0}@keyframes flicker{50%{opacity:.72;transform:scaleY(1.06)}}.crack{z-index:5100;pointer-events:none;background-image:linear-gradient(115deg,#0000 49.6%,#ffffffd9 50%,#0000 50.4%),linear-gradient(65deg,#0000 49.7%,#fff9 50%,#0000 50.3%),linear-gradient(10deg,#0000 49.8%,#ffffff80 50%,#0000 50.2%);animation:.8s ease-out forwards crack-in;position:fixed;inset:0}@keyframes crack-in{0%{opacity:0;transform:scale(1.4)}to{opacity:1;transform:scale(1)}}.duck-big{color:var(--accent);white-space:pre;-webkit-user-select:none;user-select:none;pointer-events:none;font-size:.7rem;line-height:1.05;animation:1.6s ease-in-out infinite alternate duck-hover}@keyframes duck-hover{to{transform:translateY(-8px)}}.escape-float{z-index:4600;position:fixed;top:12px;right:12px}.mercy{z-index:5300;background:#000000d1;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.mercy .box{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);max-width:460px;padding:18px;font-size:.85rem}.mobile-warn{z-index:5400;background:#000000e6;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.mobile-warn .box{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);max-width:420px;padding:18px;font-size:.85rem}.win-bar,.win-grip,.dicon,.task,.term{overscroll-behavior:contain;-webkit-text-size-adjust:100%}@media (width<=760px){.win-grip{display:none}.win-bar{padding:8px;font-size:.8rem}.win-btns button{width:34px;height:26px;font-size:.8rem}.term{padding:8px 10px;font-size:16px}.desktop-topbar{gap:8px;font-size:.72rem}.desktop-topbar>.small{display:none}.dicon{width:76px;height:78px;font-size:.68rem}.desktop-icons{inset:30px 0 40px}.taskbar{height:40px}.os-layer{--os-bottom:40px}.task{padding:5px 10px}.start-menu button{padding:8px}.theme-panel{width:100%}.mobile-warn .box,.mercy .box{font-size:.82rem}}.geo-controls{border-top:1px solid var(--border);background:var(--panel);flex-direction:column;gap:6px;padding:8px 10px;display:flex}.geo-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.geo-row label{align-items:center;gap:6px;display:inline-flex}.geo-row input[type=color]{border:1px solid var(--border);cursor:pointer;background:0 0;width:28px;height:20px;padding:0}.geo-row input[type=range]{width:110px;accent-color:var(--accent)}.geo-val{min-width:42px}.geo-controls .mini-btn[data-active]{border-color:var(--accent);color:var(--accent)}.paint{background:var(--panel);flex-direction:column;height:100%;display:flex}.paint-bar{border-bottom:1px solid var(--border-soft);background:var(--panel-bar);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 8px;font-size:.72rem;display:flex}.paint-bar label{align-items:center;gap:5px;display:inline-flex}.paint-bar input[type=range]{width:84px;accent-color:var(--accent)}.paint-bar input[type=color]{border:1px solid var(--border);cursor:pointer;background:0 0;width:26px;height:20px;padding:0}.paint-bar .mini-btn[data-active]{border-color:var(--accent);color:var(--accent)}.paint-bar .mini-btn:disabled{opacity:.35;cursor:default}.paint-tools{gap:4px;display:flex}.paint-tool{text-align:center;min-width:46px;padding:2px 6px}.paint-sep{background:var(--border-soft);align-self:stretch;width:1px}.paint-swatches{gap:3px;display:flex}.swatch{border:1px solid var(--border);cursor:pointer;border-radius:2px;width:16px;height:16px;padding:0}.paint-stage{background:repeating-conic-gradient(var(--term-bg) 0% 25%, transparent 0% 50%) 50% / 16px 16px;flex:1;place-items:center;min-height:0;padding:10px;display:grid;overflow:auto}.paint-canvas-wrap{box-shadow:0 0 0 1px var(--border);max-width:100%;line-height:0;position:relative}.paint-canvas-wrap canvas{touch-action:none;cursor:crosshair;max-width:100%;height:auto;display:block}.paint-overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.paint-status{border-top:1px solid var(--border-soft);color:var(--fg-dim);gap:14px;padding:4px 10px;font-size:.68rem;display:flex}.manual{background:var(--panel);height:100%;min-height:0;font-size:.8rem;line-height:1.6;display:flex}.manual-nav{border-right:1px solid var(--border-soft);background:color-mix(in srgb, var(--bg) 45%, transparent);flex:0 0 190px;width:190px;padding:12px 10px;overflow:auto}.manual-search{background:var(--bg);border:1px solid var(--border-soft);width:100%;color:inherit;font:inherit;outline:none;padding:4px 6px;font-size:.72rem}.manual-search:focus{border-color:var(--accent)}.manual-nav-label{letter-spacing:.14em;text-transform:uppercase;opacity:.5;margin:12px 0 6px;font-size:.62rem}.manual-nav ul{margin:0;padding:0;list-style:none}.manual-nav button{text-align:left;width:100%;color:inherit;font:inherit;cursor:pointer;opacity:.75;background:0 0;border:0;border-left:2px solid #0000;gap:8px;padding:4px 6px;font-size:.74rem;display:flex}.manual-nav button:hover:not(:disabled){opacity:1;background:color-mix(in srgb, var(--accent) 10%, transparent)}.manual-nav button:disabled{opacity:.25;cursor:default}.manual-nav button.is-active{opacity:1;border-left-color:var(--accent);color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.manual-nav-num{opacity:.5}.manual-body{flex:1;min-width:0;padding:16px 22px 26px;overflow:auto}.manual-crumb{letter-spacing:.08em;text-transform:uppercase;opacity:.45;font-size:.64rem}.manual-title{color:var(--accent);margin:6px 0 14px;font-size:.95rem}.manual-body p{max-width:68ch;margin:0 0 10px}.manual-pager{border-top:1px solid var(--border-soft);align-items:center;gap:10px;margin-top:20px;padding-top:12px;display:flex}.manual-count{opacity:.5;font-size:.68rem}.manual-pager .mini-btn:disabled{opacity:.3;cursor:default}.paint-text-draft{z-index:5;align-items:flex-start;gap:4px;display:flex;position:absolute}.paint-text-draft textarea{background:color-mix(in srgb, var(--bg) 70%, transparent);border:1px dashed var(--accent);color:inherit;resize:both;outline:none;min-width:6ch;padding:0 2px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;line-height:1.2}.paint-text-grip{cursor:move;border:1px solid var(--border);background:var(--bg);-webkit-user-select:none;user-select:none;touch-action:none;padding:2px 4px;font-size:.6rem;line-height:1}[data-theme=aero] .win{background:var(--panel);border:1px solid #0a9bb5;border-radius:8px;box-shadow:0 16px 40px #00283766,0 0 0 1px #00d2e68c,0 0 22px #00d2e673,inset 0 0 0 1px #fff}[data-theme=aero] .win-bar{background:var(--aero-sheen);color:var(--fg-strong);border-bottom:1px solid #3ec2d4;padding:6px 8px}[data-theme=aero] .win-btns button{color:var(--fg);background:linear-gradient(#fff 0%,#c8f2f8 48%,#79dcea 52%,#d9f9fd 100%);border:1px solid #2ab3c8;border-radius:4px}[data-theme=aero] .win-btns button:hover{color:var(--fg-strong);background:linear-gradient(#fff 0%,#8bf0ff 48%,#34d6f0 52%,#b6f7ff 100%);border-color:#00d2e6}[data-theme=aero] .win-btns button.x:hover{color:#fff;background:linear-gradient(#f7a89c 0%,#e2554a 50%,#c93a2f 51%,#ec7566 100%);border-color:#b8382c}[data-theme=aero] .term{background:var(--term-bg)}[data-theme=aero] .desktop-topbar,[data-theme=aero] .taskbar{background:linear-gradient(#fff 0%,#bdeff7 46%,#5cd2e6 54%,#d2f7fd 100%);border-color:#3ec2d4;box-shadow:inset 0 1px #fff}[data-theme=aero] .start-btn,[data-theme=aero] .mini-btn,[data-theme=aero] .task{color:var(--fg);background:linear-gradient(#fff 0%,#c8f2f8 48%,#79dcea 52%,#d9f9fd 100%);border:1px solid #2ab3c8;border-radius:5px}[data-theme=aero] .start-btn:hover,[data-theme=aero] .mini-btn:hover,[data-theme=aero] .task:hover{color:var(--fg-strong);background:linear-gradient(#fff 0%,#8bf0ff 48%,#34d6f0 52%,#b6f7ff 100%);border-color:#00d2e6}[data-theme=aero] .start-menu{background:#e6fcff;border:1px solid #0a9bb5;border-radius:8px;box-shadow:0 18px 44px #0028376b,0 0 20px #00d2e673,inset 0 0 0 1px #fff}[data-theme=aero] .start-menu button:hover{background:linear-gradient(#b6f7ff,#4fd3ea);border-radius:4px}[data-theme=aero] .dicon .glyph,[data-theme=aero] .start-menu .mglyph{color:var(--fg);background:linear-gradient(#fff 0%,#c8f2f8 50%,#79dcea 51%,#d9f9fd 100%);border:1px solid #2ab3c8;border-radius:6px}[data-theme=aero] .dicon:hover .glyph{color:var(--fg-strong);background:linear-gradient(#fff 0%,#8bf0ff 50%,#34d6f0 51%,#b6f7ff 100%);border-color:#00d2e6}[data-theme=aero] .dicon span:last-child{text-shadow:0 1px 2px #ffffffe6}[data-theme=aero] .snap-preview{background:linear-gradient(#c9fbff,#2ecbe8);border:1px solid #00d2e6;border-radius:8px}[data-theme=aero] .desktop{background-color:#0000;background-image:radial-gradient(1200px 640px at 50% -12%,#b6ffef,#0000 62%),radial-gradient(950px 560px at 104% 100%,#0e7fb8,#0000 60%),radial-gradient(800px 500px at 0 90%,#16d6b5,#0000 62%),linear-gradient(160deg,#3fdcd2 0%,#1cadc4 46%,#10709f 100%);background-position:50%;background-repeat:repeat,repeat,repeat,repeat;background-size:cover;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box}[data-theme=aero] .win-bar{box-shadow:inset 0 1px #fff,inset 0 -1px #0096af59}[data-theme=aero] .snap-preview{box-shadow:0 0 26px #00d2e699,inset 0 1px #fff}.duck-roam{will-change:transform;transition:transform .85s cubic-bezier(.34,1.2,.64,1);position:relative}.duckfight.is-friend{background:radial-gradient(circle at 50% 80%,#2a1c00 0%,#120a00 55%,#000 100%)}.duck-friend{filter:drop-shadow(0 0 12px color-mix(in oklab, var(--accent) 55%, transparent));animation:2.4s ease-in-out infinite alternate duck-hover}.browser-blocked-note{color:var(--muted);background:var(--panel);border:1px solid var(--border-soft);pointer-events:auto;border-radius:3px;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;font-size:.68rem;display:flex;position:absolute;bottom:8px;left:8px;right:8px}.ctx-scrim{z-index:900;position:fixed;inset:0}.ctx-scrim.is-modal{background:#00000073;justify-content:center;align-items:center;display:flex}.ctx-menu{z-index:901;background:var(--panel);border:1px solid var(--border);flex-direction:column;min-width:178px;padding:4px;display:flex;position:fixed;box-shadow:0 8px 24px #00000073}.ctx-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border-soft);text-overflow:ellipsis;white-space:nowrap;margin-bottom:3px;padding:4px 8px 5px;font-size:.64rem;overflow:hidden}.ctx-menu button{text-align:left;color:var(--fg);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:.74rem}.ctx-menu button:hover{background:var(--accent);color:var(--bg)}.ctx-sep{background:var(--border-soft);height:1px;margin:3px 0}.ctx-props{background:var(--panel);border:1px solid var(--border);width:min(360px,90%);box-shadow:0 10px 30px #00000080}.ctx-props-head{background:var(--panel-bar);border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:8px;padding:5px 8px;font-size:.74rem;display:flex}.ctx-props dl{margin:0;padding:8px 10px 12px;font-size:.74rem}.ctx-props dl>div{border-bottom:1px dotted var(--border-soft);gap:10px;padding:3px 0;display:flex}.ctx-props dt{width:90px;color:var(--muted);flex:none}.ctx-props dd{word-break:break-all;margin:0}.browser-tab.is-drop{outline:1px dashed var(--accent);outline-offset:-2px}.ctx-props.is-window{z-index:6000;width:380px;max-width:92vw;position:fixed}.ctx-props.is-window .ctx-props-head{cursor:move;-webkit-user-select:none;user-select:none}.search-page{background:var(--bg);flex:1;min-height:0;padding:14px 16px 20px;overflow:auto}.search-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;padding-bottom:8px;display:flex}.search-head strong{color:var(--accent)}.search-hits{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.search-hits li{flex-direction:column;gap:2px;animation:.22s both fade-in;display:flex}.search-hit-title{text-align:left;font:inherit;color:var(--accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;text-decoration:underline}.search-hit-url{color:color-mix(in oklab, var(--fg) 55%, transparent);font-size:.68rem}.search-hits p{color:color-mix(in oklab, var(--fg) 82%, transparent);margin:2px 0 0;font-size:.74rem;line-height:1.45}.search-skel{flex-direction:column;gap:16px;display:flex}.search-skel-row{flex-direction:column;gap:6px;animation:1s steps(2,end) infinite kb-blink;display:flex}.search-skel-row span{background:color-mix(in oklab, var(--fg) 12%, transparent);height:9px}.search-skel-row span:first-child{width:42%}.search-skel-row span:last-child{width:78%;height:7px}.search-home{flex-direction:column;flex:1;align-items:center;gap:14px;min-height:0;padding:42px 18px 24px;display:flex;overflow:auto}.search-home-mark{letter-spacing:.16em;text-transform:lowercase;color:var(--accent);font-size:1.2rem}.search-home-form{gap:8px;width:min(460px,100%);display:flex}.search-home-form input{min-width:0;font:inherit;color:var(--fg);background:color-mix(in oklab, var(--fg) 5%, transparent);border:1px solid var(--border);border-radius:999px;outline:none;flex:1;padding:7px 14px;font-size:.82rem}.search-home-form input:focus{border-color:var(--accent)}.search-home .browser-dial{width:min(560px,100%)}.inception-duck{z-index:9999;pointer-events:none;align-items:flex-end;gap:8px;animation:.9s cubic-bezier(.2,.9,.2,1) both duck-fly-in;display:flex;position:fixed;bottom:14px;right:14px}.inception-duck-say{max-width:260px;color:var(--fg);background:color-mix(in oklab, var(--panel) 92%, transparent);border:1px solid var(--border);border-radius:10px;padding:8px 10px;font-size:.72rem;line-height:1.45;animation:.35s ease-out .5s both fade-in;box-shadow:0 8px 24px #00000047}.inception-duck-art{color:var(--accent);margin:0;font-size:.7rem;line-height:1.05;animation:.42s ease-in-out infinite alternate duck-flap}@keyframes duck-fly-in{0%{opacity:0;transform:translate(60vw,-35vh)rotate(-14deg)}to{opacity:1;transform:translate(0)rotate(0)}}@keyframes duck-flap{0%,to{transform:scaleX(1)scaleY(1)}50%{transform:scaleX(.82)scaleY(1.1)}}.app-glyph{justify-content:center;align-items:center;display:inline-flex}.dicon .glyph svg{width:24px;height:24px}.start-menu .mglyph svg{width:15px;height:15px}:root,[data-theme=default]{--bg:#111;--bg-dots:#ffffff05;--fg:#ccc;--fg-strong:#fff;--muted:#888;--faint:#666;--border:#333;--border-soft:#222;--accent:#e8c87a;--accent-dim:#c4a85e;--link:#6cf;--panel:#181818;--panel-bar:#202020;--term-bg:#0b0b0b;--term-fg:#d6d6d6;--term-dim:color-mix(in srgb, var(--term-fg) 55%, var(--term-bg));--term-faint:color-mix(in srgb, var(--term-fg) 32%, var(--term-bg));--term-err:#ff6b5e;--term-ok:var(--accent);--radius:4px}[data-theme=green]{--bg:#0a0f0a;--bg-dots:#78ff9609;--fg:#c3d8c3;--fg-strong:#eaffea;--muted:#6f8f74;--faint:#4f6a54;--border:#1e3322;--border-soft:#16261a;--accent:#7dff9b;--accent-dim:#4fb96a;--link:#9ef7c0;--panel:#0e170f;--panel-bar:#132018;--term-bg:#060a06;--term-fg:#b7f3c2}[data-theme=red]{--bg:#120a0a;--bg-dots:#ff787809;--fg:#d8c3c3;--fg-strong:#ffeaea;--muted:#96716f;--faint:#6d4c4c;--border:#351f1f;--border-soft:#261616;--accent:#ff6b5e;--accent-dim:#c04a40;--link:#ff9c8f;--panel:#170e0e;--panel-bar:#201313;--term-bg:#0a0505;--term-fg:#f0c9c4;--term-err:#ff3b2c}[data-theme=cyan]{--bg:#081113;--bg-dots:#78ebff09;--fg:#bfd8dc;--fg-strong:#e8feff;--muted:#6c8f96;--faint:#4d6a70;--border:#17333a;--border-soft:#112529;--accent:#58e6ff;--accent-dim:#3aa8bd;--link:#9bf0ff;--panel:#0c181b;--panel-bar:#102227;--term-bg:#04090a;--term-fg:#b6ecf5}[data-theme=light]{--bg:#f7f6f2;--bg-dots:#0000000b;--fg:#2b2b2b;--fg-strong:#000;--muted:#6b6b6b;--faint:#8a8a8a;--border:#d6d3c9;--border-soft:#e5e2da;--accent:#a2761c;--accent-dim:#8a6316;--link:#14607f;--panel:#fff;--panel-bar:#ebe8e0;--term-bg:#fbfaf6;--term-fg:#23282b;--term-err:#b3261e}[data-theme=aero]{--bg:#34c6c9;--bg-dots:#ffffff29;--fg:#04303a;--fg-strong:#001a22;--muted:#0a4d59;--faint:#1f6b76;--border:#0aa5b8;--border-soft:#63d8dd;--accent:#094a63;--accent-dim:#0b3a4d;--link:#0a3f6b;--panel:#ddfaff;--panel-bar:#a8ecf2;--term-bg:#eafdff;--term-fg:#04303a;--term-err:#b3231a;--radius:8px;--aero-sheen:linear-gradient(180deg, #fff 0%, #b9f0f5 46%, #66d9e4 54%, #cdf7fa 100%)}[data-theme=aero] body{background-image:radial-gradient(900px 420px at 16% -18%,#befff08c,#0000 58%),radial-gradient(1000px 560px at 104% 6%,#0f92cf,#0000 56%),radial-gradient(900px 620px at 50% 122%,#0fb89d,#0000 60%),linear-gradient(160deg,#21c9c4 0%,#128fb4 48%,#0b5f97 100%);background-attachment:fixed}[data-theme=aero] .page>*{text-shadow:0 1px #ffffff59}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg)}body{background-color:var(--bg);background-image:radial-gradient(circle, var(--bg-dots) 1px, transparent 1px);color:var(--fg);background-size:40px 40px;font-family:JetBrains Mono,Fira Code,Cascadia Code,IBM Plex Mono,monospace;line-height:1.7;overflow-x:hidden}.page{max-width:650px;margin:0 auto;padding:20px}header.site{border-bottom:1px solid var(--border);margin-bottom:40px;padding-bottom:20px}nav.site{flex-wrap:nowrap;align-items:center;gap:14px;display:flex}.nav-links{flex-wrap:nowrap;flex:auto;align-items:center;gap:8px 20px;min-width:0;display:flex;overflow:hidden}.nav-links>*{white-space:nowrap;flex:none}.nav-side{flex:none;align-items:center;gap:10px;margin-left:auto;display:flex}.nav-github{border:1px solid var(--border);color:var(--muted);border-radius:2px;justify-content:center;align-items:center;padding:5px;transition:color .15s,border-color .15s;display:inline-flex}.nav-github:hover{color:var(--accent);border-color:var(--accent)}.nav-short{display:none}nav.site a{color:var(--muted);text-decoration:none;transition:color .2s}nav.site a:hover,nav.site .nav-links a[data-active]{color:var(--accent)}main section{margin-bottom:35px}h1{color:var(--fg-strong);margin-bottom:15px;font-size:1.6rem}h2{color:var(--accent);margin-bottom:10px;font-size:1.1rem}h3{color:var(--fg);margin-top:15px;margin-bottom:8px;font-size:1rem}h4{color:var(--fg);margin-top:12px;margin-bottom:8px;font-size:.95rem}p{margin-bottom:10px}p.small,.small{color:var(--muted);font-size:.85rem}strong{color:var(--accent)}a{color:var(--link);transition:color .2s}a:hover{color:var(--accent)}ul{margin-bottom:10px;margin-left:20px}li{margin-bottom:5px}ul.plain{margin-left:0;list-style:none}ul.plain li{align-items:baseline;gap:10px;display:flex}.yes{color:#6ec46e}[data-theme=light] .yes{color:#2f7a2f}.no{color:#d06c6c}.project{border-left:2px solid var(--border);margin-bottom:24px;padding-left:16px;transition:border-color .2s}.project:hover{border-left-color:var(--accent)}.project h3{margin-top:0}.project p{margin-bottom:6px}.btn{color:var(--accent-dim);border:1px solid var(--accent-dim);border-radius:var(--radius);cursor:pointer;background:0 0;padding:5px 14px;font-family:inherit;font-size:.85rem;text-decoration:none;transition:background .2s,color .2s;display:inline-block}.btn:hover{background:var(--accent);color:var(--bg)}.blog-post{border-bottom:1px solid var(--border-soft);margin-bottom:28px;padding-bottom:20px}.blog-post:last-child{border-bottom:none}.blog-post h2{margin-bottom:4px}.blog-post h2 a{text-decoration:none}.blog-post h2 a:hover{text-decoration:underline}.post-date{color:var(--faint);margin-bottom:4px;font-size:.85rem;display:block}article h1{margin-top:4px}article p,article li{margin-bottom:12px}article pre{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:14px;padding:12px;font-size:.82rem;overflow-x:auto}figure{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);margin:0 0 18px;padding:12px}figure figcaption{color:var(--faint);margin-top:6px;font-size:.78rem}figure img{border-radius:2px;max-width:100%;display:block}table.data{border-collapse:collapse;width:100%;margin-bottom:16px;font-size:.85rem}table.data th,table.data td{text-align:left;border-bottom:1px solid var(--border-soft);padding:5px 8px}table.data th{color:var(--muted);font-weight:400}footer.site{border-top:1px solid var(--border);color:var(--faint);margin-top:50px;padding-top:20px;font-size:.9rem}footer.site .creed{color:var(--faint);opacity:.75;margin-top:8px;font-size:.8rem}.duck-btn{border:1px dashed var(--border);border-radius:var(--radius);color:var(--muted);cursor:pointer;background:0 0;align-items:center;gap:6px;margin-left:auto;padding:2px 8px;font-family:inherit;font-size:.78rem;transition:color .2s,border-color .2s;display:inline-flex}.duck-btn:hover{color:var(--accent);border-color:var(--accent-dim)}.duck-btn .say{color:var(--faint)}.duck-btn .duck-mini{font-size:.95rem;line-height:1;transition:transform .2s ease-out;display:block}.duck-btn:hover .duck-mini{transform:rotate(-12deg)scale(1.15)}pre.ascii{color:var(--accent);white-space:pre;font-size:.72rem;line-height:1.15}.duck-zone{align-items:flex-end;gap:14px;margin-top:40px;display:flex;position:relative}.duck-zone button{cursor:pointer;background:0 0;border:none;padding:0;line-height:1}.duck-poke{filter:drop-shadow(0 4px 10px #00000073);transform-origin:50% 90%;transition:transform .18s cubic-bezier(.3,1.4,.5,1);animation:3.6s ease-in-out infinite duck-idle;position:relative}.duck-poke:after{content:"";filter:blur(3px);background:#00000059;border-radius:50%;width:40px;height:8px;margin-left:-20px;animation:3.6s ease-in-out infinite duck-shadow;position:absolute;bottom:-6px;left:50%}.duck-poke:hover{animation-play-state:paused;transform:translateY(-4px)rotate(-7deg)scale(1.06)}.duck-poke:active{animation-play-state:paused;transform:translateY(3px)scaleY(.86)scaleX(1.12)}@keyframes duck-idle{0%,to{transform:translateY(0)rotate(0)}30%{transform:translateY(-5px)rotate(-3deg)}55%{transform:translateY(0)rotate(0)}75%{transform:translateY(-2px)rotate(2deg)}}@keyframes duck-shadow{0%,55%,to{opacity:.35;transform:scaleX(1)}30%{opacity:.18;transform:scaleX(.72)}}.duck-hint{color:var(--muted);-webkit-user-select:none;user-select:none;pointer-events:none;margin-bottom:10px;font-size:.8rem}.duck-poke.flying{pointer-events:none;animation:1s cubic-bezier(.4,0,.55,1) forwards duck-flyaway}.duck-poke.flying:after{animation:.4s ease-out forwards duck-shadow-out}@keyframes duck-flyaway{0%{opacity:1;transform:translate(0)rotate(0)scale(1)}12%{opacity:1;transform:translateY(6px)scaleY(.78)scaleX(1.18)}30%{opacity:1;transform:translate(26px,-78px)rotate(-14deg)scale(1.08)}55%{opacity:1;transform:translate(150px,-150px)rotate(-8deg)scale(.86)}to{opacity:0;transform:translate(460px,-340px)rotate(-28deg)scale(.28)}}@keyframes duck-shadow-out{to{opacity:0;transform:scaleX(.3)}}.duck-emoji{font-size:3.4rem;animation:.5s cubic-bezier(.3,1.7,.45,1) duck-poke;display:block}.duck-poke.flying .duck-emoji{animation:.16s ease-in-out infinite duck-flap}@keyframes duck-poke{0%{transform:scale(.7)rotate(-14deg)}40%{transform:scale(1.28)rotate(10deg)}70%{transform:scale(.94)rotate(-5deg)}to{transform:scale(1)rotate(0)}}@media (prefers-reduced-motion:reduce){.duck-poke,.duck-poke:after,.duck-emoji{animation:none}}.bubble{border:1px solid var(--border);background:var(--panel);color:var(--fg);border-radius:10px;margin-bottom:22px;padding:8px 12px;font-size:.85rem;animation:.18s ease-out bubble-pop;position:relative}.bubble:after{content:"";background:var(--panel);border-left:1px solid var(--border);border-bottom:1px solid var(--border);width:12px;height:12px;position:absolute;bottom:10px;left:-7px;transform:rotate(45deg)}@keyframes bubble-pop{0%{opacity:0;transform:scale(.8)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}.confetti{pointer-events:none;z-index:4000;position:fixed;inset:0}.confetti i{text-shadow:0 0 6px;opacity:1;margin-top:-4px;margin-left:-4px;font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace;font-weight:700;line-height:1;animation:cubic-bezier(.12,.72,.3,1) forwards confetti-burst;position:absolute}@keyframes confetti-burst{0%{opacity:1;transform:translate(0)rotate(0)scale(.3)}22%{transform:translate3d(calc(var(--dx) * .72), calc(var(--dy) * .72), 0) rotate(calc(var(--rot) * .35)) scale(1.15);opacity:1}to{transform:translate3d(var(--dx), calc(var(--dy) + var(--fall)), 0) rotate(var(--rot)) scale(.85);opacity:0}}.confetti .shock{border:1px solid var(--accent);opacity:.5;border-radius:50%;width:14px;height:14px;margin-top:-7px;margin-left:-7px;animation:.5s cubic-bezier(.22,.7,.3,1) forwards shockwave;position:absolute}@keyframes shockwave{0%{opacity:.5;transform:scale(.3)}to{opacity:0;transform:scale(3.4)}}@media (width<=560px){body{font-size:.92rem;line-height:1.65}.page{padding:16px}h1{font-size:1.35rem}h2{font-size:1rem}nav.site{gap:8px}.nav-links{gap:6px 9px;font-size:.76rem}.nav-long{display:none}.nav-short{display:inline}.duck-btn{flex:none;margin-left:auto;padding:3px 7px}.duck-btn .say{display:none}header.site,main section{margin-bottom:28px}.project{padding-left:12px}article pre,table.data{font-size:.78rem}figure{padding:8px}.duck-zone{flex-direction:column;align-items:flex-start;gap:8px}.bubble{margin-bottom:0}}.page.notice{max-width:520px;margin:12vh auto}.page.notice h1{margin-bottom:8px}
