/* Pages de connexion et de mot de passe : mêmes tokens que le simulateur (index.html). */
:root{
  color-scheme: light;
  --bg:#f9f9f7; --surface:#fcfcfb; --surface2:#f1f0ec; --surface3:#e9e8e2;
  --ink:#0b0b0b; --ink2:#52514e; --muted:#898781;
  --grid:#e1e0d9; --axis:#c3c2b7; --border:rgba(11,11,11,.10); --border2:rgba(11,11,11,.18);
  --accent:#2a78d6; --accent-ink:#ffffff;
  --s1:#2a78d6; --s2:#eb6834; --s3:#1baf7a; --s4:#eda100; --s5:#e87ba4; --s6:#008300; --s7:#6250d6; --s8:#e34948;
  --good:#0ca30c; --warn:#fab219; --serious:#ec835a; --crit:#d03b3b; --good-text:#006300;
}
@media (prefers-color-scheme: dark){
  :root:where(:not([data-theme="light"])){
    color-scheme: dark;
    --bg:#0d0d0d; --surface:#1a1a19; --surface2:#242423; --surface3:#2e2e2c;
    --ink:#f0efec; --ink2:#c3c2b7; --muted:#898781;
    --grid:#2c2c2a; --axis:#383835; --border:rgba(255,255,255,.10); --border2:rgba(255,255,255,.2);
    --accent:#3987e5;
    --s1:#3987e5; --s2:#d95926; --s3:#199e70; --s4:#c98500; --s5:#d55181; --s7:#9085e9; --s8:#e66767; --good-text:#0ca30c;
  }
}
:root[data-theme="dark"]{
  color-scheme: dark;
  --bg:#0d0d0d; --surface:#1a1a19; --surface2:#242423; --surface3:#2e2e2c;
  --ink:#f0efec; --ink2:#c3c2b7; --muted:#898781;
  --grid:#2c2c2a; --axis:#383835; --border:rgba(255,255,255,.10); --border2:rgba(255,255,255,.2);
  --accent:#3987e5;
  --s1:#3987e5; --s2:#d95926; --s3:#199e70; --s4:#c98500; --s5:#d55181; --s7:#9085e9; --s8:#e66767; --good-text:#0ca30c;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.4;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}
button,input{font:inherit;color:inherit}
.carte{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:24px 20px}
h1{margin:0 0 4px;font-size:18px;font-weight:600}
.sous{margin:0 0 18px;color:var(--ink2);font-size:13px}
label{display:block;margin:12px 0 4px;font-size:13px;color:var(--ink2)}
input{display:block;width:100%;padding:9px 10px;font-size:16px;background:var(--surface2);border:1px solid var(--border2);border-radius:7px}
input:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.btn-primaire{display:block;width:100%;margin-top:18px;padding:10px 12px;font-size:15px;font-weight:600;background:var(--accent);color:var(--accent-ink);border:0;border-radius:7px;cursor:pointer}
.btn-primaire:disabled{opacity:.6;cursor:default}
.erreur{min-height:1.4em;margin:12px 0 0;color:var(--crit);font-size:13px}
