/* Shared workspace foundation. Every nonlanding page gets this through base.html.
   Keep palette, typography and ordinary components here; report geometry belongs
   in workspace.css and each feature retains its own layout stylesheet. */
@font-face { font-family:Manrope; src:url('/static/landing-fonts/manrope.woff2') format('woff2'); font-weight:200 800; font-style:normal; font-display:swap; }
@font-face { font-family:'Instrument Serif'; src:url('/static/landing-fonts/instrument-serif-italic.woff2') format('woff2'); font-weight:400; font-style:italic; font-display:swap; }
.workspace-page {
  --workspace-forest:#142f33; --workspace-mint:#b6e8d3;
  --workspace-dark-surface:#203438; --workspace-dark-ink:#eef3ed;
  --workspace-dark-muted:#bdd0c7; --workspace-dark-line:#42605d; --workspace-dark-soft:#294440;
  --paper:#f8f9f7; --surface:#fff; --ink:#172d32; --muted:#586860;
  --line:#cbd4cf; --green:#286858; --soft:#e9eee8; --accent:var(--workspace-mint);
  --focus:var(--green);
  --workspace-font:Manrope,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --workspace-display:'Instrument Serif',Georgia,serif;
  --control-radius:3px; --panel-radius:4px; --control-height:44px; --control-font-size:14px;
  --workspace-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font:400 14px/1.65 var(--workspace-font);
  -webkit-font-smoothing:antialiased;
}
:root[data-theme="dark"] .workspace-page {
  --paper:var(--workspace-forest); --surface:var(--workspace-dark-surface);
  --ink:var(--workspace-dark-ink); --muted:var(--workspace-dark-muted);
  --line:var(--workspace-dark-line); --green:var(--workspace-mint); --soft:var(--workspace-dark-soft);
}
@media(prefers-color-scheme:dark) {
  :root:not([data-theme="light"]):not([data-theme="dark"]) .workspace-page {
    --paper:var(--workspace-forest); --surface:var(--workspace-dark-surface);
    --ink:var(--workspace-dark-ink); --muted:var(--workspace-dark-muted);
    --line:var(--workspace-dark-line); --green:var(--workspace-mint); --soft:var(--workspace-dark-soft);
  }
}
.workspace-page .site-header {
  --ink:var(--workspace-dark-ink); --surface:var(--workspace-dark-surface);
  --muted:var(--workspace-dark-muted); --green:var(--workspace-mint);
  --soft:var(--workspace-dark-soft); --line:var(--workspace-dark-line); --focus:var(--workspace-mint);
  max-width:none; min-height:84px; padding:16px max(32px,calc((100% - 1080px)/2));
  background:var(--workspace-forest); color:var(--ink); border-bottom:1px solid var(--line);
}
.workspace-page .brand { font-size:25px; letter-spacing:-.055em; font-weight:650; }
.workspace-page .skip-link:focus-visible { outline-color:var(--workspace-mint); }
.workspace-page .brand-mark { background:var(--workspace-mint); color:var(--workspace-forest); border-radius:8px; }
.workspace-page .beta-badge { border-color:var(--line); background:transparent; color:var(--muted); font-size:9px; }
.workspace-page .site-header nav { gap:28px; font-size:13px; }
.workspace-page .site-header nav>a[aria-current="page"] { color:var(--workspace-mint); text-underline-offset:9px; }
.workspace-page .shell { max-width:1160px; padding:36px 40px 64px; }
.workspace-page .page-heading { margin-bottom:26px; align-items:flex-end; }
.workspace-page .page-heading > div { min-width:0; max-width:100%; }
.workspace-page .page-title { overflow-wrap:anywhere; }
.workspace-page .page-heading .eyebrow { margin-bottom:7px; }
.workspace-page .eyebrow { font:400 10px/1.8 var(--workspace-mono); letter-spacing:.1em; }
.workspace-page .page-title { font:italic 400 clamp(40px,4vw,56px)/1.03 var(--workspace-display); letter-spacing:-.025em; margin-bottom:12px; }
.workspace-page h2 { font-size:20px; line-height:1.4; font-weight:600; letter-spacing:-.035em; }
.workspace-page h3 { font-size:17px; line-height:1.45; letter-spacing:-.02em; }
.workspace-page .muted { font-size:14px; }
.workspace-page .button { border-radius:var(--control-radius); min-height:var(--control-height); background:var(--green); border-color:var(--green); color:var(--paper); font-size:var(--control-font-size); padding:10px 18px; }
.workspace-page .button:hover { filter:brightness(1.1); }
.workspace-page .quiet-link,.workspace-page .back-link { font-size:13px; }
.workspace-page .back-link { margin-bottom:22px; min-height:32px; }
.workspace-page .panel { border-radius:var(--panel-radius); padding:26px 28px; }
.workspace-page .badge { border-radius:var(--control-radius); font-size:12px; }
.workspace-page .hint { font-size:12px; line-height:1.7; max-width:85ch; }
.workspace-page .site-footer { max-width:1160px; padding:24px 40px; font-size:12px; }

@media(max-width:800px) {
  .workspace-page .site-header { padding:16px 24px; }
  .workspace-page .shell { padding:30px 24px 48px; }
  .workspace-page .site-footer { padding:24px; }
}
@media(max-width:580px) {
  .workspace-page .site-header { padding:14px 20px; gap:12px; }
  .workspace-page .site-header nav { gap:16px; }
  .workspace-page .shell { padding:26px 20px 40px; }
  .workspace-page .page-title { font-size:44px; }
  .workspace-page .page-heading { margin-bottom:22px; }
  .workspace-page .page-heading>.quiet-link { display:inline-flex; min-height:40px; align-items:center; }
  .workspace-page .panel { padding:22px 20px; }
}
