.emoji-app,.emoji-app *{box-sizing:border-box;margin:0;padding:0}.emoji-app{--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--border-radius:.75rem;--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--color-primary:#3fe0ff;--color-primary-hover:#2dcde8;--color-surface:#121e30f0;--color-surface-alt:#0b1424eb;--color-text:#f8fbff;--color-text-dim:#cbd5f5;--color-border:#3b659980;--color-warn:#f87171;--color-hint:#3fe0ff26;--color-highlight:#fde047;--rack-gradient-start:#243550;--rack-gradient-end:#1a263f;color:var(--color-text);font-family:var(--font-family);max-width:1200px;padding:var(--spacing-xl);background:radial-gradient(circle at 12% 8%,#0d1628 0%,#050914 85%);margin:0 auto;line-height:1.6}.emoji-app[data-theme=light]{--color-primary:#0c4a6e;--color-primary-hover:#0a3f5f;--color-surface:#fffffff0;--color-surface-alt:#edf2ffe6;--color-text:#09121d;--color-text-dim:#475569;--color-border:#94a3b899;--color-warn:#b91c1c;--color-hint:#0e749014;--rack-gradient-start:#e3efff;--rack-gradient-end:#f4f8ff;background:radial-gradient(circle at 45% -5%,#f8fbff 0%,#d9e5f6 60%,#c1d4f0 100%)}.emoji-app .muted{color:var(--color-text-dim)}.emoji-app .app-header{padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);text-align:center;background:linear-gradient(#121b2df2,#070c18e6);border:1px solid #2f416499;border-radius:1.5rem;position:relative;box-shadow:0 26px 45px #030c1e73}.emoji-app[data-theme=light] .app-header{background:var(--color-surface);box-shadow:0 18px 30px #94a3b840}.emoji-app .app-title{justify-content:center;align-items:center;gap:var(--spacing-sm);letter-spacing:.05em;color:var(--color-primary);margin-bottom:var(--spacing-xs);font-size:2.5rem;display:flex}.emoji-app .title-icon{font-size:2.75rem}.emoji-app .header-actions{inset:var(--spacing-md)var(--spacing-md)auto auto;align-items:center;gap:var(--spacing-sm);display:flex;position:absolute}.emoji-app .theme-toggle{background:var(--color-surface);border:1px solid var(--color-border);padding:var(--spacing-sm)var(--spacing-md);cursor:pointer;border-radius:999px;font-size:1rem;transition:transform .2s,background .2s}.emoji-app .theme-toggle:hover{transform:translateY(-1px)}.emoji-app .btn{border-radius:var(--border-radius);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;padding:.75rem 1.25rem;font-weight:600;transition:transform .15s,box-shadow .15s,background .2s}.emoji-app .btn:disabled{cursor:not-allowed;opacity:.65}.emoji-app .btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 10px 20px #1976d240}.emoji-app .btn.primary{background:var(--color-primary);color:#021321;border-color:#3fe0ff80}.emoji-app[data-theme=light] .btn.primary{color:#f8fbff}.emoji-app .btn.primary:not(:disabled):hover{background:var(--color-primary-hover)}.emoji-app .btn.warn{color:var(--color-warn);background:#f871711a;border-color:#f8717166}.emoji-app .btn.hint{background:var(--color-hint);border-color:#3fe0ff4d}.emoji-app[data-theme=light] .btn.hint{border-color:#94a3b866}.emoji-app .game-setup,.emoji-app .game-stage,.emoji-app .game-over{background:var(--color-surface);border-radius:var(--border-radius);border:1px solid var(--color-border);padding:var(--spacing-xl);box-shadow:0 24px 48px #040c1a73}.emoji-app[data-theme=light] .game-setup,.emoji-app[data-theme=light] .game-stage,.emoji-app[data-theme=light] .game-over{box-shadow:0 16px 32px #94a3b847}.emoji-app .setup-form{gap:var(--spacing-lg);display:grid}.emoji-app .input-label{text-transform:uppercase;letter-spacing:.12em;margin-bottom:var(--spacing-xs);color:var(--color-text-dim);font-size:.85rem;display:block}.emoji-app .setup-form input[type=number]{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--border-radius);color:var(--color-text);width:100%;padding:.75rem;font-size:1rem}.emoji-app .checkbox-label{align-items:center;gap:var(--spacing-sm);font-weight:600;display:flex}.emoji-app .pack-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.emoji-app .pack-card{border-radius:var(--border-radius);border:1px solid var(--color-border);padding:var(--spacing-md);background:var(--color-surface-alt);color:var(--color-text);text-align:left;cursor:pointer;gap:var(--spacing-sm);display:grid}.emoji-app .pack-card--selected{border-color:var(--color-primary);background:#3fe0ff1a}.emoji-app[data-theme=light] .pack-card--selected{background:#0c4a6e14}.emoji-app .pack-badge{color:var(--color-primary);text-transform:uppercase;font-size:.75rem}.emoji-app .setup-options{gap:var(--spacing-sm);display:grid}.emoji-app .form-error{color:var(--color-warn);font-weight:600}.emoji-app .hud{gap:var(--spacing-md);margin-bottom:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.emoji-app .hud-stat{background:var(--color-surface-alt);border-radius:var(--border-radius);padding:var(--spacing-sm);text-align:center;border:1px solid #3fe0ff1f}.emoji-app[data-theme=light] .hud-stat{border-color:#94a3b84d}.emoji-app .hud-stat--highlight{border-color:#fde04799;box-shadow:0 0 0 1px #fde0474d}.emoji-app .hud-label{text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-dim);font-size:.75rem;display:block}.emoji-app .hud-value{font-size:1.35rem;font-weight:700}.emoji-app .emoji-prompt{align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);flex-direction:column;display:flex}.emoji-app .prompt-emojis{font-size:clamp(2.5rem,4vw,3.5rem)}.emoji-app .prompt-pack{color:var(--color-text-dim);font-size:.95rem}.emoji-app .answer-slots{justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-wrap:wrap;display:flex}.emoji-app .slot{background:var(--color-surface-alt);width:56px;height:64px;color:var(--color-primary);border:2px dashed #3fe0ff33;border-radius:.75rem;justify-content:center;align-items:center;font-size:1.8rem;font-weight:700;display:flex}.emoji-app[data-theme=light] .slot{border-color:#94a3b866}.emoji-app .slot.symbol{color:var(--color-text);border-style:solid}.emoji-app .slot.space{background:0 0;border:none;width:32px;height:64px}.emoji-app .slot--filled{color:var(--color-text);background:linear-gradient(135deg,#3fe0ff33,#34f5a340);border-color:#3fe0ff8c}.emoji-app[data-theme=light] .slot--filled{background:linear-gradient(135deg,#0c4a6e1f,#0e749026);border-color:#0c4a6e80}.emoji-app .rack{gap:var(--spacing-sm);background:linear-gradient(135deg,var(--rack-gradient-start),var(--rack-gradient-end));padding:var(--spacing-md);border-radius:var(--border-radius);margin-bottom:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(56px,1fr));display:grid}.emoji-app .rack-tile{color:var(--color-text);padding:var(--spacing-sm);cursor:pointer;background:#091120bf;border:1px solid #3fe0ff33;border-radius:.65rem;font-size:1.3rem;font-weight:700;transition:transform .1s,box-shadow .1s}.emoji-app[data-theme=light] .rack-tile{background:#ffffffd9;border-color:#94a3b866}.emoji-app .rack-tile--selected{opacity:.5}.emoji-app .rack-tile--disabled{opacity:.35;cursor:not-allowed}.emoji-app .controls{gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-wrap:wrap;justify-content:center;display:flex}.emoji-app .hint-panel{border-radius:var(--border-radius);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);background:#3fe0ff14;border:1px solid #3fe0ff33}.emoji-app[data-theme=light] .hint-panel{background:#0c4a6e0d;border-color:#94a3b84d}.emoji-app .hint-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.emoji-app .hint-actions{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.emoji-app .game-message{text-align:center;padding:var(--spacing-sm);border-radius:var(--border-radius);background:#3fe0ff1f;border:1px solid #3fe0ff4d;font-weight:600}.emoji-app[data-theme=light] .game-message{background:#0c4a6e14;border-color:#94a3b866}.emoji-app .feedback-card{margin-top:var(--spacing-lg);border-radius:var(--border-radius);background:var(--color-surface-alt);padding:var(--spacing-lg);gap:var(--spacing-md);border:1px solid #3fe0ff33;display:grid}.emoji-app[data-theme=light] .feedback-card{border-color:#94a3b84d}.emoji-app .feedback-copy h3{margin-bottom:var(--spacing-xs);font-size:1.4rem}.emoji-app .game-over{text-align:center;gap:var(--spacing-lg);display:grid}.emoji-app .results-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.emoji-app .result-card{border-radius:var(--border-radius);background:var(--color-surface-alt);padding:var(--spacing-md);border:1px solid #3fe0ff26}.emoji-app[data-theme=light] .result-card{border-color:#94a3b840}.emoji-app .result-label{text-transform:uppercase;color:var(--color-text-dim);margin-bottom:var(--spacing-xs);font-size:.85rem;display:block}.emoji-app .result-value{font-size:1.6rem;font-weight:700}.emoji-app .game-over-actions{gap:var(--spacing-sm);flex-wrap:wrap;justify-content:center;display:flex}@media (max-width:768px){.emoji-app{padding:var(--spacing-lg)}.emoji-app .slot{width:44px;height:52px;font-size:1.4rem}.emoji-app .rack{grid-template-columns:repeat(auto-fit,minmax(44px,1fr))}}
