*{box-sizing:border-box}
:root{--auth-accent:#2563eb;--auth-dark:#07111f;--auth-text:#111827;--auth-muted:#667085;--auth-border:#e4e7ec;--auth-bg:#f7f8fb;--auth-danger:#dc2626;--auth-success:#059669}
html,body{min-height:100%}
body.auth-body{margin:0;background:var(--auth-bg);color:var(--auth-text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,46%) 1fr}
.auth-showcase{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;padding:44px 52px;background:radial-gradient(circle at 15% 20%,#1b3867 0,transparent 34%),linear-gradient(145deg,#07111f 0%,#0b1f3a 56%,#102b50 100%);color:#fff}
.showcase-grid{position:absolute;z-index:-3;inset:0;opacity:.13;background-image:linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,black,transparent)}
.showcase-glow{position:absolute;z-index:-2;border-radius:999px;filter:blur(18px);opacity:.5}.showcase-glow-one{width:330px;height:330px;background:var(--auth-accent);right:-120px;top:22%}.showcase-glow-two{width:250px;height:250px;background:#16a34a;left:-130px;bottom:5%;opacity:.2}
.auth-brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none;color:#fff;width:max-content}.auth-brand-mark{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;overflow:hidden;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}.auth-brand-mark img{width:100%;height:100%;object-fit:contain;padding:6px}.auth-brand-mark i{font-size:1.25rem}.auth-brand strong{display:block;font-size:1rem;letter-spacing:.01em}.auth-brand small{display:block;margin-top:2px;color:#aebfd6;font-size:.74rem}
.showcase-copy{margin:auto 0;max-width:610px;padding:60px 0}.showcase-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.08);color:#d7e5f6;font-weight:700;font-size:.76rem;letter-spacing:.02em}.showcase-copy h1{margin:24px 0 18px;font-size:clamp(2.35rem,4.2vw,4.35rem);line-height:1.02;letter-spacing:-.055em;font-weight:800}.showcase-copy h1 span{color:#8db7ff}.showcase-copy>p{max-width:560px;color:#bac9da;font-size:1.05rem;line-height:1.72;margin:0}.showcase-features{display:grid;gap:13px;margin-top:34px}.showcase-features>div{display:flex;align-items:center;gap:12px}.showcase-features>div>i{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.11);color:#b9d4ff}.showcase-features span{display:flex;flex-direction:column}.showcase-features strong{font-size:.91rem}.showcase-features small{color:#99abc0;margin-top:2px}.showcase-footer{display:flex;align-items:center;gap:9px;color:#96a9c0;font-size:.82rem}.status-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 5px rgba(34,197,94,.12)}
.auth-main{min-width:0;display:flex;flex-direction:column;justify-content:center;padding:36px 6vw;background:linear-gradient(180deg,#fbfcfe 0,#f5f7fb 100%)}.auth-card-wrap{width:min(100%,520px);margin:auto}.auth-card{background:#fff;border:1px solid rgba(16,24,40,.08);border-radius:26px;padding:36px;box-shadow:0 24px 70px rgba(15,23,42,.09),0 4px 12px rgba(15,23,42,.03)}.auth-card-register{padding-top:32px;padding-bottom:32px}.auth-card-head{display:flex;align-items:flex-start;gap:15px;margin-bottom:28px}.auth-icon{flex:0 0 52px;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#eff6ff;background:color-mix(in srgb,var(--auth-accent) 12%,white);color:var(--auth-accent);font-size:1.25rem}.auth-kicker{display:block;margin-bottom:3px;text-transform:uppercase;letter-spacing:.09em;color:var(--auth-accent);font-size:.68rem;font-weight:800}.auth-card h2{font-size:1.64rem;letter-spacing:-.035em;margin:0;font-weight:800}.auth-card-head p{margin:6px 0 0;color:var(--auth-muted);font-size:.91rem;line-height:1.55}
.auth-form{display:grid;gap:17px}.auth-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.auth-field label{display:block;font-size:.82rem;font-weight:700;color:#344054;margin-bottom:7px}.field-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.field-label-row>a{font-size:.77rem;font-weight:700;color:var(--auth-accent);text-decoration:none;margin-bottom:7px}.field-label-row>a:hover{text-decoration:underline}.auth-input-group{min-height:50px;display:flex;align-items:center;border:1px solid #d9dee8;border-radius:13px;background:#fff;transition:border-color .18s,box-shadow .18s,background .18s}.auth-input-group:focus-within{border-color:var(--auth-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--auth-accent) 11%,transparent)}.auth-input-group>i{margin-left:15px;color:#98a2b3;font-size:.95rem}.auth-input-group input{min-width:0;flex:1;height:48px;border:0;outline:0;background:transparent;padding:0 13px;color:#101828;font-size:.91rem}.auth-input-group input::placeholder{color:#a9b1be}.password-toggle{border:0;background:transparent;width:44px;height:44px;margin-right:3px;color:#7d8795;display:grid;place-items:center;border-radius:10px}.password-toggle:hover{background:#f2f4f7;color:#344054}.field-hint{display:block;color:#98a2b3;font-size:.72rem;margin-top:6px}
.auth-check{display:inline-flex!important;align-items:center;width:max-content;cursor:pointer;margin:0!important}.auth-check input{position:absolute;opacity:0;pointer-events:none}.auth-check span{display:inline-flex;align-items:center;gap:9px;color:#475467;font-size:.8rem}.auth-check span i{width:18px;height:18px;border-radius:5px;border:1.5px solid #cdd5df;background:#fff;display:grid;place-items:center}.auth-check input:checked+span i{background:var(--auth-accent);border-color:var(--auth-accent)}.auth-check input:checked+span i:after{content:"";width:8px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translateY(-1px)}
.auth-submit{width:100%;min-height:51px;border:0;border-radius:13px;padding:0 18px;background:var(--auth-accent);color:#fff;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:800;font-size:.9rem;box-shadow:0 12px 26px color-mix(in srgb,var(--auth-accent) 24%,transparent);transition:transform .18s,box-shadow .18s,filter .18s;text-decoration:none}.auth-submit:hover{color:#fff;transform:translateY(-1px);box-shadow:0 16px 34px color-mix(in srgb,var(--auth-accent) 30%,transparent);filter:saturate(1.06)}.auth-submit:disabled{opacity:.72;cursor:wait;transform:none}.auth-submit .spinner-border{width:17px;height:17px;border-width:2px}.auth-submit-link{margin-top:18px}.auth-divider{display:flex;align-items:center;gap:12px;color:#98a2b3;font-size:.73rem;margin:22px 0 14px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#eaecf0;flex:1}.auth-secondary{min-height:48px;border:1px solid #dce1e8;border-radius:13px;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;color:#344054;font-size:.83rem;font-weight:750;background:#fff}.auth-secondary:hover{background:#f8fafc;border-color:#cfd6df;color:#101828}.auth-security-note{margin-top:20px;padding-top:17px;border-top:1px solid #eef0f3;color:#8a94a3;display:flex;align-items:flex-start;justify-content:center;gap:7px;font-size:.71rem;line-height:1.45}.auth-security-note i{color:#16a34a}
.password-strength{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:8px}.password-strength span{height:4px;border-radius:999px;background:#edf0f4;transition:background .18s}.password-strength[data-score="1"] span:nth-child(-n+1){background:#ef4444}.password-strength[data-score="2"] span:nth-child(-n+2){background:#f59e0b}.password-strength[data-score="3"] span:nth-child(-n+3){background:#3b82f6}.password-strength[data-score="4"] span:nth-child(-n+4){background:#16a34a}
.auth-alert{width:min(100%,520px);margin:0 auto 14px;border-radius:14px;padding:13px 15px;display:flex;align-items:flex-start;gap:10px;font-size:.82rem;line-height:1.5;border:1px solid}.auth-alert-success{background:#ecfdf3;border-color:#abefc6;color:#067647}.auth-alert-error{background:#fff1f1;border-color:#fecaca;color:#b42318}.auth-alert i{margin-top:1px}.auth-help-box{margin-top:22px;display:flex;gap:12px;padding:15px;border-radius:14px;background:#f8fafc;border:1px solid #e7ebf0}.auth-help-box>i{color:var(--auth-accent);font-size:1.05rem}.auth-help-box div{display:flex;flex-direction:column;gap:3px}.auth-help-box strong{font-size:.79rem}.auth-help-box span{color:#7c8797;font-size:.72rem;line-height:1.45}.auth-back-link{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:22px;text-decoration:none;color:#667085;font-weight:700;font-size:.78rem}.auth-back-link:hover{color:var(--auth-accent)}.auth-token-invalid{text-align:center;padding:10px 0}.auth-token-invalid>i{font-size:2.5rem;color:#f59e0b}.auth-token-invalid h3{font-size:1.05rem;margin:10px 0 5px}.auth-token-invalid p{color:#667085;font-size:.82rem;margin:0;line-height:1.55}
.auth-page-footer{width:min(100%,520px);margin:18px auto 0;display:flex;justify-content:space-between;gap:16px;color:#98a2b3;font-size:.7rem}.auth-page-footer a{text-decoration:none;color:#7c8796}.auth-page-footer a:hover{color:var(--auth-accent)}.auth-mobile-brand{display:none}
@media (max-width:1080px){.auth-shell{grid-template-columns:40% 60%}.auth-showcase{padding:36px}.showcase-copy h1{font-size:3rem}.showcase-features small{display:none}.auth-main{padding-left:5vw;padding-right:5vw}}
@media (max-width:820px){.auth-shell{display:block}.auth-showcase{display:none}.auth-main{min-height:100vh;padding:24px}.auth-mobile-brand{display:block;width:min(100%,520px);margin:0 auto 26px}.auth-mobile-brand a{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:#152033}.auth-mobile-brand .auth-brand-mark{width:40px;height:40px;background:#0b1f3a;color:#fff}.auth-card-wrap{margin:0 auto}.auth-page-footer{margin-top:20px}}
@media (max-width:540px){.auth-main{padding:18px 14px}.auth-mobile-brand{margin-bottom:16px}.auth-card{border-radius:20px;padding:25px 20px;box-shadow:0 15px 45px rgba(15,23,42,.07)}.auth-card-head{gap:12px;margin-bottom:24px}.auth-icon{width:46px;height:46px;flex-basis:46px;border-radius:14px}.auth-card h2{font-size:1.38rem}.auth-card-head p{font-size:.82rem}.auth-two-col{grid-template-columns:1fr;gap:17px}.auth-page-footer{padding:0 3px}.auth-page-footer span{display:none}.field-label-row>a{font-size:.73rem}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
