/* Orbit: one shared skin for every inner page. */
@font-face { font-family:"Barlow Condensed"; src:url("/static/fonts/BarlowCondensed-Regular.ttf") format("truetype"); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:"Barlow Condensed"; src:url("/static/fonts/BarlowCondensed-SemiBold.ttf") format("truetype"); font-weight:600; font-style:normal; font-display:swap; }
@font-face { font-family:"Barlow Condensed"; src:url("/static/fonts/BarlowCondensed-Bold.ttf") format("truetype"); font-weight:700; font-style:normal; font-display:swap; }
@font-face { font-family:"Source Sans 3"; src:url("/static/fonts/SourceSans3-wght.ttf") format("truetype"); font-weight:200 900; font-style:normal; font-display:swap; }

html[data-theme="space"] {
  --bg:#071220; --s1:#0e1c2b; --s2:#13263a; --s3:#1a3147; --s4:#234059;
  --border:#354b60; --border-soft:#263341;
  --text:#f2f1e9; --muted:#9caebf; --dim:#9caebf;
  --accent:#ffbb76; --accent-hover:#ffca94; --accent-ink:#132333; --accent-soft:#382d29;
  --good:#a0d4ae; --good-soft:#1c342e;
  --warn:#ffaaa1; --warn-soft:#392a32;
  --review:#f3cc8e; --review-soft:#363126;
  --blue:#92dce2; --blue-soft:#183642;
  --aqua:#89d7ce; --shadow:0 20px 70px rgba(0,0,0,.25),0 3px 12px rgba(0,0,0,.12);
  --r:10px; --r-lg:16px; --font:"Source Sans 3",Arial,sans-serif; --display:"Source Sans 3",Arial,sans-serif;
  --mono:ui-monospace,"Cascadia Code",Consolas,monospace; --focus:#ffbb76; --glow:none; --ease:cubic-bezier(.2,.7,.2,1); --panel-w:400px; --dur:.15s;
  color-scheme:dark;
}

html[data-theme="space"][data-color-mode="light"] {
  --bg:#f2f1e9; --s1:#faf9f3; --s2:#e8eceb; --s3:#dce3e4; --s4:#cbd6dc;
  --border:#9eafb8; --border-soft:#c4ced2;
  --text:#132333; --muted:#435664; --dim:#435664;
  --accent:#885022; --accent-hover:#703e18; --accent-ink:#ffffff; --accent-soft:#f3e4d5;
  --good:#306447; --good-soft:#dfebe2;
  --warn:#9c403c; --warn-soft:#f3e0dc;
  --review:#765518; --review-soft:#f1e8d4;
  --blue:#235d72; --blue-soft:#dcebf0;
  --aqua:#236960; --shadow:0 20px 70px rgba(19,35,51,.12),0 3px 12px rgba(19,35,51,.06);
  --focus:#885022; color-scheme:light;
}

/* Fixed, quiet stars and a restrained dawn glow; no moving or downloaded artwork. */
html[data-theme="space"] body {
  font-family:var(--font); letter-spacing:0;
  background-color:var(--bg);
  background-image:radial-gradient(ellipse at 0 0,rgba(255,187,118,.045),transparent 48%),
    radial-gradient(circle at 23px 41px,rgba(156,174,191,.12) .7px,transparent 1px),
    radial-gradient(circle at 117px 83px,rgba(156,174,191,.09) .6px,transparent 1px);
  background-size:100% 100%,211px 197px,317px 293px;
  background-attachment:fixed;
}
html[data-theme="space"] :is(h1,h2,h3,.hero) { font-family:var(--display); font-weight:450; letter-spacing:-.025em; text-transform:none; }
html[data-theme="space"] h1 { font-size:30px; line-height:1.15; }
html[data-theme="space"] h2 { font-size:22px; line-height:1.2; }
html[data-theme="space"] :is(.caps,label.f) { letter-spacing:0; text-transform:none; }
html[data-theme="space"] :is(.mono,.num) { font-variant-numeric:tabular-nums; }
html[data-theme="space"] :focus-visible { outline:2px solid var(--focus); outline-offset:3px; border-radius:10px; box-shadow:none; }
html[data-theme="space"] :is(input,select,textarea):focus { box-shadow:none; outline:2px solid var(--focus); outline-offset:1px; }
html[data-theme="space"] .topbar { height:64px; flex-wrap:nowrap; gap:14px; background:transparent; border:0; box-shadow:none; position:relative; }
html[data-theme="space"] .brand { flex-shrink:0; font-family:var(--display); font-size:24px; font-weight:400; letter-spacing:-.04em; color:var(--text); gap:10px; }
html[data-theme="space"] .brand-mark { position:relative; width:22px; height:22px; border:1px solid #ffca8a; border-radius:50%; flex-shrink:0; }
html[data-theme="space"] .brand-mark::after { content:""; position:absolute; width:5px; height:5px; top:5px; left:8px; border-radius:50%; background:#ffca8a; }
html[data-theme="space"][data-color-mode="light"] .brand-mark { border-color:var(--accent); }
html[data-theme="space"][data-color-mode="light"] .brand-mark::after { background:var(--accent); }
html[data-theme="space"] .nav { flex:1 1 auto; min-width:0; width:auto; flex-wrap:nowrap; overflow-x:auto; white-space:nowrap; gap:14px; }
html[data-theme="space"] .nav a { flex-shrink:0; padding:10px 0; border-radius:0; font-size:14px; color:var(--muted); background:transparent; }
html[data-theme="space"] .nav a:hover { color:var(--text); background:transparent; }
html[data-theme="space"] .nav a.on { color:var(--text); background:transparent; box-shadow:inset 0 -2px 0 var(--accent); }
html[data-theme="space"] .topbar > :not(.nav):not(.spacer) { flex-shrink:0; }
html[data-theme="space"] .topbar > .spacer { display:none; }
/* Opaque fallback tokens; glass composites towards the navy page, preserving contrast. */
html[data-theme="space"] :is(.card,.block,dialog,.dialog,.modal,.toast) {
  background:var(--s1);
  background:linear-gradient(145deg,color-mix(in srgb,var(--s1) 85%,transparent),color-mix(in srgb,var(--bg) 90%,transparent));
  border:1px solid var(--border-soft); border-radius:var(--r-lg); box-shadow:var(--shadow); backdrop-filter:blur(18px);
}
html[data-theme="space"] .chip { border-radius:var(--r); }
html[data-theme="space"] :is(button,.btn) { border-radius:999px; }
html[data-theme="space"] :is(button,.btn).primary { background:var(--accent); color:var(--accent-ink); border-color:var(--accent); }
html[data-theme="space"] :is(button,.btn).primary:hover { background:var(--accent-hover); color:var(--accent-ink); border-color:var(--accent-hover); }
html[data-theme="space"] :is(button,.btn).ghost { background:transparent; color:var(--text); border:1px solid var(--border); }
html[data-theme="space"] :is(input,select,textarea) { background:var(--s2); border:1px solid var(--border); border-radius:10px; color:var(--text); }
html[data-theme="space"] .space-mode-toggle { margin-left:2px; min-width:76px; }
html[data-theme="space"] :is(.pill,.tag,.role) { border-radius:999px; }
html[data-theme="space"] .chip.accent { box-shadow:inset 0 0 0 1px var(--accent); }
html[data-theme="space"] :is(th,td) { border-bottom:1px solid var(--border-soft); font-variant-numeric:tabular-nums; }
html[data-theme="space"] th { background:var(--s1); color:var(--muted); font-size:12px; font-weight:500; text-transform:none; letter-spacing:0; }
html[data-theme="space"] tbody tr:nth-child(n) { background:transparent; }
html[data-theme="space"] div.woods { display:none; }
html[data-theme="space"] main.home .clearing { min-height:0; padding:28px 0 16px; }
html[data-theme="space"] main.home .attention { margin-top:0; }
html[data-theme="space"] main.home h1, html[data-theme="space"] main.home .lede { text-shadow:none; }
@media (max-width:700px) {
  html[data-theme="space"] .topbar { height:auto; min-height:64px; flex-wrap:wrap; padding-top:12px; padding-bottom:8px; gap:10px; }
  html[data-theme="space"] .topbar .nav { order:2; flex-basis:100%; }
}
@media (prefers-reduced-motion:reduce) { html[data-theme="space"] { --dur:0s; } }
