@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@400;500;600&family=IBM+Plex+Serif:wght@600&display=swap');
/* UFOCOSMOS · Design Tokens — Teenage Engineering palette
   Pure white, hairline greys, TE orange accent. */:root {
  /* COLOR · LIGHT (default) */
  --bg: #FFFFFF;
  --bg-elev: #FFFFFF;
  --bg-inset: #F4F4F4;
  --bg-deep: #EEEEEE;
  --bg-grid: #FAFAFA;

  --ink: #000000;
  --ink-1: #1A1A1A;
  --ink-muted: #6B6B6B;
  --ink-subtle: #9C9C9C;
  --ink-faint: #C4C4C4;

  --line: #E5E5E5;
  --line-strong: #BDBDBD;
  --line-darker: #1A1A1A;

  --accent: #FF5A00;
  --accent-soft: #FFE3D3;
  --accent-deep: #CC4800;

  --ok: #2F7D4F;
  --ok-soft: #E1F1E5;
  --warn: #B07900;
  --warn-soft: #FBEFD0;
  --err: #B0271E;
  --err-soft: #F5DAD7;

  /* MAP HUD overlays read on light positron tiles */
  --map-hud-bg: rgba(255, 255, 255, 0.92);
  --map-hud-line: #E5E5E5;
  --map-hud-text: #1A1A1A;
  --map-pin: #FF5A00;
  --map-pin-glow: rgba(255, 90, 0, 0.18);
  --map-selected: #000000;

  /* TYPE */
  --font-sans: 'IBM Plex Sans', system-ui, -apple-system, sans-serif;
  --font-serif: 'IBM Plex Serif', Georgia, serif;
  --font-mono: 'IBM Plex Mono', ui-monospace, 'SF Mono', Menlo, monospace;

  /* TYPE · SCALE */
  --fs-display-xl: 12.5rem;
  --fs-display-l: 7.5rem;
  --fs-display-m: 4.5rem;
  --fs-h1: 3rem;
  --fs-h2: 2.25rem;
  --fs-h3: 1.5rem;
  --fs-h4: 1.125rem;
  --fs-body-l: 1.125rem;
  --fs-body: 1rem;
  --fs-body-s: 0.875rem;
  --fs-label: 0.6875rem;
  --fs-mono-s: 0.6875rem;

  --lh-tight: 1.05;
  --lh-snug: 1.15;
  --lh-normal: 1.55;

  --tr-tight: -0.025em;
  --tr-h1: -0.02em;
  --tr-h2: -0.015em;
  --tr-label: 0.16em;

  /* SPACE */
  --s-1: 0.25rem;
  --s-2: 0.5rem;
  --s-3: 0.75rem;
  --s-4: 1rem;
  --s-5: 1.25rem;
  --s-6: 1.5rem;
  --s-8: 2rem;
  --s-10: 2.5rem;
  --s-12: 3rem;
  --s-14: 3.5rem;
  --s-16: 4rem;
  --s-20: 5rem;
  --s-24: 6rem;
  --s-32: 8rem;

  /* RADIUS — TE keeps things sharp. 0 default. */
  --r-0: 0px;
  --r-1: 1px;
  --r-2: 2px;
  --r-pill: 999px;

  /* SHADOWS — almost none. TE relies on hairlines, not shadow. */
  --shadow-1: 0 1px 0 rgba(0, 0, 0, 0.04);
  --shadow-2: 0 1px 2px rgba(0, 0, 0, 0.06);
  --shadow-3: 0 8px 32px -16px rgba(0, 0, 0, 0.16);
  --shadow-hud: 0 0 0 1px var(--line);

  /* MOTION */
  --ease-out: cubic-bezier(0.2, 0.8, 0.2, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --d-1: 80ms;
  --d-2: 120ms;
  --d-3: 200ms;
  --d-4: 320ms;
  --d-5: 520ms;

  /* LAYOUT */
  --container: 1280px;
  --container-wide: 1480px;
  --header-h: 48px;
  --statbar-h: 68px;
  --sidebar-w: 220px;
  --sidebar-w-collapsed: 56px;
  --footer-h: 96px;

  /* Z-INDEX */
  --z-header: 30;
  --z-sidebar: 25;
  --z-drawer: 40;
  --z-modal: 50;
  --z-toast: 60;
}/* DARK MODE */:root[data-theme='dark'] {
  --bg: #0A0A0A;
  --bg-elev: #131313;
  --bg-inset: #1A1A1A;
  --bg-deep: #0F0F0F;
  --bg-grid: #0F0F0F;
  --ink: #F2F1EC;
  --ink-1: #E0DFDA;
  --ink-muted: #B8B6B0;
  --ink-subtle: #7B7972;
  --ink-faint: #4A4843;
  --line: #1F1F1F;
  --line-strong: #2A2A2A;
  --line-darker: #F2F1EC;
  --accent: #FF7A30;
  --accent-soft: #2A1407;
  --map-hud-bg: rgba(10, 10, 10, 0.88);
  --map-hud-line: #2A2A2A;
  --map-hud-text: #F2F1EC;
}@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 1ms !important;
    transition-duration: 1ms !important;
    scroll-behavior: auto !important;
  }
}/* BREAKPOINTS */--bp-xs: 320px;--bp-sm: 640px;--bp-tablet: 768px;--bp-md: 1024px;--bp-lg: 1440px;--bp-xl: 1920px;/* Modern CSS reset, minimal */*, *::before, *::after { box-sizing: border-box; }html, body, h1, h2, h3, h4, h5, h6, p, ol, ul, figure, blockquote, dl, dd { margin: 0; }ol, ul { padding: 0; list-style: none; }img, svg, video, canvas, audio, iframe, embed, object { display: block; max-width: 100%; }img, picture { height: auto; }input, button, textarea, select { font: inherit; color: inherit; }button { background: transparent; border: 0; padding: 0; cursor: pointer; }a { color: inherit; text-decoration: none; }table { border-collapse: collapse; border-spacing: 0; }:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }::selection { background: var(--ink); color: var(--bg); }html { -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }body { min-height: 100dvh; }/* Type primitives — apply via class. No global element overrides. */html {
  font-family: var(--font-sans);
  font-size: 16px;
  line-height: var(--lh-normal);
  color: var(--ink);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'kern' 1, 'ss01' 1;
}.t-display-xl,
.t-display-l,
.t-display-m,
.t-h1,
.t-h2,
.t-h3 {
  font-family: var(--font-serif);
  font-weight: 600;
  line-height: var(--lh-tight);
  letter-spacing: var(--tr-tight);
  margin: 0;
}.t-display-xl { font-size: clamp(4rem, 18vw, var(--fs-display-xl)); }.t-display-l  { font-size: clamp(3.5rem, 12vw, var(--fs-display-l)); }.t-display-m  { font-size: clamp(2.5rem, 8vw, var(--fs-display-m)); }.t-h1         { font-size: clamp(2rem, 5vw, var(--fs-h1)); letter-spacing: var(--tr-h1); }.t-h2         { font-size: clamp(1.5rem, 3.5vw, var(--fs-h2)); letter-spacing: var(--tr-h2); line-height: var(--lh-snug); }.t-h3         { font-size: var(--fs-h3); line-height: 1.25; }.t-h4         { font-family: var(--font-sans); font-weight: 500; font-size: var(--fs-h4); line-height: 1.3; }.t-body-l     { font-family: var(--font-sans); font-size: var(--fs-body-l); line-height: var(--lh-normal); }.t-body       { font-family: var(--font-sans); font-size: var(--fs-body); line-height: var(--lh-normal); }.t-body-s     { font-family: var(--font-sans); font-size: var(--fs-body-s); line-height: 1.5; }.t-label,
.t-eyebrow {
  font-family: var(--font-sans);
  font-weight: 500;
  font-size: var(--fs-label);
  line-height: 1.2;
  letter-spacing: var(--tr-label);
  text-transform: uppercase;
  color: var(--ink-muted);
}.t-eyebrow { color: var(--ink-subtle); }.t-mono   { font-family: var(--font-mono); font-size: var(--fs-mono-s); line-height: 1.4; letter-spacing: 0.03em; }.t-mono-s { font-family: var(--font-mono); font-size: 0.6875rem; letter-spacing: 0.06em; }.t-muted   { color: var(--ink-muted); }.t-subtle  { color: var(--ink-subtle); }.t-accent  { color: var(--accent); }/* IBM Plex (self-hosted in production via /public/fonts; CDN-fetched in dev) *//* Container */.container {
  width: 100%;
  max-width: var(--container);
  margin: 0 auto;
  padding-inline: var(--s-4);
}@media (min-width: 768px)  { .container { padding-inline: var(--s-6); } }@media (min-width: 1024px) { .container { padding-inline: var(--s-10); } }@media (min-width: 1440px) { .container { padding-inline: var(--s-16); max-width: var(--container-wide); } }.container-narrow { max-width: 760px; }/* Section spacing */.section { padding-block: var(--s-12); }@media (min-width: 768px) { .section { padding-block: var(--s-20); } }/* Hairline rules */.rule { border: 0; border-top: 1px solid var(--line); margin: 0; }.rule-strong { border-top-color: var(--line-strong); }/* Stack utilities */.stack-1 > * + * { margin-top: var(--s-1); }.stack-2 > * + * { margin-top: var(--s-2); }.stack-3 > * + * { margin-top: var(--s-3); }.stack-4 > * + * { margin-top: var(--s-4); }.stack-6 > * + * { margin-top: var(--s-6); }.stack-8 > * + * { margin-top: var(--s-8); }/* Cluster (horizontal) */.cluster { display: flex; flex-wrap: wrap; gap: var(--s-3); align-items: center; }.cluster-2 { gap: var(--s-2); }.cluster-1 { gap: var(--s-1); }/* Grid presets */.grid-12 { display: grid; grid-template-columns: repeat(12, 1fr); gap: var(--s-3); }@media (min-width: 768px) { .grid-12 { grid-template-columns: repeat(10, 1fr); gap: var(--s-4); } }@media (min-width: 1024px) { .grid-12 { grid-template-columns: repeat(12, 1fr); gap: var(--s-6); } }.grid-lg { display: grid; grid-template-columns: 1fr; gap: var(--s-4); }@media (min-width: 768px) { .grid-lg { grid-template-columns: repeat(2, 1fr); } }@media (min-width: 1024px) { .grid-lg { grid-template-columns: repeat(3, 1fr); } }/* Card base */.card {
  background: var(--bg-elev);
  border: 1px solid var(--line);
  padding: var(--s-4);
  transition:
    transform var(--d-3) var(--ease-out),
    box-shadow var(--d-3) var(--ease-out),
    border-color var(--d-3) var(--ease-out);
}.card:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-2);
  border-color: var(--line-strong);
}.card[data-state='selected'] {
  background: var(--ink); color: var(--bg);
}/* Skeleton shimmer */.skel {
  background: linear-gradient(90deg, var(--bg-inset) 0, #fff 50%, var(--bg-inset) 100%);
  background-size: 200% 100%;
  animation: shimmer 1600ms linear infinite;
}@keyframes shimmer {
  0%   { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}/* App shell */.app-shell {
  min-height: 100dvh;
  display: grid;
  grid-template-rows: var(--header-h) 1fr auto;
}/* Map shell — full bleed, no body scroll */.map-shell {
  height: 100dvh;
  display: grid;
  grid-template-rows: var(--header-h) 1fr;
  overflow: hidden;
}/* Visually hidden (for a11y) */.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0;
  margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0);
  white-space: nowrap; border: 0;
}/* ── Scroll-reveal animations ──────────────────────────────────────────────── */@keyframes fade-up {
  from { opacity: 0; transform: translateY(16px); }
  to   { opacity: 1; transform: translateY(0); }
}@keyframes fade-in {
  from { opacity: 0; }
  to   { opacity: 1; }
}@keyframes slide-right {
  from { opacity: 0; transform: translateX(-12px); }
  to   { opacity: 1; transform: translateX(0); }
}/* Elements with [data-reveal] are invisible until JS adds .is-visible */[data-reveal] {
  opacity: 0;
  transition: none;
}[data-reveal].is-visible {
  animation: fade-up 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}[data-reveal="fade"].is-visible {
  animation: fade-in 0.5s ease both;
}[data-reveal="slide"].is-visible {
  animation: slide-right 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}/* Stagger: each [data-reveal] child gets slightly delayed appearance */[data-reveal-stagger] > * {
  opacity: 0;
}[data-reveal-stagger].is-visible > *:nth-child(1) { animation: fade-up 0.5s 0.00s cubic-bezier(0.25, 0.46, 0.45, 0.94) both; }[data-reveal-stagger].is-visible > *:nth-child(2) { animation: fade-up 0.5s 0.06s cubic-bezier(0.25, 0.46, 0.45, 0.94) both; }[data-reveal-stagger].is-visible > *:nth-child(3) { animation: fade-up 0.5s 0.12s cubic-bezier(0.25, 0.46, 0.45, 0.94) both; }[data-reveal-stagger].is-visible > *:nth-child(4) { animation: fade-up 0.5s 0.18s cubic-bezier(0.25, 0.46, 0.45, 0.94) both; }[data-reveal-stagger].is-visible > *:nth-child(5) { animation: fade-up 0.5s 0.24s cubic-bezier(0.25, 0.46, 0.45, 0.94) both; }[data-reveal-stagger].is-visible > *:nth-child(6) { animation: fade-up 0.5s 0.30s cubic-bezier(0.25, 0.46, 0.45, 0.94) both; }[data-reveal-stagger].is-visible > *:nth-child(n+7) { animation: fade-up 0.5s 0.36s cubic-bezier(0.25, 0.46, 0.45, 0.94) both; }/* Page entrance animation — applied to main content */.page-enter {
  animation: fade-up 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}
.hdr.astro-qlfjksao{grid-area:head;height:var(--header-h);display:grid;grid-template-columns:var(--sidebar-w) 1fr auto;align-items:center;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:var(--z-header)}.hdr__brand.astro-qlfjksao{display:flex;align-items:center;gap:10px;padding-inline:16px;height:100%;border-right:1px solid var(--line);color:var(--ink)}.hdr__logo.astro-qlfjksao{width:14px;height:14px;background:var(--accent);display:inline-block}.hdr__name.astro-qlfjksao{font-family:var(--font-serif);font-weight:600;font-size:15px;letter-spacing:-0.02em}.hdr__build.astro-qlfjksao{font-size:9px;color:var(--ink-subtle);letter-spacing:0.16em}.hdr__center.astro-qlfjksao{padding-inline:16px}.hdr__search.astro-qlfjksao{display:inline-flex;align-items:center;gap:10px;background:var(--bg-inset);border:1px solid var(--line);height:32px;padding:0 10px;color:var(--ink-muted);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;width:100%;max-width:400px;cursor:text;transition:border-color var(--d-2)}.hdr__search.astro-qlfjksao:hover{border-color:var(--ink);color:var(--ink)}.hdr__search-icon.astro-qlfjksao{color:var(--ink);font-size:14px}.hdr__search-label.astro-qlfjksao{flex:1;text-align:left}kbd.astro-qlfjksao{font-family:var(--font-mono);font-size:10px;border:1px solid var(--line-strong);padding:1px 5px;color:var(--ink);background:var(--bg)}.mono.astro-qlfjksao{font-family:var(--font-mono)}.hdr__right.astro-qlfjksao{display:none;gap:8px;align-items:center;padding-inline:16px}@media (min-width: 1024px){.hdr__right.astro-qlfjksao{display:flex}}.hdr__icon.astro-qlfjksao{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);color:var(--ink);transition:background var(--d-2),border-color var(--d-2)}.hdr__icon.astro-qlfjksao:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.hdr__cta.astro-qlfjksao{height:32px;padding:0 14px;display:inline-flex;align-items:center;background:var(--ink);color:var(--bg);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;border:1px solid var(--ink)}.hdr__cta.astro-qlfjksao:hover{background:var(--accent);border-color:var(--accent)}.hdr__menu.astro-qlfjksao{display:inline-flex;margin-left:auto;width:36px;height:36px;align-items:center;justify-content:center;border-left:1px solid var(--line);color:var(--ink);font-size:18px}@media (min-width: 1024px){.hdr__menu.astro-qlfjksao{display:none}}@media (max-width: 1024px){.hdr.astro-qlfjksao{grid-template-columns:1fr auto}.hdr__brand.astro-qlfjksao{border-right:0}.hdr__center.astro-qlfjksao{display:none}}.sb.astro-k4cmclh2{grid-area:side;width:var(--sidebar-w);border-right:1px solid var(--line);background:var(--bg);display:flex;flex-direction:column;padding:var(--s-3) 0;gap:var(--s-4);overflow-y:auto;position:sticky;top:var(--header-h);height:calc(100dvh - var(--header-h))}.sb__group.astro-k4cmclh2{display:flex;flex-direction:column}.sb__bottom.astro-k4cmclh2{margin-top:auto;padding-top:var(--s-4);border-top:1px solid var(--line)}.sb__head.astro-k4cmclh2{padding:0 var(--s-4);margin-bottom:4px;color:var(--ink-subtle)}.sb__item.astro-k4cmclh2{display:grid;grid-template-columns:16px 1fr;align-items:center;gap:var(--s-3);padding:8px var(--s-4);color:var(--ink-muted);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;border-left:2px solid transparent;transition:color var(--d-2) var(--ease-out),background var(--d-2)}.sb__item.astro-k4cmclh2:hover{color:var(--ink);background:var(--bg-inset)}.sb__item.astro-k4cmclh2.is-active{color:var(--ink);background:var(--bg-inset);border-left-color:var(--ink)}.sb__item.astro-k4cmclh2.is-active .sb__dot.astro-k4cmclh2{background:var(--ink)}.sb__dot.astro-k4cmclh2{width:6px;height:6px;background:transparent;border:1px solid var(--ink-subtle);transition:background var(--d-2)}.sb__dot--accent.astro-k4cmclh2{background:var(--accent);border-color:var(--accent)}.sb__item.astro-k4cmclh2:hover .sb__dot.astro-k4cmclh2{background:var(--ink);border-color:var(--ink)}@media (max-width: 1024px){.sb.astro-k4cmclh2{display:none}}.drawer-overlay.astro-ayfjwcsa{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:var(--z-drawer, 90);opacity:0;pointer-events:none;transition:opacity 0.2s ease}.drawer-overlay.astro-ayfjwcsa.is-open{opacity:1;pointer-events:all}.drawer.astro-ayfjwcsa{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:85vw;background:var(--bg);border-right:1px solid var(--line);z-index:calc(var(--z-drawer, 90) + 1);display:flex;flex-direction:column;transform:translateX(-100%);transition:transform 0.22s cubic-bezier(0.4,0,0.2,1);overflow-y:auto}.drawer.astro-ayfjwcsa.is-open{transform:translateX(0)}.drawer__head.astro-ayfjwcsa{display:flex;align-items:center;justify-content:space-between;padding:0 16px;height:var(--header-h, 48px);border-bottom:1px solid var(--line);background:var(--bg-inset);flex-shrink:0}.drawer__title.astro-ayfjwcsa{font-size:10px;letter-spacing:0.16em;color:var(--ink-subtle)}.drawer__close.astro-ayfjwcsa{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);background:transparent;color:var(--ink-muted);font-size:14px;cursor:pointer;transition:background var(--d-2),color var(--d-2)}.drawer__close.astro-ayfjwcsa:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.drawer__group.astro-ayfjwcsa{display:flex;flex-direction:column;padding:12px 0;border-bottom:1px solid var(--line)}.drawer__group--bottom.astro-ayfjwcsa{margin-top:auto;border-bottom:none;border-top:1px solid var(--line)}.drawer__section-label.astro-ayfjwcsa{font-size:9px;letter-spacing:0.18em;color:var(--ink-subtle);padding:0 16px 6px}.drawer__item.astro-ayfjwcsa{display:flex;align-items:center;gap:12px;padding:10px 16px;color:var(--ink-muted);font-family:var(--font-sans);font-size:12px;letter-spacing:0.14em;text-transform:uppercase;border-left:2px solid transparent;transition:color var(--d-2),background var(--d-2);text-decoration:none}.drawer__item.astro-ayfjwcsa:hover{color:var(--ink);background:var(--bg-inset)}.drawer__item.astro-ayfjwcsa.is-active{color:var(--ink);background:var(--bg-inset);border-left-color:var(--ink)}.drawer__item.astro-ayfjwcsa.is-active .drawer__dot.astro-ayfjwcsa{background:var(--ink);border-color:var(--ink)}.drawer__dot.astro-ayfjwcsa{width:6px;height:6px;background:transparent;border:1px solid var(--ink-subtle);flex-shrink:0;transition:background var(--d-2)}.drawer__item.astro-ayfjwcsa:hover .drawer__dot.astro-ayfjwcsa{background:var(--ink);border-color:var(--ink)}@media (min-width: 1025px){.drawer.astro-ayfjwcsa,.drawer-overlay.astro-ayfjwcsa{display:none}}.srch.astro-evqfcvvu{position:fixed;inset:0;z-index:var(--z-search, 200);display:flex;align-items:flex-start;justify-content:center;padding-top:clamp(60px,12vh,120px);opacity:0;pointer-events:none;transition:opacity 0.15s ease}.srch.astro-evqfcvvu.is-open{opacity:1;pointer-events:all}.srch__backdrop.astro-evqfcvvu{position:absolute;inset:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(2px)}.srch__panel.astro-evqfcvvu{position:relative;width:min(640px,92vw);background:var(--bg);border:1px solid var(--line-strong);display:flex;flex-direction:column;max-height:min(520px,70vh);box-shadow:0 24px 80px rgba(0,0,0,0.3);transform:translateY(-8px);transition:transform 0.15s ease}.srch.astro-evqfcvvu.is-open .srch__panel.astro-evqfcvvu{transform:translateY(0)}.srch__head.astro-evqfcvvu{display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--line);height:52px;flex-shrink:0}.srch__icon.astro-evqfcvvu{font-size:18px;color:var(--ink-subtle);flex-shrink:0}.srch__input.astro-evqfcvvu{flex:1;background:transparent;border:none;outline:none;font-family:var(--font-mono);font-size:13px;letter-spacing:0.06em;color:var(--ink);text-transform:uppercase}.srch__input.astro-evqfcvvu::placeholder{color:var(--ink-subtle);letter-spacing:0.1em}.srch__close.astro-evqfcvvu{background:none;border:1px solid var(--line);color:var(--ink-muted);font-size:9px;letter-spacing:0.12em;padding:3px 7px;cursor:pointer;flex-shrink:0;transition:all var(--d-2)}.srch__close.astro-evqfcvvu:hover{border-color:var(--ink);color:var(--ink)}.srch__body.astro-evqfcvvu{flex:1;overflow-y:auto;min-height:0}.srch__hint.astro-evqfcvvu{padding:20px 16px;font-size:9px;letter-spacing:0.14em;color:var(--ink-subtle);text-align:center}.srch__group-label.astro-evqfcvvu{font-family:var(--font-mono);font-size:8px;letter-spacing:0.18em;color:var(--ink-subtle);padding:10px 16px 4px;background:var(--bg-inset);border-bottom:1px solid var(--line);text-transform:uppercase;position:sticky;top:0}.srch__item.astro-evqfcvvu{display:flex;flex-direction:column;gap:3px;padding:10px 16px;border-bottom:1px solid var(--line);cursor:pointer;text-decoration:none;color:var(--ink);transition:background var(--d-2)}.srch__item.astro-evqfcvvu:last-child{border-bottom:0}.srch__item.astro-evqfcvvu:hover,.srch__item.astro-evqfcvvu.is-focused{background:var(--bg-inset);outline:none}.srch__item-title.astro-evqfcvvu{font-family:var(--font-serif);font-weight:600;font-size:14px;letter-spacing:-0.01em;line-height:1.25}.srch__item-meta.astro-evqfcvvu{font-family:var(--font-mono);font-size:9px;letter-spacing:0.1em;color:var(--ink-subtle);text-transform:uppercase}.srch__item-type.astro-evqfcvvu{font-family:var(--font-mono);font-size:8px;letter-spacing:0.14em;text-transform:uppercase;padding:2px 6px;border:1px solid currentColor;align-self:flex-start;margin-bottom:2px}.srch__item-type--sighting.astro-evqfcvvu{color:var(--accent)}.srch__item-type--scientist.astro-evqfcvvu{color:#F5A623}.srch__item-type--project.astro-evqfcvvu{color:var(--ink-muted)}.srch__empty.astro-evqfcvvu{padding:32px 16px;font-family:var(--font-mono);font-size:10px;letter-spacing:0.12em;color:var(--ink-subtle);text-align:center;text-transform:uppercase}.srch__loading.astro-evqfcvvu{padding:20px 16px;font-family:var(--font-mono);font-size:9px;letter-spacing:0.14em;color:var(--ink-subtle);text-align:center;animation:pulse-srch 1s ease-in-out infinite}@keyframes pulse-srch{0%,100%{opacity:1}50%{opacity:0.4}}.srch__foot.astro-evqfcvvu{display:flex;gap:20px;padding:8px 16px;border-top:1px solid var(--line);background:var(--bg-inset);font-size:9px;letter-spacing:0.1em;color:var(--ink-subtle);flex-shrink:0}