/* Shared base stylesheet - same design tokens, nav, footer, and theme-toggle
   rules as server/ssr/pages/shared.ts's `baseStyles` (kept byte-identical on
   purpose). SSR pages inline that string directly; these static pages link
   to this file instead so both halves of the site look and behave the same.
   If you change one, change the other. */
:root{
  --bg:#F4F6F8; --surface:#FFFFFF; --surface-2:#EAEDF1;
  --line:#DBE0E6; --line-2:#C2CAD3;
  --ink:#14181F; --ink-2:#3D4552; --ink-3:#6B7480;
  --cobalt:#2A56D6; --coral:#B32D0F;
  --gold:#A6791F;
  --success:#1F9D55; --danger:#C13B3B;
  --font-display:'Archivo',system-ui,sans-serif; --font-body:'Inter',system-ui,sans-serif; --font-mono:'IBM Plex Mono',monospace;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0B0E13; --surface:#12161E; --surface-2:#181D27;
    --line:#262D3A; --line-2:#333B4A;
    --ink:#EEF1F5; --ink-2:#C2C9D3; --ink-3:#838C99;
    --cobalt:#5C82E8; --coral:#BD2F0F; --gold:#D9AE55; --danger:#F0555A;
  }
}
:root[data-theme="dark"]{
  --bg:#0B0E13; --surface:#12161E; --surface-2:#181D27;
  --line:#262D3A; --line-2:#333B4A;
  --ink:#EEF1F5; --ink-2:#C2C9D3; --ink-3:#838C99;
  --cobalt:#5C82E8; --coral:#BD2F0F; --gold:#D9AE55; --danger:#F0555A;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);line-height:1.5;}
a{color:inherit;}
img{max-width:100%;}
.lockup{display:inline-flex;flex-direction:column;align-items:stretch;gap:4px;text-decoration:none;color:inherit;}
.lockup .word{font-family:var(--font-display);font-weight:800;letter-spacing:0.01em;font-size:16px;line-height:1;color:var(--ink);white-space:nowrap;}
.lockup .caption{font-family:var(--font-mono);font-weight:600;letter-spacing:0.24em;font-size:8.5px;color:var(--gold);line-height:1;white-space:nowrap;}
.lockup .rule{height:1.5px;width:100%;background:var(--gold);border-radius:1px;margin-top:2px;}
.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--line);max-width:1120px;margin:0 auto;position:relative;}
.nav-menu-btn{display:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:36px;height:36px;padding:8px;cursor:pointer;border-radius:6px;background:none;border:none;flex-shrink:0;}
.nav-menu-btn:hover{background:var(--surface-2);}
.nav-menu-btn span{display:block;height:2px;width:18px;background:var(--ink);border-radius:1px;}
.nav-links{display:flex;gap:22px;align-items:center;}
.nav-links a{font-size:13.5px;font-weight:500;text-decoration:none;color:var(--ink-2);}
.nav-links a.active{color:var(--ink);font-weight:700;}
.nav-links a.nav-cta{font-size:13px;font-weight:600;padding:9px 16px;border-radius:6px;background:var(--ink);color:var(--bg);text-decoration:none;}
.theme-btn{border:1px solid var(--line-2);background:transparent;color:var(--ink-2);border-radius:6px;padding:7px 9px;cursor:pointer;font-family:var(--font-mono);display:inline-flex;align-items:center;justify-content:center;}
.theme-btn svg{width:15px;height:15px;display:block;}
.theme-btn .icon-moon{display:none;}
:root[data-theme="dark"] .theme-btn .icon-sun{display:none;}
:root[data-theme="dark"] .theme-btn .icon-moon{display:block;}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .theme-btn .icon-sun{display:none;}
  :root:not([data-theme="light"]) .theme-btn .icon-moon{display:block;}
}
.muted{color:var(--ink-3);font-size:13px;}
.breadcrumb{max-width:1120px;margin:14px auto 0;padding:0 24px;font-size:12.5px;color:var(--ink-3);}
.breadcrumb a{color:var(--ink-3);text-decoration:none;}
.breadcrumb a:hover{color:var(--ink-2);text-decoration:underline;}
.breadcrumb [aria-current="page"]{color:var(--ink-2);font-weight:600;}
.breadcrumb .crumb-sep{margin:0 6px;color:var(--line-2);}
@media (max-width:760px){
  .nav-menu-btn{display:flex;}
  .nav-links{display:none;flex-direction:column;align-items:stretch;gap:4px;position:absolute;right:24px;top:100%;margin-top:6px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px;min-width:200px;box-shadow:0 12px 28px rgba(0,0,0,0.16);z-index:30;}
  .nav-links.nav-links-open{display:flex;}
  .nav-links a,.nav-links .theme-btn,.nav-links .nav-cta{width:100%;text-align:left;padding:10px;border-radius:6px;box-sizing:border-box;}
  .nav-links .nav-cta,.nav-links .theme-btn{text-align:center;}
}
footer{border-top:1px solid var(--line);margin-top:56px;padding:40px 24px;background:var(--surface-2);}
.footer-grid{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;font-size:13px;color:var(--ink-2);}
.footer-grid .footer-heading{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-3);margin:0 0 12px;}
.footer-grid a{display:block;color:var(--ink-2);text-decoration:none;margin-bottom:8px;font-size:13px;}
.footer-legal{max-width:1120px;margin:24px auto 0;padding-top:24px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-3);line-height:1.7;}
