:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-0:#0b0620;--bg-1:#160b38;--surface:#ffffff0f;--surface-2:#ffffff1a;--border:#ffffff1f;--text:#f5f3ff;--text-2:#c9c3e6;--text-3:#9690bd;--primary:#ff4d8d;--primary-2:#ff9a3c;--accent:#7c5cff;--gold:#ffd166;--danger:#ff5c7a;--radius:22px;--radius-sm:14px;--shadow:0 24px 60px -24px #000000bf;--spring:cubic-bezier(.34, 1.56, .64, 1);--smooth:cubic-bezier(.2, .8, .2, 1);--font-display:"Fredoka", "Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--tabbar-h:66px}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;background:var(--bg-0)}body{min-height:100dvh;font-family:var(--font-body);color:var(--text);background:var(--bg-0);-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}svg{display:block}[hidden]{display:none!important}::selection{background:#ff4d8d73}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.i{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.bg{z-index:-1;background:radial-gradient(1100px 700px at 8% -10%, #2c1266 0%, transparent 60%), radial-gradient(900px 700px at 105% 110%, #43104f 0%, transparent 55%), linear-gradient(160deg, var(--bg-0), var(--bg-1));position:fixed;inset:0;overflow:hidden}.bg__blob{filter:blur(80px);opacity:.4;border-radius:50%;width:42vmax;height:42vmax;transition:opacity .8s;animation:20s ease-in-out infinite alternate drift;position:absolute}.bg__blob--1{background:#ff4d8d;top:-14vmax;left:-10vmax}.bg__blob--2{background:#7c5cff;animation-duration:24s;animation-delay:-8s;bottom:-16vmax;right:-12vmax}.bg__blob--3{opacity:.2;background:#00c2ff;width:26vmax;height:26vmax;animation-duration:28s;animation-delay:-4s;top:38%;left:42%}.is-spinning .bg__blob{opacity:.6}.bg__particles{width:100%;height:100%;position:absolute;inset:0}.screen-flash{z-index:999;pointer-events:none;background:radial-gradient(circle at 50% 45%,#fff4d6d9,#ffd16640 40%,#0000 70%);animation:.9s ease-out forwards flash;position:fixed;inset:0}@keyframes drift{0%{transform:translate(0)scale(1)}50%{transform:translate(6vmax,4vmax)scale(1.15)}to{transform:translate(-4vmax,8vmax)scale(.95)}}@keyframes shimmer{to{background-position:-200%}}@keyframes spinSlow{to{transform:rotate(360deg)}}@keyframes dropIn{0%{opacity:0;transform:translateY(-24px)}}@keyframes cardIn{0%{opacity:0;transform:translateY(28px)scale(.97)}}@keyframes screenInFwd{0%{opacity:0;transform:translate(40px)scale(.98)}}@keyframes screenInBack{0%{opacity:0;transform:translate(-40px)scale(.98)}}@keyframes bump{40%{transform:scale(1.18)}}@keyframes pop{0%{transform:scale(.85)}60%{transform:scale(1.08)}}@keyframes flash{0%{opacity:1}to{opacity:0}}@keyframes floaty{50%{transform:translateY(-8px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app{flex-direction:column;gap:22px;width:100%;max-width:1320px;min-height:100dvh;margin:0 auto;padding:22px 28px 28px;display:flex;position:relative}.topbar{animation:dropIn .8s var(--smooth) both;justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{align-items:center;gap:14px;min-width:0;display:flex}.brand__logo{filter:drop-shadow(0 6px 18px #ff4d8d73);flex:none;width:52px;height:52px;animation:14s linear infinite spinSlow}.is-spinning .brand__logo{animation-duration:1.2s}.brand__title{font-family:var(--font-display);background:linear-gradient(90deg, #fff 0%, var(--gold) 25%, var(--primary) 50%, var(--gold) 75%, #fff 100%);color:#0000;background-size:200%;-webkit-background-clip:text;background-clip:text;font-size:clamp(1.45rem,2.6vw,2.1rem);font-weight:700;line-height:1.05;animation:5s linear infinite shimmer}.brand__subtitle{color:var(--text-2);margin-top:3px;font-size:.92rem}.screens{flex:1;grid-template:"nomes roleta""historico roleta"1fr/minmax(320px,410px) minmax(0,1fr);gap:22px;display:grid}.screen--nomes{grid-area:nomes;animation-delay:.1s}.screen--roleta{grid-area:roleta;animation-delay:.2s}.screen--historico{grid-area:historico;min-height:0;animation-delay:.3s}@media (width>=900px){.only-mobile{display:none!important}.credit{align-items:center;height:60px;position:absolute;top:22px;right:86px}}@media (width>=1500px){.app{max-width:1480px}}.credit{animation:fadeUp .8s .5s var(--smooth) both;justify-content:center;display:flex}.credit__link{border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap;max-width:100%;color:var(--text-3);transition:border-color .3s, box-shadow .3s, transform .3s var(--spring), color .3s;background:#ffffff0d;border-radius:999px;align-items:center;gap:8px;padding:6px 14px 6px 6px;font-size:.84rem;text-decoration:none;display:inline-flex;position:relative}.credit__link:hover{color:var(--text-2);border-color:#ffd16680;transform:translateY(-2px);box-shadow:0 0 28px -8px #ffd16699}.credit__link:focus-visible{outline-offset:2px;outline:3px solid #ffd166bf}.credit__icon{color:#fff;background:linear-gradient(135deg, var(--primary), var(--accent));border-radius:50%;flex:none;place-items:center;width:26px;height:26px;display:grid;box-shadow:0 4px 12px -4px #ff4d8db3}.credit__icon .i{stroke-width:2.5px;width:15px;height:15px}.credit__name{background:linear-gradient(90deg, #fff 0%, var(--gold) 50%, #fff 100%);color:#0000;background-size:200%;-webkit-background-clip:text;background-clip:text;font-weight:700;animation:4s linear infinite shimmer}.credit__dot{color:var(--text-3)}.credit__site{color:var(--gold);font-weight:600}.credit__arrow{width:14px;height:14px;color:var(--gold);transition:transform .3s var(--spring);margin-left:-3px}.credit__link:hover .credit__arrow{transform:translate(2px,-2px)}@media (width<=899px){.app{height:100dvh;min-height:0;padding:calc(12px + env(safe-area-inset-top)) 16px calc(var(--tabbar-h) + 22px + env(safe-area-inset-bottom));gap:12px}.brand__logo{width:42px;height:42px}.brand__subtitle{font-size:.8rem}.credit__link{padding:4px 12px 4px 4px;font-size:.76rem}.credit__icon{width:22px;height:22px}.credit__icon .i{width:13px;height:13px}.screens{min-height:0;display:block;position:relative}.screens>.screen{overscroll-behavior:contain;height:100%;display:none;overflow:hidden auto}.screens>.screen.is-active{animation:screenInFwd .5s var(--smooth) both;display:flex}.screens[data-dir=back]>.screen.is-active{animation-name:screenInBack}.tabbar{left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:50;height:var(--tabbar-h);border:1px solid var(--border);-webkit-backdrop-filter:blur(18px)saturate(1.4);backdrop-filter:blur(18px)saturate(1.4);transition:transform .35s var(--smooth);animation:tabbarIn .7s .2s var(--spring) both;background:#160c34c7;border-radius:22px;grid-template-columns:repeat(3,1fr);padding:6px;display:grid;position:fixed;box-shadow:0 18px 40px -12px #000000bf}body.typing .tabbar{transform:translateY(calc(100% + 40px))}.tabbar__indicator{width:calc(33.3333% - 4px);transform:translateX(calc(var(--i,0) * 100%));transition:transform .5s var(--spring);background:linear-gradient(135deg,#ff4d8d52,#7c5cff52);border:1px solid #ffffff24;border-radius:16px;position:absolute;top:6px;bottom:6px;left:6px}.tab{z-index:1;color:var(--text-3);-webkit-tap-highlight-color:transparent;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.72rem;font-weight:600;text-decoration:none;transition:color .3s;display:flex;position:relative;overflow:hidden}.tab .i{width:22px;height:22px;transition:transform .4s var(--spring)}.tab.is-active{color:#fff}.tab.is-active .i{transform:translateY(-2px)scale(1.14)}.tab__badge{background:var(--primary);color:#fff;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.68rem;font-weight:700;display:grid;position:absolute;top:5px;left:calc(50% + 7px);box-shadow:0 0 0 2px #1a0e3e}.tab__badge:empty{display:none}}@keyframes tabbarIn{0%{opacity:0;transform:translateY(120%)}}@media (width<=899px) and (orientation:landscape) and (height<=520px){.brand__subtitle{display:none}.app{padding-top:calc(8px + env(safe-area-inset-top));gap:8px}.screens>.screen--roleta.is-active{flex-flow:wrap;align-content:center}.credit{top:calc(8px + env(safe-area-inset-top));align-items:center;height:44px;position:absolute;right:72px}}@media (width<=680px) and (orientation:landscape) and (height<=520px){.credit__dot,.credit__site{display:none}}@media (width<=380px){.app{padding-left:12px;padding-right:12px}}.card{border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(16px)saturate(1.3);backdrop-filter:blur(16px)saturate(1.3);box-shadow:var(--shadow), inset 0 1px 0 #ffffff14;animation:cardIn .8s var(--smooth) both;background:linear-gradient(160deg,#ffffff17,#ffffff08);flex-direction:column;gap:14px;padding:22px;display:flex;position:relative}.card__head{justify-content:space-between;align-items:center;gap:10px;display:flex}.card__title{font-family:var(--font-display);align-items:center;gap:9px;font-size:1.25rem;font-weight:600;display:flex}.card__title .i{color:var(--gold)}.pill{white-space:nowrap;color:#ddd4ff;background:#7c5cff33;border:1px solid #7c5cff61;border-radius:999px;padding:5px 12px;font-size:.8rem;font-weight:600}.bump{animation:bump .4s var(--spring)}.names-input{resize:vertical;border-radius:var(--radius-sm);border:1px solid var(--border);width:100%;min-height:240px;font:500 1rem/1.65 var(--font-body);color:var(--text);background:#0804188c;outline:none;padding:14px 16px;transition:border-color .25s,box-shadow .25s,background .25s,opacity .25s}.names-input::placeholder{color:var(--text-3)}.names-input:focus{background:#080418b8;border-color:#ff4d8d99;box-shadow:0 0 0 4px #ff4d8d26}.names-input[readonly]{opacity:.55}@media (width<=899px){.names-input{resize:none;flex:auto;min-height:180px}}.hint{color:var(--text-3);margin-top:-4px;font-size:.8rem}kbd{border:1px solid var(--border);background:var(--surface);font:600 .72rem var(--font-body);border-radius:6px;padding:1px 6px}.toolbar{flex-wrap:wrap;gap:8px;display:flex}.btn{background:var(--surface-2);min-height:40px;font:600 .88rem/1 var(--font-body);color:var(--text);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 15px;text-decoration:none;transition:transform .15s,background .25s,border-color .25s,box-shadow .25s,opacity .25s;display:inline-flex;position:relative;overflow:hidden}.btn .i{width:18px;height:18px}.btn:hover{background:#ffffff29;transform:translateY(-1px)}.btn:active{transform:translateY(1px)scale(.98)}.btn:focus-visible,.icon-btn:focus-visible,.link-btn:focus-visible,.tab:focus-visible{outline-offset:2px;outline:3px solid #ffd166bf}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn--ghost{border-color:var(--border);background:#ffffff0f}.btn--danger:hover{color:#ffd3dc;background:#ff5c7a2e;border-color:#ff5c7a73}.btn--primary{color:#fff;background:linear-gradient(135deg, var(--primary) 0%, #ff6a5c 50%, var(--primary-2) 100%);text-shadow:0 1px 2px #00000040;background-size:200% 100%;transition:transform .15s,background-position .5s,box-shadow .25s,opacity .25s;box-shadow:0 12px 30px -12px #ff4d8dcc,inset 0 1px #ffffff59}.btn--primary:hover{background:linear-gradient(135deg, var(--primary) 0%, #ff6a5c 50%, var(--primary-2) 100%);background-position:100% 0;background-size:200% 100%;box-shadow:0 16px 36px -12px #ff4d8df2,inset 0 1px #ffffff59}.btn--primary:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000,#ffffff73,#0000);width:40%;animation:3.4s ease-in-out infinite sweep;position:absolute;top:0;bottom:0;left:-60%;transform:skew(-20deg)}.btn--lg{border-radius:14px;min-height:50px;font-size:1rem}.btn--xl{min-height:58px;font-family:var(--font-display);letter-spacing:.02em;border-radius:18px;padding:0 38px;font-size:1.2rem}.btn--xl .i{width:22px;height:22px}.btn--block{width:100%}.btn--sm{border-radius:10px;min-height:32px;padding:0 12px;font-size:.8rem}.icon-btn{border:1px solid var(--border);background:var(--surface-2);width:44px;height:44px;color:var(--text);transition:transform .2s var(--spring), background .25s;border-radius:14px;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.icon-btn:hover{background:#ffffff2e;transform:scale(1.06)}.icon-btn[aria-pressed=true] .i--off,.icon-btn[aria-pressed=false] .i--on{display:none}.icon-btn[aria-pressed=false]{color:var(--text-3)}.link-btn{color:var(--gold);text-underline-offset:3px;background:0 0;border:0;border-radius:6px;padding:2px 4px;font-weight:700;text-decoration:underline}.switch{color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;font-size:.88rem;display:flex;position:relative}.switch input{opacity:0;pointer-events:none;position:absolute}.switch__track{border:1px solid var(--border);background:#ffffff24;border-radius:99px;flex:none;width:46px;height:26px;transition:background .3s;position:relative}.switch__thumb{width:18px;height:18px;transition:transform .4s var(--spring);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 2px 6px #0006}.switch input:checked+.switch__track{background:linear-gradient(135deg, var(--primary), var(--accent))}.switch input:checked+.switch__track .switch__thumb{transform:translate(20px)}.switch input:focus-visible+.switch__track{outline-offset:2px;outline:3px solid #ffd166bf}.history{flex-direction:column;gap:8px;max-height:300px;padding:0 4px 0 0;list-style:none;display:flex;overflow-y:auto}.history__item{background:#ffffff0d;border:1px solid #ffffff14;border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.history__item.is-new{animation:slideIn .7s var(--spring) both, glowOnce 2s ease-out}.history__pos{width:30px;height:30px;font:700 .8rem var(--font-display);color:var(--gold);background:#ffd16626;border-radius:10px;flex:none;place-items:center;display:grid}.history__item:first-child .history__pos{color:#3a2300;background:linear-gradient(135deg, var(--gold), var(--primary-2))}.history__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.history__time{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:.75rem}.empty{text-align:center;color:var(--text-3);padding:18px 0;font-size:.9rem}.toasts{z-index:1300;pointer-events:none;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 32px);display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow);pointer-events:auto;animation:toastIn .45s var(--spring) both;background:#1a0f3cf0;border-radius:14px;align-items:center;gap:12px;padding:12px 16px;font-size:.9rem;display:flex}.toast.is-leaving{animation:.3s ease-in both toastOut}.toast__action{color:var(--gold);background:#ffd16624;border:0;border-radius:8px;padding:4px 8px;font-weight:700}@media (width<=899px){.toasts{bottom:calc(var(--tabbar-h) + 24px + env(safe-area-inset-bottom))}}.ripple{pointer-events:none;background:#ffffff59;border-radius:50%;animation:.6s ease-out forwards ripple;position:absolute;transform:scale(0)}@keyframes ripple{to{opacity:0;transform:scale(1)}}@keyframes sweep{0%,55%{left:-60%}to{left:130%}}@keyframes slideIn{0%{opacity:0;transform:translate(-24px)scale(.9)}}@keyframes glowOnce{0%{border-color:#ffd166cc;box-shadow:0 0 #ffd166b3}to{box-shadow:0 0 0 14px #ffd16600}}@keyframes toastIn{0%{opacity:0;transform:translateY(20px)scale(.9)}}@keyframes toastOut{to{opacity:0;transform:translateY(10px)scale(.95)}}.card--wheel{justify-content:center;align-items:center;gap:22px;padding:34px 28px 28px}.wheel{aspect-ratio:1;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;width:clamp(300px,100vh - 290px,min(100%,640px));transition:transform .5s var(--spring), filter .4s;flex:none;position:relative;container-type:inline-size}.wheel:hover:not(.is-empty){transform:scale(1.012)}.wheel.is-empty{filter:saturate(.6)}.is-spinning .wheel{cursor:progress}.wheel__glow{filter:blur(12px);pointer-events:none;background:radial-gradient(circle,#ff4d8d80 0%,#7c5cff47 42%,#0000 68%);border-radius:50%;transition:opacity .5s;animation:4s ease-in-out infinite breathe;position:absolute;inset:-9%}.is-spinning .wheel__glow,.wheel.is-winner .wheel__glow{background:radial-gradient(circle,#ffd16699 0%,#ff4d8d59 42%,#0000 70%)}.wheel__rim{background:linear-gradient(145deg,#ffe7a3 0%,#f6b73c 28%,#c77a0a 60%,#8a4b00 100%);border-radius:50%;position:absolute;inset:0;box-shadow:0 0 0 2px #ffffff1f,0 28px 60px -18px #000000d9,0 0 50px #ffaa3c4d,inset 0 0 0 3px #ffffff40,inset 0 -1.5cqw 3cqw #00000059}.wheel.is-winner .wheel__rim{animation:.5s ease-in-out 4 rimFlash}.bulb{width:2.8cqw;height:2.8cqw;transform:rotate(var(--a)) translateY(-47.3cqw);background:#fff7da;border-radius:50%;margin:-1.4cqw 0 0 -1.4cqw;animation:1.6s step-end infinite blink;position:absolute;top:50%;left:50%;box-shadow:0 0 1.2cqw #ffd166,0 0 2.6cqw #ffd166bf}.bulb:nth-child(2n){animation-delay:-.8s}.is-spinning .bulb{animation:1.44s linear infinite chase;animation-delay:var(--d)}.wheel.is-winner .bulb{animation:.35s step-end infinite blink}.wheel.is-winner .bulb:nth-child(2n){animation-delay:-.175s}.wheel__canvas{transform-origin:50%;will-change:transform;border-radius:50%;width:89%;height:89%;position:absolute;inset:5.5%;box-shadow:0 0 0 .5cqw #3c19008c}.wheel.is-shuffled .wheel__canvas{animation:wobble .6s var(--spring)}.wheel__shine{pointer-events:none;background:radial-gradient(circle at 32% 22%,#ffffff42,#0000 42%),radial-gradient(circle,#0000 62%,#00000052 100%);border-radius:50%;position:absolute;inset:5.5%}.wheel__pointer{z-index:3;transform-origin:50% 30%;filter:drop-shadow(0 .8cqw .8cqw #00000080);pointer-events:none;width:12%;position:absolute;top:-4.5%;left:44%}.wheel__pointer svg{width:100%;height:auto}.wheel__hub{z-index:4;aspect-ratio:1;background:radial-gradient(circle at 35% 30%, #ff9dbd, var(--primary) 45%, #b3124f 100%);width:22%;font:700 4.2cqw/1 var(--font-display);letter-spacing:.04em;color:#fff;text-shadow:0 .3cqw .5cqw #00000059;-webkit-tap-highlight-color:transparent;transition:transform .25s var(--spring), filter .3s;border:.9cqw solid #fff4d6;border-radius:50%;place-items:center;animation:2.2s ease-in-out infinite hubPulse;display:grid;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.wheel__hub:hover{transform:translate(-50%,-50%)scale(1.07)}.wheel__hub:active{transform:translate(-50%,-50%)scale(.94)}.wheel__hub:focus-visible{outline-offset:.6cqw;outline:.8cqw solid #ffd166e6}.wheel__hub:disabled{cursor:progress;filter:saturate(.75)brightness(.92);animation:none}.wheel.is-empty .wheel__hub{background:radial-gradient(circle at 35% 30%,#a59bd0,#6a5c9e 50%,#3f3470 100%);animation:none}.wheel-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;width:100%;display:flex}.ticker{border:1px solid var(--border);min-width:min(300px,100%);max-width:100%;min-height:48px;font:600 clamp(1.02rem, 2.1vw, 1.3rem) / 1.3 var(--font-display);text-align:center;white-space:nowrap;text-overflow:ellipsis;color:var(--text-2);background:#0804188c;border-radius:999px;flex:0 auto;padding:10px 24px;transition:background .4s,border-color .4s,color .4s;overflow:hidden}.is-spinning .ticker{color:#fff;border-color:#ff4d8d73}.ticker.is-winner{color:var(--gold);animation:pop .55s var(--spring);background:linear-gradient(135deg,#ffd16633,#ff4d8d38);border-color:#ffd166a6;box-shadow:0 0 30px -6px #ffd1668c}.wheel-msg{text-align:center;color:var(--text-2);margin-top:-8px;font-size:.9rem}@media (width<=899px){.card--wheel{gap:16px;padding:26px 16px 18px}.wheel{width:clamp(220px,100dvh - 392px,min(100%,480px))}.wheel-controls{flex-direction:column;gap:12px}.ticker{width:100%;min-height:44px;padding:8px 18px}.card--wheel .btn--xl{width:100%}}@media (width<=899px) and (orientation:landscape) and (height<=520px){.card--wheel{column-gap:28px;padding:16px}.wheel{width:calc(100dvh - var(--tabbar-h) - 145px);min-width:160px}.wheel-controls{flex:0 260px;width:auto}}@keyframes breathe{0%,to{opacity:.75;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}@keyframes blink{0%{opacity:1}50%{opacity:.3;box-shadow:none}}@keyframes chase{0%,to{opacity:.3;box-shadow:none}8%{opacity:1;background:#fff;box-shadow:0 0 1.5cqw #fff,0 0 3.2cqw #ff4d8d}}@keyframes hubPulse{0%,to{box-shadow:0 1.4cqw 3cqw #00000073,inset 0 -1cqw 2cqw #00000040,0 0 #ff4d8d99}50%{box-shadow:0 1.4cqw 3cqw #00000073,inset 0 -1cqw 2cqw #00000040,0 0 0 2.6cqw #ff4d8d00}}@keyframes rimFlash{50%{filter:brightness(1.35)saturate(1.3)}}@keyframes wobble{30%{scale:.95}60%{scale:1.03}}.modal{z-index:1000;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal__backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;background:radial-gradient(circle at 50% 40%,#3c146e99,#05020fe6);transition:opacity .35s;position:absolute;inset:0}.modal.is-open .modal__backdrop{opacity:1}.modal__card{overscroll-behavior:contain;scrollbar-width:thin;text-align:center;width:min(100%,480px);max-height:calc(100dvh - 28px);box-shadow:0 40px 100px -20px #000000d9, 0 0 0 1px #ffd16626, 0 0 90px -10px var(--winner-color,var(--primary));opacity:0;transition:transform .65s var(--spring), opacity .3s;background:linear-gradient(165deg,#2b1569 0%,#1b0c42 55%,#12072e 100%);border:1px solid #ffffff24;border-radius:28px;padding:46px 28px 28px;position:relative;overflow:hidden auto;transform:scale(.6)translateY(40px)}.modal.is-open .modal__card{opacity:1;transform:none}.modal__fx{border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:hidden}.modal__rays{pointer-events:none;background:repeating-conic-gradient(#ffd16629 0deg 9deg,#0000 9deg 18deg);border-radius:50%;width:760px;height:760px;margin:-380px 0 0 -380px;animation:16s linear infinite spinSlow;position:absolute;top:100px;left:50%;-webkit-mask:radial-gradient(circle,#000 0%,#0000 58%);mask:radial-gradient(circle,#000 0%,#0000 58%)}.modal__content{position:relative}.modal__close{z-index:2;border-radius:12px;width:38px;height:38px;position:absolute;top:14px;right:14px}.trophy{background:radial-gradient(circle at 35% 30%, #fff5cc, var(--gold) 42%, #f59e0b 100%);border-radius:50%;place-items:center;width:108px;height:108px;margin:0 auto 14px;display:grid;box-shadow:0 0 0 8px #ffd16624,0 0 60px #ffd1668c}.trophy svg{fill:#ffffff59;stroke:#7a3d00;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:56px;height:56px}.modal.is-open .trophy{animation:trophyIn .9s .15s var(--spring) both, floaty 3s 1.1s ease-in-out infinite}.modal__eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-size:.78rem;font-weight:700}.modal.is-open .modal__eyebrow{animation:fadeUp .5s .25s var(--smooth) both}.modal__name{min-height:1.15em;font-family:var(--font-display);overflow-wrap:anywhere;background:linear-gradient(90deg, #fff 0%, var(--gold) 25%, #fff 50%, var(--gold) 75%, #fff 100%);color:#0000;filter:drop-shadow(0 4px 18px #ffd16666);background-size:200%;-webkit-background-clip:text;background-clip:text;margin:10px 0 8px;font-size:clamp(2.1rem,8vw,3.3rem);font-weight:700;line-height:1.12}.modal.is-open .modal__name{animation:namePop .8s .3s var(--spring) both, shimmer 3s 1.2s linear infinite}.modal__meta{color:var(--text-2);font-size:.9rem}.modal__actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:26px;display:flex}.modal__actions .btn{flex:170px;min-height:50px;font-size:.95rem}.modal.is-open .modal__actions{animation:fadeUp .5s .55s var(--smooth) both}@media (width<=480px){.modal{padding:14px}.modal__card{border-radius:24px;padding:40px 18px 20px}.trophy{width:92px;height:92px}.trophy svg{width:48px;height:48px}}@keyframes trophyIn{0%{opacity:0;transform:scale(.2)rotate(-35deg)}70%{transform:scale(1.12)rotate(8deg)}to{opacity:1;transform:none}}@keyframes namePop{0%{opacity:0;letter-spacing:.3em;transform:scale(.5)}to{opacity:1;letter-spacing:normal;transform:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}}.video-box{text-align:left;background:linear-gradient(160deg,#ffd16617,#7c5cff17);border:1px solid #ffd1663d;border-radius:18px;margin-top:22px;padding:16px}.modal.is-open .video-box{animation:fadeUp .5s .7s var(--smooth) both}.video-box__head{align-items:center;gap:8px;display:flex}.video-box__head .i{color:var(--gold)}.video-box__title{font:600 1rem/1.2 var(--font-display)}.video-box__tag{letter-spacing:.1em;color:#3a2300;background:linear-gradient(135deg, var(--gold), var(--primary-2));border-radius:999px;margin-left:auto;padding:3px 9px;font-size:.66rem;font-weight:800}.video-box__body{margin-top:12px;display:none}.video-box[data-state=idle] [data-when=idle],.video-box[data-state=rendering] [data-when=rendering],.video-box[data-state=error] [data-when=error]{display:block}.video-box[data-state=done] [data-when=done]{display:flex}.video-box__body[data-when]{animation:fadeUp .35s var(--smooth) both}.video-box__hint{color:var(--text-2);margin-bottom:10px;font-size:.82rem}.video-box__formats{grid-template-columns:1fr 1fr;gap:10px;display:grid}.format-btn{border:1px solid var(--border);text-align:left;min-height:56px;transition:transform .2s var(--spring), border-color .25s, background .25s, box-shadow .25s;background:#ffffff0f;border-radius:14px;align-items:center;gap:11px;padding:10px 12px;display:flex;position:relative;overflow:hidden}.format-btn:hover:not(:disabled){background:#ffd1661a;border-color:#ffd16699;transform:translateY(-2px);box-shadow:0 10px 26px -14px #ffd166cc}.format-btn:active:not(:disabled){transform:scale(.97)}.format-btn:focus-visible{outline-offset:2px;outline:3px solid #ffd166bf}.format-btn:disabled{opacity:.45;cursor:not-allowed}.format-btn__shape{border:2px solid var(--gold);background:linear-gradient(160deg,#ffd16659,#ff4d8d40);border-radius:4px;flex:none;width:17px;height:30px}.format-btn__shape--square{width:26px;height:26px}.format-btn__text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.format-btn__text b{font-size:.92rem}.format-btn__text small{color:var(--text-3);font-size:.7rem}.progress{background:#ffffff1a;border-radius:99px;height:12px;overflow:hidden}.progress__bar{border-radius:inherit;background:repeating-linear-gradient(-45deg, #ffffff38 0 8px, transparent 8px 16px), linear-gradient(90deg, var(--primary), var(--gold));transform-origin:0;background-size:22.6px 100%,100% 100%;height:100%;transition:transform .25s linear;animation:.6s linear infinite stripes;display:block;transform:scaleX(0)}.video-box__row{font-variant-numeric:tabular-nums;color:var(--text-2);justify-content:space-between;align-items:center;gap:10px;margin-top:9px;font-size:.85rem;display:flex}.video-box__done{align-items:center;gap:14px}.video-box__preview{aspect-ratio:9/16;object-fit:cover;background:#000;border:1px solid #ffffff29;border-radius:12px;flex:none;width:92px;box-shadow:0 12px 30px -14px #000000e6,0 0 0 4px #ffd1661f}.video-box[data-result=square] .video-box__preview{aspect-ratio:1;width:118px}.video-box__result{min-width:0}.video-box__ready{font:600 1.1rem/1.2 var(--font-display);color:var(--gold)}.video-box__info{color:var(--text-3);margin:3px 0 11px;font-size:.76rem}.video-box__actions{flex-wrap:wrap;gap:8px;display:flex}.video-box__actions .btn{min-height:38px}.video-box__again{margin-top:8px;font-size:.8rem}.video-box__error{color:#ffd3dc;margin-bottom:10px;font-size:.86rem}.btn--gold{color:#3a2300;background:linear-gradient(135deg, #ffe08a, var(--gold) 50%, var(--primary-2));box-shadow:0 10px 24px -12px #ffd166d9,inset 0 1px #ffffff80}.btn--gold:hover{background:linear-gradient(135deg,#ffe9a8,#ffd97a 50%,#ffae5c)}.video-link{animation:fadeUp .4s var(--smooth) both;align-items:center;gap:8px;padding:6px 10px;font-size:.9rem;text-decoration:none;display:inline-flex}.video-link span{text-underline-offset:3px;text-decoration:underline}.video-link[data-state=rendering] span{font-variant-numeric:tabular-nums;text-decoration:none}.video-link[data-state=rendering] .i{animation:1s ease-in-out infinite pulse}@keyframes stripes{to{background-position:22.6px 0,0 0}}@keyframes pulse{50%{opacity:.35}}@media (width<=420px){.video-box{padding:14px 12px}.format-btn{gap:9px;padding:9px 10px}.format-btn__text small{font-size:.66rem}.video-box__preview{width:80px}.video-box[data-result=square] .video-box__preview{width:100px}}
