*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100dvh;font-family:system-ui,Segoe UI,sans-serif;background:linear-gradient(165deg,#1a1a2e,#16213e 55%,#0f3460);color:#f4f4f5;-webkit-tap-highlight-color:transparent}#root{min-height:100dvh}.page{max-width:28rem;margin-inline:auto;padding:1.25rem 1rem calc(2rem + env(safe-area-inset-bottom,0px));min-height:100dvh;display:flex;flex-direction:column;gap:1rem}.page.game{justify-content:space-between}.title{margin:0;font-size:1.65rem;font-weight:700;text-align:center}.subtitle{margin:0;text-align:center;opacity:.88;line-height:1.45}.stack{display:flex;flex-direction:column;gap:.65rem;margin-block-start:.5rem}.row{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}.row.stretch{justify-content:stretch}.row.stretch .btn{flex:1;min-width:6rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.75rem 1rem;border-radius:12px;font-size:1rem;font-weight:600;text-decoration:none;border:none;cursor:pointer;text-align:center;transition:transform .08s ease,filter .12s ease}.btn:focus-visible{outline:2px solid #fca5a5;outline-offset:3px}.btn:active:not(:disabled){transform:scale(.98)}@media(prefers-reduced-motion:reduce){.btn{transition:none}.btn:active:not(:disabled){transform:none}}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:#e94560;color:#fff}.btn-primary:hover:not(:disabled){filter:brightness(1.06)}.btn-ghost{background:#ffffff14;color:#f4f4f5;border:1px solid rgba(255,255,255,.15)}.btn-success{background:#10b981;color:#042f2e}.btn-warn{background:#f59e0b;color:#1c1917}.field,.field-group{display:flex;flex-direction:column;gap:.35rem}.field span,.field-group>span{font-size:.9rem;opacity:.9}.input,select{padding:.55rem .65rem;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#00000040;color:inherit;font:inherit}.input:focus-visible,select:focus-visible{outline:2px solid #fca5a5;outline-offset:2px}.input.narrow{max-width:6rem}.fieldset{border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.fieldset legend{padding-inline:.35rem}.inline{display:flex;align-items:center;gap:.4rem}.error{color:#fecaca;margin:0;font-size:.95rem}.muted{opacity:.75;margin:0}.game-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.game-header-text{min-width:0;flex:1}.game-team{font-weight:600}.game-goal{margin:.2rem 0 0;font-size:.85rem;opacity:.8}.between-hint{margin:0;text-align:center;font-size:.9rem;opacity:.85}.summary-points{margin:0;font-size:1.05rem;font-weight:600;text-align:center}.section-title{margin:.75rem 0 0;font-size:1rem;font-weight:700;opacity:.95}.timer{font-size:2rem;font-weight:800;font-variant-numeric:tabular-nums;margin:0;color:#fca5a5}.prompt-card{flex:1;display:flex;align-items:center;justify-content:center;min-height:12rem;padding:1.5rem 1rem;background:#00000047;border-radius:20px;border:1px solid rgba(255,255,255,.12)}.prompt-word{font-size:clamp(1.75rem,7vw,2.35rem);font-weight:800;text-align:center;line-height:1.2;overflow-wrap:anywhere;max-width:100%}.rules-list{margin:0;padding-inline-start:1.2rem;line-height:1.55}.word-list{margin:.25rem 0 0;padding-inline-start:1.1rem}.scoreboard{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.scoreboard li{display:flex;justify-content:space-between;padding:.5rem .65rem;background:#00000038;border-radius:10px}.next-team{text-align:center;font-size:1.05rem}.winner{text-align:center;font-size:1.2rem;font-weight:700}.ad-slot{min-height:90px;margin-block-start:auto;border-radius:10px;background:#00000026}.footer-links{margin:0;text-align:center;font-size:.85rem}.footer-links a{color:#ffffffa6}
