:root{--body:Arial,sans-serif;--display:Arial,sans-serif;--ease:cubic-bezier(.2,.8,.2,1)}
.lstage{position:relative;height:min(78vh,760px);min-height:560px;border-radius:22px;overflow:hidden;background:radial-gradient(120% 90% at 50% 40%,#0F2E4F 0%,#081A2E 45%,#040B14 100%);box-shadow:0 30px 80px rgba(4,11,20,.45);isolation:isolate;cursor:default}
.lstage canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.lstage .grain{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(60% 50% at 50% 55%,transparent 0%,rgba(4,11,20,.55) 100%)}
.lui{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;color:#EAF2FA;text-align:left;padding:24px 24px 24px 7%;pointer-events:none;transition:opacity .6s,filter .6s}
.lstage.entering .lui{opacity:0;filter:blur(8px)}
.lsub{max-width:460px!important}
.lui > *{pointer-events:auto}
.ltop{position:absolute;top:22px;left:26px;right:26px;text-align:left;display:flex;justify-content:space-between;align-items:center;font:700 11px var(--body);letter-spacing:.28em;text-transform:uppercase;color:rgba(234,242,250,.7)}
.ltop i{font-style:normal;color:#7FB2DC;letter-spacing:-2px;margin-right:10px}
.lpill{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(127,178,220,.35);background:rgba(8,26,46,.55);backdrop-filter:blur(8px);border-radius:999px;padding:6px 12px;letter-spacing:.12em}
.lpill b{width:7px;height:7px;border-radius:50%;background:#28B571;box-shadow:0 0 10px #28B571;animation:pulse 2s infinite}
@keyframes pulse{50%{opacity:.35}}
.lkick{font:700 12px var(--body);letter-spacing:.42em;text-transform:uppercase;color:#7FB2DC;opacity:0;animation:lin 1s .2s var(--ease) forwards}
.ltitle{font:800 clamp(52px,7vw,108px)/.9 var(--display);letter-spacing:-.03em;margin:14px 0 6px;background:linear-gradient(180deg,#FFFFFF 0%,#CFE3F5 55%,#7FB2DC 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 60px rgba(127,178,220,.25);opacity:0;animation:lin 1.1s .35s var(--ease) forwards}
.ltitle span{display:inline-block;background:linear-gradient(90deg,#F2B544,#FFE2A3,#F2B544);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 4s linear infinite}
@keyframes shine{to{background-position:-200% 0}}
.lsub{font:500 16px var(--body);color:rgba(234,242,250,.78);max-width:560px;opacity:0;animation:lin 1s .55s var(--ease) forwards}
.lcapw{margin:18px 0 26px;height:26px;opacity:0;animation:lin 1s .7s var(--ease) forwards}
.lcap{display:inline-block;font:700 11px var(--body);letter-spacing:.3em;text-transform:uppercase;color:#F2B544;border-bottom:1px solid rgba(242,181,68,.5);padding-bottom:4px;min-width:110px}
.lbtn{position:relative;display:inline-flex;align-items:center;gap:12px;border:0;border-radius:16px;padding:16px 26px;font:700 16px var(--body);color:#0B1F33;cursor:pointer;background:linear-gradient(135deg,#FFFFFF,#DCEBF8);box-shadow:0 0 0 1px rgba(255,255,255,.3),0 16px 40px rgba(127,178,220,.35);transition:transform .25s var(--ease),box-shadow .25s;opacity:0;animation:lin 1s .85s var(--ease) forwards;overflow:hidden}
.lbtn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 0 0 1px rgba(255,255,255,.5),0 22px 50px rgba(127,178,220,.5)}
.lbtn::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.75) 50%,transparent 70%);transform:translateX(-120%);animation:sweep 3.2s 2s infinite}
@keyframes sweep{40%,100%{transform:translateX(120%)}}
.lbtn svg{width:20px;height:20px}
.lnote{margin-top:16px;font:500 12.5px var(--body);color:rgba(234,242,250,.62);display:flex;gap:8px;align-items:center;opacity:0;animation:lin 1s 1s var(--ease) forwards}
.lnote svg{width:14px;height:14px;stroke:#F2B544;fill:none;stroke-width:2}
.lfoot{position:absolute;left:26px;right:26px;bottom:20px;display:flex;justify-content:space-between;font:700 10px var(--body);letter-spacing:.26em;text-transform:uppercase;color:rgba(234,242,250,.42)}
.lfoot b{color:#F2B544;font-weight:700}
@keyframes lin{from{opacity:0;transform:translateY(14px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
.lwelcome{position:absolute;inset:0;z-index:3;display:grid;place-items:center;pointer-events:none;opacity:0;transition:opacity .6s .3s}
.lwelcome.on{opacity:1}
.lwelcome div{font:800 clamp(30px,4vw,52px) var(--display);color:#fff;text-shadow:0 0 40px rgba(127,178,220,.6)}
.lwelcome small{display:block;font:600 14px var(--body);color:#F2B544;letter-spacing:.2em;text-transform:uppercase;margin-top:8px;text-align:center}
.denied{position:relative;height:420px;border-radius:22px;overflow:hidden;background:radial-gradient(120% 90% at 50% 40%,#2A1620 0%,#120A10 60%,#07050A 100%);display:grid;place-items:center;color:#F6EAEA;box-shadow:0 30px 80px rgba(7,5,10,.4)}
.denied .card3{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);border-radius:20px;padding:28px 32px;max-width:520px;text-align:center}
.denied h4{margin:12px 0 6px;font:800 24px var(--display)}
.denied p{margin:6px 0;color:rgba(246,234,234,.75)}
.denied .lock{width:56px;height:56px;border-radius:18px;margin:0 auto;display:grid;place-items:center;background:rgba(176,40,58,.2);border:1px solid rgba(176,40,58,.5)}
.denied .lock svg{width:26px;height:26px;stroke:#FF8A9A;fill:none;stroke-width:2}
.denied .who{display:inline-block;margin-top:10px;border-radius:999px;background:rgba(255,255,255,.08);padding:6px 12px;font:600 12.5px var(--body)}
/* Home v2 boxes */
body.auth-screen .top,body.auth-screen .sb,body.auth-screen .backdrop{display:none}
body.auth-screen{overflow:hidden}
body.auth-screen .main,body.auth-screen.sb-collapsed .main{margin:0;padding:0;max-width:none;width:100vw;height:100dvh;min-height:100dvh;overflow:hidden}
body.auth-screen .lstage{width:100%;max-width:none;height:100dvh;min-height:100dvh;margin:0;border-radius:0;box-shadow:none}
body.auth-screen .denied{max-width:800px;margin:10vh auto}
@media(max-width:600px){body.auth-screen .lstage{min-height:100dvh;height:100dvh}.ltitle{font-size:clamp(48px,13vw,78px)}.lfoot{font-size:8px;letter-spacing:.12em}}
@media(prefers-reduced-motion:reduce){.lkick,.ltitle,.lsub,.lcapw,.lbtn,.lnote{animation:none;opacity:1}.lpill b,.lbtn::after,.ltitle span{animation:none}}
