@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.0zgw-jeven.3w.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0wkzw~je483f-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.0rhz0arwfsn~5.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.0l76wvqk9d84w.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0k4k9394f2q-k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.08e28id.o-okb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--text-primary:#f8fafc;--text-secondary:#94a3b8;--border-color:#334155;--border-active:#64748b;--color-correct:#10b981;--color-present:#f59e0b;--color-absent:#475569;--color-empty:#1e293b;--key-bg:#334155;--key-bg-hover:#475569;--key-text:#f8fafc;--glass-bg:#1e293bb3;--glass-border:#ffffff14;--glass-shadow:#0006;--accent-blue:#3b82f6;--accent-glow:#3b82f64d;--font-family:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--header-height:60px;--board-max-width:350px;--board-max-height:420px}[data-theme=light]{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#e2e8f0;--text-primary:#0f172a;--text-secondary:#64748b;--border-color:#cbd5e1;--border-active:#94a3b8;--color-correct:#10b981;--color-present:#f59e0b;--color-absent:#788896;--color-empty:#fff;--key-bg:#e2e8f0;--key-bg-hover:#cbd5e1;--key-text:#0f172a;--glass-bg:#ffffffbf;--glass-border:#0f172a14;--glass-shadow:#0f172a14;--accent-glow:#3b82f626}[data-high-contrast=true]{--color-correct:#f97316;--color-present:#85d8ff;--color-absent:#475569}[data-theme=light][data-high-contrast=true]{--color-correct:#f97316;--color-present:#0284c7;--color-absent:#788896}html,body{height:100%;overflow-x:hidden}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family);flex-direction:column;transition:background-color .3s,color .3s;display:flex}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-active)}@keyframes pop-in{0%{opacity:0;transform:scale(.8)}40%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes flip-in{0%{transform:scaleY(1)}45%{transform:scaleY(0)}55%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes shake{0%,to{transform:translate(0)}15%,45%,75%{transform:translate(-6px)}30%,60%,90%{transform:translate(6px)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 10px var(--accent-glow)}50%{box-shadow:0 0 20px #3b82f699}}.container{flex-direction:column;width:100%;max-width:500px;height:100dvh;margin:0 auto;padding:0 12px;display:flex;overflow:hidden}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:0 8px 32px 0 var(--glass-shadow)}button{font-family:var(--font-family);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;outline:none}a,button,input{transition:all .2s cubic-bezier(.4,0,.2,1)}h1,h2,h3,h4,h5{letter-spacing:-.02em;font-weight:700}.switch{width:46px;height:24px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:var(--key-bg);border-radius:24px;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.slider:before{content:"";background-color:var(--text-primary);border-radius:50%;width:18px;height:18px;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;bottom:3px;left:3px}input:checked+.slider{background-color:var(--accent-blue)}input:checked+.slider:before{transform:translate(22px)}.flex-center{justify-content:center;align-items:center;display:flex}.btn-primary{background:var(--accent-blue);color:#fff;border:1px solid #ffffff1a;border-radius:12px;padding:10px 20px;font-size:.95rem;font-weight:600;box-shadow:0 4px 12px #3b82f64d}.btn-primary:hover{background:#2563eb;transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--key-bg);color:var(--text-primary);border:1px solid var(--border-color);border-radius:12px;padding:10px 20px;font-size:.95rem;font-weight:600}.btn-secondary:hover{background:var(--key-bg-hover)}.toast-container{z-index:1000;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:80px;left:50%;transform:translate(-50%)}.toast{background:var(--text-primary);color:var(--bg-primary);white-space:nowrap;border-radius:12px;padding:12px 24px;font-size:.9rem;font-weight:600;animation:.2s cubic-bezier(.18,.89,.32,1.28) pop-in;box-shadow:0 10px 30px #00000040}@media (max-height:660px){:root{--header-height:50px;--board-max-height:340px}}
