/* Starbase Closures 0.1.4 — styles for the section on /starship, hosted as a
   versioned asset and pinned with SHA-384 from the page head (0.1.0 was a
   <style> block in the head with this file as its reviewable copy).
   Copyright © 2026 Interstellar Gateway. All rights reserved.
   0.1.4 carries the rules igwstarbase-0.1.3.js needs and drops the one it
   retired. The derived road window - the city's clock resolved into a year
   and a time zone this module supplied - used to be a 217-character sentence
   in the same 12 px caption face as everything else on the line, opening
   "by IGW's reading:". The sentence is gone; the distinction it carried is
   now the treatment. .igwsb-derived-k is one word in the hollow amber the
   year axis already gives a derived mark (#f4c66a on a .55-alpha border of
   the same, matching .igwsb-mark-derived above), and .igwsb-derived-v is the
   interval in the caption colour with tabular numerals so two windows line
   up under each other. .igwsb-foot is removed from both places it appeared:
   the module no longer renders that element.
   0.1.3: .igwsb-h2 word-spacing: .04em. Clash Display's space glyph is about
   0.18 em at weight 500, which measured 6.63 px at 38 px here while the
   site's own .igw2-h2 measured 8.16 after the 2026-09-04 style pass gave it
   the same .04em.
   0.1.1: no link rules (the module renders no links); the year axis is a
   taller lane with a count above any mark that stands for more than one
   order, the today label on its own row and the road-window ring on a
   second row when it would sit on an order; the archive is collapsed behind one button; the beach tile's value
   slot shares the numerals' face and size; archive dates 16 px, on the scale.
   Every size here is on the site's scale: 11 / 12 / 16 / 21 / 28 / 38.
   Same system as Mission Control: micro-labels 11px/600/.08em, tabular
   numerals, 2px radius on panels, accent only for action and selection,
   status colour for state. */
[data-igw-module="starbase-closures"] { padding: 28px var(--_igw-2-0---space--gutter, 6vw) 16px; --sb-hair: rgba(255,255,255,.10); --sb-edge: rgba(255,255,255,.14); --sb-edge-i: rgba(255,255,255,.36); --sb-edge-h: rgba(255,255,255,.60); --sb-accent: #7DB8EA; --sb-muted: #9fa7af; --sb-cap: #8A94A0; --sb-text: #f5f5f5; --sb-surface: #0b0d0f; --sb-raised: #12161a; scroll-margin-top: 96px; }
[data-igw-module="starbase-closures"] *, [data-igw-module="starbase-closures"] *::before { box-sizing: border-box; }
[data-igw-snapshot-feed="starbase"] { display: none; }

.igwsb-kicker, .igwsb-tile-l, .igwsb-chip, .igwsb-tick-l, .igwsb-nowline-l, .igwsb-count, .igwsb-archive-h, .igwsb-h4 { font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; line-height: 1; }
.igwsb-kicker { color: var(--sb-muted); margin: 0 0 12px; }
.igwsb-h2 { font-family: var(--_igw-2-0---font--display), "Clashdisplay Variable", sans-serif; font-size: 38px; font-weight: 500; letter-spacing: -.01em; word-spacing: .04em; line-height: 1.05; color: var(--sb-text); margin: 0; }
.igwsb-h3 { font-size: 21px; font-weight: 500; letter-spacing: -.01em; line-height: 1.2; color: var(--sb-text); margin: 0; }
/* The archive heading. Named for its role because it is an h3 from
   igwstarbase-0.1.6 on - see the comment at its emission - while keeping
   the caption look it has always had. .igwsb-h4 stays as an alias so a
   cached older runtime still styles its h4 correctly. */
.igwsb-archive-h, .igwsb-h4 { color: var(--sb-cap); margin: 22px 0 0; }
.igwsb-meta, .igwsb-tile-n, .igwsb-road-note, .igwsb-axis-note, .igwsb-legend, .igwsb-order-note, .igwsb-asof { font-size: 12px; line-height: 1.5; color: var(--sb-cap); }
.igwsb-meta { margin: 12px 0 0; max-width: 80ch; }
.igwsb-copy { font-size: 16px; line-height: 1.55; color: var(--sb-muted); margin: 10px 0 0; max-width: 68ch; }
.igwsb-empty { font-size: 16px; color: var(--sb-muted); margin: 12px 0 0; }
.igwsb-count { color: var(--sb-accent); }

/* the strip */
.igwsb-strip { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; margin-top: 22px; }
.igwsb-tile { background: var(--sb-surface); border: 1px solid var(--sb-edge); border-radius: 2px; padding: 18px 20px 16px; min-width: 0; }
.igwsb-tile-l { color: var(--sb-cap); }
.igwsb-tile-v { font-size: 21px; font-weight: 500; letter-spacing: -.01em; line-height: 1.2; color: var(--sb-text); margin-top: 10px; overflow-wrap: anywhere; }
.igwsb-tile-v.igwsb-big { font-family: var(--_igw-2-0---font--display), "Clashdisplay Variable", sans-serif; font-size: 38px; line-height: 1.05; }
.igwsb-tile-v.igwsb-num { font-variant-numeric: tabular-nums; }
.igwsb-tile-good .igwsb-tile-v { color: #78d49b; }
.igwsb-tile-bad .igwsb-tile-v { color: #ff8f8f; }
.igwsb-tile-warn .igwsb-tile-v { color: #f4c66a; }
.igwsb-tile-n { margin-top: 6px; }

/* blocks */
.igwsb-block { margin-top: 30px; padding-top: 22px; border-top: 1px solid var(--sb-edge); }
.igwsb-list { list-style: none; margin: 14px 0 0; padding: 0; display: grid; gap: 14px; }
.igwsb-road { border-left: 2px solid #f4c66a; padding-left: 16px; }
.igwsb-road-top { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.igwsb-road-name { font-size: 16px; font-weight: 600; color: var(--sb-text); }
.igwsb-road-window { font-size: 28px; font-weight: 500; letter-spacing: -.01em; line-height: 1.15; color: var(--sb-text); margin-top: 8px; font-variant-numeric: tabular-nums; }
.igwsb-road-read { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-top: 10px; }
.igwsb-road-note { max-width: 80ch; }
/* The derived window: the city's clock resolved into a year and a zone this
   module supplied. Set apart from the city's own words by the same hollow
   amber the year axis gives a derived mark, and keyed with one word. */
.igwsb-road-derived { display: inline-flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.igwsb-derived-k { font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; line-height: 1; color: #f4c66a; border: 1px solid rgba(244,198,106,.55); border-radius: 2px; padding: 4px 7px; }
.igwsb-derived-v { font-size: 12px; line-height: 1.5; color: var(--sb-cap); font-variant-numeric: tabular-nums; }
.igwsb-chip { display: inline-block; padding: 4px 8px; border-radius: 2px; border: 1px solid #2a3341; color: var(--sb-muted); white-space: nowrap; line-height: 1.1; }
.igwsb-chip-good { border-color: #1e7a55; color: #4fbf8b; }
.igwsb-chip-bad  { border-color: #7a2f2f; color: #e08a8a; }
.igwsb-chip-warn { border-color: #7a5c1e; color: #e0b45a; }
.igwsb-chip-live { border-color: #7a2f2f; color: #ff8f8f; }

/* the year axis */
.igwsb-axis-wrap { margin-top: 18px; }
.igwsb-axis-head { display: flex; gap: 16px; align-items: baseline; flex-wrap: wrap; margin-bottom: 10px; }
.igwsb-axis { position: relative; height: 80px; border-top: 1px solid var(--sb-edge); overflow: hidden; }
.igwsb-tick { position: absolute; top: 0; bottom: 0; border-left: 1px solid var(--sb-hair); }
.igwsb-tick-l { position: absolute; top: 6px; left: 6px; color: var(--sb-cap); white-space: nowrap; }
.igwsb-nowline { position: absolute; top: 0; bottom: 0; border-left: 1px solid var(--sb-accent); z-index: 2; }
.igwsb-nowline-l { position: absolute; top: 20px; left: 6px; color: var(--sb-accent); white-space: nowrap; background: var(--_igw-2-0---color--background, #050505); padding-right: 6px; }
.igwsb-mark { position: absolute; top: 54px; width: 9px; height: 9px; border-radius: 50%; background: var(--sb-text); transform: translateX(-50%); box-shadow: 0 0 0 2px var(--_igw-2-0---color--background, #050505); }
.igwsb-mark-derived { background: transparent; border: 2px solid #f4c66a; width: 11px; height: 11px; top: 53px; }
.igwsb-mark-derived.igwsb-mark-shift { top: 66px; }
.igwsb-mark-wrap { position: absolute; top: 0; bottom: 0; width: 0; }
.igwsb-mark-wrap .igwsb-mark { left: 0; }
.igwsb-mark-n { position: absolute; left: 0; top: 37px; transform: translateX(-50%); font-size: 11px; font-weight: 600; font-style: normal; line-height: 1; color: var(--sb-text); font-variant-numeric: tabular-nums; }
.igwsb-mark-static { position: static; display: inline-block; transform: none; vertical-align: middle; margin-right: 8px; }
.igwsb-legend { display: flex; gap: 18px; flex-wrap: wrap; margin-top: 8px; }
.igwsb-legend-i { display: inline-flex; align-items: center; }

/* the archive */
.igwsb-archive { list-style: none; margin: 12px 0 0; padding: 0; border-top: 1px solid var(--sb-hair); }
.igwsb-archive[hidden] { display: none; }
.igwsb-order { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; min-height: 40px; padding: 8px 0; border-bottom: 1px solid var(--sb-hair); }
.igwsb-order-date { font-size: 16px; color: #dbe6f2; font-variant-numeric: tabular-nums; min-width: 170px; }
.igwsb-more { margin-top: 12px; min-height: 36px; padding: 0 14px; background: transparent; border: 1px solid var(--sb-edge-i); border-radius: 2px; color: var(--sb-text); font: inherit; font-size: 12px; font-weight: 600; letter-spacing: .02em; cursor: pointer; }
.igwsb-more:hover { border-color: var(--sb-edge-h); background: rgba(255,255,255,.06); }
.igwsb-more:focus-visible { outline: 2px solid var(--sb-accent); outline-offset: 2px; }

@media (max-width: 767px) {
  .igwsb-h2 { font-size: 28px; }
  .igwsb-road-window { font-size: 21px; }
  .igwsb-tick-l { display: none; }
  .igwsb-tick:nth-child(3n+1) .igwsb-tick-l { display: block; }
}
@media (pointer: coarse) { .igwsb-more { min-height: 44px; } }
@media (prefers-reduced-motion: reduce) { [data-igw-module="starbase-closures"] * { transition: none !important; } }
