/* Shared Panteny account and landing-page theme, matching the public toolbox. */
:root{color-scheme:dark;--bg:#0b0e15;--bg-2:#10151f;--panel:#141a25;--panel-strong:#1a2230;--text:#edf1f8;--muted:#929bae;--accent:#b6a1ff;--accent-2:#82dce7;--accent-3:#8de6c2;--border:#283040;--danger:#ffa3ad;--success:#8de6c2;--shadow:0 15px 50px #0002;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 82% 0%,#211a353d,transparent 45%),var(--bg);color:var(--text);font-size:16px}a{color:inherit}button,input,textarea{font:inherit}button,a,input{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:4px}h1,h2,h3,p{margin:0}.noise{display:none}
.site-header{width:min(1560px,calc(100% - 80px));margin:0 auto;min-height:96px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:12px;font-size:13px;letter-spacing:2px;font-weight:750;text-transform:uppercase;text-decoration:none}.mark{display:inline-block;flex-shrink:0;width:27px;height:27px;border-radius:8px;background:linear-gradient(135deg,#a389ff,#68dcda)}.brand-divider{color:#485265;margin:0 4px;font-weight:400}.brand-section{color:var(--muted);font-size:11px;letter-spacing:1.4px}.site-nav{display:flex;gap:24px;align-items:center;font-size:13px;color:var(--muted)}.site-nav a{text-decoration:none;white-space:nowrap}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--text)}
.shell{width:min(1560px,calc(100% - 80px));margin:0 auto;padding:40px 0 56px}.panel{background:linear-gradient(130deg,#151a26,#10151f);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow)}.hero-panel{padding:36px}.split-layout{min-height:calc(100vh - 97px);display:grid;place-items:center;padding:48px 40px 64px}.auth-card{width:min(100%,1160px);display:grid;grid-template-columns:1.08fr 1fr;overflow:hidden}.auth-copy,.auth-form{padding:48px}.auth-copy{background:#141a26;border-right:1px solid var(--border)}.auth-form{display:flex;flex-direction:column;justify-content:center}.auth-copy>.brand{color:var(--muted)}.auth-copy>.brand .mark{width:23px;height:23px}.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent);font-weight:650}.pulse{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:var(--accent-3)}
.auth-title,.dashboard-title{font-size:clamp(34px,3.7vw,54px);line-height:1.14;letter-spacing:-1.7px;font-weight:550;color:var(--text);margin-top:24px}.dashboard-title{font-size:clamp(30px,3vw,44px);margin-top:18px}.auth-text,.subtle{margin-top:18px;color:var(--muted);line-height:1.75;font-size:16px;max-width:680px}.form-heading{font-size:25px;font-weight:550;letter-spacing:-.6px;margin-bottom:10px}.form-copy{color:var(--muted);line-height:1.7;font-size:15px;margin-bottom:28px}.stack{display:grid;gap:20px}.field{display:grid;gap:9px}.field label{display:grid;gap:9px;color:#bdc8d9;font-size:13px;font-weight:550}.field input{display:block;width:100%;padding:14px 16px;border:1px solid #303849;border-radius:8px;background:#0c111a;color:var(--text);font-size:16px;min-height:50px;transition:border-color .15s}.field input:focus{border-color:var(--accent);outline:2px solid #b6a1ff33;outline-offset:1px}
.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:11px 18px;border:1px solid var(--accent);border-radius:8px;cursor:pointer;color:#171020;font-size:14px;font-weight:650;text-decoration:none;background:#c5b4ff;transition:background .15s,border-color .15s}.btn:hover{background:#d4c7ff}.btn-secondary{color:#d5ddec;background:#1a202d;border-color:#303849;font-weight:500}.btn-secondary:hover{background:#232b3a;border-color:#766a98}.notice{padding:14px 16px;border-radius:8px;border:1px solid #6a3445;background:#321c28;color:#ffd1db;line-height:1.65;font-size:14px}.notice-detail{font-size:12px;overflow-wrap:anywhere;margin-top:8px}
.dashboard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;flex-wrap:wrap}.dashboard-header>div:first-child{flex:1 1 420px;min-width:0}.header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;flex:0 1 auto}.header-actions .btn{min-height:42px;padding:9px 13px;font-size:13px}.header-actions form{margin:0}.user-chip{padding:10px 13px;border:1px solid var(--border);border-radius:7px;background:#111722;color:#aebbcf;font-size:12px;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.widget-grid{margin-top:32px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.widget{padding:28px;min-width:0;background:#111722;border-radius:12px;box-shadow:none}.widget-label{color:#95a2b8;font-size:11px;letter-spacing:1.4px;text-transform:uppercase}.widget-value{margin-top:18px;font-size:clamp(30px,3vw,44px);letter-spacing:-1.3px;overflow-wrap:anywhere}.widget-trend{margin-top:14px;display:inline-flex;padding:6px 9px;border-radius:5px;background:#1b2930;color:var(--success);font-size:12px}.widget-description{margin-top:16px;color:var(--muted);font-size:14px;line-height:1.75;overflow-wrap:anywhere}.accent-purple{border-top:2px solid #8b73bd}.accent-cyan{border-top:2px solid #589daa}.accent-green{border-top:2px solid #5a9c81}.footer-note{margin-top:28px;padding-top:22px;border-top:1px solid var(--border);color:#7f8da5;font-size:13px;line-height:1.7}.footer-note a{color:var(--accent);text-underline-offset:3px}
.mfa-qrcode{width:198px;height:198px;max-width:100%;margin-top:18px;padding:8px;display:grid;place-items:center;border:1px solid var(--border);border-radius:10px;background:#10141d}.mfa-qrcode img,.mfa-qrcode canvas{display:block;max-width:100%;width:180px;height:180px}.feature-list{margin-top:28px;display:grid;gap:14px}.feature{padding:18px;border-radius:8px;border:1px solid var(--border);background:#111722}.feature strong{display:block;margin-bottom:7px}.feature span{color:var(--muted);font-size:14px;line-height:1.7}
.game-panel{overflow:hidden}.game-stage-wrap{margin-top:28px}.game-stage{width:100%;aspect-ratio:16/9;min-height:280px;max-height:720px;overflow:hidden;border-radius:10px;border:1px solid var(--border);background:#0c111a}.game-stage canvas{display:block}.game-hud{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.game-hud span{padding:8px 11px;border:1px solid var(--border);border-radius:6px;background:#141b27}
.home-main{width:min(1560px,calc(100% - 80px));margin:auto;padding:90px 0 70px}.home-heading{max-width:780px}.home-heading h1{font-size:clamp(46px,6vw,78px);font-weight:550;line-height:1.08;letter-spacing:-3px;margin-top:24px}.home-heading h1 span{color:#9ca5b8}.home-heading>p{font-size:18px;color:var(--muted);line-height:1.8;margin-top:24px;max-width:620px}.home-tools{margin-top:46px;padding:32px;display:flex;justify-content:space-between;align-items:center;gap:28px}.home-tools h2{font-size:27px;letter-spacing:-.7px;font-weight:550}.home-tools p{color:var(--muted);font-size:15px;line-height:1.7;max-width:750px;margin-top:12px}.home-tools .btn{white-space:nowrap}.site-footer{width:min(1560px,calc(100% - 80px));margin:0 auto;padding:24px 0 32px;border-top:1px solid var(--border);color:#6c7990;font-size:12px;display:flex;justify-content:space-between;gap:24px}.site-footer a{color:#a2adc0;text-decoration:none}
@media(max-width:1000px){.auth-copy,.auth-form{padding:34px}.dashboard-header>div:first-child{flex-basis:100%}.header-actions{justify-content:flex-start}.widget-grid{gap:14px}.widget{padding:22px}.home-main{padding-top:64px}.home-tools{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.auth-card{grid-template-columns:1fr}.auth-copy{border-right:0;border-bottom:1px solid var(--border)}.auth-title{font-size:34px}.widget-grid{grid-template-columns:1fr}.site-header,.shell,.home-main,.site-footer{width:calc(100% - 40px)}.site-header{gap:16px;min-height:82px}.site-nav{font-size:12px;gap:15px}.brand-section,.brand-divider{display:none}.split-layout{padding:28px 20px 44px;min-height:calc(100vh - 83px)}.hero-panel{padding:26px}.shell{padding-top:28px}.home-heading h1{letter-spacing:-1.8px}.home-heading>p{font-size:16px}.home-tools{padding:26px}.user-chip{max-width:100%}}
@media(max-width:430px){.brand{font-size:11px;gap:8px}.mark{width:23px;height:23px}.site-nav{gap:12px;font-size:11px}.auth-copy,.auth-form{padding:28px 22px}.hero-panel{padding:22px}.auth-title{font-size:31px}.site-footer{font-size:11px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* Homepage-only ambient layers: transform-only motion, with an explicit pause. */
.home-page{isolation:isolate}.home-page::before,.home-page::after{content:"";position:fixed;inset:-18%;pointer-events:none;z-index:0;background-repeat:no-repeat;will-change:transform;animation:none}.home-page::before{background:radial-gradient(ellipse at 18% 28%,#7050b866,transparent 48%),radial-gradient(ellipse at 75% 65%,#287c9e4a,transparent 50%)}.home-page::after{background:radial-gradient(ellipse at 74% 20%,#9b608855,transparent 40%),radial-gradient(ellipse at 25% 80%,#348f7740,transparent 46%)}.home-page>.site-header,.home-page>.home-main,.home-page>.site-footer{position:relative;z-index:1}.home-page.motion-paused::before,.home-page.motion-paused::after{animation-play-state:paused}.home-sandbox{margin-top:22px}.motion-toggle{font:inherit;font-size:11px;padding:0;border:0;background:none;color:#a3afc2;cursor:pointer}.motion-toggle:disabled{opacity:.6;cursor:default}.home-page .site-footer{flex-wrap:wrap}.site-header .site-nav{flex-wrap:wrap}
@keyframes home-drift{0%{transform:translate3d(-7%,-4%,0) scale(1)}100%{transform:translate3d(9%,6%,0) scale(1.13)}}@keyframes home-drift-secondary{0%{transform:translate3d(7%,-5%,0) scale(1.04)}100%{transform:translate3d(-8%,6%,0) scale(1.15)}}
@media(max-width:430px){.site-header{flex-wrap:wrap;gap:12px;padding:18px 0}.site-header .site-nav{gap:16px;flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.home-page::before,.home-page::after{animation:none!important;will-change:auto}}

.home-page.motion-ready::before{animation:home-drift 24s ease-in-out infinite alternate}.home-page.motion-ready::after{animation:home-drift-secondary 31s ease-in-out infinite alternate}.home-page.motion-ready.motion-paused::before,.home-page.motion-ready.motion-paused::after{animation-play-state:paused}
