:root{--font-display:"Fraunces", Georgia, serif;--font-body:"Inter", system-ui, -apple-system, sans-serif;--color-bg:#14121a;--color-bg-radial:#221d31;--color-surface:#ffffff0f;--color-surface-raised:#ffffff17;--color-text:#f4f1ea;--color-text-muted:#f4f1ea9e;--color-accent:#f2b705;--color-accent-strong:#ffcf33;--color-accent-ink:#241a00;--color-success:#3ecf8e;--color-success-ink:#062017;--color-danger:#ef5b5b;--color-danger-ink:#2b0a0a;--color-border:#ffffff1f;--radius:16px;--radius-sm:10px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-body);color:var(--color-text);background:radial-gradient(circle at 50% -10%, var(--color-bg-radial), transparent 60%), var(--color-bg);background-attachment:fixed;min-height:100vh;margin:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;font-weight:600}button{font-family:inherit}.btn{appearance:none;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-sm);cursor:pointer;padding:.65rem 1.15rem;font-size:.95rem;font-weight:500;transition:transform .12s,background .15s,opacity .15s,border-color .15s}.btn:hover:not(:disabled){background:var(--color-surface-raised);border-color:#ffffff38}.btn:active:not(:disabled){transform:scale(.96)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:#ffffff14}.btn-small{padding:.35rem .75rem;font-size:.8rem}.btn-large{width:100%;padding:.95rem 1.4rem;font-size:1.05rem}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink);font-weight:700}.btn-primary:hover:not(:disabled){background:var(--color-accent-strong);border-color:var(--color-accent-strong)}.btn-success{background:var(--color-success);border-color:var(--color-success);color:var(--color-success-ink);font-weight:700}.btn-success:hover:not(:disabled){filter:brightness(1.08);background:var(--color-success)}.btn-danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-danger-ink);font-weight:700}.btn-danger:hover:not(:disabled){filter:brightness(1.08);background:var(--color-danger)}.btn-choice{flex:auto}.btn-choice-active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-ink);font-weight:700}.panel-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);text-align:center;padding:1.75rem 1.5rem}.tile-row{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-bottom:1.1rem;display:flex}.tile{border-radius:var(--radius-sm);border:1px solid var(--color-border);min-width:3.2rem;height:3.2rem;font-family:var(--font-display);background:#ffffff14;justify-content:center;align-items:center;padding:0 .5rem;font-size:1.5rem;font-weight:600;display:inline-flex}.example-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-bottom:.9rem;font-size:.75rem;display:block}.solution-box{border-radius:var(--radius-sm);background:#3ecf8e1a;border:1px solid #3ecf8e4d;margin:0 0 1.1rem;padding:.75rem .9rem;font-size:.92rem}.ts-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.1rem 1.2rem}.ts-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.ts-header h3{font-family:var(--font-body);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.85rem;font-weight:600}.ts-team-list{flex-direction:column;gap:.6rem;margin-bottom:.75rem;display:flex}.ts-team-row{border-left:3px solid hsl(var(--hue,40) 70% 55%);border-radius:var(--radius-sm);background:#0003;flex-direction:column;gap:.5rem;padding:.5rem .6rem;display:flex}.ts-team-main{align-items:center;gap:.6rem;display:flex}.ts-team-name{min-width:0;color:var(--color-text);background:0 0;border:none;flex:1;padding:.2rem;font-size:.95rem;font-weight:600}.ts-team-name:focus{border-bottom:1px solid var(--color-accent);outline:none}.ts-team-score{font-family:var(--font-display);color:hsl(var(--hue,40) 80% 70%);text-align:center;min-width:1.5rem;font-size:1.3rem;font-weight:700}.ts-team-actions{flex-wrap:wrap;justify-content:flex-end;gap:.3rem;display:flex}.qm-play,.qm-intro{animation:.35s both qm-fade-in}@keyframes qm-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.qm-card-accent{background-image:radial-gradient(circle at 50% 0,#f2b70517,#0000 65%);margin-bottom:1.25rem}.qm-rules{color:var(--color-text-muted);margin:0 0 1.1rem;font-size:.9rem;line-height:1.5}.qm-numbercount-row{opacity:.6;justify-content:center;align-items:center;gap:.4rem;margin-top:1rem;transition:opacity .15s;display:flex}.qm-numbercount-row:hover{opacity:1}.qm-numbercount-label{color:var(--color-text-muted);font-size:.72rem}.qm-numbercount-btn{appearance:none;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:.1rem .3rem;font-family:inherit;font-size:.72rem}.qm-numbercount-btn:hover{color:var(--color-text)}.qm-numbercount-active{color:var(--color-accent-strong);font-weight:700}.qm-target-row{justify-content:center;align-items:baseline;gap:.6rem;margin-bottom:1.25rem;display:flex}.qm-target-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);font-size:.8rem}.qm-target-value{font-family:var(--font-display);color:var(--color-accent-strong);font-size:2.6rem;font-weight:700}.qm-reveal-row{margin-bottom:.5rem}.lr-play,.lr-intro{animation:.35s both lr-fade-in}@keyframes lr-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.lr-card-accent{background-image:radial-gradient(circle at 50% 0,#f2b70517,#0000 65%);margin-bottom:1.25rem}.lr-rules{color:var(--color-text-muted);margin:0 0 1.1rem;font-size:.9rem;line-height:1.5}.lr-setting-row{flex-direction:column;align-items:center;gap:.6rem;margin-bottom:1.5rem;display:flex}.lr-setting-label{color:var(--color-text-muted);font-size:.85rem;font-weight:600}.lr-option-row{gap:.5rem;display:flex}.lr-timer{font-family:var(--font-display);color:var(--color-accent-strong);margin-bottom:1.1rem;font-size:2.6rem;font-weight:700}.lr-timer-urgent{color:var(--color-danger);animation:.6s ease-in-out infinite lr-pulse}@keyframes lr-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.lr-timer-controls{flex-direction:column;align-items:center;gap:.6rem;margin-bottom:1rem;display:flex}.lr-timer-controls .btn-large{width:100%}.lr-reveal-row{margin-bottom:.5rem}.lr-score-reference{border-top:1px solid var(--color-border);color:var(--color-text-muted);flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:1rem;padding-top:.85rem;font-size:.75rem;display:flex}.lr-point-buttons{flex-wrap:wrap;gap:.3rem;display:flex}.home{max-width:760px;margin:0 auto;padding:3rem 1.25rem;animation:.5s both home-in}@keyframes home-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.home-header{text-align:center;margin-bottom:2.5rem}.home-header h1{background:linear-gradient(120deg, var(--color-accent-strong), #ffe89e);color:#0000;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:2.6rem}.home-header p{color:var(--color-text-muted);margin:0;font-size:1.05rem}.game-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.game-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);text-align:left;color:var(--color-text);cursor:pointer;flex-direction:column;align-items:flex-start;gap:.4rem;padding:1.4rem;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s;display:flex;position:relative}.game-card:hover:not(:disabled){background:var(--color-surface-raised);border-color:#f2b70566;transform:translateY(-3px);box-shadow:0 12px 28px -12px #f2b70540}.game-card:disabled{cursor:default;opacity:.5}.game-card-emoji{font-size:2.1rem}.game-card-title{font-family:var(--font-display);font-size:1.2rem;font-weight:600}.game-card-tagline{color:var(--color-text-muted);font-size:.88rem}.game-card-badge{text-transform:uppercase;letter-spacing:.06em;background:#ffffff1f;border-radius:999px;padding:.22rem .55rem;font-size:.68rem;position:absolute;top:1rem;right:1rem}.game-shell{max-width:640px;min-height:100vh;margin:0 auto;padding:1.25rem 1.25rem 3rem;animation:.35s both home-in}.game-shell-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.game-shell-header h1{margin:0;font-size:1.3rem}.game-shell-spacer{width:76px}
