*{box-sizing:border-box}body{color:#fff;background:#0b1020;margin:0;font-family:Outfit,sans-serif;overflow-x:hidden}#root{min-height:100vh}.dash{--bg:#05070a;--card-bg:#ffffff0a;--card-border:#ffffff14;--text:#fff;--accent:#ff9d00;--panel-bg:#121418;--input-bg:#0a0c10;background:var(--bg);min-height:100vh;color:var(--text);padding:20px}.dash.theme-light{--bg:#f0f2f5;--card-bg:#ffffffe6;--card-border:#0000000d;--text:#1a1c20;--panel-bg:#fff;--input-bg:#f1f3f5}.dash.theme-vibrant .card{border:none}.loader{z-index:2000;background:#000;flex-direction:column;justify-content:center;align-items:center;animation:1s cubic-bezier(.4,0,.2,1) 1.8s forwards loaderOut;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.loader-logo{width:100px;animation:3s ease-in-out infinite softPulse}.loader-text{letter-spacing:5px;color:#ff9d00;margin-top:20px;font-size:10px;font-weight:700}.dash-top-actions{z-index:1000;align-items:center;gap:10px;display:flex;position:fixed;top:30px;right:30px}.auth-chip{background:var(--card-bg);height:55px;color:var(--text);border:none;border:1px solid var(--card-border);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border-radius:18px;padding:0 16px;font-size:12px;font-weight:700;transition:all .25s}.auth-chip:hover{border-color:var(--accent);color:var(--accent)}.user-strip{text-align:center;opacity:.55;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:72px 16px 0;font-size:12px;display:flex}.user-strip-email{font-weight:600}.user-strip-meta{opacity:.9}.user-strip-plan{text-align:center;opacity:.65;flex-basis:100%;max-width:520px;font-size:11px;line-height:1.4}.settings-trigger{background:var(--accent);color:#000;cursor:pointer;border:none;border-radius:18px;width:55px;height:55px;font-size:24px;transition:all .5s cubic-bezier(.34,1.56,.64,1)}.settings-trigger:hover{transform:rotate(180deg)scale(1.1)}.config-panel{background:var(--panel-bg);border:1px solid var(--card-border);z-index:999;border-radius:24px;width:320px;padding:24px;transition:all .7s cubic-bezier(.34,1.56,.64,1);position:fixed;top:100px;right:-400px}.config-panel.active{right:30px}.panel-title{color:var(--accent);text-transform:uppercase;letter-spacing:1px;margin-bottom:14px;font-size:12px;font-weight:800}.config-panel label{opacity:.7;text-transform:uppercase;margin:8px 0;font-size:11px;font-weight:700;display:block}.config-panel select{border:1px solid var(--card-border);background:var(--input-bg);width:100%;color:var(--text);border-radius:10px;margin-bottom:10px;padding:10px}.apply-btn{background:var(--accent);color:#000;cursor:pointer;border:0;border-radius:10px;width:100%;padding:12px;font-weight:700}.dash header{text-align:center;padding:80px 20px 30px}.dash header img{filter:drop-shadow(0 10px 20px #0000004d);width:90px;margin-bottom:10px}.dash header h1{letter-spacing:-1px;margin:0;font-size:clamp(2rem,5vw,3.5rem);font-weight:800}.dash header h1 span{color:var(--accent)}.dash .slogan{opacity:.4;letter-spacing:4px;text-transform:uppercase;margin-top:10px;font-size:.75rem;font-weight:300}.grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-auto-rows:190px;grid-auto-flow:dense;gap:8px;max-width:1700px;margin:0 auto;padding:30px 50px 50px;display:grid}.card{background:var(--card-bg);border:1px solid var(--card-border);color:inherit;border-radius:30px;flex-direction:column;justify-content:center;align-items:center;padding:25px;text-decoration:none;transition:transform .6s cubic-bezier(.34,1.56,.64,1),background .4s,box-shadow .6s;animation:.8s cubic-bezier(.34,1.56,.64,1) backwards softEntrance;display:flex}.card:hover{border-color:var(--accent);transform:translateY(-8px)scale(1.02);box-shadow:0 30px 60px #00000059}.card-locked{cursor:not-allowed;opacity:.72;position:relative}.card-locked:hover{box-shadow:none;border-color:var(--card-border);transform:none}.card-locked .card-title{opacity:.85}.card-lock-overlay{z-index:2;pointer-events:none;background:linear-gradient(160deg,#00000059 0%,#0000008c 100%);border-radius:30px;place-items:center;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.card-lock-icon{filter:drop-shadow(0 4px 12px #00000080);font-size:2.25rem;line-height:1}.card-locked img{opacity:.55}.wide{grid-column:span 2}.tall{grid-row:span 2}.big{grid-area:span 2/span 2}.card img{object-fit:contain;width:130px;height:130px;margin-bottom:15px;transition:all .7s cubic-bezier(.34,1.56,.64,1)}.card:hover img{transform:scale(1.15)rotate(-5deg)}.card-title{color:#fff;text-align:center;padding:0 10px;font-size:1.1rem;font-weight:700;line-height:1.2;transition:all .3s}.dash.theme-light .card-title{color:#1a1c20}.player{background:#000;position:fixed;top:0;bottom:0;left:0;right:0}.player iframe{border:0;width:100%;height:100%}.locked-play{color:#e8eaef;background:radial-gradient(#1a1f2e 0%,#0b0e14 70%);place-items:center;padding:24px;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.locked-play-inner{text-align:center;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:20px;max-width:420px;padding:28px 24px}.locked-play-icon{margin-bottom:12px;font-size:2.5rem;display:block}.locked-play-inner h2{color:#ff9d00;margin:0 0 12px;font-size:1.25rem;font-weight:800}.locked-play-inner p{opacity:.88;margin:0;font-size:.9rem;line-height:1.5}.locked-play-inner code{background:#00000059;border-radius:6px;padding:2px 6px;font-size:.82em}.back{z-index:10;color:#fff;background:#0000008c;border:1px solid #ffffff59;border-radius:10px;padding:8px 12px;text-decoration:none;position:fixed;top:12px;left:12px}.blocked{z-index:50;text-align:center;color:#fff;background:#080a13;place-items:center;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.blocked h2{margin:0 0 8px}.games-status{text-align:center;border:1px solid var(--card-border);background:var(--card-bg);border-radius:24px;grid-column:1/-1;max-width:520px;margin:0 auto;padding:48px 24px}.games-status p{opacity:.85;margin:0 0 16px;line-height:1.5}.games-status button{background:var(--accent);color:#000;cursor:pointer;border:0;border-radius:10px;padding:10px 18px;font-weight:700}.games-status-muted{opacity:.65;font-size:.9rem}@keyframes softPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes softEntrance{0%{opacity:0;filter:blur(10px);transform:translateY(30px)scale(.95)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes loaderOut{to{opacity:0;pointer-events:none;transform:translateY(-100%)}}.page-ambient{isolation:isolate;position:relative;overflow:hidden}.page-ambient:before,.page-ambient:after{content:"";filter:blur(90px);opacity:.42;pointer-events:none;z-index:0;border-radius:50%;animation:22s ease-in-out infinite ambientOrbDrift;position:absolute}.page-ambient:before{background:radial-gradient(circle,#ff9d008c 0%,#0000 68%);width:min(520px,95vw);height:min(520px,95vw);top:-18%;right:-12%}.page-ambient:after{background:radial-gradient(circle,#3a86ff66 0%,#0000 65%);width:min(420px,80vw);height:min(420px,80vw);animation-delay:-11s;bottom:-22%;left:-18%}@keyframes ambientOrbDrift{0%,to{transform:translate(0)scale(1)}33%{transform:translate(-4%,6%)scale(1.06)}66%{transform:translate(5%,-4%)scale(.96)}}@keyframes authFadeUp{0%{opacity:0;filter:blur(8px);transform:translateY(22px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes authCardEnter{0%{opacity:0;filter:blur(12px);transform:translateY(36px)scale(.96)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes authBorderGlow{0%,to{box-shadow:0 40px 80px #00000073,0 0 0 1px #ff9d001f}50%{box-shadow:0 40px 80px #00000073,0 0 40px #ff9d0014,0 0 0 1px #ff9d0038}}@keyframes authStepSwap{0%{opacity:0;filter:blur(6px);transform:translate(18px)scale(.985)}to{opacity:1;filter:blur();transform:translate(0)scale(1)}}@keyframes authBackIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes authLogoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.landing{color:#fff;background:radial-gradient(900px 480px at 50% 0,#ff9d0024,#0000 55%),#05070a;place-items:center;min-height:100vh;padding:32px 20px 48px;display:grid}.landing-inner{text-align:center;z-index:1;max-width:520px;position:relative}.landing-logo{filter:drop-shadow(0 12px 28px #0006);width:96px;height:auto;margin:0 auto 16px;animation:.85s cubic-bezier(.34,1.56,.64,1) backwards authFadeUp,5s ease-in-out .85s infinite authLogoFloat;display:block}.landing-eyebrow{letter-spacing:.28em;text-transform:uppercase;color:#ff9d00;margin:0 0 10px;font-size:11px;font-weight:800;animation:.7s cubic-bezier(.34,1.56,.64,1) .1s backwards authFadeUp}.landing-title{letter-spacing:-.03em;margin:0 0 14px;font-size:clamp(1.75rem,4.5vw,2.35rem);font-weight:800;line-height:1.15;animation:.75s cubic-bezier(.34,1.56,.64,1) .18s backwards authFadeUp}.landing-sub{opacity:.72;margin:0 0 28px;font-size:1.05rem;font-weight:400;line-height:1.55;animation:.75s cubic-bezier(.34,1.56,.64,1) .28s backwards authFadeUp}.landing-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:22px;animation:.75s cubic-bezier(.34,1.56,.64,1) .38s backwards authFadeUp;display:flex}.landing-btn{border-radius:14px;justify-content:center;align-items:center;min-width:148px;padding:14px 22px;font-size:.95rem;font-weight:800;text-decoration:none;transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s,border-color .25s;display:inline-flex;position:relative;overflow:hidden}.landing-btn:after{content:"";background:linear-gradient(105deg,#0000 40%,#ffffff38 50%,#0000 60%);transition:transform .6s;position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-100%)}.landing-btn:hover:after{transform:translate(100%)}.landing-btn:hover{transform:translateY(-4px)scale(1.02)}.landing-btn:active{transform:translateY(-1px)scale(.99)}.landing-btn-primary{color:#0b0d12;background:#ff9d00;box-shadow:0 16px 40px #ff9d0040}.landing-btn-primary:hover{box-shadow:0 22px 50px #ff9d0061}.landing-btn-secondary{color:#fff;background:#ffffff0f;border:1px solid #ffffff2e}.landing-btn-secondary:hover{border-color:#ff9d0073;box-shadow:0 12px 32px #00000040}.landing-note{opacity:.5;margin:0;font-size:.82rem;line-height:1.5;animation:.75s cubic-bezier(.34,1.56,.64,1) .5s backwards authFadeUp}.auth-page{color:#fff;background:radial-gradient(1200px 600px at 50% -10%,#ff9d001f,#0000),#05070a;place-items:center;min-height:100vh;padding:24px;display:grid;position:relative}.auth-back-home{z-index:2;color:#ffffffa6;border-radius:10px;margin:-8px -12px;padding:8px 12px;font-size:.88rem;font-weight:600;text-decoration:none;transition:color .25s,background .25s,transform .3s cubic-bezier(.34,1.56,.64,1);animation:.55s cubic-bezier(.34,1.56,.64,1) backwards authBackIn;position:absolute;top:22px;left:22px}.auth-back-home:hover{color:#ff9d00;background:#ffffff0f;transform:translate(-2px)}.auth-back-home:active{transform:translate(0)scale(.98)}.auth-page-plain{background:#05070a}.auth-loading-text{opacity:.7;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:11px}.auth-card{z-index:1;-webkit-backdrop-filter:blur(12px);background:#ffffff0a;border:1px solid #ffffff1a;border-radius:24px;width:min(420px,100%);padding:28px 26px 22px;animation:.9s cubic-bezier(.34,1.56,.64,1) backwards authCardEnter,5s ease-in-out 1s infinite authBorderGlow;position:relative;box-shadow:0 40px 80px #00000073}.auth-card-wide{width:min(520px,100%)}.auth-logo{width:64px;margin:0 auto 12px;animation:.65s cubic-bezier(.34,1.56,.64,1) .12s backwards authFadeUp,4.5s ease-in-out .8s infinite authLogoFloat;display:block}.auth-card h1{text-align:center;letter-spacing:-.02em;margin:0 0 8px;font-size:1.5rem;font-weight:800;animation:.65s cubic-bezier(.34,1.56,.64,1) .2s backwards authFadeUp}.auth-lead{text-align:center;opacity:.65;margin:0 0 20px;font-size:.9rem;line-height:1.45;animation:.65s cubic-bezier(.34,1.56,.64,1) .28s backwards authFadeUp}.auth-step-panel{animation:.55s cubic-bezier(.34,1.56,.64,1) both authStepSwap}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-form label{text-transform:uppercase;letter-spacing:.06em;opacity:.85;flex-direction:column;gap:6px;font-size:11px;font-weight:700;animation:.55s cubic-bezier(.34,1.56,.64,1) backwards authFadeUp;display:flex}.auth-form>label:first-of-type{animation-delay:60ms}.auth-form>label:nth-of-type(2){animation-delay:.12s}.auth-form>label:nth-of-type(3){animation-delay:.18s}.auth-form>label:nth-of-type(4){animation-delay:.24s}.auth-form>label:nth-of-type(5){animation-delay:.3s}.auth-form>label:nth-of-type(6){animation-delay:.36s}.auth-form>.auth-row{animation:.55s cubic-bezier(.34,1.56,.64,1) .18s backwards authFadeUp}.auth-form>.auth-error{animation:.4s cubic-bezier(.34,1.56,.64,1) both authFadeUp}.auth-form>.auth-otp-hint{animation:.45s cubic-bezier(.34,1.56,.64,1) both authFadeUp}.auth-form>.auth-submit{animation:.55s cubic-bezier(.34,1.56,.64,1) .42s backwards authFadeUp}.auth-form>.auth-submit+.auth-submit{animation-delay:.48s}.auth-form input{color:#fff;background:#0a0c10;border:1px solid #ffffff1f;border-radius:12px;padding:12px;font-size:1rem;transition:border-color .25s,box-shadow .35s,transform .25s}.auth-form input:hover:not(:disabled){border-color:#ff9d0040}.auth-form input:focus{border-color:#ff9d008c;outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px #ff9d001f,0 12px 28px #00000040}.auth-form input:disabled{opacity:.55;cursor:not-allowed}.auth-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:520px){.auth-row{grid-template-columns:1fr}}.auth-error{color:#ff6b6b;margin:0;font-size:.9rem}.auth-submit{color:#000;cursor:pointer;background:linear-gradient(135deg,#ffb020 0%,#ff9d00 45%,#e88900 100%);border:0;border-radius:12px;margin-top:4px;padding:14px;font-size:.95rem;font-weight:800;transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s,filter .25s;position:relative;overflow:hidden;box-shadow:0 10px 28px #ff9d0047}.auth-submit:after{content:"";background:linear-gradient(105deg,#0000 35%,#ffffff59 50%,#0000 65%);transition:transform .65s;position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-120%)}.auth-submit:hover:not(:disabled):after{transform:translate(120%)}.auth-submit:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-2px)scale(1.01);box-shadow:0 16px 40px #ff9d0066}.auth-submit:active:not(:disabled){transform:translateY(0)scale(.99)}.auth-submit:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.auth-submit-secondary{color:#fff;box-shadow:none;background:#ffffff14;border:1px solid #fff3;margin-top:0}.auth-submit-secondary:after{background:linear-gradient(105deg,#0000 35%,#ffffff1f 50%,#0000 65%)}.auth-submit-secondary:hover:not(:disabled){color:#ff9d00;border-color:#ff9d00;box-shadow:0 8px 24px #0003}.auth-otp-hint{color:#7dffb0;opacity:.95;margin:-4px 0 0;font-size:.85rem;line-height:1.45}.auth-footer{text-align:center;opacity:.7;margin:18px 0 0;font-size:.9rem;animation:.6s cubic-bezier(.34,1.56,.64,1) .55s backwards authFadeUp}.auth-footer a{color:#ff9d00;font-weight:700;text-decoration:none;transition:color .2s;position:relative}.auth-footer a:after{content:"";transform-origin:100%;background:currentColor;width:100%;height:2px;transition:transform .35s cubic-bezier(.34,1.56,.64,1);position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.auth-footer a:hover:after{transform-origin:0;transform:scaleX(1)}.auth-footer a:hover{color:#ffc14d}@media (prefers-reduced-motion:reduce){.page-ambient:before,.page-ambient:after{opacity:.22;animation:none}.landing-logo{animation:.35s backwards authFadeUp}.auth-logo{animation:.35s 80ms backwards authFadeUp}.auth-card{animation:.4s backwards authFadeUp}.auth-step-panel,.auth-form>label,.auth-form>.auth-row,.auth-form>.auth-error,.auth-form>.auth-otp-hint,.auth-form>.auth-submit,.landing-eyebrow,.landing-title,.landing-sub,.landing-actions,.landing-note,.auth-card h1,.auth-lead,.auth-footer{animation:none!important}.landing-btn:after,.auth-submit:after{display:none}.landing-btn:hover,.auth-submit:hover:not(:disabled){transform:none}.auth-back-home{animation:none}}@media (max-width:768px){.grid{grid-template-columns:repeat(2,1fr);gap:12px;padding:15px}.wide,.big{grid-column:span 2}.dash-top-actions{top:16px;right:16px}}.admin-page{min-height:100vh}.admin-card-wide{max-width:440px}.admin-shell{color:#e8ecf4;background:#070a12;min-height:100vh}.admin-header{background:#00000059;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.admin-header a{color:#ff9d00;font-size:14px;font-weight:600;text-decoration:none}.admin-header a:hover{text-decoration:underline}.admin-header-left{align-items:center;gap:20px;display:flex}.admin-title{letter-spacing:.12em;text-transform:uppercase;opacity:.55;font-size:13px}.admin-logout{color:#fff;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:12px;padding:10px 16px;font-size:12px;font-weight:600}.admin-logout:hover{color:#ff9d00;border-color:#ff9d00}.admin-inner{max-width:960px;margin:0 auto;padding:28px 20px 80px}.admin-view-switch{background:#ffffff08;border:1px solid #ffffff1a;border-radius:14px;gap:10px;margin:0 0 22px;padding:6px;display:flex}.admin-view-btn{color:#ffffffbf;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;padding:10px 16px;font-size:13px;font-weight:700}.admin-view-btn.active{color:#ffb020;background:#ff9d0024;border-color:#ff9d0059}.admin-view-btn:hover{color:#ffb020;border-color:#ff9d0040}.admin-section{margin-bottom:36px}.admin-section h2{margin:0 0 8px;font-size:18px;font-weight:700}.admin-hint{opacity:.65;margin:0 0 16px;font-size:13px;line-height:1.5}.admin-field{text-transform:uppercase;letter-spacing:.06em;opacity:.85;flex-direction:column;gap:8px;font-size:12px;font-weight:600;display:flex}.admin-field input{color:#fff;text-transform:none;letter-spacing:normal;background:#0c1018;border:1px solid #ffffff1f;border-radius:12px;padding:12px 14px;font-size:15px;font-weight:500}.admin-row{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.admin-grow{color:#fff;background:#0c1018;border:1px solid #ffffff1f;border-radius:12px;flex:1;min-width:180px;padding:12px 14px}.admin-btn.secondary{color:#ff9d00;cursor:pointer;background:0 0;border:1px solid #ff9d0073;border-radius:12px;padding:12px 18px;font-size:13px;font-weight:700}.admin-btn.secondary:hover{background:#ff9d001f}.admin-tag-list{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.admin-tag{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:8px;padding:8px 10px 8px 14px;font-size:14px;display:inline-flex}.admin-tag-remove{color:#ffffff73;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:18px;line-height:1}.admin-tag-remove:hover{color:#ff6b6b}.admin-table-wrap{border:1px solid #ffffff14;border-radius:14px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:14px}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid #ffffff0f;padding:12px 14px}.admin-table th{text-transform:uppercase;letter-spacing:.08em;opacity:.7;background:#00000059;font-size:11px}.admin-table tr:last-child td{border-bottom:none}.admin-game-name{font-weight:600}.admin-game-meta{opacity:.5;margin-top:4px;font-size:12px}.admin-table select{color:#fff;background:#0c1018;border:1px solid #ffffff1f;border-radius:10px;min-width:200px;padding:10px 12px}.admin-program-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.admin-program-item{background:#ffffff08;border:1px solid #ffffff1a;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.admin-program-item input{width:16px;height:16px}.admin-bulk-box{background:#ffffff05;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:14px;padding:12px}.admin-bulk-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.admin-bulk-head strong{font-size:13px}.admin-bulk-actions{gap:8px;display:flex}.admin-user-pills{flex-wrap:wrap;gap:8px;display:flex}.admin-user-pill{background:#ffffff08;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;display:inline-flex}.admin-user-pill input{width:14px;height:14px}.admin-footer-actions{flex-direction:column;align-items:flex-start;gap:12px;margin-top:8px;display:flex}.admin-save-ok{color:#4ade80;margin:0;font-size:14px}
