/* AutoScale's shared visual tokens. Loaded after page and core styles. */
:root:root:root:root {
  color-scheme:light;
  --brand-navy:#1a1f2e; --brand-charcoal:#2a2e33;
  --bg:#f4f5f7; --bg2:#eceef1; --surface:#fff; --surface2:#f4f5f7; --surface3:#e5e8ed;
  --card:var(--surface); --ink:#1a1f2e; --dim:#596270; --mut:var(--dim); --faint:#677181;
  --hair:#dce0e6; --hair2:#e7eaf0; --line:var(--hair);
  --glass:rgba(26,31,46,.055); --glass2:rgba(26,31,46,.03);
  --accent:#405a73; --accent-rgb:64 90 115; --acc:var(--accent);
  --accent2:#53667b; --accent2-rgb:83 102 123; --accent-fill:#1a1f2e; --on-accent:#fff;
  --material:rgba(244,245,247,.96); --material-thick:rgba(255,255,255,.97);
  --font:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif; --font-display:var(--font);
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:24px; --space-6:32px;
  --r:12px; --rs:8px; --shadow:0 2px 10px #1a1f2e08; --shadow-sheet:0 16px 48px #1a1f2e20;
}
@media(prefers-color-scheme:dark) {
  :root:root:root:root:not([data-theme="light"]) {
    color-scheme:dark;
    --bg:#1a1f2e; --bg2:#202633; --surface:#2a2e33; --surface2:#303640; --surface3:#3b424d;
    --ink:#eef0f4; --dim:#b4bdc9; --faint:#a0adbd; --hair:#464d59; --hair2:#383f4a;
    --glass:rgba(238,240,244,.065); --glass2:rgba(238,240,244,.035);
    --accent:#b1c5d8; --accent-rgb:177 197 216; --accent2:#b1c5d8; --accent2-rgb:177 197 216;
    --accent-fill:#405a73; --material:rgba(26,31,46,.96); --material-thick:rgba(42,46,51,.97);
  }
}
:root:root:root:root[data-theme="dark"] {
  color-scheme:dark;
  --bg:#1a1f2e; --bg2:#202633; --surface:#2a2e33; --surface2:#303640; --surface3:#3b424d;
  --ink:#eef0f4; --dim:#b4bdc9; --faint:#a0adbd; --hair:#464d59; --hair2:#383f4a;
  --glass:rgba(238,240,244,.065); --glass2:rgba(238,240,244,.035);
  --accent:#b1c5d8; --accent-rgb:177 197 216; --accent2:#b1c5d8; --accent2-rgb:177 197 216;
  --accent-fill:#405a73; --material:rgba(26,31,46,.96); --material-thick:rgba(42,46,51,.97);
}
html body {font-family:var(--font);line-height:1.5;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}
html body::before {display:none}
h1,h2,h3,h4 {font-family:var(--font-display);letter-spacing:-.02em}
button,input,select,textarea {font-family:var(--font);accent-color:var(--accent-fill)}
a {color:var(--accent)}
html :focus-visible {outline:3px solid var(--accent);outline-offset:3px}
html input:focus,html select:focus,html textarea:focus {border-color:var(--accent);box-shadow:0 0 0 3px rgb(var(--accent-rgb)/.18)}
html .card {background:var(--surface);border:1px solid var(--hair);border-radius:var(--r);padding:var(--space-4)}
html .top {padding-block:var(--space-3);margin-bottom:var(--space-4);border-bottom:1px solid var(--hair)}
.brand-header {display:flex;align-items:center;gap:var(--space-3);color:var(--ink);font-size:13px;font-weight:600;min-width:0}
.brand-mark {width:26px;height:22px;object-fit:contain;flex:none}
.brand-header span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brand-credit {font-size:12px;color:var(--dim);text-align:center;padding:var(--space-5) var(--space-4)}
.sh-brand img:not(.own) {object-fit:contain;border-radius:0}
.mhead .brand-dealer {display:block;font-size:11px;font-weight:500;color:var(--dim)}
body.login {min-height:100dvh;height:auto;padding:var(--space-5);display:grid;place-items:center}
.login .c {max-width:420px;padding:var(--space-6);border:1px solid var(--hair);border-radius:16px;box-shadow:var(--shadow-sheet)}
.login .wm {display:block;width:204px;max-width:100%;height:auto;margin:0 auto var(--space-5)}
.login h1 {font-size:23px;margin-bottom:var(--space-2)}
.login .tagline {text-align:center;font-size:13px;letter-spacing:.04em;margin-bottom:var(--space-6)}
.login label {display:block;font-size:13px;font-weight:600;margin-bottom:var(--space-2)}
.login button {background:var(--accent-fill);font-weight:600}
.login button:disabled {opacity:.65;cursor:wait}
.login #msg:not(:empty) {padding:var(--space-3);border:1px solid var(--hair);border-radius:var(--rs);margin-bottom:var(--space-4)}
.login #msg[data-error="true"] {color:#a32b36;background:#fff0f1;border-color:#e5a9af}
.login .legal {font-size:12px;margin:var(--space-5) 0 0;line-height:1.8;text-align:center}
@media(max-width:480px) {.login .c{padding:var(--space-5)}.brand-header{width:100%}}

.brand-document button {background:var(--accent-fill);color:var(--on-accent);border:1px solid transparent;border-radius:var(--rs);padding:var(--space-3) var(--space-4);cursor:pointer}
.brand-document input,.brand-document select {background:var(--surface);color:var(--ink);border:1px solid var(--hair);border-radius:var(--rs)}
.sh-brand img[src="/static/brand/mark.svg"] {background:transparent;border-radius:0}
