/* =========================================================
   RealityDesynced — COMMAND GLASS
   Sci-fi command deck × near-future glass. Loaded last (after monolith.css and lattice.css).
   Star field + soft light, frosted glass panels with angled sci-fi corners, Orbitron headings,
   Space Grotesk controls, Inter body, JetBrains Mono readouts, cyan signal + the red slit.
   Light mode is a bright "observation deck" version of the same system.
   ========================================================= */

:root {
  --ink: #04060C; --ink-2: #0A0F18; --ink-3: #0E1622; --ink-4: #131D2B;
  --line: #16283A; --line-2: #24445E;
  --bone: #E6EEF6; --titanium: #A9B8C8; --steel: #8494A8; --dim: #6E7E92;
  --cy: #5EEBF4; --cy-ink: #04060C; --cy-soft: rgba(94,235,244,.10);
  --vi: #9F95FF; --amber: #FFB648; --ir: #FF2A1F; --ir-text: #FF7A70; --ok: #7EE0B5;
  --ir-bg: rgba(255,42,31,.07); --ir-line: rgba(255,42,31,.45);
  --glass: rgba(255,255,255,.045); --glass-2: rgba(255,255,255,.075); --glass-solid: rgba(10,15,24,.97);
  --edge: rgba(94,235,244,.18); --edge-2: rgba(94,235,244,.34);
  --lat: rgba(94,235,244,.22); --lat-same: rgba(94,235,244,.38);
  --glow-cy: rgba(94,235,244,.14); --glow-vi: rgba(159,149,255,.10); --glow-ir: rgba(255,42,31,.08);
  --star: rgba(230,238,246,.55);
  --bar: transparent; --grain: .02;
  --chamfer: polygon(16px 0, 100% 0, 100% calc(100% - 16px), calc(100% - 16px) 100%, 0 100%, 0 16px);
  --chamfer-sm: polygon(12px 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%, 0 12px);
  --cube-cut: var(--ink);
  color-scheme: dark;
}
:root[data-theme="light"] {
  --ink: #EEF2F7; --ink-2: #FFFFFF; --ink-3: #E5EBF2; --ink-4: #DCE4EE;
  --line: #CAD6E2; --line-2: #A7BBCE;
  --bone: #0B1220; --titanium: #33404F; --steel: #4F5D6E; --dim: #5F6D7D;
  --cy: #00727A; --cy-ink: #FFFFFF; --cy-soft: rgba(0,114,122,.08);
  --vi: #5B4FD6; --amber: #8A5A00; --ir-text: #C4170D; --ok: #1D7A4B;
  --ir-bg: rgba(255,42,31,.06); --ir-line: rgba(196,23,13,.4);
  --glass: rgba(255,255,255,.66); --glass-2: rgba(255,255,255,.9); --glass-solid: rgba(255,255,255,.97);
  --edge: rgba(0,114,122,.20); --edge-2: rgba(0,114,122,.38);
  --lat: rgba(0,114,122,.25); --lat-same: rgba(0,114,122,.45);
  --glow-cy: rgba(0,170,180,.16); --glow-vi: rgba(91,79,214,.10); --glow-ir: rgba(255,42,31,.06);
  --star: rgba(11,18,32,.18);
  color-scheme: light;
}
@media (prefers-color-scheme: light) {
  :root:not([data-theme]) {
    --ink: #EEF2F7; --ink-2: #FFFFFF; --ink-3: #E5EBF2; --ink-4: #DCE4EE; --line: #CAD6E2; --line-2: #A7BBCE;
    --bone: #0B1220; --titanium: #33404F; --steel: #4F5D6E; --dim: #5F6D7D; --cy: #00727A; --cy-ink: #FFFFFF;
    --vi: #5B4FD6; --amber: #8A5A00; --ir-text: #C4170D; --ok: #1D7A4B; --glass: rgba(255,255,255,.66); --glass-2: rgba(255,255,255,.9);
    --glass-solid: rgba(255,255,255,.97); --edge: rgba(0,114,122,.20); --edge-2: rgba(0,114,122,.38); --star: rgba(11,18,32,.18); color-scheme: light;
  }
}
:root[data-theme="light"] :is(.stage, .boot, .thumb, .mod-media) {
  --ink: #04060C; --ink-2: #0A0F18; --ink-3: #0E1622; --line: #16283A; --line-2: #24445E;
  --bone: #E6EEF6; --titanium: #A9B8C8; --steel: #8494A8; --cy: #5EEBF4; --ir-text: #FF7A70; color-scheme: dark;
}

/* ---------- space: star field + soft light ---------- */
body {
  background:
    radial-gradient(900px 900px at 100% -8%, var(--glow-cy), transparent 62%),
    radial-gradient(820px 820px at -12% 48%, var(--glow-vi), transparent 62%),
    radial-gradient(760px 760px at 108% 95%, var(--glow-ir), transparent 62%),
    var(--ink);
  font-family: 'Inter', system-ui, sans-serif;
}
body::before {
  content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1400px; z-index: 0; pointer-events: none;
  background-image:
    radial-gradient(1.2px 1.2px at 40px 120px, var(--star), transparent 70%),
    radial-gradient(1px 1px at 160px 260px, var(--star), transparent 70%),
    radial-gradient(1.4px 1.4px at 270px 70px, var(--star), transparent 70%),
    radial-gradient(1px 1px at 390px 190px, var(--star), transparent 70%),
    radial-gradient(1.2px 1.2px at 520px 90px, var(--star), transparent 70%),
    radial-gradient(1px 1px at 610px 330px, var(--star), transparent 70%),
    radial-gradient(1.5px 1.5px at 700px 150px, var(--star), transparent 70%),
    radial-gradient(1px 1px at 830px 60px, var(--star), transparent 70%),
    radial-gradient(1.2px 1.2px at 930px 290px, var(--star), transparent 70%),
    radial-gradient(1px 1px at 1050px 120px, var(--star), transparent 70%),
    radial-gradient(1.3px 1.3px at 1160px 220px, var(--star), transparent 70%),
    radial-gradient(1px 1px at 1290px 80px, var(--star), transparent 70%),
    radial-gradient(1.2px 1.2px at 1380px 270px, var(--star), transparent 70%);
  background-size: 1440px 400px;
  -webkit-mask-image: linear-gradient(#000 40%, transparent);
          mask-image: linear-gradient(#000 40%, transparent);
}
main, .site-foot, .cg-headwrap, .telemetry { position: relative; z-index: 1; }

/* ---------- type ---------- */
.wide { font-family: 'Orbitron', 'Archivo', sans-serif; font-stretch: normal; font-variation-settings: normal; text-transform: uppercase; letter-spacing: .04em; font-weight: 800; }
.cap { font-family: 'JetBrains Mono', ui-monospace, monospace; }
.h2 { font-size: clamp(22px, 2.3vw, 30px); }
.display-md { font-size: clamp(28px, 3.7vw, 54px); line-height: 1.04; overflow-wrap: anywhere; }
.display-lg { font-size: clamp(34px, 5vw, 74px); line-height: 1; }
.display-xl { font-size: clamp(40px, 6.6vw, 96px); line-height: .98; }
.lead { color: var(--titanium); }
.cg-amber { color: var(--amber); }
:focus-visible { outline: 2px solid var(--cy); outline-offset: 3px; }

/* ---------- chamfered glass panels ---------- */
.lf-stat, .lf-class, .lf-table, .lf-ledger, .lf-lattice, .m-panel, .signal, .slab, .sys, .mod-item, .check-card,
.alert-box, .rel, .receipt, .verify-banner, .m-intro, .m-versions > div, .notice, .map-side, .pin-picker {
  background: var(--glass) !important;
  border: 0 !important;
  box-shadow: inset 0 0 0 1px var(--edge);
  clip-path: var(--chamfer);
}
a.lf-class:focus-visible, a.lf-ledger:focus-visible, a.m-panel:focus-visible, a.rel:focus-visible { outline-offset: -5px; }
.lf-class:hover, .lf-ledger:hover, a.m-panel:hover, a.rel:hover { box-shadow: inset 0 0 0 1px var(--edge-2); }
.lf-class.is-mandela { background: var(--ir-bg) !important; box-shadow: inset 0 0 0 1px var(--ir-line); }
.hud-frame .hf { border-color: var(--cy); }
.hf-tl, .hf-br { display: none; }

/* ---------- buttons ---------- */
.btn {
  clip-path: var(--chamfer-sm) !important; border-radius: 0;
  font-family: 'Orbitron', sans-serif; font-weight: 700; font-size: 11.5px; letter-spacing: .16em;
  background: var(--bone); color: var(--ink);
}
.btn-cy, .cg-chamfer { background: var(--cy); color: var(--cy-ink); }
.btn-cy:hover { background: var(--bone); color: var(--ink); }
.btn-ghost, .cg-pill {
  clip-path: none !important; border-radius: 999px; border: 0; box-shadow: inset 0 0 0 1px var(--edge-2);
  background: var(--glass); color: var(--bone);
  font-family: 'Space Grotesk', sans-serif; font-size: 15px; font-weight: 600; letter-spacing: 0; text-transform: none;
}
.btn-ghost:hover, .cg-pill:hover { background: var(--glass-2); color: var(--bone); box-shadow: inset 0 0 0 1px var(--cy); }
.btn-sm { min-height: 44px; font-size: 10.5px; }
.f {
  border-radius: 999px; border: 0; box-shadow: inset 0 0 0 1px var(--edge); background: var(--glass);
  font-family: 'Space Grotesk', sans-serif; font-weight: 500; font-size: 14px; letter-spacing: 0; text-transform: none; min-height: 44px;
}
.f:hover { box-shadow: inset 0 0 0 1px var(--cy); color: var(--bone); }
.f.on, .f[aria-pressed="true"] { background: var(--cy); color: var(--cy-ink); box-shadow: none; }
.filters select.f { background: var(--glass); }
.input { border-radius: 14px; border: 0; box-shadow: inset 0 0 0 1px var(--edge); background: var(--glass); }
.input:focus { box-shadow: inset 0 0 0 1px var(--cy), 0 0 0 3px var(--cy-soft); }
.choice label { border-radius: 16px; border: 0; box-shadow: inset 0 0 0 1px var(--edge); background: var(--glass); }
.choice label:has(input:checked) { box-shadow: inset 0 0 0 1px var(--cy); background: var(--cy-soft); }
.choice b { font-family: 'Orbitron', sans-serif; font-size: 13px; letter-spacing: .04em; text-transform: uppercase; }
.drop { border-radius: 18px; border: 1px dashed var(--edge-2); background: var(--cy-soft); }
.vote-btn { border-radius: 999px !important; }

/* ---------- status strip + floating glass header ---------- */
.telemetry { border-bottom: 0; background: transparent; }
.tm-item::before { background: var(--edge-2); }
.cg-headwrap { padding-top: 6px; }
.site-head {
  padding: 8px 10px 8px 16px; margin: 0; border-radius: 999px;
  background: var(--glass); box-shadow: inset 0 0 0 1px var(--edge);
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
}
.brand-word { font-family: 'Orbitron', sans-serif; font-size: 12.5px; font-weight: 900; letter-spacing: .05em; line-height: 1.15; }
.site-nav { gap: 2px; }
.site-nav a { font-family: 'Space Grotesk', sans-serif; font-size: 14px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--titanium); padding: 12px 15px; border-radius: 999px; }
.site-nav a:hover { color: var(--bone); background: var(--glass); }
.site-nav a[aria-current="page"] { color: var(--bone); background: var(--glass-2); box-shadow: inset 0 0 0 1px var(--edge); }
.site-nav a[href*="type=mandela"] { color: var(--ir-text); }
.console-btn, .theme-btn, .menu-btn { border-radius: 999px; border: 0; box-shadow: inset 0 0 0 1px var(--edge); background: transparent; }
.console-btn .cap { font-family: 'Space Grotesk', sans-serif; letter-spacing: 0; text-transform: none; font-size: 14px; }
.head-file { clip-path: none !important; border-radius: 999px; background: var(--cy); color: var(--cy-ink); font-family: 'Space Grotesk', sans-serif; font-size: 14px; letter-spacing: 0; text-transform: none; font-weight: 600; }
.head-file:hover { background: var(--bone); color: var(--ink); }
@media (max-width: 980px) {
  .site-head { border-radius: 26px; }
  .site-nav { background: var(--glass-solid); border-radius: 22px; box-shadow: inset 0 0 0 1px var(--edge); padding: 10px; -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
}

/* ---------- console ---------- */
.console { border-radius: 22px; border: 0; box-shadow: inset 0 0 0 1px var(--edge-2), 0 30px 80px var(--shadow); background: var(--glass-solid); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); }
.console-prompt { color: var(--cy); }

/* ---------- home hero ---------- */
.cg-chip { align-self: flex-start; display: inline-flex; align-items: center; gap: 10px; padding: 8px 14px; border-radius: 999px; background: var(--glass); box-shadow: inset 0 0 0 1px var(--edge); }
.lf-title { font-family: 'Orbitron', sans-serif; font-weight: 900; font-size: clamp(40px, 5.6vw, 82px); line-height: .98; letter-spacing: .03em; text-transform: uppercase; }
.lf-title-b { color: transparent; background: linear-gradient(120deg, var(--cy), var(--vi)); -webkit-background-clip: text; background-clip: text; }
.lf-title-c { color: var(--ir); opacity: .32; }
.lf-title-slit { border-radius: 2px; box-shadow: 0 0 22px 2px rgba(255,42,31,.7); }
.lf-lead { margin-top: 46px; }
.cg-tracker { min-height: 580px; }
.cg-tracker .lf-lattice-top { z-index: 3; }
.orbit { position: absolute; inset: 0; width: 100%; height: 100%; }
.ob-glow-0 { stop-color: var(--cy); stop-opacity: .2; }
.ob-glow-1 { stop-color: var(--cy); stop-opacity: 0; }
.ob-rings ellipse { fill: none; stroke: var(--lat); }
.ob-rings .ob-dash { stroke-dasharray: 3 7; stroke: var(--edge); }
.ob-arc { fill: none; stroke: var(--cy); stroke-opacity: .75; stroke-width: 1.5; stroke-dasharray: 90 700; }
.ob-sweep { fill: var(--cy); opacity: .08; }
.ob-beam { stroke: var(--cy); stroke-opacity: .6; }
.ob-n { fill: var(--cy); }
.ob-m { fill: var(--vi); }
.ob-tgt { fill: var(--ir); }
.ob-tgt-r, .ob-tgt-r2 { fill: none; stroke: var(--ir); }
.ob-tgt-r { stroke-width: 1.5; opacity: .6; }
.ob-tgt-r2 { opacity: .3; }
.ob-brk { fill: none; stroke: var(--ir-text); stroke-width: 1.5; }
.ob-lbl, .ob-lbl-hot { font-family: 'JetBrains Mono', monospace; font-size: 11px; fill: var(--steel); }
.ob-lbl-m { fill: var(--vi); }
.ob-lbl-hot { fill: var(--ir-text); }
.ob-slit { stroke: var(--ir); stroke-width: 2; }
@media (prefers-reduced-motion: no-preference) {
  html:not(.lite-motion) .ob-arc { animation: obarc 14s linear infinite; }
  @keyframes obarc { to { stroke-dashoffset: -790; } }
  html:not(.lite-motion) .ob-tgt-r2 { animation: tgtping 2.6s ease-out infinite; transform-box: fill-box; transform-origin: center; }
}
.cg-core { position: absolute; left: 50%; top: calc(285 / 580 * 100%); transform: translate(-50%, -50%); z-index: 2; filter: drop-shadow(0 20px 40px rgba(0,0,0,.55)); pointer-events: none; }
.cg-core svg { width: clamp(96px, 11vw, 150px); height: auto; display: block; }
.lf-readout { grid-template-columns: auto minmax(0, 1fr) auto auto; }
.lf-ro { border-radius: 14px; border: 0; background: var(--glass-solid); box-shadow: inset 0 0 0 1px var(--edge); }
.lf-ro-hot { background: var(--ir-bg); box-shadow: inset 0 0 0 1px var(--ir-line); }
.lf-ro-hot b { color: var(--ir-text); }
@media (max-width: 640px) { .lf-ro-hot { grid-column: 1 / -1; } .cg-tracker { min-height: 500px; } }

/* readouts as chips with gauges */
.lf-readouts { border: 0; background: none; gap: 14px; }
.lf-stat { border: 0; }
.lf-stat b { font-family: 'Orbitron', sans-serif; font-weight: 700; }
.seg { display: flex; gap: 3px; margin-top: 6px; }
.seg i { flex: 1; height: 6px; border-radius: 3px; background: var(--line); }
.seg i.on { background: var(--cy); }
.seg i.r { background: var(--ir); }

/* sectors */
.lf-class-t { font-size: 22px; font-weight: 700; }
.lf-class-k { color: var(--cy); }
.lf-new { border-radius: 999px; background: var(--ir-text); color: #0B0B0C; }
:root[data-theme="light"] .lf-new { color: #FFFFFF; }

/* timeline divergence band */
.lf-band { background: transparent; border-color: var(--line); }
.lf-band::before { box-shadow: 0 0 26px 3px rgba(255,42,31,.5); }
.lf-band::after { display: none; }
.lf-band-title { font-family: 'Orbitron', sans-serif; font-weight: 800; font-size: clamp(20px, 2.4vw, 30px); background: var(--glass-solid); border-radius: 12px; padding: 8px 18px; line-height: 1.15; }
.lf-band-more a { background: var(--glass-solid); border-radius: 999px; padding: 10px 16px; }
.msplit-grid { gap: clamp(28px, 7vw, 96px); padding-top: 26px; }
.msplit-side { border-radius: 22px; padding: 28px !important; background: var(--ir-bg); box-shadow: inset 0 0 0 1px var(--ir-line); }
.msplit-side.side-b { background: var(--cy-soft); box-shadow: inset 0 0 0 1px var(--edge-2); margin-top: 30px; }
.msplit-ver { font-family: 'Orbitron', sans-serif; font-weight: 900; font-size: clamp(20px, 2.9vw, 44px); letter-spacing: .03em; text-transform: uppercase; }
.msplit-compact .msplit-ver { font-size: clamp(18px, 2.5vw, 36px); }
.side-b .msplit-ver { color: var(--bone); }
.msplit-pick.pick-b { background: var(--cy); color: var(--cy-ink); }
.msplit-pick.pick-a { box-shadow: 0 0 26px rgba(255,42,31,.35); }
.msplit-bar { border-radius: 8px; overflow: hidden; }
.msplit-bar i { border-radius: 8px; box-shadow: 0 0 12px var(--ir); }
.side-b .msplit-bar i { box-shadow: 0 0 12px var(--cy); }
.msplit-pct { font-family: 'Orbitron', sans-serif; font-weight: 700; }
.msplit-lock, .msplit-status { border-radius: 999px; background: var(--glass-solid); box-shadow: inset 0 0 0 1px var(--edge); border: 0; }
.msplit-clear { border-radius: 999px; }
@media (max-width: 720px) {
  .msplit-side { padding: 16px 12px !important; }
  .msplit-side.side-b { margin-top: 22px; }
  .msplit-status { border-radius: 18px; }
}

/* transmission log */
.lf-table { padding: 8px; }
.lf-th { border-bottom: 0; }
.lf-tr { border-bottom: 0; border-radius: 14px; }
.lf-tr:hover { background: var(--glass-2); box-shadow: none; }
.lf-no { color: var(--cy); }
.row-thumb { border-radius: 10px; border: 0; box-shadow: inset 0 0 0 1px var(--edge); }
.lf-meter { border-radius: 4px; overflow: hidden; }

/* ledger strip */
.lf-ledger-k .wide { font-size: 18px; }

/* ---------- entry pages ---------- */
.m-meta { border-radius: 999px; border: 0; background: var(--glass); box-shadow: inset 0 0 0 1px var(--edge); }
.m-band { background: transparent; }
.m-intro { clip-path: none; border-radius: 18px; background: var(--glass-solid) !important; }
.m-dial-n b { font-family: 'Orbitron', sans-serif; }
.m-pair-slit { box-shadow: 0 0 18px rgba(255,42,31,.45); }
.c-item.side-a, .c-item.side-b { border-radius: 14px; }
.stage { border-radius: 0; clip-path: var(--chamfer) !important; box-shadow: inset 0 0 0 1px var(--edge); }
.sig b { font-family: 'Orbitron', sans-serif; font-weight: 700; }
.entry-ghost { display: none; }

/* ---------- record list ---------- */
.tr, .row { border-radius: 14px; }
.tr:hover, .row:hover { background: var(--glass-2); box-shadow: none; }
.tr-no, .row-no { color: var(--cy); }

/* ---------- small things ---------- */
.sample-tag { border-radius: 4px; background: #F2C14E; color: #1A1100; border-color: #F2C14E; }
.flash { border-radius: 14px; border-left: 0; box-shadow: inset 0 0 0 1px var(--edge-2); background: var(--glass); }
.site-foot { border-top: 0; padding: 20px 26px; margin-top: clamp(60px, 8vw, 100px); margin-bottom: 30px; border-radius: 26px; background: var(--glass); box-shadow: inset 0 0 0 1px var(--edge); }
.foot-nav a { font-family: 'Space Grotesk', sans-serif; letter-spacing: 0; text-transform: none; font-size: 14px; }
.boot { background: #03050A; }
.boot-log div::before { color: var(--cy); }
.leaflet-container { border-radius: 18px; }
@media (max-width: 700px) { .site-foot { border-radius: 20px; } }

/* ---------- navigation: "More" panel (wide screens) / grouped list (phone menu) ---------- */
.site-nav { align-items: center; }
.nav-more { position: relative; }
.nav-more-btn {
  display: inline-flex; align-items: center; gap: 6px; cursor: pointer;
  font-family: 'Space Grotesk', sans-serif; font-size: 14px; font-weight: 500; letter-spacing: 0; text-transform: none;
  color: var(--titanium); background: transparent; border: 0; padding: 12px 15px; border-radius: 999px;
}
.nav-more-btn svg { transition: transform .2s; }
.nav-more-btn:hover, .nav-more-btn[aria-expanded="true"] { color: var(--bone); background: var(--glass); }
.nav-more-btn[aria-expanded="true"] svg { transform: rotate(180deg); }
.nav-more.is-active .nav-more-btn { color: var(--bone); background: var(--glass-2); box-shadow: inset 0 0 0 1px var(--edge); }
.nav-more-btn:focus-visible { outline: 2px solid var(--cy); outline-offset: 2px; }
.nav-group-h { margin: 0 0 6px; padding: 0 12px; font-family: 'JetBrains Mono', ui-monospace, monospace; font-size: 10.5px; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; color: var(--steel); }
.site-nav .nav-group a { display: flex; flex-direction: column; gap: 2px; padding: 10px 12px; border-radius: 14px; }
.nav-l { color: var(--bone); font-weight: 600; }
.nav-hint { font-family: 'Inter', sans-serif; font-size: 12.5px; color: var(--steel); }
.site-nav .nav-group a[aria-current="page"] .nav-l { color: var(--cy); }

@media (min-width: 981px) {
  .nav-more-panel {
    display: none; position: absolute; top: calc(100% + 18px); left: 50%; transform: translateX(-50%);
    width: 520px; grid-template-columns: 1fr 1fr; gap: 6px 10px; padding: 16px 12px 12px;
    background: var(--ink-2); border-radius: 22px; isolation: isolate;
    box-shadow: inset 0 0 0 1px var(--edge-2), 0 24px 60px rgba(0,0,0,.35);
    z-index: 40;
  }
  .nav-more-panel.open { display: grid; }
  .nav-more-panel::before { content: ''; position: absolute; left: 50%; top: -6px; width: 12px; height: 12px; margin-left: -6px; transform: rotate(45deg); background: var(--ink-2); box-shadow: inset 1px 1px 0 var(--edge-2); }
}
/* Squeeze the header between tablet and laptop widths so "More" always fits */
@media (max-width: 1240px) and (min-width: 981px) {
  .site-nav a, .nav-more-btn { padding: 12px 11px; }
  .console-btn .cap, .console-btn kbd { display: none; }
}
.nav-file { display: none; }
@media (min-width: 981px) { .head-file { display: inline-flex; } }
@media (max-width: 980px) {
  .site-nav { align-items: stretch; flex-wrap: nowrap; max-height: calc(100vh - 140px); overflow-y: auto; background: var(--ink-2); -webkit-backdrop-filter: none; backdrop-filter: none; box-shadow: inset 0 0 0 1px var(--edge-2), 0 24px 60px rgba(0,0,0,.35); }
  .site-nav a { border-top: 0; border-radius: 14px; padding: 13px 14px; }
  .site-nav a.nav-file { display: block; order: -1; margin-bottom: 8px; text-align: center; font-weight: 600; background: var(--cy); color: var(--cy-ink); }
  .site-nav a.nav-file:hover { background: var(--bone); color: var(--ink); }
  .nav-more-btn { display: none; }
  .nav-more-panel { display: grid; grid-template-columns: 1fr; gap: 14px; margin-top: 10px; padding-top: 14px; box-shadow: inset 0 1px 0 var(--edge); }
  .site-nav .nav-group a { border-top: 0; }
  .nav-hint { display: none; }
}

/* ---------- footer: brand + three columns ---------- */
.site-foot { display: block; padding: 30px clamp(20px, 3vw, 34px) 22px; width: calc(100% - 2 * var(--gutter)); max-width: calc(var(--wrap) - 2 * var(--gutter)); margin-left: auto; margin-right: auto; }
/* The header (and its More panel) must sit above the page content */
.cg-headwrap { z-index: 30; }
.foot-top { display: grid; grid-template-columns: minmax(220px, 1.1fr) 2fr; gap: 30px 40px; align-items: start; }
.foot-mark { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.foot-brand { display: inline-flex; align-items: center; gap: 12px; color: var(--bone); }
.foot-tag { margin: 0; color: var(--titanium); font-size: 15px; line-height: 1.5; max-width: 30ch; }
.foot-domain { color: var(--steel); }
.foot-cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.foot-col { display: flex; flex-direction: column; align-items: flex-start; }
.foot-h { margin: 0 0 8px; color: var(--steel); }
.foot-col a { font-family: 'Space Grotesk', sans-serif; font-size: 14.5px; color: var(--titanium); padding: 7px 0; min-height: 24px; }
.foot-col a:hover { color: var(--cy); }
.site-foot .foot-rule { margin: 26px 0 0; padding-top: 18px; box-shadow: inset 0 1px 0 var(--edge); color: var(--steel); line-height: 1.7; }
@media (max-width: 860px) { .foot-top { grid-template-columns: 1fr; } }
@media (max-width: 520px) { .foot-cols { grid-template-columns: 1fr 1fr; } }

/* ---------- status board ---------- */
:root { --ok-text: #A7F0CF; }
:root[data-theme="light"] { --ok-text: #14603A; }
@media (prefers-color-scheme: light) { :root:not([data-theme]) { --ok-text: #14603A; } }
.sb-wrap { padding-top: 34px; display: grid; gap: 14px; }
.sb-hero {
  display: grid; grid-template-columns: auto 1fr auto; gap: 22px; align-items: center;
  padding: clamp(20px, 3vw, 30px); background: var(--glass); border-radius: 26px;
  box-shadow: inset 0 0 0 1px var(--edge);
}
.sb-hero.sb-ok { box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ok) 45%, transparent); background: color-mix(in srgb, var(--ok) 7%, var(--glass)); }
.sb-hero.sb-degraded { box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--amber) 55%, transparent); background: color-mix(in srgb, var(--amber) 8%, var(--glass)); }
.sb-hero.sb-down { box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ir) 60%, transparent); background: color-mix(in srgb, var(--ir) 9%, var(--glass)); }
.sb-orb { position: relative; width: 54px; height: 54px; border-radius: 50%; display: grid; place-items: center; }
.sb-orb i { width: 18px; height: 18px; border-radius: 50%; background: var(--ok); box-shadow: 0 0 0 7px color-mix(in srgb, var(--ok) 18%, transparent), 0 0 30px var(--ok); }
.sb-degraded .sb-orb i { background: var(--amber); box-shadow: 0 0 0 7px color-mix(in srgb, var(--amber) 18%, transparent), 0 0 30px var(--amber); }
.sb-down .sb-orb i { background: var(--ir); box-shadow: 0 0 0 7px color-mix(in srgb, var(--ir) 18%, transparent), 0 0 30px var(--ir); }
.sb-orb::before { content: ''; position: absolute; inset: 0; border-radius: 50%; box-shadow: inset 0 0 0 1px var(--edge-2); }
@media (prefers-reduced-motion: no-preference) {
  .sb-orb::after { content: ''; position: absolute; inset: 0; border-radius: 50%; box-shadow: 0 0 0 1px var(--ok); animation: sb-ping 2.4s ease-out infinite; }
  .sb-degraded .sb-orb::after { box-shadow: 0 0 0 1px var(--amber); }
  .sb-down .sb-orb::after { box-shadow: 0 0 0 1px var(--ir); }
}
@keyframes sb-ping { from { transform: scale(.6); opacity: 1; } to { transform: scale(1.5); opacity: 0; } }
.sb-headline { margin: 0; font-family: 'Orbitron', sans-serif; font-weight: 900; text-transform: uppercase; letter-spacing: .03em; font-size: clamp(20px, 2.6vw, 32px); line-height: 1.1; color: var(--bone); }
.sb-sub { margin: 8px 0 0; font-size: 13px; color: var(--titanium); }
.sb-notice { padding: 18px 22px; border-radius: 20px; background: var(--glass-solid); box-shadow: inset 0 0 0 1px var(--edge); border-left: 0; }
.sb-n-incident { box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ir) 55%, transparent), inset 4px 0 0 var(--ir); }
.sb-n-maintenance { box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--vi) 55%, transparent), inset 4px 0 0 var(--vi); }
.sb-n-info { box-shadow: inset 0 0 0 1px var(--edge-2), inset 4px 0 0 var(--cy); }
.sb-n-k { margin: 0; color: var(--steel); }
.sb-n-incident .sb-n-k { color: var(--ir-text); }
.sb-n-maintenance .sb-n-k { color: var(--vi); }
.sb-n-t { margin: 6px 0 0; font-family: 'Space Grotesk', sans-serif; font-size: 19px; color: var(--bone); }
.sb-n-b { margin: 8px 0 0; color: var(--titanium); line-height: 1.6; }
.sb-n-act { margin-top: 12px; }
.sb-legend { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
.sb-legend i { display: inline-block; width: 9px; height: 9px; border-radius: 2px; margin-left: 6px; }
.sb-list { list-style: none; margin: 0; padding: 6px; background: var(--glass); border-radius: 24px; box-shadow: inset 0 0 0 1px var(--edge); }
.sb-row { display: grid; grid-template-columns: minmax(200px, 1fr) minmax(260px, 1.25fr) 132px; gap: 22px; align-items: center; padding: 16px 18px; }
.sb-row + .sb-row { box-shadow: inset 0 1px 0 var(--edge); }
.sb-name { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.sb-title { font-family: 'Space Grotesk', sans-serif; font-weight: 600; font-size: 16px; color: var(--bone); }
.sb-detail { font-size: 13.5px; color: var(--titanium); line-height: 1.45; }
.sb-bars { display: grid; grid-template-columns: repeat(90, 1fr); gap: 2px; height: 30px; }
.sb-bars i { border-radius: 2px; min-width: 0; }
.sb-ok, .sb-legend .sb-ok { background: var(--ok); }
.sb-degraded, .sb-legend .sb-degraded { background: var(--amber); }
.sb-down, .sb-legend .sb-down { background: var(--ir); }
.sb-none, .sb-legend .sb-none { background: color-mix(in srgb, var(--steel) 22%, transparent); }
.ax-45 { display: none; }
.sb-axis { display: flex; justify-content: space-between; margin-top: 6px; font-size: 11px; color: var(--steel); }
.sb-pill { justify-self: end; display: inline-flex; align-items: center; gap: 8px; padding: 7px 12px; border-radius: 999px; font-family: 'Space Grotesk', sans-serif; font-size: 13px; font-weight: 600; white-space: nowrap; box-shadow: inset 0 0 0 1px var(--edge); color: var(--titanium); }
.sb-pill i { width: 8px; height: 8px; border-radius: 50%; background: var(--steel); }
.sb-p-ok { color: var(--ok-text); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ok) 45%, transparent); }
.sb-p-ok i { background: var(--ok); box-shadow: 0 0 10px var(--ok); }
.sb-p-degraded { color: var(--amber); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--amber) 50%, transparent); }
.sb-p-degraded i { background: var(--amber); }
.sb-p-down { color: var(--ir-text); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ir) 55%, transparent); }
.sb-p-down i { background: var(--ir); }
.sb-empty { margin: 0; padding: 22px; border-radius: 20px; background: var(--glass); box-shadow: inset 0 0 0 1px var(--edge); }
.sb-past { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.sb-past li { display: flex; flex-direction: column; gap: 4px; padding: 16px 20px; border-radius: 18px; background: var(--glass); box-shadow: inset 0 0 0 1px var(--edge); }
.sb-past b { font-family: 'Space Grotesk', sans-serif; color: var(--bone); }
.sb-foot { margin: 18px 0 0; font-size: 12.5px; color: var(--steel); }
.sb-foot a { color: var(--cy); }
.sb-admin { padding: 24px; }
.sb-form { display: grid; gap: 14px; max-width: 640px; margin-top: 16px; }
.sb-form .btn { justify-self: start; }
.sb-recheck { margin-top: 18px; }
@media (max-width: 860px) {
  .sb-row { grid-template-columns: 1fr auto; gap: 12px 16px; }
  .sb-hist { grid-column: 1 / -1; grid-row: 2; }
  .sb-pill { grid-column: 2; grid-row: 1; align-self: start; }
  .sb-bars { grid-template-columns: repeat(45, 1fr); }
  .sb-bars i:nth-child(-n+45) { display: none; }
  .ax-90 { display: none; }
  .ax-45 { display: inline; }
}
@media (max-width: 600px) {
  .sb-hero { grid-template-columns: auto 1fr; }
  .sb-refresh { grid-column: 1 / -1; justify-self: start; }
}

/* ---------- bot check (Turnstile) ---------- */
.ts-field { min-height: 65px; margin: 4px 0; }
.ts-field .cf-turnstile { max-width: 420px; }
