/* Maverrik AI v1.4.5.6 — refined, accessible login. Strictly scoped to the login view. */
#login-view.mav-login-screen {
  --login-page: #030a1d;
  --login-card: rgba(12, 25, 51, .90);
  --login-card-outline: rgba(109, 159, 232, .24);
  --login-text: #f7faff;
  --login-muted: #9db1d0;
  --login-field: rgba(3, 12, 31, .79);
  --login-field-border: rgba(121, 157, 204, .25);
  --login-toggle: rgba(4, 13, 32, .67);
  --login-toggle-active: #187ef7;
  --login-panel-shadow: 0 32px 110px rgba(0, 0, 0, .34), 0 0 70px rgba(14, 92, 211, .08);
  position: relative;
  display: flex;
  min-height: 100vh;
  min-height: 100dvh;
  align-items: center;
  justify-content: center;
  isolation: isolate;
  overflow: hidden;
  padding: max(36px, env(safe-area-inset-top, 0px)) 20px max(36px, env(safe-area-inset-bottom, 0px));
  color: var(--login-text);
  background: radial-gradient(ellipse 62% 55% at 9% 8%, rgba(16, 98, 221, .24), transparent 80%), radial-gradient(ellipse 50% 62% at 103% 91%, rgba(0, 111, 240, .31), transparent 79%), linear-gradient(132deg, #040b1d 4%, #081a39 56%, var(--login-page));
  transition: background .25s ease, color .25s ease;
}
#login-view.mav-login-screen.hidden { display: none !important; }
#login-view .mav-login-ambience {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: url("login-ambient.svg?v=1456") center / cover no-repeat;
  opacity: .85;
}
#login-view .mav-login-ambience::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(3, 9, 26, .07), transparent 45%, rgba(4, 11, 27, .13));
}
#login-view .mav-login-shell {
  width: min(100%, 448px);
  position: relative;
  margin: 0 auto;
}
#login-view .mav-login-overline, #login-view .mav-login-bottomline {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: center;
  font: 700 10px/1.4 'JetBrains Mono', ui-monospace, monospace;
  letter-spacing: .14em;
  text-align: center;
  color: #8eacd5;
}
#login-view .mav-login-overline { margin-bottom: 26px; }
#login-view .mav-login-overline-separator { width: 2px; height: 2px; background: currentColor; border-radius: 50%; }
#login-view .mav-login-online-dot { width: 7px; height: 7px; border-radius: 50%; background: #35cebe; box-shadow: 0 0 0 4px rgba(32, 209, 182, .10); }
#login-view .mav-login-bottomline { margin-top: 22px; font-size: 9px; letter-spacing: .19em; color: #7898c2; }
#login-view .mav-login-bottomline span { width: 26px; height: 1px; background: currentColor; opacity: .55; }
#login-view .mav-login-card {
  border: 1px solid var(--login-card-outline);
  border-radius: 26px;
  background: var(--login-card);
  box-shadow: var(--login-panel-shadow);
  padding: 24px 34px 28px;
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  position: relative;
  overflow: hidden;
}
#login-view .mav-login-card::before { content:""; position:absolute; top:0; left:14%; right:14%; height:1px; background:linear-gradient(90deg,transparent,rgba(102,181,255,.60),transparent); pointer-events:none; }
#login-view .mav-login-topbar { display:flex; align-items:center; justify-content:space-between; gap:12px; }
#login-view .mav-login-portal-label { font:700 10px/1.3 'JetBrains Mono',ui-monospace,monospace; letter-spacing:.14em; color:#64aafa; }
#login-view .mav-login-theme-switch { display:flex; align-items:center; padding:3px; gap:3px; border:1px solid var(--login-field-border); border-radius:999px; background:var(--login-toggle); }
#login-view .mav-login-theme-btn { width:34px; height:30px; display:grid; place-items:center; cursor:pointer; border:0; border-radius:999px; background:transparent; color:var(--login-muted); transition:background .16s,color .16s,transform .16s; }
#login-view .mav-login-theme-btn svg { width:16px; height:16px; }
#login-view .mav-login-theme-btn:hover { color:var(--login-text); }
#login-view .mav-login-theme-btn[aria-pressed="true"] { background:var(--login-toggle-active); box-shadow:0 2px 9px rgba(0,99,250,.24); color:white; }
#login-view .mav-login-brand-block { text-align:center; margin:22px 0 30px; }
#login-view .mav-login-wordmark { display:block; width:183px; height:auto; margin:0 auto 26px; filter:brightness(0) invert(1); }
#login-view .mav-login-brand-block h1 { font-size: 23px; line-height:1.27; letter-spacing:-.035em; font-weight:800; color:var(--login-text); }
#login-view .mav-login-brand-block p { font-size:12px; line-height:1.6; color:var(--login-muted); margin-top:9px; }
#login-view .mav-login-form { display:flex; flex-direction:column; gap:20px; }
#login-view .mav-login-field label { display:block; margin-bottom:9px; color:var(--login-text); font-size:12px; font-weight:700; }
#login-view .mav-login-input-wrap { position:relative; display:flex; align-items:center; }
#login-view .mav-login-input-icon { position:absolute; left:15px; width:18px; height:18px; color:var(--login-muted); pointer-events:none; }
#login-view .mav-login-input-wrap input {
  appearance:none; width:100%; height:50px; border-radius:12px; border:1px solid var(--login-field-border);
  background:var(--login-field); color:var(--login-text); font-size:14px; font-weight:500;
  padding:0 48px; outline:0; box-shadow:0 1px 2px rgba(0,0,0,.045) inset;
  transition:border-color .16s,box-shadow .16s; min-width:0;
}
#login-view .mav-login-input-wrap input::placeholder { color:var(--login-muted); opacity:.8; }
#login-view .mav-login-input-wrap input:focus { border-color:#1882ff; box-shadow:0 0 0 3px rgba(24,130,255,.15); }
#login-view .mav-login-password-toggle { position:absolute; right:6px; width:38px; height:38px; display:grid; place-items:center; border:0; border-radius:9px; background:transparent; color:var(--login-muted); cursor:pointer; }
#login-view .mav-login-password-toggle:hover { color:#388df7; background:rgba(72,130,200,.10); }
#login-view .mav-login-password-toggle svg { width:19px; height:19px; }
#login-view .mav-eye-closed { display:none; }
#login-view .mav-login-password-toggle[aria-pressed="true"] .mav-eye-open { display:none; }
#login-view .mav-login-password-toggle[aria-pressed="true"] .mav-eye-closed { display:block; }
#login-view .mav-login-submit { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; height:50px; margin-top:6px; border-radius:12px; background:linear-gradient(103deg,#167aff,#0068ea); color:white; border:1px solid rgba(110,193,255,.38); font-size:14px; font-weight:800; cursor:pointer; box-shadow:0 9px 22px rgba(0,105,250,.19); transition:filter .16s,transform .16s,box-shadow .16s; }
#login-view .mav-login-submit:hover { filter:brightness(1.08); box-shadow:0 12px 24px rgba(0,105,250,.29); }
#login-view .mav-login-submit:active { transform:translateY(1px); }
#login-view .mav-login-submit svg { width:17px; height:17px; }
#login-view .mav-login-footnote { display:flex; align-items:center; justify-content:center; gap:8px; border-top:1px solid var(--login-field-border); padding-top:20px; margin-top:25px; text-align:center; color:var(--login-muted); font-size:10px; line-height:1.5; }
#login-view .mav-login-footnote svg { flex:0 0 17px; width:17px; height:17px; color:#3b99ff; }
#login-view .mav-login-theme-btn:focus-visible, #login-view .mav-login-password-toggle:focus-visible, #login-view .mav-login-submit:focus-visible { outline:3px solid #54a6ff; outline-offset:3px; }
/* Use the platform's existing .dark class as the single theme source of truth. */
html:not(.dark) #login-view.mav-login-screen {
  --login-page:#edf5ff; --login-card:rgba(255,255,255,.85);
  --login-card-outline:rgba(89,143,207,.24); --login-text:#102444; --login-muted:#5f789b;
  --login-field:rgba(236,245,255,.76); --login-field-border:rgba(107,146,198,.28);
  --login-toggle:rgba(220,236,255,.76); --login-panel-shadow:0 32px 95px rgba(30,69,127,.12),0 10px 35px rgba(20,81,160,.055);
  background:radial-gradient(ellipse 65% 60% at 1% 10%,rgba(120,185,255,.33),transparent 75%),radial-gradient(ellipse 50% 65% at 100% 95%,rgba(93,170,255,.29),transparent 74%),linear-gradient(140deg,#f6fbff 9%,#e2f0ff 58%,#eff6ff);
}
html:not(.dark) #login-view .mav-login-ambience { opacity:.36; }
html:not(.dark) #login-view .mav-login-ambience::after { background:rgba(255,255,255,.10); }
html:not(.dark) #login-view .mav-login-wordmark { filter:none; }
html:not(.dark) #login-view .mav-login-overline { color:#476b97; }
html:not(.dark) #login-view .mav-login-bottomline { color:#577da9; }
html:not(.dark) #login-view .mav-login-portal-label { color:#1675e2; }
html:not(.dark) #login-view .mav-login-card::before { background:linear-gradient(90deg,transparent,rgba(24,130,255,.44),transparent); }
html:not(.dark) #login-view .mav-login-input-wrap input::placeholder { color:#6e87a7; }
@media (max-width:520px) {
  #login-view.mav-login-screen { padding:24px 15px; }
  #login-view .mav-login-shell { max-width:420px; }
  #login-view .mav-login-card { padding:21px 22px 24px; border-radius:22px; }
  #login-view .mav-login-brand-block { margin:19px 0 25px; }
  #login-view .mav-login-wordmark { width:164px; margin-bottom:21px; }
  #login-view .mav-login-overline { font-size:9px; margin-bottom:18px; }
}
@media (max-height:650px) and (min-width:600px) {
  #login-view.mav-login-screen { padding-top:18px; padding-bottom:18px; }
  #login-view .mav-login-overline { margin-bottom:12px; }
  #login-view .mav-login-brand-block { margin:12px 0 19px; }
  #login-view .mav-login-wordmark { margin-bottom:15px; }
  #login-view .mav-login-form { gap:13px; }
  #login-view .mav-login-bottomline { margin-top:12px; }
}
@media (prefers-reduced-motion:reduce) { #login-view .mav-login-theme-btn, #login-view .mav-login-submit, #login-view .mav-login-input-wrap input { transition:none; } }
