/* Login presentation only. Posting, access and authentication rules are unchanged. */
@media screen {
  #authScreen { background:#fff; align-items:stretch; justify-content:stretch; overflow:auto; }
  #authScreen .auth-shell { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); width:100%; min-height:100vh; min-height:100dvh; align-self:flex-start; flex-shrink:0; }
  #authScreen .auth-credentials { display:flex; align-items:center; justify-content:center; padding:64px clamp(28px,5vw,90px); background:#fff; min-width:0; }
  #authScreen .auth-card { width:100%; max-width:430px; padding:0; border:0; border-radius:0; box-shadow:none; background:transparent; }
  #authScreen .auth-product-name { color:#1765c1; font-size:12px; font-weight:700; letter-spacing:1.5px; margin-bottom:24px; }
  #authScreen .auth-title { color:#14243b; font-size:34px; line-height:1.18; letter-spacing:-1px; font-weight:700; margin-bottom:10px; }
  #authScreen .auth-sub { font-size:15px; line-height:1.6; color:#617084; margin-bottom:28px; }
  #authScreen .auth-field-label { display:block; margin:0 0 8px; font-size:13px; font-weight:600; color:#273c56; }
  #authScreen .auth-input { min-height:50px; border:1px solid #cdd8e5; border-radius:8px; padding:13px 15px; background:#fff; color:#182a43; margin-bottom:18px; font-size:15px; }
  #authScreen .auth-input:focus { border-color:#1d6fd8; box-shadow:0 0 0 3px #1d6fd81c; }
  #authScreen .auth-password { position:relative; }
  #authScreen .auth-password .auth-input { padding-right:78px; }
  #authScreen .auth-password-toggle { position:absolute; top:3px; right:4px; min-width:62px; min-height:44px; background:transparent; border:0; border-radius:6px; color:#1765c1; font:600 13px var(--font); cursor:pointer; }
  #authScreen .auth-password-toggle:hover { background:#edf4fc; }
  #authScreen :is(button,a,input):focus-visible { outline:3px solid #70b3ff; outline-offset:3px; }
  #authScreen .auth-btn { min-height:50px; border-radius:8px; background:#1d6fd8; font-weight:650; font-size:15px; box-shadow:0 4px 12px #1d6fd81a; }
  #authScreen .auth-btn:hover { background:#1558b0; }
  #authScreen .auth-sso-btn { min-height:50px; border:1px solid #c6d9ee; border-radius:8px; color:#185b9f; font-weight:600; font-size:14px; margin-bottom:10px; }
  #authScreen .auth-sso-note { font-size:12px; line-height:1.6; color:#66758a; }
  #authScreen .auth-divider { margin:24px 0; font-size:12px; color:#738197; }
  #authScreen .auth-toggle { font-size:13px; line-height:1.7; color:#64748b; }
  #authScreen .auth-toggle a { color:#1765c1; font-weight:600; }
  #authScreen .auth-brand { display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden; padding:64px clamp(32px,5vw,88px); min-width:0; background:linear-gradient(145deg,#102746 0%,#173b64 65%,#10566b 100%); color:#fff; }
  #authScreen .auth-brand::before { content:''; position:absolute; width:520px; height:520px; border:1px solid #ffffff10; border-radius:50%; right:-290px; top:-200px; box-shadow:0 0 0 65px #ffffff04,0 0 0 130px #ffffff03; pointer-events:none; }
  #authScreen .auth-brand-inner { position:relative; width:100%; max-width:470px; }
  #authScreen .auth-brand .auth-logo { display:inline-flex; background:#fff; border-radius:12px; padding:4px 18px; margin:0 0 44px; box-shadow:0 8px 30px #05172d24; }
  #authScreen .auth-brand .auth-logo img { display:block; width:235px!important; max-width:100%; height:auto; }
  #authScreen .auth-brand-kicker { font-size:11px; letter-spacing:2px; font-weight:650; color:#6ee0d3; margin-bottom:17px; }
  #authScreen .auth-brand h1 { font-size:clamp(32px,3.1vw,48px); line-height:1.13; letter-spacing:-1.4px; font-weight:700; color:#fff; margin:0 0 22px; }
  #authScreen .auth-brand-intro { font-size:16px; line-height:1.8; color:#c9d9eb; margin:0 0 36px; }
  #authScreen .auth-features { display:grid; gap:24px; }
  #authScreen .auth-feature { display:flex; gap:16px; align-items:flex-start; }
  #authScreen .auth-feature-icon { display:grid; place-items:center; width:42px; height:42px; flex:0 0 42px; border-radius:10px; color:#73e3d7; background:#ffffff09; border:1px solid #ffffff1c; }
  #authScreen .auth-feature-icon svg { width:23px; height:23px; }
  #authScreen .auth-feature h2 { font-size:16px; line-height:1.3; font-weight:650; margin:0 0 5px; color:#fff; }
  #authScreen .auth-feature p { font-size:13px; line-height:1.6; color:#b9ccdf; margin:0; }
  @media(max-width:800px) {
    #authScreen .auth-shell { grid-template-columns:minmax(0,1fr); }
    #authScreen .auth-credentials { padding:46px 26px 42px; }
    #authScreen .auth-title { font-size:30px; }
    #authScreen .auth-brand { padding:44px 30px; min-height:650px; }
    #authScreen .auth-brand-inner { max-width:430px; }
    #authScreen .auth-brand .auth-logo { margin-bottom:30px; }
    #authScreen .auth-brand h1 { font-size:34px; }
    #authScreen .auth-brand-intro { font-size:15px; }
  }
  @media(prefers-reduced-motion:reduce) { #authScreen * { transition:none!important; } }
}
