/* The help centre (/help). Hand-written; the pages beside it are generated by
   scripts/build-help.mjs from help/*.md. AXIO tokens, copied from site/auth.css (Sentinel, dark,
   by default; Signal, light, under data-theme="light"), which copies them from site/index.html and
   site/landing.css: if a token changes there, change it here too. The theme is the landing page's
   own choice, read from the same storage key before first paint, as the sign-in pages do. */
:root{
  color-scheme:dark;
  --axio-blue:#4285F4; --axio-red:#EA4335; --axio-yellow:#FBBC04; --axio-green:#34A853;
  --beam:linear-gradient(90deg,var(--axio-blue),var(--axio-red),var(--axio-yellow),var(--axio-green));
  --bg-base:#070B14;
  --card:#0D1320;
  --bg-surface-2:rgba(255,255,255,.08);
  --accent:#4285F4;
  --wordmark-ink:#EEF1F7;
  --text-primary:#EEF1F7;
  --text-muted:#9AA3B5;
  --line:rgba(255,255,255,.10);
  --line-strong:rgba(255,255,255,.18);
  --nav-ground:rgba(7,11,20,.85);
  --card-radius:16px;
  --weight-display:700;
  --mono:"IBM Plex Mono",ui-monospace,monospace;
  --display:"Plus Jakarta Sans",-apple-system,sans-serif;
  --body:"Plus Jakarta Sans",-apple-system,sans-serif;
  --wordmark:"Montserrat",-apple-system,sans-serif;
}
:root[data-theme="light"]{
  color-scheme:light;
  --bg-base:#F7F8FA;
  --card:#FFFFFF;
  --bg-surface-2:#F1F3F6;
  --accent:#1A56C4;
  --wordmark-ink:#34363B;
  --text-primary:#121418;
  --text-muted:#4A5060;
  --line:#E1E4EA;
  --line-strong:#D8DCE3;
  --nav-ground:rgba(247,248,250,.86);
  --card-radius:20px;
  --weight-display:800;
  --mono:"IBM Plex Mono",ui-monospace,monospace;
  --display:"Plus Jakarta Sans",-apple-system,sans-serif;
  --body:"Plus Jakarta Sans",-apple-system,sans-serif;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bg-base);color:var(--text-primary);font-family:var(--body);
  font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;
  min-height:100vh;display:flex;flex-direction:column;overflow-wrap:break-word;
}
a{color:var(--accent);text-underline-offset:2px}
a:focus-visible,.table-wrap:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}

/* The one decorative colour on the page: the four-colour beam on its top edge. */
.beam{height:3px;background:var(--beam)}

.nav-lite{border-bottom:1px solid var(--line);background:var(--nav-ground)}
.nav-lite-in{max-width:1040px;margin:0 auto;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:16px}
/* The primary wordmark, at the 22px step of the logo pack: a 1.5px blue offset. */
.brand{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:var(--text-primary);line-height:1}
.brand-mark{font-family:var(--wordmark);font-weight:900;font-style:italic;font-size:22px;line-height:1;letter-spacing:-.05em;color:var(--wordmark-ink);text-shadow:1.5px 1.5px 0 var(--axio-blue)}
.brand-sub{font-family:var(--wordmark);font-weight:800;font-size:17px;line-height:1;letter-spacing:.02em;color:var(--axio-blue);padding-top:1px}
.nav-lite a.back{color:var(--text-muted);text-decoration:none;font-size:14px;white-space:nowrap}
.nav-lite a.back:hover{color:var(--text-primary)}

.help-main{flex:1;width:100%;max-width:760px;margin:0 auto;padding:48px 16px 72px}
.kicker{margin:0 0 10px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.kicker a{text-decoration:none}
h1{font-family:var(--display);font-weight:var(--weight-display);font-size:clamp(28px,5vw,36px);line-height:1.15;letter-spacing:-.03em;margin:0 0 12px}
h2{font-family:var(--display);font-weight:700;font-size:20px;line-height:1.3;letter-spacing:-.01em;margin:40px 0 10px}
h3{font-family:var(--display);font-weight:700;font-size:17px;margin:28px 0 8px}
.lede{font-size:18px;color:var(--text-muted);margin:0 0 28px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.help-article p,.help-article li{color:var(--text-muted)}
.help-article strong{color:var(--text-primary);font-weight:600}
.help-article ul,.help-article ol{padding-left:22px}
.help-article li{margin:6px 0}
code{font-family:var(--mono);font-size:.9em;background:var(--bg-surface-2);border-radius:6px;padding:1px 6px}
s{color:var(--text-muted)}

/* Tables scroll sideways inside their own box at phone width, never the page. */
.table-wrap{margin:18px 0 8px;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:12px;background:var(--card)}
table{border-collapse:collapse;width:100%;font-size:14.5px;line-height:1.5}
.table-wrap.wide table{min-width:720px}
th,td{padding:10px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
tbody tr:last-child th,tbody tr:last-child td{border-bottom:0}
thead th{font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-primary);background:var(--bg-surface-2);white-space:nowrap}
thead td{background:var(--bg-surface-2)}
tbody th{font-weight:600;color:var(--text-primary);min-width:160px}
tbody td{color:var(--text-muted)}
.table-wrap.wide tbody th{position:sticky;left:0;background:var(--card);box-shadow:1px 0 0 var(--line)}

/* The index: one card per article. */
.help-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.help-list a{display:block;padding:18px 20px;background:var(--card);border:1px solid var(--line);border-radius:var(--card-radius);text-decoration:none;color:var(--text-primary);transition:border-color .15s ease}
.help-list a:hover{border-color:var(--line-strong)}
.help-list strong{display:block;font-family:var(--display);font-weight:700;font-size:17px;margin-bottom:4px}
.help-list span{display:block;color:var(--text-muted);font-size:14.5px}

/* After an article: previous and next, then where to ask. */
.help-steps{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:48px 0 0;padding-top:28px;border-top:1px solid var(--line)}
.help-steps .step{display:block;padding:14px 16px;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--text-primary);font-weight:600;font-size:15px;background:var(--card)}
.help-steps .step:last-child{text-align:right}
.help-steps .step span{display:block;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}
.help-ask{margin-top:24px;padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:var(--bg-surface-2)}
.help-ask p{margin:0;color:var(--text-muted);font-size:15px}
.help-ask strong{color:var(--text-primary)}

.help-foot{border-top:1px solid var(--line)}
.help-foot-in{max-width:1040px;margin:0 auto;padding:24px 16px;font-size:13px;color:var(--text-muted)}
.help-foot nav{display:flex;flex-wrap:wrap;gap:6px 18px;margin-bottom:10px}
.help-foot nav a{color:var(--text-muted);text-decoration:none}
.help-foot nav a:hover{color:var(--text-primary)}
.help-foot p{margin:4px 0}

@media (max-width:560px){
  .help-main{padding-top:32px}
  .lede{font-size:16.5px}
  .help-steps{grid-template-columns:1fr}
  .help-steps .step:last-child{text-align:left}
}
@media (prefers-reduced-motion:reduce){.help-list a{transition:none}}
