:root{--navy-950:#061224;--navy-900:#08172f;--blue-700:#075fca;--blue-600:#0874eb;--blue-500:#178bff;--cyan-400:#2ad4ff;--ink-950:#10213d;--ink-700:#3f506c;--ink-500:#6b7a91;--surface:#fff;--surface-soft:#f6f9fd;--line:#dbe4ef;--line-strong:#bdcadb;--danger:#bd2537;--danger-bg:#fff1f3;--radius-xl:28px;--radius-md:13px;--shadow-card:0 28px 70px rgba(4,24,58,.16),0 6px 18px rgba(4,24,58,.07)}
*,*::before,*::after{box-sizing:border-box}html{min-width:280px;background:var(--navy-950);-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-width:280px;min-height:100vh;min-height:100dvh;color:var(--ink-950);background:var(--surface-soft);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input{font:inherit}.page-shell{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:1fr;background:radial-gradient(circle at 5% 0%,rgba(23,139,255,.10),transparent 38%),var(--surface-soft)}.brand-panel{display:none}.login-area{min-width:0;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:max(22px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}.login-card{width:min(100%,500px);padding:clamp(24px,7vw,42px);background:rgba(255,255,255,.98);border:1px solid rgba(194,207,224,.82);border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.login-card__header{margin-bottom:30px}.login-card__logo{display:block;width:min(210px,58vw);height:auto;max-height:70px;object-fit:contain;object-position:left center;margin-bottom:30px}.login-card__kicker{margin:0 0 9px;color:var(--blue-700);font-size:12px;line-height:1.4;font-weight:800;letter-spacing:.13em}.login-card h2{margin:0;color:var(--ink-950);font-size:clamp(30px,7vw,42px);line-height:1.06;letter-spacing:-.035em}.login-card__subtitle{margin:13px 0 0;color:var(--ink-500);font-size:15px;line-height:1.55}.login-form{display:grid;gap:21px}.field{min-width:0}.field label{display:inline-block;margin:0 0 9px;color:var(--ink-700);font-size:14px;line-height:1.3;font-weight:680}.field__control{min-height:58px;display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;background:#fff;border:1px solid var(--line-strong);border-radius:var(--radius-md);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.field__control--password{grid-template-columns:48px minmax(0,1fr) 50px}.field__control:focus-within{border-color:var(--blue-500);box-shadow:0 0 0 4px rgba(23,139,255,.13)}.field__icon{width:48px;height:100%;display:grid;place-items:center;color:#7890ae}.field__icon svg{width:21px;height:21px;fill:currentColor}.field input{width:100%;min-width:0;height:56px;border:0;outline:0;background:transparent;color:var(--ink-950);caret-color:var(--blue-600);font-size:16px;line-height:1.4;padding:0 16px 0 0}.field input::placeholder{color:#94a2b5;opacity:1}.password-toggle{width:50px;height:56px;display:grid;place-items:center;border:0;border-radius:0 var(--radius-md) var(--radius-md) 0;background:transparent;color:#70829c;cursor:pointer;-webkit-tap-highlight-color:transparent}.password-toggle:hover{color:var(--blue-600)}.password-toggle:focus-visible{outline:3px solid rgba(23,139,255,.28);outline-offset:-4px}.password-toggle svg{width:22px;height:22px;fill:currentColor}.field__error{min-height:18px;margin:6px 2px 0;color:var(--danger);font-size:12px;line-height:1.35}.field.is-invalid .field__control{border-color:var(--danger);box-shadow:0 0 0 4px rgba(189,37,55,.08)}.login-button{width:100%;min-height:58px;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:1px;padding:14px 22px;border:0;border-radius:14px;background:linear-gradient(115deg,var(--blue-700),var(--blue-500));color:#fff;font-size:16px;line-height:1;font-weight:780;letter-spacing:.01em;box-shadow:0 12px 28px rgba(7,95,202,.23),inset 0 1px rgba(255,255,255,.20);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;-webkit-tap-highlight-color:transparent}.login-button:hover{filter:brightness(1.04);box-shadow:0 15px 34px rgba(7,95,202,.29),inset 0 1px rgba(255,255,255,.20)}.login-button:active{transform:translateY(1px)}.login-button:focus-visible{outline:4px solid rgba(23,139,255,.25);outline-offset:3px}.login-button svg{width:21px;height:21px;fill:currentColor}.alert{width:100%;display:flex;align-items:flex-start;gap:11px;margin:-5px 0 22px;padding:12px 14px;border-radius:12px;font-size:13px;line-height:1.45}.alert--error{color:#8e1d2c;background:var(--danger-bg);border:1px solid #ffd0d7}.alert__icon{flex:0 0 21px;width:21px;height:21px;display:grid;place-items:center;border-radius:50%;background:var(--danger);color:#fff;font-size:12px;font-weight:900}.login-card__footer{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;margin-top:30px;padding-top:21px;border-top:1px solid var(--line);color:#8a98ab;font-size:12px}.footer-dot{width:4px;height:4px;border-radius:50%;background:#9eabbc}
@media(min-width:900px){.page-shell{grid-template-columns:minmax(360px,.92fr) minmax(520px,1.08fr)}.brand-panel{min-height:100vh;min-height:100dvh;display:flex;align-items:center;position:relative;overflow:hidden;padding:max(48px,env(safe-area-inset-top)) clamp(42px,6vw,92px) max(48px,env(safe-area-inset-bottom)) max(42px,env(safe-area-inset-left));color:#fff;background:radial-gradient(circle at 18% 18%,rgba(42,212,255,.24),transparent 30%),radial-gradient(circle at 88% 80%,rgba(23,139,255,.23),transparent 34%),linear-gradient(145deg,var(--navy-950) 0%,var(--navy-900) 46%,#0b2c59 100%)}.brand-panel::before,.brand-panel::after{content:"";position:absolute;border-radius:999px;border:1px solid rgba(255,255,255,.08);pointer-events:none}.brand-panel::before{width:min(48vw,720px);aspect-ratio:1;right:-44%;top:-8%}.brand-panel::after{width:min(38vw,560px);aspect-ratio:1;left:-28%;bottom:-20%}.brand-panel__content{position:relative;z-index:1;width:min(100%,660px)}.brand-panel__logo{display:block;width:clamp(200px,18vw,300px);height:auto;max-height:86px;margin-bottom:clamp(58px,8vh,100px);object-fit:contain;object-position:left center}.brand-panel__eyebrow{margin:0 0 13px;color:#78dbff;font-size:12px;font-weight:800;letter-spacing:.17em}.brand-panel__title{max-width:660px;margin:0;font-size:clamp(38px,4.15vw,66px);line-height:1.01;letter-spacing:-.05em;font-weight:760}.brand-panel__description{max-width:590px;margin:25px 0 0;color:rgba(232,242,255,.76);font-size:clamp(15px,1.2vw,18px);line-height:1.65}.brand-panel__chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.brand-panel__chips span{padding:9px 13px;border:1px solid rgba(255,255,255,.12);border-radius:999px;color:rgba(255,255,255,.78);background:rgba(255,255,255,.055);font-size:12px;backdrop-filter:blur(6px)}.login-area{min-height:100vh;min-height:100dvh;padding:54px clamp(36px,6vw,100px)}.login-card{width:min(100%,520px)}.login-card__logo{display:none}}
@media(min-width:700px) and (max-height:720px){.login-area{align-items:flex-start;overflow-y:auto}.login-card{margin-block:12px}.brand-panel{align-items:flex-start;overflow-y:auto}.brand-panel__logo{margin-bottom:34px}}
@media(min-width:700px) and (max-width:899px){.login-card{width:min(100%,560px);padding:42px 48px}.login-card__logo{width:230px}}
@media(max-width:420px){.login-area{align-items:stretch;padding:max(14px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.login-card{width:100%;min-height:calc(100dvh - 28px);display:flex;flex-direction:column;justify-content:center;padding:24px 20px;border-radius:22px;box-shadow:0 16px 44px rgba(4,24,58,.12)}.login-card__header{margin-bottom:25px}.login-card__logo{width:min(190px,62vw);margin-bottom:25px}.login-card h2{font-size:clamp(29px,9vw,36px)}.field__control{min-height:56px}.login-form{gap:17px}.login-card__footer{margin-top:24px}}
@media(max-width:330px){.login-card{padding-inline:16px}.field__icon{width:43px}.field__control{grid-template-columns:43px minmax(0,1fr)}.field__control--password{grid-template-columns:43px minmax(0,1fr) 46px}.password-toggle{width:46px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
