body{background-color:var(--bg-deep)}.clickable,[data-clickable],[role=button],a,button{cursor:pointer}#starfield{position:fixed;inset:0;z-index:0;display:block;pointer-events:none}#crt{display:none;position:fixed;inset:0;pointer-events:none;z-index:var(--z-crt);background:repeating-linear-gradient(to bottom,transparent 0,transparent 2px,rgba(0,0,0,.11) 2px,rgba(0,0,0,.11) 3px),radial-gradient(ellipse at center,transparent 60%,rgba(0,0,0,.45) 100%);animation:crtFlicker 9s ease-in-out infinite}@keyframes crtFlicker{0%,100%{opacity:1}48%{opacity:.985}50%{opacity:.965}52%{opacity:.99}}#stage{position:fixed;top:0;left:0;right:0;bottom:calc(var(--hub-h) * .82);z-index:var(--z-stage);overflow:hidden;perspective:4000px;perspective-origin:50% 45%;transition:bottom .45s cubic-bezier(.4, 0, .2, 1);pointer-events:none}#stage-camera{position:absolute;inset:0;transform-style:preserve-3d}body.hub-collapsed #stage{bottom:46px}.view{--frame-w:clamp(8.4px, 1.4vw, 15.4px);--view-w:90%;position:absolute;left:calc((100% - var(--view-w))/ 2);top:3%;width:var(--view-w);height:86%;background:linear-gradient(148deg,var(--metal-1) 0,var(--metal-2) 22%,var(--metal-3) 50%,var(--metal-4) 78%,var(--metal-5) 100%);border:1px solid var(--metal-edge);border-radius:var(--r-xl);box-shadow:var(--bevel-raised-deep),0 6px 16px rgba(0,0,0,.5),0 30px 70px rgba(0,0,0,.75);overflow:hidden;transform-style:preserve-3d;backface-visibility:hidden;transform-origin:50% 50%;opacity:0;transition:transform .55s cubic-bezier(.22, 1, .36, 1),opacity .5s ease,filter .5s ease,top .45s cubic-bezier(.4, 0, .2, 1),height .45s cubic-bezier(.4, 0, .2, 1)}body.hub-collapsed .view{top:2.5%;height:95%}.view.suspended .view-content::after{content:"";position:absolute;inset:0;background:var(--bg-view);pointer-events:none}.view.active{pointer-events:auto;filter:none;opacity:1;background:linear-gradient(148deg,#c4b6d8 0,var(--metal-1) 24%,var(--metal-2) 52%,var(--metal-3) 80%,var(--metal-4) 100%)}.view:not(.active){pointer-events:none}.view:not(.active) .view-content{filter:brightness(.5) saturate(.7)}.view.hidden-deep{opacity:0;pointer-events:none}.view.size-hub{--view-w:min(var(--hub-max), 96vw)}.view.size-mobile{--view-w:min(420px, 92vw)}.view.size-wide{--view-w:90%}.view.cached{opacity:0!important;pointer-events:none!important;transform:translateZ(-50000px) translateX(-99999px)!important;transition:none!important}.view .view-content{position:absolute;inset:var(--frame-w);overflow:auto;background:var(--bg-view);border-radius:var(--r-lg);box-shadow:var(--bevel-inset-deep)}.view .view-content iframe{width:100%;height:100%;border:0;background:var(--bg-deep);display:block}.view.active::after{content:"";position:absolute;inset:var(--frame-w);border-radius:var(--r-lg);pointer-events:none;box-shadow:inset 0 0 0 1px var(--accent)}.view-close,.view-flag,.view-fs{position:absolute;z-index:5;opacity:0;transition:opacity .25s ease,color var(--t-fast),background var(--t-fast),box-shadow .2s ease}.view.active .view-close,.view.active .view-flag,.view.active .view-fs{opacity:1}.view-close{top:0;right:0;width:clamp(24px,calc(var(--frame-w) + 9px),32px);height:clamp(24px,calc(var(--frame-w) + 9px),32px);display:flex;align-items:center;justify-content:center;border:0;border-top-right-radius:calc(var(--r-xl) - 1px);border-bottom-left-radius:var(--r-lg);background:var(--metal-rail);box-shadow:var(--bevel-raised);color:var(--text)}.view-close svg{width:45%;height:45%;margin:-2px -2px 0 0;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round}.view-close:hover{background:var(--danger);border-color:var(--danger);color:#fff}.view-close:active{box-shadow:var(--bevel-pressed)}.view-fs{bottom:0;left:0;width:clamp(24px,calc(var(--frame-w) + 9px),32px);height:clamp(24px,calc(var(--frame-w) + 9px),32px);display:flex;align-items:center;justify-content:center;border:0;border-bottom-left-radius:calc(var(--r-xl) - 1px);border-top-right-radius:var(--r-lg);background:var(--metal-rail);box-shadow:var(--bevel-raised);color:var(--text)}.view-fs svg{width:45%;height:45%;margin:0 0 -2px -2px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.view-fs:hover{background:var(--accent);color:#fff}.view-fs:active{box-shadow:var(--bevel-pressed)}.view-fs .fs-exit{display:none}.view:fullscreen .view-fs .fs-enter{display:none}.view:fullscreen .view-fs .fs-exit{display:block}.view:fullscreen{transform:none!important;opacity:1!important;top:0!important;left:0!important;width:100%!important;height:100%!important;border-radius:0;filter:none!important}.view:fullscreen .view-close{border-top-right-radius:0}.view:fullscreen .view-fs{border-bottom-left-radius:0}.view-flag{bottom:calc(var(--frame-w)/ 2);right:calc(var(--r-xl) + 3px);transform:translateY(50%);height:clamp(15px,calc(var(--frame-w) - 6px),18px);display:flex;align-items:center;gap:5px;padding:0 8px;border:1px solid var(--metal-edge);border-radius:var(--r-sm);background:var(--bg-screen);box-shadow:var(--bevel-inset);font-family:var(--font-mono);font-size:10px;letter-spacing:.5px;color:var(--accent);white-space:nowrap;max-width:40%}.view-flag .vf-label{overflow:hidden;text-overflow:ellipsis}.view-flag svg{flex:none;width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.view-flag:hover{background:var(--metal-rail);color:var(--accent-bright)}#page-fs{position:fixed;right:12px;bottom:12px;z-index:4000;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid var(--metal-edge);border-radius:var(--r-sm);background:rgba(18,14,26,.45);color:var(--text-dim);opacity:.3;transition:opacity .2s ease,color .2s ease,background .2s ease}#page-fs:hover{opacity:1;color:var(--accent-bright);background:var(--metal-rail);box-shadow:var(--bevel-raised)}#page-fs:active{box-shadow:var(--bevel-pressed)}#page-fs svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}#page-fs .fs-exit{display:none}#page-fs.is-fs .fs-enter{display:none}#page-fs.is-fs .fs-exit{display:block}#stage-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--text-dim);font-family:var(--font-mono);font-size:var(--fs-md);letter-spacing:3px;text-transform:uppercase;pointer-events:none;opacity:0;transition:opacity .4s ease}#stage-empty.show{opacity:1}#stage-empty .big{font-size:28px;color:var(--metal-2);letter-spacing:6px}#hub{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(var(--hub-max),96vw);z-index:var(--z-hub);pointer-events:none;transition:transform .45s cubic-bezier(.4, 0, .2, 1)}#hub.hub-hidden{transform:translateX(-50%) translateY(115%)}#hub.boot-park{transition:transform .95s cubic-bezier(.16, 1, .3, 1)}#hub-close{position:absolute;left:80.43%;top:89.92%;width:2.7cqw;height:2.7cqw;transform:translate(-50%,-50%);z-index:6;pointer-events:auto;display:flex;align-items:center;justify-content:center;border:0;background:0 0;border-radius:50%;color:rgba(8,4,6,.62);transition:color .15s ease,box-shadow .2s ease,background .2s ease}#hub-close svg{width:58%;height:58%;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}#hub-close:focus-visible,#hub-close:hover{color:#fff;background:radial-gradient(circle at 50% 45%,rgba(255,70,70,.55),transparent 70%);box-shadow:0 0 9px 2px rgba(255,45,45,.85),0 0 18px 6px rgba(255,30,30,.45);outline:0}#hub-reveal{position:fixed;left:50%;bottom:0;transform:translateX(-50%) translateY(120%);z-index:var(--z-hub);display:flex;align-items:stretch;gap:5px;height:34px;padding:5px 6px;border:1px solid var(--metal-edge);border-bottom:0;border-radius:var(--r-md) var(--r-md) 0 0;background:var(--metal-rail);box-shadow:var(--bevel-raised);pointer-events:auto;transition:transform .4s cubic-bezier(.4, 0, .2, 1);font-family:var(--font-mono)}#hub-reveal.show{transform:translateX(-50%) translateY(0)}#hub-reveal .hr-act{min-width:26px;padding:0 7px;display:flex;align-items:center;justify-content:center;background:var(--metal-rail);color:var(--text-bright);border:1px solid var(--metal-edge);border-radius:var(--r-sm);box-shadow:var(--bevel-raised);font-size:12px;line-height:1;transition:background var(--t-fast),color var(--t-fast)}#hub-reveal .hr-act:hover:not(:disabled){background:var(--metal-face-hi);color:var(--accent-bright)}#hub-reveal .hr-act:active:not(:disabled){box-shadow:var(--bevel-pressed)}#hub-reveal .hr-act:disabled{opacity:.3}#hub-reveal .hr-expand{color:var(--accent)}#hub-reveal .hr-expand svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}#hub-reveal .hr-readout{display:flex;align-items:center;gap:7px;min-width:148px;max-width:40vw;padding:0 10px;background:var(--bg-screen);border-radius:var(--r-sm);box-shadow:var(--bevel-inset);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--text);white-space:nowrap;overflow:hidden}#hub-reveal .hr-count{color:var(--accent);flex:none}#hub-reveal .hr-name{overflow:hidden;text-overflow:ellipsis}#hub-reveal .hr-name.hr-idle{color:var(--text-dim)}.hub-inner{position:relative;width:100%;aspect-ratio:var(--hub-ratio);container-type:size;container-name:hub}.hub-frame{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 6px 20px rgba(0, 0, 0, .7))}.cutout{position:absolute;z-index:2;pointer-events:auto;overflow:hidden}#screen-left{left:calc(var(--cut-left-x) - .8%);top:calc(var(--cut-left-y) - 1.5%);width:calc(var(--cut-left-w) + 1.6%);height:calc(var(--cut-left-h) + 3%)}#screen-right{left:calc(var(--cut-right-x) - .8%);top:calc(var(--cut-right-y) - 1.5%);width:calc(var(--cut-right-w) + 1.6%);height:calc(var(--cut-right-h) + 3%)}.hub-screen{background:var(--bg-screen);box-shadow:inset 0 0 30px rgba(0,0,0,.9),inset 0 0 0 1px rgba(176,160,196,.12)}.hub-screen .screen-scroll{position:absolute;inset:0;padding:4.5cqh 2.4cqw;display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:min-content;gap:.8cqh 1cqw;align-content:center;overflow-y:auto;scrollbar-width:thin}.launcher{display:flex;flex-direction:column;align-items:center;gap:.4cqh;padding:.6cqh 0;background:0 0;border:1px solid transparent;font-family:var(--font-mono);text-align:center}.launcher .l-icon{width:5.6cqw;height:5.6cqw;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 1px 2px rgba(0, 0, 0, .7));transition:transform .15s ease;margin-bottom:2px}.launcher .l-icon img{width:100%;height:100%;image-rendering:auto}@keyframes hubCollectFlash{0%{transform:scale(1);filter:drop-shadow(0 1px 2px rgba(0, 0, 0, .7)) brightness(1)}28%{transform:scale(1.3);filter:drop-shadow(0 0 7px var(--accent-bright)) brightness(1.9)}100%{transform:scale(1);filter:drop-shadow(0 1px 2px rgba(0, 0, 0, .7)) brightness(1)}}.launcher .l-icon.collect-flash{animation:hubCollectFlash 480ms cubic-bezier(.34,1.56,.64,1)}.launcher .l-label{font-size:1.25cqw;line-height:1.1;color:var(--text);letter-spacing:.15cqw;text-transform:lowercase;text-shadow:0 1px 0 #000}.launcher:hover .l-icon{transform:translateY(-.4cqh) scale(1.08)}.launcher:hover .l-label{color:var(--accent-bright)}.launcher.open .l-label{color:var(--accent)}.launcher.active-view .l-icon{outline:1.5px solid #c4698d;outline-offset:0.3cqh;border-radius:2px}#pages-grid .launcher.active-view .l-icon{border-radius:50%}#orb-slot{left:var(--cut-orb-x);top:var(--cut-orb-y);width:var(--cut-orb-w);height:var(--cut-orb-h);z-index:3;border-radius:50%;display:flex;align-items:center;justify-content:center;pointer-events:auto;overflow:visible}#orb-canvas{position:absolute;inset:0;border-radius:50%;overflow:hidden;z-index:1}#orb-cycle{position:absolute;top:50%;left:50%;width:24cqw;height:24cqw;transform:translate(-50%,-50%);background:0 0;border:0;padding:0;border-radius:50%;cursor:pointer;z-index:2;isolation:isolate}.orb-img{position:absolute;top:50%;left:50%;width:100%;height:100%;max-width:none;transform:translate(-50%,-50%) rotate(var(--orb-rot,0deg));transition:transform 120ms linear;pointer-events:none}.orb-shutter{position:absolute;inset:0;border-radius:50%;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 50% 0,#1a1626 0,#0a0814 70%,#050308 100%) top/100% 0 no-repeat,radial-gradient(ellipse at 50% 100%,#1a1626 0,#0a0814 70%,#050308 100%) bottom/100% 0 no-repeat;box-shadow:inset 0 0 12px rgba(0,0,0,.55);will-change:background-size}.orb-shutter.closing{animation:orbLidClose 260ms cubic-bezier(.4,0,.2,1) forwards}.orb-shutter.covered{background-size:100% 50%,100% 50%}.orb-shutter.opening{animation:orbLidOpen 260ms cubic-bezier(.4,0,.2,1) forwards}@keyframes orbLidClose{from{background-size:100% 0,100% 0}to{background-size:100% 50%,100% 50%}}@keyframes orbLidOpen{from{background-size:100% 50%,100% 50%}to{background-size:100% 0,100% 0}}#orb-cycle:active .orb-img{transform:translate(-50%,-50%) rotate(var(--orb-rot,0deg)) scale(.96)}#orb-cycle:focus-visible{outline:1px solid var(--orb-green);outline-offset:4px}#stack-bar{left:var(--cut-bar-x);top:var(--cut-bar-y);width:var(--cut-bar-w);height:var(--cut-bar-h);z-index:3;display:flex;align-items:center;gap:1cqw;padding:0 1.5cqw;background:linear-gradient(to bottom,#060309,#0d0814);box-shadow:inset 0 0 12px rgba(0,0,0,.9);font-family:var(--font-mono);color:var(--accent-magenta)}.stack-btn{height:70%;min-width:4cqw;display:flex;align-items:center;justify-content:center;background:var(--metal-rail);color:var(--text-bright);border:1px solid var(--metal-edge);box-shadow:var(--bevel-raised);font-size:2cqw;line-height:1;border-radius:var(--r-sm);transition:background var(--t-fast),color var(--t-fast)}.stack-btn:hover:not(:disabled){background:var(--metal-face-hi);color:var(--accent-bright)}.stack-btn:active:not(:disabled){background:var(--metal-rail);box-shadow:var(--bevel-pressed)}.stack-btn:disabled{opacity:.3}.stack-readout{flex:1;display:flex;align-items:center;gap:.8cqw;overflow:hidden;font-size:1.5cqw;letter-spacing:.2cqw;text-transform:uppercase;white-space:nowrap}.stack-readout .s-count{color:var(--accent-lime);text-shadow:0 0 5px var(--accent-lime-glow)}.stack-readout .s-name{color:var(--text);overflow:hidden;text-overflow:ellipsis}.stack-readout .s-idle{color:var(--text-dim)}.stack-dots{display:flex;gap:.5cqw}.stack-dots .dot{width:.9cqw;height:.9cqw;border-radius:50%;background:var(--metal-4);box-shadow:inset 0 0 2px #000}.stack-dots .dot.on{background:var(--accent-lime);box-shadow:0 0 5px var(--accent-lime-glow)}#aux-slot{left:var(--cut-aux-x);top:var(--cut-aux-y);width:var(--cut-aux-w);height:var(--cut-aux-h);z-index:3;display:flex;align-items:center;justify-content:center;padding:0 .8cqw;background:#050308;box-shadow:inset 0 0 8px rgba(0,0,0,.9);font-family:var(--font-mono);font-size:1.2cqw;letter-spacing:.2cqw;color:var(--accent);overflow:hidden;white-space:nowrap}#badge-dock{position:fixed;right:80px;bottom:0;width:320px;z-index:var(--z-hub);pointer-events:none;transition:transform .45s cubic-bezier(.4, 0, .2, 1)}#badge-dock.dock-hidden{transform:translateY(115%)}body.hub-collapsed #badge-dock{transform:translateY(115%)}#badge-dock.boot-park{transition:transform .95s cubic-bezier(.16, 1, .3, 1)}.dock-inner{position:relative;width:100%;aspect-ratio:1760/656;container-type:size;container-name:badgedock}.dock-frame{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 6px 20px rgba(0, 0, 0, .7))}#badges-screen{left:4%;top:13%;width:92%;height:42%;background:linear-gradient(180deg,var(--bg-screen),var(--bg-panel));box-shadow:var(--bevel-inset);display:flex;align-items:center;justify-content:center;padding:0 2%;overflow:hidden}.badges-rail{display:flex;gap:6px;align-items:center}.badges-rail.carousel{width:max-content;flex:none;will-change:transform}#badges-screen:has(.badges-rail.carousel){justify-content:flex-start}.badges-rail a.badge{flex:none;width:88px;height:31px;display:block;border:1px solid var(--metal-edge);background:#000;pointer-events:auto;transition:transform .12s ease,box-shadow .15s ease}.badges-rail a.badge:hover{transform:translateY(-1px);box-shadow:0 2px 6px rgba(0,0,0,.6)}.badges-rail a.badge img{width:100%;height:100%;object-fit:cover;display:block;image-rendering:pixelated}#badges-nav{left:35.34%;top:61.89%;width:29.4%;height:8.84%;background:var(--bg-deep);box-shadow:var(--bevel-inset);display:flex;align-items:center;justify-content:space-between;padding:0 6%}.bd-arrow{background:0 0;border:0;color:#e8e2f0;cursor:pointer;padding:0;height:95%;aspect-ratio:1;display:inline-flex;align-items:center;justify-content:center;border-radius:18%;pointer-events:auto;transition:color .15s ease,box-shadow .2s ease,background .2s ease}.bd-arrow svg{width:90%;height:90%;fill:currentColor;display:block;filter:drop-shadow(0  1px 0 rgba(0, 0, 0, .7)) drop-shadow(0 -1px 0 rgba(255, 245, 255, .3))}.bd-arrow:focus-visible:not(:disabled),.bd-arrow:hover:not(:disabled){color:#fff;background:radial-gradient(ellipse at 50% 45%,rgba(255,70,70,.55),transparent 75%);box-shadow:0 0 7px 1px rgba(255,45,45,.85),0 0 14px 4px rgba(255,30,30,.45);outline:0}.bd-arrow:focus-visible:not(:disabled) svg,.bd-arrow:hover:not(:disabled) svg{filter:drop-shadow(0 0 2px rgba(255, 80, 80, .9))}.bd-arrow:active:not(:disabled){transform:translateY(1px)}.bd-arrow:disabled{color:var(--text-dim);opacity:.4;cursor:default}.bd-social{position:absolute;top:86.65%;width:12cqw;height:15cqh;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;border-radius:22%;z-index:5;pointer-events:auto;color:#e8e2f0;transition:color .15s ease,box-shadow .2s ease,background .2s ease,filter .15s ease;overflow:visible}.bd-social:focus-visible,.bd-social:hover{color:#fff;background:radial-gradient(ellipse at 50% 45%,rgba(255,70,70,.55),transparent 75%);box-shadow:0 0 9px 2px rgba(255,45,45,.85),0 0 18px 6px rgba(255,30,30,.45);outline:0}.bd-social:focus-visible svg,.bd-social:hover svg{filter:drop-shadow(0 0 3px rgba(255, 80, 80, .9))}.bd-social:active{transform:translate(-50%,calc(-50% + 1px))}.bd-social svg{width:85%;height:85%;fill:currentColor;filter:drop-shadow(0  1px 0 rgba(0, 0, 0, .7)) drop-shadow(0 -1px 0 rgba(255, 245, 255, .3))}#bd-github{left:35.83%}#bd-youtube{left:49.92%}#bd-gumroad{left:64.02%}@media (max-width:1801px){#badge-dock{display:none}}@media (max-width:760px){#hub{width:100vw}#stage{perspective:none}#stage-camera{transform-style:flat}.view{left:1%;top:1%;width:98%;height:72%;transform:none!important}.view.hidden-deep,.view:not(.active){opacity:0!important}#crt{display:none}}@media (prefers-reduced-motion:reduce){#crt{animation:none}.orb-img{animation:none;transition:none}.orb-shutter.closing,.orb-shutter.covered,.orb-shutter.opening{animation:none;background-size:100% 0,100% 0}.view{transition:opacity .2s linear}}