.draw-count { margin-top: 8px; color: #64748b; font-size: .9rem; font-weight: 600; min-height: 1.3em; }
.draw-options { margin-top: 14px; }
.draw-check { margin-top: 16px; cursor: pointer; }
.draw-check input { width: 18px; height: 18px; accent-color: var(--primary); }
.draw-stage .tool-result { max-height: 520px; overflow: auto; padding: 4px; }
.draw-group-title { width: 100%; margin: 8px 0 0; font: 800 .8rem 'Outfit', sans-serif; letter-spacing: .08em; color: #64748b; }
.draw-group-title:first-child { margin-top: 0; }
.winner-card { border-color: #fcd34d; background: linear-gradient(135deg, #fffbeb, #fff 70%); }
.winner-card small { color: #b45309; }
.winner-card strong { font-size: 1.3rem; color: #1e1b4b; }
.winner-card.is-single { text-align: center; padding: 34px 18px; }
.winner-card.is-single strong { font-size: clamp(1.8rem, 4.5vw, 2.8rem); }
.backup-card small { color: #64748b; }
.draw-rolling { text-align: center; padding: 48px 18px; }
.draw-rolling strong { font-size: clamp(1.6rem, 4vw, 2.4rem); color: #4338ca; }
.winner-card, .backup-card { animation: drawReveal .35s ease both; }
@keyframes drawReveal { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .winner-card, .backup-card { animation: none; } }
