:root{
  --bg:#0b1220;
  --panel:#111a2c;
  --panel-2:#182338;
  --line:#26334a;
  --text:#f8fafc;
  --muted:#9aa8bd;
  --accent:#f59e0b;
  --accent-2:#fbbf24;
  --danger:#ef4444;
  --shadow:0 20px 60px rgba(0,0,0,.28);
}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at top,#172238 0,#0b1220 40%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}
button,input{font:inherit}
button{cursor:pointer}
.app-shell{width:min(760px,100%);margin:0 auto;padding:24px 18px 48px}
.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.topbar h1{margin:3px 0 0;font-size:28px}.eyebrow{font-size:11px;letter-spacing:.18em;color:var(--accent-2);font-weight:800}.icon-btn{width:42px;height:42px;border-radius:14px;background:var(--panel);border:1px solid var(--line);color:white}.screen{display:none}.screen.active{display:block}.hero-card,.winner-card{background:linear-gradient(145deg,#1a2740,#111a2c);border:1px solid var(--line);padding:28px;border-radius:28px;text-align:center;box-shadow:var(--shadow);margin-bottom:18px}.hero-icon,.trophy{font-size:46px;margin-bottom:8px}.hero-card h2,.winner-card h2{margin:6px 0}.hero-card p,.winner-card p{color:var(--muted);margin:6px 0 0}.card{background:rgba(17,26,44,.92);border:1px solid var(--line);border-radius:22px;padding:18px;margin-bottom:16px;box-shadow:0 8px 30px rgba(0,0,0,.13)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-head>div{display:flex;align-items:center;gap:10px}.section-head h3{margin:0}.section-head.compact{margin-bottom:10px}.step{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--accent);color:#1f2937;font-weight:900}.badge{font-size:12px;background:var(--panel-2);border:1px solid var(--line);padding:6px 9px;border-radius:999px;color:var(--muted)}.badge.accent{color:#1f2937;background:var(--accent-2);border:none;font-weight:900}.inline-form{display:flex;gap:10px}.inline-form input{flex:1;min-width:0;background:#0d1627;color:white;border:1px solid var(--line);border-radius:14px;padding:14px;outline:none}.inline-form input:focus{border-color:var(--accent)}.primary,.secondary,.danger{border:none;border-radius:14px;padding:13px 16px;font-weight:800}.primary{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#111827}.primary:disabled{opacity:.35;cursor:not-allowed}.secondary{background:var(--panel-2);border:1px solid var(--line);color:white}.danger{background:#3b1720;color:#fecaca;border:1px solid #6f2534}.small{padding:10px 13px}.wide{width:100%;margin-top:6px}.players-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.empty-state{display:block;color:var(--muted);font-size:14px}.player-chip{display:flex;gap:8px;align-items:center;background:var(--panel-2);border:1px solid var(--line);padding:9px 10px;border-radius:999px}.player-chip button{border:none;background:transparent;color:#fca5a5;font-weight:bold}.score-config{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.score-option{background:#0d1627;color:var(--muted);border:1px solid var(--line);border-radius:14px;padding:13px 8px;font-weight:800}.score-option.active{background:#372b12;border-color:#8a6414;color:#fde68a}.round-row{display:flex;justify-content:space-between;align-items:center;margin:4px 2px 14px}.round-row strong{display:block;font-size:24px}.muted{color:var(--muted);font-size:12px}.centered{display:block;text-align:center}.word-progress{color:var(--muted);font-size:13px}.draw-card{background:linear-gradient(145deg,#172238,#101827);border:1px solid var(--line);border-radius:26px;padding:24px 18px;text-align:center;box-shadow:var(--shadow);margin-bottom:16px}.current-word{font-size:clamp(34px,8vw,58px);font-weight:950;letter-spacing:-.03em;min-height:110px;display:grid;place-items:center;padding:8px;word-break:break-word}.draw-button{width:100%;border:none;border-radius:16px;padding:15px;background:white;color:#111827;font-weight:900}.link-btn{border:none;background:transparent;color:var(--muted);margin-top:12px}.link-btn:disabled{opacity:.3}.hint{margin:-2px 0 12px;color:var(--muted);font-size:13px}.score-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.score-player{border:1px solid var(--line);background:#0d1627;color:white;border-radius:16px;padding:14px;text-align:left}.score-player strong{display:block}.score-player span{font-size:12px;color:var(--muted)}.leader-row{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:12px 4px;border-bottom:1px solid var(--line)}.leader-row:last-child{border-bottom:none}.rank{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:var(--panel-2);font-weight:900}.leader-name{font-weight:800}.leader-points{font-weight:900;color:#fde68a}.winner-card{border-color:#775911;background:radial-gradient(circle at top,#4b3711 0,#1c1a16 45%,#111a2c 100%)}.winner-card .trophy{font-size:60px}.final-actions{display:grid;gap:10px}.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(20px);background:#fff;color:#111827;padding:11px 16px;border-radius:999px;font-weight:800;opacity:0;pointer-events:none;transition:.2s;z-index:20}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}dialog{border:none;padding:0;background:transparent;width:min(520px,calc(100% - 30px))}dialog::backdrop{background:rgba(0,0,0,.65);backdrop-filter:blur(4px)}.dialog-card{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:18px;color:white}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;margin-bottom:10px;color:var(--muted)}
@media(max-width:520px){.app-shell{padding:18px 14px 38px}.score-buttons{grid-template-columns:1fr}.score-config{grid-template-columns:1fr 1fr 1fr}.hero-card{padding:22px 16px}.current-word{min-height:100px}.inline-form{flex-direction:column}.inline-form .primary{width:100%}}


/* Animação do sorteio */
.draw-card{position:relative;overflow:hidden}
.draw-card::before{content:"";position:absolute;inset:-45%;background:conic-gradient(from 0deg,transparent 0 38%,rgba(245,158,11,.12) 44%,transparent 50% 88%,rgba(251,191,36,.09) 94%,transparent 100%);opacity:0;pointer-events:none}
.draw-card.drawing::before{opacity:1;animation:drawSpin 1.25s linear infinite}
.current-word{position:relative;z-index:1;transition:filter .18s ease,opacity .18s ease,transform .18s ease}
.current-word.word-rolling{animation:wordShuffle .18s ease-in-out infinite;color:#fde68a;text-shadow:0 0 22px rgba(245,158,11,.2)}
.current-word.word-reveal{animation:wordReveal .7s cubic-bezier(.2,.85,.25,1.25);color:#fff}
.draw-card.drawing .draw-button{opacity:.55;transform:scale(.99)}
.score-player:disabled{opacity:.4;cursor:not-allowed}
@keyframes wordShuffle{0%{opacity:.4;transform:translateY(-5px) scale(.98);filter:blur(2px)}50%{opacity:1;transform:translateY(0) scale(1.015);filter:blur(0)}100%{opacity:.45;transform:translateY(5px) scale(.98);filter:blur(2px)}}
@keyframes wordReveal{0%{opacity:.2;transform:scale(.78);filter:blur(8px)}45%{opacity:1;transform:scale(1.12);filter:blur(0)}70%{transform:scale(.97)}100%{transform:scale(1)}}
@keyframes drawSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.draw-card.drawing::before,.current-word.word-rolling,.current-word.word-reveal{animation:none}.current-word{transition:none}}
