/* Bebas Neue: the wordmark's face (vendor/fonts, from @fontsource/bebas-neue). */
@font-face {
  font-family: 'Bebas Neue';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/vendor/fonts/bebas-neue-latin-400-normal.woff2') format('woff2'),
       url('/vendor/fonts/bebas-neue-latin-400-normal.woff') format('woff');
}

/* /results — public awards page in the light Kinetic Industrial theme.
   Mirrors the Awards PDF structure: Best of Show → Class Winners (1st/2nd/3rd)
   → Specialty Awards → People's Choice → Hardship Award. Typography matches
   the marketing landing page — Archivo Black display, Archivo body, no shouty
   bold body text. */

.results-page {
  max-width: var(--shell-console, 1240px);
  margin: 0 auto;
  padding: var(--sp-12) var(--sp-24) var(--sp-48);
  position: relative;
  z-index: 1;
}
@media (min-width: 961px) {
  .results-page { padding: var(--sp-16) var(--sp-32) var(--sp-64); }
}

.results-loading {
  text-align: center;
  color: var(--text-muted);
  font-family: 'Archivo', sans-serif;
  font-size: 0.98rem;
  letter-spacing: 0.1em;
  padding: 4rem 0;
}

.results-content.hidden,
.results-loading.hidden,
.results-section.hidden,
.results-specialty.hidden,
.results-hardship.hidden { display: none; }

.results-title {
  font-family: 'Archivo Black', 'Archivo', sans-serif;
  font-weight: 400;
  font-size: clamp(2rem, 5vw, 2.6rem);
  color: var(--text-primary);
  letter-spacing: 0.01em;
  text-align: center;
  margin: 1.25rem 0 0.4rem;
  text-transform: uppercase;
  line-height: 1;
}

/* "Presented by …" subtitle under the show name. Mirrors the awards
   PDF's italic subtitle row directly below the show name. */
.results-presented {
  text-align: center;
  font-family: 'Archivo', sans-serif;
  font-style: italic;
  font-size: 1.05rem;
  color: var(--text-secondary);
  margin: -0.2rem 0 0.6rem;
}
.results-presented.hidden { display: none; }

/* Where, when, who ran it, how many cars — the facts a results link needs
   when it arrives with no other context. Mono, because it is data, and it
   wraps to its own lines on a phone instead of squeezing the separators. */
.results-meta {
  text-align: center;
  font-family: var(--font-mono, 'JetBrains Mono', ui-monospace, monospace);
  font-size: 0.74rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  line-height: 1.7;
  color: var(--text-muted, var(--text-secondary));
  margin: -1.4rem 0 2rem;
  padding: 0 1rem;
  text-transform: uppercase;
}
.results-meta.hidden { display: none; }
@media (max-width: 520px) {
  .results-meta { font-size: 0.68rem; letter-spacing: 0.06em; margin-top: -1rem; }
}

.results-subtitle {
  text-align: center;
  font-family: 'Archivo', sans-serif;
  font-weight: 400;
  font-size: 0.92rem;
  letter-spacing: 0.18em;
  color: var(--accent-ink, var(--accent));
  margin: 0 0 2rem;
  text-transform: uppercase;
}

/* Section sub-line (under section title) for context like "Cars per
   club, ranked". Mirrors the PDF's "Total cars per club, desc" line. */
.results-section-sub {
  text-align: center;
  font-family: 'Archivo', sans-serif;
  font-style: italic;
  font-size: 0.95rem;
  color: var(--text-muted);
  margin: -0.25rem 0 1.25rem;
}

/* Club Participation list — matches the PDF's drawClubSection rows:
   rank · club name on the left, car count right-aligned. */
.club-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  max-width: 720px;
  margin: 0 auto;
}
/* Name + (for Participation) the car count. The leading rank column went
   with the rank badge — these sections list one winner, not a board. */
.club-row {
  display: grid;
  grid-template-columns: 1fr auto;
  column-gap: 0.85rem;
  align-items: baseline;
  padding: 0.5rem 0;
  border-bottom: 1px dashed var(--border);
}
.club-row:last-child { border-bottom: none; }
.club-sponsor {
  color: var(--text-muted);
  font-size: 0.85rem;
  font-style: italic;
  padding-top: 0.55rem;
}
.club-name {
  font-family: 'Archivo', sans-serif;
  font-weight: 600;
  font-size: 1rem;
  color: var(--text-primary);
}
.club-count {
  font-family: 'Archivo', sans-serif;
  font-weight: 700;
  font-size: 0.85rem;
  letter-spacing: 0.06em;
  color: var(--accent-ink, var(--accent));
  background: var(--accent-dim);
  padding: 0.15rem 0.6rem;
  white-space: nowrap;
}

/* ─── Section frame ─── */
.results-section { margin-bottom: var(--sp-32); }
.results-section-title {
  font-family: 'Archivo', sans-serif;
  font-weight: 400;
  font-size: 1.4rem;
  color: var(--text-primary);
  letter-spacing: 0.04em;
  text-align: center;
  text-transform: uppercase;
  margin: 0 0 1rem;
}

.results-empty {
  color: var(--text-muted);
  font-style: italic;
  text-align: center;
  padding: 1.5rem 0;
  font-size: 1rem;
}

.results-foot {
  text-align: center;
  margin-top: 2.5rem;
  color: var(--text-muted);
  font-family: 'Archivo', sans-serif;
  font-weight: 400;
  font-size: 0.85rem;
  letter-spacing: 0.12em;
}

/* ─── Best of Show ─── */
.results-best-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1rem;
}
@media (min-width: 761px) {
  /* Three BoS cards in a row on tablet+ so the trio reads as a single
     headline band, matching the printed awards sheet's three-up layout. */
  .results-best-grid { grid-template-columns: repeat(3, 1fr); }
}

/* A lone Best of Show (Best of Show Only mode, or two types toggled off)
   is the page's single headline — center it instead of leaving it parked
   in the left column of a three-up grid. */
.results-best-grid > .best-card:only-child {
  grid-column: 1 / -1;
  width: 100%;
  max-width: 560px;
  justify-self: center;
  text-align: center;
}

/* Best of Show cards: mirror the awards PDF's text-flow layout. A
   hairline border with the system's stamped solid-offset shadow for
   elevation, generous padding, and clean typography. Three-up grid on
   tablet+. */
.best-card {
  background: var(--bg-card);
  border: 1px solid var(--border);
  box-shadow: 0 6px 0 rgba(0,0,0,0.07);
  padding: 1rem;
  text-align: left;
}
@media (min-width: 761px) {
  .best-card { text-align: center; padding-top: 1rem; }
}

.best-label {
  font-family: 'Archivo', sans-serif;
  font-weight: 400;
  font-size: 0.85rem;
  letter-spacing: 0.18em;
  color: var(--accent-ink, var(--accent));
  margin: 0 0 0.4rem;
  text-transform: uppercase;
}

.best-name {
  font-family: 'Archivo', sans-serif;
  font-weight: 400;
  font-size: 1.15rem;
  color: var(--text-primary);
  margin: 0 0 0.2rem;
  letter-spacing: 0.03em;
}

.best-vehicle {
  color: var(--text-secondary);
  font-size: 1rem;
  margin: 0;
}

.best-sponsor {
  color: var(--text-muted);
  font-size: 0.85rem;
  font-style: italic;
  margin: 0.4rem 0 0;
}

/* ─── Class podium cards ─── */
.results-classes {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 761px) {
  /* Two columns on tablet+, but single full-width card when there's
     only one (Top Picks tier with a single combined Top-N list) — the
     `auto-fit` keeps an empty track from leaving a half-empty page. */
  .results-classes {
    grid-template-columns: repeat(auto-fit, minmax(440px, 1fr));
  }
}

.class-card {
  background: var(--bg-card);
  border: 1px solid var(--border);
  padding: 1rem 1.1rem;
}

.class-card-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.3rem;
  border-bottom: 1px solid var(--border);
  padding-bottom: 0.5rem;
  margin-bottom: 0.7rem;
}

.class-card-name {
  font-family: 'Archivo', sans-serif;
  font-weight: 400;
  color: var(--text-primary);
  font-size: 1.05rem;
  letter-spacing: 0.05em;
  margin: 0;
  text-transform: uppercase;
}

.class-card-sponsor {
  color: var(--text-muted);
  font-size: 0.85rem;
  font-style: italic;
}

/* 1st / 2nd / 3rd row layout — mirrors the PDF's three-line stack
   per class with a quiet place label on the left. */
.class-place-row {
  display: grid;
  grid-template-columns: 5.5rem 1fr;
  grid-template-areas:
    "label name"
    "label vehicle";
  column-gap: 0.85rem;
  padding: 0.45rem 0;
  border-bottom: 1px dashed var(--border);
}
.class-place-row:last-child { border-bottom: none; }

/* Top Picks flat list: no place labels (the Top N are equal awards, not a
   leaderboard), so the label gutter collapses and rows read as a clean
   name-over-vehicle stack. */
.class-place-row--flat {
  grid-template-columns: 1fr;
  grid-template-areas:
    "name"
    "vehicle";
}

.class-place-label {
  grid-area: label;
  align-self: center;
  font-family: 'Archivo', sans-serif;
  font-weight: 400;
  font-size: 0.85rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent-ink, var(--accent));
}

.class-place-name {
  grid-area: name;
  font-family: 'Archivo', sans-serif;
  font-weight: 400;
  font-size: 1rem;
  color: var(--text-primary);
}

.class-place-vehicle {
  grid-area: vehicle;
  color: var(--text-secondary);
  font-size: 0.92rem;
  margin-top: 1px;
}

/* Distance Traveled card lives inside the specialty grid; the outer
 * card styling comes from .specialty-card so the two look identical. */
.distance-card .distance-list {
  list-style: none;
  margin: 0.4rem 0 0;
  padding: 0;
  max-height: 240px;
  overflow-y: auto;
}
.distance-row {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  column-gap: 0.5rem;
  padding: 0.35rem 0;
  border-bottom: 1px dashed var(--border);
}
.distance-row:last-child { border-bottom: none; }
.distance-name {
  font-family: 'Archivo', sans-serif;
  color: var(--text-primary);
  font-size: 0.92rem;
  letter-spacing: 0.02em;
  grid-column: 1;
  grid-row: 1;
}
.distance-origin {
  color: var(--text-muted);
  font-size: 0.85rem;
  grid-column: 1;
  grid-row: 2;
}
.distance-miles {
  font-family: 'Archivo', sans-serif;
  color: var(--accent-ink, var(--accent));
  font-size: 0.85rem;
  grid-column: 2;
  grid-row: 1 / 3;
  align-self: center;
  background: var(--accent-dim);
  padding: 0.15rem 0.5rem;
  white-space: nowrap;
}

/* ─── Specialty Awards ─── */
.specialty-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 0.6rem;
}

.specialty-card {
  background: var(--bg-card);
  border: 1px solid var(--border);
  padding: 0.85rem 1.1rem;
}
.specialty-card-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.3rem;
  margin-bottom: 0.5rem;
}
.specialty-name {
  font-family: 'Archivo', sans-serif;
  font-weight: 400;
  color: var(--text-primary);
  font-size: 1rem;
  letter-spacing: 0.05em;
  margin: 0;
  text-transform: uppercase;
}
.specialty-sponsor {
  color: var(--text-muted);
  font-size: 0.85rem;
  font-style: italic;
}
.specialty-winner {
  font-family: 'Archivo', sans-serif;
  font-weight: 400;
  color: var(--text-primary);
  font-size: 1rem;
  margin: 0.2rem 0 0.1rem;
}
.specialty-vehicle {
  color: var(--text-secondary);
  font-size: 0.92rem;
  margin: 0;
}
.specialty-tbd {
  color: var(--text-muted);
  font-style: italic;
  margin: 0;
}

/* ─── Hardship + People's Choice winner card ─── */
.hardship-winner {
  background: var(--bg-card);
  border: 1px solid var(--accent);
  padding: 1.1rem 1.3rem;
  margin: 0 auto;
  max-width: 620px;
}

.hardship-winner-name {
  font-family: 'Archivo', sans-serif;
  font-weight: 400;
  color: var(--text-primary);
  font-size: 1.15rem;
  letter-spacing: 0.04em;
  margin: 0 0 0.25rem;
}
.hardship-winner-vehicle {
  color: var(--text-secondary);
  margin: 0 0 0.7rem;
  font-size: 1rem;
}
.hardship-winner-text {
  margin: 0;
  padding: 0.75rem 1rem;
  border-top: 2px solid var(--accent);
  background: var(--bg-inset);
  color: var(--text-primary);
  font-style: italic;
  font-family: 'Archivo', sans-serif;
  white-space: pre-wrap;
  word-wrap: break-word;
  font-size: 1rem;
  line-height: 1.6;
}

@media (max-width: 480px) {
  .hardship-winner { padding: 0.9rem 1rem; }
  .hardship-winner-name { font-size: 1.05rem; }
  .hardship-winner-text { font-size: 0.95rem; }
  .class-place-row {
    grid-template-columns: 1fr;
    grid-template-areas:
      "label"
      "name"
      "vehicle";
    row-gap: 0.1rem;
  }
}

/* ═══ Ceremony enhancements ═══════════════════════════════════════════════
   /results is read two ways: on a phone (the printed-sheet look above is
   right) and PROJECTED across a room at the awards ceremony. These rules
   scale the type up on large screens via clamp (phones stay at the floor),
   make Best of Show the visual climax, set the 1st-place winner apart from
   2nd/3rd, and let the awards develop onto the screen with a one-time
   staggered reveal on load. */

/* Bigger headline + section type on large (projected) screens. */
.results-title         { font-size: clamp(2.2rem, 6vw, 4rem); }
.results-subtitle      { font-size: clamp(0.92rem, 1.3vw, 1.1rem); letter-spacing: 0.22em; }
.results-section-title { font-size: clamp(1.5rem, 3vw, 2.4rem); margin-bottom: 1.3rem; }

/* Best of Show = the headline, but browser-scale: a step above the list
   type, not poster type — this page is read on phones and laptops far more
   often than it's projected. */
.best-label   { font-size: 0.85rem; }
.best-name    { font-size: clamp(1.2rem, 1.5vw, 1.4rem); letter-spacing: 0.02em; }
.best-vehicle { font-size: clamp(0.95rem, 1.1vw, 1.05rem); }
@media (min-width: 761px) {
  .best-card { border-top-width: 3px; padding: 1.4rem 1rem 1rem; }
}

/* Class winners: platform-scale type (Archivo ~1rem body), with only a
   gentle bump on projected screens. The 1st-place row stands apart from
   2nd / 3rd — but NOT in the Top Picks flat list, where every entry is an
   equal award. */
.class-card-name     { font-size: clamp(1.05rem, 1.3vw, 1.25rem); }
.class-place-name    { font-size: clamp(1rem, 1.15vw, 1.15rem); }
.class-place-vehicle { font-size: clamp(0.92rem, 1vw, 1rem); }
.class-place-row:not(.class-place-row--flat):first-child .class-place-name {
  font-weight: 700; color: var(--accent-ink, var(--accent));
  font-size: clamp(1.1rem, 1.4vw, 1.3rem);
}
.class-place-row:not(.class-place-row--flat):first-child .class-place-label { font-weight: 700; }

/* Specialty / hardship / people's-choice winner names scale too. */
.specialty-winner,
.hardship-winner-name { font-size: clamp(1.1rem, 1.6vw, 1.5rem); }

/* One-time staggered reveal — the awards develop onto the screen on load.
   `backwards` holds a section hidden only through its own short delay, then
   it settles to the natural visible state. Never gated on scroll, so a static
   projection still ends fully visible. */
@media (prefers-reduced-motion: no-preference) {
  .results-section:not(.hidden) {
    animation: results-rise 0.6s cubic-bezier(0.22, 1, 0.36, 1) backwards;
  }
  .results-section:nth-of-type(1)   { animation-delay: 0.05s; }
  .results-section:nth-of-type(2)   { animation-delay: 0.18s; }
  .results-section:nth-of-type(3)   { animation-delay: 0.31s; }
  .results-section:nth-of-type(4)   { animation-delay: 0.44s; }
  .results-section:nth-of-type(5)   { animation-delay: 0.57s; }
  .results-section:nth-of-type(n+6) { animation-delay: 0.70s; }
  @keyframes results-rise {
    from { opacity: 0; transform: translateY(24px); }
    to   { opacity: 1; transform: none; }
  }
}

/* ── Vehicle photo popup hooks ──
   Winners who registered with a photo carry .rw-photo (+ a camera glyph);
   hover pops the photo on desktop, tap on phones. The popup itself
   (.vehicle-photo-popup) ships in admin.css, loaded above. */
.rw-photo { cursor: zoom-in; }
.rw-photo .photo-indicator {
  font-size: 0.8em;
  margin-left: 0.35rem;
  opacity: 0.55;
}


/* ── The visitor's colour scheme ──
   A show on the stock accent follows the scheme the visitor picked on
   entrylane.app (purple, orange or blue: results.html sets <html data-scheme>
   from ?scheme= or the saved choice). A show that picked its own accent keeps
   it. Same values as css/tarmac-tokens.css; !important to outrank the stock
   block in admin-tarmac.css. */
html[data-accent-stock][data-scheme="orange"] {
  --accent: #ff5708 !important; --primary: #ff5708 !important; --accent-rgb: 255, 87, 8 !important;
  --accent-hover: #c2410c !important; --accent-dim: rgba(255, 87, 8, 0.10) !important; --accent-glow: rgba(255, 87, 8, 0.25) !important;
  --on-accent: #160700 !important;
}
html[data-theme="light"][data-accent-stock][data-scheme="orange"] { --accent-ink: #c2410c !important; --warning: #c2410c !important; }
html[data-theme="dark"][data-accent-stock][data-scheme="orange"]  { --accent-ink: #ff7a3d !important; --warning: #ff7a3d !important; }
html[data-accent-stock][data-scheme="blue"] {
  --accent: #4d9de0 !important; --primary: #4d9de0 !important; --accent-rgb: 77, 157, 224 !important;
  --accent-hover: #1f6ba5 !important; --accent-dim: rgba(77, 157, 224, 0.10) !important; --accent-glow: rgba(77, 157, 224, 0.25) !important;
  --on-accent: #04101d !important;
}
html[data-theme="light"][data-accent-stock][data-scheme="blue"] { --accent-ink: #1f6ba5 !important; --warning: #1f6ba5 !important; }
html[data-theme="dark"][data-accent-stock][data-scheme="blue"]  { --accent-ink: #6cb2ea !important; --warning: #6cb2ea !important; }


/* ── Display type: Bebas Neue, the face the brand had before the rebrand.
   One weight, condensed, so sizes step up to keep the same presence. ── */
/* html[data-theme] + the element: outranks admin-tarmac.css's console
   heading rule (Space Grotesk, !important) that loads after this file. */
html[data-theme] .results-page h1.results-title { font-family: 'Bebas Neue', 'Archivo Black', 'Archivo', sans-serif !important; font-weight: 400 !important; font-size: clamp(2.6rem, 6.5vw, 3.6rem) !important; letter-spacing: 0.03em !important; line-height: 0.95 !important; }
html[data-theme] .results-page h2.results-section-title { font-family: 'Bebas Neue', 'Archivo Black', 'Archivo', sans-serif !important; font-weight: 400 !important; font-size: 2rem !important; letter-spacing: 0.04em !important; }
html[data-theme] .results-page :is(h3.class-card-name, h3.specialty-name) { font-family: 'Bebas Neue', 'Archivo Black', 'Archivo', sans-serif !important; font-weight: 400 !important; font-size: 1.55rem !important; letter-spacing: 0.04em !important; }
html[data-theme] .admin-nav .admin-nav-title :is(.kw-entry, .kw-lane) { font-size: 1.9rem !important; line-height: 1 !important; }
html[data-theme] .admin-nav .kw-show { white-space: nowrap; }

/* ── The printed sheet ──
   Print gives a plain list, not the screen page: the EntryLane wordmark at
   the top, the show's facts, then every award as one line each. Built by
   results.js into #print-sheet; hidden on screen. */
#print-sheet { display: none; }
@media print {
  @page { margin: 11mm 12mm; }
  body > *:not(#print-sheet) { display: none !important; }
  /* The screen shell makes <body> a flex box pinned to the viewport height,
     which paginates as one tall, mostly empty first page. Plain flow here. */
  html, body { display: block !important; height: auto !important; min-height: 0 !important; max-height: none !important; overflow: visible !important; padding: 0 !important; margin: 0 !important; background: #fff !important; color: #000 !important; }
  #print-sheet { break-before: avoid; page-break-before: avoid; margin: 0; padding: 0; }
  #print-sheet { display: block; color: #000; font-family: 'Archivo', 'Chivo', system-ui, sans-serif; font-size: 9.5pt; line-height: 1.25; }
  #print-sheet * { color: #000 !important; background: none !important; box-shadow: none !important; }
  .ps-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12pt; padding-bottom: 4pt; border-bottom: 2pt solid #000; margin-bottom: 6pt; }
  .ps-brand { font-family: 'Bebas Neue', 'Archivo Black', sans-serif; font-weight: 400; font-size: 22pt; letter-spacing: 0.04em; line-height: 1; }
  .ps-brand .kw-lane::after { content: "."; }
  .ps-head-right { font-size: 8.5pt; letter-spacing: 0.12em; text-transform: uppercase; }
  .ps-title { font-family: 'Bebas Neue', 'Archivo Black', sans-serif; font-weight: 400; font-size: 26pt; letter-spacing: 0.03em; line-height: 1; margin: 0 0 5pt; }
  /* The facts in one row: each label sits over its value, wrapping as needed. */
  .ps-meta { display: flex; flex-wrap: wrap; gap: 3pt 18pt; margin: 0 0 6pt; font-size: 10pt; }
  .ps-meta > div { display: flex; flex-direction: column; }
  .ps-meta dt { font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; font-size: 7pt; }
  .ps-meta dd { margin: 0; font-weight: 500; }
  .ps-sec { margin: 0 0 6pt; break-inside: auto; }
  .ps-sec h2 { font-family: 'Bebas Neue', 'Archivo Black', sans-serif; font-weight: 400; font-size: 14pt; letter-spacing: 0.04em; line-height: 1; margin: 7pt 0 3pt; padding-bottom: 1.5pt; border-bottom: 1pt solid #000; break-after: avoid; }
  .ps-sec h3 { font-size: 9.5pt; font-weight: 700; margin: 4pt 0 1pt; text-transform: uppercase; letter-spacing: 0.04em; break-after: avoid; }
  .ps-sec h3 small { font-weight: 400; text-transform: none; letter-spacing: 0; font-style: italic; font-size: 8.5pt; }
  .ps-sec ol, .ps-sec ul { margin: 0; padding: 0; list-style: none; }
  .ps-sec li { display: grid; grid-template-columns: 5em 1fr; gap: 0 6pt; padding: 1.5pt 0; border-bottom: 0.5pt solid #bbb; break-inside: avoid; align-items: baseline; }
  .ps-sec li.ps-one { grid-template-columns: 1fr; }
  .ps-sec li .ps-k { font-weight: 700; font-size: 8pt; text-transform: uppercase; letter-spacing: 0.05em; }
  .ps-sec li .ps-v b { font-weight: 600; }
  .ps-sec li .ps-car { font-size: 8.5pt; }
  .ps-sec li .ps-v small { display: block; font-size: 8pt; font-style: italic; }
  .ps-cols { column-count: 2; column-gap: 16pt; column-fill: balance; }
  .ps-cols > ul > li { grid-template-columns: 6.5em 1fr; }
  .ps-cols > ul, .ps-cols > ol { break-inside: auto; }
  .ps-class { break-inside: avoid; margin-bottom: 3pt; }
  .ps-note { font-size: 8.5pt; font-style: italic; margin: 2pt 0 0; }
  .ps-foot { margin-top: 8pt; padding-top: 4pt; border-top: 1pt solid #000; font-size: 8pt; display: flex; justify-content: space-between; gap: 12pt; }
}

/* Polish: the bar's label reads at AA in every scheme (Signal Ink, 13px). */
html[data-theme] .admin-nav .admin-nav-page { font-size: 13px !important; }
/* The bar is night in both themes, so the ink is the night mix, not the theme's. */
html[data-theme] .admin-nav .admin-nav-page .accent { color: color-mix(in srgb, var(--accent) 62%, #fff) !important; }
