@font-face{font-family:"Press Start 2P";src:url(/assets/Font/press_start_2p/PressStart2P.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg-deep:#050b1a;--bg-navy:#08152f;--panel:#0b2144;--panel-dark:#06142d;--blue:#147bff;--cyan:#27d7ff;--cyan-bright:#57e8ff;--purple:#4d28ac;--green:#39f27a;--text:#eaf4ff;--text-muted:#91a9c8;--warning:#ffd166;--pixel-border:#1e5fa8;--font-pixel:"Press Start 2P", ui-monospace, "Courier New", monospace;--font-body:system-ui, sans-serif;--font-mono:ui-monospace, "Courier New", monospace}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}body{font-family:var(--font-body);margin:0}.error-screen{z-index:5;background:var(--bg-deep,#050b1a);color:var(--text,#eaf4ff);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:16px;display:flex;position:fixed;inset:0}.error-heading{font-family:var(--font-pixel);letter-spacing:.02em;color:var(--warning,#ffd166);margin:0;font-size:1rem;line-height:1.5}.error-detail{max-width:48ch;color:var(--text-muted,#91a9c8);margin:0;line-height:1.5}.error-retry{border:1px solid var(--blue,#147bff);background:var(--blue,#147bff);min-height:44px;color:var(--text,#eaf4ff);cursor:pointer;font-family:var(--font-pixel);letter-spacing:.04em;border-radius:4px;padding:10px 24px;font-size:.82rem}.error-retry:hover{background:var(--cyan,#27d7ff);border-color:var(--cyan,#27d7ff)}.error-retry:focus-visible{outline:2px solid var(--cyan-bright,#57e8ff);outline-offset:2px}.portfolio-nav ul{flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:8px;list-style:none;display:flex}.portfolio-nav button{border:1px solid var(--pixel-border,#1e5fa8);background:var(--panel-dark,#06142d);min-height:44px;color:var(--text,#eaf4ff);cursor:pointer;font-family:var(--font-pixel);letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:8px 14px;font-size:.72rem}.portfolio-nav button:hover{background:var(--blue,#147bff)}.portfolio-nav button:focus-visible{outline:2px solid var(--cyan-bright,#57e8ff);outline-offset:2px}.game-panel{--gp-magenta:#c44dff;--gp-violet:#7a45e6;--gp-px:4px;--gp-corner:calc(var(--gp-px) * 3);--gp-border:4px;--gp-notch:6px;--gp-tab-left:132px;--gp-tab-right:76px;--gp-foot-inset:24%;--gp-body-pad:20px 22px 22px;--gp-header-height:48px;width:100%;max-width:760px;max-height:85dvh;padding:var(--gp-border);color:var(--text,#eaf4ff);background:linear-gradient(90deg, transparent 0 38%, var(--gp-magenta) 38% 60%, transparent 60%) top / 100% 12px no-repeat, linear-gradient(90deg, transparent 0 var(--gp-foot-inset), var(--gp-magenta) var(--gp-foot-inset) 64%, var(--gp-violet) 64% calc(100% - var(--gp-foot-inset)), transparent calc(100% - var(--gp-foot-inset))) bottom / 100% 12px no-repeat, linear-gradient(180deg, transparent 0 34%, var(--gp-magenta) 34% 58%, transparent 58%) left / 12px 100% no-repeat, linear-gradient(180deg, transparent 0 42%, var(--gp-magenta) 42% 70%, transparent 70%) right / 12px 100% no-repeat, linear-gradient(180deg, var(--cyan,#27d7ff), var(--blue,#147bff));clip-path:var(--gp-clip);--gp-clip:polygon( 0 var(--gp-corner), var(--gp-px) var(--gp-corner), var(--gp-px) calc(var(--gp-px) * 2), calc(var(--gp-px) * 2) calc(var(--gp-px) * 2), calc(var(--gp-px) * 2) var(--gp-px), var(--gp-corner) var(--gp-px), var(--gp-corner) 0,  var(--gp-tab-left) 0, var(--gp-tab-left) calc(var(--gp-notch) / 2), calc(var(--gp-tab-left) + var(--gp-px)) calc(var(--gp-notch) / 2), calc(var(--gp-tab-left) + var(--gp-px)) var(--gp-notch),  calc(100% - var(--gp-tab-right) - var(--gp-px)) var(--gp-notch), calc(100% - var(--gp-tab-right) - var(--gp-px)) calc(var(--gp-notch) / 2), calc(100% - var(--gp-tab-right)) calc(var(--gp-notch) / 2), calc(100% - var(--gp-tab-right)) 0,  calc(100% - var(--gp-corner)) 0, calc(100% - var(--gp-corner)) var(--gp-px), calc(100% - var(--gp-px) * 2) var(--gp-px), calc(100% - var(--gp-px) * 2) calc(var(--gp-px) * 2), calc(100% - var(--gp-px)) calc(var(--gp-px) * 2), calc(100% - var(--gp-px)) var(--gp-corner), 100% var(--gp-corner),  100% calc(100% - var(--gp-corner) - var(--gp-notch)), calc(100% - var(--gp-px)) calc(100% - var(--gp-corner) - var(--gp-notch)), calc(100% - var(--gp-px)) calc(100% - var(--gp-px) * 2 - var(--gp-notch)), calc(100% - var(--gp-px) * 2) calc(100% - var(--gp-px) * 2 - var(--gp-notch)), calc(100% - var(--gp-px) * 2) calc(100% - var(--gp-px) - var(--gp-notch)), calc(100% - var(--gp-corner)) calc(100% - var(--gp-px) - var(--gp-notch)), calc(100% - var(--gp-corner)) calc(100% - var(--gp-notch)),  calc(100% - var(--gp-foot-inset) + var(--gp-px)) calc(100% - var(--gp-notch)), calc(100% - var(--gp-foot-inset) + var(--gp-px)) calc(100% - var(--gp-notch) / 2), calc(100% - var(--gp-foot-inset)) calc(100% - var(--gp-notch) / 2), calc(100% - var(--gp-foot-inset)) 100%, var(--gp-foot-inset) 100%, var(--gp-foot-inset) calc(100% - var(--gp-notch) / 2), calc(var(--gp-foot-inset) - var(--gp-px)) calc(100% - var(--gp-notch) / 2), calc(var(--gp-foot-inset) - var(--gp-px)) calc(100% - var(--gp-notch)),  var(--gp-corner) calc(100% - var(--gp-notch)), var(--gp-corner) calc(100% - var(--gp-px) - var(--gp-notch)), calc(var(--gp-px) * 2) calc(100% - var(--gp-px) - var(--gp-notch)), calc(var(--gp-px) * 2) calc(100% - var(--gp-px) * 2 - var(--gp-notch)), var(--gp-px) calc(100% - var(--gp-px) * 2 - var(--gp-notch)), var(--gp-px) calc(100% - var(--gp-corner) - var(--gp-notch)), 0 calc(100% - var(--gp-corner) - var(--gp-notch)));--gp-step:3px;display:flex;position:relative}.game-panel,.game-panel-screen,.game-panel-surface{--gp-clip-stepped:polygon(0 calc(var(--gp-step) * 2), var(--gp-step) calc(var(--gp-step) * 2), var(--gp-step) var(--gp-step), calc(var(--gp-step) * 2) var(--gp-step), calc(var(--gp-step) * 2) 0, calc(100% - var(--gp-step) * 2) 0, calc(100% - var(--gp-step) * 2) var(--gp-step), calc(100% - var(--gp-step)) var(--gp-step), calc(100% - var(--gp-step)) calc(var(--gp-step) * 2), 100% calc(var(--gp-step) * 2), 100% calc(100% - var(--gp-step) * 2), calc(100% - var(--gp-step)) calc(100% - var(--gp-step) * 2), calc(100% - var(--gp-step)) calc(100% - var(--gp-step)), calc(100% - var(--gp-step) * 2) calc(100% - var(--gp-step)), calc(100% - var(--gp-step) * 2) 100%, calc(var(--gp-step) * 2) 100%, calc(var(--gp-step) * 2) calc(100% - var(--gp-step)), var(--gp-step) calc(100% - var(--gp-step)), var(--gp-step) calc(100% - var(--gp-step) * 2), 0 calc(100% - var(--gp-step) * 2))}.game-panel:focus{outline:none}.game-panel--small{--gp-px:3px;--gp-tab-left:96px;--gp-tab-right:68px;--gp-foot-inset:30%;--gp-body-pad:16px 18px 18px;max-width:520px}.game-panel--medium{max-width:760px}.game-panel--large{--gp-px:5px;--gp-notch:8px;--gp-tab-left:188px;--gp-tab-right:84px;--gp-foot-inset:20%;--gp-body-pad:24px 28px 26px;max-width:1080px}.game-panel-shell{min-width:0;min-height:0;padding:8px 6px calc(var(--gp-notch) + 2px);background: linear-gradient(var(--gp-violet), var(--gp-violet)) left 2px top 30% / 1px 34% no-repeat, linear-gradient(var(--gp-violet), var(--gp-violet)) right 2px top 68% / 1px 26% no-repeat, var(--bg-deep,#050b1a);clip-path:var(--gp-clip);flex-direction:column;flex:1;display:flex}.game-panel-header{min-height:var(--gp-header-height);flex-shrink:0;align-items:center;gap:12px;padding:0 2px 6px 10px;display:flex}.game-panel-header.is-bare{min-height:24px;padding-bottom:8px}.game-panel-stripes{background:repeating-linear-gradient(90deg, var(--gp-magenta) 0 9px, transparent 9px 14px);flex-shrink:0;width:38px;height:10px;transform:skew(-32deg)}@keyframes game-panel-stripes-pulse{50%{opacity:.55}}@media (prefers-reduced-motion:no-preference){.game-panel-stripes{animation:2.8s steps(3,jump-none) infinite game-panel-stripes-pulse}}.game-panel-icon{--panel-icon-size:22px;flex-shrink:0;display:inline-flex}.game-panel-title{min-width:0;font-family:var(--font-pixel);letter-spacing:.03em;text-transform:uppercase;color:var(--cyan-bright,#57e8ff);overflow-wrap:anywhere;flex:1;margin:0;font-size:1rem;line-height:1.5}.game-panel-x,.game-panel-back{min-width:44px;min-height:44px;color:var(--cyan,#27d7ff);cursor:pointer;clip-path:var(--gp-clip-stepped);font-family:var(--font-pixel);letter-spacing:.04em;background:currentColor;border:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.72rem;display:inline-flex;position:relative}.game-panel-x:before,.game-panel-back:before{content:"";background:var(--panel-dark,#06142d);clip-path:var(--gp-clip-stepped);position:absolute;inset:2px}.game-panel-x>*,.game-panel-back>*{position:relative}.game-panel-x-icon{fill:currentColor;width:21px;height:21px}.game-panel-back{gap:8px;padding:0 14px}.game-panel-back-icon{fill:currentColor;width:8px;height:11px}@media (hover:hover){.game-panel-x:hover,.game-panel-back:hover{color:var(--gp-magenta)}}.game-panel-x:focus-visible,.game-panel-back:focus-visible{color:var(--gp-magenta);outline:none}.game-panel-x:focus-visible:before,.game-panel-back:focus-visible:before{background:#2a1150}.game-panel-x:active:before,.game-panel-back:active:before{background:#3a1870}.game-panel-screen{background:linear-gradient(180deg, var(--cyan,#27d7ff), var(--pixel-border,#1e5fa8));min-height:0;clip-path:var(--gp-clip-stepped);--gp-step:var(--gp-px);flex:1;padding:1px;display:flex}.game-panel-surface{background:linear-gradient(180deg, var(--panel-dark,#06142d), var(--bg-navy,#08152f));min-width:0;min-height:0;clip-path:var(--gp-clip-stepped);--gp-step:var(--gp-px);flex:1;display:flex;position:relative}.game-panel-body{z-index:1;min-width:0;padding:var(--gp-body-pad);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--pixel-border,#1e5fa8) transparent;text-align:left;flex:1;position:relative;overflow-y:auto}.game-panel-body a:focus-visible,.game-panel-body button:focus-visible{outline:2px solid var(--cyan-bright,#57e8ff);outline-offset:2px}.game-panel-dither{width:calc(var(--gp-px) * 9);height:calc(var(--gp-px) * 9);pointer-events:none;background:repeating-conic-gradient(var(--gp-violet) 0 25%, transparent 0 50%) 0 0 / calc(var(--gp-px) * 2) calc(var(--gp-px) * 2);clip-path:polygon(0 0,0 100%,100% 100%);opacity:.75;position:absolute;bottom:0;left:0}.game-panel-footer{height:12px;padding:0 calc(var(--gp-corner) + 4px);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;display:flex}.game-panel-segments{width:calc(var(--gp-px) * 14);background:repeating-linear-gradient(90deg, var(--pixel-border,#1e5fa8) 0 calc(var(--gp-px) * 3), transparent calc(var(--gp-px) * 3) calc(var(--gp-px) * 4));height:3px}.game-panel-dots{width:calc(var(--gp-px) * 30);background:repeating-linear-gradient(90deg, var(--cyan,#27d7ff) 0 3px, transparent 3px 9px);max-width:45%;height:3px}@media (width<=768px){.game-panel{--gp-tab-left:96px;--gp-body-pad:16px 16px 18px}.game-panel--large{--gp-px:4px;--gp-notch:6px;--gp-tab-right:76px}}@media (width<=480px){.game-panel{--gp-px:3px;--gp-tab-left:64px;--gp-tab-right:64px;--gp-body-pad:14px 12px 16px}.game-panel-header{gap:8px;padding-left:6px}.game-panel-title{font-size:.85rem}.game-panel-stripes{width:24px}.game-panel-header.has-back{flex-wrap:wrap;justify-content:space-between;row-gap:10px}.game-panel-header.has-back .game-panel-stripes{display:none}.game-panel-header.has-back .game-panel-title{flex-basis:100%;order:3}.game-panel-segments{display:none}.game-panel-footer{justify-content:flex-end}}.exit-confirm-overlay{z-index:11;background:#050b1abf;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.exit-confirm-overlay .game-panel{max-width:440px}.exit-confirm-content{text-align:center}.exit-confirm-content p{color:var(--text-muted,#91a9c8);margin:4px 0 20px;line-height:1.5}.exit-confirm-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.exit-confirm-cancel,.exit-confirm-confirm{isolation:isolate;cursor:pointer;min-width:116px;min-height:44px;clip-path:var(--gp-clip-stepped);font-family:var(--font-pixel);letter-spacing:.04em;background:currentColor;border:0;padding:8px 20px;font-size:.78rem;position:relative}.exit-confirm-cancel:before,.exit-confirm-confirm:before{content:"";z-index:-1;background:var(--panel-dark,#06142d);clip-path:var(--gp-clip-stepped);position:absolute;inset:2px}.exit-confirm-cancel{color:var(--cyan,#27d7ff)}.exit-confirm-confirm{color:var(--warning,#ffd166)}@media (hover:hover){.exit-confirm-cancel:hover:before{background:#0d3a7a}.exit-confirm-confirm:hover:before{background:#4a3a10}}.exit-confirm-cancel:focus-visible,.exit-confirm-confirm:focus-visible{outline:none}.exit-confirm-cancel:focus-visible{color:var(--cyan-bright,#57e8ff)}.exit-confirm-cancel:focus-visible:before{background:#0d3a7a}.exit-confirm-confirm:focus-visible:before{background:#4a3a10}.exit-control{border:1px solid var(--pixel-border,#1e5fa8);background:var(--panel-dark,#06142d);min-height:22px;color:var(--text,#eaf4ff);cursor:pointer;font-family:var(--font-pixel);letter-spacing:.04em;border-radius:4px;padding:8px 16px;font-size:.78rem}.exit-control:hover{background:var(--blue,#147bff)}.exit-control:focus-visible{outline:2px solid var(--cyan-bright,#57e8ff);outline-offset:2px}@media (width<=480px){.exit-control{padding:8px 10px}}.game-hud{background:var(--bg-deep,#050b1a);border-bottom:1px solid var(--pixel-border,#1e5fa8);flex-shrink:0}.game-hud-bar{justify-content:space-between;align-items:center;gap:12px;padding:12px clamp(16px,4vw,32px);display:flex}.game-hud-brand{font-family:var(--font-pixel);letter-spacing:.05em;color:var(--cyan,#27d7ff);margin:0;font-size:1.1rem;font-weight:700}.game-hud-actions{align-items:center;gap:8px;display:flex}.game-hud-sound,.game-hud-view,.game-hud-menu-toggle{border:1px solid var(--pixel-border,#1e5fa8);background:var(--panel-dark,#06142d);min-width:22px;min-height:22px;color:var(--text,#eaf4ff);cursor:pointer;font-family:var(--font-pixel);letter-spacing:.03em;border-radius:4px;padding:8px 12px;font-size:.78rem}.game-hud-menu-toggle{font-size:1.1rem;line-height:1}@media (hover:hover){.game-hud-sound:hover,.game-hud-view:hover,.game-hud-menu-toggle:hover{background:var(--blue,#147bff)}}.game-hud-sound:focus-visible,.game-hud-view:focus-visible,.game-hud-menu-toggle:focus-visible{outline:1px solid var(--cyan-bright,#57e8ff);outline-offset:2px}.game-hud-view[aria-expanded=true]{border-color:var(--cyan,#27d7ff);color:var(--cyan,#27d7ff)}.game-hud-view-wrap{position:relative}.game-hud-view-panel{z-index:5;border:1px solid var(--pixel-border,#1e5fa8);background:var(--panel-dark,#06142d);width:max-content;min-width:220px;box-shadow:inset 0 0 0 2px var(--bg-navy,#08152f), inset 0 0 0 3px #4d28ac80, 0 12px 32px #0000008c;border-radius:2px;flex-direction:column;gap:10px;padding:12px;display:flex;position:absolute;top:calc(100% + 10px);right:0}.game-hud-view-title{font-family:var(--font-pixel);letter-spacing:.08em;color:var(--cyan,#27d7ff);text-align:center;margin:0;font-size:.7rem}.game-hud-view-options{flex-direction:column;gap:6px;display:flex}.game-hud-view-option{border:1px solid var(--pixel-border,#1e5fa8);cursor:pointer;border-radius:2px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.game-hud-view-option:has(input:checked){border-color:var(--cyan,#27d7ff);background:var(--panel,#0b2144)}.game-hud-view-option:has(input:focus-visible){outline:1px solid var(--cyan-bright,#57e8ff);outline-offset:2px}.game-hud-view-option input{accent-color:var(--cyan,#27d7ff);margin:2px 0 0}.game-hud-view-option-text{flex-direction:column;gap:4px;display:flex}.game-hud-view-option-title{font-family:var(--font-pixel);letter-spacing:.06em;color:var(--text,#eaf4ff);font-size:.68rem}.game-hud-view-option:has(input:checked) .game-hud-view-option-title{color:var(--cyan-bright,#57e8ff)}.game-hud-view-option-desc{font-family:var(--font-pixel);color:var(--text-muted,#91a9c8);font-size:.56rem;line-height:1.5}.game-hud-view-close{border:1px solid var(--pixel-border,#1e5fa8);background:var(--panel,#0b2144);min-height:32px;color:var(--text,#eaf4ff);font-family:var(--font-pixel);letter-spacing:.06em;cursor:pointer;border-radius:2px;align-self:center;padding:6px 14px;font-size:.66rem}.game-hud-view-close:hover{background:var(--blue,#147bff)}.game-hud-view-close:focus-visible{outline:1px solid var(--cyan-bright,#57e8ff);outline-offset:2px}.game-hud-menu-panel{border-top:1px solid var(--pixel-border,#1e5fa8);padding-bottom:8px}@media (width<=480px){.game-hud-bar{gap:8px;padding:10px}.game-hud-brand{font-size:.8rem}.game-hud-actions{gap:6px}.game-hud-sound,.game-hud-view,.game-hud-menu-toggle{padding:8px}.game-hud-view-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.game-hud-bar{position:relative}.game-hud-view-wrap{position:static}.game-hud-view-panel{width:auto;min-width:0;max-width:calc(100vw - 20px);top:calc(100% + 6px);right:10px}}.landing-screen{z-index:1;background:var(--bg-deep,#050b1a);color:var(--text,#eaf4ff);flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.landing-screen:before,.landing-screen:after{content:"";pointer-events:none;position:fixed;inset:0}.landing-screen:before{z-index:-2;filter:blur(28px)brightness(.45);background:url(/assets/Cover1-clean-DNmLzIBa.png) 50%/cover no-repeat;transform:scale(1.12)}.landing-screen:after{z-index:-1;background:linear-gradient(#050b1a26 0% 45%,#050b1abf 100%),url(/assets/Cover1-clean-DNmLzIBa.png) 50%/cover no-repeat}@media (aspect-ratio>=1){.landing-screen:after{--landing-art-shift:22vh;--landing-art-right:calc(172.5vh - var(--landing-art-shift));background:linear-gradient(to bottom, #050b1a26 0%, #050b1a26 45%, #050b1abf 100%), url(/assets/Cover1-clean-DNmLzIBa.png) calc(var(--landing-art-shift) * -1) center / auto 115% no-repeat;-webkit-mask-image:linear-gradient(to right, #000 calc(var(--landing-art-right) - 260px), transparent var(--landing-art-right));-webkit-mask-image:linear-gradient(to right, #000 calc(var(--landing-art-right) - 260px), transparent var(--landing-art-right));mask-image:linear-gradient(to right, #000 calc(var(--landing-art-right) - 260px), transparent var(--landing-art-right))}}@media (width<=767px) and (aspect-ratio<=1){.landing-screen:before{background-image:url(/assets/Mobile-seHA3yhB.png)}.landing-screen:after{background:linear-gradient(#050b1a1a 0% 100%),url(/assets/Mobile-seHA3yhB.png) top/100% no-repeat;-webkit-mask-image:linear-gradient(#000 calc(110.85vw - 110px),#0000 110.85vw);mask-image:linear-gradient(#000 calc(110.85vw - 110px),#0000 110.85vw)}}.landing-header{flex-shrink:0;padding:16px clamp(16px,4vw,32px)}.landing-brand{font-family:var(--font-pixel);letter-spacing:.05em;color:var(--cyan,#27d7ff);font-size:1.1rem;font-weight:700}.landing-world{flex:1;min-height:220px}.landing-screen .landing-intro{flex-shrink:0;width:auto;max-height:none;margin:0 12px 16px}.landing-screen .landing-intro .game-panel-body{flex-direction:column;gap:10px;display:flex;overflow:visible}.landing-intro h1{font-family:var(--font-pixel);margin:0;font-size:clamp(1.2rem,4.5vw,1.8rem);line-height:1.4}.landing-role{font-family:var(--font-pixel);color:var(--cyan-bright,#57e8ff);letter-spacing:.03em;margin:0;font-size:.9rem;line-height:1.5}.landing-summary{max-width:60ch;color:var(--text-muted,#91a9c8);margin:0;line-height:1.5}.landing-actions{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.landing-cta{--cta-face:#7b3ff2;--cta-face-hover:#9256ff;--cta-light:#b88cff;--cta-dark:#4a1fa6;--cta-edge:#160936;--cta-step:4px;isolation:isolate;background:var(--cta-edge);color:#fff;min-height:48px;text-shadow:2px 2px 0 var(--cta-edge);font-family:var(--font-pixel);letter-spacing:.06em;text-align:center;cursor:pointer;clip-path:polygon(0 calc(var(--cta-step) * 2), var(--cta-step) calc(var(--cta-step) * 2), var(--cta-step) var(--cta-step), calc(var(--cta-step) * 2) var(--cta-step), calc(var(--cta-step) * 2) 0, calc(100% - var(--cta-step) * 2) 0, calc(100% - var(--cta-step) * 2) var(--cta-step), calc(100% - var(--cta-step)) var(--cta-step), calc(100% - var(--cta-step)) calc(var(--cta-step) * 2), 100% calc(var(--cta-step) * 2), 100% calc(100% - var(--cta-step) * 2), calc(100% - var(--cta-step)) calc(100% - var(--cta-step) * 2), calc(100% - var(--cta-step)) calc(100% - var(--cta-step)), calc(100% - var(--cta-step) * 2) calc(100% - var(--cta-step)), calc(100% - var(--cta-step) * 2) 100%, calc(var(--cta-step) * 2) 100%, calc(var(--cta-step) * 2) calc(100% - var(--cta-step)), var(--cta-step) calc(100% - var(--cta-step)), var(--cta-step) calc(100% - var(--cta-step) * 2), 0 calc(100% - var(--cta-step) * 2));border:0;border-radius:0;justify-content:center;align-items:center;gap:10px;padding:10px 22px 12px;font-size:.7rem;display:inline-flex;position:relative}.landing-cta:before{content:"";z-index:-1;background:var(--cta-face);box-shadow:inset 0 4px 0 var(--cta-light), inset 0 -5px 0 var(--cta-dark), inset 4px 0 0 #ffffff1f, inset -4px 0 0 #0000002e;clip-path:inherit;position:absolute;inset:3px}.landing-cta-arrow{width:8px;height:12px;filter:drop-shadow(2px 2px 0 var(--cta-edge));clip-path:polygon(0 0,25% 0,25% 12.5%,50% 12.5%,50% 25%,75% 25%,75% 37.5%,100% 37.5%,100% 62.5%,75% 62.5%,75% 75%,50% 75%,50% 87.5%,25% 87.5%,25% 100%,0 100%);background:#fff;flex-shrink:0}@media (hover:hover){.landing-cta:hover:before{background:var(--cta-face-hover)}}.landing-cta:active:before{background:var(--cta-dark);box-shadow:inset 0 5px 0 var(--cta-edge), inset 0 -2px 0 var(--cta-face)}.landing-cta:focus-visible{outline:none}.landing-cta:focus-visible:before{box-shadow:inset 0 0 0 2px var(--cyan-bright,#57e8ff), inset 0 4px 0 var(--cta-light), inset 0 -5px 0 var(--cta-dark)}@keyframes landing-cta-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@media (prefers-reduced-motion:no-preference){.landing-cta{transform-origin:50%;animation:1.6s ease-in-out infinite landing-cta-pulse}.landing-cta:hover,.landing-cta:focus-visible{animation:none;transform:scale(1.08)}}.landing-social a:focus-visible{outline:2px solid var(--cyan-bright,#57e8ff);outline-offset:2px}.landing-social{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.landing-social a{border:1px solid var(--pixel-border,#1e5fa8);background:#0b214499;border-radius:4px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.landing-social a:hover{border-color:var(--cyan,#27d7ff);background:var(--panel,#0b2144)}.landing-social img{object-fit:contain;width:26px;height:26px;image-rendering:pixelated}.landing-location{font-family:var(--font-pixel);letter-spacing:.03em;color:var(--text-muted,#91a9c8);align-items:center;gap:6px;margin:4px 0 0;font-size:.7rem;display:flex}.landing-location svg{width:14px;height:14px;fill:var(--cyan,#27d7ff);flex-shrink:0}@media (width>=768px){.landing-screen .landing-intro{width:100%;max-width:580px;margin:0;position:absolute;bottom:clamp(16px,4vw,48px);right:clamp(16px,4vw,48px)}.landing-screen .landing-intro .game-panel-body{gap:14px;padding:24px 28px 26px}.landing-intro h1{font-size:2.1rem}.landing-role{font-size:1.05rem}.landing-summary{font-size:1.1rem}.landing-cta{min-height:54px;padding:12px 26px 14px;font-size:.82rem}.landing-social{gap:12px}.landing-social a{width:52px;height:52px}.landing-social img{width:32px;height:32px}.landing-location{font-size:.8rem}.landing-location svg{width:16px;height:16px}}@media (prefers-reduced-motion:no-preference){.landing-screen{animation:.22s ease-out landing-fade-in}}@keyframes landing-fade-in{0%{opacity:0}to{opacity:1}}.boot-screen{z-index:5;background:var(--bg-deep,#050b1a);color:var(--text,#eaf4ff);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:16px;display:flex;position:fixed;inset:0}.boot-brand{font-family:var(--font-pixel);letter-spacing:.06em;color:var(--cyan,#27d7ff);margin:0;font-size:1.1rem;font-weight:700}.boot-heading{font-family:var(--font-pixel);letter-spacing:.04em;color:var(--text-muted,#91a9c8);margin:0 0 4px;font-size:.8rem;line-height:1.5}.boot-stages{font-family:var(--font-pixel);color:var(--text-muted,#91a9c8);text-align:left;flex-direction:column;gap:4px;min-width:220px;margin:0;padding:0;font-size:.78rem;line-height:1.5;list-style:none;display:flex}.boot-stage-done{color:var(--green,#39f27a)}.boot-progress-label{font-family:var(--font-pixel);letter-spacing:.04em;color:var(--text-muted,#91a9c8);margin:8px 0 0;font-size:.7rem;line-height:1.5}.boot-progress-row{align-items:center;gap:10px;display:flex}.boot-progress-value{min-width:4ch;font-family:var(--font-pixel);text-align:right;color:var(--cyan-bright,#57e8ff);font-size:.7rem}.boot-progress{border:1px solid var(--pixel-border,#1e5fa8);background:var(--panel-dark,#06142d);border-radius:2px;width:220px;height:8px;overflow:hidden}.boot-progress-bar{background:var(--cyan,#27d7ff);height:100%;transition:width 80ms linear}@media (prefers-reduced-motion:reduce){.boot-progress-bar{transition:none}}.boot-status{font-family:var(--font-pixel);letter-spacing:.04em;color:var(--cyan-bright,#57e8ff);margin:4px 0 0;font-size:.8rem;line-height:1.5}.mobile-controls{--mobile-control-gap:16px;--mobile-stick-size:clamp(132px, 36vmin, 168px);--mobile-stick-knob:calc(var(--mobile-stick-size) * .4);z-index:4;pointer-events:none;position:fixed;inset:0}@media not all and (pointer:coarse){.mobile-controls{display:none}}.mobile-stick,.mobile-interact{bottom:calc(env(safe-area-inset-bottom,0px) + var(--mobile-control-gap));pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;position:absolute}.mobile-stick{right:calc(env(safe-area-inset-right,0px) + var(--mobile-control-gap));width:var(--mobile-stick-size);height:var(--mobile-stick-size);cursor:grab;border-radius:50%}.mobile-stick-base,.mobile-stick-knob{image-rendering:pixelated;pointer-events:none;background-position:50%;background-repeat:no-repeat;background-size:100% 100%;position:absolute}.mobile-stick-base{background-image:url(/assets/joystick-base-qlO8XGWa.svg);inset:0}.mobile-stick-knob{width:var(--mobile-stick-knob);height:var(--mobile-stick-knob);margin:calc(var(--mobile-stick-knob) / -2) 0 0 calc(var(--mobile-stick-knob) / -2);will-change:transform;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2019%2019'%20shape-rendering='crispEdges'%3e%3crect%20x='8'%20y='0'%20width='3'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='5'%20y='1'%20width='9'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='4'%20y='2'%20width='3'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='7'%20y='2'%20width='2'%20height='1'%20fill='%2357e8ff'/%3e%3crect%20x='9'%20y='2'%20width='3'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='12'%20y='2'%20width='3'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='3'%20y='3'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='5'%20y='3'%20width='3'%20height='1'%20fill='%2357e8ff'/%3e%3crect%20x='8'%20y='3'%20width='6'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='14'%20y='3'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='2'%20y='4'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='4'%20y='4'%20width='3'%20height='1'%20fill='%2357e8ff'/%3e%3crect%20x='7'%20y='4'%20width='8'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='15'%20y='4'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='1'%20y='5'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='3'%20y='5'%20width='3'%20height='1'%20fill='%2357e8ff'/%3e%3crect%20x='6'%20y='5'%20width='2'%20height='1'%20fill='%23eaf4ff'/%3e%3crect%20x='8'%20y='5'%20width='8'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='16'%20y='5'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='1'%20y='6'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='3'%20y='6'%20width='2'%20height='1'%20fill='%2357e8ff'/%3e%3crect%20x='5'%20y='6'%20width='2'%20height='1'%20fill='%23eaf4ff'/%3e%3crect%20x='7'%20y='6'%20width='9'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='16'%20y='6'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='1'%20y='7'%20width='1'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='2'%20y='7'%20width='2'%20height='1'%20fill='%2357e8ff'/%3e%3crect%20x='4'%20y='7'%20width='13'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='17'%20y='7'%20width='1'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='0'%20y='8'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='2'%20y='8'%20width='1'%20height='1'%20fill='%2357e8ff'/%3e%3crect%20x='3'%20y='8'%20width='13'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='16'%20y='8'%20width='1'%20height='1'%20fill='%23147bff'/%3e%3crect%20x='17'%20y='8'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='0'%20y='9'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='2'%20y='9'%20width='13'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='15'%20y='9'%20width='2'%20height='1'%20fill='%23147bff'/%3e%3crect%20x='17'%20y='9'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='0'%20y='10'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='2'%20y='10'%20width='12'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='14'%20y='10'%20width='3'%20height='1'%20fill='%23147bff'/%3e%3crect%20x='17'%20y='10'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='1'%20y='11'%20width='1'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='2'%20y='11'%20width='11'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='13'%20y='11'%20width='4'%20height='1'%20fill='%23147bff'/%3e%3crect%20x='17'%20y='11'%20width='1'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='1'%20y='12'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='3'%20y='12'%20width='9'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='12'%20y='12'%20width='4'%20height='1'%20fill='%23147bff'/%3e%3crect%20x='16'%20y='12'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='1'%20y='13'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='3'%20y='13'%20width='8'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='11'%20y='13'%20width='5'%20height='1'%20fill='%23147bff'/%3e%3crect%20x='16'%20y='13'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='2'%20y='14'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='4'%20y='14'%20width='6'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='10'%20y='14'%20width='5'%20height='1'%20fill='%23147bff'/%3e%3crect%20x='15'%20y='14'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='3'%20y='15'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='5'%20y='15'%20width='4'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='9'%20y='15'%20width='5'%20height='1'%20fill='%23147bff'/%3e%3crect%20x='14'%20y='15'%20width='2'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='4'%20y='16'%20width='3'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='7'%20y='16'%20width='1'%20height='1'%20fill='%2327d7ff'/%3e%3crect%20x='8'%20y='16'%20width='4'%20height='1'%20fill='%23147bff'/%3e%3crect%20x='12'%20y='16'%20width='3'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='5'%20y='17'%20width='9'%20height='1'%20fill='%2308152f'/%3e%3crect%20x='8'%20y='18'%20width='3'%20height='1'%20fill='%2308152f'/%3e%3c/svg%3e");transition:transform .14s ease-out;top:50%;left:50%}.mobile-stick.is-active .mobile-stick-knob{transition:none}.mobile-stick.is-active{cursor:grabbing}@media (prefers-reduced-motion:reduce){.mobile-stick-knob{transition:none}}.mobile-interact{border:2px solid var(--pixel-border,#1e5fa8);color:var(--cyan,#27d7ff);font-family:var(--font-pixel);cursor:pointer;background:#06142dc7;border-radius:2px;justify-content:center;align-items:center;margin:0;padding:0;display:flex;box-shadow:inset 0 0 0 2px #08152fe6}.mobile-interact:active{border-color:var(--cyan-bright,#57e8ff);background:var(--blue,#147bff);color:var(--text,#eaf4ff)}.mobile-interact:focus-visible{outline:1px solid var(--cyan-bright,#57e8ff);outline-offset:2px}.mobile-interact{left:calc(env(safe-area-inset-left,0px) + var(--mobile-control-gap));bottom:calc(env(safe-area-inset-bottom,0px) + var(--mobile-control-gap) + var(--mobile-stick-size) / 6);width:calc(var(--mobile-stick-size) * 2 / 3);height:calc(var(--mobile-stick-size) * 2 / 3);flex-direction:column;gap:8px}.mobile-interact-key{color:var(--cyan-bright,#57e8ff);font-size:1.1rem;line-height:1}.mobile-interact-label{letter-spacing:.04em;color:var(--text,#eaf4ff);font-size:.5rem;line-height:1}.mobile-interact:active .mobile-interact-key{color:var(--text,#eaf4ff)}.view-select-screen{z-index:6;background:linear-gradient(#147bff0d 1px, transparent 1px), linear-gradient(90deg, #147bff0d 1px, transparent 1px), var(--bg-deep,#050b1a);background-size:28px 28px,28px 28px,auto;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0;overflow-y:auto}.view-select-frame{border:1px solid var(--pixel-border,#1e5fa8);background:var(--panel-dark,#06142d);width:100%;max-width:920px;box-shadow:inset 0 0 0 3px var(--bg-navy,#08152f), inset 0 0 0 4px #4d28ac8c, 0 20px 60px #0000008c;color:var(--text,#eaf4ff);text-align:center;border-radius:4px;flex-direction:column;align-items:center;gap:10px;margin:auto;padding:20px clamp(14px,3vw,28px) 24px;display:flex}.view-select-brand{font-family:var(--font-pixel);letter-spacing:.1em;color:var(--text-muted,#91a9c8);margin:0;font-size:.72rem}.view-select-heading{font-family:var(--font-pixel);letter-spacing:.06em;color:var(--cyan,#27d7ff);text-shadow:0 0 12px #27d7ff66;margin:0;font-size:clamp(1rem,3vw,1.4rem);font-weight:400;line-height:1.4}.view-select-subtitle{font-family:var(--font-pixel);letter-spacing:.06em;color:var(--text-muted,#91a9c8);margin:0 0 6px;font-size:.68rem;line-height:1.6}.view-select-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;display:grid}.view-select-card{border:2px solid var(--pixel-border,#1e5fa8);background:var(--panel,#0b2144);cursor:pointer;text-align:left;opacity:.72;border-radius:2px;flex-direction:column;transition:opacity .12s ease-out,border-color .12s ease-out,box-shadow .12s ease-out;display:flex;position:relative}.view-select-card:hover{opacity:.9;border-color:var(--blue,#147bff)}.view-select-card-selected,.view-select-card-selected:hover{opacity:1;border-color:var(--cyan,#27d7ff);box-shadow:0 0 0 2px #27d7ff40,0 0 18px #27d7ff4d}.view-select-radio{opacity:0;width:1px;height:1px;margin:0;position:absolute}.view-select-card:has(.view-select-radio:focus-visible){outline:2px solid var(--cyan-bright,#57e8ff);outline-offset:3px}.view-select-preview{aspect-ratio:4/3;border-bottom:2px solid var(--pixel-border,#1e5fa8);background:var(--bg-deep,#050b1a);display:block;position:relative;overflow:hidden}.view-select-preview img{object-fit:cover;width:100%;height:100%;image-rendering:pixelated;filter:saturate(.7)brightness(.8);transition:filter .12s ease-out;display:block}.view-select-card-selected .view-select-preview{border-bottom-color:var(--cyan,#27d7ff)}.view-select-card-selected .view-select-preview img{filter:none}.view-select-preview-missing{font-family:var(--font-pixel);letter-spacing:.06em;color:var(--text-muted,#91a9c8);justify-content:center;align-items:center;font-size:.62rem;display:flex;position:absolute;inset:0}.view-select-badge{border:1px solid var(--cyan,#27d7ff);background:var(--panel-dark,#06142d);font-family:var(--font-pixel);letter-spacing:.06em;color:var(--cyan-bright,#57e8ff);padding:5px 8px;font-size:.6rem;position:absolute;top:8px;left:8px}.view-select-card-body{flex-direction:column;gap:6px;padding:12px 14px 14px;display:flex}.view-select-card-title{font-family:var(--font-pixel);letter-spacing:.06em;color:var(--text,#eaf4ff);font-size:.85rem}.view-select-card-selected .view-select-card-title{color:var(--cyan-bright,#57e8ff)}.view-select-card-desc{font-family:var(--font-pixel);letter-spacing:.04em;color:var(--text-muted,#91a9c8);font-size:.62rem;line-height:1.6}.view-select-enter{border:1px solid var(--blue,#147bff);background:var(--panel,#0b2144);width:100%;max-width:320px;min-height:44px;color:var(--cyan-bright,#57e8ff);font-family:var(--font-pixel);letter-spacing:.06em;cursor:pointer;border-radius:2px;margin-top:10px;padding:10px 20px;font-size:.8rem}.view-select-enter:hover:not(:disabled){border-color:var(--cyan-bright,#57e8ff);background:var(--bg-navy,#08152f)}.view-select-enter:focus-visible{outline:2px solid var(--cyan-bright,#57e8ff);outline-offset:2px}.view-select-enter:disabled{cursor:default;border-color:var(--pixel-border,#1e5fa8);color:var(--text-muted,#91a9c8);font-size:.66rem}@media (width<=640px){.view-select-options{grid-template-columns:minmax(0,1fr);gap:12px}.view-select-preview{aspect-ratio:16/9}}@media (height<=520px) and (width>=641px){.view-select-frame{gap:6px;padding:12px 16px 14px}.view-select-brand{display:none}.view-select-subtitle{margin-bottom:2px}.view-select-preview{aspect-ratio:8/3}.view-select-card-body{gap:4px;padding:8px 10px 10px}.view-select-enter{margin-top:4px}}@media (prefers-reduced-motion:reduce){.view-select-card,.view-select-preview img{transition:none}}.game-canvas-host{background:#000;flex:1;width:100%;min-height:0;position:relative;overflow:hidden}.game-canvas-host canvas{display:block}.game-canvas-fallback{color:#fff;text-align:center;justify-content:center;align-items:center;margin:0;padding:16px;display:flex;position:absolute;inset:0}.id-card{border:2px solid var(--pixel-border,#1e5fa8);background:var(--bg-navy,#08152f);width:100%;max-width:720px;box-shadow:0 0 0 2px var(--bg-deep,#050b1a);color:var(--text,#eaf4ff);font-family:var(--font-pixel);margin:0 auto;position:relative}.id-visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.id-tick{z-index:1;border:0 solid var(--cyan,#27d7ff);pointer-events:none;width:10px;height:10px;position:absolute}.id-tick-tl{border-top-width:3px;border-left-width:3px;top:-2px;left:-2px}.id-tick-tr{border-top-width:3px;border-right-width:3px;top:-2px;right:-2px}.id-tick-bl{border-bottom-width:3px;border-left-width:3px;bottom:-2px;left:-2px}.id-tick-br{border-bottom-width:3px;border-right-width:3px;bottom:-2px;right:-2px}.id-header{background:var(--panel-dark,#06142d);justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:4px 8px 4px 16px;display:flex}.id-brand{color:var(--cyan,#27d7ff);letter-spacing:1px;align-items:center;gap:8px;font-size:12px;display:flex}.id-brand-dot{background:var(--purple,#4d28ac);width:6px;height:6px;box-shadow:0 0 0 1px var(--cyan,#27d7ff)}.id-header-right{align-items:center;gap:12px;display:flex}.id-doc-title{letter-spacing:2px;text-transform:uppercase;margin:0;font-size:12px;font-weight:400}.id-close{border:2px solid var(--pixel-border,#1e5fa8);background:var(--bg-navy,#08152f);width:26px;height:26px;color:var(--text,#eaf4ff);cursor:pointer;font-family:var(--font-pixel);place-items:center;padding:0;font-size:10px;line-height:1;display:grid;position:relative}.id-close:before{content:"";position:absolute;inset:-9px}.id-close:hover{border-color:var(--cyan,#27d7ff);background:var(--blue,#147bff)}.id-divider{background:var(--pixel-border,#1e5fa8);height:2px;position:relative}.id-divider:before,.id-divider:after{content:"";background:var(--cyan,#27d7ff);width:48px;height:2px;position:absolute;top:0}.id-divider:before{left:0}.id-divider:after{right:0}.id-body{grid-template-columns:196px minmax(0,1fr);gap:28px;padding:20px 24px 18px 20px;display:grid}.id-photo-block{min-width:0;margin:0}.id-photo-frame{border:2px solid var(--pixel-border,#1e5fa8);background:var(--panel,#0b2144);padding:6px;position:relative}.id-photo{aspect-ratio:88/108;border:2px solid var(--bg-deep,#050b1a);background-color:var(--panel-dark,#06142d);background-image:var(--id-photo);image-rendering:pixelated;background-position:bottom;background-repeat:no-repeat;background-size:100%;position:relative}.id-photo:after{content:"";pointer-events:none;background:repeating-linear-gradient(#050b1a00 0 3px,#050b1a2e 3px 4px);position:absolute;inset:0}.id-photo-caption{color:var(--text-muted,#91a9c8);letter-spacing:1px;text-transform:uppercase;justify-content:space-between;margin-top:6px;font-size:7px;display:flex}.id-info{flex-direction:column;min-width:0;padding-top:4px;display:flex}.id-name{letter-spacing:1px;text-transform:uppercase;overflow-wrap:anywhere;margin:0;font-size:22px;line-height:1.3}.id-role{color:var(--cyan,#27d7ff);letter-spacing:2px;text-transform:uppercase;margin:8px 0 0;font-size:11px;line-height:1.5}.id-accent{gap:4px;margin:14px 0 12px;display:flex}.id-accent span{background:var(--purple,#4d28ac);height:4px}.id-accent span:first-child{background:var(--cyan,#27d7ff);width:56px}.id-accent span:nth-child(2){width:12px}.id-accent span:nth-child(3){width:6px}.id-accent span:nth-child(4){background:var(--pixel-border,#1e5fa8);width:4px}.id-rows{margin:0}.id-row{border-bottom:1px solid #1e5fa899;grid-template-columns:132px minmax(0,1fr);align-items:center;min-height:30px;padding-left:12px;display:grid;position:relative}.id-row:last-child{border-bottom:none}.id-row:before{content:"";background:var(--pixel-border,#1e5fa8);width:4px;height:4px;margin-top:-2px;position:absolute;top:50%;left:0}.id-row dt{color:var(--text-muted,#91a9c8);letter-spacing:1px;text-transform:uppercase;font-size:9px}.id-row dd{letter-spacing:1px;text-transform:uppercase;margin:0;font-size:12px}.id-footer{border-top:2px solid var(--pixel-border,#1e5fa8);background:var(--panel-dark,#06142d);letter-spacing:1px;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;min-height:34px;padding:0 16px;font-size:9px;display:grid}.id-muted{color:var(--text-muted,#91a9c8)}.id-sys{color:var(--pixel-border,#1e5fa8);align-items:center;gap:8px;font-size:7px;display:flex}.id-bars{align-items:flex-end;gap:2px;height:10px;display:flex}.id-bars i{background:var(--pixel-border,#1e5fa8);width:2px;height:10px;display:block}.id-bars i:nth-child(2){height:6px}.id-bars i:nth-child(4){height:8px}.id-bars i:nth-child(6){height:4px}.id-status{color:var(--green,#39f27a);text-transform:uppercase;justify-content:flex-end;align-items:center;gap:8px;display:flex}.id-led{background:var(--green,#39f27a);width:8px;height:8px;box-shadow:0 0 0 2px #39f27a40}@media (height<=420px){.id-card{max-height:calc(100dvh - 32px);overflow-y:auto}}@media (width<=600px){.id-header{padding-left:12px}.id-brand,.id-doc-title{font-size:9px}.id-doc-title{letter-spacing:1px}.id-body{grid-template-columns:minmax(0,38%) minmax(0,1fr);gap:14px;padding:14px 12px 12px}.id-photo-frame{padding:4px}.id-name{font-size:13px}.id-role{letter-spacing:1px;margin-top:6px;font-size:8px}.id-accent{margin:10px 0 6px}.id-row{grid-template-columns:minmax(0,1fr);gap:2px;min-height:0;padding:5px 0 5px 10px}.id-row:before{margin-top:0;top:9px}.id-row dt{font-size:7px}.id-row dd{font-size:9px}.id-footer{grid-template-columns:1fr auto;padding:0 12px;font-size:8px}.id-sys{display:none}}.cat-panel{flex-direction:column;gap:14px;display:flex}.cat-panel-top{align-items:center;gap:16px;display:flex}.cat-portrait-frame{flex-shrink:0;width:104px;height:106px}.cat-portrait-image{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;display:block}.cat-portrait-placeholder{border:3px solid var(--bg-navy,#08152f);background:var(--panel-dark,#06142d);width:100%;height:100%;box-shadow:0 0 0 1px var(--pixel-border,#1e5fa8), 0 0 0 2px #27d7ff33;color:var(--text-muted,#91a9c8);font-family:var(--font-pixel);letter-spacing:.04em;text-align:center;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.6rem;line-height:1.4;display:flex}.cat-identity{min-width:0}.cat-identity h4{font-family:var(--font-pixel);letter-spacing:.03em;margin:0 0 4px;font-size:.95rem;line-height:1.5}.cat-role{font-family:var(--font-pixel);letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted,#91a9c8);margin:0;font-size:.72rem;line-height:1.6}.cat-summary{margin:0}@media (width<=420px){.cat-panel-top{flex-direction:column;align-items:flex-start}}.panel-icon{height:var(--panel-icon-size,56px);flex-shrink:0;display:block}.panel-icon.is-cropped{position:relative;overflow:hidden}.panel-icon img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;-webkit-user-select:none;user-select:none;display:block}.contact{--panel-icon-size:52px;--contact-icon-column:66px}.contact .panel-subtitle:before{content:"> ";color:var(--cyan,#27d7ff)}.contact-list{margin:0;padding:0;list-style:none}.contact-list li+li{border-top:1px dashed var(--pixel-border,#1e5fa8)}.contact-item{grid-template-columns:var(--contact-icon-column) minmax(0, 1fr) auto;min-height:44px;color:var(--text,#eaf4ff);align-items:center;column-gap:14px;padding:8px 10px 8px 4px;text-decoration:none;display:grid}.contact-item:hover,.contact-item:focus-visible{background:var(--bg-navy,#08152f)}.contact-item-icon{justify-content:center;display:flex}.contact-item-text{flex-direction:column;gap:4px;min-width:0;display:flex}.contact-item-label{color:var(--cyan,#27d7ff);font-family:var(--font-pixel);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem;line-height:1.5}.contact-item-value{font-family:var(--font-mono);overflow-wrap:anywhere;font-size:.95rem;line-height:1.4}.contact-item-go{color:var(--text-muted,#91a9c8);font-family:var(--font-pixel);font-size:.75rem}.contact-item:hover .contact-item-go,.contact-item:focus-visible .contact-item-go{color:var(--cyan-bright,#57e8ff)}@media (width<=480px){.contact{--panel-icon-size:46px;--contact-icon-column:58px}.contact-item{column-gap:10px;padding-right:4px}.contact-item-value{font-size:.875rem}}.education{--panel-icon-size:64px;--education-icon-column:80px;--education-gap:20px}.education-timeline{gap:var(--education-gap);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.education-stop{grid-template-columns:var(--education-icon-column) minmax(0, 1fr);column-gap:14px;padding-left:28px;display:grid;position:relative}.education-node{top:calc(var(--panel-icon-size) / 2 - 6px);background:var(--cyan,#27d7ff);clip-path:polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%);width:12px;height:12px;position:absolute;left:1px}.education-stop:not(:last-child):before{content:"";top:calc(var(--panel-icon-size) / 2 + 6px);bottom:calc(-1 * (var(--education-gap) + var(--panel-icon-size) / 2 - 6px));background:#2f4968;width:2px;position:absolute;left:6px}.education-icon{justify-content:center;display:flex}.education-stop-body{flex-direction:column;align-self:center;gap:4px;min-width:0;display:flex}.education-stop-body .panel-group-title{text-transform:uppercase}.education-stop-body p{overflow-wrap:anywhere;margin:0}.education-degree{font-family:var(--font-pixel);letter-spacing:.03em;font-size:.85rem;line-height:1.5}.education-institution,.education-university{line-height:1.4}.education-university{color:var(--text-muted,#91a9c8)}.education-facts{flex-wrap:wrap;gap:2px 16px;display:flex}.education-grade{color:var(--text,#eaf4ff)}@media (width<=480px){.education{--panel-icon-size:52px;--education-icon-column:64px;--education-gap:18px}.education-stop{column-gap:10px;padding-left:22px}}.experience{--experience-magenta:#c44dff;--experience-open-ms:.2s;flex-direction:column;gap:12px;display:flex}.experience-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.experience-entry{--experience-step:3px;--experience-clip:polygon(0 calc(var(--experience-step) * 2), var(--experience-step) calc(var(--experience-step) * 2), var(--experience-step) var(--experience-step), calc(var(--experience-step) * 2) var(--experience-step), calc(var(--experience-step) * 2) 0, calc(100% - var(--experience-step) * 2) 0, calc(100% - var(--experience-step) * 2) var(--experience-step), calc(100% - var(--experience-step)) var(--experience-step), calc(100% - var(--experience-step)) calc(var(--experience-step) * 2), 100% calc(var(--experience-step) * 2), 100% calc(100% - var(--experience-step) * 2), calc(100% - var(--experience-step)) calc(100% - var(--experience-step) * 2), calc(100% - var(--experience-step)) calc(100% - var(--experience-step)), calc(100% - var(--experience-step) * 2) calc(100% - var(--experience-step)), calc(100% - var(--experience-step) * 2) 100%, calc(var(--experience-step) * 2) 100%, calc(var(--experience-step) * 2) calc(100% - var(--experience-step)), var(--experience-step) calc(100% - var(--experience-step)), var(--experience-step) calc(100% - var(--experience-step) * 2), 0 calc(100% - var(--experience-step) * 2));background:var(--pixel-border,#1e5fa8);clip-path:var(--experience-clip);transition:background-color var(--experience-open-ms) ease-out;padding:1px}.experience-entry-face{background:var(--panel-dark,#06142d);clip-path:var(--experience-clip);box-shadow:inset 0 0 0 var(--experience-magenta);transition:background-color var(--experience-open-ms) ease-out, box-shadow var(--experience-open-ms) ease-out}.experience-entry.is-open{background:var(--cyan,#27d7ff)}.experience-entry.is-open .experience-entry-face{background:var(--bg-navy,#08152f);box-shadow:inset 3px 0 0 var(--experience-magenta)}@media (hover:hover){.experience-entry:not(.is-open):hover{background:var(--cyan,#27d7ff)}.experience-entry:not(.is-open):hover .experience-entry-face{background:#071a38}}.experience-entry-heading{font:inherit;margin:0}.experience-entry-header{width:100%;min-height:56px;color:var(--text-muted,#91a9c8);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-areas:"marker role years arrow"".company company arrow";align-items:center;gap:4px 12px;padding:12px 16px;display:grid}.experience-entry-header:focus-visible{outline:2px solid var(--cyan-bright,#57e8ff);outline-offset:-5px}.experience-entry-marker{clip-path:polygon(evenodd,50% 0,100% 50%,50% 100%,0 50%,50% 0,50% 28%,28% 50%,50% 72%,72% 50%,50% 28%);background:#4a5f7e;grid-area:marker;width:12px;height:12px}.experience-entry.is-latest .experience-entry-marker{background:var(--cyan-bright,#57e8ff);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.experience-entry-role,.experience-entry-years{font-family:var(--font-pixel);letter-spacing:.03em;line-height:1.5}.experience-entry-role{text-transform:uppercase;overflow-wrap:anywhere;grid-area:role;font-size:.78rem}.experience-entry-years{white-space:nowrap;color:#6f86a6;grid-area:years;font-size:.62rem}.experience-entry-company{grid-area:company;font-size:.9rem;line-height:1.3}.experience-entry-arrow{fill:#6f86a6;width:10px;height:14px;transition:transform var(--experience-open-ms) steps(2, jump-end);grid-area:arrow}.experience-entry.is-open .experience-entry-arrow{transform:rotate(90deg)}.experience-entry.is-latest .experience-entry-role,.experience-entry.is-open .experience-entry-role{color:var(--text,#eaf4ff)}.experience-entry.is-latest .experience-entry-years{color:var(--cyan,#27d7ff)}.experience-entry.is-open .experience-entry-role{color:var(--cyan-bright,#57e8ff)}.experience-entry.is-open .experience-entry-arrow,.experience-entry-header:focus-visible .experience-entry-arrow{fill:var(--cyan-bright,#57e8ff)}@media (hover:hover){.experience-entry-header:hover .experience-entry-arrow{fill:var(--cyan-bright,#57e8ff)}}.experience-entry-reveal{transition:grid-template-rows var(--experience-open-ms) ease-out;grid-template-rows:0fr;display:grid}.experience-entry.is-open .experience-entry-reveal{grid-template-rows:1fr}.experience-entry-clip{visibility:hidden;opacity:0;min-height:0;transition:opacity var(--experience-open-ms) ease-out, visibility 0s linear var(--experience-open-ms);overflow:hidden}.experience-entry.is-open .experience-entry-clip{visibility:visible;opacity:1;transition-delay:0s}.experience-entry-details{background:repeating-linear-gradient(90deg, var(--pixel-border,#1e5fa8) 0 6px, transparent 6px 10px) top / 100% 2px no-repeat;flex-direction:column;gap:14px;margin:0 16px;padding:14px 0 16px;display:flex}.experience-entry-details p{margin:0}.experience-entry-period{font-family:var(--font-pixel);letter-spacing:.03em;text-transform:uppercase;color:var(--text-muted,#91a9c8);font-size:.62rem;line-height:1.6}.experience-detail-section{flex-direction:column;gap:8px;display:flex}.experience-detail-label{font-family:var(--font-pixel);letter-spacing:.04em;text-transform:uppercase;color:var(--cyan,#27d7ff);margin:0;font-size:.6rem}.experience-product-name{font-family:var(--font-pixel);letter-spacing:.03em;text-transform:uppercase;font-size:.8rem;line-height:1.5}.experience-product-subtitle{color:var(--text-muted,#91a9c8);line-height:1.4}.experience-tech,.experience-contributions{margin:0;padding:0;list-style:none}.experience-tech{flex-wrap:wrap;gap:8px;display:flex}.experience-tech li{border:1px solid var(--pixel-border,#1e5fa8);background:var(--panel-dark,#06142d);max-width:100%;font-family:var(--font-pixel);letter-spacing:.02em;overflow-wrap:anywhere;padding:5px 8px;font-size:.58rem;line-height:1.5}.experience-contributions{flex-direction:column;gap:8px;display:flex}.experience-contributions li{overflow-wrap:anywhere;padding-left:18px;line-height:1.5;position:relative}.experience-contributions li:before{content:"";background:var(--cyan,#27d7ff);width:6px;height:6px;position:absolute;top:.55em;left:2px}@media (width<=480px){.experience-entry-header{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"marker role arrow"".company arrow"".years arrow";column-gap:10px;padding:12px}.experience-entry-role{font-size:.72rem}.experience-entry-details{margin:0 12px}}@media (prefers-reduced-motion:reduce){.experience-entry,.experience-entry-face,.experience-entry-arrow,.experience-entry-reveal,.experience-entry-clip{transition:none}}.projects-home{flex-direction:column;gap:16px;display:flex}.projects-folders,.projects-cards,.project-tech-chips,.project-contributions{margin:0;padding:0;list-style:none}.projects-folders{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-top:10px;display:grid}.projects-folder,.projects-card{border:1px solid var(--pixel-border,#1e5fa8);background:var(--panel-dark,#06142d);width:100%;min-height:44px;box-shadow:3px 3px 0 var(--bg-deep,#050b1a);color:var(--text,#eaf4ff);cursor:pointer;font:inherit;text-align:left;border-radius:0;flex-direction:column;align-items:flex-start;gap:8px;padding:16px;display:flex;position:relative}.projects-folder:hover,.projects-card:hover,.projects-folder:focus-visible,.projects-card:focus-visible{border-color:var(--cyan,#27d7ff);background:var(--bg-navy,#08152f)}.projects-folder:active,.projects-card:active{box-shadow:1px 1px 0 var(--bg-deep,#050b1a);transform:translate(2px,2px)}.projects-folder:before{content:"";border:1px solid var(--pixel-border,#1e5fa8);background:var(--panel-dark,#06142d);border-bottom:none;width:44%;height:9px;position:absolute;top:-10px;left:-1px}.projects-folder:hover:before,.projects-folder:focus-visible:before{border-color:var(--cyan,#27d7ff);background:var(--bg-navy,#08152f)}.projects-folder{justify-content:space-between;min-height:132px}.projects-folder-name,.projects-card-name{font-family:var(--font-pixel);letter-spacing:.03em;text-transform:uppercase;font-size:.85rem;line-height:1.5}.projects-folder-hint,.projects-card-subtitle{color:var(--text-muted,#91a9c8);line-height:1.4}.projects-folder-count,.projects-card-meta,.projects-card-view{font-family:var(--font-pixel);letter-spacing:.03em;font-size:.68rem;line-height:1.6}.projects-folder-count{color:var(--cyan,#27d7ff);text-transform:uppercase}.projects-cards{flex-direction:column;gap:14px;display:flex}.projects-card{padding-right:88px}.projects-card.has-icon{flex-direction:row;align-items:center;gap:14px}.projects-card-icon{--panel-icon-size:64px;flex:0 0 88px;justify-content:center;align-items:center;display:flex}.projects-card-text{overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.projects-card-icon .panel-icon img,.project-detail-image .panel-icon img{image-rendering:auto}.projects-card-meta{color:var(--cyan,#27d7ff)}.projects-card-view{color:var(--text-muted,#91a9c8);text-transform:uppercase;position:absolute;top:16px;right:16px}.projects-card:hover .projects-card-view,.projects-card:focus-visible .projects-card-view{color:var(--cyan-bright,#57e8ff)}.project-detail{flex-direction:column;gap:20px;display:flex}.project-detail-top{grid-template-columns:200px minmax(0,1fr);align-items:start;gap:20px;display:grid}.project-detail-image{aspect-ratio:4/3;border:3px solid var(--bg-navy,#08152f);background:var(--panel-dark,#06142d);box-shadow:0 0 0 1px var(--pixel-border,#1e5fa8), 0 0 0 2px #27d7ff33}.project-detail-image.has-icon{--panel-icon-size:128px;justify-content:center;align-items:center;display:flex}.project-detail-image>img{object-fit:cover;width:100%;height:100%;image-rendering:pixelated;display:block}.project-detail-image-placeholder{border:1px dashed var(--pixel-border,#1e5fa8);height:100%;color:var(--text-muted,#91a9c8);font-family:var(--font-pixel);letter-spacing:.04em;text-transform:uppercase;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:.62rem;display:flex}.project-detail-identity{flex-direction:column;gap:12px;min-width:0;display:flex}.project-detail-subtitle{margin:0;line-height:1.4}.project-detail-facts{flex-direction:column;gap:10px;margin:0;display:flex}.project-detail-facts dt{color:var(--cyan,#27d7ff);font-family:var(--font-pixel);letter-spacing:.04em;text-transform:uppercase;margin-bottom:2px;font-size:.62rem}.project-detail-facts dd{font-family:var(--font-pixel);letter-spacing:.02em;overflow-wrap:anywhere;margin:0;font-size:.75rem;line-height:1.6}.project-detail-section{flex-direction:column;gap:8px;display:flex}.project-detail-section p{margin:0;line-height:1.5}.project-tech-chips{flex-wrap:wrap;gap:8px;display:flex}.project-tech-chips li{border:1px solid var(--pixel-border,#1e5fa8);background:var(--panel-dark,#06142d);max-width:100%;font-family:var(--font-pixel);letter-spacing:.02em;overflow-wrap:anywhere;padding:5px 8px;font-size:.62rem;line-height:1.5}.project-contributions{flex-direction:column;gap:8px;display:flex}.project-contributions li{overflow-wrap:anywhere;padding-left:18px;line-height:1.5;position:relative}.project-contributions li:before{content:"";background:var(--cyan,#27d7ff);width:6px;height:6px;position:absolute;top:.55em;left:2px}@media (width<=560px){.projects-folders{grid-template-columns:minmax(0,1fr);gap:24px}.projects-folder{min-height:96px}.project-detail-top{grid-template-columns:minmax(0,1fr)}.project-detail-image{width:100%;max-width:320px}}@media (width<=768px){.projects-cards{gap:12px}.projects-card,.projects-card.has-icon{flex-direction:column;align-items:stretch;gap:10px;padding:14px}.projects-card-text{display:contents}.projects-card-name{text-align:center;overflow-wrap:anywhere;order:1;font-size:1.125rem}.projects-card-icon{--panel-icon-size:64px;flex:none;order:2}.projects-card-icon:empty{display:none}.projects-card-subtitle{order:3;font-size:.9rem}.projects-card-meta{overflow-wrap:anywhere;flex-direction:column;order:4;gap:2px;font-size:clamp(.7rem,3.4vw,.8125rem);display:flex}.projects-card-meta-separator{display:none}.projects-card-meta-part:first-child:not(:only-child){text-transform:uppercase}.projects-card-view,.projects-card:hover .projects-card-view,.projects-card:focus-visible .projects-card-view{border:1px solid var(--pixel-border,#1e5fa8);background:var(--blue,#147bff);min-height:44px;color:var(--text,#eaf4ff);white-space:nowrap;order:5;justify-content:center;align-self:flex-end;align-items:center;margin-top:2px;padding:0 18px;font-size:.8rem;display:inline-flex;position:static}}@media (width<=340px){.projects-card,.projects-card.has-icon{padding:12px}}@media (prefers-reduced-motion:reduce){.projects-folder:active,.projects-card:active{transform:none}}.resume .panel-subtitle:before{content:"> ";color:var(--cyan,#27d7ff)}.resume-actions{flex-wrap:wrap;gap:12px;display:flex}.resume-button{text-align:center;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.resume-button:active{background:var(--purple,#4d28ac);transform:translateY(1px)}.resume-button--secondary{border-color:var(--cyan,#27d7ff);color:var(--cyan-bright,#57e8ff);background:0 0}.resume-button--secondary:hover{background:var(--bg-navy,#08152f);color:var(--text,#eaf4ff)}.resume-button--secondary:active{background:var(--panel,#0b2144)}.resume-preview{border:1px solid var(--pixel-border,#1e5fa8);background:var(--bg-deep,#050b1a);justify-content:center;align-items:center;height:clamp(320px,62dvh,900px);display:flex}.resume-preview-frame{background:#525659;border:0;width:100%;height:100%}.resume-preview-note{text-align:center;max-width:44ch;color:var(--text-muted,#91a9c8);margin:0;padding:16px}.resume-preview-note.is-error{color:var(--warning,#ffd166)}.resume-preview:not(:has(.resume-preview-frame)){height:auto;min-height:160px}@media (width<=480px){.resume-button{flex:100%}.resume-preview{height:60dvh}}.skills-panel{--skills-icon-size:64px;gap:18px}.skills-subtitle{text-transform:uppercase;margin:-10px 0 0}.skills-groups{flex-wrap:wrap;gap:18px 28px;display:flex}.skills-group{flex-direction:column;gap:6px;min-width:0;max-width:100%;display:flex}.skills-group .panel-group-title{text-transform:uppercase;font-size:.7rem}.skills-icons{flex-wrap:wrap;gap:6px 10px;margin:0;padding:0;list-style:none;display:flex}.skills-icons li{min-width:0;display:flex}.skills-icon{height:var(--skills-icon-size);max-width:100%;color:inherit;font:inherit;cursor:default;background:0 0;border:0;padding:0;display:block;position:relative}.skills-icon img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;-webkit-user-select:none;user-select:none;display:block}.skills-icon-name{z-index:1;border:1px solid var(--pixel-border,#1e5fa8);background:var(--bg-deep,#050b1a);width:max-content;max-width:96px;color:var(--text,#eaf4ff);font-family:var(--font-pixel);letter-spacing:.02em;text-align:center;pointer-events:none;margin-top:-10px;padding:4px 5px;font-size:.5rem;line-height:1.5;display:none;position:absolute;top:100%;left:50%;transform:translate(-50%)}.skills-icon:focus-visible .skills-icon-name,.skills-icon.is-active .skills-icon-name{display:block}@media (hover:hover){.skills-icon:hover .skills-icon-name{display:block}}@media (width<=480px){.skills-panel{--skills-icon-size:56px}.skills-groups{column-gap:20px}}@keyframes skills-fade-in{0%{opacity:0}}@keyframes skills-rise-in{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:no-preference){.skills-subtitle,.skills-group .panel-group-title{animation:.16s ease-out backwards skills-fade-in}.skills-icons li{animation:.18s ease-out backwards skills-rise-in;animation-delay:calc(60ms + var(--skills-order,0) * 16ms)}}.interaction-overlay{z-index:10;background:#050b1abf;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.interaction-overlay-window:focus{outline:none}.interaction-overlay.is-window{background:#050b1a73}.interaction-overlay-window{width:100%;max-width:960px;max-height:calc(100dvh - 32px);color:var(--text,#eaf4ff);flex-direction:column;display:flex}.interaction-overlay-window button:focus-visible{outline:2px solid var(--cyan-bright,#57e8ff);outline-offset:2px}.panel-section{flex-direction:column;gap:16px;display:flex}.panel-group-title{font-family:var(--font-pixel);letter-spacing:.03em;color:var(--cyan,#27d7ff);margin:0;font-size:.85rem;line-height:1.5}.panel-list{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.panel-list-item h4{font-family:var(--font-pixel);letter-spacing:.02em;margin:0 0 4px;font-size:.85rem;line-height:1.5}.panel-list-item p{margin:0 0 6px}.panel-list-item>a{font-family:var(--font-pixel);letter-spacing:.03em;font-size:.8rem}.panel-sublist{margin:6px 0 0;padding-left:20px}.panel-meta{font-family:var(--font-pixel);letter-spacing:.02em;color:var(--text-muted,#91a9c8);font-size:.75rem;line-height:1.6}.panel-subtitle{text-transform:uppercase;margin:-8px 0 0}@keyframes panel-item-in{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:no-preference){.panel-stagger-item{animation:.18s ease-out backwards panel-item-in;animation-delay:calc(60ms + var(--panel-order,0) * 45ms)}}.panel-empty{color:var(--text-muted,#91a9c8)}.panel-button{border:1px solid var(--pixel-border,#1e5fa8);background:var(--blue,#147bff);min-height:44px;color:var(--text,#eaf4ff);font-family:var(--font-pixel);letter-spacing:.03em;border-radius:4px;padding:10px 20px;font-size:.8rem;text-decoration:none;display:inline-block}.panel-button:hover{background:var(--cyan,#27d7ff)}.app-shell{background:var(--bg-deep,#050b1a);flex-direction:column;width:100%;height:100svh;display:flex;overflow:hidden}.game-main{flex:1;min-height:0;display:flex}@media (prefers-reduced-motion:no-preference){.app-shell{animation:.22s ease-out app-shell-fade-in}}@keyframes app-shell-fade-in{0%{opacity:0}to{opacity:1}}
