@font-face{font-family:Home Video;src:url(/assets/home-video.regular-CSTfzMlY.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--color-ink:#2e222f;--color-surface:#3e3546;--color-surface-raised:#625565;--color-border:#7f708a;--color-muted:#9babb2;--color-text:#c7dcd0;--color-white:#fff;--color-primary:#f57d4a;--color-primary-hover:#f79617;--color-primary-shadow:#9e4539;--color-secondary-hover:#6b3e75;--color-focus:#8fd3ff}*{box-sizing:border-box}body{background:var(--color-ink);min-width:320px;min-height:100vh;color:var(--color-text);font-optical-sizing:auto;font-variation-settings:"ELSH" 0;margin:0;font-family:Geist Pixel,sans-serif;font-style:normal;font-weight:400}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.site-nav{justify-content:space-between;align-items:center;min-height:60px;padding:10px clamp(8px,1.5vw,16px);display:flex;position:relative}.site-nav nav{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex;position:relative}.site-nav .brand{z-index:1;color:var(--color-white);letter-spacing:.01em;white-space:nowrap;font-size:1.1rem;font-weight:800;text-decoration:none;position:absolute;left:50%;transform:translate(-50%)}.site-nav nav button{min-height:34px;font:inherit;color:var(--color-text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:6px 11px;font-size:.875rem;font-weight:600;transition:background .15s,border-color .15s,color .15s}.site-nav nav button:hover{color:var(--color-white);background:0 0;border-color:#0000}.site-nav .nav-icon-button{width:38px;min-height:38px;color:var(--color-white);padding:0;font-size:1.25rem;font-weight:800}.site-nav .menu-toggle{font-size:1.4rem;line-height:1}.site-menu{z-index:30;flex-direction:column;gap:8px;width:180px;display:flex;position:absolute;top:calc(100% + 10px);right:0}.site-nav .site-menu button{width:100%;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);text-align:center}.site-nav .site-menu a{width:100%;min-height:34px;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);text-align:center;border-radius:6px;padding:6px 11px;font-size:.875rem;font-weight:600;text-decoration:none}.site-nav .site-menu button:hover{background:var(--color-surface-raised)}.site-nav .site-menu a:hover{color:var(--color-white);background:var(--color-surface-raised)}.page{text-align:center;max-width:1100px;margin:0 auto;padding:24px 16px 80px}.page-title{margin:8px 0 20px}.about-page{text-align:center;max-width:680px;margin:120px auto;padding:0 24px}.about-page h1{color:var(--color-white)}.about-page a{color:var(--color-primary-hover)}#game-wrap{aspect-ratio:16/11;border:3px solid var(--color-surface-raised);border-radius:10px;width:min(960px,100%);margin:24px auto 0;position:relative;overflow:hidden;box-shadow:0 12px 32px #2e222f8c}#game-canvas{width:100%;height:100%;display:block}#hud-timer{color:#fff;pointer-events:none;background:#2e222fad;border-radius:6px;padding:6px 10px;font-family:Home Video,ui-monospace,monospace;font-size:32px;font-weight:400;position:absolute;top:16px;left:16px}.game-focus-overlay{z-index:5;pointer-events:none;background:#241825cc;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.game-focus-overlay p{color:var(--color-white);border:1px solid var(--color-border);box-shadow:0 5px 0 var(--color-ink);text-align:center;background:#2e222fb8;border-radius:8px;place-self:center;margin:0;padding:14px 20px;font-size:clamp(1rem,2.6vw,1.45rem);font-weight:700;line-height:1.35}.loading-dots{vertical-align:bottom;justify-content:flex-start;width:3ch;display:inline-flex}.loading-dots span{opacity:0}.loading-dots span:first-child{animation:1.2s step-end infinite reveal-first-dot}.loading-dots span:nth-child(2){animation:1.2s step-end infinite reveal-second-dot}.loading-dots span:nth-child(3){animation:1.2s step-end infinite reveal-third-dot}@keyframes reveal-first-dot{0%,24%{opacity:0}25%,to{opacity:1}}@keyframes reveal-second-dot{0%,49%{opacity:0}50%,to{opacity:1}}@keyframes reveal-third-dot{0%,74%{opacity:0}75%,to{opacity:1}}@media (prefers-reduced-motion:reduce){.loading-dots span{animation:none}.loading-dots span:first-child{opacity:1}}.overlay{background:#2e222fc2;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.overlay[hidden]{display:none}.modal-overlay{z-index:20;background:#2e222fd6;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.card{width:min(360px,100%);color:var(--color-text);background:var(--color-surface);border:2px solid var(--color-border);box-shadow:0 7px 0 var(--color-ink), 0 14px 28px #2e222f59;text-align:center;border-radius:10px;padding:24px}.card h1{margin:0 0 8px;font-size:40px}.card h2{color:var(--color-white);margin:0 0 12px;font-size:clamp(1.25rem,3vw,1.5rem);line-height:1.2}.card p{line-height:1.5}.card button{min-width:120px;min-height:36px;color:var(--color-white);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:6px;padding:7px 12px;font-size:.875rem;font-weight:750;transition:transform .12s,background .12s,border-color .12s}.card button:hover{transform:translateY(-1px)}.card .button-primary{background:var(--color-primary);border-color:var(--color-primary-hover);box-shadow:0 3px 0 var(--color-primary-shadow)}.card .button-primary:hover{background:var(--color-primary-hover)}.card .button-secondary{color:var(--color-text);background:var(--color-surface-raised);border-color:var(--color-border)}.card .button-secondary:hover{color:var(--color-white);background:var(--color-secondary-hover)}.card-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px;display:flex}.card-feedback{color:#fca790;min-height:1.25em;margin:10px 0 -6px;font-size:.8125rem}.welcome-card{width:min(400px,100%);padding-top:32px;position:relative}.how-to-play-section{max-width:680px;color:var(--color-text);background:var(--color-surface);border:2px solid var(--color-border);text-align:center;border-radius:10px;margin:clamp(120px,18vh,360px) auto 100px;padding:32px 24px;scroll-margin-top:24px}.how-to-play-section h2{color:var(--color-white);margin-top:0}.how-to-play-section kbd{min-width:1.9em;min-height:1.9em;color:var(--color-white);background:var(--color-surface-raised);border:1px solid var(--color-border);box-shadow:0 2px 0 var(--color-ink);vertical-align:middle;border-radius:4px;place-items:center;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em;line-height:1;display:inline-grid}.how-to-play-section .button-primary{min-height:40px;color:var(--color-white);background:var(--color-primary);border:1px solid var(--color-primary-hover);box-shadow:0 3px 0 var(--color-primary-shadow);font:inherit;cursor:pointer;border-radius:6px;margin-top:12px;padding:8px 16px;font-weight:750}.card .card-close{min-width:36px;min-height:36px;color:var(--color-muted);background:0 0;border-color:#0000;padding:0;font-size:1.75rem;font-weight:700;line-height:1;position:absolute;top:1px;right:1px}.card .card-close:hover{color:var(--color-white);background:0 0}.tutorial-exit{z-index:10;color:#fff;border:1px solid var(--color-border);box-shadow:0 3px 0 var(--color-ink);cursor:pointer;background:#2e222fcc;border-radius:6px;padding:6px 12px;font-family:Home Video,ui-monospace,monospace;font-size:24px;font-weight:400;transition:transform .12s,background .12s;position:absolute;top:16px;right:16px}.tutorial-exit:hover{background:var(--color-surface-raised);transform:translateY(-1px)}.tutorial-exit:active{box-shadow:none;transform:translateY(2px)}.settings-card{width:min(360px,100%);padding-top:32px;position:relative}.settings-card .volume-control{text-align:left;flex-direction:column;gap:10px;margin:22px 0;display:flex}.settings-card .volume-control input{width:100%}.settings-card>.button-secondary{color:var(--color-text);background:var(--color-surface-raised);border-color:var(--color-border)}@media (width<=620px){#game-wrap{border-left:0;border-right:0;border-radius:0;margin-top:14px}.card{padding:20px}.card-actions{flex-direction:column}.card-actions button{width:100%}.welcome-card .card-actions{flex-flow:row}.welcome-card .card-actions button{width:auto}}.editor-panel{z-index:10;color:#cdd4f0;background:#101422eb;border:1px solid #2e3860;border-radius:8px;min-width:160px;padding:10px 12px;font-size:13px;position:absolute;top:8px;left:8px}.editor-panel h3{text-transform:capitalize;margin:0 0 6px}.editor-panel .prop{justify-content:space-between;gap:12px;padding:2px 0;display:flex}.editor-panel dt{color:#8b93b8}.editor-panel .hint{color:#8b93b8;margin:0}.editor-panel .prop dd{margin:0}.editor-panel input[type=number],.editor-panel select{width:72px;font:inherit;color:#cdd4f0;text-align:right;background:#10141f;border:1px solid #2e3860;border-radius:4px;padding:2px 6px}.editor-panel .motion-fields{gap:4px;display:grid}.editor-panel .motion-fields label{color:#8b93b8;justify-content:space-between;align-items:center;gap:8px;display:flex}.editor-toolbar{z-index:10;gap:8px;display:flex;position:absolute;top:8px;right:8px}.editor-toolbar button{font:inherit;color:#cdd4f0;cursor:pointer;background:#1a2036;border:1px solid #2e3860;border-radius:6px;padding:6px 12px}.editor-toolbar button:hover{background:#232c4a;border-color:#4a5798}.level-settings{z-index:10;color:#cdd4f0;background:#101422eb;border:1px solid #2e3860;border-radius:8px;align-items:center;gap:8px;padding:6px 10px;font-size:13px;display:flex;position:absolute;bottom:8px;left:8px}.level-settings .ls-title{color:#8b93b8}.level-settings label{color:#8b93b8;align-items:center;gap:4px;display:flex}.level-settings input[type=number]{width:72px;font:inherit;color:#cdd4f0;text-align:right;background:#10141f;border:1px solid #2e3860;border-radius:4px;padding:2px 6px}.io-overlay{z-index:50;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.io-modal{color:#cdd4f0;background:#141a2b;border:1px solid #2e3860;border-radius:10px;flex-direction:column;gap:10px;width:min(560px,90vw);padding:16px;display:flex}.io-modal h3{margin:0}.io-modal textarea{color:#cdd4f0;resize:vertical;background:#0c101a;border:1px solid #2e3860;border-radius:6px;height:320px;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.io-actions{justify-content:flex-end;gap:8px;display:flex}.io-actions button{font:inherit;color:#cdd4f0;cursor:pointer;background:#1a2036;border:1px solid #2e3860;border-radius:6px;padding:6px 16px}.io-actions button:hover{background:#232c4a;border-color:#4a5798}.site-footer{color:var(--color-muted);text-align:center;margin-top:80px;padding:32px 16px}.site-footer p{margin:4px 0}
