/* V22 — responsive entry composition, scoped away from the workspace. */
html:has(body.entry-v22){background:#080f20}
html body.entry-v22{
 --entry-surface:#111c30;--entry-panel:#15233b;--entry-input:#0c1729;--entry-stroke:#30415c;--entry-text:#f0f5ff;--entry-muted:#b0bed4;
 display:flex!important;flex-direction:column;align-items:center;justify-content:flex-start;
 min-height:100svh!important;height:auto!important;margin:0!important;padding:32px 20px!important;
 background:radial-gradient(ellipse at 5% 4%,color-mix(in srgb,var(--blue,#718bff) 40%,transparent),transparent 52%),radial-gradient(ellipse at 100% 85%,#0b716b66,transparent 55%),linear-gradient(145deg,#101c36,#090f20 56%,#11213a)!important;
 background-attachment:fixed!important;color:var(--entry-text);isolation:isolate;
}
html body.entry-v22:before{content:"";display:block!important;position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(#adcbff06 1px,transparent 1px),linear-gradient(90deg,#adcbff06 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(155deg,#000,transparent 80%)}
body.entry-v22>main{flex:0 0 auto;margin:auto!important;width:100%;position:relative;min-height:0!important;height:auto!important;box-shadow:0 30px 85px #0006,0 0 0 1px #a8c7ff12!important;border:1px solid #50668666!important;border-radius:26px!important;background:linear-gradient(150deg,#1a2940,#101a2d 65%)!important;overflow:hidden}
body.entry-v22 :is(.panel,.portal-panel,.register-panel){min-height:0!important;height:auto!important;background:linear-gradient(150deg,#17253c,#101a2d 75%)!important;border:0!important;align-content:center!important}
body.entry-v22 :is(.box,.login-box,.register-box){width:100%;margin:0 auto!important}
body.entry-v22 :is(.mobile-brand,.brand-lockup,.entry-register-brand){gap:12px;margin:0 0 22px!important;padding:0 0 18px!important;border-bottom:1px solid #98b7e822}
body.entry-v22 :is(.mobile-brand,.brand-lockup,.entry-register-brand) img{width:40px!important;height:40px!important;border-radius:12px!important;background:#070c16!important;padding:2px!important;box-shadow:0 5px 20px #0004}
body.entry-v22 :is(.mobile-brand,.brand-lockup,.entry-register-brand) strong{font-size:16px!important;letter-spacing:-.025em}
body.entry-v22 :is(.box h2,.login-box h2,.register-heading h2,.card h1){font-size:28px!important;letter-spacing:-.045em;line-height:1.2;margin:0 0 8px!important;color:#f0f5ff!important}
body.entry-v22 :is(.sub,.subtitle,.login-subtitle,.register-heading p){font-size:12px!important;line-height:1.65!important;color:#b0bed4!important;margin:0 0 22px!important}
body.entry-v22 :is(.primary,.login-button,.register-primary,.form>.btn,.card form>.btn){background:var(--blue,#718bff)!important;color:var(--theme-on-primary,#fff)!important;min-height:46px!important;border:1px solid #ffffff24!important;border-radius:12px!important;box-shadow:0 8px 25px var(--blue-shadow-soft)!important;font-size:13px!important}
body.entry-v22 .field:has(>.ctr-password-native-wrap){display:grid;grid-template-columns:minmax(88px,35%) minmax(0,1fr);align-items:center;gap:0;min-height:48px;padding:0;margin:0;border:1px solid var(--entry-stroke);border-radius:12px;background:var(--entry-input)}
body.entry-v22 .field:has(>.ctr-password-native-wrap)>label{display:flex;align-items:center;padding:8px 12px;min-height:46px;margin:0;border-right:1px solid var(--entry-stroke);color:var(--entry-muted);font-size:11px;letter-spacing:0;text-transform:none;line-height:1.3}
body.entry-v22 .field>.ctr-password-native-wrap{min-width:0;width:100%}
body.entry-v22 .field>.ctr-password-native-wrap>input{height:46px!important;min-height:46px!important;padding-left:12px!important;background:transparent!important;border:0!important;box-shadow:none!important;color:var(--entry-text)!important;border-radius:0 12px 12px 0!important}
body.entry-v22 .ctr-password-native-toggle{color:#c3d0e6!important}
body.entry-v22 .field:focus-within{outline:1px solid var(--blue);outline-offset:1px}
body.entry-v22.ctr-owner-login .foot-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
body.entry-v22.ctr-owner-login .foot-link{min-width:0!important;padding:10px!important;gap:8px!important;background:#ffffff04!important;border:1px solid #405271!important;border-radius:12px!important}
body.entry-v22.ctr-owner-login .foot-link i{display:none!important}
body.entry-v22.ctr-owner-login .foot-link b{font-size:11px!important;color:#e8efff}
body.entry-v22.ctr-owner-login .foot-link small{font-size:9px!important;color:#9caec9!important;line-height:1.4}
body.entry-v22.ctr-owner-login .home{display:flex;justify-content:center;margin:12px 0 0!important;min-height:36px;align-items:center;font-size:11px!important}
body.entry-v22.entry-compact>main.card{max-width:460px;padding:28px!important}
body.entry-v22.entry-compact .entry-recovery-brand{display:flex;align-items:center;gap:10px;margin-bottom:24px;color:#edf3ff;font-size:15px;font-weight:700}
body.entry-v22 .entry-recovery-brand img{width:38px;height:38px;border-radius:11px}
body.entry-v22.entry-compact .foot{display:flex;justify-content:center;margin-top:16px!important}
@media(max-width:767px){
 html body.entry-v22{padding:max(20px,env(safe-area-inset-top)) 14px max(20px,env(safe-area-inset-bottom))!important}
 body.entry-v22>main{max-width:440px!important;border-radius:24px!important;min-height:0!important}
 body.entry-v22 :is(.panel,.portal-panel,.register-panel){padding:24px 20px!important;min-height:0!important;height:auto!important;border-radius:0!important;place-items:center!important}
 body.entry-v22 :is(.form,.login-form){gap:10px!important}
 body.entry-v22.ctr-register-page :is(.entry-register-brand){margin-bottom:16px!important;padding-bottom:14px!important}
 body.entry-v22.ctr-register-page .register-heading{margin:0!important;padding:0!important}
 body.entry-v22.ctr-register-page .register-heading h2{font-size:26px!important}
 body.entry-v22.ctr-register-page .register-heading p{margin-bottom:14px!important}
 body.entry-v22 .registration-progress{margin:0 0 12px!important}
 body.entry-v22 .registration-progress ol{gap:10px!important}
 body.entry-v22 .registration-progress li{padding:0 0 10px!important;font-size:11px!important;gap:8px!important}
 body.entry-v22 .registration-progress li>span{width:24px!important;height:24px!important;font-size:11px!important}
 body.entry-v22 .registration-step>h3{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%)}
 body.entry-v22 .registration-step-grid{gap:8px!important}
 body.entry-v22 .registration-step-grid .field:has(>.input,>.input-wrap,>.ctr-password-native-wrap){grid-template-columns:92px minmax(0,1fr)!important;min-height:44px!important;border-radius:11px!important}
 body.entry-v22 .registration-step-grid .field>label{min-height:42px!important;padding:7px 10px!important;font-size:10px!important;font-weight:600!important}
 body.entry-v22 .registration-step-grid .field :is(input.input,.input-wrap){height:42px!important;min-height:42px!important}
 body.entry-v22 .registration-step-grid .field input.input{font-size:13px!important;padding-left:10px!important}
 body.entry-v22 .registration-step-grid .field input::placeholder{font-size:11px!important}
 body.entry-v22 .registration-next{margin-top:14px!important;height:44px!important;min-height:44px!important}
 body.entry-v22 .register-box>.foot{margin-top:12px!important;padding-top:10px!important;flex-wrap:nowrap!important;gap:8px!important}
 body.entry-v22 .register-box>.foot>a{font-size:clamp(8.5px,2.4vw,10px)!important;min-height:32px!important;white-space:nowrap}
 body.entry-v22.entry-compact>main.card{padding:24px 20px!important}
}
@media(prefers-reduced-motion:reduce){body.entry-v22 *{animation:none!important}}
