/* ===== Gewinner-Dialog & Konfetti ===== */
#confetti { position: fixed; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 1000; }

.modal {
  border: 0; padding: 0; background: transparent; color: var(--text);
  width: min(92vw, 420px); max-width: none; margin: auto; overflow: visible;
}
.modal::backdrop { background: rgba(5, 6, 9, 0.7); }
.modal[open] .modal-box { animation: modalIn 0.22s ease-out; }
@keyframes modalIn { from { opacity: 0; transform: translateY(12px) scale(0.97); } to { opacity: 1; transform: none; } }

.modal-box { text-align: center; padding: 28px 22px 22px; border-radius: 16px; border: 1px solid var(--line); background: var(--surface); }
.modal-kicker { text-transform: uppercase; letter-spacing: 0.14em; font-size: 0.75rem; color: var(--accent); font-weight: 700; }
.modal h2 { margin: 8px 0 22px; font-size: clamp(1.9rem, 8vw, 2.8rem); line-height: 1.1; font-weight: 800; overflow-wrap: anywhere; }
.modal-actions { display: grid; gap: 8px; }
