.admin-login-page { min-height:100vh; background:#0b0c0f; color:#f7f7f4; overflow-x:hidden; }
.login-stage { min-height:100vh; display:grid; grid-template-columns:minmax(360px,.86fr) minmax(440px,1.14fr); }
.login-brand-panel { position:relative; display:flex; flex-direction:column; justify-content:space-between; min-height:100vh; padding:clamp(32px,6vw,84px); color:#111214; background:#f2f1ed; overflow:hidden; }
.login-brand-panel::after { content:""; position:absolute; right:-18%; bottom:-12%; width:70%; height:58%; background:#f21f38; clip-path:polygon(32% 0,100% 0,100% 100%,0 100%); opacity:.98; }
.login-brand { position:relative; z-index:1; display:block; width:clamp(150px,15vw,220px); max-width:100%; }
.login-brand img { display:block; width:100%; max-width:100%; height:auto!important; aspect-ratio:3 / 1; object-fit:contain; object-position:left center; }
.login-brand-copy { position:relative; z-index:1; max-width:440px; margin-top:auto; margin-bottom:auto; }
.login-kicker { margin:0 0 18px; color:#f21f38; font-size:11px; font-weight:800; letter-spacing:.16em; }
.login-brand-copy h2 { margin:0; color:#111214; font-size:clamp(42px,5.6vw,84px); line-height:.94; letter-spacing:-.065em; }
.login-brand-copy h2 strong { color:#f21f38; font-weight:800; }
.login-brand-copy p:last-child { max-width:340px; margin:28px 0 0; color:#5d6062; font-size:16px; line-height:1.55; }
.login-brand-code { position:relative; z-index:1; font-size:11px; font-weight:800; letter-spacing:.16em; color:#686a6d; }
.admin-login-page .login { align-self:center; width:min(430px,calc(100% - 48px)); margin:auto; padding:0; background:transparent; border:0; box-shadow:none; }
.admin-login-page .login h1 { margin:0; color:#fff; font-size:clamp(44px,5vw,72px); line-height:.94; letter-spacing:-.06em; }
.admin-login-page .login .muted { margin:14px 0 34px; color:#9ca0a6; font-size:16px; }
.admin-login-page .login label { color:#dfe1e5; font-size:13px; font-weight:700; }
.admin-login-page .login input { min-height:54px; padding:14px 16px; color:#fff; background:#15171b; border:1px solid #3a3e46; border-radius:0; }
.admin-login-page .login input:focus { border-color:#f21f38; outline:3px solid rgba(242,31,56,.2); }
.admin-login-page .login .password-field .password-toggle { top:33px; right:6px; min-width:40px; min-height:38px; padding:0; color:#9ca0a6; background:transparent; border:0; }
.admin-login-page .login .password-field .password-toggle:hover,.admin-login-page .login .password-field .password-toggle:focus-visible { color:#f21f38; outline:0; }
.admin-login-page .login-submit { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:56px; margin-top:10px; padding:0 18px; color:#fff; background:#f21f38; border:1px solid #f21f38; border-radius:0; font-size:14px; font-weight:800; }
.admin-login-page .login-submit span { font-size:22px; line-height:1; transition:transform .2s ease; }
.admin-login-page .login-submit:hover,.admin-login-page .login-submit:focus-visible { background:#ff3b51; box-shadow:0 14px 34px rgba(242,31,56,.22); outline:0; }
.admin-login-page .login-submit:hover span,.admin-login-page .login-submit:focus-visible span { transform:translateX(4px); }
.admin-login-page .auth-links { margin-top:24px; padding-top:20px; border-top:1px solid #292c32; }
.admin-login-page .auth-links a { color:#c6c8cd; }
.admin-login-page .auth-links a:hover,.admin-login-page .auth-links a:focus-visible { color:#f21f38; }
.admin-login-page .auth-error { margin:0 0 22px; padding:13px 15px; color:#fff!important; background:#3a151b!important; border:1px solid #f21f38; border-radius:0; }
@media(max-width:760px){.login-stage{display:block;min-height:100vh}.login-brand-panel{min-height:290px;padding:28px 24px 34px}.login-brand{width:145px}.login-brand-copy{margin-top:54px}.login-brand-copy h2{font-size:48px}.login-brand-copy p:last-child,.login-brand-code{display:none}.login-brand-panel::after{right:-25%;bottom:-35%;width:74%;height:74%}.admin-login-page .login{width:min(430px,calc(100% - 48px));padding:62px 0 48px}.admin-login-page .login h1{font-size:52px}}
@media(max-width:420px){.admin-login-page .login{width:calc(100% - 32px)}.login-brand-panel{min-height:250px}.login-brand-copy{margin-top:42px}.login-brand-copy h2{font-size:42px}.admin-login-page .login{padding-top:48px}.admin-login-page .auth-links{display:grid;gap:14px}.admin-login-page .auth-links a{text-align:left}}
