:root{--text:#6b6375;--text-h:#08060d;--text-muted:#8a8299;--bg:#f3f1f7;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1f;--accent-border:#aa3bff73;--surface:#fff;--surface-elevated:#faf9fc;--success:#0d9f6e;--success-bg:#0d9f6e1a;--danger:#dc2626;--danger-bg:#dc262614;--warn:#c2410c;--warn-bg:#c2410c14;--shadow:#00000014 0 12px 28px -8px, #0000000a 0 6px 12px -4px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background-color:var(--bg);background-image:radial-gradient(ellipse 120% 80% at 50% -20%, var(--accent-bg), transparent 55%);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--text-muted:#6b7280;--bg:#0f1014;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc24;--accent-border:#c084fc73;--surface:#18191f;--surface-elevated:#1f2028;--success:#34d399;--success-bg:#34d3991f;--danger:#f87171;--danger-bg:#f871711a;--warn:#fb923c;--warn-bg:#fb923c1a;--shadow:#00000073 0 16px 40px -12px, #00000040 0 6px 14px -6px}}*,:before,:after{box-sizing:border-box}html{height:100%;overflow:hidden}body{height:100%;margin:0;overflow:hidden}#root{box-sizing:border-box;flex-direction:column;justify-content:flex-start;align-items:stretch;width:100%;height:100dvh;max-height:100dvh;padding:0;display:flex;position:fixed;inset:0;overflow:hidden}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:600}h1{letter-spacing:-.04em;margin:0 0 .35rem;font-size:clamp(1.75rem,4vw,2.25rem);line-height:1.15}h2{letter-spacing:-.02em;margin:0 0 .5rem;font-size:1.25rem;line-height:1.2}p{margin:0}code{font-family:var(--mono);color:var(--text-h);background:var(--code-bg);border-radius:4px;padding:4px 8px;font-size:15px;line-height:135%;display:inline-flex}.app{text-align:center;flex-direction:column;flex:auto;justify-content:flex-start;align-items:stretch;width:100%;min-height:0;max-height:100%;animation:.5s both app-enter;display:flex;overflow:hidden}.app:not(.app--in-round){box-sizing:border-box;justify-content:center;align-items:center;padding:clamp(1rem,4vw,2rem)}.app--in-round{box-sizing:border-box;padding-block:clamp(.5rem,2vh,1.25rem);padding-inline:clamp(1rem,5vw,2.75rem)}@keyframes app-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.app__header{margin-bottom:1.75rem}.app__tagline{color:var(--text-muted);max-width:26rem;margin-inline:auto;font-size:.95rem;line-height:1.45}.app__start-wrap{width:100%;max-width:22rem;margin-bottom:1.25rem}.game-shell{overscroll-behavior:contain;flex:auto;grid-template-columns:1fr;align-content:stretch;align-items:stretch;gap:clamp(1rem,3vw,2rem);width:100%;min-height:0;max-height:100%;animation:.45s cubic-bezier(.22,1,.36,1) both card-enter;display:grid;overflow:hidden auto}@media (width>=880px){.game-shell{grid-template-columns:minmax(0,1fr) minmax(18rem,26rem);align-items:center;gap:0 clamp(1.5rem,4vw,3rem)}}.game-shell__visual{flex-direction:column;flex-shrink:0;align-items:center;gap:clamp(.65rem,2vh,1.15rem);min-height:0;display:flex}@media (width<=879px){.game-shell__visual{width:100%}.game-shell__heading{width:100%;max-width:22rem}}.game-shell__heading{flex-shrink:0;margin:0}.game-shell__panel{flex-direction:column;justify-content:center;min-width:0;min-height:0;display:flex}.game-shell__panel-inner{flex-direction:column;gap:clamp(.75rem,2vh,1rem);width:100%;display:flex}@media (width>=880px){.game-shell__panel-inner{background:color-mix(in srgb, var(--surface) 78%, transparent);border:1px solid var(--border);box-shadow:inset 0 1px 0 #ffffff0f, var(--shadow);-webkit-backdrop-filter:blur(10px);text-align:left;border-radius:1.125rem;padding:clamp(1.05rem,3vw,1.6rem)}.game-shell__panel-inner .progress,.game-shell__panel-inner .game-shell__controls-row,.game-shell__panel-inner .message:not(:empty){justify-content:flex-start}}@media (prefers-color-scheme:dark) and (width>=880px){.game-shell__panel-inner{background:color-mix(in srgb, var(--surface) 92%, transparent);box-shadow:inset 0 1px 0 #ffffff0f, var(--shadow)}}@keyframes card-enter{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.game-shell__art-wrap{--artwork-blur:0px;aspect-ratio:1;background:var(--surface-elevated);width:min(20rem,92vw);max-width:100%;box-shadow:inset 0 0 0 1px var(--border), 0 4px 24px #0000000f;border-radius:.875rem;flex-shrink:0;margin-inline:auto;position:relative;overflow:hidden}@media (prefers-color-scheme:dark){.game-shell__art-wrap{box-shadow:inset 0 0 0 1px var(--border), 0 4px 28px #00000059}}@media (width>=880px){.game-shell__art-wrap{width:min(100%,min(74vmin,52vw));max-width:28rem}}.game-shell__art{object-fit:cover;width:100%;height:100%;filter:blur(var(--artwork-blur));transition:filter .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1);display:block;transform:scale(1.04)}.game-meta{color:var(--text-muted);flex-direction:column;gap:.35rem;margin:0;font-size:.9rem;display:flex}.game-meta strong{color:var(--text-h);font-weight:600}.progress{justify-content:center;gap:.45rem;margin:0;display:flex}.progress__dot{background:var(--border);border-radius:999px;width:.5rem;height:.5rem;transition:background .3s,transform .3s,box-shadow .3s}.progress__dot--active{background:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);transform:scale(1.15)}.progress__dot--past{background:var(--accent);opacity:.45}.game-shell__controls-row{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:.65rem;margin:0;display:flex}.game-shell__form{flex-direction:column;gap:.65rem;margin:0;display:flex}.game-shell__autocomplete{z-index:1;width:100%;position:relative}.game-shell__guess-input{z-index:2;text-align:left;position:relative}.suggestions-list{text-align:left;background:var(--surface-elevated);border:1px solid var(--border);box-shadow:var(--shadow);overscroll-behavior:contain;border-radius:.65rem;max-height:12.5rem;margin:0;padding:.3rem;list-style:none;animation:.2s both suggestions-enter;position:absolute;top:calc(100% + .35rem);left:0;right:0;overflow-y:auto}@keyframes suggestions-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.suggestions-list__item{margin:0}.suggestions-list__option{width:100%;font:inherit;color:var(--text-h);text-align:inherit;cursor:pointer;background:0 0;border:none;border-radius:.45rem;margin:0;padding:.6rem .75rem;font-size:.95rem;line-height:1.35;transition:background .15s,color .15s;display:block}.suggestions-list__option:hover{background:var(--accent-bg);color:var(--text-h)}.suggestions-list__option:focus{outline:none}.suggestions-list__option:focus-visible{background:var(--accent-bg);box-shadow:inset 0 0 0 2px var(--accent-border)}.input{width:100%;font:inherit;color:var(--text-h);background:var(--surface-elevated);border:1px solid var(--border);border-radius:.65rem;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s}.input::placeholder{color:var(--text-muted)}.input:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 35%, var(--border))}.input:focus{outline:none}.input:focus-visible{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-bg)}.input:disabled{opacity:.55;cursor:not-allowed}.btn{min-height:2.75rem;font:inherit;letter-spacing:-.01em;cursor:pointer;border:1px solid #0000;border-radius:.65rem;justify-content:center;align-items:center;gap:.4rem;padding:0 1.15rem;font-size:.95rem;font-weight:600;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform .15s,opacity .2s;display:inline-flex}.btn:active:not(:disabled){transform:scale(.98)}.btn--block{width:100%}.btn--stretch{flex:9rem;min-width:0}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{color:#fff;background:linear-gradient(165deg, var(--accent) 0%, #7c2dd8 100%);border-color:color-mix(in srgb, var(--accent) 60%, #000);box-shadow:0 2px 12px color-mix(in srgb, var(--accent) 35%, transparent)}.btn--primary:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 4px 18px color-mix(in srgb, var(--accent) 42%, transparent)}.btn--secondary{color:var(--text-h);background:var(--surface-elevated);border-color:var(--border)}.btn--secondary:hover:not(:disabled){border-color:var(--accent-border);background:var(--accent-bg)}.btn--ghost{color:var(--text-muted);border-color:var(--border);background:0 0}.btn--ghost:hover:not(:disabled){color:var(--text-h);border-color:var(--text-muted);background:var(--surface-elevated)}.btn--play{min-width:10rem}.btn--play.btn--playing{animation:1.2s ease-in-out infinite play-pulse}@keyframes play-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 45%, transparent)}50%{box-shadow:0 0 0 10px #0000}}.message{border:1px solid #0000;border-radius:.65rem;justify-content:center;align-items:center;min-height:2.75rem;padding:.65rem 1rem;font-size:.95rem;line-height:1.4;transition:background .25s,border-color .25s,color .25s;display:flex}.message:empty{border:none;min-height:0;padding:0}.message--neutral{background:var(--surface-elevated);border-color:var(--border);color:var(--text-h)}.message--success{background:var(--success-bg);border-color:color-mix(in srgb, var(--success) 35%, transparent);color:var(--success)}.message--warn{background:var(--warn-bg);border-color:color-mix(in srgb, var(--warn) 35%, transparent);color:var(--warn)}.message--error{background:var(--danger-bg);border-color:color-mix(in srgb, var(--danger) 35%, transparent);color:var(--danger)}.game-shell__footer{margin:0;padding-top:.15rem}
