html{font-size:16px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Avenir Next,Segoe UI,Helvetica Neue,sans-serif;margin:0}button,input,textarea{font-family:inherit}:root{--bg:#0f172a;--bg-soft:#0f172ad1;--panel:#ffffffe6;--panel-soft:#ffffffb8;--text:#0f172a;--text-soft:#475569;--line:#94a3b83d;--shadow:0 30px 80px #0f172a38;--accent:#f59e0b;--accent-dark:#b45309;--success:#0f766e}*{box-sizing:border-box}.app-shell{background:radial-gradient(circle at top left,#14b8a638,#0000 30%),radial-gradient(circle at top right,#f59e0b3d,#0000 28%),linear-gradient(140deg,#f8fafc,#e2e8f0);color:#0f172a;color:var(--text);min-height:100vh}.app-frame{margin:0 auto;padding:32px 0 48px;width:min(1240px,calc(100% - 32px))}.hero-panel,.panel,.winner-dialog{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:linear-gradient(180deg,#ffffffe6,#ffffffb8);background:linear-gradient(180deg,var(--panel) 0,var(--panel-soft) 100%);border:1px solid #ffffffb8;box-shadow:0 30px 80px #0f172a38;box-shadow:var(--shadow)}.hero-panel{grid-gap:24px;border-radius:28px;display:grid;gap:24px;grid-template-columns:1.3fr 1fr;padding:32px}.eyebrow,.panel-kicker{color:#0f766e;font-size:.72rem;font-weight:700;letter-spacing:.18em;margin:0 0 10px;text-transform:uppercase}.hero-panel h1,.panel h2,.winner-dialog h2{font-size:clamp(1.9rem,3vw,3.4rem);letter-spacing:-.04em;line-height:1.02;margin:0}.panel h2{font-size:1.4rem}.dialog-copy,.empty-state,.hero-copy,.leaderboard-row p,.setup-meta p,.status-card p,.validation-message{color:#475569;color:var(--text-soft);line-height:1.6;margin:0}.hero-stats{grid-gap:16px;align-self:end;display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.dialog-stats article,.hero-stat,.status-card{background:#ffffffa8;border:1px solid #94a3b82e;border-radius:22px;padding:18px 20px}.dialog-stats span,.hero-stat span,.setup-meta span,.status-card span{color:#64748b;display:block;font-size:.82rem;letter-spacing:.08em;margin-bottom:6px;text-transform:uppercase}.dialog-stats strong,.hero-stat strong,.setup-meta strong,.status-card strong{display:block;font-size:1.25rem;line-height:1.2}.app-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);margin-top:24px}.side-column{grid-gap:24px;display:grid;gap:24px}.panel{border-radius:28px;padding:28px}.panel-head{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.phase-pill{align-items:center;background:#0f172a14;border-radius:999px;color:#0f172a;display:inline-flex;font-size:.82rem;font-weight:700;justify-content:center;min-height:38px;padding:0 16px;text-transform:capitalize}.phase-tiebreaker{background:#f59e0b29;color:#b45309;color:var(--accent-dark)}.phase-complete{background:#0f766e24;color:#0f766e;color:var(--success)}.wheel-stage{display:grid;margin-bottom:28px;padding:28px 12px 12px;place-items:center;position:relative}.wheel{aspect-ratio:1;border:14px solid #0f172ae6;border-radius:50%;box-shadow:inset 0 0 0 8px #ffffff2e,0 30px 60px #0f172a33;overflow:hidden;position:relative;transition:transform 4.8s cubic-bezier(.16,1,.3,1);transition:transform var(--spin-duration,4.8s) cubic-bezier(.16,1,.3,1);width:min(100%,520px)}.wheel:after{border:1px solid #ffffff38;border-radius:50%;content:"";inset:24px;position:absolute}.wheel-pointer{border-left:22px solid #0000;border-right:22px solid #0000;border-top:42px solid #0f172a;filter:drop-shadow(0 10px 18px rgba(15,23,42,.24));height:0;position:absolute;top:0;width:0;z-index:3}.wheel-sheen{background:radial-gradient(circle at 32% 28%,#ffffff4d,#0000 18%),linear-gradient(180deg,#ffffff29,#0000 45%);inset:0;position:absolute}.wheel-label{left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%) rotate(var(--label-angle)) translateY(-165px) rotate(calc(var(--label-angle)*-1));width:30%}.wheel-label span{background:#0f172abd;border-radius:999px;color:#fff;display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.01em;max-width:100%;overflow:hidden;padding:7px 10px;text-overflow:ellipsis;white-space:nowrap}.wheel-hub{background:radial-gradient(circle at top,#fff7ed 0,#fef3c7 34%,#f59e0b 100%);border-radius:50%;box-shadow:inset 0 0 0 10px #ffffff52,0 18px 36px #b453093d;display:grid;height:142px;inset:50%;padding:18px;place-items:center;position:absolute;text-align:center;transform:translate(-50%,-50%);width:142px;z-index:2}.wheel-hub span{color:#78350fe0;display:block;font-size:.72rem;letter-spacing:.12em;margin-bottom:6px;text-transform:uppercase}.wheel-hub strong{display:block;font-size:1.05rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-close,.primary-button,.secondary-button,.tertiary-button{appearance:none;border:0;cursor:pointer;font:inherit;transition:transform .18s ease,opacity .18s ease,box-shadow .18s ease,background-color .18s ease}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.55}.primary-button{background:linear-gradient(135deg,#0f766e,#14b8a6);box-shadow:0 18px 32px #0f766e47;color:#fff;min-height:56px;padding:0 22px}.primary-button,.secondary-button{border-radius:18px;font-weight:700}.secondary-button{background:#0f172a14;color:#0f172a;min-height:52px;padding:0 20px}.tertiary-button{background:#0f766e1a;border-radius:14px;color:#0f766e;font-weight:700;min-height:42px;padding:0 14px}.dialog-button,.spin-button{width:100%}.dialog-close:hover,.primary-button:not(:disabled):hover,.secondary-button:not(:disabled):hover,.tertiary-button:not(:disabled):hover{transform:translateY(-1px)}.status-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.input-label{color:#0f172a;display:block;font-size:.84rem;font-weight:700;margin-bottom:10px}.entries-input,.rounds-input{background:#ffffffd6;border:1px solid #94a3b83d;border:1px solid var(--line);border-radius:18px;color:#0f172a;color:var(--text);font:inherit;padding:14px 16px;width:100%}.entries-input{margin-bottom:18px;min-height:192px;resize:vertical}.entries-input:focus,.rounds-input:focus{border-color:#0f766e66;outline:2px solid #14b8a64d}.setup-row{grid-gap:18px;align-items:end;display:grid;gap:18px;grid-template-columns:minmax(140px,180px) 1fr;margin-bottom:18px}.setup-meta{background:#f8fafceb;border:1px solid #94a3b833;border-radius:18px;padding:14px 16px}.validation-message{color:#b45309;margin-top:14px}.sheet-panel{background:#f8fafceb;border:1px solid #94a3b833;border-radius:20px;margin-top:18px;padding:18px}.sheet-panel-head{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.sheet-label{color:#64748b;display:block;font-size:.78rem;font-weight:700;letter-spacing:.08em;margin-bottom:6px;text-transform:uppercase}.sheet-panel-head strong{display:block;font-size:1rem}.sheet-copy,.sheet-error{color:#475569;color:var(--text-soft);line-height:1.6;margin:14px 0 0}.sheet-error{color:#b45309}.sheet-round-list{grid-gap:12px;display:grid;gap:12px;margin-top:14px}.sheet-round{background:#ffffffd6;border:1px solid #94a3b82e;border-radius:18px;padding:14px 16px}.sheet-round span{color:#64748b;display:block;font-size:.78rem;font-weight:700;letter-spacing:.08em;margin-bottom:4px;text-transform:uppercase}.sheet-round strong{display:block;font-size:.98rem}.sheet-round-ready{border-color:#0f766e38}.sheet-round-invalid{background:#fff7ede6;border-color:#b453093d}.sheet-round-empty{border-style:dashed}.history-list,.leaderboard-list{grid-gap:12px;display:grid;gap:12px}.history-row,.leaderboard-row{background:#f8fafce0;border:1px solid #94a3b829;border-radius:20px;justify-content:space-between;padding:16px 18px}.history-row,.leaderboard-copy,.leaderboard-row{align-items:center;display:flex;gap:14px}.leaderboard-rank{background:#0f766e1f;border-radius:50%;color:#0f766e;display:inline-grid;font-weight:700;height:42px;place-items:center;width:42px}.leaderboard-value{min-width:70px;text-align:right}.leaderboard-value span{display:block;font-size:1.4rem;font-weight:800;line-height:1}.leaderboard-value small{color:#64748b;letter-spacing:.1em;text-transform:uppercase}.history-step{color:#64748b;display:block;font-size:.8rem;letter-spacing:.08em;margin-bottom:4px;text-transform:uppercase}.history-tag{align-items:center;border-radius:999px;display:inline-flex;font-size:.78rem;font-weight:700;min-height:34px;padding:0 12px;text-transform:capitalize}.history-round{background:#2563eb1f;color:#1d4ed8}.history-tiebreaker{background:#f59e0b24;color:#b45309}.empty-state{background:#f8fafce6;border:1px dashed #94a3b866;border-radius:20px;padding:18px}.dialog-scrim{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172a75;display:grid;inset:0;padding:20px;place-items:center;position:fixed;z-index:10}.winner-dialog{border-radius:32px;overflow:hidden;padding:28px;position:relative;width:min(560px,100%)}.dialog-close{background:#0f172a14;border-radius:999px;color:#0f172a;font-weight:700;min-height:40px;padding:0 14px;position:absolute;right:16px;top:16px}.dialog-copy{margin-top:16px}.dialog-stats{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));margin:22px 0}.confetti-layer{inset:-20px;overflow:hidden;pointer-events:none;position:absolute}.confetti-piece{animation:confetti-fall var(--confetti-duration) linear infinite;animation-delay:var(--confetti-delay);border-radius:4px;left:var(--confetti-x);opacity:0;position:absolute;top:-10%;transform:translate3d(0,-30px,0) rotate(var(--confetti-rotation))}@keyframes confetti-fall{0%{opacity:0;transform:translate3d(0,-30px,0) rotate(var(--confetti-rotation))}12%{opacity:1}to{opacity:0;transform:translate3d(var(--confetti-drift),520px,0) rotate(760deg)}}@media (max-width:1080px){.app-grid,.hero-panel,.status-grid{grid-template-columns:1fr}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.app-grid{align-items:start}}@media (max-width:720px){.app-frame{padding-top:20px;width:min(100%,calc(100% - 20px))}.hero-panel,.panel,.winner-dialog{border-radius:24px;padding:22px}.dialog-stats,.hero-stats,.setup-row{grid-template-columns:1fr}.sheet-panel-head{flex-direction:column}.wheel{width:min(100%,360px)}.wheel-label{transform:translate(-50%,-50%) rotate(var(--label-angle)) translateY(-116px) rotate(calc(var(--label-angle)*-1));width:34%}.wheel-label span{font-size:.7rem;padding:6px 8px}.wheel-hub{height:112px;padding:14px;width:112px}.history-row,.leaderboard-row{align-items:flex-start}}@media (prefers-reduced-motion:reduce){.confetti-piece,.dialog-close,.primary-button,.secondary-button,.wheel{animation:none;transition:none}}
/*# sourceMappingURL=main.156bc766.css.map*/