:root{--bg:#0f1115;--panel:#1a1a1a;--line:#2e2e2e;--text:#f4f1ea;--muted:#adadad;--accent:#20758e;--accent-hi:#2f8fa8;--brand-2:#1b1e24;--danger:#d0574a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);font-family:system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);overscroll-behavior:none;-webkit-tap-highlight-color:transparent}button,input{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--accent-hi);outline-offset:2px}.stage{height:100dvh;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));-webkit-user-select:none;user-select:none;touch-action:none;isolation:isolate;background:radial-gradient(circle at 50% 62%, color-mix(in srgb, var(--accent) 24%, var(--bg)), var(--bg) 68%);flex-direction:column;align-items:center;display:flex;position:relative;overflow:hidden}.stage>*{z-index:1;position:relative}.stage>.aurora{z-index:0;pointer-events:none;background:radial-gradient(30% 35% at 20% 30%, color-mix(in srgb, var(--accent) 38%, transparent), transparent 70%), radial-gradient(28% 32% at 80% 70%, color-mix(in srgb, var(--accent) 30%, transparent), transparent 70%), radial-gradient(25% 30% at 70% 20%, color-mix(in srgb, var(--accent-hi) 18%, transparent), transparent 70%);filter:blur(30px);animation:16s ease-in-out infinite alternate aurora;position:absolute;inset:-20%}@keyframes aurora{0%{transform:translate(-4%,-2%)scale(1)rotate(0)}50%{transform:translate(3%,4%)scale(1.12)rotate(8deg)}to{transform:translate(5%,-3%)scale(1.04)rotate(-6deg)}}.stage>.sparkles{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.sparkles i{box-shadow:0 0 10px 2px color-mix(in srgb, var(--accent-hi) 70%, transparent);opacity:0;background:#fff6d8;border-radius:50%;animation:linear infinite rise;position:absolute;bottom:-20px}@keyframes rise{0%{opacity:0;transform:translateY(0)scale(.6)}10%{opacity:.9}50%{opacity:.6;transform:translateY(-55vh)translate(18px)scale(1)}90%{opacity:.8}to{opacity:0;transform:translateY(-110vh)translate(-12px)scale(.5)}}.stage-logo{object-fit:contain;filter:drop-shadow(0 6px 18px #00000080);max-width:min(60vw,420px);max-height:clamp(48px,12vmin,140px);margin:0 auto 8px;animation:5s ease-in-out infinite logo-float;display:block}.stage-head{text-align:center;padding:8px 56px 12px;animation:.7s cubic-bezier(.16,1,.3,1) both drop-in}.stage-head h1{background:linear-gradient(100deg, var(--text) 40%, color-mix(in srgb, var(--accent-hi) 60%, #fff) 50%, var(--text) 60%);color:#0000;filter:drop-shadow(0 4px 18px color-mix(in srgb, var(--accent) 45%, transparent));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;animation:5s ease-in-out infinite shimmer}@keyframes shimmer{0%,30%{background-position:100% 0}70%,to{background-position:0 0}}@keyframes logo-float{50%{transform:translateY(-6px)}}@keyframes drop-in{0%{opacity:0;transform:translateY(-30px)}}.stage-head h1{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(28px,6vmin,72px);font-weight:900}.stage-head p{color:var(--muted);margin:6px 0 0;font-size:clamp(15px,2.4vmin,26px)}.wheel-box{flex:1;place-items:center;width:100%;min-height:0;display:grid}.wheel{animation:.9s cubic-bezier(.16,1,.3,1) both wheel-in;position:relative}@keyframes wheel-in{0%{opacity:0;transform:scale(.6)rotate(-40deg)}}.wheel-canvas{z-index:2;touch-action:none;cursor:grab;display:block;position:relative}.rays{z-index:0;background:repeating-conic-gradient(from 0deg, color-mix(in srgb, var(--accent-hi) 34%, transparent) 0deg 7deg, transparent 7deg 20deg);opacity:.45;pointer-events:none;border-radius:50%;transition:opacity .5s,transform .6s cubic-bezier(.16,1,.3,1);animation:50s linear infinite turn;position:absolute;inset:-32%;-webkit-mask-image:radial-gradient(circle,#000 30%,#0000 68%);mask-image:radial-gradient(circle,#000 30%,#0000 68%)}.mode-spin .rays{opacity:.85}.mode-win .rays{opacity:1;transform:scale(1.15)}@keyframes turn{to{rotate:360deg}}.wheel-glow{z-index:1;box-shadow:0 0 6vmin 1vmin color-mix(in srgb, var(--accent) 55%, transparent), 0 3vmin 6vmin #000000b3;opacity:.7;pointer-events:none;border-radius:50%;transition:opacity .4s;position:absolute;inset:2%}.mode-spin .wheel-glow{opacity:1}.mode-win .wheel-glow{opacity:1;animation:.6s ease-in-out infinite alternate glow-pulse}@keyframes glow-pulse{to{box-shadow:0 0 10vmin 3vmin color-mix(in srgb, var(--accent) 75%, transparent), 0 3vmin 6vmin #000000b3}}.wheel-box.shake{animation:.52s cubic-bezier(.36,.07,.19,.97) shake}@keyframes shake{10%,90%{transform:translate(-2px,1px)}20%,80%{transform:translate(4px,-2px)}30%,50%,70%{transform:translate(-6px,2px)}40%,60%{transform:translate(6px,-1px)}}.wheel-canvas:active{cursor:grabbing}.pointer{z-index:3;aspect-ratio:.72;transform-origin:50% 22%;background:linear-gradient(90deg, color-mix(in srgb, var(--accent), #000 35%), color-mix(in srgb, var(--accent), #fff 45%) 45%, var(--accent) 60%, color-mix(in srgb, var(--accent), #000 45%));clip-path:polygon(10% 0,90% 0,100% 22%,50% 100%,0 22%);filter:drop-shadow(0 4px 3px #0000008c);will-change:transform;width:10%;position:absolute;top:-3.5%;left:50%;transform:translate(-50%)}.pointer-gem{aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#fff,#e6e6e6 45%,#8d8d8d 80%,#444);border-radius:50%;width:34%;position:absolute;top:12%;left:50%;transform:translate(-50%)}.hub{aspect-ratio:1;z-index:3;border:.8vmin solid var(--accent);background:radial-gradient(circle at 35% 28%, color-mix(in srgb, var(--brand-2), #fff 28%), var(--brand-2) 60%);color:#fff;letter-spacing:.04em;cursor:pointer;border-radius:50%;width:22%;font-size:clamp(16px,3.6vmin,40px);font-weight:900;transition:transform .16s cubic-bezier(.16,1,.3,1),background .16s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 .6vmin 1.6vmin #0009,inset 0 -.6vmin 1vmin #00000073,0 0 0 .4vmin #ffffffd9}.hub:hover:not(:disabled){filter:brightness(1.2)}.hub:active:not(:disabled){transform:translate(-50%,-50%)scale(.94)}.hub:disabled{cursor:default}.hub span{text-shadow:0 2px 8px #0009;display:inline-block}.hub.with-logo{flex-direction:column;justify-content:center;align-items:center;gap:2%;width:25%;padding:0;display:flex}.hub.with-logo img{object-fit:contain;pointer-events:none;filter:drop-shadow(0 2px 4px #00000080);width:68%;max-height:42%}.hub.with-logo span{letter-spacing:.14em;font-size:clamp(11px,2.2vmin,26px)}.hub.ready span{animation:1.4s ease-in-out infinite beat}.hub.ready:after{content:"";border:.6vmin solid var(--accent-hi);pointer-events:none;border-radius:50%;animation:1.8s cubic-bezier(0,0,.2,1) infinite ping;position:absolute;inset:-.8vmin}@keyframes beat{0%,60%,to{transform:scale(1)}30%{transform:scale(1.14)}}@keyframes ping{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.7)}}.gear{top:max(12px, env(safe-area-inset-top));width:44px;height:44px;color:var(--muted);opacity:.45;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid;position:fixed;right:12px}.gear:hover{opacity:1}.result{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10;background:#080808b8;place-items:center;padding:16px;animation:.22s ease-out fade;display:grid;position:fixed;inset:0}.result-card{z-index:2;background:var(--panel);border:1px solid var(--line);text-align:center;border-radius:24px;max-width:min(92vw,760px);padding:clamp(24px,5vmin,56px);animation:.65s cubic-bezier(.34,1.56,.64,1) pop;position:relative;overflow:hidden}.result.win .result-card{border:2px solid var(--accent);background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--accent) 35%, var(--panel)), var(--panel) 70%);animation:.65s cubic-bezier(.34,1.56,.64,1) pop,1.2s ease-in-out .65s infinite alternate card-glow}.result.miss .result-card{animation:.5s cubic-bezier(.16,1,.3,1) pop,.6s ease-in-out .5s wobble}@keyframes card-glow{0%{box-shadow:0 0 30px color-mix(in srgb, var(--accent) 40%, transparent)}to{box-shadow:0 0 90px 10px color-mix(in srgb, var(--accent) 70%, transparent)}}@keyframes wobble{25%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}75%{transform:rotate(-1deg)}}.burst{background:repeating-conic-gradient(from 0deg, color-mix(in srgb, var(--accent-hi) 32%, transparent) 0deg 8deg, transparent 8deg 22deg);pointer-events:none;width:180vmax;height:180vmax;margin:-90vmax 0 0 -90vmax;animation:24s linear infinite turn,.6s ease-out fade;position:absolute;top:50%;left:50%;-webkit-mask-image:radial-gradient(circle,#000 5%,#0000 45%);mask-image:radial-gradient(circle,#000 5%,#0000 45%)}.result-logo{object-fit:contain;max-width:220px;max-height:70px;margin:0 auto 12px;display:block}.result-kicker span{animation:.5s cubic-bezier(.34,1.56,.64,1) both hop;display:inline-block}@keyframes hop{0%{opacity:0;transform:translateY(18px)scale(.6)}}.result.win .result-label{background:linear-gradient(100deg, #fff 35%, color-mix(in srgb, var(--accent-hi), #fff 30%) 50%, #fff 65%);color:#0000;filter:drop-shadow(0 4px 22px color-mix(in srgb, var(--accent) 70%, transparent));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;animation:.7s cubic-bezier(.34,1.56,.64,1) .3s both label-in,2.4s ease-in-out 1s infinite shimmer}.result.miss .result-label{animation:.5s cubic-bezier(.16,1,.3,1) .2s both label-in}@keyframes label-in{0%{opacity:0;transform:scale(.3)}}.btn.big{min-height:56px;padding:14px 32px;font-size:18px}.countdown{background:var(--accent-hi);transform-origin:0;width:100%;height:4px;animation:linear forwards countdown;position:absolute;bottom:0;left:0}@keyframes countdown{to{transform:scaleX(0)}}.celebration{z-index:20;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.result-kicker{color:var(--muted);text-transform:uppercase;letter-spacing:.14em;margin:0;font-size:clamp(14px,2.4vmin,22px)}.result-label{text-wrap:balance;margin:8px 0 24px;font-size:clamp(36px,10vmin,120px);font-weight:900;line-height:1}.pin{text-align:start;flex-direction:column;gap:12px;min-width:280px;display:flex}.pin input{letter-spacing:.3em;text-align:center;font-size:28px}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:scale(.85)}}@media (prefers-reduced-motion:reduce){.result,.result-card,.result.win .result-card,.result.miss .result-card,.burst,.rays,.aurora,.wheel,.stage-head,.stage-head h1,.stage-logo,.hub.ready span,.wheel-box.shake,.result-kicker span,.result-label,.result.win .result-label,.mode-win .wheel-glow{animation:none!important}.hub.ready:after{display:none}}.settings{flex-direction:column;gap:16px;max-width:980px;margin:0 auto;padding:16px 16px 64px;display:flex}.settings-head{z-index:2;background:var(--bg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex;position:sticky;top:0}.settings h1{margin:0;font-size:26px}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:12px;padding:20px;display:flex}.card h2{margin:0;font-size:18px}.card p{margin:0}.hint,.note{color:var(--muted);font-size:14px}.note{background:var(--panel);border:1px solid var(--accent);color:var(--text);border-radius:12px;padding:10px 14px}.err{color:#ff8a7d;margin:0;font-size:14px}label{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;display:flex}input:not([type=checkbox]):not([type=color]):not([type=file]){background:var(--bg);border:1px solid var(--line);min-height:44px;color:var(--text);border-radius:10px;width:100%;padding:10px 12px}.grid3{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.color-field{align-items:center;gap:8px;display:flex}.color-field input[type=color]{cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;width:44px;height:44px;padding:0}.brand-logo{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.logo-preview{border:1px solid var(--line);width:200px;height:96px;color:var(--muted);border-radius:12px;place-items:center;padding:10px;font-size:14px;display:grid}.logo-preview img{object-fit:contain;max-width:100%;max-height:100%}.grid2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:end;gap:12px;display:grid}.check{color:var(--text);flex-direction:row;align-items:center;gap:8px;min-height:44px;font-size:15px}.check input{width:20px;height:20px;accent-color:var(--accent)}.slices{flex-direction:column;gap:10px;display:flex}.slice{border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:end;gap:10px;padding:10px;display:flex}.slice input[type=color]{cursor:pointer;background:0 0;border:0;border-radius:10px;width:44px;height:44px;padding:0}.slice .grow{flex:180px}.slice .num{width:96px}.pct{font-variant-numeric:tabular-nums;min-width:56px;color:var(--muted);padding-bottom:12px;font-size:14px}.row{align-items:center;gap:8px;display:flex}.row.wrap{flex-wrap:wrap}.row.tight{gap:4px}.btn{border:1px solid var(--line);min-height:44px;color:var(--text);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:10px 18px;font-size:15px;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--accent-hi)}.btn:disabled{opacity:.4;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){background:var(--accent-hi)}.btn.danger{color:#ff8a7d}.btn.icon{width:44px;padding:0}.btn.file{color:var(--text);flex-direction:row;font-size:15px}.btn.file input{display:none}.tally{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px 16px;margin:0;padding:0;list-style:none;display:grid}.tally li{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;justify-content:space-between;padding:6px 0;display:flex}.lead-card{text-align:start;flex-direction:column;gap:14px;width:min(92vw,520px);display:flex}.lead-title{text-align:center;margin:0 0 4px;font-size:clamp(26px,5vmin,44px);font-weight:900}.lead-card label{font-size:15px}.lead-card input:not([type=checkbox]){min-height:54px;font-size:20px}.lead-card .check{font-size:15px;line-height:1.35}.phone-field{align-items:stretch;gap:8px;display:flex}.phone-field .cc{border:1px solid var(--line);color:var(--text);font-variant-numeric:tabular-nums;border-radius:10px;place-items:center;padding:0 12px;font-size:18px;display:grid}.lead-card .row{justify-content:space-between}.grow-btn{flex:1}.hint.fine{text-align:center;font-size:12px}.good-luck{font-weight:700;animation:.5s cubic-bezier(.16,1,.3,1) both drop-in;color:var(--text)!important}
