@font-face{font-family:Archivo Black;font-style:normal;font-weight:400;font-display:swap;src:url("./media/archivo-black-latin-ext-XC73NCVZ.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Archivo Black;font-style:normal;font-weight:400;font-display:swap;src:url("./media/archivo-black-latin-TAWO77T3.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url("./media/space-grotesk-vietnamese-4GVLBEZS.woff2") format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url("./media/space-grotesk-latin-ext-W44HUY65.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url("./media/space-grotesk-latin-G2LGZSSU.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--purple: #6e2aa6;--purple-deep: #551f83;--ink: #121212;--cream: #edeae3;--cream-dim: #cdc9c0;--shadow-offset: 7px;--radius: 3px;--correct: #4b8f3e;--present: #e0a52c;--absent: #3a3550;--font-display: "Archivo Black", "Arial Black", sans-serif;--font-body: "Space Grotesk", "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--purple);background-image:radial-gradient(circle at 50% 0%,var(--purple) 0%,var(--purple-deep) 100%);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);margin:0}a{color:inherit}.press-btn{--btn-bg: var(--cream);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1rem;letter-spacing:.04em;color:var(--ink);background:var(--btn-bg);border:3px solid var(--ink);border-radius:var(--radius);padding:1.1rem 1.5rem;cursor:pointer;text-decoration:none;text-transform:uppercase;box-shadow:var(--shadow-offset) var(--shadow-offset) 0 0 var(--ink);transform:translate(0);transition:transform .08s ease,box-shadow .08s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.press-btn:hover{filter:brightness(1.02)}.press-btn:active,.press-btn.is-pressed{transform:translate(var(--shadow-offset),var(--shadow-offset));box-shadow:0 0 0 0 var(--ink)}.press-btn:focus-visible{outline:3px solid var(--cream);outline-offset:4px}.press-btn:disabled{cursor:not-allowed}@media (prefers-reduced-motion: reduce){.press-btn{transition:none}}.pixel-input{display:block;width:100%;font-family:var(--font-body);font-weight:700;font-size:1rem;color:var(--ink);background:var(--cream);border:3px solid var(--ink);border-radius:var(--radius);padding:.9rem 1rem;box-shadow:4px 4px 0 0 var(--ink)}.pixel-input::placeholder{color:var(--cream-dim)}.pixel-input:focus{outline:none;filter:brightness(1.02)}.pixel-loader{display:flex;justify-content:center;gap:.5rem;margin:.5rem 0}.pixel-loader span{width:.85rem;height:.85rem;background:var(--cream-dim);border:2px solid var(--ink);animation:pixel-bounce 1.1s ease-in-out infinite}.pixel-loader span:nth-child(1){animation-delay:0s}.pixel-loader span:nth-child(2){animation-delay:.15s}.pixel-loader span:nth-child(3){animation-delay:.3s}.pixel-loader span:nth-child(4){animation-delay:.45s}.pixel-loader span:nth-child(5){animation-delay:.6s}@keyframes pixel-bounce{0%,80%,to{transform:translateY(0);background:var(--cream-dim)}40%{transform:translateY(-8px);background:var(--purple)}}@media (prefers-reduced-motion: reduce){.pixel-loader span{animation:none}}.code-snippet{margin:0;padding:.9rem 1rem;background:var(--ink);color:var(--cream);border:2px solid var(--ink);border-radius:var(--radius);font-family:SF Mono,Consolas,Monaco,Courier New,monospace;font-size:.8rem;line-height:1.5;text-align:left;overflow-x:auto;white-space:pre}
