/* ═══════════════════════════════════════════════════════════════════
 * used google gemini to resize iframe to letwebsite scale from cellphone to times square!
* planekey.css — the ONE stylesheet.
 * -------------------------------------------------------------------
 * A website needs ONE shared stylesheet. This file is it. It replaces
 * the previous three (tokens.css + planekey.css + shared.css), which
 * had duplicated the design tokens four ways over:
 *     tokens.css  →  planekey.css's own :root  →  shared.css  →  inline
 * …and that duplication WAS the "colors are all over the place" bug.
 *
 * Anchored on the brand/logo design doc (pages/logo-system.html):
 *     canonical dark window   #0A0C10
 *     canonical light ink     #E8ECF2 ramp
 *     semantic tier accents   burrow(blue) / warren(green) / thump(amber)
 *
 * There is NO light-mode flip — PlaneKey is a dark product; text is
 * always light on a dark surface, so contrast is guaranteed (this is
 * what killed the old dark-on-dark readability bug).
 *
 * The token canon is defined ONCE below; the three historical
 * vocabularies (planekey --ink/--panel, shared --accent/--line, inline
 * --text/--surface/--pk) are ALIASED to it, so a page written in any
 * dialect resolves the same palette. Pages should stop shipping their
 * own inline :root overrides — those are the last drift to clean up.
 * ═══════════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap');

:root {
  /* ── Surface (logo-doc canon) ── */
  /* Was corrupted to #d3d7de (light grey) at some point — contradicting
   * this token's own "canonical dark window" label, the ink ramp below
   * (whose contrast ratios only hold on near-black), and every chrome
   * surface in the app (nav/hub headers are all rgba(10,12,16,…)).
   * Light-grey --bg made every var(--bg) page render near-white text on
   * light grey, and made pages like financial-ops look "transparent"
   * (their gradient stacks bottom out at var(--bg)). #0a0c10 = the
   * rgb(10,12,16) base the chrome already uses. */
  --bg:        #0a0c10;   /* canonical dark window */
  --bg-deep:   #09090f;
  /* Surfaces are lifted well above --bg so cards actually separate from the
   * page (the old values were near-black-on-near-black — unreadable). */
  --surface:   #13131f;
  --surface2:  #1a1a28;
  /* Was #27303e00 — trailing 00 = zero alpha, a fully TRANSPARENT
   * "surface", contradicting what a surface token is. Nothing consumes
   * --surface3/--panel-3 yet (dead token — flagpole: whoever reaches for
   * the third surface tier first, it's now a real color). */
  --surface3:  #27303e;
  --border:        #2a2a40;   /* visible hairline, not a whisper */
  --border-strong: #46516A;

  /* ── Ink ramp (every tier clears WCAG AA on --bg — readability is real,
   *    not aspirational; nothing important rides an unreadable gray) ── */
  --text:      #ebebf0;   /* primary text          — ~13:1 */
  --text-2:    #C5CCD7;   /* secondary             — ~9:1  */
  --muted:     #A7B0BD;   /* muted body/labels     — ~7:1  (was #8E97A4) */
  --dim:       #838D9C;   /* dim/secondary labels  — ~4.7:1 (was #5C6573, failed) */
  --faint:     #66707F;   /* faint/decorative      — ~3.1:1 (was #3A414F, invisible) */

  /* ── Semantic tier accents (the WBT substrate as colour) ── */
  --burrow:    #7CA7FF;   /* blue  — encrypted / private  (Burrow) */
  --warren:    #6FD49A;   /* green — routing / network     (Warren) */
  --thump:     #F0B14B;   /* amber — alerts / broadcasts   (Thump)  */
  --danger:    #F07A7A;
  /* Exact hue complement of --burrow (220° → 40°, same S/L). Its hex is a
   * near-mirror of the blue: #7CA7FF ↔ #FFD37C (R/B channels swap). Paired
   * with the deeper --thump gold, the two form the mark's *radiant strength*
   * gradient — soft warmth low, deep heat high. Logo-scoped; not an alert. */
  --burrow-comp: #FFD37C;
  /* The one the two golds CRESCENDO into: sRGB midpoint of --burrow-comp and
   * --thump = (248,194,100). At full strength both radiant layers interpolate
   * to this single hue — the two yellows merge into one. */
  --gold-merge:  #F8C264;
  --burrow-wash: rgba(124,167,255, 0.10);
  --warren-wash: rgba(111,212,154, 0.10);
  --thump-wash:  rgba(240,177, 75, 0.10);

  /* ── Operational accent: green is PlaneKey's interactive colour
   *    (same family as --warren); --accent (purple) is the secondary. ── */
  --pk:        #00b894;
  --pk-dim:    rgba(0,184,148, 0.10);
  --pk-border: rgba(0,184,148, 0.30);
  --accent:    #6c5ce7;
  --accent-dim:rgba(108,92,231, 0.12);
  --warn:      #fdcb6e;
  --bad:       #e17055;

  /* ── Type ── */
  --sans: 'IBM Plex Sans', 'Satoshi', ui-sans-serif, system-ui, -apple-system, sans-serif;
  --mono: 'IBM Plex Mono', 'JetBrains Mono', ui-monospace, Menlo, monospace;

  /* ── Geometry ── */
  --r-card: 8px;
  --r-tile: 10px;
  --r-pill: 100px;
  --r-chip: 4px;
  --radius: 12px;
  --shadow: 0 2px 0 var(--bg-deep), 0 0 0 1px var(--border);

  /* Content container — Single sources of truth for page bounds. Max widths 
     now use viewport scale safeguards so giant hardware spreads out nicely. */
  --container-max: min(92vw, 2400px);
  --container-narrow: min(85vw, 1200px);
  --container-prose: min(75vw, 880px);

  /* Density (overridable via Tweaks) — fluid scaling from mobile to billboard */
  --pad-page: clamp(16px, 3.5vw, 120px);
  --gap-card: clamp(10px, 1.5vw, 48px);
  --motion: 1;

  /* ─────────────────────────────────────────────────────────────────
   * ALIASES — the legacy vocabularies resolve to the canon above, so a
   * page in any of the three dialects gets ONE consistent palette.
   * ───────────────────────────────────────────────────────────────── */
  --panel:      var(--surface);
  --panel-2:    var(--surface2);
  --panel-3:    var(--surface3);
  --line:       var(--border);
  --line-strong:var(--border-strong);
  --line-soft:  var(--surface2);
  --ink:        var(--text);
  --ink-2:      var(--text-2);
  --ink-dim:    var(--faint);
  --ink-mute:   var(--dim);
  --ink-muted:  var(--muted);
  --ink-faint:  var(--faint);
  --ok:         var(--warren);
  --good:       var(--warren);
  --paper:      var(--surface);
}

[data-density="compact"] { --pad-page: clamp(12px, 2.5vw, 40px); --gap-card: clamp(6px, 1vw, 24px); }
[data-density="roomy"]   { --pad-page: clamp(22px, 5vw, 160px); --gap-card: clamp(14px, 2vw, 64px); }
[data-motion="off"] *    { animation: none !important; transition: none !important; }
[data-accent="muted"] {
  --burrow: #6E89C5;
  --warren: #69A788;
  --thump:  #C49254;
}

* { box-sizing: border-box; }
html, body {
  margin: 0; padding: 0;
  background: var(--bg);
  color: var(--ink);
  font-family: var(--sans);
  /* Root dynamic scaling: dynamically inflates sizing on immense high-res setups (TV/Display Walls) */
  font-size: clamp(14px, 0.25vw + 13.5px, 28px);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "ss01", "cv11";
}
body {
  background:
    radial-gradient(1200px 600px at 70% -10%, rgba(142, 166, 215, 0.04), transparent 60%),
    radial-gradient(900px 500px at 10% 110%, rgba(111,212,154,0.03), transparent 60%),
    var(--bg);
  min-height: 100vh;
}

a { color: var(--burrow); text-decoration: none; }
a:hover { color: var(--ink); }

code, kbd, samp, pre { font-family: var(--mono); font-size: 0.92em; }

/* ── Headings (unified across marketing + app — one type system) ──── */
h1, h2, h3, h4 {
  font-family: var(--sans);
  color: var(--ink);
  letter-spacing: -0.02em;
  margin: 0;
  text-wrap: balance;
}
h1 { font-size: clamp(36px, 5vw + 1rem, 110px); line-height: 1.05; font-weight: 600; }
h2 { font-size: clamp(24px, 3vw + 0.5rem, 64px); line-height: 1.15; font-weight: 600; }
h3 { font-size: clamp(16px, 1.2vw + 10px, 36px); line-height: 1.3; font-weight: 600; }

/* ═══ App design system (.pk-*) ═══════════════════════════════════ */

/* ── App nav ──────────────────────────────────────────────────────── */
.pk-nav {
  position: sticky; top: 0; z-index: 50;
  background: rgba(10,12,16,0.78);
  backdrop-filter: saturate(140%) blur(10px);
  -webkit-backdrop-filter: saturate(140%) blur(10px);
  border-bottom: 1px solid var(--line);
}
.pk-nav-inner {
  max-width: var(--container-max); margin-inline: auto;
  padding-inline: var(--pad-page);
  padding-block: clamp(12px, 1vw + 4px, 28px);
  display: flex; align-items: center; gap: clamp(14px, 2vw, 48px);
}
.pk-brand {
  font-family: var(--sans);
  font-weight: 600;
  font-size: clamp(14px, 0.5vw + 12px, 24px);
  letter-spacing: -0.01em;
  color: var(--ink);
  display: inline-flex; align-items: center; gap: 10px;
}
.pk-brand { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; }
.pk-brand-mark {
  width: clamp(16px, 1vw + 12px, 32px); height: clamp(16px, 1vw + 12px, 32px); display: inline-block; flex: 0 0 auto;
  background-color: currentColor;
  -webkit-mask: url("/img/pk-mark.svg") center / contain no-repeat;
  mask: url("/img/pk-mark.svg") center / contain no-repeat;
}
.pk-brand .pk-brand-word { color: var(--ink); font-weight: 400; }
.pk-brand-word em, .pk-brand-word span { font-style: italic; font-weight: 500; color: var(--burrow); }
.pk-brand .pk-brand-word em { font-style: normal; color: var(--burrow); }

.pk-nav-links {
  display: flex; gap: 4px; margin-left: 8px;
  font-size: clamp(12px, 0.3vw + 11px, 18px);
  font-family: var(--sans);
}
.pk-nav-links a {
  color: var(--ink-dim);
  padding: 6px 12px;
  border-radius: var(--r-chip);
}
.pk-nav-links a:hover { color: var(--ink); background: var(--panel); }
.pk-nav-links a.active { color: var(--ink); }
.pk-nav-spacer { flex: 1; }
.pk-nav-cta {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--mono);
  font-size: clamp(11px, 0.3vw + 10px, 16px);
  color: var(--ink);
  padding: 7px 12px;
  border: 1px solid var(--line-strong);
  border-radius: var(--r-chip);
  background: var(--panel);
}
.pk-nav-cta:hover { background: var(--panel-2); color: var(--ink); }
.pk-nav-cta .pk-prompt { color: var(--warren); }

/* ── App layout ──────────────────────────────────────────────────── */
main { max-width: var(--container-max); margin-inline: auto; padding-inline: var(--pad-page); padding-bottom: clamp(48px, 8vw, 160px); }
.pk-wrap { max-width: var(--container-max); margin-inline: auto; }
.pk-eyebrow {
  font-family: var(--mono);
  font-size: clamp(10px, 0.2vw + 9px, 16px);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ink-mute);
  font-weight: 500;
  margin: 0 0 14px;
  display: inline-flex; align-items: center; gap: 8px;
}
.pk-eyebrow::before {
  content: ''; width: clamp(12px, 1vw, 32px); height: 1px;
  background: var(--ink-faint); display: inline-block;
}
.pk-eyebrow.is-burrow { color: var(--burrow); }
.pk-eyebrow.is-burrow::before { background: var(--burrow); }
.pk-eyebrow.is-warren { color: var(--warren); }
.pk-eyebrow.is-warren::before { background: var(--warren); }
.pk-eyebrow.is-thump  { color: var(--thump);  }
.pk-eyebrow.is-thump::before  { background: var(--thump); }

.pk-lede {
  font-size: clamp(14px, 0.6vw + 12px, 24px);
  color: var(--ink-dim);
  max-width: var(--container-prose);
  margin: 0;
  line-height: 1.55;
  text-wrap: pretty;
}

/* ── Buttons + CTAs ────────────────────────────────────────────── */
.pk-btn {
  display: inline-flex; align-items: center; gap: 10px;
  font-family: var(--sans);
  font-size: clamp(12px, 0.3vw + 12px, 18px);
  font-weight: 500;
  padding: clamp(8px, 1vw, 16px) clamp(14px, 1.5vw, 28px);
  border-radius: var(--r-chip);
  border: 1px solid var(--line-strong);
  background: var(--panel);
  color: var(--ink);
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.pk-btn:hover { background: var(--panel-2); border-color: var(--ink-faint); }
.pk-btn-primary {
  background: var(--ink); color: var(--bg);
  border-color: var(--ink);
}
.pk-btn-primary:hover { background: #fff; border-color: #fff; }
.pk-btn-ghost {
  background: transparent;
  border-color: var(--line);
  color: var(--ink-dim);
}
.pk-btn-ghost:hover { color: var(--ink); border-color: var(--line-strong); }

.pk-cmd {
  display: inline-flex; align-items: center;
  font-family: var(--mono);
  font-size: clamp(12px, 0.3vw + 11px, 18px);
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: var(--r-chip);
  overflow: hidden;
  color: var(--ink);
  max-width: 100%;
}
.pk-cmd-prompt {
  padding: 10px 12px;
  background: var(--panel-2);
  color: var(--warren);
  border-right: 1px solid var(--line);
}
.pk-cmd-text { padding: 10px 14px; overflow-x: auto; white-space: nowrap; }
.pk-cmd-copy {
  margin-left: auto;
  padding: 10px 12px;
  color: var(--ink-mute);
  background: transparent;
  border: 0;
  border-left: 1px solid var(--line);
  font-family: var(--mono);
  font-size: clamp(10px, 0.2vw + 10px, 14px);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  cursor: pointer;
}
.pk-cmd-copy:hover { color: var(--ink); background: var(--panel-2); }
.pk-cmd-copy.is-copied { color: var(--warren); }

/* ── Cards / panels ────────────────────────────────────────────── */
.pk-card {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: var(--r-tile);
  padding: clamp(16px, 2vw + 4px, 48px);
  position: relative;
}
.pk-card-flush { padding: 0; }
.pk-card-head {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 14px 18px;
  border-bottom: 1px solid var(--line);
  font-family: var(--mono);
  font-size: clamp(11px, 0.2vw + 10px, 16px);
  color: var(--ink-dim);
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.pk-card-head-title { color: var(--ink); }
.pk-card-body { padding: clamp(12px, 1.5vw, 32px); }

.pk-tier-card {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: var(--r-tile);
  padding: clamp(16px, 2vw, 40px);
  display: flex; flex-direction: column; gap: 14px;
  position: relative;
  overflow: hidden;
}
.pk-tier-card::before {
  content: ''; position: absolute; left: 0; top: 0; bottom: 0;
  width: 2px; background: var(--ink-faint);
}
.pk-tier-card.is-burrow::before { background: var(--burrow); }
.pk-tier-card.is-warren::before { background: var(--warren); }
.pk-tier-card.is-thump::before  { background: var(--thump); }

.pk-tier-mark {
  font-family: var(--mono);
  font-size: clamp(10px, 0.2vw + 9px, 14px);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-dim);
}
.pk-tier-name {
  font-family: var(--sans);
  font-weight: 600;
  font-size: clamp(18px, 1.5vw + 8px, 36px);
  letter-spacing: -0.015em;
  color: var(--ink);
}
.pk-tier-tag {
  font-family: var(--sans);
  font-size: clamp(12px, 0.3vw + 11px, 18px);
  color: var(--ink-dim);
  line-height: 1.5;
}

/* ── Chips + status ────────────────────────────────────────────── */
.pk-chip {
  display: inline-flex; align-items: center; gap: 6px;
  font-family: var(--mono);
  font-size: clamp(10px, 0.2vw + 10px, 15px);
  letter-spacing: 0.04em;
  padding: 4px 8px;
  border-radius: var(--r-chip);
  background: var(--panel-2);
  border: 1px solid var(--line);
  color: var(--ink-dim);
}
.pk-chip.is-ok    { color: var(--warren); border-color: rgba(111,212,154,0.25); background: var(--warren-wash); }
.pk-chip.is-warn  { color: var(--thump);  border-color: rgba(240,177, 75,0.25); background: var(--thump-wash); }
.pk-chip.is-burrow{ color: var(--burrow); border-color: rgba(124,167,255,0.25); background: var(--burrow-wash); }
.pk-chip-dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 3px color-mix(in oklch, currentColor 22%, transparent);
}
.pk-chip-dot.is-pulse { animation: pk-pulse 2.2s ease-in-out infinite; }
@keyframes pk-pulse {
  0%, 100% { box-shadow: 0 0 0 3px color-mix(in oklch, currentColor 22%, transparent); }
  50%      { box-shadow: 0 0 0 6px color-mix(in oklch, currentColor 0%,  transparent); }
}

/* ── Hairline section divider ──────────────────────────────────── */
.pk-rule {
  border: 0; border-top: 1px solid var(--line);
  margin: clamp(32px, 5vw, 96px) 0 clamp(24px, 4vw, 72px);
}

/* ── App footer ────────────────────────────────────────────────── */
.pk-footer {
  border-top: 1px solid var(--line);
  margin-top: clamp(48px, 8vw, 160px);
  padding-block: clamp(2px, 3vw, 2px) clamp(4px, 6vw, 96px);
  padding-inline: var(--pad-page);
  background: var(--bg-deep);
}
.pk-footer-inner {
  max-width: var(--container-max); margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(clamp(140px, 15vw, 280px), 1fr));
  gap: clamp(20px, 2.5vw, 64px);
}
.pk-footer h4 {
  font-family: var(--mono);
  font-size: clamp(10px, 0.2vw + 10px, 15px);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ink-mute);
  font-weight: 500;
  margin: 0 0 14px;
}
.pk-footer ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.pk-footer a { color: var(--ink-dim); font-size: clamp(12px, 0.2vw + 12px, 18px); }
.pk-footer a:hover { color: var(--ink); }
.pk-footer-copy { color: var(--ink-mute); font-size: clamp(11px, 0.2vw + 11px, 16px); margin-top: 22px; }

/* ── Selection ─────────────────────────────────────────────────── */
::selection { background: rgba(124,167,255,0.30); color: var(--ink); }

/* ── App responsive macros using auto-matching ───────────────────── */
@media (max-width: 1024px) {
  .pk-nav-inner { gap: 16px; }
}
@media (max-width: 880px) {
  .pk-nav-links { display: none; }
  .pk-nav-menu  { display: inline-flex !important; }
}
@media (max-width: 560px) {
  .pk-nav-inner { gap: 10px; }
}
.pk-nav-menu {
  display: none;
  background: transparent; border: 1px solid var(--line-strong);
  color: var(--ink); padding: 6px 10px; border-radius: var(--r-chip);
  font-family: var(--mono); font-size: 12px; cursor: pointer;
  margin-left: auto;
}

/* ═══ Marketing / document layer (formerly shared.css) ════════════════
 * Class-based components for the public site (nav, hero, pricing tiers,
 * prose docs, footer). These use distinct class names from the .pk-*
 * app system, so the two coexist in one file. Bare-element typography
 * (h1/h2/h3) is unified above — marketing and app share one type scale. */

.site-nav { border-bottom: 1px solid var(--line); background: var(--panel); }
.site-nav .inner { max-width: var(--container-max); margin: 0 auto; padding: 14px var(--pad-page); display: flex; align-items: center; gap: 24px; }
.site-nav .brand { font-weight: 700; color: var(--ink); font-size: clamp(14px, 0.5vw + 13px, 24px); letter-spacing: 0.02em; }
.site-nav .brand span { color: var(--accent); }
.site-nav .links { display: flex; gap: 20px; margin-left: auto; font-size: clamp(12px, 0.3vw + 12px, 18px); }
.site-nav .links a { color: var(--ink-dim); }
.site-nav .links a:hover { color: var(--ink); }
.site-nav .links a.active { color: var(--ink); }

.site-nav + header:not([class]):not([id]),
body > header:not([class]):not([id]):first-of-type { max-width: var(--container-narrow); margin: 0 auto; padding: clamp(24px, 5vw, 80px) var(--pad-page) 24px; }
.eyebrow { font-size: clamp(11px, 0.2vw + 10px, 15px); letter-spacing: 0.14em; text-transform: uppercase; color: var(--accent); margin: 0 0 12px; font-weight: 600; }
.lede { font-size: clamp(15px, 0.5vw + 13px, 24px); color: var(--ink-dim); max-width: var(--container-prose); margin: 0; }

main.prose { max-width: var(--container-prose); }
main.prose p { color: var(--ink-dim); margin: 0 0 16px; }
main.prose p strong { color: var(--ink); }
main.prose ul, main.prose ol { color: var(--ink-dim); padding-left: 22px; }
main.prose li { margin-bottom: 6px; }
main.prose code { background: var(--panel-2); padding: 2px 6px; border-radius: 4px; font-size: 13.5px; color: var(--ink); }
main.prose hr { border: 0; border-top: 1px solid var(--line); margin: 32px 0; }

.panel { background: var(--panel); border-radius: var(--radius); box-shadow: var(--shadow); padding: clamp(16px, 2vw, 40px); }
.note { background: var(--panel-2); border-left: 3px solid var(--accent); padding: 12px 16px; border-radius: 6px; margin: 16px 0; color: var(--ink-dim); font-size: clamp(13px, 0.3vw + 12px, 18px); }
.note strong { color: var(--ink); }

.btn { display: inline-block; padding: 10px 18px; border-radius: 8px; border: 1px solid var(--line); background: var(--panel-2); color: var(--ink); font-size: clamp(12px, 0.3vw + 12px, 18px); font-weight: 500; cursor: pointer; text-decoration: none; }
.btn:hover { border-color: var(--accent-dim); text-decoration: none; }
.btn.primary { background: var(--accent); border-color: var(--accent); color: #0e1116; }
.btn.primary:hover { background: var(--accent-dim); border-color: var(--accent-dim); }

/* Marketing footer */
body > footer { max-width: var(--container-max); margin: 48px auto 24px; padding: 24px var(--pad-page) 0; border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: 16px; align-items: center; color: var(--ink-muted); font-size: clamp(11px, 0.2vw + 11px, 16px); }
body > footer .links { display: flex; flex-wrap: wrap; gap: 16px; margin-left: auto; }
body > footer a { color: var(--ink-dim); }

.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(clamp(200px, 20vw, 360px), 1fr)); gap: var(--gap-card); }

.plans { display: grid; grid-template-columns: repeat(auto-fit, minmax(clamp(240px, 22vw, 400px), 1fr)); gap: var(--gap-card); margin-bottom: 48px; }
.plan { background: var(--panel); border-radius: var(--radius); box-shadow: var(--shadow); padding: clamp(20px, 2.5vw, 44px); }
.plan.featured { box-shadow: 0 2px 0 var(--bg-deep), 0 0 0 2px var(--accent); }
.plan h2 { font-size: clamp(20px, 1.5vw + 6px, 32px); margin: 0 0 4px; }
.plan .subtitle { color: var(--ink-dim); font-size: clamp(12px, 0.2vw + 12px, 18px); margin: 0 0 20px; }
.plan .price { margin: 0 0 20px; }
.plan .price .amount { font-size: clamp(28px, 3vw, 56px); font-weight: 700; }
.plan .price .unit { font-size: clamp(12px, 0.2vw + 12px, 16px); color: var(--ink-dim); }
.plan .price .custom { font-size: clamp(20px, 1vw + 4px, 32px); font-weight: 600; }
.plan ul.features { list-style: none; padding: 0; margin: 0 0 24px; }
.plan ul.features li { padding: 7px 0; color: var(--ink-dim); font-size: clamp(12px, 0.2vw + 12px, 18px); border-bottom: 1px solid var(--line); }
.plan ul.features li:last-child { border-bottom: 0; }
.plan ul.features li.subtle { color: var(--ink-muted); font-size: clamp(11px, 0.2vw + 11px, 15px); }
.cta-button { display: inline-block; width: 100%; padding: 11px 18px; border-radius: 8px; border: 1px solid var(--accent); background: var(--accent); color: #0e1116; font-size: clamp(13px, 0.3vw + 12px, 18px); font-weight: 600; cursor: pointer; text-align: center; text-decoration: none; }
.cta-button.secondary { background: var(--panel-2); border-color: var(--line); color: var(--ink); }
.cta-button.enterprise { background: var(--panel-2); border-color: var(--line); color: var(--ink); }

.addons .plan { max-width: var(--container-narrow); }
.faq { max-width: var(--container-prose); margin-top: 48px; }
.qa { margin-bottom: 28px; }
.qa h4 { margin: 0 0 8px; font-size: clamp(14px, 0.4vw + 12px, 22px); }
.qa p { color: var(--ink-dim); font-size: clamp(12px, 0.3vw + 11px, 18px); margin: 0; }

.counter { font-size: 12px; color: var(--ink-muted); margin-top: 12px; min-height: 18px; display: flex; align-items: center; gap: 8px; }
.counter.populated { color: var(--ink-dim); }
.counter .num { color: var(--ink); font-weight: 600; }
.pulse { width: 8px; height: 8px; border-radius: 50%; background: var(--good); display: inline-block; animation: pulse 2s ease-in-out infinite; }
@keyframes pulse { 0%,100%{opacity:0.5;transform:scale(1)} 50%{opacity:1;transform:scale(1.15)} }

/* ═══════════════════════════════════════════════════════════════════════════
   PlaneKey status mark — the logo AS a progress/notification indicator.
   ═══════════════════════════════════════════════════════════════════════════ */
.pk-mark {
  width: clamp(32px, 4vw, 96px); height: clamp(32px, 4vw, 96px); overflow: visible;
  --plane-color: var(--ink);        
  --key-color: var(--burrow);       
  --endpoint-color: var(--burrow);
  --glow-color: transparent;
  --plane-opacity: 1;
  --key-opacity: 1;
}
.pk-mark .plane, .pk-mark .bisector, .pk-mark .tooth, .pk-mark .endpoint {
  transition: stroke 180ms ease, fill 180ms ease, opacity 180ms ease,
              transform 180ms ease, filter 180ms ease;
  transform-box: fill-box; transform-origin: center;
}
.pk-mark .plane {
  fill: none; stroke: var(--plane-color); stroke-width: 1.5; stroke-linecap: square;
  opacity: var(--plane-opacity);
  filter: drop-shadow(0 0 5px color-mix(in srgb, var(--plane-color) 35%, transparent));
}
.pk-mark .bisector, .pk-mark .tooth {
  fill: none; stroke: var(--key-color); stroke-width: 1.5; stroke-linecap: square;
  opacity: var(--key-opacity); filter: drop-shadow(0 0 6px var(--glow-color));
}
.pk-mark .endpoint {
  fill: var(--endpoint-color); opacity: var(--key-opacity);
  filter: drop-shadow(0 0 6px var(--glow-color));
}

/* Product → KEY accent */
.pk-mark[data-product="planekey"]   { --key-color: var(--burrow); --endpoint-color: var(--burrow); }
.pk-mark[data-product="rootrabbit"] { --key-color: var(--pk);     --endpoint-color: var(--pk); }
.pk-mark[data-product="burrow"]     { --key-color: var(--burrow); --endpoint-color: var(--burrow); }
.pk-mark[data-product="bridge"]     { --key-color: var(--accent); --endpoint-color: var(--accent); }
.pk-mark[data-product="bean"]       { --key-color: var(--warn);   --endpoint-color: var(--warn); }

/* State → key/endpoint action color. */
.pk-mark[data-state="idle"]    { --glow-color: transparent; }  
.pk-mark[data-state="pending"] { --key-color: var(--burrow); --endpoint-color: var(--burrow); --glow-color: color-mix(in srgb, var(--burrow) 55%, transparent); }
.pk-mark[data-state="success"] { --key-color: var(--warn);   --endpoint-color: var(--warn);   --glow-color: color-mix(in srgb, var(--warn) 65%, transparent); }
.pk-mark[data-state="failure"] { --key-color: var(--bad);    --endpoint-color: var(--bad);    --glow-color: color-mix(in srgb, var(--bad) 35%, transparent); }
.pk-mark[data-state="lockout"] { --key-color: var(--muted);  --endpoint-color: var(--muted);  --plane-opacity: .55; --key-opacity: .35; }

/* Motion */
.pk-mark[data-state="pending"] .endpoint-left  { animation: pkPulseLeft 700ms ease-in-out infinite alternate; }
.pk-mark[data-state="pending"] .endpoint-right { animation: pkPulseRight 700ms ease-in-out infinite alternate; }
.pk-mark[data-state="pending"] .bisector,
.pk-mark[data-state="pending"] .tooth          { animation: pkSweep 900ms ease-in-out infinite; }
.pk-mark[data-state="success"] .endpoint       { animation: pkPop 320ms ease-out 1; }
.pk-mark[data-state="success"] .bisector,
.pk-mark[data-state="success"] .tooth          { animation: pkFlash 420ms ease-out 1; }
.pk-mark[data-state="failure"] .bisector       { animation: pkJitter 90ms linear 5; }
.pk-mark[data-state="failure"] .tooth          { animation: pkCrack 220ms ease-in-out 2 alternate; }
.pk-mark[data-state="failure"] .endpoint-left  { animation: pkSplitLeft 220ms ease-out 1 forwards; }
.pk-mark[data-state="failure"] .endpoint-right { animation: pkSplitRight 220ms ease-out 1 forwards; }
@keyframes pkPulseLeft  { from { transform: scale(.95); opacity:.65; } to { transform: scale(1.08); opacity:1; } }
@keyframes pkPulseRight { from { transform: scale(1.08); opacity:1; } to { transform: scale(.95); opacity:.65; } }
@keyframes pkSweep { 0%{opacity:.5;} 50%{opacity:1;} 100%{opacity:.6;} }
@keyframes pkFlash { 0%{opacity:.75;} 40%{opacity:1;} 100%{opacity:1;} }
@keyframes pkPop   { 0%{transform:scale(1);} 60%{transform:scale(1.18);} 100%{transform:scale(1.05);} }
@keyframes pkJitter { 0%{transform:translateX(0);} 25%{transform:translateX(-.45px);} 50%{transform:translateX(.7px);} 75%{transform:translateX(-.3px);} 100%{transform:translateX(0);} }
@keyframes pkCrack { from{transform:translateX(0);opacity:.9;} to{transform:translateX(.8px);opacity:.45;} }
@keyframes pkSplitLeft  { from{transform:translateX(0);opacity:1;} to{transform:translateX(-.75px);opacity:.55;} }
@keyframes pkSplitRight { from{transform:translateX(0);opacity:1;} to{transform:translateX(.75px);opacity:.55;} }
@media (prefers-reduced-motion: reduce) { .pk-mark * { animation: none !important; } }

/* ── Status mark: per-PART live indicators ──────────────────── */
.pk-mark .endpoint-left  { fill: var(--part-left,   var(--endpoint-color)); filter: drop-shadow(0 0 6px color-mix(in srgb, var(--part-left,   transparent) 70%, transparent)); }
.pk-mark .endpoint-right { fill: var(--part-right,  var(--endpoint-color)); filter: drop-shadow(0 0 6px color-mix(in srgb, var(--part-right,  transparent) 70%, transparent)); }
.pk-mark .bisector       { stroke: var(--part-bisector, var(--key-color));  filter: drop-shadow(0 0 6px color-mix(in srgb, var(--part-bisector, transparent) 70%, transparent)); }
.pk-mark .tooth          { stroke: var(--part-tooth,    var(--key-color));  filter: drop-shadow(0 0 6px color-mix(in srgb, var(--part-tooth,    transparent) 70%, transparent)); }

.pk-mark .endpoint-left[data-lit],
.pk-mark .endpoint-right[data-lit] { animation: pkPop 320ms ease-out 1; }
.pk-mark .bisector[data-lit], .pk-mark .tooth[data-lit] { animation: pkFlash 420ms ease-out 1; }

.pk-mark[data-live="1"]    { animation: pkBreathe 3.2s ease-in-out infinite; }
.pk-mark[data-live="warm"] { animation: pkBreatheWarm 4s ease-in-out infinite; }
@keyframes pkBreathe {
  0%, 100% { filter: drop-shadow(0 0 2px color-mix(in srgb, var(--burrow) 18%, transparent)); }
  50%      { filter: drop-shadow(0 0 8px color-mix(in srgb, var(--burrow) 45%, transparent)); }
}
@keyframes pkBreatheWarm {
  0%, 100% { filter: drop-shadow(0 0 2px color-mix(in srgb, var(--burrow-comp) 22%, transparent))
                     drop-shadow(0 0 1px color-mix(in srgb, var(--thump) 12%, transparent)); }
  50%      { filter: drop-shadow(0 0 7px  color-mix(in srgb, var(--gold-merge) 55%, transparent))
                     drop-shadow(0 0 13px color-mix(in srgb, var(--gold-merge) 30%, transparent)); }
}
@media (prefers-reduced-motion: reduce) {
  .pk-mark[data-live="1"], .pk-mark[data-live="warm"] { animation: none; }
}

/* ── Data-arrival crescendo ───────────────────────────────── */
.pk-feed {
  background: transparent;
  transition: background .45s ease, border-color .45s ease;
}
.pk-feed[data-arrived] {
  background: var(--surface);
  animation: pkFeedBloom 900ms cubic-bezier(.2, .9, .25, 1) 1;
}
.pk-feed[data-arrived] .pk-feed-v,
.pk-feed[data-arrived] .v {
  animation: pkFeedCenter 900ms cubic-bezier(.2, .9, .25, 1) 1;
  transform-origin: center;
}
@keyframes pkFeedBloom {
  0%   { box-shadow: 0 0 2px color-mix(in srgb, var(--burrow-comp) 22%, transparent),
                     0 0 1px color-mix(in srgb, var(--thump) 14%, transparent); }
  38%  { box-shadow: 0 0 18px color-mix(in srgb, var(--gold-merge) 68%, transparent),
                     0 0 34px color-mix(in srgb, var(--gold-merge) 38%, transparent); }
  100% { box-shadow: 0 0 0 transparent; }
}
@keyframes pkFeedCenter {
  0%   { transform: scale(.9);  opacity: .35; }
  40%  { transform: scale(1.07); opacity: 1; }
  100% { transform: scale(1);   opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .pk-feed { transition: none; }
  .pk-feed[data-arrived],
  .pk-feed[data-arrived] .v,
  .pk-feed[data-arrived] .pk-feed-v { animation: none; }
}

/* ── Ambient RADIANT STRENGTH signal ────────── */
.pk-mark[data-radiant] {
  --strength: 0;
  transition: filter 320ms ease;
  filter:
    drop-shadow(0 0 calc(2px + var(--strength) * 5px)
      color-mix(in srgb,
        color-mix(in srgb, var(--burrow-comp), var(--gold-merge) calc(var(--strength) * 100%))
          calc(28% + var(--strength) * 34%),
        transparent))
    drop-shadow(0 0 calc(1px + var(--strength) * 11px)
      color-mix(in srgb,
        color-mix(in srgb, var(--thump), var(--gold-merge) calc(var(--strength) * 100%))
          calc(var(--strength) * 72%),
        transparent));
}

.pk-mark[data-radiant][data-unlock] { animation: pkUnlock 900ms cubic-bezier(.2,.9,.25,1) 1; }
@keyframes pkUnlock {
  0%   { transform: scale(1);
         filter: drop-shadow(0 0 2px color-mix(in srgb, var(--burrow-comp) 30%, transparent))
                 drop-shadow(0 0 1px color-mix(in srgb, var(--thump) 20%, transparent)); }
  38%  { transform: scale(1.09);
         filter: drop-shadow(0 0 16px color-mix(in srgb, var(--gold-merge) 90%, transparent))
                 drop-shadow(0 0 30px color-mix(in srgb, var(--gold-merge) 55%, transparent)); }
  100% { transform: scale(1);
         filter: drop-shadow(0 0 calc(2px + var(--strength) * 5px)
                   color-mix(in srgb,
                     color-mix(in srgb, var(--burrow-comp), var(--gold-merge) calc(var(--strength) * 100%))
                       calc(28% + var(--strength) * 34%), transparent))
                 drop-shadow(0 0 calc(1px + var(--strength) * 11px)
                   color-mix(in srgb,
                     color-mix(in srgb, var(--thump), var(--gold-merge) calc(var(--strength) * 100%))
                       calc(var(--strength) * 72%), transparent)); }
}
@media (prefers-reduced-motion: reduce) {
  .pk-mark[data-radiant][data-unlock] { animation: none; }
  .pk-mark[data-radiant] { transition: none; }
}

/* ── page: account (moved from ui/pages/account.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-account) *, :where(body.pg-account) *::before, :where(body.pg-account) *::after { box-sizing:border-box; margin:0; padding:0; }
body:where(.pg-account), body:where(.pg-account) { min-width:0; overflow-x:hidden; }
body:where(.pg-account) {
    font-family:'Satoshi',system-ui,sans-serif; color:var(--text);
    background:
      radial-gradient(ellipse 800px 400px at 50% -10%, rgba(0,184,148,.12), transparent 60%),
      var(--bg);
    line-height:1.55; min-height:100vh;
  }
:where(body.pg-account) main { max-width:1100px; margin:0 auto; padding:28px 22px 60px; }
:where(body.pg-account) h1 { font-size:clamp(28px,4vw,36px); margin:0 0 6px; letter-spacing:-.03em; }
:where(body.pg-account) .lede { color:var(--muted); font-size:14px; max-width:64ch; margin:0 0 24px; }
:where(body.pg-account) #gate {
    background:rgba(19,19,31,.85);
    border:1px solid var(--border);
    border-radius:14px; padding:24px;
    max-width:520px; margin:24px auto;
    display:none;
  }
:where(body.pg-account) #gate.show { display:block; }
:where(body.pg-account) #gate h2 { margin:0 0 8px; font-size:18px; letter-spacing:-.02em; }
:where(body.pg-account) #gate p { color:var(--muted); font-size:13px; margin:0 0 14px; }
:where(body.pg-account) #gate input {
    width:100%; padding:9px 11px; margin-bottom:8px;
    background:var(--surface2); color:var(--text);
    border:1px solid var(--border); border-radius:7px;
    font:inherit; font-size:13px;
    font-family:'JetBrains Mono',ui-monospace,monospace;
  }
:where(body.pg-account) #gate input:focus { outline:none; border-color:var(--pk); }
:where(body.pg-account) #gate button {
    width:100%; padding:9px 12px; margin-top:6px;
    background:var(--pk); color:var(--bg); border:0; border-radius:7px;
    font:inherit; font-weight:700; font-size:13px; cursor:pointer;
  }
:where(body.pg-account) #gate button:hover { background:var(--pk); }
:where(body.pg-account) #gate .or {
    text-align:center; color:var(--dim); font-size:12px;
    margin:14px 0; letter-spacing:.06em; text-transform:uppercase;
  }
:where(body.pg-account) #gate a { color:var(--pk); text-decoration:none; }
:where(body.pg-account) #gate a:hover { text-decoration:underline; }
:where(body.pg-account) #authed { display:none; }
:where(body.pg-account) #authed.show { display:block; }
:where(body.pg-account) .grid {
    display:grid; gap:14px;
    grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));
  }
:where(body.pg-account) .card {
    background:rgba(19,19,31,.85);
    border:1px solid var(--border);
    border-radius:14px;
    padding:20px 22px;
  }
:where(body.pg-account) .card.span-2 { grid-column:1 / -1; }
:where(body.pg-account) .card h2 {
    font-size:12px; letter-spacing:.12em; text-transform:uppercase;
    color:var(--dim); font-weight:700; margin:0 0 12px;
    display:flex; align-items:center; gap:8px;
  }
:where(body.pg-account) .card h2 .pill {
    font-size:10px; padding:2px 8px; border-radius:4px;
    letter-spacing:.06em; font-weight:700;
    background:var(--pk-dim); color:var(--pk);
    border:1px solid var(--pk-border);
  }
:where(body.pg-account) .card h2 .pill.warn { background:rgba(253,203,110,.12); color:var(--warn); border-color:rgba(253,203,110,.4); }
:where(body.pg-account) .card h2 .pill.bad { background:rgba(225,112,85,.12); color:var(--bad);  border-color:rgba(225,112,85,.4); }
:where(body.pg-account) .kv { display:grid; grid-template-columns:auto 1fr; gap:5px 16px; font-size:13px; }
:where(body.pg-account) .kv .k { color:var(--muted); }
:where(body.pg-account) .kv .v {
    color:var(--text); font-variant-numeric:tabular-nums;
    word-break:break-all; overflow-wrap:anywhere;
  }
:where(body.pg-account) .kv .v.mono {
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:12px;
  }
:where(body.pg-account) .empty {
    padding:14px; text-align:center; color:var(--dim);
    font-size:13px; font-style:italic;
  }
:where(body.pg-account) .receipts { display:flex; flex-direction:column; gap:6px; max-height:280px; overflow-y:auto; }
:where(body.pg-account) .receipt {
    display:flex; align-items:center; gap:10px;
    padding:9px 12px;
    background:rgba(30,37,49,.4);
    border:1px solid var(--border);
    border-radius:8px;
    font-size:13px;
    cursor:pointer; transition:border-color .12s;
  }
:where(body.pg-account) .receipt:hover { border-color:var(--pk-border); }
:where(body.pg-account) .receipt .id {
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:11px; color:var(--accent);
    flex:0 0 80px;
  }
:where(body.pg-account) .receipt .desc { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
:where(body.pg-account) .receipt .when { color:var(--dim); font-size:11px; flex-shrink:0; }
:where(body.pg-account) .cert {
    display:flex; align-items:center; gap:10px;
    padding:8px 12px; margin-bottom:6px;
    background:rgba(30,37,49,.4);
    border:1px solid var(--border);
    border-radius:8px;
    font-size:13px;
  }
:where(body.pg-account) .cert .name { flex:1; }
:where(body.pg-account) .cert .badge {
    font-size:10px; padding:2px 7px; border-radius:4px;
    background:rgba(108,92,231,.12); color:var(--accent);
    border:1px solid rgba(108,92,231,.35);
    letter-spacing:.05em; text-transform:uppercase;
  }
:where(body.pg-account) .cert .revoke {
    background:transparent; color:var(--bad);
    border:1px solid var(--bad);
    border-radius:6px; padding:3px 10px;
    font:inherit; font-size:11px; font-weight:600; cursor:pointer;
  }
:where(body.pg-account) .cert .revoke:hover { background:rgba(225,112,85,.10); }
:where(body.pg-account) .profile-form { display:flex; flex-direction:column; gap:8px; }
:where(body.pg-account) .profile-form label {
    font-size:11px; text-transform:uppercase; letter-spacing:.08em;
    color:var(--dim); font-weight:700;
  }
:where(body.pg-account) .profile-form input, :where(body.pg-account) .profile-form textarea {
    width:100%; padding:8px 10px;
    background:var(--surface2); color:var(--text);
    border:1px solid var(--border); border-radius:6px;
    font:inherit; font-size:13px;
  }
:where(body.pg-account) .profile-form textarea { resize:vertical; min-height:60px; max-height:160px; }
:where(body.pg-account) .profile-form input:focus, :where(body.pg-account) .profile-form textarea:focus {
    outline:none; border-color:var(--pk);
  }
:where(body.pg-account) .profile-form button {
    align-self:flex-start;
    background:var(--pk); color:var(--bg); border:0;
    border-radius:7px; padding:7px 14px;
    font:inherit; font-weight:700; font-size:12px; cursor:pointer;
  }
:where(body.pg-account) .actions { display:flex; gap:8px; margin-top:12px; flex-wrap:wrap; }
:where(body.pg-account) .action-btn {
    background:transparent; color:var(--text);
    border:1px solid var(--border); border-radius:7px;
    padding:6px 12px; font:inherit; font-size:12px; cursor:pointer;
    text-decoration:none;
  }
:where(body.pg-account) .action-btn:hover { border-color:var(--pk); color:var(--pk); }
:where(body.pg-account) .action-btn.danger { color:var(--bad); border-color:var(--bad); }
:where(body.pg-account) .action-btn.danger:hover { background:rgba(225,112,85,.10); }
:where(body.pg-account) .toast {
    position:fixed; bottom:24px; right:24px;
    background:var(--pk-dim); color:var(--pk);
    border:1px solid var(--pk-border);
    border-radius:8px; padding:10px 14px;
    font-size:13px; font-weight:600;
    box-shadow:0 12px 32px rgba(9,9,15,.4);
    display:none; z-index:9000;
  }
:where(body.pg-account) .toast.show { display:block; }
:where(body.pg-account) .toast.bad { background:rgba(225,112,85,.10); color:var(--bad); border-color:rgba(225,112,85,.4); }
.pg-account-i0 { text-align:center;font-size:13px; }
.pg-account-i1 { display:flex;gap:8px;margin-top:12px;flex-wrap:wrap; }
.pg-account-i2 { flex:1;min-width:200px;background:var(--surface2);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:7px 10px;font:inherit;font-size:13px; }
.pg-account-i3 { flex:1;min-width:160px;background:var(--surface2);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:7px 10px;font:inherit;font-size:13px; }
.pg-account-i4 { border-color:var(--pk);color:var(--pk); }
.pg-account-i5 { text-align:left;padding:0 0 10px;font-style:normal; }
.pg-account-i6 { color:var(--muted);font-size:12px; }
.pg-account-i7 { color:var(--muted); }
.pg-account-i8 { background:rgba(9,9,15,.7);border:1px solid var(--pk-border);border-radius:8px;padding:12px;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:var(--muted);max-height:240px;overflow:auto;white-space:pre-wrap;word-break:break-all;margin-bottom:8px; }

/* ── page: account-costs (moved from ui/pages/account/costs.html — design-system conformance pass 2026-10-26) ── */
body:where(.pg-account-costs) { padding: 0; }
:where(body.pg-account-costs) main { max-width: 880px; margin-inline: auto; padding: 26px 22px 64px; }
:where(body.pg-account-costs) .head { display:flex; align-items:flex-start; gap:16px; flex-wrap:wrap; margin-bottom:8px; }
:where(body.pg-account-costs) .head h1 { font-size:clamp(22px,3vw,30px); }
:where(body.pg-account-costs) .head .lede { color:var(--muted); font-size:14px; margin-top:4px; max-width:60ch; }
:where(body.pg-account-costs) .tier-badge {
    margin-left:auto; flex-shrink:0;
    display:inline-flex; align-items:center; gap:8px;
    font-family:var(--mono); font-size:12px; font-weight:600;
    padding:7px 12px; border-radius:var(--r-pill);
    background:var(--burrow-wash); color:var(--burrow);
    border:1px solid rgba(124,167,255,.30); text-transform:uppercase; letter-spacing:.06em;
  }
:where(body.pg-account-costs) .tier-badge.pro { background:var(--warren-wash); color:var(--warren); border-color:rgba(111,212,154,.30); }
:where(body.pg-account-costs) .tier-badge.team { background:var(--thump-wash);  color:var(--thump);  border-color:rgba(240,177,75,.30); }
:where(body.pg-account-costs) .tier-badge.enterprise { background:rgba(108,92,231,.12); color:var(--accent); border-color:rgba(108,92,231,.35); }
:where(body.pg-account-costs) .grid { display:grid; gap:14px; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); margin-top:18px; }
:where(body.pg-account-costs) .card {
    background:var(--surface); border:1px solid var(--border);
    border-radius:var(--r-card); padding:18px 20px;
  }
:where(body.pg-account-costs) .card.span-2 { grid-column:1 / -1; }
:where(body.pg-account-costs) .card h2 {
    font-size:11px; letter-spacing:.12em; text-transform:uppercase;
    color:var(--dim); font-weight:700; margin:0 0 14px;
    display:flex; align-items:center; gap:8px;
  }
:where(body.pg-account-costs) .card h2 .hint { margin-left:auto; font-weight:500; letter-spacing:0; text-transform:none; color:var(--faint); font-size:11px; }
:where(body.pg-account-costs) .meter { margin:12px 0; }
:where(body.pg-account-costs) .meter .row { display:flex; justify-content:space-between; font-size:13px; margin-bottom:5px; }
:where(body.pg-account-costs) .meter .row .k { color:var(--text-2); }
:where(body.pg-account-costs) .meter .row .v { color:var(--muted); font-variant-numeric:tabular-nums; }
:where(body.pg-account-costs) .bar { height:7px; border-radius:6px; background:var(--surface3); overflow:hidden; }
:where(body.pg-account-costs) .bar > span { display:block; height:100%; border-radius:6px; background:var(--burrow); transition:width .4s ease; }
:where(body.pg-account-costs) .bar.warn > span { background:var(--thump); }
:where(body.pg-account-costs) .bar.full > span { background:var(--danger); }
:where(body.pg-account-costs) .unlimited { font-family:var(--mono); font-size:12px; color:var(--warren); }
:where(body.pg-account-costs) .stat { display:flex; align-items:baseline; gap:8px; margin:6px 0; }
:where(body.pg-account-costs) .stat .num { font-size:26px; font-weight:700; letter-spacing:-.02em; color:var(--text); font-variant-numeric:tabular-nums; }
:where(body.pg-account-costs) .stat .lbl { font-size:13px; color:var(--muted); }
:where(body.pg-account-costs) .mark-note { font-size:12px; color:var(--dim); line-height:1.5; margin-top:10px; }
:where(body.pg-account-costs) .kv { display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px solid var(--border); font-size:13.5px; }
:where(body.pg-account-costs) .kv:last-child { border-bottom:0; }
:where(body.pg-account-costs) .kv .k { color:var(--muted); }
:where(body.pg-account-costs) .kv .v { color:var(--text); font-variant-numeric:tabular-nums; }
:where(body.pg-account-costs) .cta { display:inline-flex; align-items:center; gap:8px; margin-top:12px;
         padding:9px 16px; border-radius:var(--r-chip); font-size:13px; font-weight:600;
         background:var(--burrow); color:var(--bg); text-decoration:none; border:0; cursor:pointer; }
:where(body.pg-account-costs) .cta.ghost { background:transparent; color:var(--burrow); border:1px solid rgba(124,167,255,.35); }
:where(body.pg-account-costs) .muted-empty { color:var(--dim); font-size:13px; font-style:italic; }
:where(body.pg-account-costs) .hide { display:none !important; }
:where(body.pg-account-costs) #signin-note { background:var(--surface2); border:1px solid var(--border); border-radius:var(--r-card);
                 padding:18px 20px; color:var(--muted); font-size:14px; }
:where(body.pg-account-costs) #signin-note a { color:var(--burrow); }
.pg-account-costs-i0 { width:0 }

/* ── page: account-index (moved from ui/pages/account/index.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-account-index) *, :where(body.pg-account-index) *::before, :where(body.pg-account-index) *::after { box-sizing:border-box; margin:0; padding:0; }
body:where(.pg-account-index), body:where(.pg-account-index) { height:100%; overflow:hidden; min-width:0; }
body:where(.pg-account-index) {
    font-family:var(--sans); color:var(--text); background:var(--bg);
    display:flex; flex-direction:column;
  }
:where(body.pg-account-index) header.hub {
    flex-shrink:0;
    border-bottom:1px solid var(--border);
    background:rgba(10,12,16,.85); backdrop-filter:blur(10px);
  }
:where(body.pg-account-index) .hub-top {
    display:flex; align-items:center; gap:14px;
    padding:12px 20px 0;
  }
:where(body.pg-account-index) .pk-brand { display:inline-flex; align-items:center; gap:9px; text-decoration:none; }
:where(body.pg-account-index) .pk-brand-mark {
    width:20px; height:20px; border-radius:5px; position:relative;
    background:linear-gradient(135deg, var(--burrow) 0%, var(--warren) 100%);
    flex-shrink:0;
  }
:where(body.pg-account-index) .pk-brand-mark::after {
    content:""; position:absolute; inset:5px;
    border:2px solid var(--bg); border-radius:2px;
    transform:rotate(45deg) scale(.72);
  }
:where(body.pg-account-index) .pk-brand-word { font-weight:700; font-size:16px; letter-spacing:-.02em; color:var(--text); }
:where(body.pg-account-index) .pk-brand-word em { font-style:normal; color:var(--burrow); }
:where(body.pg-account-index) .hub-title {
    font-size:11px; letter-spacing:.14em; text-transform:uppercase;
    color:var(--dim); font-weight:700; margin-left:4px;
  }
:where(body.pg-account-index) .hub-spacer { flex:1; }
:where(body.pg-account-index) .hub-meta { font-size:11px; color:var(--dim); font-variant-numeric:tabular-nums; }
:where(body.pg-account-index) .tabs {
    display:flex; gap:2px; padding:6px 16px 0; overflow-x:auto;
  }
:where(body.pg-account-index) .tab {
    background:none; border:0; color:var(--muted);
    font:inherit; font-size:13px; font-weight:600;
    padding:9px 14px; cursor:pointer; white-space:nowrap;
    border-bottom:2px solid transparent; border-radius:6px 6px 0 0;
  }
:where(body.pg-account-index) .tab:hover { color:var(--text); background:rgba(232,236,242,.03); }
:where(body.pg-account-index) .tab.active { color:var(--burrow); border-bottom-color:var(--burrow); }
:where(body.pg-account-index) .tab .badge {
    font-size:9px; padding:1px 5px; border-radius:4px; margin-left:6px;
    background:var(--warren-wash); color:var(--warren); font-weight:700;
    letter-spacing:.05em;
  }
:where(body.pg-account-index) main { flex:1; position:relative; overflow:hidden; }
:where(body.pg-account-index) iframe { width:100%; height:100%; border:0; display:block; background:var(--bg); }

/* ── page: attestation-index (moved from ui/pages/attestation/index.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-attestation-index) *, :where(body.pg-attestation-index) *::before, :where(body.pg-attestation-index) *::after { box-sizing:border-box; margin:0; padding:0; }
body:where(.pg-attestation-index), body:where(.pg-attestation-index) { min-width:0; overflow-x:hidden; }
body:where(.pg-attestation-index) {
    font-family:'Satoshi',system-ui,sans-serif; color:var(--text);
    background:
      radial-gradient(ellipse 800px 400px at 50% -10%, rgba(108,92,231,.10), transparent 60%),
      var(--bg);
    line-height:1.55; min-height:100vh;
  }
:where(body.pg-attestation-index) main { max-width:1100px; margin:0 auto; padding:28px 22px 60px; }
:where(body.pg-attestation-index) h1 { font-size:clamp(28px,4vw,36px); margin:0 0 6px; letter-spacing:-.03em; }
:where(body.pg-attestation-index) .lede { color:var(--muted); font-size:14px; max-width:64ch; margin:0 0 24px; }
:where(body.pg-attestation-index) .toolbar {
    display:flex; gap:8px; align-items:center; flex-wrap:wrap;
    background:rgba(19,19,31,.7);
    border:1px solid var(--border);
    border-radius:10px; padding:10px 12px;
    margin-bottom:16px;
  }
:where(body.pg-attestation-index) .toolbar label {
    font-size:11px; color:var(--dim);
    text-transform:uppercase; letter-spacing:.08em; font-weight:700;
  }
:where(body.pg-attestation-index) .toolbar input, :where(body.pg-attestation-index) .toolbar select {
    background:var(--surface); color:var(--text);
    border:1px solid var(--border); border-radius:6px;
    padding:6px 9px; font:inherit; font-size:13px;
  }
:where(body.pg-attestation-index) .toolbar input { min-width:220px; flex:1; }
:where(body.pg-attestation-index) .toolbar button {
    background:var(--pk-dim); color:var(--pk);
    border:1px solid var(--pk-border); border-radius:6px;
    padding:6px 14px; font:inherit; font-weight:700; font-size:12px;
    cursor:pointer;
  }
:where(body.pg-attestation-index) .toolbar button:hover { background:rgba(0,184,148,.18); }
:where(body.pg-attestation-index) .stats {
    display:grid; gap:10px;
    grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
    margin-bottom:18px;
  }
:where(body.pg-attestation-index) .stat {
    background:rgba(19,19,31,.7);
    border:1px solid var(--border);
    border-radius:10px;
    padding:12px 14px;
  }
:where(body.pg-attestation-index) .stat .k {
    font-size:10px; text-transform:uppercase; letter-spacing:.1em;
    color:var(--dim); font-weight:700; margin-bottom:4px;
  }
:where(body.pg-attestation-index) .stat .v {
    font-size:22px; font-weight:700;
    font-variant-numeric:tabular-nums; letter-spacing:-.02em;
  }
:where(body.pg-attestation-index) .stat.pending .v { color:var(--warn); }
:where(body.pg-attestation-index) .stat.approved .v { color:var(--pk); }
:where(body.pg-attestation-index) .stat.rejected .v { color:var(--bad); }
:where(body.pg-attestation-index) .stat.error .v { color:var(--bad); }
:where(body.pg-attestation-index) .timeline {
    background:rgba(19,19,31,.85);
    border:1px solid var(--border);
    border-radius:14px;
    overflow:hidden;
  }
:where(body.pg-attestation-index) .timeline .empty {
    padding:24px; text-align:center; color:var(--dim);
    font-size:13px; font-style:italic;
  }
:where(body.pg-attestation-index) .change-row {
    display:flex; gap:12px; align-items:center;
    padding:12px 16px;
    border-bottom:1px solid var(--border);
    cursor:pointer; transition:background .12s;
  }
:where(body.pg-attestation-index) .change-row:last-child { border-bottom:0; }
:where(body.pg-attestation-index) .change-row:hover { background:rgba(30,37,49,.4); }
:where(body.pg-attestation-index) .change-row .state {
    flex:0 0 80px;
    font-size:11px; font-weight:700;
    padding:4px 0; text-align:center;
    border-radius:5px; letter-spacing:.05em;
    text-transform:uppercase;
  }
:where(body.pg-attestation-index) .state.pending { background:rgba(253,203,110,.12); color:var(--warn); border:1px solid rgba(253,203,110,.35); }
:where(body.pg-attestation-index) .state.running { background:rgba(108,92,231,.12); color:var(--accent); border:1px solid rgba(108,92,231,.35); }
:where(body.pg-attestation-index) .state.approved { background:var(--pk-dim); color:var(--pk); border:1px solid var(--pk-border); }
:where(body.pg-attestation-index) .state.rejected { background:rgba(225,112,85,.12); color:var(--bad); border:1px solid rgba(225,112,85,.35); }
:where(body.pg-attestation-index) .state.error { background:rgba(225,112,85,.12); color:var(--bad); border:1px solid rgba(225,112,85,.35); }
:where(body.pg-attestation-index) .change-row .body { flex:1; min-width:0; }
:where(body.pg-attestation-index) .change-row .body .head {
    font-size:13px; font-weight:600;
    overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  }
:where(body.pg-attestation-index) .change-row .body .head code {
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:12px; color:var(--accent);
    background:rgba(108,92,231,.08); padding:1px 6px; border-radius:4px;
  }
:where(body.pg-attestation-index) .change-row .body .sub {
    font-size:12px; color:var(--muted); margin-top:2px;
  }
:where(body.pg-attestation-index) .change-row .chevron { color:var(--dim); flex-shrink:0; }
:where(body.pg-attestation-index) .detail {
    margin-top:18px; display:none;
    background:rgba(19,19,31,.85);
    border:1px solid var(--border);
    border-radius:14px;
    padding:20px 22px;
  }
:where(body.pg-attestation-index) .detail.show { display:block; }
:where(body.pg-attestation-index) .detail h3 {
    font-size:14px; letter-spacing:-.01em; margin:0 0 14px;
  }
:where(body.pg-attestation-index) .detail h3 code {
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:12px; background:rgba(30,37,49,.5);
    padding:2px 8px; border-radius:4px; color:var(--accent);
  }
:where(body.pg-attestation-index) .detail .grid {
    display:grid; grid-template-columns:auto 1fr; gap:6px 16px;
    font-size:13px;
  }
:where(body.pg-attestation-index) .detail .grid .k { color:var(--muted); }
:where(body.pg-attestation-index) .detail .grid .v {
    color:var(--text); font-variant-numeric:tabular-nums;
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:12px; word-break:break-all;
  }
:where(body.pg-attestation-index) .detail .blob {
    margin-top:14px;
    background:rgba(9,9,15,.7);
    border:1px solid var(--border);
    border-radius:8px; padding:10px 12px;
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:11px; color:var(--muted);
    max-height:200px; overflow:auto;
    white-space:pre-wrap; word-break:break-all;
  }
:where(body.pg-attestation-index) .detail .blob-label {
    font-size:10px; color:var(--dim);
    text-transform:uppercase; letter-spacing:.08em; font-weight:700;
    margin:14px 0 4px;
  }
:where(body.pg-attestation-index) .note {
    background:rgba(253,203,110,.08); color:var(--warn);
    border:1px solid rgba(253,203,110,.3);
    border-radius:8px; padding:10px 12px; margin-top:12px;
    font-size:12px;
  }
.pg-attestation-index-i0 { color:var(--muted); }

/* ── page: billing-return (moved from ui/pages/billing-return.html — design-system conformance pass 2026-10-26) ── */
.pg-billing-return-i0 { max-width:680px;margin:0 auto; }
.pg-billing-return-i1 { margin-top:0; }
.pg-billing-return-i2 { color:var(--ink-dim);padding-left:22px; }
.pg-billing-return-i3 { margin-top:24px;padding:16px;background:var(--panel-2);border-radius:8px;font-family:ui-monospace,monospace;font-size:13px;color:var(--ink-dim); }
.pg-billing-return-i4 { margin-top:24px;display:flex;gap:8px;flex-wrap:wrap; }

/* ── page: bridge-explorer-index (moved from ui/pages/bridge-explorer/index.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-bridge-explorer-index) *, :where(body.pg-bridge-explorer-index) *::before, :where(body.pg-bridge-explorer-index) *::after { box-sizing:border-box; margin:0; padding:0; }
body:where(.pg-bridge-explorer-index), body:where(.pg-bridge-explorer-index) { min-width:0; overflow-x:hidden; }
body:where(.pg-bridge-explorer-index) {
    font-family:'Satoshi',system-ui,sans-serif; color:var(--text);
    background:
      radial-gradient(ellipse 800px 400px at 50% -10%, rgba(108,92,231,.10), transparent 60%),
      var(--bg);
    line-height:1.55; min-height:100vh;
  }
:where(body.pg-bridge-explorer-index) main { max-width:1180px; margin:0 auto; padding:28px 22px 60px; }
:where(body.pg-bridge-explorer-index) h1 { font-size:clamp(28px,4vw,36px); margin:0 0 6px; letter-spacing:-.03em; }
:where(body.pg-bridge-explorer-index) .lede { color:var(--muted); font-size:14px; max-width:72ch; margin:0 0 22px; }
:where(body.pg-bridge-explorer-index) .stats {
    display:grid; gap:10px;
    grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
    margin-bottom:18px;
  }
:where(body.pg-bridge-explorer-index) .stat {
    background:rgba(19,19,31,.85);
    border:1px solid var(--border);
    border-radius:10px;
    padding:12px 14px;
  }
:where(body.pg-bridge-explorer-index) .stat .k {
    font-size:10px; text-transform:uppercase; letter-spacing:.1em;
    color:var(--dim); font-weight:700; margin-bottom:4px;
  }
:where(body.pg-bridge-explorer-index) .stat .v {
    font-size:22px; font-weight:700;
    font-variant-numeric:tabular-nums; letter-spacing:-.02em;
  }
:where(body.pg-bridge-explorer-index) .stat.consumed .v { color:var(--pk); }
:where(body.pg-bridge-explorer-index) .stat.loose .v { color:var(--warn); }
:where(body.pg-bridge-explorer-index) .stat.ui-facing .v { color:var(--accent); }
:where(body.pg-bridge-explorer-index) .stat.coverage .v { color:var(--text); }
:where(body.pg-bridge-explorer-index) .toolbar {
    display:flex; gap:8px; align-items:center; flex-wrap:wrap;
    margin-bottom:18px;
  }
:where(body.pg-bridge-explorer-index) .toolbar input, :where(body.pg-bridge-explorer-index) .toolbar select {
    background:var(--surface); color:var(--text);
    border:1px solid var(--border); border-radius:6px;
    padding:7px 10px; font:inherit; font-size:13px;
  }
:where(body.pg-bridge-explorer-index) .toolbar input { flex:1; min-width:200px; }
:where(body.pg-bridge-explorer-index) .toolbar label.toggle {
    display:flex; align-items:center; gap:6px;
    font-size:12px; color:var(--muted); cursor:pointer;
    padding:6px 10px; border:1px solid var(--border); border-radius:6px;
  }
:where(body.pg-bridge-explorer-index) .toolbar label.toggle input { accent-color:var(--pk); }
:where(body.pg-bridge-explorer-index) .layout {
    display:grid; gap:14px;
    grid-template-columns:220px 1fr;
  }
@media (max-width:760px) {
:where(body.pg-bridge-explorer-index) .layout { grid-template-columns:1fr; }
}
:where(body.pg-bridge-explorer-index) .module-list {
    background:rgba(19,19,31,.85);
    border:1px solid var(--border);
    border-radius:14px;
    padding:14px;
    height:fit-content;
    max-height:80vh; overflow-y:auto;
  }
:where(body.pg-bridge-explorer-index) .module-item {
    display:flex; align-items:center; justify-content:space-between;
    padding:7px 10px; margin-bottom:3px;
    background:transparent; border:1px solid transparent;
    border-radius:7px; cursor:pointer;
    font-size:13px; color:var(--text);
    text-align:left; width:100%; font:inherit;
  }
:where(body.pg-bridge-explorer-index) .module-item:hover { background:rgba(30,37,49,.4); border-color:var(--border); }
:where(body.pg-bridge-explorer-index) .module-item.active { background:rgba(108,92,231,.12); border-color:rgba(108,92,231,.4); color:var(--accent); }
:where(body.pg-bridge-explorer-index) .module-item .name { font-weight:600; flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; }
:where(body.pg-bridge-explorer-index) .module-item .count {
    font-size:11px; padding:1px 6px; border-radius:6px;
    background:rgba(30,37,49,.6); color:var(--muted);
    font-variant-numeric:tabular-nums; flex-shrink:0; margin-left:6px;
  }
:where(body.pg-bridge-explorer-index) .routes-card {
    background:rgba(19,19,31,.85);
    border:1px solid var(--border);
    border-radius:14px;
    padding:18px 20px;
  }
:where(body.pg-bridge-explorer-index) .routes-header h2 {
    font-size:16px; margin:0; letter-spacing:-.02em;
  }
:where(body.pg-bridge-explorer-index) .routes-header p { font-size:12px; color:var(--muted); margin:4px 0 14px; }
:where(body.pg-bridge-explorer-index) .route {
    border-top:1px solid var(--border); padding:14px 0;
  }
:where(body.pg-bridge-explorer-index) .route:first-of-type { border-top:0; padding-top:0; }
:where(body.pg-bridge-explorer-index) .route-head {
    display:flex; align-items:center; gap:10px; flex-wrap:wrap;
  }
:where(body.pg-bridge-explorer-index) .verb {
    flex:0 0 56px; text-align:center;
    font-size:10px; font-weight:700;
    padding:3px 0; border-radius:5px; letter-spacing:.06em;
  }
:where(body.pg-bridge-explorer-index) .verb.GET { background:rgba(0,184,148,.10); color:var(--pk); border:1px solid var(--pk-border); }
:where(body.pg-bridge-explorer-index) .verb.POST { background:rgba(108,92,231,.10); color:var(--accent); border:1px solid rgba(108,92,231,.4); }
:where(body.pg-bridge-explorer-index) .verb.PATCH { background:rgba(253,203,110,.10); color:var(--warn); border:1px solid rgba(253,203,110,.4); }
:where(body.pg-bridge-explorer-index) .verb.DELETE { background:rgba(225,112,85,.10); color:var(--bad); border:1px solid rgba(225,112,85,.4); }
:where(body.pg-bridge-explorer-index) .verb.PUT { background:rgba(253,203,110,.10); color:var(--warn); border:1px solid rgba(253,203,110,.4); }
:where(body.pg-bridge-explorer-index) .path {
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:13px; font-weight:600;
    flex:1; word-break:break-all;
  }
:where(body.pg-bridge-explorer-index) .badge {
    font-size:10px; padding:2px 7px; border-radius:5px;
    letter-spacing:.05em; text-transform:uppercase;
    background:rgba(30,37,49,.6); color:var(--muted);
    border:1px solid var(--border); font-weight:600;
  }
:where(body.pg-bridge-explorer-index) .badge.consumed { background:var(--pk-dim); color:var(--pk); border-color:var(--pk-border); }
:where(body.pg-bridge-explorer-index) .badge.webhook { color:var(--warn); border-color:rgba(253,203,110,.4); }
:where(body.pg-bridge-explorer-index) .badge.machine_polling { color:var(--accent); border-color:rgba(108,92,231,.4); }
:where(body.pg-bridge-explorer-index) .badge.federation { color:var(--dim); }
:where(body.pg-bridge-explorer-index) .badge.ui_facing { color:var(--warn); border-color:rgba(253,203,110,.4); }
:where(body.pg-bridge-explorer-index) .tier {
    font-size:9px; padding:2px 7px; border-radius:5px;
    letter-spacing:.06em; text-transform:uppercase; font-weight:700;
    border:1px solid;
  }
:where(body.pg-bridge-explorer-index) .tier.public { color:var(--dim); border-color:var(--border); background:rgba(30,37,49,.6); }
:where(body.pg-bridge-explorer-index) .tier.customer { color:var(--pk); border-color:var(--pk-border); background:var(--pk-dim); }
:where(body.pg-bridge-explorer-index) .tier.enterprise { color:var(--accent); border-color:rgba(108,92,231,.4); background:rgba(108,92,231,.10); }
:where(body.pg-bridge-explorer-index) .tier.internal { color:var(--bad); border-color:rgba(225,112,85,.4); background:rgba(225,112,85,.10); }
:where(body.pg-bridge-explorer-index) .tier.machine { color:var(--warn); border-color:rgba(253,203,110,.4); background:rgba(253,203,110,.10); }
:where(body.pg-bridge-explorer-index) .route-body {
    margin-top:10px; padding:10px 12px;
    background:rgba(30,37,49,.4);
    border:1px solid var(--border); border-radius:8px;
    display:none;
  }
:where(body.pg-bridge-explorer-index) .route.open .route-body { display:block; }
:where(body.pg-bridge-explorer-index) .route-body .src {
    font-size:11px; color:var(--dim);
    font-family:'JetBrains Mono',ui-monospace,monospace;
    margin-bottom:8px;
  }
:where(body.pg-bridge-explorer-index) .field-list {
    display:grid; grid-template-columns:auto 1fr; gap:4px 12px;
    font-size:12px; margin-top:8px;
  }
:where(body.pg-bridge-explorer-index) .field-list .fk { color:var(--muted); font-weight:600; }
:where(body.pg-bridge-explorer-index) .field-list .fv { color:var(--text); font-family:'JetBrains Mono',ui-monospace,monospace; font-size:11px; }
:where(body.pg-bridge-explorer-index) .field-list .ft { color:var(--accent); }
:where(body.pg-bridge-explorer-index) .invoke-form { display:flex; flex-direction:column; gap:6px; margin-top:10px; }
:where(body.pg-bridge-explorer-index) .invoke-form .form-row {
    display:flex; gap:6px; align-items:center; font-size:12px;
  }
:where(body.pg-bridge-explorer-index) .invoke-form .form-row label {
    flex:0 0 120px; color:var(--muted);
    font-family:'JetBrains Mono',ui-monospace,monospace; font-size:11px;
  }
:where(body.pg-bridge-explorer-index) .invoke-form .form-row input, :where(body.pg-bridge-explorer-index) .invoke-form textarea {
    flex:1; min-width:0;
    background:var(--surface2); color:var(--text);
    border:1px solid var(--border); border-radius:5px;
    padding:5px 8px; font:inherit; font-size:12px;
    font-family:'JetBrains Mono',ui-monospace,monospace;
  }
:where(body.pg-bridge-explorer-index) .invoke-form textarea { min-height:60px; resize:vertical; }
:where(body.pg-bridge-explorer-index) .invoke-actions { display:flex; gap:6px; margin-top:8px; }
:where(body.pg-bridge-explorer-index) .invoke-actions button {
    background:var(--pk); color:var(--bg); border:0;
    border-radius:6px; padding:6px 14px;
    font:inherit; font-weight:700; font-size:12px; cursor:pointer;
  }
:where(body.pg-bridge-explorer-index) .invoke-actions button:hover { background:var(--pk); }
:where(body.pg-bridge-explorer-index) .invoke-actions button.copy {
    background:transparent; color:var(--muted);
    border:1px solid var(--border);
  }
:where(body.pg-bridge-explorer-index) .response {
    margin-top:10px; background:rgba(9,9,15,.7);
    border:1px solid var(--border); border-radius:6px;
    padding:8px 10px; max-height:280px; overflow:auto;
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:11px; color:var(--muted);
    white-space:pre-wrap; word-break:break-all;
  }
:where(body.pg-bridge-explorer-index) .response.ok { border-color:var(--pk-border); color:var(--pk); }
:where(body.pg-bridge-explorer-index) .response.bad { border-color:rgba(225,112,85,.4); color:var(--bad); }
:where(body.pg-bridge-explorer-index) .meta-note {
    font-size:11px; color:var(--dim); margin-top:14px;
  }
:where(body.pg-bridge-explorer-index) .meta-note a { color:var(--pk); text-decoration:none; }
.pg-bridge-explorer-index-i0 { display:none;background:rgba(225,112,85,.08);border:1px solid rgba(225,112,85,.35);border-radius:10px;padding:12px 14px;margin-bottom:14px;font-size:13px;color:var(--bad); }
.pg-bridge-explorer-index-i1 { font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--dim);font-weight:700;margin-bottom:10px; }
.pg-bridge-explorer-index-i2 { padding:24px;text-align:center;color:var(--dim);font-style:italic; }
.pg-bridge-explorer-index-i3 { padding:18px;text-align:center;color:var(--dim);font-style:italic; }
.pg-bridge-explorer-index-i4 { font-size:11px;color:var(--muted);margin-bottom:6px; }
.pg-bridge-explorer-index-i5 { color:var(--accent); }
.pg-bridge-explorer-index-i6 { display:none; }
.pg-bridge-explorer-index-i7 { padding:24px;text-align:center;color:var(--bad); }
.pg-bridge-explorer-index-i8 { padding:24px;text-align:center;color:var(--muted); }

/* ── page: bridge-index (moved from ui/pages/bridge-index.html — design-system conformance pass 2026-10-26) ── */
.pg-bridge-index-i0 { margin-top:24px;display:flex;gap:12px;flex-wrap:wrap; }
.pg-bridge-index-i1 { margin-bottom:48px; }
.pg-bridge-index-i2 { margin-top:0; }
.pg-bridge-index-i3 { color:var(--ink-dim);font-size:14.5px;margin:0; }
.pg-bridge-index-i4 { color:var(--ink-dim);max-width:760px;padding-left:22px; }
.pg-bridge-index-i5 { color:var(--ink); }
.pg-bridge-index-i6 { color:var(--ink-dim);max-width:760px; }

/* ── page: changelog (moved from ui/pages/changelog.html — design-system conformance pass 2026-10-26) ── */
.pg-changelog-i0 { color:var(--ink-dim); }
.pg-changelog-i1 { margin-bottom:16px; }
.pg-changelog-i2 { display:flex;align-items:baseline;gap:12px;flex-wrap:wrap; }
.pg-changelog-i3 { margin:0; }
.pg-changelog-i4 { font-size:14px;color:var(--accent); }
.pg-changelog-i5 { font-size:12px;color:var(--ink-muted);margin-left:auto; }
.pg-changelog-i6 { color:var(--ink-dim);margin:12px 0; }
.pg-changelog-i7 { color:var(--ink-dim);font-size:14px;padding-left:22px; }
.pg-changelog-i8 { color:var(--warn); }

/* ── page: example (moved from ui/pages/example.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-example) here. Prefer tokens (var(--…)) over
       raw hex so you inherit the theme + the AA-safe ink ramp automatically. -->
  <style>
    .demo-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
:where(body.pg-example) .demo-grid { display: grid; gap: 14px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
:where(body.pg-example) .demo-stat { border: 1px solid var(--border); border-radius: 12px; padding: 14px 16px; }
:where(body.pg-example) .demo-stat .k { font-size: 10px; text-transform: uppercase; letter-spacing: .1em; color: var(--dim); font-weight: 700; margin-bottom: 5px; }
:where(body.pg-example) .demo-stat .v { font-size: 24px; font-weight: 700; font-variant-numeric: tabular-nums; }
:where(body.pg-example) table.pk-tbl { width: 100%; border-collapse: collapse; font-size: 14px; }
:where(body.pg-example) table.pk-tbl th, :where(body.pg-example) table.pk-tbl td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--border); }
:where(body.pg-example) table.pk-tbl th { color: var(--muted); font-weight: 600; font-size: 12px; text-transform: uppercase; letter-spacing: .05em; }
:where(body.pg-example) table.pk-tbl td { color: var(--ink); }
:where(body.pg-example) .pk-field { display: flex; flex-direction: column; gap: 6px; max-width: 320px; }
:where(body.pg-example) .pk-field label { font-size: 13px; color: var(--muted); }
:where(body.pg-example) .pk-input { background: var(--surface); color: var(--ink); border: 1px solid var(--border); border-radius: 8px; padding: 9px 11px; font: inherit; font-size: 14px; }
:where(body.pg-example) .pk-input:focus { outline: 2px solid var(--burrow); outline-offset: 1px; border-color: var(--burrow); }
:where(body.pg-example) section { margin-block: 40px; }
:where(body.pg-example) h2 { font-size: clamp(20px, 2.4vw, 26px); letter-spacing: -.02em; margin: 6px 0 14px; }
.pg-example-i0 { font-size:clamp(30px,4.5vw,42px);letter-spacing:-.03em;margin:0 0 8px; }
.pg-example-i1 { color:var(--ink-dim);max-width:70ch; }
.pg-example-i2 { width:auto; }
.pg-example-i3 { color:var(--ink-dim);margin:8px 0 0; }
.pg-example-i4 { color:var(--ink-dim); }
.pg-example-i5 { box-shadow:inset 0 2px 0 var(--thump); }
.pg-example-i6 { box-shadow:inset 0 2px 0 var(--burrow); }
.pg-example-i7 { box-shadow:inset 0 2px 0 var(--pk); }
.pg-example-i8 { font-size:14px;color:var(--ink-dim); }
.pg-example-i9 { margin-top:12px; }
.pg-example-i10 { margin-top:14px; }
.pg-example-i11 { display:inline-block;vertical-align:middle; }
.pg-example-i12 { margin-top:18px; }

/* ── page: financial-ops-index (moved from ui/pages/financial-ops/index.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-financial-ops-index) * { box-sizing: border-box; }
body:where(.pg-financial-ops-index), body:where(.pg-financial-ops-index) { min-width: 0; overflow-x: hidden; margin: 0; }
body:where(.pg-financial-ops-index) {
    font-family: 'Satoshi', Inter, system-ui, sans-serif;
    background:
      radial-gradient(ellipse 800px 400px at 50% -10%, rgba(0,184,148,.16), transparent 60%),
      linear-gradient(rgba(30,37,49,.45) 1px, transparent 1px) 0 0 / 48px 48px,
      linear-gradient(90deg, rgba(30,37,49,.45) 1px, transparent 1px) 0 0 / 48px 48px,
      var(--bg);
    color: var(--text); line-height: 1.55; min-height: 100vh;
  }
:where(body.pg-financial-ops-index) img, :where(body.pg-financial-ops-index) svg, :where(body.pg-financial-ops-index) canvas { max-width: 100%; height: auto; }
:where(body.pg-financial-ops-index) .brand-strip {
    border-bottom: 1px solid var(--pk-border);
    background: rgba(9,9,15,.95); backdrop-filter: blur(20px);
    position: sticky; top: 0; z-index: 10;
    box-shadow: 0 6px 30px rgba(0,184,148,.07);
  }
:where(body.pg-financial-ops-index) .brand-strip .wrap {
    max-width: 1180px; margin: 0 auto;
    display: flex; align-items: center; justify-content: space-between;
    gap: 16px; padding: 14px 22px; font-weight: 800; font-size: 17px;
  }
:where(body.pg-financial-ops-index) .brand-strip .brand span { color: var(--pk); }
:where(body.pg-financial-ops-index) .pill {
    display: inline-flex; align-items: center; gap: 8px;
    border: 1px solid var(--pk-border); background: var(--pk-dim);
    color: var(--pk); border-radius: 999px;
    padding: 6px 12px; font-size: 11px; font-weight: 700;
    text-transform: uppercase; letter-spacing: .07em;
  }
:where(body.pg-financial-ops-index) .pill.warn { color: var(--warn); border-color: rgba(253,203,110,.3); background: rgba(253,203,110,.08); }
:where(body.pg-financial-ops-index) .container { max-width: 1180px; margin: 0 auto; padding: 36px 22px 48px; }
:where(body.pg-financial-ops-index) h1 { font-size: clamp(28px, 4vw, 44px); letter-spacing: -.04em; margin: 8px 0 12px; }
:where(body.pg-financial-ops-index) .lede { color: var(--muted); font-size: 16px; max-width: 760px; }
:where(body.pg-financial-ops-index) .section-title {
    font-size: 12px; text-transform: uppercase; letter-spacing: .12em;
    color: var(--muted); margin: 36px 0 14px;
  }
:where(body.pg-financial-ops-index) .grid { display: grid; gap: 14px; }
:where(body.pg-financial-ops-index) .grid.cols-4 { grid-template-columns: repeat(4, 1fr); }
:where(body.pg-financial-ops-index) .grid.cols-3 { grid-template-columns: repeat(3, 1fr); }
:where(body.pg-financial-ops-index) .grid.cols-2 { grid-template-columns: repeat(2, 1fr); }
:where(body.pg-financial-ops-index) .card {
    background: linear-gradient(180deg, rgba(30,37,49,.95), rgba(19,19,31,.95));
    border: 1px solid var(--border); border-radius: 16px; padding: 18px;
    box-shadow: 0 14px 50px rgba(9,9,15,.32);
  }
:where(body.pg-financial-ops-index) .card.accent { border-color: var(--pk-border); box-shadow: 0 14px 50px rgba(9,9,15,.32), 0 0 30px rgba(0,184,148,.06); }
:where(body.pg-financial-ops-index) .card .label {
    font-size: 11px; text-transform: uppercase; letter-spacing: .1em;
    color: var(--muted); font-weight: 700;
  }
:where(body.pg-financial-ops-index) .card .stat {
    font-size: 28px; font-weight: 700; margin: 8px 0 6px;
    font-variant-numeric: tabular-nums;
  }
:where(body.pg-financial-ops-index) .card .hint { font-size: 12px; color: var(--dim); }
:where(body.pg-financial-ops-index) .row { display: flex; justify-content: space-between; padding: 6px 0; border-bottom: 1px dashed var(--border); font-size: 13px; }
:where(body.pg-financial-ops-index) .row:last-child { border-bottom: 0; }
:where(body.pg-financial-ops-index) .row .k { color: var(--muted); }
:where(body.pg-financial-ops-index) .row .v { font-family: ui-monospace, monospace; font-variant-numeric: tabular-nums; }
:where(body.pg-financial-ops-index) .route-hint {
    color: var(--dim); font-family: ui-monospace, monospace;
    font-size: 11px; margin-top: 10px;
  }
:where(body.pg-financial-ops-index) .equation {
    background: var(--surface); border: 1px solid var(--border);
    border-radius: 10px; padding: 12px 14px; margin: 6px 0;
    font-family: ui-monospace, monospace; font-size: 13px;
    color: var(--text);
  }
:where(body.pg-financial-ops-index) .equation .lhs { color: var(--pk); font-weight: 700; margin-right: 6px; }
:where(body.pg-financial-ops-index) .equation .desc { color: var(--muted); font-size: 12px; display: block; margin-top: 4px; }
@media (max-width: 980px) {
:where(body.pg-financial-ops-index) .grid.cols-4 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 700px) {
:where(body.pg-financial-ops-index) .grid.cols-4, :where(body.pg-financial-ops-index) .grid.cols-3, :where(body.pg-financial-ops-index) .grid.cols-2 { grid-template-columns: 1fr; }
:where(body.pg-financial-ops-index) .container { padding: 24px 16px 32px; }
:where(body.pg-financial-ops-index) .card { padding: 14px; }
:where(body.pg-financial-ops-index) .brand-strip .wrap { padding: 12px 16px; font-size: 15px; }
}
.pg-financial-ops-index-i0 { color:var(--pk); }
.pg-financial-ops-index-i1 { margin-top:14px; }
.pg-financial-ops-index-i2 { font-size:14px;margin:0 0 14px; }
.pg-financial-ops-index-i3 { font-size:14px;margin:0 0 12px; }
.pg-financial-ops-index-i4 { color:var(--muted);font-size:13px;line-height:1.7;padding-left:22px;margin:0; }

/* ── page: forgot-password (moved from ui/pages/forgot-password.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-forgot-password) :where(html, body) { min-width:0; overflow-x:hidden; }
:where(body.pg-forgot-password) main.pk-wrap { max-width: 480px; padding-block: 48px 60px; }
:where(body.pg-forgot-password) .step { margin: 10px 0; }
:where(body.pg-forgot-password) .step code { background: var(--panel-2); padding: 2px 6px; border-radius: var(--r-chip); }
.pg-forgot-password-i0 { margin-top:20px; }
.pg-forgot-password-i1 { font-size:15px;margin:0 0 10px; }
.pg-forgot-password-i2 { color:var(--ink-dim);font-size:14px; }
.pg-forgot-password-i3 { margin-top:14px; }
.pg-forgot-password-i4 { text-decoration:none; }
.pg-forgot-password-i5 { margin-top:20px;font-size:13px; }

/* ── page: github-app-install (moved from ui/pages/github-app-install.html — design-system conformance pass 2026-10-26) ── */
body:where(.pg-github-app-install) { font-family: ui-sans-serif, system-ui, sans-serif; max-width: 720px;
           margin: 60px auto; padding: 0 24px; color: var(--bg); line-height: 1.55; }
:where(body.pg-github-app-install) h1 { font-size: 28px; margin-bottom: 8px; }
:where(body.pg-github-app-install) .lede { color: var(--border-strong); margin-top: 0; }
:where(body.pg-github-app-install) .step { padding: 16px 18px; background: var(--text); border-left: 3px solid var(--border-strong);
            border-radius: 4px; margin: 18px 0; }
:where(body.pg-github-app-install) .step h2 { font-size: 16px; margin: 0 0 6px; color: var(--border-strong); }
:where(body.pg-github-app-install) code { background: var(--text); padding: 2px 6px; border-radius: 3px;
           font-family: ui-monospace, monospace; }
:where(body.pg-github-app-install) pre { background: var(--surface); color: var(--text); padding: 14px 16px; border-radius: 6px;
          overflow-x: auto; line-height: 1.4; }
.pg-github-app-install-i0 { margin-top: 36px; color: var(--border-strong); }

/* ── page: home (moved from ui/pages/home.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-home) *, :where(body.pg-home) *::before, :where(body.pg-home) *::after { box-sizing:border-box; margin:0; padding:0; }
body:where(.pg-home), body:where(.pg-home) { min-width:0; overflow-x:hidden; }
body:where(.pg-home) {
    font-family:'Satoshi',system-ui,sans-serif;
    color:var(--text); background:
      radial-gradient(ellipse 800px 400px at 50% -10%, rgba(0,184,148,.14), transparent 60%),
      radial-gradient(circle at 90% 80%, rgba(108,92,231,.10), transparent 45%),
      var(--bg);
    line-height:1.55; min-height:100vh;
  }
:where(body.pg-home) main { max-width:1100px; margin:0 auto; padding:28px 22px 60px; }
:where(body.pg-home) h1 {
    font-size:clamp(28px,4vw,38px); margin:0 0 6px;
    letter-spacing:-.03em;
  }
:where(body.pg-home) .lede { color:var(--muted); font-size:15px; max-width:64ch; margin:0 0 28px; }
:where(body.pg-home) .grid {
    display:grid; gap:16px;
    grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));
  }
:where(body.pg-home) .card {
    background:rgba(19,19,31,.85);
    border:1px solid var(--border);
    border-radius:14px;
    padding:20px 22px;
    box-shadow:0 12px 36px rgba(9,9,15,.22);
  }
:where(body.pg-home) .card.span-2 { grid-column:1 / -1; }
:where(body.pg-home) .card h2 {
    font-size:13px; letter-spacing:.12em; text-transform:uppercase;
    color:var(--dim); font-weight:700; margin:0 0 14px;
    display:flex; align-items:center; gap:8px;
  }
:where(body.pg-home) .card h2 .pill {
    font-size:10px; padding:2px 8px; border-radius:4px;
    letter-spacing:.06em; font-weight:700;
    background:var(--pk-dim); color:var(--pk);
    border:1px solid var(--pk-border);
  }
:where(body.pg-home) .card h2 .pill.warn {
    background:rgba(253,203,110,.12); color:var(--warn);
    border-color:rgba(253,203,110,.4);
  }
:where(body.pg-home) .card h2 .pill.bad {
    background:rgba(225,112,85,.12); color:var(--bad);
    border-color:rgba(225,112,85,.4);
  }
:where(body.pg-home) .identity-row {
    display:flex; gap:18px; align-items:center; flex-wrap:wrap;
  }
:where(body.pg-home) .identity-avatar {
    flex:0 0 64px; width:64px; height:64px; border-radius:14px;
    background:linear-gradient(135deg, var(--pk) 0%, var(--accent) 100%);
    box-shadow:0 8px 28px rgba(0,184,148,.30);
    display:flex; align-items:center; justify-content:center;
    color:var(--bg); font-weight:800; font-size:22px;
  }
:where(body.pg-home) .identity-meta { flex:1; min-width:0; }
:where(body.pg-home) .identity-meta .name {
    font-size:18px; font-weight:700; letter-spacing:-.02em; margin-bottom:2px;
  }
:where(body.pg-home) .identity-meta .since { color:var(--muted); font-size:13px; }
:where(body.pg-home) .cid-row {
    margin-top:14px;
    display:flex; align-items:center; gap:8px; flex-wrap:wrap;
  }
:where(body.pg-home) .cid-row .cid-bytes {
    flex:1; min-width:240px;
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:11px; color:var(--muted);
    background:rgba(30,37,49,.5);
    border:1px solid var(--border);
    border-radius:8px; padding:8px 10px;
    overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  }
:where(body.pg-home) button.copy {
    background:var(--pk-dim); color:var(--pk);
    border:1px solid var(--pk-border); border-radius:8px;
    padding:8px 14px; font:inherit; font-weight:700; font-size:12px;
    cursor:pointer; flex-shrink:0;
  }
:where(body.pg-home) button.copy:hover { background:rgba(0,184,148,.18); }
:where(body.pg-home) .inbox-list {
    display:flex; flex-direction:column;
    border-radius:10px; overflow:hidden;
    border:1px solid var(--border);
  }
:where(body.pg-home) .inbox-item {
    display:flex; align-items:center; gap:12px;
    padding:10px 14px;
    background:rgba(19,19,31,.5);
    border-bottom:1px solid var(--border);
    font-size:13px;
    cursor:pointer; transition:background .12s;
  }
:where(body.pg-home) .inbox-item:last-child { border-bottom:0; }
:where(body.pg-home) .inbox-item:hover { background:rgba(30,37,49,.4); }
:where(body.pg-home) .inbox-item .tier {
    flex:0 0 38px; text-align:center;
    font-size:10px; font-weight:700; letter-spacing:.05em;
    padding:3px 0; border-radius:4px;
    background:var(--pk-dim); color:var(--pk);
    border:1px solid var(--pk-border);
    text-transform:uppercase;
  }
:where(body.pg-home) .inbox-item .tier.run { background:rgba(108,92,231,.12); color:var(--accent); border-color:rgba(108,92,231,.4); }
:where(body.pg-home) .inbox-item .tier.vault { background:rgba(253,203,110,.12); color:var(--warn);  border-color:rgba(253,203,110,.4); }
:where(body.pg-home) .inbox-item .from { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; }
:where(body.pg-home) .inbox-item .from .sender {
    font-weight:600; color:var(--text);
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:12px;
  }
:where(body.pg-home) .inbox-item .from .when { color:var(--dim); font-size:11px; }
:where(body.pg-home) .inbox-item .dot {
    width:6px; height:6px; border-radius:50%;
    background:var(--pk); flex-shrink:0;
  }
:where(body.pg-home) .inbox-item.read .dot { background:transparent; }
:where(body.pg-home) .empty {
    padding:18px; text-align:center;
    color:var(--dim); font-size:13px; font-style:italic;
  }
:where(body.pg-home) .actions { display:flex; gap:10px; flex-wrap:wrap; }
:where(body.pg-home) a.action, :where(body.pg-home) button.action {
    flex:1; min-width:140px;
    display:flex; flex-direction:column; gap:4px;
    background:rgba(19,19,31,.7);
    border:1px solid var(--border);
    border-radius:10px;
    padding:12px 14px;
    color:var(--text); text-decoration:none;
    font:inherit; cursor:pointer;
    transition:border-color .15s, transform .15s;
  }
:where(body.pg-home) a.action:hover, :where(body.pg-home) button.action:hover {
    border-color:var(--pk); transform:translateY(-1px);
  }
:where(body.pg-home) a.action .label, :where(body.pg-home) button.action .label {
    font-size:13px; font-weight:700; letter-spacing:-.01em;
  }
:where(body.pg-home) a.action .sub, :where(body.pg-home) button.action .sub {
    font-size:11px; color:var(--muted);
  }
:where(body.pg-home) .ai-status { display:flex; align-items:center; gap:12px; }
:where(body.pg-home) .ai-status .dot {
    width:10px; height:10px; border-radius:50%;
    background:var(--pk); box-shadow:0 0 10px var(--pk);
  }
:where(body.pg-home) .ai-status .dot.warn { background:var(--warn); box-shadow:0 0 10px var(--warn); }
:where(body.pg-home) .ai-status .dot.bad { background:var(--bad);  box-shadow:0 0 10px var(--bad); }
:where(body.pg-home) .ai-status .text { flex:1; font-size:14px; }
:where(body.pg-home) .ai-status .text strong { color:var(--text); }
:where(body.pg-home) .ai-status .text span { color:var(--muted); display:block; font-size:12px; margin-top:2px; }
:where(body.pg-home) #welcome-banner {
    display:none;
    background:linear-gradient(135deg, var(--pk-dim) 0%, rgba(108,92,231,.10) 100%);
    border:1px solid var(--pk-border);
    border-radius:14px;
    padding:18px 22px;
    margin-bottom:18px;
  }
:where(body.pg-home) #welcome-banner.show { display:block; }
:where(body.pg-home) #welcome-banner h3 { font-size:16px; margin:0 0 6px; }
:where(body.pg-home) #welcome-banner p { color:var(--muted); font-size:13px; margin:0 0 10px; max-width:60ch; }
:where(body.pg-home) #welcome-banner ol { padding-left:22px; color:var(--muted); font-size:13px; }
:where(body.pg-home) #welcome-banner ol li { margin:3px 0; }
:where(body.pg-home) #welcome-banner button.dismiss {
    margin-top:12px; padding:6px 12px;
    background:transparent; color:var(--muted);
    border:1px solid var(--border); border-radius:6px;
    font:inherit; font-size:12px; cursor:pointer;
  }
:where(body.pg-home) #welcome-banner button.dismiss:hover { color:var(--text); border-color:var(--text); }
.pg-home-i0 { color:var(--pk); }
.pg-home-i1 { margin-top:14px; }

/* ── page: index (moved from ui/pages/index.html — design-system conformance pass 2026-10-26) ── */
.pg-index-i0 { margin-top:24px;display:flex;gap:12px;flex-wrap:wrap; }
.pg-index-i1 { margin-bottom:48px; }
.pg-index-i2 { margin-top:0; }
.pg-index-i3 { color:var(--ink-dim);font-size:14.5px;margin:0; }
.pg-index-i4 { color:var(--ink-dim);max-width:760px;padding-left:22px; }
.pg-index-i5 { color:var(--ink); }
.pg-index-i6 { color:var(--ink-dim);max-width:760px; }

/* ── page: library (moved from ui/pages/library.html — design-system conformance pass 2026-10-26) ── */
body:where(.pg-library) {
      --lib-bg: var(--bg-deep);
      --lib-card: var(--surface);
      --lib-border: var(--surface2);
      --lib-text: var(--text);
      --lib-dim: var(--dim);
      --pk: var(--pk);
    }
body:where(.pg-library) { font-family: 'Satoshi', system-ui, sans-serif; background: var(--lib-bg);
      color: var(--lib-text); margin: 0; }
:where(body.pg-library) .lib-hero { padding: 56px 48px 24px; border-bottom: 1px solid var(--lib-border); }
:where(body.pg-library) .lib-hero h1 { font-size: clamp(36px, 4.5vw, 56px); margin: 0 0 8px;
      letter-spacing: -0.02em; }
:where(body.pg-library) .lib-hero p { color: var(--lib-dim); max-width: 60ch; font-size: 16px;
      line-height: 1.6; margin: 0; }
:where(body.pg-library) .lib-meta { color: var(--lib-dim); font-size: 13px; margin-top: 12px;
      font-family: monospace; }
:where(body.pg-library) .lib-featured { padding: 32px 48px; display: grid;
      grid-template-columns: 280px 1fr; gap: 32px; align-items: start; }
:where(body.pg-library) .lib-featured-cover { aspect-ratio: 3/4; border-radius: 8px;
      border: 1px solid var(--lib-border); display: grid; place-items: center;
      font-family: monospace; font-size: 13px; text-align: center;
      background: linear-gradient(135deg, var(--lib-card), var(--lib-bg));
      padding: 24px; }
:where(body.pg-library) .lib-featured h2 { margin: 0 0 8px; font-size: 28px; }
:where(body.pg-library) .lib-featured .lede { color: var(--lib-dim); margin: 0 0 16px;
      line-height: 1.5; font-size: 15px; }
:where(body.pg-library) .lib-btn { display: inline-block; padding: 8px 16px;
      background: var(--pk); color: var(--bg); border-radius: 4px;
      text-decoration: none; font-weight: 600; font-size: 14px; }
:where(body.pg-library) .lib-btn.secondary { background: transparent; border: 1px solid var(--lib-border);
      color: var(--lib-text); margin-left: 8px; }
:where(body.pg-library) .lib-band { padding: 32px 48px 0; }
:where(body.pg-library) .lib-band-head { display: flex; align-items: baseline; gap: 12px;
      margin-bottom: 16px; }
:where(body.pg-library) .lib-band-head h3 { margin: 0; font-size: 18px;
      text-transform: uppercase; letter-spacing: 0.08em; }
:where(body.pg-library) .lib-band-head .count { color: var(--lib-dim); font-size: 13px;
      font-family: monospace; }
:where(body.pg-library) .lib-grid { display: grid; grid-template-columns:
      repeat(auto-fill, minmax(220px, 1fr)); gap: 20px; padding: 0 48px 48px; }
:where(body.pg-library) .lib-card { background: var(--lib-card); border: 1px solid var(--lib-border);
      border-radius: 8px; padding: 16px; cursor: pointer;
      transition: transform 0.15s ease, border-color 0.15s ease; }
:where(body.pg-library) .lib-card:hover { transform: translateY(-2px); border-color: var(--pk); }
:where(body.pg-library) .lib-cover { aspect-ratio: 3/4; border-radius: 4px; margin-bottom: 12px;
      display: grid; place-items: center; font-family: monospace;
      color: rgba(232,236,242,0.85); position: relative; overflow: hidden; }
:where(body.pg-library) .lib-cover-icon { font-size: 48px; line-height: 1; opacity: 0.9; }
:where(body.pg-library) .lib-cover-tag { position: absolute; bottom: 8px; left: 8px;
      font-size: 10px; padding: 2px 6px; background: rgba(9,9,15,0.4);
      border-radius: 3px; letter-spacing: 0.04em; }
:where(body.pg-library) .lib-card-title { margin: 0 0 4px; font-size: 14px; font-weight: 600;
      line-height: 1.3; }
:where(body.pg-library) .lib-card-meta { color: var(--lib-dim); font-size: 11px;
      font-family: monospace; }
:where(body.pg-library) .lib-cover[data-profile="docs"] { background: linear-gradient(135deg, var(--border), var(--surface)); }
:where(body.pg-library) .lib-cover[data-profile="matrix"] { background: linear-gradient(135deg, var(--border), var(--surface)); }
:where(body.pg-library) .lib-cover[data-profile="matrix-polyglot"] { background: linear-gradient(135deg, var(--border), var(--surface2)); }
:where(body.pg-library) .lib-cover[data-profile="inventory"] { background: linear-gradient(135deg, var(--border), var(--surface)); }
:where(body.pg-library) .lib-cover[data-profile="film-catalog"] { background: linear-gradient(135deg, var(--surface3), var(--surface)); }
:where(body.pg-library) .lib-cover[data-profile="music-catalog"] { background: linear-gradient(135deg, var(--border), var(--surface)); }
:where(body.pg-library) .lib-cover[data-profile="license"] { background: linear-gradient(135deg, var(--border), var(--surface)); }
:where(body.pg-library) .lib-cover[data-profile="pk-client-tools"] { background: linear-gradient(135deg, var(--border), var(--surface2)); }
:where(body.pg-library) .lib-cover[data-profile="safetynet-reports"] { background: linear-gradient(135deg, var(--border), var(--surface)); }
:where(body.pg-library) .lib-cover[data-profile="dependency-audit"] { background: linear-gradient(135deg, var(--surface2), var(--surface)); }
:where(body.pg-library) .lib-empty { padding: 48px; text-align: center; color: var(--lib-dim); }
@media (max-width: 720px) {
:where(body.pg-library) .lib-hero, :where(body.pg-library) .lib-featured, :where(body.pg-library) .lib-band, :where(body.pg-library) .lib-grid { padding-left: 24px;
        padding-right: 24px; }
:where(body.pg-library) .lib-featured { grid-template-columns: 1fr; }
}

/* ── page: login (moved from ui/pages/login.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-login) :where(html, body) { min-width:0; overflow-x:hidden; }
:where(body.pg-login) :where(img, svg) { max-width:100%; height:auto; }
:where(body.pg-login) main.pk-wrap { max-width: 440px; padding-block: 48px 60px; }
:where(body.pg-login) .tabs { display:flex; gap:4px; margin-top:24px; background:var(--panel-2); border:1px solid var(--line); border-radius:10px; padding:4px; }
:where(body.pg-login) .tabs button {
    flex:1; margin:0; background:transparent; color:var(--ink-dim);
    border:0; border-radius:7px; padding:9px 12px; font-weight:700; font-size:13px; cursor:pointer;
    font-family: var(--sans);
  }
:where(body.pg-login) .tabs button.active { background:var(--pk); color:var(--bg-deep); }
:where(body.pg-login) .tabs button:hover:not(.active) { color:var(--ink); }
:where(body.pg-login) label { display:block; font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--ink-dim); font-weight:700; margin: 14px 0 6px; }
:where(body.pg-login) input { width:100%; background:var(--bg-deep); color:var(--ink); border:1px solid var(--line); border-radius:var(--r-chip); padding:10px 12px; font:inherit; }
:where(body.pg-login) input:focus { outline:none; border-color:var(--pk); box-shadow: 0 0 0 3px var(--pk-dim); }
:where(body.pg-login) .pk-btn-primary { width:100%; margin-top:18px; }
:where(body.pg-login) .alt { margin-top:18px; font-size:13px; color: var(--ink-dim); text-align:center; }
:where(body.pg-login) .alt a { color:var(--pk); cursor:pointer; }
:where(body.pg-login) .err {
    background: rgba(225,112,85,.12); color:var(--bad);
    border:1px solid rgba(225,112,85,.3); border-radius:var(--r-chip);
    padding:9px 12px; font-size:13px; margin-top:14px; display:none;
  }
:where(body.pg-login) .err.show { display:block; }
:where(body.pg-login) .ok {
    background: var(--pk-dim); color:var(--pk);
    border:1px solid var(--pk-border); border-radius:var(--r-chip);
    padding:9px 12px; font-size:13px; margin-top:14px; display:none;
  }
:where(body.pg-login) .ok.show { display:block; }
:where(body.pg-login) .desktop-banner {
    background: var(--accent-dim); color:var(--accent);
    border:1px solid rgba(108,92,231,.35); border-radius:var(--r-chip);
    padding:10px 12px; font-size:13px; margin-top:22px; display:none;
  }
:where(body.pg-login) .desktop-banner.show { display:block; }
:where(body.pg-login) [data-mode-field="signup"] { display:none; }
body:where(.pg-login).mode-signup [data-mode-field="signup"] { display:block; }
body:where(.pg-login).mode-signup [data-mode-field="login-only"] { display:none; }
.pg-login-i0 { margin-top:14px; }
.pg-login-i1 { margin-top:6px; }

/* ── page: logo-system (moved from ui/pages/logo-system.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-logo-system) .lg-header {
      padding: 72px 0 40px;
      display: grid;
      grid-template-columns: 1.1fr 1fr;
      gap: 48px;
      align-items: end;
      border-bottom: 1px solid var(--line);
    }
:where(body.pg-logo-system) .lg-header h1 {
      font-size: clamp(40px, 5.4vw, 64px);
      letter-spacing: -0.03em;
      line-height: 1;
    }
:where(body.pg-logo-system) .lg-header h1 em {
      font-style: normal;
      color: var(--burrow);
    }
:where(body.pg-logo-system) .lg-header .lede {
      color: var(--ink-dim);
      font-size: 16px;
      line-height: 1.55;
      max-width: 50ch;
      margin: 16px 0 0;
    }
:where(body.pg-logo-system) .lg-meta {
      font-family: var(--mono);
      font-size: 11px;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      color: var(--ink-mute);
      display: grid;
      grid-template-columns: max-content 1fr;
      gap: 6px 18px;
      align-content: end;
    }
:where(body.pg-logo-system) .lg-meta b { color: var(--ink-2); font-weight: 500; }
:where(body.pg-logo-system) .lg-section {
      padding: 72px 0 0;
    }
:where(body.pg-logo-system) .lg-section-head {
      display: grid;
      grid-template-columns: 1fr 1.4fr;
      gap: 48px;
      align-items: end;
      margin-bottom: 24px;
    }
:where(body.pg-logo-system) .lg-section-head h2 {
      font-size: clamp(24px, 2.8vw, 32px);
      letter-spacing: -0.022em;
    }
:where(body.pg-logo-system) .lg-section-head p {
      color: var(--ink-dim);
      font-size: 14.5px;
      margin: 0;
      max-width: 56ch;
      line-height: 1.55;
    }
:where(body.pg-logo-system) .lg-pair {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0;
      border: 1px solid var(--line);
      border-radius: var(--r-tile);
      overflow: hidden;
      background: var(--panel);
    }
:where(body.pg-logo-system) .lg-pair.is-quad { grid-template-columns: repeat(4, 1fr); }
:where(body.pg-logo-system) .lg-pair.is-tri { grid-template-columns: repeat(3, 1fr); }
:where(body.pg-logo-system) .lg-panel {
      padding: 56px 32px;
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 220px;
      position: relative;
      border-right: 1px solid var(--line);
    }
:where(body.pg-logo-system) .lg-panel:last-child { border-right: 0; }
:where(body.pg-logo-system) .lg-panel.is-dark { background: var(--bg); color: var(--text); }
:where(body.pg-logo-system) .lg-panel.is-light { background: var(--text); color: var(--bg); }
:where(body.pg-logo-system) .lg-panel.is-true-black { background: var(--bg-deep);     color: var(--text); }
:where(body.pg-logo-system) .lg-panel.is-true-white { background: var(--text);     color: var(--bg-deep); }
:where(body.pg-logo-system) .lg-panel-tag {
      position: absolute; top: 12px; left: 14px;
      font-family: var(--mono);
      font-size: 10px;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      opacity: 0.5;
    }
:where(body.pg-logo-system) .lg-panel.is-dark  .lg-panel-tag { color: var(--dim); }
:where(body.pg-logo-system) .lg-panel.is-light .lg-panel-tag { color: var(--faint); }
:where(body.pg-logo-system) .lg-panel.is-true-black .lg-panel-tag { color: var(--dim); }
:where(body.pg-logo-system) .lg-panel.is-true-white .lg-panel-tag { color: var(--faint); }
:where(body.pg-logo-system) .lg-src {
      margin-top: 12px;
      border: 1px solid var(--line);
      border-radius: var(--r-tile);
      background: var(--panel);
      overflow: hidden;
    }
:where(body.pg-logo-system) .lg-src summary {
      list-style: none;
      cursor: pointer;
      padding: 12px 18px;
      font-family: var(--mono);
      font-size: 11.5px;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--ink-dim);
      display: flex;
      align-items: center;
      gap: 12px;
      border-bottom: 1px solid transparent;
    }
:where(body.pg-logo-system) .lg-src summary::-webkit-details-marker { display: none; }
:where(body.pg-logo-system) .lg-src summary::before {
      content: '+';
      width: 14px;
      text-align: center;
      color: var(--ink-mute);
      font-weight: 500;
    }
:where(body.pg-logo-system) .lg-src[open] summary { border-bottom-color: var(--line); }
:where(body.pg-logo-system) .lg-src[open] summary::before { content: '−'; }
:where(body.pg-logo-system) .lg-src pre {
      margin: 0;
      padding: 18px 22px;
      background: var(--bg-deep);
      color: var(--ink-2);
      font-family: var(--mono);
      font-size: 12px;
      line-height: 1.55;
      overflow-x: auto;
      tab-size: 2;
    }
:where(body.pg-logo-system) .lg-src pre .tag { color: var(--ink-mute); }
:where(body.pg-logo-system) .lg-src pre .name { color: var(--burrow); }
:where(body.pg-logo-system) .lg-src pre .attr { color: var(--warren); }
:where(body.pg-logo-system) .lg-src pre .val { color: var(--thump); }
:where(body.pg-logo-system) .lg-src pre .comment { color: var(--ink-mute); font-style: italic; }
:where(body.pg-logo-system) .lg-mark { width: 88px;  height: 88px; }
:where(body.pg-logo-system) .lg-mark-xl { width: 160px; height: 160px; }
:where(body.pg-logo-system) .lg-mark-sm { width: 32px;  height: 32px; }
:where(body.pg-logo-system) .lg-mark-grid { width: 240px; height: 240px; }
:where(body.pg-logo-system) .lg-lockup-h {
      display: inline-flex;
      align-items: center;
      gap: 14px;
    }
:where(body.pg-logo-system) .lg-lockup-h svg { display: block; }
:where(body.pg-logo-system) .lg-wordmark {
      font-family: var(--sans);
      font-weight: 400;
      font-size: 40px;
      letter-spacing: -0.018em;
      line-height: 1;
      color: currentColor;
      white-space: nowrap;
    }
:where(body.pg-logo-system) .lg-wordmark em {
      font-weight: 500;
      font-style: italic;
      color: var(--burrow);
    }
:where(body.pg-logo-system) .lg-panel.is-dark      .lg-wordmark em { color: var(--burrow); }
:where(body.pg-logo-system) .lg-panel.is-light     .lg-wordmark em { color: var(--accent); }
:where(body.pg-logo-system) .lg-panel.is-true-black .lg-wordmark em, :where(body.pg-logo-system) .lg-panel.is-true-white .lg-wordmark em { color: currentColor; }
:where(body.pg-logo-system) .lg-wordmark-sm { font-size: 22px; }
:where(body.pg-logo-system) .lg-lockup-stack {
      display: inline-flex;
      flex-direction: column;
      align-items: center;
      gap: 18px;
    }
:where(body.pg-logo-system) .lg-lockup-stack .lg-wordmark { font-size: 36px; }
:where(body.pg-logo-system) .lg-products {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 0;
      border: 1px solid var(--line);
      border-radius: var(--r-tile);
      overflow: hidden;
      background: var(--panel);
    }
:where(body.pg-logo-system) .lg-product-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      border-bottom: 1px solid var(--line);
    }
:where(body.pg-logo-system) .lg-product-row:nth-last-child(-n+2):nth-child(odd), :where(body.pg-logo-system) .lg-product-row:last-child { border-bottom: 0; }
:where(body.pg-logo-system) .lg-product-row .lg-panel {
      padding: 32px 28px;
      min-height: 100px;
      justify-content: flex-start;
    }
:where(body.pg-logo-system) .lg-product-name {
      font-family: var(--mono);
      font-weight: 400;
      font-size: 18px;
      letter-spacing: -0.005em;
    }
:where(body.pg-logo-system) .lg-bean-tagline {
      font-family: var(--sans);
      font-weight: 500;
      font-size: 13px;
      letter-spacing: 0.04em;
      color: var(--ink-mute);
      margin-top: 6px;
    }
:where(body.pg-logo-system) .lg-panel.is-light .lg-bean-tagline { color: var(--faint); }
:where(body.pg-logo-system) .lg-bean-tagline em { font-style: italic; color: var(--burrow); font-weight: 500; }
:where(body.pg-logo-system) .lg-panel.is-light .lg-bean-tagline em { color: var(--accent); }
:where(body.pg-logo-system) .lg-fav-row {
      display: grid;
      grid-template-columns: repeat(6, 1fr);
      gap: 0;
      border: 1px solid var(--line);
      border-radius: var(--r-tile);
      overflow: hidden;
      background: var(--panel);
      align-items: stretch;
    }
:where(body.pg-logo-system) .lg-fav-cell {
      padding: 32px 18px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 12px;
      border-right: 1px solid var(--line);
      min-height: 160px;
    }
:where(body.pg-logo-system) .lg-fav-cell:last-child { border-right: 0; }
:where(body.pg-logo-system) .lg-fav-cell.is-dark { background: var(--bg); color: var(--text); }
:where(body.pg-logo-system) .lg-fav-cell.is-light { background: var(--text); color: var(--bg); }
:where(body.pg-logo-system) .lg-fav-cell.is-chrome { background: var(--panel-2); color: var(--ink-2); }
:where(body.pg-logo-system) .lg-fav-label {
      font-family: var(--mono);
      font-size: 10.5px;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--ink-mute);
      text-align: center;
      line-height: 1.4;
    }
:where(body.pg-logo-system) .lg-fav-label b { color: var(--ink); font-weight: 500; }
:where(body.pg-logo-system) .lg-grid-bg {
      background-image:
        linear-gradient(rgba(124,167,255,0.07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(124,167,255,0.07) 1px, transparent 1px);
      background-size: calc(240px / 24) calc(240px / 24);
      background-position: center;
      background-repeat: no-repeat;
      width: 240px;
      height: 240px;
      display: flex;
      align-items: center;
      justify-content: center;
      border: 1px solid rgba(124,167,255,0.18);
      border-radius: 2px;
    }
:where(body.pg-logo-system) .lg-mark, :where(body.pg-logo-system) .lg-mark-xl, :where(body.pg-logo-system) .lg-mark-sm, :where(body.pg-logo-system) .lg-mark-grid {
      color: inherit;
    }
:where(body.pg-logo-system) .lg-panel.is-dark      svg { color: var(--text); }
:where(body.pg-logo-system) .lg-panel.is-light     svg { color: var(--bg); }
:where(body.pg-logo-system) .lg-panel.is-true-black svg { color: var(--text); }
:where(body.pg-logo-system) .lg-panel.is-true-white svg { color: var(--bg-deep); }
:where(body.pg-logo-system) .lg-fav-cell.is-dark   svg { color: var(--text); }
:where(body.pg-logo-system) .lg-fav-cell.is-light  svg { color: var(--bg); }
:where(body.pg-logo-system) .lg-fav-cell.is-chrome svg { color: var(--ink); }
@media (max-width: 960px) {
:where(body.pg-logo-system) .lg-header, :where(body.pg-logo-system) .lg-section-head { grid-template-columns: 1fr; gap: 16px; }
:where(body.pg-logo-system) .lg-pair.is-quad { grid-template-columns: 1fr 1fr; }
:where(body.pg-logo-system) .lg-pair.is-tri { grid-template-columns: 1fr; }
:where(body.pg-logo-system) .lg-pair.is-quad .lg-panel:nth-child(2) { border-right: 0; }
:where(body.pg-logo-system) .lg-pair.is-quad .lg-panel:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
:where(body.pg-logo-system) .lg-products { grid-template-columns: 1fr; }
:where(body.pg-logo-system) .lg-product-row { grid-template-columns: 1fr; }
:where(body.pg-logo-system) .lg-product-row .lg-panel { border-right: 0; border-bottom: 1px solid var(--line); }
:where(body.pg-logo-system) .lg-fav-row { grid-template-columns: repeat(3, 1fr); }
:where(body.pg-logo-system) .lg-fav-cell:nth-child(3) { border-right: 0; }
:where(body.pg-logo-system) .lg-fav-cell:nth-child(-n+3) { border-bottom: 1px solid var(--line); }
}
@media (max-width: 560px) {
:where(body.pg-logo-system) .lg-pair { grid-template-columns: 1fr; }
:where(body.pg-logo-system) .lg-pair .lg-panel { border-right: 0; border-bottom: 1px solid var(--line); }
:where(body.pg-logo-system) .lg-pair .lg-panel:last-child { border-bottom: 0; }
:where(body.pg-logo-system) .lg-pair.is-quad { grid-template-columns: 1fr; }
:where(body.pg-logo-system) .lg-fav-row { grid-template-columns: 1fr 1fr; }
}
.pg-logo-system-i0 { color:var(--ink-2);font-style:normal; }
.pg-logo-system-i1 { padding:72px 32px; }
.pg-logo-system-i2 { color:var(--burrow);font-style:normal; }
.pg-logo-system-i3 { flex-direction:column; gap:8px; }
.pg-logo-system-i4 { display:flex;gap:28px;flex-wrap:wrap;align-items:flex-end;margin:20px 0; }
.pg-logo-system-i5 { text-align:center; }
.pg-logo-system-i6 { color:var(--ink-dim);font-size:13px; }
.pg-logo-system-i7 { display:flex;gap:28px;flex-wrap:wrap;align-items:flex-end;margin:12px 0; }
.pg-logo-system-i8 { display:flex;gap:10px;align-items:center;flex-wrap:wrap; }
.pg-logo-system-i9 { display:inline-block;vertical-align:middle;margin-left:6px; }
.pg-logo-system-i10 { display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:var(--ink-dim);font-size:13px; }
.pg-logo-system-i11 { width:220px;vertical-align:middle; }
.pg-logo-system-i12 { font-variant-numeric:tabular-nums; }

/* ── page: mutation-signals-index (moved from ui/pages/mutation-signals/index.html — design-system conformance pass 2026-10-26) ── */
body:where(.pg-mutation-signals-index) { --accent-border: rgba(108,92,231,.35); }
:where(body.pg-mutation-signals-index) * { box-sizing:border-box; }
body:where(.pg-mutation-signals-index), body:where(.pg-mutation-signals-index) { min-width:0; overflow-x:hidden; margin:0; }
body:where(.pg-mutation-signals-index) {
    font-family:'Satoshi', Inter, system-ui, sans-serif;
    background:
      radial-gradient(ellipse 800px 400px at 50% -10%, rgba(108,92,231,.16), transparent 60%),
      linear-gradient(rgba(30,37,49,.45) 1px, transparent 1px) 0 0/48px 48px,
      linear-gradient(90deg, rgba(30,37,49,.45) 1px, transparent 1px) 0 0/48px 48px,
      var(--bg);
    color:var(--text); line-height:1.55; min-height:100vh;
  }
:where(body.pg-mutation-signals-index) img, :where(body.pg-mutation-signals-index) svg { max-width:100%; height:auto; }
:where(body.pg-mutation-signals-index) .brand-strip {
    border-bottom:1px solid var(--accent-border);
    background:rgba(9,9,15,.95); backdrop-filter:blur(20px);
    position:sticky; top:0; z-index:10;
    box-shadow:0 6px 30px rgba(108,92,231,.08);
  }
:where(body.pg-mutation-signals-index) .brand-strip .wrap {
    max-width:1180px; margin:0 auto;
    display:flex; align-items:center; justify-content:space-between;
    gap:16px; padding:14px 22px;
    font-weight:800; font-size:17px;
  }
:where(body.pg-mutation-signals-index) .brand span { color:var(--pk); }
:where(body.pg-mutation-signals-index) .pill {
    display:inline-flex; align-items:center; gap:8px;
    border:1px solid var(--accent-border); background:var(--accent-dim);
    color:var(--burrow); border-radius:999px;
    padding:5px 11px; font-size:11px; font-weight:700;
    text-transform:uppercase; letter-spacing:.07em;
  }
:where(body.pg-mutation-signals-index) .pill.warn { color:var(--warn); border-color:rgba(253,203,110,.3); background:rgba(253,203,110,.08); }
:where(body.pg-mutation-signals-index) .pill.ok { color:var(--pk);  border-color:var(--pk-border);       background:var(--pk-dim); }
:where(body.pg-mutation-signals-index) main { max-width:1180px; margin:0 auto; padding:32px 22px 60px; }
:where(body.pg-mutation-signals-index) h1 { font-size:clamp(26px,4vw,38px); letter-spacing:-.03em; margin:8px 0 12px; }
:where(body.pg-mutation-signals-index) .lede { color:var(--muted); font-size:15px; max-width:760px; }
:where(body.pg-mutation-signals-index) .section-title {
    font-size:12px; text-transform:uppercase; letter-spacing:.12em;
    color:var(--muted); margin:32px 0 12px;
  }
:where(body.pg-mutation-signals-index) .gate {
    background:linear-gradient(180deg, rgba(30,37,49,.95), rgba(19,19,31,.95));
    border:1px solid var(--accent-border); border-radius:18px;
    padding:36px 30px; box-shadow:0 14px 50px rgba(9,9,15,.32), 0 0 30px rgba(108,92,231,.06);
    text-align:center; max-width:560px; margin:60px auto;
  }
:where(body.pg-mutation-signals-index) .gate h2 { margin:0 0 8px; font-size:22px; }
:where(body.pg-mutation-signals-index) .gate p { margin:0 0 18px; color:var(--muted); }
:where(body.pg-mutation-signals-index) .gate .ops-btn { background:var(--accent); color:var(--text); border:0; }
:where(body.pg-mutation-signals-index) .stat-row { display:flex; gap:14px; flex-wrap:wrap; margin:14px 0 18px; }
:where(body.pg-mutation-signals-index) .stat {
    background:linear-gradient(180deg, rgba(30,37,49,.95), rgba(19,19,31,.95));
    border:1px solid var(--border); border-radius:12px;
    padding:14px 18px; min-width:140px;
    box-shadow:0 14px 50px rgba(9,9,15,.32);
  }
:where(body.pg-mutation-signals-index) .stat .k { font-size:11px; text-transform:uppercase; letter-spacing:.1em; color:var(--muted); font-weight:700; }
:where(body.pg-mutation-signals-index) .stat .v { font-size:24px; font-weight:700; margin:4px 0 0; font-variant-numeric:tabular-nums; }
:where(body.pg-mutation-signals-index) .card {
    background:linear-gradient(180deg, rgba(30,37,49,.95), rgba(19,19,31,.95));
    border:1px solid var(--border); border-radius:16px; padding:20px;
    box-shadow:0 14px 50px rgba(9,9,15,.32); margin:14px 0;
  }
:where(body.pg-mutation-signals-index) .card h2 { margin:0 0 10px; font-size:18px; letter-spacing:-.01em; }
:where(body.pg-mutation-signals-index) table { width:100%; border-collapse:collapse; font-size:13px; }
:where(body.pg-mutation-signals-index) th, :where(body.pg-mutation-signals-index) td { padding:10px 12px; text-align:left; border-bottom:1px solid var(--border); vertical-align:top; }
:where(body.pg-mutation-signals-index) th { color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.08em; font-weight:700; }
:where(body.pg-mutation-signals-index) tr:hover td { background:rgba(108,92,231,.04); }
:where(body.pg-mutation-signals-index) .mono { font-family:ui-monospace, Menlo, monospace; color:var(--muted); font-size:12px; }
:where(body.pg-mutation-signals-index) .change-from { color:var(--warn); text-decoration:line-through; font-family:ui-monospace,monospace; font-size:12.5px; }
:where(body.pg-mutation-signals-index) .change-to { color:var(--pk);   font-family:ui-monospace,monospace; font-size:12.5px; }
:where(body.pg-mutation-signals-index) .count-badge {
    display:inline-block; background:var(--accent); color:var(--text);
    padding:2px 8px; border-radius:999px; font-size:11px; font-weight:700;
    font-variant-numeric:tabular-nums;
  }
:where(body.pg-mutation-signals-index) .decision {
    display:inline-block; padding:3px 8px; border-radius:999px;
    font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.05em;
  }
:where(body.pg-mutation-signals-index) .decision.pending { background:rgba(131,141,156,.15); color:var(--muted); }
:where(body.pg-mutation-signals-index) .decision.collective { background:rgba(0,184,148,.18); color:var(--pk); }
:where(body.pg-mutation-signals-index) .decision.user { background:rgba(108,92,231,.18); color:var(--burrow); }
:where(body.pg-mutation-signals-index) .decision.noise { background:rgba(225,112,85,.18); color:var(--bad); }
:where(body.pg-mutation-signals-index) .actions { display:flex; gap:5px; flex-wrap:wrap; }
:where(body.pg-mutation-signals-index) .ops-btn {
    background:var(--surface2); color:var(--text);
    border:1px solid var(--border); border-radius:7px;
    padding:6px 10px; font-size:11.5px; font-weight:600; cursor:pointer;
    transition:background .12s, color .12s, border-color .12s;
  }
:where(body.pg-mutation-signals-index) .ops-btn:hover { background:var(--accent-dim); color:var(--burrow); border-color:var(--accent-border); }
:where(body.pg-mutation-signals-index) .ops-btn.collective:hover { background:var(--pk-dim); color:var(--pk); border-color:var(--pk-border); }
:where(body.pg-mutation-signals-index) .ops-btn.noise:hover { background:rgba(225,112,85,.12); color:var(--bad); border-color:rgba(225,112,85,.3); }
:where(body.pg-mutation-signals-index) .ops-btn.primary { background:var(--accent); color:var(--text); border-color:var(--accent); }
:where(body.pg-mutation-signals-index) .ops-btn.primary:hover { background:var(--accent); color:var(--text); }
:where(body.pg-mutation-signals-index) .empty { text-align:center; color:var(--muted); padding:36px 20px; }
@media (max-width:720px) {
:where(body.pg-mutation-signals-index) .stat { min-width:0; flex:1 1 calc(50% - 7px); padding:12px; }
:where(body.pg-mutation-signals-index) .stat .v { font-size:20px; }
:where(body.pg-mutation-signals-index) table { font-size:12px; }
:where(body.pg-mutation-signals-index) th, :where(body.pg-mutation-signals-index) td { padding:7px 8px; }
:where(body.pg-mutation-signals-index) .actions { flex-direction:column; gap:3px; }
:where(body.pg-mutation-signals-index) .ops-btn { padding:5px 7px; font-size:11px; }
}
.pg-mutation-signals-index-i0 { margin-top:18px; font-size:12px; color:var(--dim); }
.pg-mutation-signals-index-i1 { color:var(--burrow); }
.pg-mutation-signals-index-i2 { background:var(--pk-dim);color:var(--pk);border-color:var(--pk-border); }
.pg-mutation-signals-index-i3 { display:flex; gap:10px; flex-wrap:wrap; margin:14px 0 8px; font-size:13px; }
.pg-mutation-signals-index-i4 { padding:4px 10px; border-radius:999px; background:var(--pk-dim); color:var(--pk); border:1px solid var(--pk-border); font-weight:600; }
.pg-mutation-signals-index-i5 { padding:4px 10px; border-radius:999px; background:var(--accent-dim); color:var(--burrow); border:1px solid var(--accent-border); font-weight:600; }
.pg-mutation-signals-index-i6 { padding:4px 10px; border-radius:999px; background:rgba(225,112,85,.15); color:var(--bad); border:1px solid rgba(225,112,85,.3); font-weight:600; }
.pg-mutation-signals-index-i7 { color:var(--dim); font-size:12px; align-self:center; }
.pg-mutation-signals-index-i8 { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; margin-bottom:12px; }
.pg-mutation-signals-index-i9 { margin:0; }
.pg-mutation-signals-index-i10 { display:flex; gap:8px; }
.pg-mutation-signals-index-i11 { margin:0 0 10px; color:var(--muted); font-size:14px; }
.pg-mutation-signals-index-i12 { color:var(--pk); }
.pg-mutation-signals-index-i13 { color:var(--muted); font-size:13px; line-height:1.7; padding-left:22px; margin:6px 0; }
.pg-mutation-signals-index-i14 { color:var(--bad); }
.pg-mutation-signals-index-i15 { margin:10px 0 0; font-size:12px; color:var(--dim); }

/* ── page: operator-index (moved from ui/pages/operator/index.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-operator-index) *, :where(body.pg-operator-index) *::before, :where(body.pg-operator-index) *::after { box-sizing:border-box; margin:0; padding:0; }
body:where(.pg-operator-index), body:where(.pg-operator-index) { height:100%; overflow:hidden; min-width:0; }
body:where(.pg-operator-index) {
    font-family:var(--sans); color:var(--text); background:var(--bg);
    display:flex; flex-direction:column;
  }
:where(body.pg-operator-index) header.hub {
    flex-shrink:0;
    border-bottom:1px solid var(--border);
    background:rgba(10,12,16,.85); backdrop-filter:blur(10px);
  }
:where(body.pg-operator-index) .hub-top {
    display:flex; align-items:center; gap:14px;
    padding:12px 20px 0;
  }
:where(body.pg-operator-index) .pk-brand { display:inline-flex; align-items:center; gap:9px; text-decoration:none; }
:where(body.pg-operator-index) .pk-brand-mark {
    width:20px; height:20px; border-radius:5px; position:relative;
    background:linear-gradient(135deg, var(--warren) 0%, var(--burrow) 100%);
    flex-shrink:0;
  }
:where(body.pg-operator-index) .pk-brand-mark::after {
    content:""; position:absolute; inset:5px;
    border:2px solid var(--bg); border-radius:2px;
    transform:rotate(45deg) scale(.72);
  }
:where(body.pg-operator-index) .pk-brand-word { font-weight:700; font-size:16px; letter-spacing:-.02em; color:var(--text); }
:where(body.pg-operator-index) .pk-brand-word em { font-style:normal; color:var(--warren); }
:where(body.pg-operator-index) .hub-title {
    font-size:11px; letter-spacing:.14em; text-transform:uppercase;
    color:var(--dim); font-weight:700; margin-left:4px;
  }
:where(body.pg-operator-index) .hub-spacer { flex:1; }
:where(body.pg-operator-index) .hub-meta { font-size:11px; color:var(--dim); font-variant-numeric:tabular-nums; }
:where(body.pg-operator-index) .tabs {
    display:flex; gap:2px; padding:6px 16px 0; overflow-x:auto;
  }
:where(body.pg-operator-index) .tab {
    background:none; border:0; color:var(--muted);
    font:inherit; font-size:13px; font-weight:600;
    padding:9px 14px; cursor:pointer; white-space:nowrap;
    border-bottom:2px solid transparent; border-radius:6px 6px 0 0;
  }
:where(body.pg-operator-index) .tab:hover { color:var(--text); background:rgba(232,236,242,.03); }
:where(body.pg-operator-index) .tab.active { color:var(--warren); border-bottom-color:var(--warren); }
:where(body.pg-operator-index) .tab .badge {
    font-size:9px; padding:1px 5px; border-radius:4px; margin-left:6px;
    background:var(--burrow-wash); color:var(--burrow); font-weight:700;
    letter-spacing:.05em;
  }
:where(body.pg-operator-index) main { flex:1; position:relative; overflow:hidden; }
:where(body.pg-operator-index) iframe { width:100%; height:100%; border:0; display:block; background:var(--bg); }

/* ── page: portal-doc (moved from ui/pages/portal/doc.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-portal-doc) .doc-meta { font-size: .85rem; opacity: .7; margin-bottom: 1rem; }
:where(body.pg-portal-doc) .doc-meta span { margin-right: 1rem; }
:where(body.pg-portal-doc) .doc-links li { margin: .25rem 0; }
:where(body.pg-portal-doc) .doc-links code { font-size: .85rem; }
.pg-portal-doc-i0 { margin-top:2rem; }

/* ── page: portal-index (moved from ui/pages/portal/index.html — design-system conformance pass 2026-10-26) ── */
body:where(.pg-portal-index) {
    margin:0; font-family:'Satoshi',system-ui,sans-serif;
    background:var(--bg-deep); color:var(--text);
    min-height:100vh; display:flex; align-items:center; justify-content:center;
  }
:where(body.pg-portal-index) main { max-width:480px; padding:32px; text-align:center; }
:where(body.pg-portal-index) h1 { font-size:22px; margin:0 0 10px; letter-spacing:-.02em; }
:where(body.pg-portal-index) p { color:var(--dim); font-size:14px; line-height:1.5; margin:0 0 18px; }
:where(body.pg-portal-index) a { color:var(--pk); text-decoration:none; }
:where(body.pg-portal-index) a:hover { text-decoration:underline; }

/* ── page: portal-search (moved from ui/pages/portal/search.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-portal-search) .portal-grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fill,minmax(260px,1fr)); }
:where(body.pg-portal-search) .doc-card { padding: 1rem; border: 1px solid var(--border, var(--surface2)); border-radius: 8px; }
:where(body.pg-portal-search) .doc-card .cat { font-size: .8rem; opacity: .65; text-transform: uppercase; letter-spacing: .05em; }
:where(body.pg-portal-search) .doc-card h3 { margin: .25rem 0 .5rem 0; }
.pg-portal-search-i0 { margin:1rem 0;display:flex;gap:.5rem; }
.pg-portal-search-i1 { flex:1;padding:.5rem; }

/* ── page: pricing (moved from ui/pages/pricing.html — design-system conformance pass 2026-10-26) ── */
.pg-pricing-i0 { font-weight:600; }
.pg-pricing-i1 { display:inline-flex;gap:2px;margin-top:18px;padding:3px;border:1px solid var(--line,var(--surface2));border-radius:10px;background:var(--surface,var(--surface)); }
.pg-pricing-i2 { border:0;border-radius:8px;padding:8px 18px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;background:var(--burrow,var(--accent));color:var(--text); }
.pg-pricing-i3 { border:0;border-radius:8px;padding:8px 18px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;background:transparent;color:var(--ink-dim,var(--dim)); }
.pg-pricing-i4 { display:none;margin:12px 0 0;font-size:14px;color:var(--ink-dim,var(--dim)); }
.pg-pricing-i5 { margin:0 0 32px; }
.pg-pricing-i6 { border-left:3px solid var(--good, var(--pk));background:rgba(0,184,148,.06);padding:18px 22px;border-radius:12px; }
.pg-pricing-i7 { margin:0 0 6px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--good, var(--pk)); }
.pg-pricing-i8 { margin:0 0 8px;font-size:16px;line-height:1.55; }
.pg-pricing-i9 { margin:0;color:var(--ink-dim, var(--dim));font-size:14px;line-height:1.55; }
.pg-pricing-i10 { color:var(--good, var(--pk)); }
.pg-pricing-i11 { display:none;margin-top:14px;font-size:15px;color:var(--ink, var(--text)); }
.pg-pricing-i12 { display:none; }
.pg-pricing-i13 { margin:48px 0 0; }
.pg-pricing-i14 { max-width:560px; }
.pg-pricing-i15 { text-transform:uppercase;letter-spacing:.06em;font-size:12px; }
.pg-pricing-i16 { color:var(--ink-dim,var(--dim));font-size:14px;line-height:1.6;max-width:820px; }
.pg-pricing-i17 { max-width:820px; }
.pg-pricing-i18 { color:var(--ink-dim,var(--dim));font-size:14px; }

/* ── page: security-ops-index (moved from ui/pages/security-ops/index.html — design-system conformance pass 2026-10-26) ── */
body:where(.pg-security-ops-index) { --term-bg: var(--bg-deep); --term-green: var(--pk); }
:where(body.pg-security-ops-index) * { box-sizing: border-box; }
body:where(.pg-security-ops-index), body:where(.pg-security-ops-index) { margin: 0; max-width: 100vw; overflow-x: hidden; }
body:where(.pg-security-ops-index) {
    font-family: 'Satoshi', Inter, system-ui, -apple-system, Segoe UI, sans-serif;
    /* Subtle grid + glow so the page reads as a UI on first paint,
       not just a black wash. Hero glow stays on top; faint grid
       gives surface texture so cards have something to rest on. */
    background:
      radial-gradient(ellipse 800px 400px at 50% -10%, rgba(0,184,148,.16), transparent 60%),
      radial-gradient(circle at 90% 80%, rgba(108,92,231,.10), transparent 45%),
      linear-gradient(rgba(30,37,49,.45) 1px, transparent 1px) 0 0 / 48px 48px,
      linear-gradient(90deg, rgba(30,37,49,.45) 1px, transparent 1px) 0 0 / 48px 48px,
      var(--bg);
    color: var(--text);
    line-height: 1.55;
    min-height: 100vh;
  }
:where(body.pg-security-ops-index) a { color: var(--pk); text-decoration: none; }
:where(body.pg-security-ops-index) a:hover { text-decoration: underline; }
:where(body.pg-security-ops-index) .brand-strip {
    border-bottom: 1px solid var(--pk-border);
    background: rgba(9,9,15,.95);
    backdrop-filter: blur(20px);
    position: sticky; top: 0; z-index: 10;
    box-shadow: 0 6px 30px rgba(0,184,148,.07);
  }
:where(body.pg-security-ops-index) .live-dot {
    display: inline-block; width: 8px; height: 8px; border-radius: 50%;
    background: var(--pk); margin-right: 6px; vertical-align: middle;
    box-shadow: 0 0 0 0 rgba(0,184,148,.7);
    animation: security-ops-index-pulse 1.8s ease-in-out infinite;
  }
@keyframes security-ops-index-security-ops-index-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(0,184,148,.6); }
    70%  { box-shadow: 0 0 0 10px rgba(0,184,148,0); }
    100% { box-shadow: 0 0 0 0 rgba(0,184,148,0); }
  }
:where(body.pg-security-ops-index) .brand-strip .wrap {
    max-width: 1180px; margin: 0 auto;
    display: flex; align-items: center; justify-content: space-between;
    gap: 16px; padding: 16px 22px;
  }
:where(body.pg-security-ops-index) .brand { font-weight: 800; letter-spacing: -.03em; font-size: 18px; }
:where(body.pg-security-ops-index) .brand span { color: var(--pk); }
:where(body.pg-security-ops-index) .pill {
    display: inline-flex; align-items: center; gap: 8px;
    border: 1px solid var(--pk-border);
    background: var(--pk-dim);
    color: var(--pk);
    border-radius: 999px;
    padding: 6px 12px;
    font-size: 12px; font-weight: 700;
    text-transform: uppercase; letter-spacing: .06em;
  }
:where(body.pg-security-ops-index) .uk-hero {
    max-width: 1180px; margin: 0 auto; padding: 56px 22px 24px;
  }
:where(body.pg-security-ops-index) .uk-hero h1 {
    font-size: clamp(30px, 5vw, 58px); line-height: .98;
    letter-spacing: -.055em; margin: 12px 0 16px; max-width: 880px;
  }
:where(body.pg-security-ops-index) .uk-hero .sub { color: var(--muted); font-size: 18px; max-width: 760px; }
:where(body.pg-security-ops-index) .lock-key {
    display: inline-block; margin-top: 18px;
    font-family: 'Cabinet Grotesk', system-ui, sans-serif;
    font-size: 13px; color: var(--dim);
    border-left: 2px solid var(--pk); padding-left: 12px;
  }
:where(body.pg-security-ops-index) .meta { color: var(--dim); font-size: 12px; line-height: 1.5; }
:where(body.pg-security-ops-index) .container { max-width: 1180px; margin: 0 auto; padding: 0 22px 48px; }
:where(body.pg-security-ops-index) .section-title {
    font-size: 13px; text-transform: uppercase; letter-spacing: .12em;
    color: var(--muted); margin: 36px 0 14px;
  }
:where(body.pg-security-ops-index) .panel {
    /* More opaque so cards have a clear edge against the dark+grid bg */
    background:
      linear-gradient(180deg, rgba(30,37,49,.95), rgba(19,19,31,.95));
    border: 1px solid var(--border);
    border-radius: 18px; padding: 22px;
    box-shadow: 0 14px 50px rgba(9,9,15,.32), 0 0 0 1px rgba(232,236,242,.02) inset;
  }
:where(body.pg-security-ops-index) .panel.accent { border-color: var(--pk-border); box-shadow: 0 14px 50px rgba(9,9,15,.32), 0 0 30px rgba(0,184,148,.06); }
:where(body.pg-security-ops-index) .panel h2 { margin: 0 0 12px; font-size: 18px; letter-spacing: -.01em; }
:where(body.pg-security-ops-index) .panel + .panel { margin-top: 18px; }
:where(body.pg-security-ops-index) .ops-actions {
    display: flex; flex-wrap: wrap; gap: 10px;
    margin: 12px 0 16px;
  }
:where(body.pg-security-ops-index) .ops-btn {
    background: var(--surface2); color: var(--text);
    border: 1px solid var(--border);
    border-radius: 10px; padding: 10px 16px;
    font-weight: 700; font-size: 13px; cursor: pointer;
    transition: background .12s, color .12s, border-color .12s;
  }
:where(body.pg-security-ops-index) .ops-btn:hover { background: var(--pk-dim); color: var(--pk); border-color: var(--pk-border); }
:where(body.pg-security-ops-index) .ops-btn.danger { color: var(--bad); border-color: rgba(225,112,85,.35); }
:where(body.pg-security-ops-index) .ops-btn.danger:hover { background: rgba(225,112,85,.1); }
:where(body.pg-security-ops-index) .ops-btn.primary { background: var(--pk); color: var(--bg); border-color: var(--pk); }
:where(body.pg-security-ops-index) .ops-btn.primary:hover { background: var(--pk); }
:where(body.pg-security-ops-index) .out-panel {
    background: var(--term-bg); color: var(--term-green);
    border: 1px solid var(--border); border-radius: 8px;
    padding: 14px; min-height: 160px; max-height: 360px;
    font-family: ui-monospace, SF Mono, Menlo, monospace;
    font-size: 12.5px; line-height: 1.5;
    overflow: auto; white-space: pre-wrap; word-break: break-word;
  }
:where(body.pg-security-ops-index) .out-line.muted-line { color: var(--muted); }
:where(body.pg-security-ops-index) .out-line.info-line { color: var(--text); }
:where(body.pg-security-ops-index) .out-line.ok-line { color: var(--pk); }
:where(body.pg-security-ops-index) .out-line.err-line { color: var(--bad); }
:where(body.pg-security-ops-index) .term-bar {
    display: flex; align-items: center; gap: 8px;
    margin-top: 10px;
    background: var(--term-bg); border: 1px solid var(--border);
    border-radius: 8px; padding: 8px 12px;
    font-family: ui-monospace, monospace; font-size: 12.5px;
  }
:where(body.pg-security-ops-index) .term-prompt { color: var(--pk); white-space: nowrap; }
:where(body.pg-security-ops-index) .term-input {
    flex: 1; background: transparent; border: 0;
    color: var(--text); outline: none;
    font-family: inherit; font-size: inherit;
  }
:where(body.pg-security-ops-index) .uk-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 14px;
  }
:where(body.pg-security-ops-index) .uk-grid .panel { padding: 16px; }
:where(body.pg-security-ops-index) .uk-grid .panel h2 { font-size: 13px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
:where(body.pg-security-ops-index) .stat { font-size: 28px; font-weight: 700; margin: 4px 0 10px; }
:where(body.pg-security-ops-index) .stat .unit { font-size: 13px; color: var(--muted); margin-left: 6px; font-weight: 500; }
:where(body.pg-security-ops-index) .row { display: flex; justify-content: space-between; padding: 6px 0; border-bottom: 1px dashed var(--border); font-size: 13px; }
:where(body.pg-security-ops-index) .row:last-child { border-bottom: 0; }
:where(body.pg-security-ops-index) .row .k { color: var(--muted); }
:where(body.pg-security-ops-index) .row .v { font-family: ui-monospace, monospace; }
:where(body.pg-security-ops-index) .feed { max-height: 200px; overflow: auto; }
:where(body.pg-security-ops-index) .feed .item { padding: 6px 0; font-size: 12px; color: var(--muted); border-bottom: 1px dashed var(--border); }
:where(body.pg-security-ops-index) .route-hint { color: var(--dim); font-family: ui-monospace, monospace; font-size: 11px; margin-top: 8px; }
:where(body.pg-security-ops-index) .mode-grid {
    display: grid; grid-template-columns: repeat(3, 1fr);
    gap: 14px; margin-top: 14px;
  }
:where(body.pg-security-ops-index) .mode-card {
    border: 1px solid var(--border); border-radius: 14px;
    background: rgba(26,26,40,.55); padding: 16px;
    min-height: 150px;
  }
:where(body.pg-security-ops-index) .mode-card h3 { margin: 0 0 8px; font-size: 16px; }
:where(body.pg-security-ops-index) .mode-card p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
:where(body.pg-security-ops-index) .mode-toggle {
    display: flex; align-items: center; justify-content: space-between;
    gap: 10px; margin-top: 14px; padding-top: 12px;
    border-top: 1px solid var(--border); color: var(--muted); font-size: 12px;
  }
:where(body.pg-security-ops-index) .tag {
    font-size: 11px; padding: 3px 8px; border-radius: 999px;
    border: 1px solid var(--border); color: var(--muted);
  }
:where(body.pg-security-ops-index) .tag.ok { color: var(--pk);   border-color: var(--pk-border);             background: var(--pk-dim); }
:where(body.pg-security-ops-index) .tag.warn { color: var(--warn); border-color: rgba(253,203,110,.25);        background: rgba(253,203,110,.08); }
:where(body.pg-security-ops-index) .policy-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 14px; }
:where(body.pg-security-ops-index) .policy { border: 1px solid var(--border); border-radius: 12px; padding: 13px; background: rgba(9,9,15,.22); }
:where(body.pg-security-ops-index) .policy strong { display: block; margin-bottom: 5px; font-size: 13px; }
:where(body.pg-security-ops-index) .policy span { display: block; color: var(--muted); font-size: 12px; line-height: 1.45; }
:where(body.pg-security-ops-index) .search {
    display: grid; grid-template-columns: 1fr auto;
    gap: 12px; margin: 18px 0 14px;
  }
:where(body.pg-security-ops-index) input[type=text], :where(body.pg-security-ops-index) input[type=search], :where(body.pg-security-ops-index) input[type=password] {
    width: 100%;
    background: var(--surface2); color: var(--text);
    border: 1px solid var(--border); border-radius: 12px;
    padding: 12px 14px; outline: none; font: inherit;
  }
:where(body.pg-security-ops-index) input[type=text]:focus, :where(body.pg-security-ops-index) input[type=search]:focus, :where(body.pg-security-ops-index) input[type=password]:focus {
    border-color: var(--pk);
    box-shadow: 0 0 0 3px rgba(0,184,148,.12);
  }
:where(body.pg-security-ops-index) .toolbar { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
:where(body.pg-security-ops-index) .toolbar .ops-btn { padding: 8px 12px; font-size: 12px; }
:where(body.pg-security-ops-index) .token-row {
    display: grid; grid-template-columns: 1fr 1fr;
    gap: 12px; margin-top: 14px;
  }
:where(body.pg-security-ops-index) .result {
    padding: 16px; border: 1px solid var(--border);
    background: rgba(26,26,40,.65); border-radius: 14px;
    margin: 10px 0;
  }
:where(body.pg-security-ops-index) .result h3 { margin: 0 0 6px; font-size: 16px; }
:where(body.pg-security-ops-index) .result p { margin: 0 0 10px; color: var(--muted); font-size: 13px; line-height: 1.5; }
:where(body.pg-security-ops-index) .empty { color: var(--muted); padding: 16px 0; text-align: center; }
@media (max-width: 850px) {
:where(body.pg-security-ops-index) .mode-grid, :where(body.pg-security-ops-index) .policy-list, :where(body.pg-security-ops-index) .token-row, :where(body.pg-security-ops-index) .search { grid-template-columns: 1fr; }
:where(body.pg-security-ops-index) .uk-hero { padding: 36px 18px 18px; }
:where(body.pg-security-ops-index) .uk-hero h1 { font-size: clamp(26px, 6vw, 38px); }
:where(body.pg-security-ops-index) .uk-hero .sub { font-size: 15px; }
:where(body.pg-security-ops-index) .container { padding: 0 16px 32px; }
:where(body.pg-security-ops-index) .panel { padding: 16px; border-radius: 14px; }
:where(body.pg-security-ops-index) .brand-strip .wrap { padding: 12px 16px; }
}
@media (max-width: 560px) {
:where(body.pg-security-ops-index) .ops-actions { gap: 6px; }
:where(body.pg-security-ops-index) .ops-btn { padding: 8px 10px; font-size: 12px; }
:where(body.pg-security-ops-index) .section-title { margin: 24px 0 10px; }
:where(body.pg-security-ops-index) .term-bar { font-size: 11.5px; }
:where(body.pg-security-ops-index) .term-prompt { display: none; }
:where(body.pg-security-ops-index) .pill { font-size: 10px; padding: 4px 9px; }
:where(body.pg-security-ops-index) .brand { font-size: 15px; }
:where(body.pg-security-ops-index) .brand-strip .pill { display: none; }
:where(body.pg-security-ops-index) footer { font-size: 11px; }
}
body:where(.pg-security-ops-index), body:where(.pg-security-ops-index) { min-width: 0; overflow-x: hidden; }
:where(body.pg-security-ops-index) img, :where(body.pg-security-ops-index) svg, :where(body.pg-security-ops-index) video { max-width: 100%; height: auto; }
:where(body.pg-security-ops-index) pre, :where(body.pg-security-ops-index) code { word-break: break-word; white-space: pre-wrap; }
.pg-security-ops-index-i0 { margin-bottom:14px; }
.pg-security-ops-index-i1 { margin-top:18px; }
.pg-security-ops-index-i2 { margin-bottom:6px; }
.pg-security-ops-index-i3 { color:var(--pk); }
.pg-security-ops-index-i4 { font-size:12px;font-weight:600;padding:2px 7px;border-radius:999px;border:1px solid var(--bd,var(--surface3));margin-left:6px }
.pg-security-ops-index-i5 { margin:0 0 6px; }
.pg-security-ops-index-i6 { margin:0 0 14px;max-width:820px; }
.pg-security-ops-index-i7 { display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px; }
.pg-security-ops-index-i8 { min-height:auto; }
.pg-security-ops-index-i9 { text-transform:uppercase;letter-spacing:.1em;font-size:11px; }
.pg-security-ops-index-i10 { margin-top:6px; }
.pg-security-ops-index-i11 { margin-top:6px;font-size:18px; }
.pg-security-ops-index-i12 { margin-top:14px;display:flex;gap:8px;flex-wrap:wrap; }
.pg-security-ops-index-i13 { margin-top:10px;font-family:ui-monospace,monospace;font-size:12px;color:var(--muted); }
.pg-security-ops-index-i14 { margin-top:8px; }
.pg-security-ops-index-i15 { font-size:14px;margin:0 0 10px;max-width:820px; }
.pg-security-ops-index-i16 { margin-top:14px; }
.pg-security-ops-index-i17 { margin:0 0 10px; }
.pg-security-ops-index-i18 { margin-bottom:8px; }
.pg-security-ops-index-i19 { margin:1rem 0;display:flex;gap:.5rem; }
.pg-security-ops-index-i20 { flex:1;background:var(--surface,var(--surface));color:var(--text,var(--text));border:1px solid var(--border,var(--surface2));border-radius:6px;padding:8px 10px;font:inherit;font-size:13px; }
.pg-security-ops-index-i21 { display:none;padding:.6rem .9rem;border-radius:6px;background:rgba(253,203,110,.10);border:1px solid rgba(253,203,110,.4);color:var(--warn);font-size:13px;margin-bottom:1rem; }
.pg-security-ops-index-i22 { font-size:13px;color:var(--muted,var(--dim));margin:0 0 .5rem; }
.pg-security-ops-index-i23 { margin:0 0 1rem;font-size:13px; }
.pg-security-ops-index-i24 { font-size:15px;margin:1.5rem 0 .75rem;color:var(--text,var(--text)); }
.pg-security-ops-index-i25 { display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); }
.pg-security-ops-index-i26 { color:var(--dim,var(--border-strong));font-size:13px;font-style:italic;margin-top:1rem; }

/* ── page: settings-index (moved from ui/pages/settings/index.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-settings-index) :where(html, body) { min-width:0; overflow-x:hidden; }
:where(body.pg-settings-index) :where(img, svg) { max-width:100%; height:auto; }
:where(body.pg-settings-index) main { max-width: 760px; margin: 0 auto; padding: 32px 22px 60px; }
:where(body.pg-settings-index) h1 { font-size: clamp(26px, 4vw, 36px); margin: 8px 0 12px; letter-spacing: -.03em; }
:where(body.pg-settings-index) .lede { color: var(--ink-dim, var(--dim)); font-size: 15px; margin: 0 0 24px; }
:where(body.pg-settings-index) .setting-card {
    background: rgba(19,19,31,.85);
    border: 1px solid var(--line, var(--surface2));
    border-radius: 14px;
    padding: 22px 22px;
    margin: 14px 0;
    box-shadow: 0 14px 50px rgba(9,9,15,.28);
  }
:where(body.pg-settings-index) .setting-row {
    display: flex; align-items: flex-start; justify-content: space-between;
    gap: 18px; flex-wrap: wrap;
  }
:where(body.pg-settings-index) .setting-text { flex: 1; min-width: 240px; }
:where(body.pg-settings-index) .setting-title {
    font-size: 16px; font-weight: 700; margin: 0 0 4px;
  }
:where(body.pg-settings-index) .setting-desc {
    font-size: 13.5px; color: var(--ink-dim, var(--dim)); margin: 0;
    line-height: 1.6;
  }
:where(body.pg-settings-index) .toggle {
    position: relative; display: inline-block;
    width: 50px; height: 28px; flex-shrink: 0;
  }
:where(body.pg-settings-index) .toggle input { opacity: 0; width: 0; height: 0; }
:where(body.pg-settings-index) .slider {
    position: absolute; cursor: pointer;
    inset: 0; background: var(--line, var(--surface2));
    border-radius: 999px; transition: .2s;
  }
:where(body.pg-settings-index) .slider::before {
    content: ""; position: absolute;
    height: 22px; width: 22px;
    left: 3px; top: 3px;
    background: var(--text); border-radius: 50%;
    transition: .2s;
  }
:where(body.pg-settings-index) input:checked + .slider { background: var(--pk); }
:where(body.pg-settings-index) input:checked + .slider::before { transform: translateX(22px); }
:where(body.pg-settings-index) .pill {
    display:inline-block; padding:3px 9px;
    border-radius:999px; font-size:11px;
    font-weight:700; text-transform:uppercase;
    letter-spacing:.07em;
  }
:where(body.pg-settings-index) .pill.account-only {
    color:var(--burrow);
    border:1px solid rgba(108,92,231,.35);
    background: rgba(108,92,231,.12);
  }
:where(body.pg-settings-index) .gate {
    text-align: center; padding: 40px 24px;
    background: rgba(19,19,31,.85);
    border: 1px solid var(--line, var(--surface2));
    border-radius: 14px; margin: 40px 0;
  }
:where(body.pg-settings-index) .gate h2 { margin: 0 0 8px; }
:where(body.pg-settings-index) .gate p { color: var(--ink-dim, var(--dim)); margin: 0 0 18px; }
.pg-settings-index-i0 { text-decoration:none; }
.pg-settings-index-i1 { color:var(--pk); }
.pg-settings-index-i2 { flex-direction:column;align-items:stretch;gap:14px; }
.pg-settings-index-i3 { display:flex;flex-direction:column;gap:6px; }
.pg-settings-index-i4 { display:grid;grid-template-columns:140px 1fr 120px auto;gap:8px;align-items:center; }
.pg-settings-index-i5 { background:var(--surface);color:var(--text);border:1px solid var(--surface2);border-radius:6px;padding:8px;font:inherit;font-size:13px; }
.pg-settings-index-i6 { background:var(--surface);color:var(--text);border:1px solid var(--surface2);border-radius:6px;padding:8px 10px;font:inherit;font-size:13px; }
.pg-settings-index-i7 { background:var(--pk);color:var(--bg);border:0;border-radius:8px;padding:8px 16px;font:inherit;font-weight:700;font-size:13px;cursor:pointer; }
.pg-settings-index-i8 { font-size:12px;color:var(--border-strong);margin:0; }
.pg-settings-index-i9 { padding:9px 16px;background:transparent;color:var(--bad);border:1px solid var(--bad);border-radius:8px;font-weight:600;cursor:pointer; }
.pg-settings-index-i10 { text-align:right; font-size:12px; color:var(--ink-dim, var(--dim)); margin-top:24px; }
.pg-settings-index-i11 { font-size:13px;color:var(--dim);padding:8px 12px;background:rgba(30,37,49,.4);border:1px dashed var(--surface2);border-radius:8px; }
.pg-settings-index-i12 { display:flex;align-items:center;gap:10px;padding:8px 12px;background:rgba(19,19,31,.5);border:1px solid var(--surface2);border-radius:8px;font-size:13px; }
.pg-settings-index-i13 { font-weight:700;color:var(--pk);min-width:80px; }
.pg-settings-index-i14 { color:var(--dim);flex:1;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:12px; }
.pg-settings-index-i15 { color:var(--border-strong);font-size:11px; }
.pg-settings-index-i16 { background:transparent;color:var(--bad);border:1px solid var(--bad);border-radius:6px;padding:4px 10px;font:inherit;font-size:11px;font-weight:600;cursor:pointer; }

/* ── page: stats-globe (moved from ui/pages/stats-globe.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-stats-globe) :where(html, body) { min-width: 0; overflow-x: hidden; }
:where(body.pg-stats-globe) :where(img, svg, video, canvas) { max-width: 100%; height: auto; }
:where(body.pg-stats-globe) .pk-fleet-kpis {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 0.5rem 1rem;
    font-size: 0.85rem;
    color: var(--text-2);
    background: rgba(9,9,15,0.25);
    border-radius: 6px;
    margin-bottom: 0.5rem;
  }
:where(body.pg-stats-globe) .pk-kpi {
    white-space: nowrap;
  }
:where(body.pg-stats-globe) .pk-kpi--agents {
    color: var(--warren);
  }
:where(body.pg-stats-globe) .pk-kpi--tier {
    color: var(--gold-merge);
  }
:where(body.pg-stats-globe) .pk-view-selector {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
  }
:where(body.pg-stats-globe) .pk-view-label {
    font-size: 0.8rem;
    color: var(--dim);
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }
:where(body.pg-stats-globe) .pk-view-select {
    background: var(--surface);
    color: var(--text-2);
    border: 1px solid var(--border);
    border-radius: 4px;
    padding: 0.25rem 0.5rem;
    font-size: 0.85rem;
    cursor: pointer;
    /* Grows naturally as options are added --
       no fixed width, behaves like a spreadsheet column */
    min-width: 10rem;
  }
:where(body.pg-stats-globe) .pk-view-select:focus {
    outline: none;
    border-color: var(--accent);
  }
:where(body.pg-stats-globe) .pk-zone-kpis {
    display: flex;
    gap: 1.5rem;
    font-size: 0.85rem;
    color: var(--text-2);
    margin-bottom: 0.5rem;
    padding: 0.25rem 0;
    min-height: 1.2rem;
  }
:where(body.pg-stats-globe) .pk-globe-container {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: var(--bg);
    border-radius: 8px;
    overflow: hidden;
    position: relative;
  }
:where(body.pg-stats-globe) #pk-globe {
    width: 100%;
    height: 100%;
  }
.pg-stats-globe-i0 { display:none }

/* ── page: status (moved from ui/pages/status.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-status) :where(html, body) { min-width: 0; overflow-x: hidden; }
:where(body.pg-status) :where(img, svg, canvas) { max-width: 100%; height: auto; }
:where(body.pg-status) .status-grid {
      display: grid; gap: 12px;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      margin: 14px 0 20px;
    }
:where(body.pg-status) .status-card {
      background: rgba(19,19,31,.85); border: 1px solid var(--line, var(--surface2));
      border-radius: 10px; padding: 14px;
    }
:where(body.pg-status) .status-card strong { display: block; margin-bottom: 6px; }
:where(body.pg-status) .status-dot {
      display: inline-block; width: 9px; height: 9px; border-radius: 50%;
      vertical-align: middle; margin-right: 6px;
    }
:where(body.pg-status) .dot-ok { background: var(--pk); }
:where(body.pg-status) .dot-warn { background: var(--warn); }
:where(body.pg-status) .dot-bad { background: var(--bad); }
:where(body.pg-status) .trend-arrow { font-weight: 700; }
:where(body.pg-status) .trend-up { color: var(--pk); }
:where(body.pg-status) .trend-flat { color: var(--dim); }
:where(body.pg-status) .trend-down { color: var(--bad); }
:where(body.pg-status) .privacy-card {
      border-left: 3px solid var(--pk);
      background: rgba(0,184,148,.06);
      padding: 14px 18px; border-radius: 10px;
      margin: 24px 0;
    }
:where(body.pg-status) .privacy-card strong { color: var(--pk); }
:where(body.pg-status) .pct {
      font-family: ui-monospace, monospace; font-size: 22px;
      font-variant-numeric: tabular-nums; margin: 6px 0 4px;
    }
:where(body.pg-status) .agg-grid {
      display: grid; gap: 14px;
      grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
      margin: 14px 0;
    }
:where(body.pg-status) .agg-card {
      background: rgba(19,19,31,.85); border: 1px solid var(--line, var(--surface2));
      border-radius: 10px; padding: 16px;
    }
:where(body.pg-status) .agg-card .label {
      font-size: 11px; text-transform: uppercase; letter-spacing: .1em;
      color: var(--ink-dim, var(--dim)); font-weight: 700;
    }
:where(body.pg-status) .agg-card .stat {
      font-size: 24px; font-weight: 700; margin: 8px 0 4px;
      font-variant-numeric: tabular-nums;
    }
.pg-status-i0 { color:var(--ink-dim);font-size:14px; }
.pg-status-i1 { margin:6px 0 0;color:var(--ink, var(--text));font-size:14px;line-height:1.6; }
.pg-status-i2 { margin:8px 0 0;color:var(--ink-dim, var(--dim));font-size:13px;line-height:1.55; }
.pg-status-i3 { color:var(--ink-dim); }
.pg-status-i4 { color:var(--ink-muted);font-size:12px;margin-top:32px; }
.pg-status-i5 { padding:6px 0;border-bottom:1px solid var(--line);font-size:13px; }
.pg-status-i6 { color:var(--ink-muted);float:right; }

/* ── page: system-pulse-index (moved from ui/pages/system-pulse/index.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-system-pulse-index) :where(html, body) { min-width:0; overflow-x:hidden; }
body:where(.pg-system-pulse-index) {
      margin: 0; font-family: 'Satoshi', Inter, system-ui, sans-serif;
      background:
        radial-gradient(ellipse 800px 400px at 50% -10%, rgba(0,184,148,.16), transparent 60%),
        radial-gradient(circle at 90% 80%, rgba(108,92,231,.10), transparent 45%),
        linear-gradient(rgba(30,37,49,.45) 1px, transparent 1px) 0 0 / 48px 48px,
        linear-gradient(90deg, rgba(30,37,49,.45) 1px, transparent 1px) 0 0 / 48px 48px,
        var(--bg);
      color: var(--text); line-height: 1.55; min-height: 100vh;
    }
:where(body.pg-system-pulse-index) main { max-width: 1080px; margin: 0 auto; padding: 32px 22px 60px; }
:where(body.pg-system-pulse-index) h1 { font-size: clamp(28px, 4vw, 40px); margin: 8px 0 8px; letter-spacing: -.03em; }
:where(body.pg-system-pulse-index) .lede { color: var(--muted); font-size: 15px; margin: 0 0 28px; max-width: 70ch; }
:where(body.pg-system-pulse-index) .lede a { color: var(--pk); }
:where(body.pg-system-pulse-index) .pulse-grid {
      display: grid; gap: 16px;
      grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
      margin-bottom: 36px;
    }
:where(body.pg-system-pulse-index) .pulse-card {
      background: rgba(19,19,31,.85);
      border: 1px solid var(--border);
      border-radius: 14px;
      padding: 18px 20px;
      box-shadow: 0 14px 50px rgba(9,9,15,.28);
      position: relative;
    }
:where(body.pg-system-pulse-index) .pulse-card.ok { border-color: rgba(0,184,148,.35); }
:where(body.pg-system-pulse-index) .pulse-card.warn { border-color: rgba(253,203,110,.45); }
:where(body.pg-system-pulse-index) .pulse-card.bad { border-color: rgba(225,112,85,.5); }
:where(body.pg-system-pulse-index) .pulse-card .label {
      font-size: 11px; letter-spacing: .14em; text-transform: uppercase;
      color: var(--dim); font-weight: 700;
    }
:where(body.pg-system-pulse-index) .pulse-card .name { font-size: 22px; font-weight: 700; margin: 6px 0 4px; letter-spacing: -.02em; }
:where(body.pg-system-pulse-index) .pulse-card .state {
      display: inline-flex; align-items: center; gap: 8px;
      font-size: 13px; font-weight: 600;
      padding: 4px 12px; border-radius: 999px;
      background: rgba(0,184,148,.10); color: var(--pk);
      border: 1px solid rgba(0,184,148,.35);
    }
:where(body.pg-system-pulse-index) .pulse-card.warn .state {
      background: rgba(253,203,110,.10); color: var(--warn);
      border-color: rgba(253,203,110,.45);
    }
:where(body.pg-system-pulse-index) .pulse-card.bad .state {
      background: rgba(225,112,85,.10); color: var(--bad);
      border-color: rgba(225,112,85,.5);
    }
:where(body.pg-system-pulse-index) .pulse-card .state::before {
      content: ""; width: 8px; height: 8px; border-radius: 50%;
      background: currentColor; box-shadow: 0 0 12px currentColor;
    }
:where(body.pg-system-pulse-index) .pulse-card .meta {
      display: grid; grid-template-columns: auto auto; gap: 4px 12px;
      margin-top: 12px; font-size: 13px; color: var(--muted);
      font-variant-numeric: tabular-nums;
    }
:where(body.pg-system-pulse-index) .pulse-card .meta b { color: var(--text); font-weight: 600; }
:where(body.pg-system-pulse-index) .pulse-card .detail {
      margin-top: 14px; padding-top: 12px; border-top: 1px dashed var(--border);
      font-size: 12px; color: var(--dim); font-family: 'JetBrains Mono', ui-monospace, monospace;
      max-height: 100px; overflow: auto; white-space: pre-wrap; word-break: break-all;
    }
:where(body.pg-system-pulse-index) .sophia-row {
      display: grid; grid-template-columns: 1fr 1fr; gap: 16px;
      margin: 36px 0 16px;
    }
:where(body.pg-system-pulse-index) .sophia-half {
      background: rgba(19,19,31,.6);
      border: 1px solid var(--border);
      border-radius: 14px;
      padding: 20px;
    }
:where(body.pg-system-pulse-index) .sophia-half h3 { margin: 0 0 6px; font-size: 17px; color: var(--text); }
:where(body.pg-system-pulse-index) .sophia-half .sub { color: var(--muted); font-size: 13px; margin: 0 0 12px; }
:where(body.pg-system-pulse-index) .sophia-half ul { margin: 0; padding-left: 18px; color: var(--muted); font-size: 13px; }
:where(body.pg-system-pulse-index) .sophia-half li { margin: 4px 0; }
:where(body.pg-system-pulse-index) .sophia-half code { color: var(--pk); font-size: 12px; }
@media (max-width: 760px) {
:where(body.pg-system-pulse-index) .sophia-row { grid-template-columns: 1fr; }
}
:where(body.pg-system-pulse-index) .meta-grid {
      background: rgba(19,19,31,.5); border: 1px solid var(--border);
      border-radius: 14px; padding: 18px 22px; margin-top: 24px;
    }
:where(body.pg-system-pulse-index) .meta-grid .row { display: flex; justify-content: space-between; gap: 16px;
                       padding: 8px 0; border-bottom: 1px dashed rgba(30,37,49,.6); font-size: 14px; }
:where(body.pg-system-pulse-index) .meta-grid .row:last-child { border-bottom: 0; }
:where(body.pg-system-pulse-index) .meta-grid .row .k { color: var(--muted); }
:where(body.pg-system-pulse-index) .meta-grid .row .v { color: var(--text); font-variant-numeric: tabular-nums; }
:where(body.pg-system-pulse-index) .meta-grid .row .v code { color: var(--pk); font-size: 13px; }
:where(body.pg-system-pulse-index) .footer-note {
      margin-top: 36px; padding-top: 18px;
      border-top: 1px solid var(--border);
      color: var(--dim); font-size: 13px;
    }
:where(body.pg-system-pulse-index) .footer-note a { color: var(--pk); }
:where(body.pg-system-pulse-index) button.refresh {
      background: rgba(0,184,148,.10); color: var(--pk);
      border: 1px solid rgba(0,184,148,.35);
      padding: 8px 16px; border-radius: 8px;
      font: inherit; font-weight: 600; cursor: pointer;
      transition: background .15s ease;
    }
:where(body.pg-system-pulse-index) button.refresh:hover { background: rgba(0,184,148,.18); }
.pg-system-pulse-index-i0 { float:right; margin-top: -4px; }

/* ── page: trust-intake-index (moved from ui/pages/trust-intake/index.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-trust-intake-index) *, :where(body.pg-trust-intake-index) *::before, :where(body.pg-trust-intake-index) *::after { box-sizing:border-box; margin:0; padding:0; }
body:where(.pg-trust-intake-index), body:where(.pg-trust-intake-index) { min-width:0; overflow-x:hidden; }
body:where(.pg-trust-intake-index) {
    font-family:'Satoshi',system-ui,sans-serif; color:var(--text);
    background:
      radial-gradient(ellipse 800px 400px at 50% -10%, rgba(0,184,148,.13), transparent 60%),
      var(--bg);
    line-height:1.55; min-height:100vh;
  }
:where(body.pg-trust-intake-index) main { max-width:1180px; margin:0 auto; padding:28px 22px 60px; }
:where(body.pg-trust-intake-index) h1 { font-size:clamp(28px,4vw,36px); margin:0 0 6px; letter-spacing:-.03em; }
:where(body.pg-trust-intake-index) .lede { color:var(--muted); font-size:14px; max-width:74ch; margin:0 0 22px; }
:where(body.pg-trust-intake-index) .rollup {
    display:grid; gap:10px;
    grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
    margin-bottom:20px;
  }
:where(body.pg-trust-intake-index) .stat {
    /* fill is governed by .pk-feed: transparent outline while loading, then
       fills + blooms when the datum feeds in (see planekey.css .pk-feed). */
    border:1px solid var(--border);
    border-radius:12px; padding:14px 16px;
  }
:where(body.pg-trust-intake-index) .stat .k {
    font-size:10px; text-transform:uppercase; letter-spacing:.1em;
    color:var(--dim); font-weight:700; margin-bottom:5px;
  }
:where(body.pg-trust-intake-index) .stat .v { font-size:24px; font-weight:700; font-variant-numeric:tabular-nums; letter-spacing:-.02em; }
:where(body.pg-trust-intake-index) .stat.alert .v { color:var(--bad); }
:where(body.pg-trust-intake-index) .stat.warn .v { color:var(--warn); }
:where(body.pg-trust-intake-index) .stat.ok .v { color:var(--pk); }
:where(body.pg-trust-intake-index) .tabs {
    display:flex; gap:4px; flex-wrap:wrap;
    border-bottom:1px solid var(--border);
    margin-bottom:18px;
  }
:where(body.pg-trust-intake-index) .tab {
    background:none; border:0; color:var(--muted);
    font:inherit; font-size:13px; font-weight:600;
    padding:10px 14px; cursor:pointer;
    border-bottom:2px solid transparent;
  }
:where(body.pg-trust-intake-index) .tab:hover { color:var(--text); }
:where(body.pg-trust-intake-index) .tab.active { color:var(--pk); border-bottom-color:var(--pk); }
:where(body.pg-trust-intake-index) .filterbar {
    display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin-bottom:14px;
  }
:where(body.pg-trust-intake-index) .filterbar input, :where(body.pg-trust-intake-index) .filterbar select {
    background:var(--surface); color:var(--text);
    border:1px solid var(--border); border-radius:6px;
    padding:6px 9px; font:inherit; font-size:13px;
  }
:where(body.pg-trust-intake-index) .filterbar button {
    background:var(--pk-dim); color:var(--pk);
    border:1px solid var(--pk-border); border-radius:6px;
    padding:6px 13px; font:inherit; font-weight:700; font-size:12px; cursor:pointer;
  }
:where(body.pg-trust-intake-index) .panel {
    background:rgba(19,19,31,.85);
    border:1px solid var(--border);
    border-radius:14px; overflow:hidden;
  }
:where(body.pg-trust-intake-index) .row {
    display:grid; gap:12px; align-items:center;
    padding:11px 16px;
    border-bottom:1px solid var(--border);
    cursor:pointer; transition:background .12s;
    font-size:13px;
  }
:where(body.pg-trust-intake-index) .row:last-child { border-bottom:0; }
:where(body.pg-trust-intake-index) .row:hover { background:rgba(30,37,49,.4); }
:where(body.pg-trust-intake-index) .row.head {
    cursor:default; background:rgba(10,12,16,.6);
    font-size:10px; text-transform:uppercase; letter-spacing:.08em;
    color:var(--dim); font-weight:700;
  }
:where(body.pg-trust-intake-index) .row.head:hover { background:rgba(10,12,16,.6); }
:where(body.pg-trust-intake-index) .mono { font-family:'JetBrains Mono',ui-monospace,monospace; font-size:12px; }
:where(body.pg-trust-intake-index) .layer {
    font-size:10px; padding:2px 8px; border-radius:4px;
    text-transform:uppercase; letter-spacing:.05em; font-weight:700;
    display:inline-block;
  }
:where(body.pg-trust-intake-index) .layer.dev { background:var(--pk-dim); color:var(--pk); border:1px solid var(--pk-border); }
:where(body.pg-trust-intake-index) .layer.builder { background:rgba(108,92,231,.12); color:var(--accent); border:1px solid rgba(108,92,231,.4); }
:where(body.pg-trust-intake-index) .layer.live { background:rgba(253,203,110,.12); color:var(--warn); border:1px solid rgba(253,203,110,.4); }
:where(body.pg-trust-intake-index) .status {
    font-size:10px; padding:2px 8px; border-radius:4px;
    text-transform:uppercase; letter-spacing:.05em; font-weight:700;
  }
:where(body.pg-trust-intake-index) .status.pass { background:var(--pk-dim); color:var(--pk); border:1px solid var(--pk-border); }
:where(body.pg-trust-intake-index) .status.warn { background:rgba(253,203,110,.12); color:var(--warn); border:1px solid rgba(253,203,110,.4); }
:where(body.pg-trust-intake-index) .status.fail { background:rgba(225,112,85,.12); color:var(--bad); border:1px solid rgba(225,112,85,.4); }
:where(body.pg-trust-intake-index) .status.open { background:rgba(225,112,85,.12); color:var(--bad); border:1px solid rgba(225,112,85,.4); }
:where(body.pg-trust-intake-index) .risk {
    font-size:10px; padding:2px 8px; border-radius:4px;
    text-transform:uppercase; font-weight:700; letter-spacing:.05em;
  }
:where(body.pg-trust-intake-index) .risk.high, :where(body.pg-trust-intake-index) .risk.critical { background:rgba(225,112,85,.12); color:var(--bad); }
:where(body.pg-trust-intake-index) .risk.medium { background:rgba(253,203,110,.12); color:var(--warn); }
:where(body.pg-trust-intake-index) .risk.low, :where(body.pg-trust-intake-index) .risk.unknown { background:rgba(30,37,49,.6); color:var(--muted); }
:where(body.pg-trust-intake-index) .empty { padding:24px; text-align:center; color:var(--dim); font-size:13px; font-style:italic; }
:where(body.pg-trust-intake-index) .policy-grid { display:grid; gap:10px; padding:6px; }
:where(body.pg-trust-intake-index) .policy-item {
    background:rgba(30,37,49,.4); border:1px solid var(--border);
    border-radius:10px; padding:12px 14px;
  }
:where(body.pg-trust-intake-index) .policy-item .pk { color:var(--pk); font-weight:700; font-size:13px; text-transform:uppercase; letter-spacing:.05em; }
:where(body.pg-trust-intake-index) .policy-item .pv { color:var(--muted); font-size:13px; margin-top:4px; }
:where(body.pg-trust-intake-index) .detail {
    margin-top:18px; display:none;
    background:rgba(19,19,31,.85);
    border:1px solid var(--pk-border);
    border-radius:14px; padding:18px 20px;
  }
:where(body.pg-trust-intake-index) .detail.show { display:block; }
:where(body.pg-trust-intake-index) .detail h3 { font-size:14px; margin:0 0 12px; }
:where(body.pg-trust-intake-index) .detail h3 code {
    font-family:'JetBrains Mono',ui-monospace,monospace; font-size:12px;
    background:rgba(30,37,49,.5); padding:2px 8px; border-radius:4px; color:var(--accent);
  }
:where(body.pg-trust-intake-index) .detail pre {
    background:rgba(9,9,15,.7); border:1px solid var(--border);
    border-radius:8px; padding:12px;
    font-family:'JetBrains Mono',ui-monospace,monospace; font-size:11px;
    color:var(--muted); max-height:340px; overflow:auto;
    white-space:pre-wrap; word-break:break-all;
  }
:where(body.pg-trust-intake-index) .toast {
    position:fixed; bottom:24px; right:24px;
    background:var(--pk-dim); color:var(--pk);
    border:1px solid var(--pk-border); border-radius:8px;
    padding:10px 14px; font-size:13px; font-weight:600;
    box-shadow:0 12px 32px rgba(9,9,15,.4); display:none; z-index:9000;
  }
:where(body.pg-trust-intake-index) .toast.show { display:block; }
:where(body.pg-trust-intake-index) .toast.bad { background:rgba(225,112,85,.10); color:var(--bad); border-color:rgba(225,112,85,.4); }
.pg-trust-intake-index-i0 { grid-template-columns:80px 1fr 90px 110px 100px; }
.pg-trust-intake-index-i1 { color:var(--accent); }
.pg-trust-intake-index-i2 { color:var(--dim);font-size:11px; }
.pg-trust-intake-index-i3 { color:var(--muted); }
.pg-trust-intake-index-i4 { grid-template-columns:80px 1fr 70px 70px 70px 70px 80px 100px; }
.pg-trust-intake-index-i5 { color:var(--dim); }
.pg-trust-intake-index-i6 { color:var(--pk); }
.pg-trust-intake-index-i7 { color:var(--bad); }
.pg-trust-intake-index-i8 { color:var(--warn); }
.pg-trust-intake-index-i9 { grid-template-columns:80px 1fr 130px 80px 80px 100px; }
.pg-trust-intake-index-i10 { font-size:11px; }
.pg-trust-intake-index-i11 { grid-template-columns:80px 1fr 1fr 90px 80px 100px; }

/* ── page: wiki (moved from ui/pages/wiki.html — design-system conformance pass 2026-10-26) ── */
body:where(.pg-wiki) { margin: 0; }
:where(body.pg-wiki) .wiki-layout { display: grid; grid-template-columns: 260px 1fr; max-width: var(--container-max); margin: 0 auto; padding: 28px var(--pad-page) 80px; gap: 28px; align-items: start; }
@media (max-width: 860px) {
:where(body.pg-wiki) .wiki-layout { grid-template-columns: 1fr; }
}
:where(body.pg-wiki) .wiki-nav { position: sticky; top: 84px; max-height: calc(100vh - 110px); overflow-y: auto; border: 1px solid var(--line); border-radius: var(--r-tile); background: var(--panel); padding: 14px; }
:where(body.pg-wiki) .wiki-chapter { font-family: var(--mono); font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-mute); margin: 14px 0 6px; }
:where(body.pg-wiki) .wiki-chapter:first-child { margin-top: 0; }
:where(body.pg-wiki) .wiki-nav a { display: block; font-size: 13px; color: var(--ink-dim); padding: 5px 8px; border-radius: 6px; }
:where(body.pg-wiki) .wiki-nav a:hover { color: var(--ink); background: var(--panel-2); }
:where(body.pg-wiki) .wiki-nav a.active { color: var(--ink); background: var(--panel-2); }
:where(body.pg-wiki) .wiki-tier { font-family: var(--mono); font-size: 9px; padding: 1px 5px; border-radius: 3px; margin-left: 6px; vertical-align: middle; }
:where(body.pg-wiki) .wiki-tier.public { color: var(--warren); background: var(--warren-wash); }
:where(body.pg-wiki) .wiki-tier.free { color: var(--burrow); background: var(--burrow-wash); }
:where(body.pg-wiki) .wiki-tier.starter, :where(body.pg-wiki) .wiki-tier.pro { color: var(--thump); background: var(--thump-wash); }
:where(body.pg-wiki) .wiki-tier.enterprise { color: var(--accent); background: var(--accent-dim); }
:where(body.pg-wiki) .wiki-article { min-width: 0; }
:where(body.pg-wiki) .wiki-article h1 { font-size: clamp(26px, 2.4vw, 38px); margin: 0 0 6px; }
:where(body.pg-wiki) .wiki-meta { color: var(--ink-mute); font-size: 12px; font-family: var(--mono); margin-bottom: 24px; }
:where(body.pg-wiki) .wiki-body { color: var(--ink-2); line-height: 1.65; max-width: 78ch; }
:where(body.pg-wiki) .wiki-body h2 { font-size: 21px; margin: 32px 0 10px; }
:where(body.pg-wiki) .wiki-body h3 { font-size: 16px; margin: 22px 0 8px; }
:where(body.pg-wiki) .wiki-body p { margin: 0 0 14px; }
:where(body.pg-wiki) .wiki-body code { background: var(--panel-2); padding: 2px 6px; border-radius: 4px; font-size: 12.5px; color: var(--ink); }
:where(body.pg-wiki) .wiki-body pre { background: var(--bg-deep); border: 1px solid var(--line); border-radius: 8px; padding: 14px; overflow-x: auto; font-size: 12.5px; }
:where(body.pg-wiki) .wiki-body pre code { background: none; padding: 0; }
:where(body.pg-wiki) .wiki-body table { width: 100%; border-collapse: collapse; margin: 0 0 18px; font-size: 13px; }
:where(body.pg-wiki) .wiki-body th, :where(body.pg-wiki) .wiki-body td { text-align: left; padding: 6px 10px; border-bottom: 1px solid var(--line); }
:where(body.pg-wiki) .wiki-body blockquote { border-left: 3px solid var(--thump); background: var(--thump-wash); margin: 0 0 16px; padding: 10px 16px; border-radius: 0 8px 8px 0; color: var(--ink); font-size: 13.5px; }
:where(body.pg-wiki) .wiki-body ul, :where(body.pg-wiki) .wiki-body ol { padding-left: 22px; margin: 0 0 14px; }
:where(body.pg-wiki) .wiki-search { width: 100%; background: var(--bg-deep); border: 1px solid var(--line); border-radius: var(--r-chip); padding: 8px 10px; color: var(--ink); font: inherit; font-size: 13px; margin-bottom: 12px; }
.pg-wiki-i0 { margin:16px 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:11.5px;color:var(--ink-mute);line-height:1.5; }
.pg-wiki-i1 { color:var(--ink-mute); }
.pg-wiki-i2 { color:var(--ink-mute);font-size:12px; }

/* ── page: workers-index (moved from ui/pages/workers/index.html — design-system conformance pass 2026-10-26) ── */
:where(body.pg-workers-index) *, :where(body.pg-workers-index) *::before, :where(body.pg-workers-index) *::after { box-sizing:border-box; margin:0; padding:0; }
body:where(.pg-workers-index), body:where(.pg-workers-index) { min-width:0; overflow-x:hidden; }
body:where(.pg-workers-index) {
    font-family:'Satoshi',system-ui,sans-serif; color:var(--text);
    background:
      radial-gradient(ellipse 800px 400px at 50% -10%, rgba(0,184,148,.12), transparent 60%),
      var(--bg);
    line-height:1.55; min-height:100vh;
  }
:where(body.pg-workers-index) main { max-width:1100px; margin:0 auto; padding:28px 22px 60px; }
:where(body.pg-workers-index) h1 { font-size:clamp(28px,4vw,36px); margin:0 0 6px; letter-spacing:-.03em; }
:where(body.pg-workers-index) .lede { color:var(--muted); font-size:14px; max-width:64ch; margin:0 0 24px; }
:where(body.pg-workers-index) .layout {
    display:grid; gap:16px;
    grid-template-columns:260px 1fr;
  }
@media (max-width:760px) {
:where(body.pg-workers-index) .layout { grid-template-columns:1fr; }
}
:where(body.pg-workers-index) .fleets-card {
    background:rgba(19,19,31,.85);
    border:1px solid var(--border);
    border-radius:14px;
    padding:18px;
    height:fit-content;
  }
:where(body.pg-workers-index) .fleets-card h2 {
    font-size:12px; text-transform:uppercase; letter-spacing:.1em;
    color:var(--dim); font-weight:700; margin:0 0 12px;
  }
:where(body.pg-workers-index) .fleet-item {
    display:flex; align-items:center; justify-content:space-between;
    padding:9px 11px; margin-bottom:4px;
    background:transparent; border:1px solid transparent;
    border-radius:8px; cursor:pointer;
    font-size:13px; color:var(--text);
    text-align:left; width:100%; font:inherit;
  }
:where(body.pg-workers-index) .fleet-item:hover { background:rgba(30,37,49,.35); border-color:var(--border); }
:where(body.pg-workers-index) .fleet-item.active {
    background:rgba(0,184,148,.08); border-color:var(--pk-border);
    color:var(--pk);
  }
:where(body.pg-workers-index) .fleet-item .name { font-weight:600; flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; }
:where(body.pg-workers-index) .fleet-item .badge {
    font-size:11px; padding:2px 7px; border-radius:8px;
    background:rgba(30,37,49,.6); color:var(--muted);
    font-variant-numeric:tabular-nums;
    flex-shrink:0; margin-left:8px;
  }
:where(body.pg-workers-index) .fleets-empty {
    padding:18px 12px; color:var(--dim); font-size:12.5px;
    font-style:italic; text-align:center;
  }
:where(body.pg-workers-index) .workers-card {
    background:rgba(19,19,31,.85);
    border:1px solid var(--border);
    border-radius:14px;
    padding:18px 20px;
  }
:where(body.pg-workers-index) .workers-header {
    display:flex; align-items:center; gap:12px;
    margin-bottom:14px;
  }
:where(body.pg-workers-index) .workers-header h2 {
    font-size:16px; margin:0; letter-spacing:-.02em;
    flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis;
  }
:where(body.pg-workers-index) .workers-header .pill {
    font-size:10px; padding:3px 8px; border-radius:4px;
    background:var(--pk-dim); color:var(--pk);
    border:1px solid var(--pk-border);
    font-weight:700; letter-spacing:.06em;
  }
:where(body.pg-workers-index) .workers-grid {
    display:grid; gap:10px;
    grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));
  }
:where(body.pg-workers-index) .worker {
    background:rgba(30,37,49,.4);
    border:1px solid var(--border);
    border-radius:10px;
    padding:14px;
  }
:where(body.pg-workers-index) .worker .row1 {
    display:flex; align-items:center; gap:8px;
    margin-bottom:6px;
  }
:where(body.pg-workers-index) .worker .role {
    font-size:10px; padding:2px 7px; border-radius:4px;
    background:rgba(108,92,231,.15); color:var(--accent);
    border:1px solid rgba(108,92,231,.4);
    font-weight:700; text-transform:uppercase; letter-spacing:.05em;
  }
:where(body.pg-workers-index) .worker .role.lead { background:var(--pk-dim); color:var(--pk); border-color:var(--pk-border); }
:where(body.pg-workers-index) .worker .role.follower { background:rgba(30,37,49,.6); color:var(--muted); border-color:var(--border); }
:where(body.pg-workers-index) .worker .substrate {
    font-size:10px; color:var(--dim);
    flex:1; text-align:right; text-transform:uppercase; letter-spacing:.05em;
  }
:where(body.pg-workers-index) .worker .id {
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:12px; color:var(--text);
    word-break:break-all; margin-bottom:6px;
    overflow:hidden; text-overflow:ellipsis;
  }
:where(body.pg-workers-index) .worker .meta { font-size:12px; color:var(--muted); }
:where(body.pg-workers-index) .worker .meta .k { color:var(--dim); margin-right:4px; }
:where(body.pg-workers-index) .worker .key-yes { color:var(--pk); }
:where(body.pg-workers-index) .worker .key-no { color:var(--warn); }
:where(body.pg-workers-index) .workers-empty {
    padding:24px; text-align:center; color:var(--dim);
    font-size:13px; font-style:italic;
  }
:where(body.pg-workers-index) .note {
    margin-top:14px; padding:10px 12px;
    background:rgba(253,203,110,.08); color:var(--warn);
    border:1px solid rgba(253,203,110,.3);
    border-radius:8px; font-size:12px;
  }
:where(body.pg-workers-index) .conn-section { margin-top:40px; }
:where(body.pg-workers-index) .conn-section h2 { font-size:clamp(20px,2.4vw,24px); letter-spacing:-.02em; margin:8px 0 8px; }
:where(body.pg-workers-index) .conn-lede { color:var(--ink-dim); font-size:13.5px; max-width:72ch; margin:0 0 12px; }
:where(body.pg-workers-index) .conn-secnote {
    margin:0 0 18px; padding:12px 14px;
    background:var(--burrow-wash); color:var(--ink-2);
    border:1px solid rgba(124,167,255,.28);
    border-radius:10px; font-size:12.5px; line-height:1.5; max-width:74ch;
  }
:where(body.pg-workers-index) .conn-secnote strong { color:var(--burrow); }
:where(body.pg-workers-index) .conn-secnote a { color:var(--burrow); text-decoration:underline; }
:where(body.pg-workers-index) .conn-grid { display:grid; gap:14px; grid-template-columns:repeat(auto-fill, minmax(320px,1fr)); }
:where(body.pg-workers-index) .conn-card-sub { font-size:11px; color:var(--dim); text-transform:uppercase; letter-spacing:.05em; }
:where(body.pg-workers-index) .conn-bean-id { font-family:'JetBrains Mono',ui-monospace,monospace; text-transform:none; letter-spacing:0; color:var(--muted); }
:where(body.pg-workers-index) .conn-form { display:flex; flex-direction:column; gap:12px; margin-top:12px; }
:where(body.pg-workers-index) .pk-field { display:flex; flex-direction:column; gap:6px; }
:where(body.pg-workers-index) .pk-field label { font-size:12.5px; color:var(--muted); }
:where(body.pg-workers-index) .pk-field .hint { font-size:11px; color:var(--dim); }
:where(body.pg-workers-index) .pk-input, :where(body.pg-workers-index) select.pk-input {
    background:var(--surface); color:var(--ink);
    border:1px solid var(--border); border-radius:8px;
    padding:9px 11px; font:inherit; font-size:14px; width:100%;
  }
:where(body.pg-workers-index) .pk-input:focus { outline:2px solid var(--burrow); outline-offset:1px; border-color:var(--burrow); }
:where(body.pg-workers-index) .conn-toggle { display:flex; align-items:center; gap:8px; font-size:13px; color:var(--ink-dim); cursor:pointer; }
:where(body.pg-workers-index) .conn-toggle input { width:16px; height:16px; accent-color:var(--pk); }
:where(body.pg-workers-index) .conn-actions { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
:where(body.pg-workers-index) .conn-msg { font-size:12px; }
:where(body.pg-workers-index) .conn-msg.ok { color:var(--warren); }
:where(body.pg-workers-index) .conn-msg.err { color:var(--thump); }
:where(body.pg-workers-index) .conn-signedout, :where(body.pg-workers-index) .conn-empty, :where(body.pg-workers-index) .conn-status {
    padding:22px; text-align:center; color:var(--dim);
    font-size:13.5px; border:1px dashed var(--border); border-radius:12px;
  }
:where(body.pg-workers-index) .conn-signedout a { color:var(--pk); font-weight:600; }
@media (max-width:520px) {
:where(body.pg-workers-index) .conn-grid { grid-template-columns:1fr; }
}
.pg-workers-index-i0 { max-width:640px }
.pg-workers-index-i1 { max-width:640px;margin-top:14px }
.pg-workers-index-i2 { color:var(--accent);font-size:11px; }
.pg-workers-index-i3 { margin-top:12px;border-top:1px solid var(--bd,var(--text));padding-top:12px }
.pg-workers-index-i4 { display:flex;gap:6px }
.pg-workers-index-i5 { max-width:150px }
.pg-workers-index-i6 { flex:1 }
.pg-workers-index-i7 { margin-top:6px }
.pg-workers-index-i8 { margin-bottom:6px }
.pg-workers-index-i9 { display:flex;justify-content:space-between;align-items:center }
.pg-workers-index-i10 { font:12px ui-monospace,monospace;background:var(--card,var(--text));border:1px solid var(--bd,var(--text));border-radius:6px;padding:8px;word-break:break-all }
.pg-workers-index-i11 { margin-bottom:4px }
.pg-workers-index-i12 { margin-top:6px;font-size:12px }
.pg-workers-index-i13 { font-size:11px }
.pg-workers-index-i14 { display:flex;justify-content:space-between;align-items:center;gap:8px;padding:2px 0 }
.pg-workers-index-i15 { color:var(--accent) }
.pg-workers-index-i16 { color:var(--ok,var(--pk)) }
