#login.access42{position:relative;min-height:100vh;height:auto;display:flex;flex-direction:column;padding:0 5vw;background:radial-gradient(ellipse at 20% 50%,#064c542d,transparent 55%),radial-gradient(ellipse at 90% 55%,#58378320,transparent 45%),#020b16;overflow:hidden;color:#d7e9fc;font-family:'DM Sans',sans-serif}
#login.access42{gap:0;align-items:stretch;justify-content:flex-start}#login.access42[hidden]{display:none}#login.access42:before,#login.access42:after,#login.access42 .login-depth-grid,#login.access42 .access-strip{display:none}
.access42 .access-top{display:flex;align-items:center;justify-content:space-between;min-height:90px;border-bottom:1px solid #20415a;gap:20px}.access42 .access-top .brand{font:600 24px 'DM Sans',sans-serif;letter-spacing:2px;gap:12px}.access42 .access-top .brand img{height:43px;width:43px;background:none;border:0;padding:0;box-shadow:none}.access42 .brand em{color:#b89aff}.access42 .brand small{font-size:8px;letter-spacing:2px;color:#87a8c5;margin-top:5px}.access-badge{font-size:10px;letter-spacing:2px;color:#69c9c0}
.access42 .access-layout{width:100%;max-width:1320px;margin:auto;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(350px,.85fr);gap:8vw;align-items:center;padding:45px 0}
#login.access42 .login-showcase{display:block;position:relative;inset:auto;width:auto;transform:none;opacity:1;padding:0;pointer-events:auto}.access42 .eyebrow{color:#55d9cc;font-size:10px;letter-spacing:2.5px}#login.access42 .login-showcase h2{font:500 clamp(34px,4vw,59px)/1.16 'DM Sans',sans-serif;letter-spacing:-2px;margin:23px 0 18px;color:#e3efff;text-transform:none}#login.access42 .login-showcase h2 em{font-style:normal;background:linear-gradient(90deg,#66f0d9,#b49df8);background-clip:text;color:transparent}#login.access42 .login-showcase>p{color:#89a6bf;font-size:14px;line-height:1.8;letter-spacing:0;margin:0;text-transform:none}
.access-visual{position:relative;margin-top:30px;padding:16px 18px 12px;border:1px solid #28536b;border-radius:9px;background:linear-gradient(120deg,#061c2a,#051021);box-shadow:0 15px 70px #0003}.visual-top,.visual-bottom{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:1.6px;color:#9bb8d2}.visual-top i{width:5px;height:5px;background:#42ebcb;border-radius:50%;box-shadow:0 0 10px #42ebcb}.access-visual svg{width:100%;height:auto;display:block;margin:20px 0 12px}.visual-bottom{color:#61c9c2;font-size:8px}.access-visual>small{display:block;color:#56728c;font-size:9px;margin-top:15px}.access-price{stroke-dasharray:1000;stroke-dashoffset:1000;animation:accessTrace 2.2s ease-out forwards}.access-node{animation:accessPulse 3s ease-in-out infinite;transform-origin:284px 136px}.access-node.second{animation-delay:1s;transform-origin:487px 89px}.access-features{display:flex;gap:22px;margin-top:25px;font-size:11px;color:#8da9c2}
#login.access42 .login-card{position:relative;inset:auto;margin:0;width:100%;max-width:none;padding:34px;border:1px solid #345e7b;border-radius:12px;background:linear-gradient(135deg,#071a2a,#071020);box-shadow:0 0 60px #6d49a60b;animation:accessReveal .7s ease-out both;transform:none;opacity:1}#login.access42 .login-card:before{position:absolute;content:'';left:25%;right:25%;top:-1px;height:1px;background:#68eee0;box-shadow:0 0 15px #3fe2da;inset-block-end:auto;transform:none;animation:none}#login.access42 .login-card:after{display:none}.access-lock{display:grid;place-items:center;width:44px;height:44px;border:1px solid #276374;border-radius:10px;background:#092d37;color:#64f0d8;font-size:28px;margin-bottom:25px}
#login.access42 h1{font:500 29px/1.3 'DM Sans',sans-serif;margin:15px 0 10px;letter-spacing:-.7px}#login.access42 h1 span{display:block;color:#b3a1fb}#login.access42 .login-card>p{color:#8da8c1;font-size:13px;line-height:1.7;margin:0 0 25px}#login.access42 label{display:block;font-size:12px;color:#c5d7e9;margin-bottom:9px}.access-input{position:relative}#login.access42 input{width:100%;margin:0;padding:15px 70px 15px 14px;font:13px 'DM Sans',sans-serif;letter-spacing:.3px;background:#020c18;border:1px solid #2b526d;border-radius:7px;color:#e1eaff;min-height:48px}#login.access42 input:focus{border-color:#4cd8cf;outline:0;box-shadow:0 0 0 3px #4cd8cf12}#login.access42 #revealKey{position:absolute;right:8px;top:8px;padding:9px 8px;border:0;background:transparent;box-shadow:none;font-size:10px;color:#9dbace}#accessHint{display:block;font-size:10px;color:#66859f;margin-top:9px}#login.access42 #loginError{min-height:22px;margin:12px 0;color:#ff839b;font-size:12px}
#login.access42 .primary{display:flex;justify-content:space-between;align-items:center;width:100%;padding:15px 17px;font:600 13px 'DM Sans',sans-serif;color:#032026;background:linear-gradient(100deg,#43e6ca,#62d8df);border:1px solid #71f3e0;border-radius:7px;box-shadow:0 0 23px #27d7bc1c;transition:box-shadow .2s,transform .2s}#login.access42 .primary:hover{box-shadow:0 0 30px #27d7bc40;transform:translateY(-1px)}#login.access42 .primary:disabled{opacity:.6;transform:none}.access-divider{border-top:1px solid #20364b;margin:32px 0 20px;text-align:center;height:0}.access-divider span{font-size:8px;letter-spacing:1.5px;position:relative;top:-10px;padding:0 12px;background:#071525;color:#6d8aa2}#login.access42 .login-support{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;margin:0;background:#091b2e;border:1px solid #203f59;border-radius:7px;color:#aec5de;font-size:12px;text-decoration:none}.login-support small{display:block;font-size:10px;color:#6d95b3;margin-top:4px}.login-support b{color:#58d5d1}#login.access42 .login-foot{display:flex;justify-content:space-between;font-size:9px;color:#5e7c96;letter-spacing:.4px;padding:0;border:0;margin-top:22px}.access-bottom{min-height:56px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #19384d;color:#56768f;font-size:9px;letter-spacing:1px}
@keyframes accessTrace{to{stroke-dashoffset:0}}@keyframes accessPulse{50%{opacity:.4;transform:scale(1.3)}}@keyframes accessReveal{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@media(max-width:1050px){#login.access42{padding:0 4vw}.access42 .access-layout{gap:5vw;grid-template-columns:minmax(0,1fr) minmax(340px,1fr)}#login.access42 .login-card{padding:26px}.access-features{gap:12px;font-size:9px}}@media(max-width:760px){.access42 .access-layout{display:block;max-width:450px;padding:30px 0}#login.access42 .login-showcase{display:none}.access-badge{display:none}.access42 .access-top{min-height:75px}.access-bottom{gap:10px;font-size:8px;letter-spacing:0}.access42 .access-top .brand{font-size:20px}}
.no-motion .access42 *{animation:none!important}.no-motion .access-price{stroke-dashoffset:0}@media(prefers-reduced-motion:reduce){.access42 *{animation:none!important;transition:none!important}.access-price{stroke-dashoffset:0}}

/* Shared graphite and mint introduction, matching the terminal sign-in. */
#accessIntro{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:32px;background:radial-gradient(ellipse at 50% 35%,#91ddc70b,transparent 60%),#10171d;color:#e5ecf2;font-family:'DM Sans',Segoe UI,sans-serif;transition:opacity .22s ease;overflow:hidden}
#accessIntro .intro-surface{width:min(500px,100%);text-align:center;animation:accessIntroReveal .5s ease-out both}
#accessIntro .intro-mark{display:grid;place-items:center;width:78px;height:78px;margin:0 auto 29px;border:1px solid #91ddc726;border-radius:23px;background:#1c2a31;box-shadow:0 16px 45px #0002}
#accessIntro .intro-mark img{width:48px;height:48px;filter:none}
#accessIntro .intro-eyebrow{display:block;font-size:10px;font-weight:500;letter-spacing:2px;color:#a2c8bb}
#accessIntro h2{margin:17px 0 11px;font-size:clamp(26px,4vw,38px);line-height:1.25;font-weight:500;letter-spacing:-1.4px}
#accessIntro p{margin:0;color:#9aaebb;font-size:14px;line-height:1.7}
#accessIntro .intro-chart{max-width:380px;margin:32px auto 23px;padding:15px 0 0;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
#accessIntro .intro-chart svg{display:block;width:100%;height:auto;overflow:visible}
#accessIntro .intro-guide{stroke:#ffffff08;stroke-width:1}
#accessIntro .intro-price{stroke:#91ddc7;stroke-width:2;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:accessIntroTrace .85s .1s ease-out both}
#accessIntro .intro-state{display:flex;justify-content:center;align-items:center;gap:10px;color:#b2c5d0;font-size:11px;letter-spacing:.2px}
#accessIntro .intro-state i{display:block;width:15px;height:15px;border:1.5px solid #91ddc727;border-right-color:#91ddc7;border-top-color:#91ddc7;border-radius:50%;animation:accessIntroSpin 1.2s linear infinite}
#accessIntro .intro-methods{display:flex;justify-content:center;gap:22px;margin-top:30px;color:#78909f;font-size:10px;letter-spacing:.5px}
#accessIntro .intro-methods span+span{position:relative}#accessIntro .intro-methods span+span::before{content:'';position:absolute;left:-12px;top:5px;width:3px;height:3px;border-radius:50%;background:#78909f75}
#accessIntro #skipBoot{position:absolute;right:max(26px,env(safe-area-inset-right));bottom:max(23px,env(safe-area-inset-bottom));display:flex;gap:20px;align-items:center;padding:11px 14px;border:1px solid #ffffff12;border-radius:9px;background:#1c2731;color:#aac0cd;font-size:11px;box-shadow:none}
#accessIntro #skipBoot:hover{border-color:#91ddc74d;color:#d5e9df;background:#23323a;transform:none}
#accessIntro.intro-finished{opacity:0;pointer-events:none}
#login.access42.access-ready .login-card{animation:accessReveal .4s ease-out both}
#login.access42 .access-layout{transition:opacity .22s ease,translate .22s ease}
#login.access42.access-opening .access-layout{opacity:0;translate:0 -7px;pointer-events:none}
@keyframes accessIntroReveal{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@keyframes accessIntroTrace{to{stroke-dashoffset:0}}
@keyframes accessIntroSpin{to{transform:rotate(360deg)}}
@media(max-width:540px){#accessIntro{padding:24px}#accessIntro .intro-mark{width:68px;height:68px;border-radius:20px;margin-bottom:25px}#accessIntro .intro-mark img{width:42px;height:42px}#accessIntro .intro-eyebrow{font-size:8px;letter-spacing:1.3px}#accessIntro .intro-chart{margin-top:24px}#accessIntro .intro-methods{gap:20px;font-size:9px}#accessIntro #skipBoot{right:20px;bottom:20px}}
@media(prefers-reduced-motion:reduce){#accessIntro,#accessIntro *{animation:none!important;transition:none!important}#accessIntro .intro-price{stroke-dashoffset:0}}
