:root {
  --bottom-nav-height: calc(62px + env(safe-area-inset-bottom));
  --ink: #18231E;
  --field: #24382F;
  --moss: #5F7F52;
  --mist: #F4F7F1;
  --amber: #C58B37;
  --red: #B94A48;
  --paper: #FCFDF9;
  --line: rgba(24, 35, 30, 0.14);
  --glass: rgba(244, 247, 241, 0.78);
  --shadow: 0 20px 60px rgba(24, 35, 30, 0.18);
  color: var(--ink);
  background: var(--mist);
  font-family: Seravek, "Gill Sans Nova", Ubuntu, Calibri, "Source Sans Pro", sans-serif;
}

/* Shell — static first paint before the bundle (pub-A5, tokens drift point: palette from lil.ui.tokens) */
#shell { display: flex; flex-direction: column; min-height: 100dvh; background: #24382F; }
.shell-topbar {
  min-height: 52px;
  background: rgba(24,35,30,.72);
  backdrop-filter: blur(14px) saturate(1.1);
  -webkit-backdrop-filter: blur(14px) saturate(1.1);
  display: flex; align-items: center; gap: 14px;
  padding: 0 24px;
  border-bottom: 1px solid rgba(244,247,241,.14);
  flex-shrink: 0;
}
@media (max-width: 719px) { .shell-topbar { padding: 0 16px; } }
.shell-wordmark {
  font-family: Fraunces, Georgia, serif;
  font-weight: 600; font-size: 1.1875rem;
  color: #F4F7F1; letter-spacing: 0;
}
.shell-nav {
  display: flex; gap: 12px; flex: 1 1 220px;
  align-items: center; overflow: hidden;
  font-size: 0.875rem; color: rgba(244,247,241,.62);
}
@media (max-width: 719px) { .shell-nav { display: none; } }
.shell-search {
  display: flex; align-items: center; gap: 10px;
  background: rgba(252,253,249,.70);
  border: 1px solid rgba(24,35,30,.20);
  border-radius: 3px; padding: 9px 14px;
  margin: 18px 18px 8px;
}
.shell-search-icon { display: flex; align-items: center; }
.shell-search-placeholder {
  font-size: 0.875rem; color: rgba(24,35,30,.45);
  font-family: Seravek, "Gill Sans Nova", Ubuntu, Calibri, "Source Sans Pro", sans-serif;
}
.shell-map {
  flex: 1; min-height: 300px;
  margin: 0;
  background: linear-gradient(90deg, #EFE8D6 25%, #C9BC9C 50%, #EFE8D6 75%);
  background-size: 200% 100%;
  animation: lil-shimmer 1.8s ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .shell-map { animation: none; background: #EFE8D6; }
}

* { box-sizing: border-box; }
html { min-height: 100%; background: var(--mist); }
body { margin: 0; min-height: 100%; letter-spacing: 0; }
button, input, textarea, select { font: inherit; letter-spacing: 0; }
button, a { min-height: 45px; }
/* icon-only buttons (an svg and nothing else) keep their own size: the global minimum
   made every narrow one an oblong (skin/house-grammar, 2026-09-04) */
button:has(> svg:only-child), button:empty { min-height: 0; }
button { touch-action: manipulation; }
a { color: inherit; text-decoration: none; }

.skip-link {
  position: absolute;
  left: 1rem;
  top: 0;
  transform: translateY(-140%);
  z-index: 20;
  padding: .75rem 1rem;
  background: var(--paper);
  border: 2px solid var(--moss);
}
.skip-link:focus { transform: translateY(1rem); }

:focus-visible {
  outline: 3px solid var(--amber);
  outline-offset: 3px;
  box-shadow: 0 0 0 6px color-mix(in srgb, var(--amber) 18%, transparent);
}
.top-bar :focus-visible,
.bottom-nav :focus-visible,
.btn-ghost:focus-visible {
  outline-color: var(--paper);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--amber) 58%, transparent);
}

.app-shell {
  min-height: 100vh;
  padding: 18px 18px calc(var(--bottom-nav-height) + 22px);
}

.top-bar {
  position: sticky;
  top: 0;
  z-index: 5;
  display: grid;
  grid-template-columns: minmax(116px, auto) minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 64px;
  padding: 10px 12px;
  color: var(--mist);
  background: color-mix(in srgb, var(--field) 92%, transparent);
  border: 1px solid rgba(244, 247, 241, 0.14);
  border-radius: 8px;
  box-shadow: var(--shadow);
  backdrop-filter: blur(18px);
}
.panel .top-bar {
  position: static;
  grid-template-columns: minmax(44px, auto) minmax(0, 1fr) auto;
  min-height: 56px;
  box-shadow: none;
}
.panel .top-bar h1 { font-size: .92rem; }
.panel .top-bar .eyebrow { font-size: .62rem; }
.panel .top-bar .btn span { display: none; }
.brand-lockup {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  min-height: 44px;
  color: inherit;
}
.brand-mark {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background: var(--moss);
  color: var(--paper);
  font-weight: 800;
}
.brand-name {
  max-width: 9ch;
  overflow: hidden;
  font-size: .82rem;
  font-weight: 900;
  line-height: 1.05;
  text-overflow: ellipsis;
}
.route-title {
  min-width: 0;
}
.top-bar h1, .top-bar p { margin: 0; }
.top-bar h1 {
  overflow: hidden;
  font-size: 1.05rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.top-status {
  display: flex;
  justify-content: end;
  min-width: 0;
}
.top-status .status-led {
  color: var(--paper);
  background: rgba(244,247,241,.1);
  border-color: rgba(244,247,241,.2);
}
.top-status .status-led span:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
}
.top-status .status-led.is-done .led-dot { background: #9FCE8A; }
.top-status .status-led.is-warning .led-dot { background: var(--amber); }
.top-status .status-led.is-destructive .led-dot { background: #F09A96; }

.eyebrow {
  margin: 0 0 4px;
  color: color-mix(in srgb, currentColor 68%, transparent);
  font: 600 11.5px/1.2 'Instrument Sans',Arial,sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.14em;
}

.showcase-hero {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(320px, 1fr);
  gap: 18px;
  align-items: stretch;
  padding: 28px 0 12px;
}
.showcase-hero h1 {
  max-width: 11ch;
  margin: 0;
  color: var(--ink);
  font-size: clamp(2.4rem, 6vw, 5.8rem);
  line-height: .98;
}
.showcase-hero p:not(.eyebrow) {
  max-width: 56ch;
  font-size: 1.05rem;
  line-height: 1.55;
}

.showcase-section {
  padding: 24px 0;
  border-top: 1px solid var(--line);
}
.section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}
.section-head h2 { margin: 0; font-size: 1.35rem; }
.section-body { width: 100%; }

.token-grid, .component-grid, .state-grid, .band-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}
.component-grid {
  align-items: start;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 160px), max-content));
  justify-content: start;
}
.component-grid > .btn {
  justify-self: start;
  min-width: 116px;
}
.composite-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr));
  gap: 16px;
  align-items: start;
}
.composite-grid > .sheet,
.composite-grid > .panel,
.composite-grid > .alert,
.composite-grid > .toast,
.composite-grid > .map-frame,
.composite-grid > .same-place-card {
  width: 100%;
  min-width: 0;
}
.composite-grid > .map-frame {
  min-height: 420px;
}
.motion-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  gap: 12px;
}
.login-layout {
  display: grid;
  place-items: start center;
  padding-top: clamp(28px, 8vh, 72px);
}
.login-panel {
  width: min(100%, 420px);
}
.login-form {
  display: grid;
  gap: 14px;
}
.login-status {
  min-height: 1.25rem;
  margin: 0;
  color: color-mix(in srgb, var(--ink) 66%, transparent);
  font-size: .86rem;
  font-weight: 750;
}
.login-status.is-destructive { color: var(--red); }
.login-status.is-done { color: var(--moss); }
.token, .panel, .metric, .list-row, .same-place-card, .alert, .toast, .motion-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--paper);
  box-shadow: 0 8px 24px rgba(24, 35, 30, .08);
}
.token {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 10px;
  align-items: center;
  padding: 12px;
}
.swatch {
  grid-row: span 2;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background: var(--token);
  border: 1px solid rgba(0,0,0,.12);
}
code { font-size: .82rem; color: color-mix(in srgb, var(--ink) 64%, transparent); }

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  gap: 8px;
  min-width: 44px;
  min-height: 48px;
  max-width: 100%;
  width: fit-content;
  padding: 12px 18px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  background: var(--paper);
  cursor: pointer;
  transition: transform var(--exit) var(--ease, cubic-bezier(.4,0,.6,1)), background var(--exit) var(--ease, cubic-bezier(.4,0,.6,1)), border-color var(--exit) var(--ease, cubic-bezier(.4,0,.6,1)), box-shadow var(--exit) var(--ease, cubic-bezier(.4,0,.6,1));
  white-space: nowrap;
  overflow-wrap: normal;
  line-height: 1.15;
}
.btn span { min-width: 0; }
.btn:hover { border-color: color-mix(in srgb, var(--moss) 42%, transparent); }
.btn.is-done { transform: scale(var(--press-scale)); }
.btn-primary { color: var(--paper); background: var(--moss); border-color: var(--moss); }
.btn-ghost { color: inherit; background: rgba(244,247,241,.12); }
.btn-danger, .btn.is-destructive { color: var(--paper); background: var(--red); border-color: var(--red); }
.btn-segment { flex: 1; }
.btn[disabled] { cursor: not-allowed; opacity: .48; }
.icon { width: 1.1em; text-align: center; font-weight: 800; }

.field {
  display: grid;
  gap: 6px;
  min-width: 0;
}
.field span { font-size: .82rem; font-weight: 750; }
.field input, .field textarea {
  width: 100%;
  min-height: 45px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 12px;
  color: var(--ink);
  background: var(--paper);
}
.field select,
select {
  width: 100%;
  min-height: 45px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 12px;
  color: var(--ink);
  background: var(--paper);
}
.field.is-invalid input { border-color: var(--red); }
.textarea { grid-column: span 2; }

.segmented {
  display: flex;
  flex-wrap: wrap;
  min-height: 48px;
  padding: 4px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--field) 8%, var(--paper));
}
.segmented .btn {
  min-width: min(100%, 96px);
}

.row {
  display: flex;
  gap: 10px;
  align-items: center;
}
.wrap { flex-wrap: wrap; }

.chip, .status-led {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 7px 12px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--paper);
  font-size: .86rem;
  font-weight: 750;
  white-space: nowrap;
  overflow-wrap: normal;
  line-height: 1.15;
}
.chip.is-warning, .status-led.is-warning { color: var(--amber); border-color: color-mix(in srgb, var(--amber) 42%, transparent); }
.chip.is-done, .status-led.is-done { color: var(--moss); border-color: color-mix(in srgb, var(--moss) 42%, transparent); }
.chip.is-destructive, .status-led.is-destructive { color: var(--red); border-color: color-mix(in srgb, var(--red) 42%, transparent); }
.led-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: currentColor;
}

.metric {
  display: grid;
  gap: 7px;
  padding: 16px;
}
.metric span, .metric small { color: color-mix(in srgb, var(--ink) 64%, transparent); }
.metric strong { font-size: 1.7rem; }

.list-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  min-height: 64px;
  padding: 16px;
}
.list-row div { display: grid; gap: 6px; min-width: 0; }
.list-row span { overflow-wrap: anywhere; }
.review-queue-row,
.export-action-row {
  min-width: 0;
}
.review-queue-row > .row,
.export-action-row > .row {
  justify-content: flex-end;
}

.map-frame {
  position: relative;
  min-height: 360px;
  overflow: hidden;
  border-radius: 8px;
  border: 1px solid color-mix(in srgb, var(--field) 22%, transparent);
  background:
    linear-gradient(35deg, rgba(95,127,82,.24), transparent 42%),
    linear-gradient(145deg, rgba(197,139,55,.18), transparent 35%),
    var(--mist);
  box-shadow: var(--shadow);
}
.map-frame.is-interactive {
  touch-action: none;
  cursor: grab;
}
.map-frame.is-interactive.is-panning {
  cursor: grabbing;
}
.capture-layout > .map-frame,
.public-map-frame {
  aspect-ratio: 4 / 3;
  min-height: min(60vh, 460px);
}
.osm-tiles {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  opacity: .88;
  filter: saturate(.72) contrast(.96);
}
.osm-tiles img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: var(--mist);
  user-select: none;
  pointer-events: none;
}
.map-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(36,56,47,.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(36,56,47,.12) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: .32;
  mix-blend-mode: multiply;
}
.pin {
  position: absolute;
  left: 50%;
  top: 50%;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  margin: -22px;
  border-radius: 50%;
  color: var(--paper);
  background: var(--moss);
  box-shadow: 0 10px 28px rgba(24,35,30,.32);
}
.accuracy-ring {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 132px;
  height: 132px;
  margin: -66px;
  border-radius: 50%;
  border: 2px solid rgba(95,127,82,.45);
  background: rgba(95,127,82,.12);
  animation: accuracy-pulse 1800ms ease-in-out infinite;
}
.map-controls {
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 12px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--glass);
  backdrop-filter: blur(16px);
}
.map-controls .btn {
  min-width: 40px;
  min-height: 40px;
  padding-inline: 8px;
  background: color-mix(in srgb, var(--paper) 92%, transparent);
  font-size: 1rem;
  font-weight: 800;
}
.map-nav-pad .btn {
  min-width: 32px;
  width: 32px;
  min-height: 32px;
  padding-inline: 0;
  font-size: 1.06rem;
  line-height: 1;
}
.map-zoom-controls {
  display: flex;
  gap: 6px;
}
.map-action-status {
  grid-column: 1 / -1;
  min-height: 20px;
  color: color-mix(in srgb, var(--ink) 70%, transparent);
  font-size: .72rem;
  font-weight: 750;
  line-height: 1.25;
}
.map-readout {
  justify-self: end;
  max-width: 15ch;
  overflow: hidden;
  color: color-mix(in srgb, var(--ink) 68%, transparent);
  font-size: .74rem;
  font-variant-numeric: tabular-nums;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.map-nav-pad {
  position: absolute;
  left: 12px;
  top: 12px;
  z-index: 2;
  display: grid;
  grid-template-columns: 32px 32px 32px;
  grid-template-rows: 32px 32px 32px;
  gap: 4px;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(244,247,241,.78);
  backdrop-filter: blur(14px);
}
.map-pad-label {
  display: grid;
  place-items: center;
  grid-column: 2;
  grid-row: 2;
  min-height: 32px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--field);
  background: color-mix(in srgb, var(--paper) 92%, transparent);
  font-size: .66rem;
  font-weight: 900;
}
.map-nav-pad .btn:nth-child(2) { grid-column: 2; grid-row: 1; }
.map-nav-pad .btn:nth-child(3) { grid-column: 1; grid-row: 2; }
.map-nav-pad .btn:nth-child(4) { grid-column: 3; grid-row: 2; }
.map-nav-pad .btn:nth-child(5) { grid-column: 2; grid-row: 3; }
.map-attribution {
  position: absolute;
  right: 12px;
  top: 12px;
  z-index: 2;
  min-height: 28px;
  padding: 4px 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: color-mix(in srgb, var(--ink) 74%, transparent);
  background: rgba(244,247,241,.82);
  font-size: .72rem;
  font-weight: 800;
  backdrop-filter: blur(12px);
}

.sheet {
  display: grid;
  align-content: start;
  min-height: var(--sheet-detent, 50vh);
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--paper);
  box-shadow: var(--shadow);
  animation: sheet-rise var(--move) var(--ease, cubic-bezier(.4,0,.6,1)) both;
}
.composite-grid .sheet {
  min-height: clamp(300px, 34vh, 420px);
}
.sheet-handle {
  width: 42px;
  height: 5px;
  margin: 0 auto 14px;
  border-radius: 999px;
  background: rgba(24,35,30,.24);
}
.sheet h3 { margin: 0 0 14px; }
.sheet > * + * { margin-top: 12px; }

.alert, .toast, .same-place-card, .panel, .motion-card { padding: 16px; }
.alert, .toast, .same-place-card, .panel, .motion-card, .sheet, .metric, .list-row {
  max-width: 100%;
}
.alert {
  display: grid;
  gap: 4px;
  border-width: 1px;
  border-left-width: 1px;
  border-color: color-mix(in srgb, var(--amber) 32%, var(--line));
  background: color-mix(in srgb, var(--amber) 9%, var(--paper));
}
.alert.is-destructive {
  border-color: color-mix(in srgb, var(--red) 36%, var(--line));
  background: color-mix(in srgb, var(--red) 8%, var(--paper));
}
.alert.is-warning {
  border-color: color-mix(in srgb, var(--amber) 32%, var(--line));
  background: color-mix(in srgb, var(--amber) 9%, var(--paper));
}
.toast {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
}
.toast.is-animated { animation: toast-in var(--move) var(--ease, cubic-bezier(.4,0,.6,1)) both; }
.toast.is-leaving { animation: toast-out var(--exit) var(--ease, cubic-bezier(.4,0,.6,1)) both; }
.toast-viewport {
  position: fixed;
  left: 50%;
  top: calc(14px + env(safe-area-inset-top));
  z-index: 60;
  display: grid;
  justify-items: center;
  width: min(100% - 28px, 420px);
  min-height: 1px;
  transform: translateX(-50%);
  pointer-events: none;
}
.toast-viewport .toast {
  width: fit-content;
  pointer-events: auto;
}
.same-place-card {
  display: grid;
  gap: 8px;
  min-width: 0;
}
.same-place-card h3, .same-place-card p { margin: 0; }
.same-place-card h3,
.same-place-card p {
  overflow-wrap: anywhere;
}
.choice-status {
  margin: 0;
  color: color-mix(in srgb, var(--ink) 68%, transparent);
  font-size: .82rem;
  font-weight: 750;
  line-height: 1.35;
}
.same-place-card[data-choice="existing-place"] {
  border-color: color-mix(in srgb, var(--moss) 46%, var(--line));
}
.same-place-card[data-choice="new-place"] {
  border-color: color-mix(in srgb, var(--amber) 46%, var(--line));
}
.same-place-card .row {
  flex-wrap: wrap;
}

.bottom-nav {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 2px;
  padding: 3px 8px calc(3px + env(safe-area-inset-bottom));
  border: 1px solid var(--line);
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
  background: color-mix(in srgb, var(--field) 92%, transparent);
  color: var(--mist);
  box-shadow: 0 -10px 28px rgba(24, 35, 30, .16);
  backdrop-filter: blur(18px);
}
.app-shell > .bottom-nav {
  position: fixed;
}
.bottom-nav a {
  display: grid;
  place-items: center;
  gap: 0;
  min-height: 44px;
  border-radius: 6px;
  font-size: .64rem;
  line-height: 1.05;
}
.bottom-nav a.active { background: var(--moss); color: var(--paper); }
.bottom-nav.is-embedded {
  position: static;
  inset: auto;
  margin-top: auto;
  box-shadow: none;
}
.bottom-nav.is-embedded a span { display: none; }
.bottom-nav.is-embedded .icon {
  width: auto;
  font-size: .9rem;
}
.bottom-nav:not(.is-embedded) .icon {
  font-size: .72rem;
  line-height: 1;
}
.app-shell-sample {
  display: flex;
  flex-direction: column;
  min-height: 300px;
}
.app-shell-sample .bottom-nav {
  grid-template-columns: repeat(5, minmax(44px, 1fr));
}

.journey-screen {
  display: grid;
  gap: 18px;
  align-content: start;
}
.route-alert {
  margin-top: 12px;
}
.journey-screen > section,
.journey-screen > main {
  min-height: auto;
  padding: 0;
}
.journey-screen .hero-panel h1 {
  max-width: 14ch;
  font-size: clamp(2rem, 12vw, 3.4rem);
  line-height: 1;
}
.collector-home-view .route-header {
  display: grid;
  gap: 4px;
}
.collector-home-view .route-header h1 {
  margin: 0;
}
.collect-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  padding-bottom: 14px;
}
.collect-actions .btn {
  width: min(100%, 260px);
  justify-content: center;
}
@media (max-width: 520px) {
  .collect-actions .btn {
    flex: 1 1 150px;
  }
}
.collected-summary {
  display: grid;
  gap: 8px;
  margin-top: 6px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
  color: color-mix(in srgb, var(--ink) 68%, transparent);
  font-size: .88rem;
}
.collected-summary .eyebrow {
  margin: 0;
}
.collected-summary .list-stack {
  gap: 6px;
}
.collected-summary .list-row {
  padding: 8px 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.media-capture-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.media-capture-actions .btn {
  width: 100%;
}
.ios-switch {
  display: inline-grid;
  place-items: center;
  width: 52px;
  height: 32px;
  min-width: 52px;
  min-height: 32px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
}
.switch-track {
  position: relative;
  display: block;
  width: 52px;
  height: 32px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--ink) 18%, var(--paper));
  transition: background var(--move) var(--ease);
}
.ios-switch.is-on .switch-track {
  background: var(--moss);
}
.switch-thumb {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--paper);
  box-shadow: 0 2px 6px rgba(24, 35, 30, .24);
  transition: transform var(--move) var(--ease);
}
.ios-switch.is-on .switch-thumb {
  transform: translateX(20px);
}

.hero-panel,
.status-card,
.story-card,
.media-card,
.review-card,
.queue-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--paper);
  box-shadow: 0 8px 24px rgba(24, 35, 30, .08);
}
.hero-panel,
.status-card,
.story-card,
.media-card,
.review-card {
  padding: clamp(18px, 3.6vw, 24px);
}
.hero-panel h1,
.status-card h2,
.story-card h2 {
  margin: 0;
}
.action-grid,
.summary-grid,
.story-fields,
.capture-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  gap: 12px;
}
.section-stepper {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-block: 14px;
}
.section-stepper .eyebrow {
  flex-basis: 100%;
  margin: 0;
}
.nav-button,
button.primary,
button.secondary,
.tappable {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 44px;
  min-height: 45px;
  max-width: 100%;
  width: fit-content;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  background: var(--paper);
  font-weight: 750;
  line-height: 1.15;
  white-space: nowrap;
}
.nav-button.active,
button.primary {
  color: var(--paper);
  border-color: var(--moss);
  background: var(--moss);
}
button.secondary {
  background: color-mix(in srgb, var(--field) 8%, var(--paper));
}
.step-number,
.status-pill {
  display: inline-grid;
  place-items: center;
  min-width: 28px;
  min-height: 28px;
  padding: 4px 8px;
  border-radius: 999px;
  color: var(--field);
  background: color-mix(in srgb, var(--moss) 14%, var(--paper));
  font-size: .78rem;
  font-weight: 800;
}
.sticky-footer,
.section-header,
.status-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}
.sticky-footer {
  gap: 12px;
  padding-block: 8px;
}
.sticky-footer .btn {
  min-width: min(100%, 132px);
}
.queue-list,
.media-list,
.manifest-list {
  display: grid;
  gap: 10px;
  padding: 0;
  list-style: none;
}
.queue-card,
.manifest-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 14px;
  align-items: center;
  padding: 12px;
}
.queue-status-row {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.queue-copy {
  display: grid;
  gap: 5px;
  min-width: 0;
}
.queue-card small,
.manifest-row small {
  color: color-mix(in srgb, var(--ink) 64%, transparent);
  overflow-wrap: anywhere;
}
.queue-card .btn,
.manifest-row .btn {
  grid-column: 2;
  grid-row: 2;
  justify-self: end;
}
.manifest-row {
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 4px 10px;
}
.manifest-row small {
  grid-column: 2;
}
.manifest-row .btn {
  grid-column: 3;
  grid-row: 1 / span 2;
}

.collection-sheet-overlay {
  position: fixed;
  inset: 0;
  z-index: 30;
  display: grid;
  align-items: end;
  padding: 16px;
  background: rgba(24, 35, 30, .32);
}
.collection-action-sheet {
  width: min(100%, 560px);
  justify-self: center;
  min-height: auto;
}
.collection-toast,
.admin-toast {
  position: fixed;
  left: 50%;
  top: calc(14px + env(safe-area-inset-top));
  z-index: 60;
  width: fit-content;
  max-width: min(420px, calc(100vw - 28px));
  transform: translateX(-50%);
}
.collection-toast.is-animated,
.admin-toast.is-animated {
  animation: fixed-toast-in var(--move) var(--ease, cubic-bezier(.4,0,.6,1)) both;
}
.collection-toast.is-leaving,
.admin-toast.is-leaving {
  animation: fixed-toast-out var(--exit) var(--ease, cubic-bezier(.4,0,.6,1)) both;
}

.media-mode-control {
  margin-top: 12px;
}
.youtube-url-panel,
.youtube-preview-card {
  display: grid;
  gap: 12px;
}
.youtube-embed-frame {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--field) 10%, var(--paper));
}
.youtube-embed-frame iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.youtube-link-card {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  max-width: 100%;
  min-height: 45px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--paper);
  font-weight: 750;
}
.url-metadata {
  display: grid;
  gap: 8px;
  margin: 0;
}
.url-metadata div {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.url-metadata dt {
  color: color-mix(in srgb, var(--ink) 64%, transparent);
  font: 600 11.5px/1.2 'Instrument Sans',Arial,sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.14em;
}
.url-metadata dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.capture-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
  gap: 18px;
  padding-top: 18px;
}
.capture-layout > .sheet {
  min-height: auto;
  overflow: visible;
}
.progress {
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: color-mix(in srgb, var(--field) 14%, var(--paper));
}
.progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--moss);
}

.motion-card {
  display: grid;
  gap: 12px;
  min-height: 180px;
  align-content: start;
}
.mini-map {
  position: relative;
  min-height: 112px;
  overflow: hidden;
  border-radius: 8px;
  background:
    linear-gradient(35deg, rgba(95,127,82,.24), transparent 42%),
    linear-gradient(90deg, rgba(36,56,47,.12) 1px, transparent 1px),
    linear-gradient(rgba(36,56,47,.12) 1px, transparent 1px),
    var(--mist);
  background-size: auto, 28px 28px, 28px 28px, auto;
}
.mini-ring, .mini-pin {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.mini-ring {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  border: 2px solid rgba(95,127,82,.45);
  background: rgba(95,127,82,.12);
  animation: accuracy-pulse 1800ms ease-in-out infinite;
}
.mini-pin {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--moss);
  box-shadow: 0 10px 28px rgba(24,35,30,.32);
}
.focus-target {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--mist);
  font-weight: 800;
}

@keyframes sheet-rise {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes toast-in {
  from { opacity: 0; transform: translateY(var(--rise)); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes toast-out {
  from { opacity: 1; transform: translateY(0) scale(1); }
  to { opacity: 0; transform: translateY(var(--rise)); }
}
@keyframes fixed-toast-in {
  from { opacity: 0; transform: translate(-50%, var(--rise)); }
  to { opacity: 1; transform: translate(-50%, 0) scale(1); }
}
@keyframes fixed-toast-out {
  from { opacity: 1; transform: translate(-50%, 0) scale(1); }
  to { opacity: 0; transform: translate(-50%, var(--rise)); }
}
@keyframes accuracy-pulse {
  0%, 100% { transform: scale(.92); opacity: .62; }
  50% { transform: scale(1.05); opacity: 1; }
}
@keyframes progress-sweep {
  0% { width: 18%; }
  65% { width: 72%; }
  100% { width: 72%; }
}
@keyframes press-breathe {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(.98); }
}
.coordinate {
  margin: 4px 0 2px;
  padding: 12px 14px;
  border-radius: 8px;
  background: color-mix(in srgb, var(--field) 8%, var(--paper));
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
  line-height: 1.35;
}
.place-bands {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.place .capture-layout {
  align-items: start;
}
.place-bands .chip {
  justify-content: center;
  width: 100%;
  min-height: 38px;
  padding-inline: 12px;
}
.place-alert {
  gap: 6px;
  padding: 14px;
  line-height: 1.32;
}
.place-alert .btn {
  justify-self: start;
  margin-top: 4px;
}
.place-alert[data-acknowledged="true"] {
  border-color: color-mix(in srgb, var(--moss) 42%, var(--line));
  background: color-mix(in srgb, var(--moss) 9%, var(--paper));
}
.place-alert strong {
  font-size: 1rem;
  line-height: 1.2;
}
.place .same-place-card {
  padding: 14px;
  gap: 10px;
}
.place .sheet {
  gap: 2px;
  padding: clamp(14px, 2.6vw, 18px);
}
.place .same-place-card .row {
  margin-top: 2px;
}
.place-actions {
  flex-wrap: wrap;
  padding-top: 4px;
  padding-bottom: calc(68px + env(safe-area-inset-bottom));
}
.place-actions .btn {
  min-width: 96px;
}
.place > .bottom-nav {
  margin-top: 0;
}

@media (max-width: 860px) {
  .showcase-hero, .capture-layout { grid-template-columns: 1fr; }
  .showcase-hero h1 { max-width: 12ch; font-size: 3.1rem; }
  .textarea { grid-column: auto; }
  .map-frame { min-height: 330px; }
  .capture-layout > .map-frame,
  .public-map-frame {
    min-height: auto;
    aspect-ratio: 4 / 3;
  }
  .component-grid { grid-template-columns: 1fr; }
  .composite-grid, .motion-grid { grid-template-columns: 1fr; }
  .section-head {
    align-items: start;
    flex-direction: column;
  }
}

@media (max-width: 460px) {
  .app-shell {
    padding: 14px 14px calc(var(--bottom-nav-height) + 14px);
  }
  .top-bar {
    grid-template-columns: 44px minmax(0, 1fr) auto;
    gap: 9px;
  }
  .brand-lockup {
    width: 44px;
  }
  .brand-name {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
  .top-status .status-led {
    max-width: 112px;
    padding-inline: 8px;
    font-size: .76rem;
  }
  .place {
    padding-inline: 16px;
  }
  .place .sheet {
    padding: 14px;
  }
  .place-bands {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .place-actions {
    gap: 8px;
    padding-bottom: calc(68px + env(safe-area-inset-bottom));
  }
  .place-actions .btn {
    flex: 1 1 130px;
  }
  .place-alert,
  .place .same-place-card {
    padding: 14px;
  }
  .nav-button,
  button.primary,
  button.secondary,
  .tappable {
    width: 100%;
    white-space: normal;
  }
  .review-queue-row,
  .export-action-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }
  .review-queue-row > .row,
  .export-action-row > .row {
    justify-content: start;
  }
  .review-queue-row .chip,
  .review-queue-row .status-led,
  .export-action-row .chip,
  .export-action-row .status-led {
    white-space: normal;
  }
}

@media (min-width: 861px) {
  .app-shell { padding-bottom: calc(var(--bottom-nav-height) + 28px); }
  .bottom-nav a {
    grid-template-columns: 24px auto;
    grid-auto-flow: column;
    gap: 8px;
    font-size: .84rem;
  }
}

@media (max-width: 520px) {
  .segmented {
    display: grid;
    grid-template-columns: 1fr;
  }
  .segmented .btn {
    width: 100%;
    min-width: 0;
  }
}

/* Reduced motion is rung 0 of the level-of-detail ladder (html[data-lod="0"],
   set at runtime by lil.ui.primitives/select-rung!); the rung's rules live in the
   token style block. This branch only covers the instant before the runtime runs. */
html:not([data-lod]) {
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
      transition-duration: 0.001ms !important;
      animation-duration: 0.001ms !important;
      animation-iteration-count: 1 !important;
      scroll-behavior: auto !important;
    }
  }
}

/* --- House grammar additions (skin/house-grammar) --------------------------- */

/* phone header: one-row bar (brand + menu + lang); nav drops down from menu button.
   The inline nav is not rendered inside .lil-top-bar on mobile, so these rules
   only style the dropdown nav rendered as a sibling element below the header. */
@media (max-width: 719px) {
  .lil-top-bar { padding: 0 16px !important; flex-wrap: nowrap !important; }
  .lil-top-nav { scrollbar-width: none; }
  .lil-top-nav::-webkit-scrollbar { display: none; }
  .lil-top-nav > * { white-space: nowrap; flex-shrink: 0; }
}

/* the record card is the sheet on phones: rises from the bottom edge (Junk 2026-09-04) */
@media (max-width: 719px) {
  .lil-record-card:not(.lil-desk-record) {
    top: auto !important; right: 0 !important; left: 0 !important; bottom: 0 !important;
    width: auto !important; height: calc(100dvh - 98px) !important;
    transition: height var(--move) var(--ease);
    border-radius: 12px 12px 0 0 !important;
    animation-name: atlas-sheet-rise !important;
  }
  .lil-record-card [role="button"][aria-label$="the sheet"] { touch-action: none; }
}

/* Press by pressure: compress and darken, never brighten; 0 ms attack. */
.btn:active, .atlas-press:active, .lil-btn:active {
  box-shadow: inset 0 0 0 999px rgba(24,20,10,.08);
}

/* Rows follow the container: explicit 48 ms stagger, 18 px rise and fade. */
.lil-stagger > * { animation: lil-row-in var(--move) var(--ease-out, cubic-bezier(.2,0,.4,1)) both; animation-delay: calc(var(--lead) + var(--stagger) * var(--i, 0)); }
.lil-stagger > :nth-child(1) { --i: 0; } .lil-stagger > :nth-child(2) { --i: 1; } .lil-stagger > :nth-child(3) { --i: 2; }
.lil-stagger > :nth-child(4) { --i: 3; } .lil-stagger > :nth-child(5) { --i: 4; } .lil-stagger > :nth-child(6) { --i: 5; }
.lil-stagger > :nth-child(7) { --i: 6; } .lil-stagger > :nth-child(n+8) { --i: 7; }
@keyframes lil-row-in { from { opacity: 0; transform: translateY(var(--rise, 18px)); } to { opacity: 1; transform: none; } }

/* Reveal candidate A: relief and light on the terrain layer (rung ≥ 2 only).
   A multiply pass lit from the north-west over the Leaflet tile pane; no chrome element. */
html[data-relief="on"][data-lod="2"] .leaflet-container::after,
html[data-relief="on"][data-lod="3"] .leaflet-container::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  z-index: 450; /* above the map pane (400: tiles, polygons, markers), below the controls (800) */
  background:
    radial-gradient(120% 90% at 18% 12%, rgba(255,246,222,.30) 0%, rgba(255,246,222,0) 55%),
    linear-gradient(155deg, rgba(255,250,235,.12) 0%, rgba(24,20,10,0) 45%, rgba(24,20,10,.26) 100%);
  mix-blend-mode: multiply;
}
html[data-relief="on"][data-lod="2"] .leaflet-tile-pane img,
html[data-relief="on"][data-lod="3"] .leaflet-tile-pane img { filter: contrast(1.06) saturate(.92); }

/* The one overlay ground: leather or dimmed paper (skin choice, showcase group 3). */
html[data-ground="leather"] .lil-overlay-ground { background: #2A2724 var(--leather-tile, none); background-size: 768px 768px; }
html[data-ground="leather-field"] .lil-overlay-ground { background: #24382F var(--leather-tile, none); background-size: 768px 768px; background-blend-mode: luminosity; }

/* Attribution override — legible paper-register line */
.leaflet-container .leaflet-control-attribution {
  font-family: 'Source Serif 4', 'Source Serif Pro', Georgia, serif;
  font-size: 0.6875rem;
  line-height: 1.4;
  color: rgba(42, 36, 22, .72);
  background: rgba(239, 232, 214, .88);
  padding: 3px 10px;
  border-radius: 2px 0 0 0;
  backdrop-filter: blur(6px);
  pointer-events: none;
}
.leaflet-container .leaflet-control-attribution a {
  color: rgba(42, 36, 22, .72);
  text-decoration: none;
  pointer-events: none;
}

/* Leaflet tooltip reset for all parcel/estate classes */
.parcel-pill.leaflet-tooltip,
.parcel-slat.leaflet-tooltip,
.estate-label.leaflet-tooltip {
  background: transparent;
  border: none;
  box-shadow: none;
  padding: 0;
}
.parcel-pill.leaflet-tooltip::before,
.parcel-slat.leaflet-tooltip::before,
.estate-label.leaflet-tooltip::before {
  display: none;
}

/* Parcel name pills — Leaflet permanent tooltips styled as material pills */
.parcel-pill {
  background: rgba(95,127,82,.85);
  color: #fff;
  font-family: "Seravek", "Gill Sans Nova", Ubuntu, Calibri, sans-serif;
  font-size: 0.75rem; /* type floor 11 px (G3), 2026-09-14 */
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 2px 8px;
  border-radius: 10px;
  border: none;
  box-shadow: 0 1px 3px rgba(0,0,0,.18);
  white-space: nowrap;
  pointer-events: none;
}
.parcel-pill::before {
  display: none;
}
.parcel-pill--boundary-marker  { background: rgba(204,58,56,.80); }
.parcel-pill--cultural-feature { background: rgba(176,120,40,.80); }
.parcel-pill--natural-resource { background: rgba(52,128,96,.80); }
.parcel-pill--sacred-place     { background: rgba(204,136,16,.80); }
.parcel-pill--landmark         { background: rgba(69,128,56,.80); }
.parcel-pill--facility         { background: rgba(69,128,56,.80); }
.parcel-pill--livelihood       { background: rgba(152,112,16,.80); }
.parcel-pill--lookout          { background: rgba(40,104,128,.80); }

/* Slat label — rotated name on polygon geometry */
.parcel-slat {
  background: none;
  border: none;
  box-shadow: none;
  padding: 0;
  pointer-events: none;
}
.parcel-slat::before {
  display: none;
}

/* Community estate boundaries.
   The .leaflet-tooltip compound selector out-specifies Leaflet's own
   stylesheet, which loads after this file and otherwise wins the color. */
.estate-label,
.estate-label.leaflet-tooltip {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  font-size: 1rem;
  color: #ffffff;
  text-shadow: 0 1px 3px rgba(24,35,30,.9), 0 0 12px rgba(24,35,30,.7), 0 0 24px rgba(24,35,30,.5);
  letter-spacing: 0.02em;
  white-space: nowrap;
  background: none;
  border: none;
  box-shadow: none;
  padding: 0;
}
.estate-label::before {
  display: none;
}

/* Footer-legal line */
.footer-legal {
  font-size: 0.71875rem; /* 11.5 px mono step, type floor (G3), 2026-09-14 */
  color: rgba(24,35,30,.38);
  letter-spacing: 0.02em;
  text-align: center;
  padding: 8px 24px;
}

/* Masonry responsive breakpoints */
@media (max-width: 900px) {
  [data-view="stories-grid"] { columns: 2 !important; }
}
@media (max-width: 600px) {
  [data-view="stories-grid"] { columns: 1 !important; }
}

/* Frosted-glass material for map overlay panels (Junk ruling, demo day 2026-08-27):
   translucent paper over blurred terrain; text stays fully legible. */
.glass-panel {
  backdrop-filter: blur(12px) saturate(1.15);
  -webkit-backdrop-filter: blur(12px) saturate(1.15);
}

/* Ghost pin riding the cursor while add-story placement is armed */
.add-story-cursor-pin {
  background: transparent;
  border: none;
  pointer-events: none;
}

/* ── Snap bar (boundary editor, C3) ──────────────────────────────────────── */
[data-snap-bar] {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 4px 8px;
  background: rgba(239,232,214,.85);
  border: 1px solid rgba(24,35,30,.12);
  border-radius: 4px;
  font-size: 0.75rem;
  margin-bottom: 4px;
  min-height: 28px;
}
[data-snap-bar] button {
  font-size: 0.6875rem;
  padding: 2px 8px;
  border: 1px solid rgba(24,35,30,.22);
  border-radius: 3px;
  background: rgba(255,255,255,.6);
  cursor: pointer;
  line-height: 1.4;
}
[data-snap-bar] button[aria-pressed="true"] {
  background: #5F7F52;
  color: #fff;
  border-color: #5F7F52;
}
[data-snap-bar] button:disabled {
  opacity: .4;
  cursor: default;
}
[data-snap-bar] [data-snap-label] {
  font-size: 0.6875rem;
  color: rgba(24,35,30,.65);
  white-space: nowrap;
}
[data-snap-bar] .snap-help {
  font-size: 0.625rem;
  color: rgba(24,35,30,.4);
  margin-left: auto;
}
path.lil-contour-arc {
  stroke: #00cc44;
  stroke-width: 3;
  stroke-opacity: 0.85;
  fill: none;
}
/* S3 shared category grid — gpt-6-astra low. */
.lil-category-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; margin-top:8px; }
.lil-category-chip { box-sizing:border-box; width:100%; min-width:0; height:40px; display:flex; align-items:center; gap:5px; padding:4px 6px; border:1px solid rgba(24,35,30,.22); border-radius:3px; background:transparent; box-shadow:none; font-size:12px; cursor:pointer; }
.lil-category-chip > :first-child { flex-shrink:0; }
.lil-category-chip > span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lil-category-chip[aria-pressed="true"] { border-color:currentColor; text-decoration:underline; text-underline-offset:4px; }
@media(max-width:719px) { .lil-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .lil-category-chip { height:44px; } }

/* Map composition: controls remain a single aligned row. */
.lil-map-control-row { --map-control-height:40px; }
.lil-map-control-row > * { height:var(--map-control-height)!important; box-sizing:border-box; }
.lil-map-control-row button { min-height:var(--map-control-height)!important; height:var(--map-control-height)!important; box-shadow:none!important; }
.lil-map-control-row > button:not(.lil-filter-disclosure), .lil-map-control-row > [data-instrument="layers-box"] > button { width:var(--map-control-height)!important; }
.lil-map-control-row .lil-map-primary { background:#C58B37!important; color:#18231E!important; }
.lil-map-filters .glass-panel { box-shadow:none!important; background:rgba(239,232,214,.97)!important; }
.lil-communities-card { border-color:#c9bc9c!important; }
.lil-community-list { scrollbar-gutter:stable; scrollbar-width:thin; scrollbar-color:#8b7959 #e8dfcb; }
.lil-community-list::-webkit-scrollbar { width:8px; }
.lil-community-list::-webkit-scrollbar-thumb { background:#8b7959; border-radius:4px; }
.lil-community-list button { flex-shrink:0; min-height:40px; }
.lil-community-count { margin:8px 0 0; padding-top:6px; border-top:1px solid #c9bc9c; text-align:right; font-size:11px; color:#6b5a3a; }
.lil-phone-map-key { position:absolute; top:168px; left:12px; z-index:5; background:rgba(239,232,214,.96); border:1px solid #c9bc9c; border-radius:3px; padding:10px; max-width:calc(100% - 24px); }
.lil-map-key-row { display:flex; align-items:center; gap:6px; font-size:11px; line-height:23px; }
.lil-map-key-row em { color:#7a6647; }
@media(max-width:719px) { .lil-map-control-row { --map-control-height:44px; } .lil-map-filters { width:100%!important; } .lil-community-list button { min-height:44px; } }

.lil-community-list { position:relative; mask-image:linear-gradient(to bottom,black calc(100% - 14px),transparent); }

.lil-category-chip { min-height:40px; }
@media(max-width:719px) {
  .lil-category-chip { min-height:44px; }
  .lil-phone-filter-panel { max-height:calc(100dvh - 210px)!important; }
  .lil-community-list { max-height:150px!important; }
}

/* Public header: uniform controls and a single phone navigation row. */
.lil-top-bar > * { box-sizing:border-box; height:40px!important; display:flex; align-items:center; }
.lil-top-bar a, .lil-top-bar button { height:40px!important; min-height:40px!important; box-sizing:border-box; }
.lil-top-bar .lil-primary-nav { flex-wrap:nowrap!important; }
#lil-more-nav { position:absolute!important; right:0; top:52px; min-width:180px; }
#lil-more-nav a, #lil-more-nav button { min-height:44px; }
@media(max-width:719px) {
 .lil-top-bar { padding:0 10px!important; gap:6px!important; }
 .lil-top-bar > *, .lil-top-bar a, .lil-top-bar button { height:44px!important; min-height:44px!important; }
 .lil-top-bar .lil-wordmark { font-size:14px!important; white-space:nowrap; flex-shrink:0; }
 .lil-top-bar .lil-primary-nav { gap:7px!important; }
 .lil-top-bar .atlas-navlink { font-size:12px!important; }
 .lil-top-bar .lil-nav-more { font-size:12px; flex-shrink:0; }
 .lil-top-bar [data-instrument="lang-toggle"] { flex-shrink:0; gap:0!important; }
 .lil-top-bar [data-instrument="lang-toggle"] button { padding:0 3px!important; font-size:11px; }
}

/* S3-prime V4 printed page — gpt-6-astra (low). */
@font-face{font-family:'Instrument Sans';src:url('/assets/fonts/instrument-sans-latin.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/assets/fonts/ibm-plex-mono-latin.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/ibm-plex-mono-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/ibm-plex-mono-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IM Fell English SC';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/im-fell-english-sc-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/instrument-sans-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/instrument-sans-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/instrument-sans-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/instrument-sans-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Libre Caslon Display';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/libre-caslon-display-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Libre Caslon Display';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/libre-caslon-display-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Libre Caslon Text';font-style:italic;font-weight:400;font-display:swap;src:url('/fonts/libre-caslon-text-400-italic-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Libre Caslon Text';font-style:italic;font-weight:400;font-display:swap;src:url('/fonts/libre-caslon-text-400-italic-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Libre Caslon Text';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/libre-caslon-text-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Libre Caslon Text';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/libre-caslon-text-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Libre Caslon Text';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/libre-caslon-text-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Libre Caslon Text';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/libre-caslon-text-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
body:has(.v4-board){--v4-ink:#18231E;--v4-field:#24382F;--v4-parch:#EFE8D6;--v4-rule:#C9BC9C;--v4-muted:#5A4E36;--v4-serif:Fraunces,Georgia,serif;--v4-sans:'Instrument Sans',Arial,sans-serif;--v4-mono:'IBM Plex Mono',monospace;background:#24382F;overflow:hidden}
body:has(.v4-board) #app>div{background:linear-gradient(#ffffff0a,#ffffff00),#24382F!important}
body:has(.v4-board) #app>div:before{content:'';position:fixed;inset:0;background:url('/assets/textures/leather030-768-gray.jpg');mix-blend-mode:multiply;opacity:.35;pointer-events:none}
body:has(.v4-board) .lil-top-bar{height:64px;min-height:64px!important;padding:0 28px!important;background:transparent!important;backdrop-filter:none!important;border:0!important;gap:36px!important;overflow:visible!important}
body:has(.v4-board) .lil-top-bar>*{height:44px!important;display:flex!important;align-items:center!important}
body:has(.v4-board) .lil-wordmark{font:600 22px/1 var(--v4-serif)!important;color:var(--v4-parch)!important;white-space:nowrap}
body:has(.v4-board) .lil-top-nav{gap:24px!important}
body:has(.v4-board) .atlas-navlink,body:has(.v4-board) [data-instrument='lang-toggle'] button{font:600 12px/1 var(--v4-sans)!important;letter-spacing:.12em;text-transform:uppercase;color:#efe8d69e!important}
body:has(.v4-board) .atlas-navlink{height:32px!important;border-bottom-color:transparent!important}
body:has(.v4-board) .atlas-navlink[href='/']{color:var(--v4-parch)!important;border-bottom:1.5px solid #C58B37!important}
.v4-board{position:relative;flex:1;min-height:0;color:var(--v4-ink);font-family:var(--v4-serif)}
.v4-page{position:absolute;left:28px;right:28px;top:72px;bottom:28px;background:var(--v4-parch) url('/assets/textures/paper001-512.jpg');background-blend-mode:multiply;box-shadow:0 6px 18px #18140a29}
.v4-map{position:absolute;left:26px;right:426px;top:26px;bottom:94px;outline:1px solid var(--v4-rule);background:#cfc3a3}
.v4-board .lil-map-filters{position:static!important;width:auto!important}
.v4-board .lil-map-filters>div:first-child{position:absolute!important;left:28px;top:16px;width:340px;z-index:30}
.v4-board [data-coach='search']{height:38px!important;background:#1B2B24!important;border:1px solid #142019!important;border-radius:0!important;box-shadow:inset 0 2px 4px #0005!important;padding:0 12px!important}
.v4-board [data-coach='search'] input{font:13px var(--v4-mono)!important;color:var(--v4-parch)!important;min-width:0}
.v4-board [data-coach='search'] input::placeholder{color:#efe8d69e}
.v4-board [data-coach='search'] svg{stroke:var(--v4-parch)}
.v4-board .lil-communities-card{position:absolute;left:54px;top:154px;width:230px;z-index:6;background:var(--v4-parch)!important;border:1px solid var(--v4-rule)!important;border-radius:0!important;box-shadow:none!important;padding:12px!important}
.v4-board .lil-community-list{max-height:180px!important;scrollbar-width:auto;scrollbar-color:#5A4E36 #ddd2b9;overflow-y:scroll!important}
.v4-board .lil-community-list button{font:12px/1.4 var(--v4-sans)!important;min-height:28px;border-radius:0!important;padding:6px 0!important}
.v4-board .lil-community-count{font:11.5px var(--v4-mono);margin:8px 0 0}
.v4-board .lil-communities-card button>span{font:600 12px var(--v4-sans)!important}
.v4-count,.v4-instruments{position:absolute;top:0;z-index:12;height:44px;background:var(--v4-parch);border-bottom:1px solid var(--v4-rule);display:flex;align-items:center}
.v4-count{left:0;padding:0 10px;font:11.5px/1.3 var(--v4-mono);color:var(--v4-muted)}
.v4-instruments{right:0}
.v4-instruments>button,.v4-instruments>[data-instrument='layers-box'],.v4-instruments>[data-instrument='layers-box']>button{width:44px!important;height:44px!important;min-height:44px!important;min-width:44px!important;border:0!important;border-left:1px solid var(--v4-rule)!important;border-radius:0!important;background:var(--v4-parch)!important;box-shadow:none!important;padding:0!important;color:var(--v4-muted)!important;display:flex!important;align-items:center;justify-content:center;font:22px var(--v4-sans)!important}
.v4-instruments>[data-instrument='layers-box']{border:0!important}
.v4-board [data-add-record]{position:absolute;right:12px;bottom:48px;width:auto!important;height:44px!important;min-height:44px!important;padding:0 15px!important;z-index:12;background:#C58B37!important;color:var(--v4-ink)!important;border:0!important;border-radius:0!important;box-shadow:none!important;font:600 12px var(--v4-sans)!important}
.v4-empty-column{position:absolute;top:26px;right:26px;bottom:94px;width:520px;border-left:1px solid var(--v4-rule);padding:0 22px;font:11.5px/1.8 var(--v4-mono);color:var(--v4-muted)}
.v4-foot{position:absolute;left:26px;right:26px;bottom:26px;height:54px;border-top:1px solid var(--v4-muted);padding-top:10px;z-index:13}
.v4-key{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));width:100%;gap:0}
.v4-key>button{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0;border:0;background:transparent;padding:0;font:12px/1.2 var(--v4-sans);color:var(--v4-ink);cursor:pointer;transition:opacity var(--move) var(--ease)}
.v4-key>button[aria-pressed='false']{opacity:.35}
.v4-key>button>span{white-space:nowrap}
.v4-board .leaflet-control-container{display:none}
.v4-board .lil-record-card{top:26px!important;right:26px!important;bottom:94px!important;width:520px!important;border:0!important;border-left:1px solid var(--v4-rule)!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}
.v4-board button:active,.v4-board a:active{filter:brightness(.92)}
/* map symbols and cluster plates press too; the inner element, since Leaflet owns the outer transform */
.leaflet-marker-icon>svg,.leaflet-marker-icon>.v4-symbol-plate{transform-origin:center;transition:transform var(--exit) var(--ease)}
.leaflet-marker-icon:active>svg,.leaflet-marker-icon:active>.v4-symbol-plate{transform:scale(var(--press-scale));filter:brightness(.92);transition:none}
html[data-lod="0"] .leaflet-marker-icon:active>svg,html[data-lod="0"] .leaflet-marker-icon:active>.v4-symbol-plate{transform:none}
/* a cluster numeral changed by the key crossfades over the exit, opacity only (the old plate fades out in lil.dashboard.core) */
.v4-plate-in>.v4-symbol-plate{transition:transform var(--exit) var(--ease),opacity var(--exit) var(--ease)}
@starting-style{.v4-plate-in>.v4-symbol-plate{opacity:0}}
.shell-topbar{background:#24382F}.shell-search{background:#1B2B24}.shell-map{background-color:#EFE8D6}
@media(max-width:719px){
 body:has(.v4-board) .lil-top-bar{height:52px;min-height:52px!important;padding:0 12px!important;gap:8px!important}
 body:has(.v4-board) .lil-wordmark{font-size:22px!important}
 body:has(.v4-board) .lil-top-nav{gap:7px!important}
 body:has(.v4-board) .atlas-navlink{font-size:11px!important;letter-spacing:0}
 body:has(.v4-board) .lil-nav-more{font:11px var(--v4-sans)!important;padding:0!important}
 body:has(.v4-board) [data-instrument='lang-toggle']{margin-left:auto!important;gap:0!important}
 body:has(.v4-board) [data-instrument='lang-toggle'] button{padding:0 2px!important;font-size:11px!important;letter-spacing:0}
 .v4-page{left:8px;right:8px;top:56px;bottom:8px}
 .v4-board .lil-map-filters>div:first-child{left:12px;right:12px;top:8px;width:auto}
 .v4-map{left:14px;right:14px;top:26px;bottom:64px}
 .v4-count{font-size:11px;padding:0 5px;max-width:calc(100% - 220px)}
 .v4-board .lil-communities-card{left:22px;top:142px;width:160px;padding:8px!important}
 .v4-board .lil-community-list{max-height:120px!important}
 .v4-foot{left:14px;right:14px;bottom:14px;height:38px;padding-top:8px}
 .v4-key>button>span{display:none}
 .v4-empty-column{display:none}
 .v4-board .lil-record-card{position:fixed!important;left:8px!important;right:8px!important;top:auto!important;bottom:8px!important;width:auto!important;height:calc(100dvh - 98px)!important;border-left:0!important;border-top:1px solid var(--v4-rule)!important;background:var(--v4-parch) url('/assets/textures/paper001-512.jpg')!important;background-blend-mode:multiply!important}
}
html[data-lod="0"] .v4-board button:active,html[data-lod="0"] .v4-board a:active{transform:none}html[data-lod="0"] .v4-board *{animation-delay:0s!important}
.v4-symbol-plate{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1.5px solid #18231E;flex:none;box-sizing:border-box}
.v4-symbol-plate svg{filter:none!important}
.v4-board .leaflet-tile-pane{filter:saturate(.5) sepia(.28) contrast(1.04) brightness(1.12)}
.v4-wash{position:absolute;inset:0;z-index:3;pointer-events:none;background:var(--v4-parch);mix-blend-mode:multiply}
.v4-graticule{position:absolute;inset:0;z-index:4;pointer-events:none;font:11.5px var(--v4-mono);color:var(--v4-muted)}
.v4-graticule i{position:absolute;font-style:normal}
.v4-longitude{top:0;bottom:0;border-left:1px solid #5a4e3647}.v4-longitude span{position:absolute;top:4px;left:4px;white-space:nowrap;background:var(--v4-parch);padding:0 3px;border:1px solid rgba(90,78,54,.15)}
.v4-latitude{left:0;right:0;border-top:1px solid #5a4e3647}.v4-latitude span{position:absolute;left:4px;top:-9px;white-space:nowrap;background:var(--v4-parch);padding:0 3px;border:1px solid rgba(90,78,54,.15)}
.v4-scale{position:absolute;right:12px;bottom:10px;z-index:12;pointer-events:none;display:flex;align-items:center;gap:12px;background:var(--v4-parch);padding:8px;border:1px solid var(--v4-ink);font:11.5px var(--v4-mono);pointer-events:none}
.v4-scale i{display:block;height:5px;border:1px solid var(--v4-muted);background:linear-gradient(90deg,var(--v4-muted) 50%,transparent 50%);margin-bottom:4px}
.v4-scale span{white-space:nowrap}
.v4-place-name{font:500 12px/1.15 var(--v4-sans)!important;color:var(--v4-ink)!important;background:#efe8d6d9!important;border:0!important;border-radius:2px!important;padding:3px!important;box-shadow:none!important;text-shadow:0 0 2px #EFE8D6;opacity:1!important}
.v4-place-name:before{display:none}
#lil-public-map[data-zoom='5'] .v4-place-name,#lil-public-map[data-zoom='6'] .v4-place-name,#lil-public-map[data-zoom='7'] .v4-place-name,#lil-public-map[data-zoom='8'] .v4-place-name,#lil-public-map[data-zoom='9'] .v4-place-name,#lil-public-map[data-zoom='10'] .v4-place-name,#lil-public-map[data-zoom='11'] .v4-place-name,#lil-public-map[data-zoom='12'] .v4-place-name{visibility:hidden}
.v4-estate-ring{display:inline-block;width:12px;height:12px;border:1.5px solid;border-radius:50%;margin-right:7px;vertical-align:middle}
.v4-board .lil-community-list{mask-image:none}
.v4-board .lil-community-list button{min-height:28px!important}
.v4-board [data-instrument='layers-box']>div{background:var(--v4-parch)!important;border-radius:0!important;box-shadow:none!important}
.v4-board [data-instrument='layers-box'] .atlas-smallcaps{font:11.5px var(--v4-sans)!important}
/* Record region shares the page surface and its single lift. */
.v4-board .v4-column{position:absolute!important;display:flex!important;flex-direction:column;overflow:hidden!important;padding:0 22px!important;color:var(--v4-ink);z-index:15!important}
.v4-record-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--v4-rule) transparent;padding-bottom:12px;display:flex;flex-direction:column}
/* Desktop record order: stamp → print → head → surveyor → body (ruling 3) */
@media(min-width:720px){
.v4-record-scroll .v4-stamp{order:1}
.v4-record-scroll .v4-print{order:2}
.v4-record-scroll [data-record-head]{order:3}
.v4-record-scroll .v4-surveyor{order:4}
.v4-record-scroll .v4-record-body{order:5}
.v4-record-scroll .v4-media-row{order:6}
.v4-record-scroll .v4-cross-reference{order:7}
.v4-record-scroll .v4-record-foot{order:8}
}
.v4-stamp{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:6px;min-height:30px;margin-bottom:14px;background:var(--v4-parch) url('/assets/textures/paper001-512.jpg');background-blend-mode:multiply;font:11.5px/1.2 var(--v4-mono);color:var(--v4-muted)}
.v4-stamp>span:first-child{flex:1}.v4-scope{border:1px solid var(--v4-muted);padding:3px 5px}
.v4-stamp button{padding:0 3px;background:none;border:0;font:11.5px var(--v4-mono);cursor:pointer;color:inherit}
.v4-stamp .v4-close{font:22px var(--v4-serif);width:26px;height:30px;flex:none}
.v4-print{width:100%;margin:0;background:#FCFDF9;border:1px solid var(--v4-rule);padding:10px;box-sizing:border-box}
.v4-photo-frame{width:100%;aspect-ratio:4/3;overflow:hidden;touch-action:pan-y;background:#e8e6dd}
.v4-photo-frame img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.85)}
.v4-figure-line{height:76px;margin-top:7px;overflow:hidden;font:11.5px/1.4 var(--v4-mono);color:var(--v4-muted)}
.v4-figure-pager{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:32px}
.v4-photo-arrows{display:flex;gap:2px}.v4-photo-arrows button{width:32px;height:32px;font:22px var(--v4-sans);padding:0;background:none;border:0;color:inherit;cursor:pointer}.v4-photo-arrows button:disabled{opacity:.3;cursor:default}
.v4-record-head{display:flex;align-items:baseline;gap:10px;margin:18px 0 8px;font:600 34px/1.08 var(--v4-serif)}
.v4-record-head [data-record-icon]{display:inline-flex;flex:none;transform:none}
.v4-record-head h2{font:inherit!important;letter-spacing:-.015em;margin:0!important;color:var(--v4-ink)!important;min-width:0}
.v4-surveyor{font:11.5px/1.5 var(--v4-mono);color:var(--v4-muted);margin-bottom:12px}
.v4-record-categories{display:flex;flex-wrap:wrap;gap:5px;text-transform:uppercase}.v4-record-categories>span+span:before{content:'· ';}
.v4-record-body{font:16.5px/1.6 var(--v4-serif);margin:0;max-width:34em;color:var(--v4-ink)}
.v4-media-row{margin-top:14px;padding:12px 0;border-top:1px solid var(--v4-rule);font:12px/1.5 var(--v4-sans)}
.v4-media-row>button{width:100%;text-align:left;padding:12px;border:1px solid var(--v4-rule);font:12px/1.5 var(--v4-sans);background:transparent;cursor:pointer}
.v4-media-row small{display:block;color:var(--v4-muted);font:11.5px var(--v4-mono)}
.v4-cross-reference{margin-top:14px;padding-top:10px;border-top:1px solid var(--v4-rule);font:16.5px/1.7 var(--v4-serif)}
.v4-cross-reference>b{font:600 12px var(--v4-sans);letter-spacing:.12em}.v4-cross-reference .atlas-smallcaps{display:none}.v4-cross-reference button{padding:0!important;border:0!important;border-bottom:1px solid var(--v4-rule)!important;border-radius:0!important;font:16.5px var(--v4-serif)!important}.v4-cross-reference button>span{display:none}
.v4-record-foot{border-top:1px solid var(--v4-rule);padding-top:12px;margin-top:14px;display:flex;align-items:end;gap:10px;justify-content:space-between;font:600 13px var(--v4-sans)}
.v4-record-foot small{display:block;font:11.5px/1.6 var(--v4-mono);color:var(--v4-muted)}
.v4-number{font:11.5px var(--v4-mono);border:1px solid var(--v4-rule);padding:4px;white-space:nowrap;transform:rotate(-3deg)}
.v4-clip,.v4-running-head,.v4-strip-head{display:none}
.v4-record-scroll>*{animation:v4-record-rise var(--move) var(--ease) both;animation-delay:var(--lead)}
.v4-record-scroll>:nth-child(3){animation-delay:calc(var(--lead) + var(--stagger))}.v4-record-scroll>:nth-child(4){animation-delay:calc(var(--lead) + 2*var(--stagger))}.v4-record-scroll>:nth-child(n+5){animation-delay:calc(var(--lead) + 3*var(--stagger))}
@keyframes v4-record-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.v4-board[data-record-open='true'] .v4-empty-column{visibility:hidden}
@media(max-width:719px){
 .v4-board .v4-column{padding:28px 20px 16px!important;transition:height var(--move) var(--ease)}
 .v4-clip{display:block;position:absolute;top:6px;left:calc(50% - 32px);width:64px;height:14px;background:#C58B37;touch-action:none;cursor:grab;z-index:4}
 .v4-record-head{font-size:28px}.v4-photo-arrows{display:none}
 /* Phone order: head → surveyor → print (ruling 3 + S-ledger-2 item 4) */
 .v4-record-scroll .v4-stamp{order:1}
 .v4-record-scroll [data-record-head]{order:2}
 .v4-record-scroll .v4-surveyor{order:3}
 .v4-record-scroll .v4-print{order:4}
 .v4-record-scroll .v4-record-body{order:5}
 .v4-record-scroll .v4-media-row{order:6}
 .v4-record-scroll .v4-cross-reference{order:7}
 .v4-record-scroll .v4-record-foot{order:8}
 /* Print mount: 170px landscape at first detent, 262px at reading */
 .v4-print .v4-photo-frame{aspect-ratio:3/2}
 [data-detent='58'] .v4-print .v4-photo-frame{height:170px;aspect-ratio:auto}
 [data-detent='92'] .v4-print .v4-photo-frame{height:262px;aspect-ratio:auto}
 /* Strip state: 96px, shows strip-head only */
 .v4-strip-head{display:none}
 [data-detent='96'] .v4-strip-head{display:flex;align-items:center;gap:10px;padding:0 4px;height:calc(96px - 28px);font:500 20px/1.2 var(--v4-serif);color:var(--v4-ink)}
 [data-detent='96'] .v4-strip-head [data-record-icon] svg{width:24px;height:24px}
 .v4-strip-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
 .v4-strip-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .v4-strip-line{font:11.5px/1.2 var(--v4-mono);color:var(--v4-muted);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .v4-strip-number{font:11.5px var(--v4-mono);color:var(--v4-muted);white-space:nowrap}
 .v4-strip-close{font:22px var(--v4-serif);width:26px;height:30px;flex:none;background:none;border:0;color:var(--v4-ink);cursor:pointer}
 [data-detent='96'] .v4-record-scroll{display:none!important}
 /* the page is slid, not resized: head drags, body scrolls; the scroll ends at the visible edge */
 .v4-strip-head{touch-action:none}
 .v4-record-scroll{touch-action:pan-y;padding-bottom:calc(12px + var(--sheet-pad,0px))}
 .v4-board[data-record-open='true'] [data-add-record],.v4-board[data-record-open='true'] .lil-communities-card{display:none!important}
 .v4-board[data-record-open='true'] .v4-foot{position:fixed;left:8px;right:8px;top:calc(42vh - 46px);bottom:auto;height:38px;padding:8px 14px;background:var(--v4-parch);z-index:16;border-bottom:1px solid var(--v4-rule)}
 .v4-board[data-record-open='true'] .v4-map{height:calc(42vh - 180px);bottom:auto}
 .v4-board[data-record-open='true'][data-detent='92'] .v4-column{height:calc(100dvh - 98px)!important}
 .v4-board[data-record-open='true'][data-detent='92'] .v4-foot{top:52px}
 .v4-board[data-record-open='true'][data-detent='92'] .v4-map{visibility:hidden}
 .v4-board[data-map-collapsed='true'][data-record-open='true'] .v4-map{height:96px;visibility:hidden}
 .v4-board[data-map-collapsed='true'][data-record-open='true'] .v4-running-head{display:flex;position:absolute;left:14px;right:14px;top:26px;height:96px;align-items:center;gap:12px;padding:12px;text-align:left;border:0;border-bottom:1px solid var(--v4-rule);z-index:14;background:var(--v4-parch);color:var(--v4-ink)}
 .v4-running-head strong{display:block;font:600 22px/1.15 var(--v4-serif)}.v4-running-head small{display:block;margin-top:8px;font:11.5px/1.5 var(--v4-mono)}
 .v4-board[data-map-collapsed='true'][data-record-open='true'] .v4-foot{top:230px}
 .v4-board[data-map-collapsed='true'][data-record-open='true'] .v4-column{top:268px!important;height:auto!important;transform:none!important;--sheet-pad:0px!important}
}
@media(min-width:720px){
 .v4-board .lil-record-card{transform:none!important}
}
html[data-lod="0"] .v4-record-scroll>*{animation-name:v4-crossfade;animation-duration:var(--crossfade)!important;animation-delay:0s!important}html[data-lod="0"] .v4-number{transform:none}html[data-lod="0"] .v4-board .v4-column{transition:none}
@media(max-width:719px){
 .v4-board .v4-column{position:fixed!important}
 .v4-board[data-record-open='true'][data-detent='92'] .lil-map-filters>div:first-child{visibility:hidden}
 .v4-board[data-map-collapsed='true'] .lil-map-filters>div:first-child{visibility:visible}
}
@media(max-width:719px){.v4-key>button{height:24px!important;min-height:24px!important;gap:0}}
.v4-count{gap:4px}.v4-count-communities{white-space:nowrap}
@media(max-width:719px){.v4-count-communities{display:none}}
.v4-count-imagery{white-space:nowrap;animation:v4-imagery-in var(--move) var(--ease,cubic-bezier(.4,0,.6,1)) both}.v4-count-imagery[data-imagery=leaving]{animation:v4-imagery-out var(--exit) var(--ease,cubic-bezier(.4,0,.6,1)) both}
@keyframes v4-imagery-in{from{opacity:0}to{opacity:1}}@keyframes v4-imagery-out{from{opacity:1}to{opacity:0}}
.v4-map .leaflet-marker-icon.leaflet-interactive::before{content:"";position:absolute;inset:-10px}
@media(max-width:719px){.lil-map-filters [data-coach=search]{position:relative;isolation:isolate}.lil-map-filters [data-coach=search]::before{content:"";position:absolute;left:-1px;right:-1px;top:-4px;bottom:-4px;z-index:-1}}
.v4-map[data-reveal] .v4-latitude{transform-origin:0 0}.v4-map[data-reveal] .v4-longitude{transform-origin:0 0}
.v4-map:is([data-reveal=pending],[data-reveal=armed]) .leaflet-tile-pane{opacity:0;will-change:opacity}
.v4-map:is([data-reveal=pending],[data-reveal=armed]):not([data-reveal-rung="0"]) :is(.leaflet-overlay-pane,.leaflet-tooltip-pane,[data-graticule-label]){opacity:0;will-change:opacity}
.v4-map:is([data-reveal=pending],[data-reveal=armed]):not([data-reveal-rung="0"]) .leaflet-marker-pane .leaflet-marker-icon{opacity:0!important;will-change:opacity}
.v4-map:is([data-reveal=pending],[data-reveal=armed]):not([data-reveal-rung="0"]) .leaflet-marker-pane .leaflet-marker-icon>*{transform:scale(var(--press-scale,.93));will-change:transform}
.v4-map:is([data-reveal=pending],[data-reveal=armed]):not([data-reveal-rung="0"]) .v4-latitude{transform:scaleX(0);will-change:transform}
.v4-map:is([data-reveal=pending],[data-reveal=armed]):not([data-reveal-rung="0"]) .v4-longitude{transform:scaleY(0);will-change:transform}

@keyframes v4-crossfade{from{opacity:0}to{opacity:1}}
.v4-column.v4-exit{opacity:0;transition:opacity var(--exit) var(--ease)!important}
/* the selected ring (N1) fades in over --move at the tap; the symbol itself swaps at once */
.leaflet-marker-icon[data-selected] svg{animation:v4-ring-in var(--move) var(--ease) both}
@keyframes v4-ring-in{from{box-shadow:none}}
@media(prefers-reduced-motion:reduce){.leaflet-marker-icon[data-selected] svg{animation:none}}

@media(max-width:719px){
 .v4-latitude span{display:none}
 .v4-board[data-map-collapsed='true'][data-record-open='true'] .lil-map-filters>div:first-child{visibility:visible}
 body:has(.v4-board) .atlas-navlink,body:has(.v4-board) .lil-nav-more,body:has(.v4-board) [data-instrument='lang-toggle'] button{font-size:12px!important}
}
.v4-board #lil-lens-chip{font:11.5px var(--v4-mono)!important;box-shadow:none!important}
.v4-board #lil-lens-circle{border:2px solid #a67b3b!important;background:var(--v4-parch)!important;box-shadow:none!important}

.shell-search-placeholder{color:#EFE8D6}.shell-map{background:linear-gradient(110deg,#e4dbc5 0%,#EFE8D6 50%,#e4dbc5 100%)}

/* S4-prime: register and flat reading plate. */
.v4-board .v4-column{padding-left:30px!important;padding-right:30px!important}
@media(min-width:720px){
 .v4-board .lil-record-card,.v4-empty-column{width:520px!important}
 .v4-map{right:546px}
}
.v4-record-body{font:400 16px/1.5 var(--v4-serif);hyphens:auto;padding:4px 0;max-width:65ch}
.v4-record-body p{margin:0;white-space:pre-line}
.v4-inline-ref{display:inline-flex;align-items:baseline;gap:5px;font:500 13px/1.2 var(--v4-sans);color:var(--v4-ink);background:#EFE8D6;border:1px solid var(--v4-rule);border-radius:2px;padding:2px 6px;vertical-align:baseline;text-decoration:none;text-indent:0}
.v4-inline-ref svg{align-self:center}.v4-inline-ref:hover{text-decoration:underline}
.v4-stamp>button[aria-pressed]{border:1px solid var(--v4-rule);padding:3px 6px;background:transparent;font:11.5px var(--v4-mono)}
.v4-register-search{position:absolute;left:28px;top:12px;width:340px;height:38px;padding:0 12px;background:#1B2B24;color:#EFE8D6;border:0;border-radius:2px;font:13px var(--v4-mono)}
.v4-register-search::placeholder{color:#efe8d6aa}
.v4-register-page{display:flex;flex-direction:column;padding:24px 26px 90px;overflow:hidden}
.v4-register-scroll{overflow:auto;min-height:0;flex:1}
.v4-register-scroll h1{font:600 34px var(--v4-serif);margin:0 0 16px}
.v4-community-row{display:flex;flex-wrap:wrap;gap:4px 16px;border-bottom:1px solid var(--v4-rule);padding-bottom:12px}
.v4-community-row button{background:transparent;border:0;border-bottom:1px solid transparent;padding:4px 0;color:var(--v4-muted);font:12px var(--v4-sans);cursor:pointer}
.v4-community-row button[aria-pressed='true']{color:var(--v4-ink);border-bottom-color:currentColor}
.v4-register-count{font:11.5px var(--v4-mono);margin:12px 0}
[data-view='stories-grid'].v4-register{columns:auto!important;display:block}
.v4-register-row{display:flex;align-items:baseline;gap:12px;padding:18px 0;border-top:1px solid var(--v4-rule);color:inherit;text-decoration:none}
.v4-register-row>svg{position:relative;top:3px;flex:none}
.v4-register-row:hover h2{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.v4-register-entry{flex:1;min-width:0}.v4-register-entry h2{font:600 22px/1.2 var(--v4-serif);margin:0 0 6px}
.v4-register-stamp{font:11.5px/1.5 var(--v4-mono);color:var(--v4-muted)}
.v4-register-entry p{font:16px/1.5 var(--v4-serif);max-width:65ch;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;margin:8px 0 0}
.v4-register-row figure{width:96px;padding:5px;margin:0;flex:none;align-self:center;background:#FCFDF9;border:1px solid var(--v4-rule);box-sizing:border-box}
.v4-register-row figure img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.v4-stories .v4-foot{height:70px}.v4-stories .v4-key button{min-height:44px}.v4-stories .v4-register{padding-bottom:86px}
.v4-place-picker{margin:8px 0;font:13px 'Instrument Sans',sans-serif}
.v4-place-picker button{background:transparent;border:0;text-decoration:underline;color:inherit;cursor:pointer;padding:6px;font:inherit}
.v4-place-picker>div{border:1px solid #C9BC9C;padding:8px;max-height:180px;overflow:auto;display:flex;flex-direction:column;align-items:stretch}
.v4-place-picker input{font:inherit;padding:8px}
@media(max-width:719px){
 .v4-register-search{left:12px;right:12px;top:8px;width:calc(100% - 24px)}
 .v4-register-page{padding:18px 14px 64px}
 .v4-register-row{gap:8px}.v4-register-row figure{width:96px}
 .v4-register-entry h2{font-size:22px}.v4-register-stamp{overflow-wrap:anywhere}
 .v4-stories .v4-foot{height:42px}.v4-stories .v4-register{padding-bottom:58px}
 .v4-board .v4-column{padding-left:20px!important;padding-right:20px!important}
 .v4-empty-column:has(.v4-record-missing){display:block;top:70px;left:12px;right:12px;bottom:auto;width:auto;border:0;background:#EFE8D6;padding:8px;z-index:14}
 .v4-empty-column:has(.v4-record-missing)>p:not(.v4-record-missing){display:none}
}

body:has(.v4-stories) .atlas-navlink[href='/']{color:#efe8d69e!important;border-bottom:0!important}
body:has(.v4-stories) .atlas-navlink[href='/stories']{color:var(--v4-parch)!important;border-bottom:1.5px solid #C58B37!important}

.v4-related-places{display:inline;line-height:1.6}.v4-related-places a{color:inherit;text-underline-offset:3px;margin-right:12px;font:13px var(--v4-sans)}
@media(max-width:719px){.v4-community-row{flex-wrap:nowrap;overflow-x:auto}.v4-community-row button{white-space:nowrap;flex:none;min-height:32px}}

.v4-cross-reference>b{margin-right:10px}
.v4-media-row .atlas-smallcaps{font:11px var(--v4-sans)!important;letter-spacing:.06em!important}
.v4-media-row>div{background:transparent!important;border:0!important;padding:0!important;margin:0!important}

.v4-record-body .v4-inline-ref{min-height:0!important;min-width:0!important;height:auto!important}
.v4-instruments [data-instrument='layers-box']>div{top:52px!important;right:0!important}

/* S4-prime dispatch: place labels share the 12 px medium plate. */
.v4-register-stamp,.v4-register-count{font:500 12px/1.5 var(--v4-sans);background:#EFE8D6;border-radius:2px;padding:2px 3px}
.v4-community-row button>span{font:500 12px/1.5 var(--v4-sans);background:transparent;border-radius:0;padding:0}
.v4-register-stamp,.v4-register-count{width:fit-content;max-width:100%;box-sizing:border-box}

.v4-community-row button>span{display:inline-block}

/* S5 content: the existing V4 page carries every editorial region. */
.v4-content{height:calc(100dvh - 64px);flex:none}
.v4-content-page{top:8px;bottom:56px;padding:26px;display:flex;flex-direction:column;overflow:hidden}
.v4-content-search .v4-content-page{top:64px}
.v4-content-scroll{overflow:auto;scrollbar-gutter:stable;min-height:0;flex:1;padding-right:4px;scrollbar-color:var(--v4-muted) var(--v4-parch)}
.v4-content article{width:100%;margin:0;min-width:0}
.v4-content-head h1{font:600 34px/1.15 var(--v4-serif);margin:0 0 22px}
.v4-content-head{margin-bottom:24px}
.v4-content-print{margin:0 0 24px;padding:10px;background:#FCFDF9;border:1px solid var(--v4-rule);width:100%;box-sizing:border-box}
.v4-content-print img{width:100%;height:clamp(180px,30vh,300px);object-fit:cover;display:block;filter:saturate(.5) sepia(.18)}
.v4-content-print figcaption{font:11.5px/1.5 var(--v4-mono);color:var(--v4-muted);padding-top:8px}
.v4-content-lede,.v4-content-body{max-width:65ch;font:400 16.5px/1.5 var(--v4-serif);hyphens:auto}
.v4-content-lede{margin:0}
.v4-content-body p,.v4-content-body li{font:400 16.5px/1.5 var(--v4-serif)!important;color:var(--v4-ink)!important}
.v4-content-body p+p{text-indent:1.2em}
.v4-content .v4-foot{position:static;height:auto;display:flex;justify-content:space-between;gap:18px;margin-top:30px;padding:14px 0 4px;font:11.5px/1.5 var(--v4-mono);background:var(--v4-parch)}
.v4-content .v4-foot>span:last-child{white-space:nowrap}
.v4-content-edge{position:absolute;bottom:8px;left:28px;right:28px;display:flex;justify-content:flex-end;gap:24px}
.v4-content-edge a{font:600 12px/1.5 var(--v4-sans);letter-spacing:.12em;text-transform:uppercase;color:#EFE8D6;text-decoration:none}
.v4-content-edge a:hover,.v4-content-edge a:focus-visible{text-decoration:underline}
.v4-content-contact{display:inline-flex;margin-top:18px;padding:12px 18px;background:#C58B37;color:var(--v4-ink);font:600 12px/1.5 var(--v4-sans);text-transform:uppercase;letter-spacing:.08em;text-decoration:none}
.v4-content-rule,.v4-content-label{font:600 12px/1.5 var(--v4-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--v4-muted);background:var(--v4-parch)}
.v4-content-rule{padding:14px 0 8px;margin-top:18px;border-top:1px solid var(--v4-rule)}
.v4-content-label{margin-bottom:8px}
.v4-content .v4-register-row{background:var(--v4-parch)}
.v4-content .v4-register-row:focus-visible{outline:2px solid var(--v4-ink);outline-offset:-2px}
.v4-content .v4-register-row:focus-visible h2{text-decoration:underline}
.v4-content .v4-register-stamp,.v4-content .v4-register-count{font:11.5px/1.5 var(--v4-mono);padding:0;border-radius:0}
.v4-content-read{font:600 12px/1.5 var(--v4-sans);white-space:nowrap}
.v4-content .v4-community-row{scrollbar-gutter:stable;scrollbar-color:var(--v4-muted) var(--v4-parch)}
.v4-content-table-scroll{max-height:420px;overflow-y:scroll;scrollbar-gutter:stable;scrollbar-color:var(--v4-muted) var(--v4-parch)}
.v4-content-table-scroll::-webkit-scrollbar{width:8px}.v4-content-table-scroll::-webkit-scrollbar-thumb{background:var(--v4-muted)}
.v4-content-table{width:100%;border-collapse:collapse;table-layout:fixed;background:var(--v4-parch)}
.v4-content-table th{font:600 12px var(--v4-sans);text-transform:uppercase;text-align:left;padding:10px 0;border-bottom:1px solid var(--v4-rule)}
.v4-content-table th:last-child,.v4-content-table td:last-child{width:64px;text-align:right;font:11.5px var(--v4-mono);padding-right:8px}
.v4-content-table td{border-bottom:1px solid var(--v4-rule);vertical-align:middle}
.v4-content-table .v4-register-row{border:0;padding-right:14px}
.v4-content-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:18px 0;margin:0;border-top:1px solid var(--v4-rule);border-bottom:1px solid var(--v4-rule);background:var(--v4-parch)}
.v4-content-facts dt{font:600 12px var(--v4-sans);text-transform:uppercase;margin-bottom:8px;color:var(--v4-muted)}
.v4-content-facts dd{font:16.5px/1.5 var(--v4-serif);margin:0;overflow-wrap:anywhere}
.v4-accuracy{margin:24px 0 0;max-width:65ch;background:var(--v4-parch)}
.v4-accuracy figcaption{font:600 12px var(--v4-sans);text-transform:uppercase;padding:14px 0;border-top:1px solid var(--v4-rule)}
.v4-accuracy-row{display:grid;grid-template-columns:8px 64px 1fr;gap:14px;align-items:baseline;padding:16px 0;border-top:1px solid var(--v4-rule)}
.v4-accuracy-dot{width:8px;height:8px;border-radius:50%}
.v4-accuracy-distance{font:11.5px var(--v4-mono)}
.v4-accuracy strong{font:600 22px/1.2 var(--v4-serif)}
.v4-accuracy p{font:16.5px/1.5 var(--v4-serif);margin:6px 0 0}
.v4-glossary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--v4-parch)}
.v4-glossary h2{font:600 22px/1.2 var(--v4-serif);margin:0;padding:14px 18px 14px 0}
.v4-glossary-cell{min-width:0;padding:18px 18px 18px 0;border-top:1px solid var(--v4-rule)}
.v4-glossary-cell h3{font:600 22px/1.2 var(--v4-serif);margin:0 0 8px;overflow-wrap:anywhere}
.v4-glossary-cell p{font:16.5px/1.5 var(--v4-serif);margin:0;hyphens:auto}
h1,h2,[data-record-title],.v4-register-entry h2{text-wrap:balance;hyphens:manual}
.v4-record-body,.v4-content-body,.v4-register-entry p,.v4-glossary-cell p{text-wrap:pretty;hyphenate-limit-chars:7 3 3;-webkit-hyphenate-limit-before:3;-webkit-hyphenate-limit-after:3;hanging-punctuation:first}
li::marker{font:600 .9em var(--v4-sans);font-variant-numeric:tabular-nums}
/* Help sheet's existing title, figures and prose share the same reading edge. */
[data-about-drawer] figure img{max-width:none!important;margin:0!important;width:100%!important;box-shadow:none!important}
[data-about-drawer] figcaption{text-align:left!important;font-size:12px!important;font-style:normal!important}
@media(max-width:719px){
 .v4-content{height:calc(100dvh - 52px)}
 .v4-content-page{top:8px;bottom:56px;padding:18px 14px}
 .v4-content-search .v4-content-page{top:56px}
 .v4-content-head h1{font-size:28px;margin-bottom:18px}
 .v4-content-print{padding:6px}
 .v4-content-print img{height:180px}
 .v4-content .v4-foot{gap:10px}
 .v4-content-edge{left:12px;right:12px;bottom:7px}
 .v4-content-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
 .v4-content .v4-community-row{flex-wrap:wrap;overflow:visible}
 .v4-glossary h2{font-size:22px;padding-right:8px}
 .v4-glossary-cell{padding-right:8px}
 .v4-glossary-cell h3{font-size:22px}
 .v4-glossary-cell p{font-size:16.5px}
 .v4-accuracy-row{grid-template-columns:8px 48px 1fr;gap:10px}
}

.v4-glossary-language{grid-column:1 / -1;border-top:1px solid var(--v4-rule)}
.v4-content-edge{align-items:center;min-height:44px}

body:has(.v4-content) .atlas-navlink[href='/']{color:#efe8d69e!important;border-bottom-color:transparent!important}
body:has([data-content-page='05']) .atlas-navlink[href='/about'],
body:has([data-content-page='06']) .atlas-navlink[href='/mapping-and-storytelling'],
body:has([data-content-page='06b']) .atlas-navlink[href='/communities'],
body:has([data-content-page='07']) .atlas-navlink[href='/communities'],
body:has([data-content-page='08']) .atlas-navlink[href='/glossary'],
body:has([data-content-page='09']) .atlas-navlink[href='/workshops']{color:var(--v4-parch)!important;border-bottom:1.5px solid #C58B37!important}

/* S6: the shared phone page in the board's hand — gpt-6-astra (medium). */
body:has(.lil-collector){background:#F4F7F1;overflow:auto}
body:has(.lil-collector) #app>div{background:#F4F7F1!important}
body:has(.lil-collector) #app>div:before{display:none}
.lil-collector{background:var(--v4-field);border:1px solid #142019;margin:20px auto!important;padding:7px;box-sizing:border-box;border-radius:22px;box-shadow:0 6px 18px #18140a29}
.lil-collector .lil-phone-page{min-height:0!important;height:calc(100dvh - 56px);max-height:844px;background:var(--v4-field)!important;border-radius:16px}
.lil-collector .lil-phone-page>div:first-child{background:var(--v4-field)!important;padding:8px 12px!important;min-height:60px;box-sizing:border-box}
.lil-collector .lil-phone-page>div:first-child button{height:44px;min-height:44px!important;min-width:44px}
.lil-collector .lil-phone-page>div:first-child .atlas-smallcaps{display:none}
.lil-collector .v4-page{position:relative!important;inset:auto!important;min-height:0;margin:0 6px;box-shadow:none;flex:1;color:var(--v4-ink)}
.lil-collector .lil-collector-page{scrollbar-gutter:stable;padding:16px!important}
.lil-collector .lil-collector-page>div,.lil-collector .lil-collector-page>section{border-radius:0!important;box-shadow:none!important}
.lil-collector .lil-collector-page>div[style*='background']{background:transparent!important;border:0!important;border-bottom:1px solid var(--v4-rule)!important}
.lil-collector input:not([type=file]),.lil-collector textarea,.lil-collector select{background:#efe8d6!important;border-radius:0!important;border:0!important;border-bottom:1px solid var(--v4-rule)!important;font-size:16px!important;appearance:none}
.lil-collector button{border-radius:0!important}
.lil-collector .atlas-smallcaps{font:11.5px var(--v4-mono)!important}
.lil-collector-nav{flex-shrink:0;padding-top:6px}
.lil-collector-nav button{height:52px!important;min-height:52px!important;font:600 11px var(--v4-sans);text-transform:uppercase;letter-spacing:.05em;background:transparent!important}
.lil-collector-nav button[aria-current=page]{color:var(--v4-parch)!important;border-bottom:2px solid #C58B37!important}
.lil-draft-banner{padding:0 0 12px;margin-bottom:14px;border-bottom:1px solid var(--v4-rule);display:grid;gap:5px}
.lil-draft-banner strong{font:600 22px var(--v4-serif)}
.lil-collector-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-bottom:18px}
.lil-collector-categories .lil-category-chip{height:56px;padding:6px 4px;display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0;font-size:11px}
.lil-collector-categories .lil-category-chip span{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lil-collector-scope{grid-template-columns:repeat(3,minmax(0,1fr));gap:0!important}
.lil-collector-scope button{display:block!important;text-align:center!important;padding:7px 3px!important;min-height:50px!important;background:transparent!important}
.lil-collector-scope button>svg,.lil-collector-scope button span span{display:none}
.lil-collector-scope button[aria-pressed=true]{box-shadow:inset 0 -3px var(--v4-ink)}
.lil-setting-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid var(--v4-rule);font:14px var(--v4-sans)}
.lil-setting-row>div{display:flex}
.lil-setting-row button{background:transparent;border:1px solid var(--v4-rule);height:44px;min-width:42px;color:var(--v4-ink)}
.lil-setting-row button[aria-pressed=true]{box-shadow:inset 0 -3px var(--v4-ink);font-weight:700}
.lil-storage-split{padding:16px 0;border-bottom:1px solid var(--v4-rule);margin-bottom:14px}
.lil-storage-split>div{display:flex;justify-content:space-between;font:11.5px/2 var(--v4-mono)}
.lil-collector [data-testid=queue-row]{background:transparent!important;border:0!important;border-bottom:1px solid var(--v4-rule)!important;padding:14px 0!important;border-radius:0!important}
.lil-upload-progress{width:100%;height:3px;accent-color:var(--v4-field);margin-top:10px}
.lil-collector-map-page{border:1px solid var(--v4-rule);overflow:hidden}
.lil-collector-map-page .leaflet-tile-pane{filter:saturate(.5) sepia(.28) contrast(1.04) brightness(1.12)}
.lil-collector-map-page [aria-label='Base map']{top:10px!important;left:10px!important;height:44px;border-radius:0!important}
.lil-collector-map-page [aria-label='Base map'] button{min-height:44px}
.lil-collector-map-page [aria-label='Base map'] button[aria-pressed=true]{background:var(--v4-parch)!important;color:var(--v4-ink)!important;box-shadow:inset 0 -3px var(--v4-ink)}
.lil-gps-reading{position:absolute;right:10px;top:10px;height:44px;display:flex;align-items:center;padding:0 9px;background:var(--v4-parch);border:1px solid var(--v4-rule);z-index:1000;font:11.5px var(--v4-mono)}
.lil-collector-key{position:absolute;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(8,1fr);height:42px;align-items:center;background:var(--v4-parch);border-top:1px solid var(--v4-rule);z-index:1000}
.lil-collector-key>span{display:flex;justify-content:center}
.lil-collector [data-kind=photo] [data-testid=media-thumb]{background:#FCFDF9!important;border:1px solid var(--v4-rule)!important;border-radius:0!important;padding:10px!important}
.lil-collector [data-kind=photo] [data-testid=media-thumb]>div:first-child{display:block!important}
.lil-collector [data-kind=photo] [data-testid=media-thumb]>div:first-child>div:first-child{width:100%!important;height:auto!important;aspect-ratio:4/3;border-radius:0!important;margin-bottom:8px}
@media(max-width:719px){
 .lil-collector{width:100%!important;margin:0 auto!important;padding:0;border:0;border-radius:0;box-shadow:none}
 .lil-collector .lil-phone-page{height:100dvh;max-height:none;border-radius:0;width:100%!important}
}
.lil-collector-edge{height:64px;min-height:64px;flex-shrink:0;display:flex;align-items:center;gap:7px;padding:0 12px;color:var(--v4-parch)}
.lil-collector-wordmark{font:600 17px var(--v4-serif);color:inherit;text-decoration:none;white-space:nowrap}
.lil-collector-step{flex:1;font:600 11px/1.25 var(--v4-sans);text-transform:uppercase;letter-spacing:.04em}
.lil-collector-edge>button{height:44px!important;min-height:44px!important;min-width:36px;background:transparent!important;border:0!important;color:var(--v4-parch)!important;padding:0 4px!important;font:12px var(--v4-mono)}
.lil-collector-edge>button:last-child{min-width:32px}
.lil-collector .lil-collector-page>button,.lil-collector .lil-collector-page>div>div[style*='text-align: center']{background:transparent!important;border:0!important;border-bottom:1px solid var(--v4-rule)!important;border-radius:0!important}
.lil-collector-categories .lil-category-chip{height:64px}
.lil-collector-categories .lil-category-chip small{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.75}
.lil-collector-categories .lil-category-chip>svg,.lil-collector-key svg,.lil-collector-key img{border:1.5px solid var(--v4-ink);border-radius:50%;padding:3px;box-sizing:border-box;background:#d6c69d}
.lil-collector-categories .lil-category-chip>svg{width:24px;height:24px}
.lil-collector-scope button{align-self:stretch;vertical-align:top}
.lil-collector-scope button span span{display:block;font-size:11px!important;line-height:1.3;margin-top:4px}
.lil-collector-symbol{display:flex;width:100%;height:100%;align-items:center;justify-content:center;border:1.5px solid #18231E;border-radius:50%;box-sizing:border-box}
.lil-collector-symbol svg{filter:none!important}
.lil-collector-map-page>div[style*='bottom: 52px']>div:first-child{background:var(--v4-parch)!important;color:var(--v4-ink)!important;border:1px solid var(--v4-rule)!important;border-radius:0!important}
.lil-collector .lil-collector-page [style*='0.625rem'],.lil-collector .lil-collector-page [style*='0.5625rem'],.lil-collector .lil-collector-page [style*='0.5rem']{font-size:11px!important}
.lil-collector .lil-collector-page button.lil-collector-primary{background:#C58B37!important;color:#18231E!important;border:1px solid transparent!important}
.lil-collector-categories .lil-category-chip{overflow:visible;line-height:1.15;padding:5px 3px;gap:3px}
.lil-collector-categories .lil-category-chip>span{white-space:normal;line-height:1.15;max-height:none;flex-shrink:0}
.lil-collector-categories .lil-category-chip small{line-height:1.15;white-space:nowrap}
.lil-collector-edge>*{box-sizing:border-box;height:44px;display:flex;align-items:center}
.lil-collector [data-testid=media-thumb] button{min-height:44px}
.lil-collector [data-kind=audio] [data-testid=media-thumb],.lil-collector [data-kind=video] [data-testid=media-thumb]{background:transparent!important;border:0!important;border-bottom:1px solid var(--v4-rule)!important;border-radius:0!important;padding:10px 0!important}
.lil-collector-map-page [style*='bottom: 220px']{border-radius:0!important;background:var(--v4-parch)!important;font-size:12px}

/* S7 review desk — gpt-6-astra low. Existing V4 board/page, admin regions only. */
.lil-admin{height:100dvh;display:flex;flex-direction:column;font-family:var(--v4-sans);overflow:hidden}
.lil-admin .admin-edge{flex-shrink:0;display:flex;align-items:center}
.lil-admin .lil-wordmark{text-decoration:none}
.lil-admin .admin-caption{font:11.5px var(--v4-mono);text-transform:none;letter-spacing:.14em;color:var(--v4-parch)}
.lil-admin .admin-account{margin-left:auto;gap:20px;color:var(--v4-parch);font:12px var(--v4-sans)}
.lil-admin .admin-account button{background:transparent;border:0;color:inherit;min-height:40px;cursor:pointer}
.lil-admin .admin-account summary{cursor:pointer;list-style:none}
.lil-admin .admin-account-menu{position:absolute;right:28px;top:54px;background:var(--v4-field);border:1px solid #efe8d655;padding:0 14px;z-index:40}
.admin-layout{display:grid;grid-template-columns:180px minmax(0,1fr);min-height:0;flex:1}
.lil-admin aside{padding:24px 16px;overflow-y:auto}
.lil-admin aside a{display:flex;align-items:center;height:44px;padding:0 12px;text-decoration:none;text-transform:uppercase;font:600 12px var(--v4-sans);letter-spacing:.12em;color:#efe8d69e;border-left:2px solid transparent}
.lil-admin aside a[aria-current=page]{color:var(--v4-parch);border-left-color:#C58B37}
.lil-admin .v4-page{position:relative;inset:auto;margin:0 28px 28px 0;min-width:0;overflow-y:auto;scrollbar-gutter:stable;padding:24px;box-sizing:border-box}
.lil-admin h1{font:600 34px/1.15 var(--v4-serif);margin:0 0 22px;color:var(--v4-ink)}
.lil-admin .admin-region{background:transparent;border:0;border-radius:0;min-width:0;box-shadow:none}
.lil-admin .admin-region>div{background:transparent}
.lil-admin section+section{border-top:1px solid var(--v4-rule)}
.admin-counters{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--v4-rule);border-bottom:1px solid var(--v4-rule);margin-bottom:24px}
.admin-counters>div{padding:18px 16px;border-right:1px solid var(--v4-rule)}
.admin-counters>div:last-child{border-right:0}
.admin-counters strong{display:block;font:600 34px var(--v4-serif);margin-bottom:6px}
.admin-board-registers{display:grid;grid-template-columns:1.4fr 1fr}
.admin-board-registers>section+section{border-top:0;border-left:1px solid var(--v4-rule)}
.admin-activity{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid var(--v4-rule);font:14px/1.5 var(--v4-sans)}
.admin-activity time{white-space:nowrap;font:11.5px var(--v4-mono);color:var(--v4-muted)}
.admin-review-desk{display:grid;grid-template-columns:minmax(0,1fr) 440px;border-top:1px solid var(--v4-rule);height:calc(100dvh - 194px);min-height:440px}
.admin-queue{overflow:auto;scrollbar-gutter:stable;padding-right:18px}
.admin-review-filters{display:flex;padding:16px 0 0;gap:0}
.admin-review-filters button{min-height:40px;padding:0 12px;border:0;border-bottom:2px solid transparent;background:transparent;font:600 12px var(--v4-sans);color:var(--v4-muted);cursor:pointer}
.admin-review-filters button[aria-pressed=true]{border-bottom-color:var(--v4-ink);color:var(--v4-ink)}
.admin-register-count{font:11.5px var(--v4-mono);color:var(--v4-muted);margin:12px 0}
.lil-admin table{width:100%;border-collapse:collapse;table-layout:auto}
.lil-admin th{font:500 11.5px var(--v4-mono)!important;letter-spacing:0!important;text-align:left;color:var(--v4-muted)!important}
.lil-admin td,.lil-admin th{padding:12px 8px!important;border-bottom:1px solid var(--v4-rule)!important;overflow-wrap:anywhere}
.admin-row-context{display:block;font:11.5px/1.5 var(--v4-sans);color:var(--v4-muted);margin-top:5px}
.lil-admin .review-queue-row td{font-size:13px!important}
.lil-admin .review-queue-row td:first-child{width:44%}
.lil-admin .admin-record-column{border-left:1px solid var(--v4-rule);padding:0 0 24px 14px;background:var(--v4-parch);scrollbar-width:auto}
.lil-admin .admin-record-column .v4-record-head{font-size:22px;margin:14px 0}
.lil-admin .admin-record-column .v4-record-head svg{flex-shrink:0}
.lil-admin input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=color]),.lil-admin textarea,.lil-admin select{background:var(--v4-parch)!important;color:var(--v4-ink)!important;border-radius:0!important;font-family:var(--v4-sans)!important;border-color:var(--v4-rule)!important;min-height:40px}
.lil-admin button{font-family:var(--v4-sans)!important;border-radius:0!important;box-shadow:none!important}
.lil-admin .admin-primary,.lil-admin [data-testid=commit-import]{min-height:40px;padding:8px 16px;background:#C58B37!important;color:var(--v4-ink)!important;border:1px solid #a67b3b!important;font-weight:600;cursor:pointer}
.lil-admin input[type=checkbox],.lil-admin input[type=radio]{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;min-height:18px;margin:0;vertical-align:middle;border:1px solid var(--v4-muted);background:var(--v4-parch);display:inline-grid;place-content:center;cursor:pointer}
.lil-admin input[type=radio]{border-radius:50%}
.lil-admin input[type=checkbox]:checked:after{content:'✓';font:14px var(--v4-sans);color:var(--v4-ink)}
.lil-admin input[type=radio]:checked:after{content:'';width:8px;height:8px;border-radius:50%;background:var(--v4-ink)}
.lil-admin :focus-visible{outline:2px solid #a67b3b;outline-offset:3px}
.lil-admin [data-snap-bar]{background:var(--v4-parch);border:1px solid var(--v4-rule);border-radius:0;box-shadow:none;flex-wrap:wrap}
.lil-admin .vertex-editor .leaflet-container{border-radius:0!important}
.admin-accounts{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:24px}
.admin-accounts>section+section{border-top:0!important;border-left:1px solid var(--v4-rule);padding-left:12px}
.lil-admin [data-testid=markdown-editor]{border-radius:0!important;background:var(--v4-parch)!important}
.lil-admin [data-testid=markdown-editor]>div:nth-child(2){height:320px;min-height:0!important}
.lil-admin [data-testid=markdown-editor] textarea,.lil-admin [data-testid=markdown-preview]{height:320px!important;max-height:320px!important;min-height:0!important;resize:none!important;box-sizing:border-box;overflow-y:auto;background:var(--v4-parch)!important}
.lil-admin [data-testid=markdown-editor] textarea{font-family:var(--v4-mono)!important}
.lil-admin [data-testid=admin-import-export-embedded] section{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.admin-export{max-width:760px}
.admin-export-row{display:grid;grid-template-columns:18px 110px 1fr;gap:18px;align-items:center;min-height:76px;border-bottom:1px solid var(--v4-rule);cursor:pointer;font:14px var(--v4-sans)}
.admin-export-row strong{font:600 22px var(--v4-serif)}
.admin-export>.admin-primary{margin-top:24px}
.admin-prior-imports{margin-top:28px;padding-top:20px;border-top:1px solid var(--v4-rule)!important}
@media(max-width:1100px){.admin-review-desk{grid-template-columns:minmax(0,1fr) minmax(330px,1fr)}.admin-layout{grid-template-columns:150px minmax(0,1fr)}.admin-accounts{grid-template-columns:1fr}.admin-accounts>section+section{border-left:0;padding-left:0;border-top:1px solid var(--v4-rule)!important}}
@media(max-width:860px){.lil-admin .admin-edge{gap:12px!important}.lil-admin .admin-caption{display:flex!important;font-size:11.5px;letter-spacing:0}.admin-layout{display:flex;flex-direction:column}.lil-admin aside{display:flex;overflow-x:auto;flex-shrink:0;padding:8px;gap:12px}.lil-admin aside a{white-space:nowrap;padding:0 8px;height:44px;border-left:0;border-bottom:2px solid transparent}.lil-admin aside a[aria-current=page]{border-bottom-color:#C58B37}.lil-admin .v4-page{margin:0 8px 8px;padding:16px;flex:1}.admin-board-registers{grid-template-columns:1fr}.admin-board-registers>section+section{border-left:0;border-top:1px solid var(--v4-rule)}.admin-counters>div{padding:12px 8px}.admin-counters strong{font-size:28px}.admin-review-desk{display:block;height:auto;min-height:0}.admin-queue{max-height:360px;padding:0}.lil-admin .admin-record-column{border-left:0;border-top:1px solid var(--v4-rule);padding:0;overflow:visible}.admin-review-filters button{flex:1;padding:0 8px}.admin-accounts{display:block}.admin-export-row{grid-template-columns:18px 85px 1fr;gap:12px}.lil-admin .admin-account{gap:8px}.lil-admin [data-testid=markdown-editor]>div:nth-child(2){grid-template-columns:1fr!important;height:auto}.lil-admin #admin-main[data-admin-screen=tags]>div{grid-template-columns:1fr!important}}

/* S7 reading corrections — gpt-6-astra low. */
.lil-admin .admin-symbol{display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--v4-ink);border-radius:50%;box-sizing:border-box;flex-shrink:0}
.lil-admin button:not(.admin-primary):not([data-testid=commit-import]){background:transparent!important}
.lil-admin [data-snap-bar] button[aria-pressed=true]{color:var(--v4-ink);border-bottom:2px solid var(--v4-ink);font-weight:600}
.lil-admin [data-snap-bar] button{border-radius:0;min-height:40px;color:var(--v4-muted)}
.lil-admin [data-snap-bar] .snap-help{font:11.5px var(--v4-mono);color:var(--v4-muted)}
.lil-admin th{white-space:nowrap}
.lil-admin td button{white-space:nowrap}
.admin-tags{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.admin-tags>section:first-child{overflow:auto}
.admin-tags>section:first-child table{min-width:740px}
.lil-admin [data-testid=markdown-editor] .atlas-smallcaps{font-size:11.5px!important}
@media(max-width:860px){.lil-admin .admin-edge{gap:8px!important}.lil-admin .admin-account{gap:3px}.lil-admin .admin-account button{font-size:11.5px;padding:0 3px}.lil-admin .admin-caption{height:44px!important}.lil-admin [data-admin-screen=categories] .admin-region{overflow-x:auto}.lil-admin [data-admin-screen=categories] table{min-width:640px}.lil-admin .admin-accounts>section:first-child{overflow:auto}.lil-admin .admin-accounts table{min-width:560px}}
/* Native phone register and export-row inspection — gpt-6-astra low. */
@media(max-width:860px){
 .lil-admin .admin-queue table{min-width:540px}
 .lil-admin .review-queue-row{display:table-row!important}
 .lil-admin .review-queue-row td{display:table-cell!important;white-space:normal}
 .lil-admin .admin-export-row{grid-template-columns:18px minmax(0,1fr);gap:6px 12px;padding:14px 0;box-sizing:border-box}
 .lil-admin .admin-export-row input{grid-row:1 / 3}
 .lil-admin .admin-export-row>span{grid-column:2}
 .lil-admin .admin-export-row strong{line-height:1.2}
}
/* Map sources (claude-opus-5-5): one line at the map floor, left of the scale plate; type = the geometry editor's provenance line. The plate reserve (≤ 180 px wide) is kept clear; the button pads to a 44 px hit without growing the visible line. */
.v4-credits{position:absolute;left:8px;bottom:0;max-width:calc(100% - 208px);z-index:12;display:block;padding:14px 0 10px;background:none;border:0;cursor:pointer;text-align:left}
.v4-credits>span{display:block;white-space:normal;overflow-wrap:anywhere;padding:3px 6px;background:rgba(239,232,214,.88);font:11px/1.2 'IBM Plex Mono',ui-monospace,monospace;color:rgba(24,35,30,.52)}
.v4-credits:focus-visible>span{outline:2px solid var(--v4-ink);outline-offset:1px}
.v4-credits-card{position:absolute;left:8px;bottom:44px;z-index:13;width:min(340px,calc(100% - 16px));background:var(--v4-parch);border:1px solid var(--v4-ink);padding:10px 14px 8px;font:11.5px/1.45 var(--v4-mono);color:var(--v4-ink);animation:v4-record-rise var(--move) var(--ease-out) both}
.v4-credits-card.is-leaving{animation:v4-credits-out var(--exit) var(--ease) both}
.v4-credits-card p{margin:0 0 6px}.v4-credits-card a{color:inherit}
.v4-credits-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;color:var(--v4-muted);text-transform:uppercase}
.v4-credits-head button{font:22px/1 var(--v4-serif);width:32px;height:32px;margin:-8px -10px -8px 0;background:none;border:0;color:var(--v4-ink);cursor:pointer}
@keyframes v4-credits-out{to{opacity:0;transform:translateY(18px)}}
html[data-lod='0'] .v4-credits-card{animation:v4-crossfade var(--crossfade) linear both}
html[data-lod='0'] .v4-credits-card.is-leaving{animation:v4-credits-fade var(--crossfade) linear both}
@keyframes v4-credits-fade{to{opacity:0}}
/* In-view register (chair ruling 2026-09-29, N7): the Stories register rows in the empty desktop column */
@media(min-width:720px){
 .v4-empty-column{display:flex;flex-direction:column}
 .v4-inview{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--v4-rule) transparent;color:var(--v4-ink)}
 .v4-inview>p{color:var(--v4-muted)}
 .v4-inview .v4-register-row{animation:v4-inview-in var(--move) var(--ease) both}
 .v4-inview-first .v4-register-row:nth-child(2){animation-delay:var(--stagger)}
 .v4-inview-first .v4-register-row:nth-child(3){animation-delay:calc(2*var(--stagger))}
 .v4-inview-first .v4-register-row:nth-child(n+4){animation-delay:calc(3*var(--stagger))}
 .v4-inview .v4-register-row[data-leaving]{opacity:0;transition:opacity var(--exit) var(--ease);pointer-events:none}
 .v4-inview .v4-register-row:focus-visible h2{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
 .leaflet-marker-icon>*{transition:opacity var(--move) var(--ease)}
 [data-dimming] .leaflet-marker-icon:not([data-highlight])>*{opacity:.35}
}
@keyframes v4-inview-in{from{opacity:0}}
@media(prefers-reduced-motion:reduce){.v4-inview .v4-register-row{animation-duration:140ms;animation-delay:0ms!important}}
/* programme 10: the layers card leaves over the exit; the about drawer is a bottom sheet, up from and down to the bottom edge */
.v4-layers-card.is-closing{animation:v4-layers-out var(--exit) var(--ease) forwards}
@keyframes v4-layers-out{to{opacity:0;transform:translateY(6px)}}
@keyframes v4-sheet-up{from{transform:translateY(100%)}to{transform:none}}
@keyframes v4-sheet-down{from{transform:none}to{transform:translateY(100%)}}
html[data-lod='0'] .v4-layers-card.is-closing{animation:v4-credits-fade var(--crossfade) linear forwards}
html[data-lod='0'] .v4-about-sheet{animation:atlas-fade var(--crossfade) linear!important}
html[data-lod='0'] .v4-about-sheet[data-about-drawer=closing]{animation:v4-credits-fade var(--crossfade) linear forwards!important}

/* lil.ui.desk (S1 pins): pseudo-class states of the desk primitives, keyed on their data attributes */
[data-link-row],[data-text-link]{outline:1px solid transparent;outline-offset:0;transition:outline-color var(--feedback) linear,background-color var(--feedback) linear}
[data-link-row]:hover,[data-text-link]:hover{outline:1px solid rgba(24,35,30,.35);background:rgba(24,35,30,.06)}
[data-link-row]:active,[data-text-link]:active{background:rgba(24,35,30,.10)}
[data-link-row]:focus-visible,[data-text-link]:focus-visible,[data-well]:focus{outline:2px solid #18231E;outline-offset:0}
html:not([data-lod="0"]) [data-brass]:active>.lil-brass-face{background:linear-gradient(0deg,#D9A552 0%,#C58B37 55%,#9C6B25 100%)}
html:not([data-lod="0"]) [data-brass]:active .lil-brass-stop-0{stop-color:#9C6B25}
html:not([data-lod="0"]) [data-brass]:active .lil-brass-stop-1{stop-color:#D9A552}
[data-brass]>*{transition:transform var(--feedback) linear}
/* Atlas (S4): record marks on the plate — a 24 px disc and a small-caps label, no chip */
.leaflet-marker-icon.atlas-mark-icon{background:none;border:0;box-shadow:none}
.atlas-mark{position:relative;display:block;width:24px;height:24px}
.atlas-mark-label{position:absolute;left:30px;top:50%;transform:translateY(-50%);white-space:nowrap;font:400 12px/1 var(--type-text);font-variant:small-caps;letter-spacing:.04em;color:#18231E;paint-order:stroke;-webkit-text-stroke:0;text-shadow:0 0 2px #EFE8D6,0 0 2px #EFE8D6}
[data-plate-map].leaflet-container{background:transparent;font:inherit}
@keyframes atlas-turn{from{opacity:0}to{opacity:1}}
/* Atlas print (S4): the current plate as one page — title, plate, key, attribution; no leather, no brass, no verso */
@media print{
  @page{margin:10mm}
  body:has([data-atlas="book"]){background:#fff}
  body:has([data-atlas="book"]) [data-board]{background:none!important;height:auto!important;min-height:0!important;overflow:visible!important}
  body:has([data-atlas="book"]) :is([data-fillet],[data-brass],[data-atlas="verso"],[data-atlas="gutter"],[data-atlas="slip"],[data-atlas="index-sheet"],[data-atlas-tab],[data-inset-leader]){display:none!important}
  [data-atlas="book"]{position:static!important;display:block!important}
  [data-atlas="book"] *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  :is([data-atlas="recto"],[data-atlas="plate-sheet"]){position:static!important;box-shadow:none!important;border:0!important;background:none!important;padding:0!important;height:auto!important;overflow:visible!important}
  [data-plate-slot]{flex:none!important;min-height:0!important}
  [data-atlas-turn]{animation:none!important}
}

/* The desk on / (S3 pins): the board fills the viewport; the chart is inset 24 px;
   slips lie on the chart, brass crosses its edges. Four type values per sheet (D10). */
body:has([data-desk]){overflow:hidden}
[data-desk]{height:100dvh;overflow:hidden}
[data-desk] .lil-desk-map{background:transparent}
[data-desk] .lil-desk-top{position:absolute;top:12px;left:12px;width:380px;z-index:20;box-sizing:border-box;padding:16px;display:grid;gap:12px;max-height:calc(100% - 24px);overflow-y:auto;font:400 13px/1.5 var(--type-text)}
.lil-desk-top-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.lil-desk-wordmark{margin:0;font:400 26px/1.15 var(--type-display);color:#18231E}
.lil-desk-meta{display:flex;justify-content:space-between;align-items:baseline;gap:12px;color:#5C5851}
.lil-desk-meta [data-text-link]{padding:2px 4px;margin:-2px -4px}
[data-desk] .lil-desk-top [data-primary]{justify-self:start}
.lil-desk-results{display:grid;gap:28px;padding:4px 0}
.lil-desk-group{display:grid;gap:6px;justify-items:start}
.lil-desk-results button,.lil-desk-results p{font:400 13px/1.4 var(--type-text);color:#18231E;margin:0}
.lil-desk-results [data-link-row]{width:100%;min-height:32px;background:none;border:0;text-align:left;cursor:pointer;padding:4px 6px}
.lil-desk-quiet{color:#5C5851;margin-left:auto}
.lil-desk-chips{display:flex;flex-wrap:wrap;gap:6px}
.lil-desk-chips [data-link-row]{width:auto}
.lil-desk-chips [aria-pressed=true]{background:rgba(24,35,30,.10)}
.lil-desk-chips .v4-estate-ring{display:inline-block;width:10px;height:10px;border-radius:50%;border:2px solid;box-sizing:border-box}
[data-desk] .lil-desk-keyslip{position:absolute;left:12px;bottom:12px;z-index:20;padding:10px 12px;font:400 17px/1.3 var(--type-text)}
.lil-desk-key{display:grid;gap:6px}
.lil-desk-key [data-link-row]{display:flex;align-items:center;gap:10px;background:none;border:0;cursor:pointer;min-height:36px;padding:4px 8px;font:inherit;color:#18231E;text-align:left;transition:opacity var(--feedback) linear,background-color var(--feedback) linear,outline-color var(--feedback) linear}
[data-desk] .lil-desk-record{position:absolute;top:12px;right:12px;bottom:12px;width:min(420px,calc(100% - 24px));z-index:25;display:flex;flex-direction:column;box-sizing:border-box;padding:40px 24px 16px;font:400 17px/1.5 var(--type-text)}
.lil-desk-record-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:10px}
.lil-desk-record-bar .lil-desk-close{margin-left:auto;background:none;border:0;cursor:pointer;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;margin-right:-12px}
.lil-desk-label-link,.lil-desk-label{font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#5C5851;background:none;border:0;padding:0}
.lil-desk-label-link{cursor:pointer;padding:4px 6px}
.lil-desk-label{display:inline-flex;align-items:center;gap:6px}
[data-desk] .lil-desk-record-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:12px;padding:0 0 12px}
[data-desk] .lil-desk-record-scroll>*{order:0}
.lil-desk-record-cats{display:flex;flex-wrap:wrap;gap:12px}
[data-desk] .lil-desk-record .v4-record-head{outline:none}
[data-desk] .lil-desk-record h2[data-record-title]{margin:0;font:400 26px/1.2 var(--type-display);color:#18231E}
.lil-desk-reading{font:400 12px/1.5 var(--type-mono);color:#5C5851}
.lil-desk-by{margin:0;font:italic 400 17px/1.5 var(--type-text);color:#18231E}
[data-desk] .lil-desk-record .v4-record-body p{margin:0 0 12px;font:400 17px/1.5 var(--type-text)}
[data-desk] .lil-desk-record .v4-print{margin:0}
[data-desk] .lil-desk-record .v4-print img{display:block;width:100%;height:auto;border:0;box-shadow:none}
[data-desk] .lil-desk-record .v4-print figcaption,[data-desk] .lil-desk-record .v4-print figcaption *{font:600 11px/1.4 'Instrument Sans',Arial,sans-serif!important;letter-spacing:.12em;text-transform:uppercase;color:#5C5851}
[data-desk] .lil-desk-record .v4-print figcaption{display:flex;justify-content:space-between;gap:12px;padding-top:6px}
[data-desk] .lil-desk-record .v4-print button{background:none;border:0;cursor:pointer;min-width:32px;min-height:32px}
[data-desk] .lil-desk-record .v4-media-row,[data-desk] .lil-desk-record .v4-media-row *{font:400 12px/1.5 'IBM Plex Mono',monospace!important;letter-spacing:0!important;text-transform:none!important}
[data-desk] .lil-desk-record .v4-media-row [data-text-link]{background:none;border:0;cursor:pointer;text-align:left;padding:6px}
[data-desk] .lil-desk-record .v4-cross-reference{display:grid;gap:6px}
[data-desk] .lil-desk-record .v4-related-places{display:flex;flex-wrap:wrap;gap:12px}
[data-desk] .lil-desk-record .v4-related-places a{font:400 17px/1.5 var(--type-text);color:#18231E;text-decoration:none;border-radius:3px;outline:1px solid transparent}
[data-desk] .lil-desk-record .v4-related-places a:hover{outline:1px solid rgba(24,35,30,.35);background:rgba(24,35,30,.06)}
[data-desk] .lil-desk-record .v4-record-foot{display:block}
.lil-desk-grabber{display:flex;justify-content:center;align-items:center;width:100%;min-height:24px;background:none;border:0;padding:6px 0 10px;cursor:grab;touch-action:none}
[data-desk] .lil-desk-missing{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:20;padding:12px 16px;font:400 17px/1.4 var(--type-text)}
[data-desk] .lil-desk-missing p{margin:0}
/* brass: the nav concho */
.lil-desk-concho nav{display:flex;align-items:center;gap:18px;line-height:1}
.lil-desk-concho a,.lil-desk-lang button{display:inline-flex;align-items:center;color:#1E1608;text-decoration:none;font:inherit;background:none;border:0;padding:4px 2px;cursor:pointer;border-radius:3px}
.lil-desk-concho a:focus-visible,.lil-desk-lang button:focus-visible{outline:2px solid #18231E}
.lil-desk-lang{display:inline-flex;align-items:center;gap:4px;margin-left:18px;line-height:1}
.lil-desk-lang button[aria-pressed=true]{font-weight:600}
[data-brass]:focus-visible{outline:2px solid #18231E;outline-offset:2px;border-radius:50%}
/* popovers: slips laid over what opened them */
[data-desk] .lil-desk-pop{z-index:40;padding:8px;box-sizing:border-box;font:400 17px/1.4 var(--type-text)}
.lil-desk-layers{display:grid;gap:6px}
.lil-desk-layers [data-link-row],.lil-desk-menu nav a,.lil-desk-menu .lil-desk-lang button{display:flex;align-items:center;gap:8px;width:100%;min-height:40px;background:none;border:0;padding:4px 8px;cursor:pointer;font:inherit;color:#18231E;text-decoration:none;border-radius:3px;text-align:left}
.lil-desk-layers .is-current{font-weight:600}
.lil-desk-check{display:inline-flex;width:16px;height:16px}
.lil-desk-menu{display:grid;gap:10px}
.lil-desk-menu nav{display:grid;gap:6px}
.lil-desk-menu .lil-desk-lang{margin:0}
.lil-desk-menu .lil-desk-lang button{width:auto}
.lil-desk-menu nav a:hover,.lil-desk-menu .lil-desk-lang button:hover{outline:1px solid rgba(24,35,30,.35);background:rgba(24,35,30,.06)}
.lil-desk-menu [data-primary]{justify-self:start}
@keyframes lil-desk-arrive{from{box-shadow:0 1px 1.5px rgba(20,14,6,.38),0 18px 36px -6px rgba(20,14,6,.30);opacity:.6}}
@keyframes lil-desk-leave{to{box-shadow:0 1px 1.5px rgba(20,14,6,.38),0 18px 36px -6px rgba(20,14,6,.30);opacity:0}}
[data-desk] .lil-desk-pop{animation:lil-desk-arrive var(--arrival) var(--arrival-ease) both}
[data-desk] .lil-desk-pop.is-leaving{animation:lil-desk-leave var(--leave) var(--leave-ease) both;pointer-events:none}
@media (min-width:720px){[data-desk] .lil-desk-record{animation:lil-desk-arrive var(--arrival) var(--arrival-ease) both}}
/* printed on the chart: scale bar and attribution, bottom-right, mono 11 px (the D10 floor) */
[data-desk] .lil-desk-map .v4-scale{position:absolute;right:12px;bottom:46px;z-index:12;pointer-events:none;display:flex;align-items:flex-end;gap:12px;background:none;border:0;padding:0;font:400 11px/1.2 var(--type-mono);color:#18231E}
[data-desk] .lil-desk-map .v4-scale i{display:block;height:4px;border:1px solid #18231E;background:linear-gradient(90deg,#18231E 50%,transparent 50%);margin-bottom:4px}
[data-desk] .lil-desk-map .v4-credits{left:auto;right:8px;bottom:12px;max-width:min(420px,calc(100% - 16px));padding:4px}
[data-desk] .lil-desk-map .v4-credits>span{font:400 11px/1.2 var(--type-mono);color:#18231E;background:rgba(239,232,214,.88)}
[data-desk] .lil-desk-map .v4-credits-card{left:auto;right:8px;bottom:40px;font:400 11px/1.45 var(--type-mono);border:0;background:#EFE8D6;box-shadow:0 1px 1.5px rgba(20,14,6,.38),0 8px 22px -6px rgba(20,14,6,.30)}
[data-desk] .lil-desk-map .v4-credits-head,[data-desk] .lil-desk-map .v4-credits-head button{font:400 11px/1.2 var(--type-mono)}
.lil-desk-imagery{position:absolute;right:12px;bottom:64px;z-index:12;font:400 11px/1.2 var(--type-mono);color:#18231E}
.lil-desk-esri-voice{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);z-index:12;margin:0;padding:4px 10px;max-width:calc(100% - 140px);background:#EEE7D6;border-radius:3px;font-size:13px;line-height:1.3;text-align:center}
@media (max-width:719px){
  [data-desk] .lil-desk-top{top:36px;right:12px;width:auto;padding:12px}
  [data-desk] .lil-desk-top .lil-desk-top-head{gap:8px}
  [data-desk] .lil-desk-top .lil-desk-wordmark{flex:1;min-width:0;font-size:20px;white-space:nowrap}
  [data-desk] .lil-desk-top-head [data-primary]{flex:none;white-space:nowrap;padding:0 12px}
  [data-desk] .lil-desk-record{top:auto;left:0;right:0;bottom:0;width:auto;height:58%;padding:0 16px 28px;z-index:25}
  [data-desk] .lil-desk-map .v4-scale{bottom:52px}
  [data-desk] .lil-desk-map .v4-credits{bottom:24px}
  /* bundle-room: the imagery voice line rides above the scale bar, never over the credits */
  [data-desk] .lil-desk-esri-voice{bottom:126px}
  .lil-desk-imagery{bottom:76px}
}
/* the desk's focus is the 2 px ink ring (H2); the record heading takes focus quietly */
[data-desk] :focus-visible{outline:2px solid #18231E;outline-offset:2px;box-shadow:none}
[data-desk] [data-record-head]:focus,[data-desk] [data-record-head]:focus-visible{outline:none;box-shadow:none}
[data-desk] .lil-desk-record .v4-record-head{display:block;margin:0;font:400 26px/1.2 var(--type-display)}
[data-desk] .lil-desk-record .v4-print{background:none;border:0;padding:0}
[data-desk] .lil-desk-record .v4-photo-frame{background:none}
[data-desk] .lil-desk-record .v4-photo-frame img{filter:none}
[data-desk] .lil-desk-grabber{position:static;width:100%;height:auto;background:none;top:auto;left:auto;z-index:auto}
/* S3 polish: map labels. Points: Caslon Text with synthesised small caps; areas: ink
   Caslon Text italic beside the category's 16 px disc; a label under brass, a slip or
   the record, or clipped by the chart's edge, is dropped. */
[data-desk] .leaflet-tooltip.v4-place-name{font:400 12px/1.15 var(--type-text)!important;font-variant-caps:small-caps!important;font-synthesis:small-caps!important;background:none!important;padding:0 2px!important;text-shadow:0 0 2px #EFE8D6,0 0 2px #EFE8D6,0 0 3px #EFE8D6}
[data-desk] .leaflet-tooltip.lil-area-label{display:inline-flex;align-items:center;gap:4px;padding:0;background:none;border:0;box-shadow:none;white-space:nowrap;font:500 12px/1.15 "Instrument Sans",Arial,sans-serif;color:#18231E;text-shadow:0 0 2px #EFE8D6,0 0 2px #EFE8D6,0 0 3px #EFE8D6}
[data-desk] .leaflet-tooltip.lil-area-label:before{display:none}
[data-desk] [data-label-dropped]{visibility:hidden!important}
/* S3 polish: no runners on the record; the per-story language pair marks the shown one in ink */
.lil-desk-record-lang{display:inline-flex;gap:2px}
.lil-desk-record-lang [aria-pressed=true]{color:#18231E}
[data-desk] .lil-desk-record .v4-figure-pager>span[aria-live]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
/* S3b: the reading desk. One sheet on the leather, 720 px at most; three tiers:
   the title (Caslon Display), body (Caslon Text 17 px / 16.5 px phone, 1.5), metadata
   (Plex Mono 12 px) or a group label (Instrument Sans caps 11 px). Gaps, never rules. */
.lil-read{--read-body:400 17px/1.5 var(--type-text)}
.lil-read-map{position:absolute;top:18px;left:18px;z-index:30}
.lil-read-column{position:relative;box-sizing:border-box;width:min(720px,calc(100% - 66px));margin:72px auto 56px}
.lil-read-sheet{padding:48px 56px 32px;font:var(--read-body);color:#18231E;overflow-wrap:anywhere}
.lil-read a{text-decoration:none;color:#18231E}
.lil-read-article{display:grid;gap:28px}
.lil-read-head{display:grid;gap:20px}
.lil-read-head h1{margin:0;font:400 34px/1.15 var(--type-display);color:#18231E}
.lil-read-lede{margin:0;font:var(--read-body);font-style:italic}
.lil-read-hero{margin:0}
.lil-read-hero img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.lil-read-body{display:grid;gap:12px}
.lil-read-body>*{margin:0}
.lil-read-body p,.lil-read-body li,.lil-read-line{margin:0;font:var(--read-body)}
.lil-read-line{color:#5C5851}
[data-well]::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;height:16px;width:16px;cursor:pointer;background:#18231E;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 4l8 8M12 4l-8 8' stroke='black' stroke-width='1.6' fill='none'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 4l8 8M12 4l-8 8' stroke='black' stroke-width='1.6' fill='none'/%3E%3C/svg%3E") center/contain no-repeat}
/* the shared markdown renderer styles inline; on the reading sheet its body, headings and rules take the tiers */
.lil-read-body p,.lil-read-body li,.lil-read-body blockquote{font:var(--read-body)!important;color:#18231E!important;margin:0!important}
.lil-read-body blockquote{border:0!important;padding:0 0 0 20px!important;font-style:italic!important}
.lil-read-body h2,.lil-read-body h3,.lil-read-body h4{font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif)!important;color:#5C5851!important;margin:16px 0 0!important}
.lil-read-body hr{border:0!important;height:0;margin:8px 0!important}
.lil-read-body figcaption{font:400 12px/1.5 var(--type-mono)!important;color:#5C5851!important}
.lil-read-body ul,.lil-read-body ol{margin:0;padding-left:1.4em}
.lil-read-body h2,.lil-read-body h3,.lil-read-body h4,.lil-read-group,.lil-read-facts dt,.lil-read .v4-accuracy figcaption{margin:0;font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#5C5851}
.lil-read strong,.lil-read b{font-weight:inherit;font-style:italic}
.lil-read-meta{margin:0;font:400 12px/1.5 var(--type-mono);color:#5C5851}
.lil-read-well{width:100%}
.lil-read-chips{display:flex;flex-wrap:wrap;gap:6px}
.lil-read-chips [data-link-row]{display:inline-flex;align-items:center;gap:6px;background:none;border:0;min-height:36px;padding:4px 8px;cursor:pointer;font:var(--read-body);color:#18231E;border-radius:3px;transition:opacity var(--feedback) linear}
.lil-read-chips [data-link-row][aria-pressed=true]:not([data-category]){font-weight:600}
.lil-read-place{display:inline-block;width:10px;height:10px;box-sizing:border-box;border:1.5px solid #18231E;border-radius:50%}
.lil-read-list{display:grid;gap:6px}
.lil-read-list>.lil-read-group{margin:0 0 6px}
.lil-read-row{gap:10px;padding:8px}
.lil-read-row-text{display:grid;gap:2px;min-width:0}
.lil-read-row-title{margin:0;font:var(--read-body);color:#18231E}
.lil-read-facts{display:grid;grid-template-columns:max-content 1fr;gap:6px 20px;align-items:baseline;margin:0}
.lil-read-facts>div{display:contents}
.lil-read-facts dd{margin:0;font:var(--read-body)}
.lil-read-term{display:grid;gap:2px;padding:8px}
.lil-read-term h3{margin:0;font:var(--read-body);font-style:italic}
.lil-read-term p{margin:0;font:var(--read-body)}
.lil-read .v4-accuracy{margin:0;display:grid;gap:10px}
.lil-read .v4-accuracy-row{display:grid;grid-template-columns:12px 56px 1fr;gap:10px;align-items:baseline;border:0;padding:0;background:none}
.lil-read .v4-accuracy-dot{width:10px;height:10px;border-radius:50%}
.lil-read .v4-accuracy-distance{font:400 12px/1.5 var(--type-mono);color:#5C5851}
.lil-read .v4-accuracy-row p{margin:0;font:var(--read-body)}
.lil-read-back{display:inline-flex;align-items:center;gap:6px;padding:2px 4px;margin:-2px -4px}
.lil-read-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:40px;font:400 12px/1.5 var(--type-mono);color:#5C5851}
.lil-read-foot-links{display:inline-flex;gap:16px}
.lil-read-foot [data-text-link]{font:inherit;color:#5C5851;padding:2px 4px;margin:-2px -4px}
.lil-read .lil-desk-concho [aria-current=page],.lil-read-pop [aria-current=page]{font-weight:600}
.lil-desk .lil-desk-concho [aria-current=page]{font-weight:600}
.lil-read-pop{position:absolute;top:30px;right:12px;z-index:40;width:min(280px,calc(100% - 24px));padding:8px;box-sizing:border-box;font:var(--read-body);animation:lil-desk-arrive var(--arrival) var(--arrival-ease) both}
@media (max-width:719.98px){
  .lil-read{--read-body:400 16.5px/1.5 var(--type-text)}
  .lil-read-column{width:calc(100% - 66px);margin-top:64px}
  .lil-read-sheet{padding:40px 20px 24px}
  .lil-read-head h1{font-size:28px}
}
/* S7: the collector on the desk. One column (the phone less 24 px a side, 480 px at
   most); per sheet the label tier (Instrument caps 11), controls and their copy
   (Instrument 500 14; the current choice 600), readings (Plex Mono 12). */
.lil-cdesk{--cdesk-control:500 14px/1.45 var(--type-sans,'Instrument Sans',Arial,sans-serif)}
.lil-cdesk-map-disc{position:absolute;top:18px;left:18px;z-index:30}
.lil-cdesk-settings-disc{position:absolute;top:18px;right:18px;z-index:30}
.lil-cdesk-column{position:relative;box-sizing:border-box;width:min(480px,calc(100% - 48px));margin:72px auto 56px;display:grid;gap:24px}
.lil-cdesk-sheet{padding:18px 20px 24px;font:var(--cdesk-control);color:#18231E;overflow-wrap:anywhere}
.lil-cdesk-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 4px}
.lil-cdesk-head h1{margin:0}
.lil-cdesk-steps{display:flex;flex-wrap:wrap;gap:2px 10px;margin:0 0 18px}
.lil-cdesk-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:4px 6px;margin:0 -6px;background:none;border:0;border-radius:3px;font:var(--cdesk-control);color:#18231E;cursor:pointer;text-align:left}
.lil-cdesk-steps .lil-cdesk-link{margin:0}
.lil-cdesk-link.is-block{width:100%;margin:0}
/* S8: the D10 budget (Display title + label + control + mono) leaves 600 for the capture
   choices only; the current step and other pressed choices are marked in ink against graphite */
.lil-cdesk-link[aria-pressed=true]{font-weight:600}
.lil-cdesk-steps .lil-cdesk-link{color:#5C5851}
.lil-cdesk-steps .lil-cdesk-link[aria-current=page]{color:#18231E}
.lil-cdesk-quiet{color:#5C5851}
.lil-cdesk-link:disabled{opacity:.45;cursor:not-allowed}
.lil-cdesk-label{display:block;margin:0 0 6px;font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#5C5851}
.lil-cdesk-head .lil-cdesk-label{margin:0}
.lil-cdesk-body{display:grid;gap:18px}
.lil-cdesk-body>*{margin:0}
.lil-cdesk-group{display:grid;gap:6px}
.lil-cdesk-field .lil-cdesk-label{margin-bottom:6px}
.lil-cdesk-well{display:block;width:100%;box-sizing:border-box;min-height:44px;padding:10px 12px;background:rgba(24,35,30,.05);border:0;border-radius:3px;font:var(--cdesk-control);color:#18231E;resize:vertical}
.lil-cdesk-well:focus{outline:2px solid #18231E;outline-offset:0}
.lil-cdesk-text{margin:0;font:var(--cdesk-control);color:#18231E}
.lil-cdesk-strong{font-weight:600}
.lil-cdesk-voice{font-style:normal}
.lil-cdesk-title{margin:0;font:400 26px/1.2 var(--type-display);color:#18231E}
.lil-cdesk-mono{margin:0;font:400 12px/1.5 var(--type-mono);color:#5C5851}
.lil-cdesk-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.lil-cdesk-primary.is-block{width:100%}
.lil-cdesk-primary:disabled{opacity:.45;cursor:not-allowed}
.lil-cdesk .lil-draft-banner{display:grid;gap:2px;padding:0;margin:0;border:0}
.lil-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;margin:0}
.lil-cdesk-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 14px}
.lil-cdesk-choices{display:flex;flex-wrap:wrap;align-items:center;gap:2px 16px}
.lil-cdesk-choices .lil-cdesk-link{margin:0 -6px}
.lil-cdesk-modes{gap:2px 22px}
.lil-cdesk-mapsheet{padding:0;overflow:hidden}
.lil-cdesk-map{position:relative;height:min(52vh,440px);overflow:hidden}
.lil-cdesk-map .leaflet-container{background:#EFE8D6;font:inherit}
.lil-cdesk-map .leaflet-tile-pane{filter:saturate(.5) sepia(.28) contrast(1.04) brightness(1.12)}
.lil-cdesk-mapfoot{display:grid;gap:10px;padding:12px 20px 16px}
.lil-cdesk-mapfoot .lil-cdesk-row>.lil-cdesk-mono{min-height:36px;display:inline-flex;align-items:center}
.lil-offline-grid{position:absolute;inset:0;z-index:900;pointer-events:none;display:flex;align-items:center;justify-content:center;background:rgba(239,232,214,.55)}
.lil-offline-grid [data-instrument=offline-pack-message]{color:#18231E;text-shadow:0 0 2px #EFE8D6,0 0 2px #EFE8D6}
.lil-pencil-pin{display:block;width:22px;height:22px;box-sizing:border-box;border:2px solid #5C5851;border-radius:50%;background:rgba(239,232,214,.6)}
[data-lod="0"] .lil-pencil-pin{border-style:dashed}
.lil-cdesk-discs{display:flex;flex-wrap:wrap;gap:10px}
.lil-cdesk-disc{display:inline-flex;padding:3px;background:none;border:0;border-radius:50%;cursor:pointer}
.lil-cdesk-disc[aria-pressed=true]{outline:2px solid #18231E;outline-offset:0}
.lil-cdesk-disc:focus-visible{outline:2px solid #18231E;outline-offset:3px}
.lil-cdesk-chosen{min-height:14px;margin:8px 0 0}
.lil-cdesk-switch{justify-content:flex-start;gap:10px}
.lil-cdesk-box,.lil-cdesk-check{display:inline-flex;align-items:center;justify-content:center;flex:none;width:18px;height:18px;box-sizing:border-box;border-radius:3px;background:rgba(24,35,30,.05)}
.lil-cdesk-check{background:none;border:1.5px solid #5C5851;border-radius:50%}
.lil-cdesk-scope-choice[aria-pressed=true] .lil-cdesk-check{border-color:#18231E}
.lil-cdesk-fieldset{margin:0;padding:0;border:0;min-width:0;display:grid;gap:8px}
.lil-cdesk-fieldset legend{padding:0}
.lil-cdesk-scope{display:grid;gap:6px}
.lil-cdesk-scope-choice{display:flex;align-items:flex-start;gap:10px;width:100%;padding:8px;background:none;border:0;border-radius:3px;text-align:left;cursor:pointer;color:#18231E;font:var(--cdesk-control)}
.lil-cdesk-scope-title{font:var(--cdesk-control);font-weight:500}
.lil-cdesk-media{display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:start}
.lil-cdesk-media-tile{width:64px;height:64px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:rgba(24,35,30,.05)}
.lil-cdesk-media-tile img{width:100%;height:100%;object-fit:cover;display:block}
.lil-cdesk-line{display:block;overflow-wrap:anywhere}
.lil-cdesk-summary{margin:0;display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;align-items:baseline}
.lil-cdesk-summary>div{display:contents}
.lil-cdesk-summary dt{margin:0}
.lil-cdesk-summary dd{margin:0}
.lil-cdesk-records{display:grid;gap:18px}
.lil-cdesk-record{display:grid;gap:4px;justify-items:start}
.lil-cdesk-record .lil-upload-progress{width:100%;height:3px;accent-color:#18231E}
.lil-cdesk-gate{display:inline-flex;align-items:center;gap:5px}
.lil-cdesk-setrow{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:12px;width:100%;padding:8px;background:none;border:0;border-radius:3px;text-align:left;cursor:pointer;color:#18231E}
.lil-cdesk .lil-setting-row{border:0;padding:0}
.lil-cdesk .lil-setting-row button{border:0;height:auto;min-width:0;box-shadow:none}
.lil-cdesk .lil-setting-row button{color:#5C5851}
.lil-cdesk .lil-setting-row button[aria-pressed=true]{font-weight:500;color:#18231E;box-shadow:none}
/* S8: the shared geometry editor's handles */
.lil-editor-vertex{display:block;width:10px;height:10px;margin:6px;box-sizing:border-box;border:1.5px solid #18231E;border-radius:50%;background:#EFE8D6}
.lil-editor-vertex.is-selected{width:14px;height:14px;margin:4px;border-width:2.5px}
.lil-editor-mid{display:block;width:8px;height:8px;margin:5px;box-sizing:border-box;border:1.5px solid #5C5851;border-radius:50%;background:rgba(239,232,214,.7)}
.leaflet-container:focus-visible{outline:2px solid #18231E;outline-offset:-2px}
.lil-cdesk .v4-place-picker{margin:0;font:var(--cdesk-control)}
.lil-cdesk .v4-place-picker button{text-decoration:none;font:var(--cdesk-control);color:#18231E;border-radius:3px;padding:6px;margin:0 -6px}
.lil-cdesk .v4-place-picker button:hover{outline:1px solid rgba(24,35,30,.35);background:rgba(24,35,30,.06)}
.lil-cdesk .v4-place-picker>div{border:0;padding:8px 0;background:none}
.lil-cdesk .v4-place-picker input{background:rgba(24,35,30,.05);border:0;border-radius:3px;min-height:44px;padding:10px 12px;font:var(--cdesk-control)}
.lil-cdesk .lil-storage-split{border:0;padding:0;margin:0}
.lil-cdesk .lil-storage-split>div{display:flex;justify-content:space-between;font:400 12px/1.8 var(--type-mono);color:#5C5851}
@media (max-width:719.98px){.lil-cdesk-column{margin-top:calc(64px + env(safe-area-inset-top))}}
/* The story view (S5): three tiers in the column (title, body, label); the active paragraph's 3 px amber tick */
.lil-story-back{font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#5C5851;padding:4px 6px;margin:-4px -6px}
.lil-story-body{padding-top:14px}
.lil-story-body p,.lil-story-body li,.lil-story-body blockquote{font:400 17px/1.5 var(--type-text)!important;color:#18231E!important;margin:0 0 16px!important;position:relative}
.lil-story-body h2,.lil-story-body h3,.lil-story-body h4{font:400 26px/1.2 var(--type-display)!important;color:#18231E!important;margin:24px 0 12px!important}
.lil-story-body .story-place{white-space:nowrap}
.lil-story-body blockquote.lil-md-quote,.lil-md-preview blockquote.lil-md-quote{font-family:var(--type-text)!important;font-style:italic!important;text-decoration:none!important;border:0!important;border-left:2px solid #5C5851!important;margin:0 0 16px 20px!important;padding:2px 0 2px 16px!important}
.lil-story-body [data-scene-place]{margin:0!important}
.lil-story-body figure{margin:0 0 16px!important;position:relative}
.lil-story-body figure img,.lil-story-body figure video{display:block;width:100%;max-width:100%;height:auto}
.lil-story-body figcaption{font-size:0!important;color:#18231E!important;padding-top:6px}
.lil-story-body figcaption p{font-style:italic!important;margin:0 0 4px!important}
.lil-story-body figcaption small{display:block;font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#5C5851}
.lil-story-body [data-active]::before{content:"";position:absolute;left:-16px;top:0;bottom:0;width:3px;background:#C58B37}
/* S8: the ledger's desk. Every admin sheet prints in four styles: the title (Caslon
   Display 26), the label tier (Instrument caps 11), controls and copy (Instrument 500
   14) and readings (Plex Mono 12). The September admin's inline type, rules and boxed
   controls are overridden inside the sheets; no rule survives between rows (H1). */
.lil-adesk{--adesk-control:500 14px/1.45 var(--type-sans,'Instrument Sans',Arial,sans-serif)}
body:has(.lil-adesk){overflow:auto}
.lil-adesk-map-disc{position:absolute;top:18px;left:18px;z-index:30}
.lil-adesk-column{position:relative;box-sizing:border-box;width:min(1320px,calc(100% - 66px));margin:72px auto 56px}
.lil-adesk-sheets{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:start}
.lil-adesk.is-review .lil-adesk-sheets{grid-template-columns:minmax(0,840px) minmax(0,440px);justify-content:center}
.lil-adesk-concho{position:absolute;top:-16px;right:16px;z-index:30}
.lil-adesk-concho>.lil-brass-face{gap:18px;padding:0 4px}
.lil-adesk-concho button{display:inline-flex;align-items:center;color:#1E1608;font:inherit;background:none;border:0;padding:4px 2px;cursor:pointer;border-radius:3px}
.lil-adesk-concho button:focus-visible{outline:2px solid #18231E}
.lil-adesk-concho .lil-desk-lang{margin-left:0}
.lil-adesk-pop{position:absolute;top:34px;right:16px;z-index:40;padding:8px}
.lil-adesk-sheet,.lil-adesk-slip{padding:24px 28px 28px;font:var(--adesk-control);color:#18231E;overflow-x:auto;min-width:0}
.lil-adesk-slip{padding-top:40px}
.lil-adesk [data-paper] *{font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important;line-height:inherit;border-color:transparent}
.lil-adesk [data-paper] *:not(.lil-editor-vertex):not(.lil-editor-mid):not(.lil-read-place){border-width:0!important;border-style:none!important;box-shadow:none!important}
.lil-adesk [data-paper] .lil-adesk-title,.lil-adesk [data-paper] .lil-adesk-title *{font-family:var(--type-display)!important;font-size:26px!important;font-weight:400!important;line-height:1.2}
.lil-adesk [data-paper] .lil-adesk-label,.lil-adesk [data-paper] th{font-family:var(--type-sans,'Instrument Sans',Arial,sans-serif)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#5C5851;text-align:left}
.lil-adesk [data-paper] .lil-adesk-mono,.lil-adesk [data-paper] .lil-adesk-mono *,.lil-adesk [data-paper] code,.lil-adesk [data-paper] pre,.lil-adesk [data-paper] time{font-family:var(--type-mono)!important;font-size:12px!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;color:#5C5851}
.lil-adesk-title{margin:0}
.lil-adesk [data-paper] input[type=checkbox]{accent-color:#18231E}
/* the September palette's tinted text (moss, amber, faded ink) fails contrast on parchment: print it in ink */
.lil-adesk [data-paper] [style*="color"]:not([data-print]):not(.lil-disc):not(svg):not(svg *){color:#18231E!important}
.lil-adesk [data-paper] [style*="opacity"]:not(.leaflet-pane):not(.leaflet-layer):not(.leaflet-tile):not(img){opacity:1!important}
.lil-adesk-head{display:grid;gap:10px;margin:0 0 20px}
.lil-adesk-nav{display:flex;flex-wrap:wrap;gap:2px 16px}
.lil-adesk-nav a,.lil-adesk-link{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:4px 6px;margin:0 -6px;background:none!important;color:#5C5851;text-decoration:none;border-radius:3px;cursor:pointer}
.lil-adesk-link{color:#18231E}
.lil-adesk-nav a[aria-current=page]{color:#18231E}
.lil-adesk-link[aria-pressed=true]{color:#18231E;text-decoration:none}
.lil-adesk-link[aria-pressed=false]{color:#5C5851}
.lil-adesk-link:disabled{opacity:.45;cursor:not-allowed}
.lil-adesk-primary{display:inline-flex;align-items:center;gap:8px}
.lil-adesk-primary:disabled{opacity:.45;cursor:not-allowed}
.lil-adesk [data-paper] input:not([type=checkbox]):not([type=color]):not([type=file]),.lil-adesk [data-paper] select,.lil-adesk [data-paper] textarea{display:block;width:100%;box-sizing:border-box;min-height:40px;padding:9px 12px!important;background:rgba(24,35,30,.05)!important;border-radius:3px!important;color:#18231E;background-image:none!important}
.lil-adesk [data-paper] input:focus,.lil-adesk [data-paper] select:focus,.lil-adesk [data-paper] textarea:focus{outline:2px solid #18231E;outline-offset:0}
.lil-adesk [data-paper] button:not([data-primary]){background:none!important;background-image:none!important;border-radius:3px!important;color:#18231E}
.lil-adesk [data-paper] table{width:100%;border-collapse:separate!important;border-spacing:0 6px}
.lil-adesk [data-paper] th,.lil-adesk [data-paper] td{padding:6px 12px 6px 0!important;vertical-align:baseline;background:none!important}
.lil-adesk-chips{display:flex;flex-wrap:wrap;align-items:center;gap:2px 16px;margin:0 0 10px}
.lil-adesk-chips .lil-adesk-link{margin:0 -6px}
.lil-adesk-ask-acts{display:flex;flex-wrap:nowrap;align-items:center;gap:16px}
.lil-adesk-dot{color:#5C5851}
.lil-adesk-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 14px}
.lil-adesk-group{display:grid;gap:8px;margin:14px 0 0}
.lil-adesk-voice{margin:0;font-style:normal}
/* the ledger: the selected row carries the 3 px amber tick in the margin (a state mark) */
.lil-adesk-ledger:focus-visible{outline:2px solid #18231E;outline-offset:4px;border-radius:3px}
.lil-adesk-table .review-queue-row{cursor:pointer}
.lil-adesk-table .review-queue-row>td:first-child{position:relative;padding-left:14px!important}
.lil-adesk-table .review-queue-row.is-selected>td:first-child:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;background:#C58B37}
.lil-adesk-table .review-queue-row:hover>td{background:rgba(24,35,30,.06)!important}
.lil-adesk-table th:first-child{padding-left:14px!important}
.lil-adesk-state{color:#5C5851;white-space:nowrap}
.lil-adesk-plate{display:grid;gap:8px;margin:14px 0 0}
.lil-adesk-plate-map{height:260px;background:#EFE8D6;border-radius:0}
.lil-adesk-plate-map .leaflet-tile-pane{filter:saturate(.5) sepia(.28) contrast(1.04) brightness(1.12)}
.lil-adesk-form{margin-top:18px}
.lil-adesk-form>div{padding:0!important}
.lil-adesk .admin-counters{border:0!important;display:flex;flex-wrap:wrap;gap:24px;margin:0 0 20px}
.lil-adesk .admin-counters>div{border:0!important;padding:0!important}
.lil-adesk .admin-counters strong{display:block}
.lil-adesk .admin-board-registers{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.lil-adesk .admin-region{background:none!important;border:0!important;padding:0}
.lil-adesk .admin-activity{display:flex;justify-content:space-between;gap:12px;padding:3px 0}
@media (max-width:719.98px){
  .lil-adesk-column{width:calc(100% - 48px);margin-top:calc(64px + env(safe-area-inset-top))}
  .lil-adesk.is-review .lil-adesk-sheets{grid-template-columns:minmax(0,1fr)}
  .lil-adesk-sheet{padding:20px 18px 24px}
  /* the phone list: title in pencil, community and date in mono, the state word at the right */
  .lil-adesk-table thead{display:none}
  .lil-adesk-table,.lil-adesk-table tbody{display:block}
  .lil-adesk-table .review-queue-row{display:grid;grid-template-columns:1fr auto;grid-template-areas:"rec state" "meta meta" "date date";gap:0 12px;margin:0 0 10px}
  .lil-adesk-table .review-queue-row>td{display:block;padding:0!important}
  .lil-adesk-table .review-queue-row>td:nth-child(1){grid-area:date;font-family:var(--type-mono)!important;font-size:12px!important;color:#5C5851;padding-left:0!important}
  .lil-adesk-table .review-queue-row>td:nth-child(2){grid-area:rec}
  .lil-adesk-table .review-queue-row>td:nth-child(3){grid-area:meta;font-family:var(--type-mono)!important;font-size:12px!important;color:#5C5851}
  .lil-adesk-table .review-queue-row>td:nth-child(4){display:none}
  .lil-adesk-table .review-queue-row>td:nth-child(5){grid-area:state}
  .lil-adesk-table .review-queue-row.is-selected>td:first-child:before{display:none}
  .lil-adesk-slip.is-phone{position:fixed;left:24px;right:24px;bottom:24px;max-height:72dvh;overflow-y:auto;z-index:45;padding:18px}
}
/* polish-1: placement and spacing only (the brass re-skin is the chart seat's).
   On a phone the admin concho rides the sheet's top edge over the title: the sheet
   (and the review slip under it) starts its print below the plate. */
@media (max-width:719.98px){
  .lil-adesk-sheet{padding-top:48px}
}
/* polish-1: the story editor's source well takes the 2 px ink focus ring (amber is the primary's) */
[data-editor-body]:focus,[data-editor-body]:focus-visible{outline:2px solid #18231E;outline-offset:0;box-shadow:none}
/* ── Brass sprites (brass pins, 2026-10-01): path-traced WebP at 2x/3x, rung >= 2 only (they never load below it; data saver is
   rung 0). Static backgrounds: no filters, no blend modes, no animation. The sprites carry a 2 CSS px pad round the part. */
html:is([data-lod="2"],[data-lod="3"]) [data-sprite]{background-repeat:no-repeat!important;background-position:center!important;background-color:transparent!important;box-shadow:none!important;border:0}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite^="disc-"]{background-size:40px 40px!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="disc-plus"]{background-image:-webkit-image-set(url(/assets/brass/disc-plus@2x.webp) 2x,url(/assets/brass/disc-plus@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/disc-plus@2x.webp) 2x,url(/assets/brass/disc-plus@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="disc-minus"]{background-image:-webkit-image-set(url(/assets/brass/disc-minus@2x.webp) 2x,url(/assets/brass/disc-minus@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/disc-minus@2x.webp) 2x,url(/assets/brass/disc-minus@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="disc-layers"]{background-image:-webkit-image-set(url(/assets/brass/disc-layers@2x.webp) 2x,url(/assets/brass/disc-layers@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/disc-layers@2x.webp) 2x,url(/assets/brass/disc-layers@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="disc-crosshair"]{background-image:-webkit-image-set(url(/assets/brass/disc-crosshair@2x.webp) 2x,url(/assets/brass/disc-crosshair@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/disc-crosshair@2x.webp) 2x,url(/assets/brass/disc-crosshair@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="disc-search"]{background-image:-webkit-image-set(url(/assets/brass/disc-search@2x.webp) 2x,url(/assets/brass/disc-search@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/disc-search@2x.webp) 2x,url(/assets/brass/disc-search@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="disc-book-open"]{background-image:-webkit-image-set(url(/assets/brass/disc-book-open@2x.webp) 2x,url(/assets/brass/disc-book-open@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/disc-book-open@2x.webp) 2x,url(/assets/brass/disc-book-open@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="disc-map"]{background-image:-webkit-image-set(url(/assets/brass/disc-map@2x.webp) 2x,url(/assets/brass/disc-map@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/disc-map@2x.webp) 2x,url(/assets/brass/disc-map@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="disc-list"]{background-image:-webkit-image-set(url(/assets/brass/disc-list@2x.webp) 2x,url(/assets/brass/disc-list@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/disc-list@2x.webp) 2x,url(/assets/brass/disc-list@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="disc-settings"]{background-image:-webkit-image-set(url(/assets/brass/disc-settings@2x.webp) 2x,url(/assets/brass/disc-settings@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/disc-settings@2x.webp) 2x,url(/assets/brass/disc-settings@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="ring"]{background-size:calc(100% + 4px) calc(100% + 4px)!important;background-image:-webkit-image-set(url(/assets/brass/ring@2x.webp) 2x,url(/assets/brass/ring@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/ring@2x.webp) 2x,url(/assets/brass/ring@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="grabber"]{background-size:40px 9px!important;background-image:-webkit-image-set(url(/assets/brass/grabber@2x.webp) 2x,url(/assets/brass/grabber@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/grabber@2x.webp) 2x,url(/assets/brass/grabber@3x.webp) 3x)!important}
/* the nav plate: a 9-slice of the blank plate (24 px ends = the 22 px tip + the pad); the words centred, equal insets from the tips */
html:is([data-lod="2"],[data-lod="3"]) .lil-brass-plate{display:inline-flex;align-items:center;box-sizing:border-box;height:44px;padding:0 10px;border-style:solid;border-width:0 24px;
  border-image-source:-webkit-image-set(url(/assets/brass/plate@2x.webp) 2x,url(/assets/brass/plate@3x.webp) 3x);border-image-source:image-set(url(/assets/brass/plate@2x.webp) 2x,url(/assets/brass/plate@3x.webp) 3x);
  border-image-slice:4.17% 9.84% fill;border-image-width:0 24px;border-image-repeat:stretch;
  color:#1E1608;font-family:"Instrument Sans",Arial,sans-serif;font-weight:500;font-size:14px;white-space:nowrap;text-shadow:0 1px 0 rgba(255,246,222,.6)}
html:is([data-lod="2"],[data-lod="3"]) .lil-brass-plate a,html:is([data-lod="2"],[data-lod="3"]) .lil-brass-plate button{color:#1E1608;text-shadow:inherit}
html:is([data-lod="2"],[data-lod="3"]) [data-brass]:active>.lil-brass-face[data-sprite]{background-color:transparent!important}
/* polish-1 (6): the phone top slip's search control is printed on the paper: a 36 px ink ring */
.lil-desk-print-disc{display:inline-flex;align-items:center;justify-content:center;flex:none;width:36px;height:36px;box-sizing:border-box;margin-left:auto;padding:0;background:none;border:1px solid #18231E;border-radius:50%;cursor:pointer}
.lil-desk-print-disc:hover{background:rgba(24,35,30,.06)}
.lil-desk-print-disc:active{background:rgba(24,35,30,.10)}
.lil-desk-print-disc:focus-visible{outline:2px solid #18231E;outline-offset:2px}
/* ledger-blanks: a missing value prints an en dash in graphite */
.lil-adesk-quiet{color:#5C5851}
.lil-adesk [data-paper] input::placeholder{color:#5C5851;opacity:1}
/* polish-2: the admin content editor on the desk (the S6 editor's idiom): printed
   controls, the source in a well, the preview a slip printed like the published page */
.lil-md-editor{display:grid;gap:10px}
.lil-md-tools{display:flex;flex-wrap:wrap;gap:2px 16px}
.lil-md-tool{display:inline-flex;align-items:center;min-height:32px;padding:4px 6px;margin:0 -6px;background:none;border:0;border-radius:3px;color:#18231E;cursor:pointer}
.lil-md-source{display:block;width:100%;box-sizing:border-box;min-height:240px;padding:12px;border:0;border-radius:3px;background:rgba(24,35,30,.05);color:#18231E;font:400 13px/1.6 var(--type-mono);resize:vertical}
.lil-md-source:focus{outline:2px solid #18231E;outline-offset:0}
.lil-md-count{margin:0;font:400 12px/1.5 var(--type-mono);color:#5C5851}
.lil-md-preview{display:grid;gap:12px;padding:20px 24px;color:#18231E}
.lil-adesk [data-paper] .lil-md-preview{font:var(--read-body)!important}
.lil-adesk [data-paper] .lil-md-preview .lil-read-body p,.lil-adesk [data-paper] .lil-md-preview .lil-read-body li,.lil-adesk [data-paper] .lil-md-preview .lil-read-body blockquote,.lil-adesk [data-paper] .lil-md-preview .lil-read-line{font-family:var(--type-text)!important;font-size:17px!important;font-weight:400!important;line-height:1.5}
.lil-adesk [data-paper] .lil-md-preview .lil-read-body h2,.lil-adesk [data-paper] .lil-md-preview .lil-read-body h3,.lil-adesk [data-paper] .lil-md-preview .lil-read-body h4,.lil-adesk [data-paper] .lil-md-preview .lil-md-preview-label{font-family:var(--type-sans,'Instrument Sans',Arial,sans-serif)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#5C5851}
.lil-adesk [data-paper] .lil-md-source{font-family:var(--type-mono)!important;font-size:13px!important}
/* polish-2: collector Settings rows: the label keeps its words whole and its width; the value
   takes the rest and wraps at word boundaries (the sheet's overflow-wrap:anywhere is lifted here) */
.lil-cdesk-setrow{grid-template-columns:18px minmax(min-content,1fr) minmax(0,auto);overflow-wrap:normal;word-break:normal}
.lil-cdesk-setrow>.lil-cdesk-group{min-width:0}
.lil-cdesk-setrow>.lil-cdesk-group>.lil-cdesk-text:first-child{white-space:nowrap}
.lil-cdesk-setrow>.lil-cdesk-text:last-child{text-align:right;justify-self:end}
.lil-cdesk .lil-setting-row{overflow-wrap:normal;word-break:normal}
.lil-cdesk .lil-setting-row>.lil-cdesk-text{white-space:nowrap}

/* Estates over bare imagery: no hatch, a dashed parchment line (r2 satellite frame). */
[data-chart-layer="satellite"] path[fill^="url(#lil-hatch-estate"]{fill:#000;fill-opacity:0!important;stroke:#EFE8D6;stroke-opacity:.9;stroke-width:1.5px;stroke-dasharray:8 4}
/* v2 Seat B: reading pages (B1 colophon, B2 communities masonry, B4 welcome slip, B3 workshops) */
[data-desk] .lil-desk-record-scroll>.lil-colophon{order:9}
.lil-colophon{border-top:1px solid rgba(24,35,30,.22);margin-top:12px;padding-top:16px;display:grid;gap:12px;color:#18231E}
.lil-colophon-provenance{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:baseline}
.lil-colophon-line{margin:0;font:italic 400 14px/1.5 var(--type-text,'Caslon Text',Georgia,serif);color:#18231E}
.lil-colophon-number{font:400 12px/1.5 var(--type-mono,'IBM Plex Mono',monospace);font-variant:small-caps;letter-spacing:.04em;color:#5C5851;white-space:nowrap}
.lil-colophon-actions{display:flex;flex-wrap:wrap;align-items:center;gap:0 20px;margin-left:-6px}
.lil-colophon-action{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 6px;background:none;border:0;border-radius:2px;cursor:pointer;font:500 14px/1 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:0;text-transform:none;color:#18231E;text-decoration:underline;text-decoration-color:rgba(24,35,30,.35);text-underline-offset:4px}
.lil-colophon-action svg{text-decoration:none}
.lil-colophon-action:hover{text-decoration-color:#18231E}
.lil-colophon-action:focus-visible{outline:2px solid #18231E;outline-offset:1px}
.lil-colophon-download{position:relative;display:inline-flex}
.lil-colophon-slip{position:absolute;left:0;top:100%;z-index:3;display:flex;gap:4px;padding:2px 6px;background:#F4EEDF;border:1px solid rgba(24,35,30,.28);border-radius:2px;box-shadow:0 2px 6px rgba(24,35,30,.18)}
.lil-colophon-slip .lil-colophon-action{min-height:40px}
.lil-colophon-note{font:italic 400 12px/1.4 var(--type-text,'Caslon Text',Georgia,serif);color:#5C5851}
.lil-colophon-licence{margin:0;border-top:1px solid rgba(24,35,30,.16);padding-top:10px;font:400 12px/1.5 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#5C5851}
/* B2: the communities masonry; the sheet widens for the index, the head keeps the reading measure */
.lil-read-column:has([data-content-page="06b"]){width:min(1080px,calc(100% - 66px))}
[data-content-page="06b"] .lil-read-head{max-width:608px}
.lil-read-filter{display:flex;flex-wrap:wrap;gap:0 12px;margin:-12px 0 -16px -6px}
.lil-read-filter button{background:none;border:0;cursor:pointer;min-height:36px;padding:4px 6px;font:400 14px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#5C5851}
.lil-read-filter button[aria-pressed=true]{color:#18231E;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.lil-read-masonry{columns:3;column-gap:32px}
.lil-read-card{display:inline-grid;gap:6px;width:100%;break-inside:avoid;margin:0 0 32px;color:#18231E;text-decoration:none;border-radius:2px;outline:1px solid transparent;outline-offset:6px;transition:outline-color var(--feedback) linear}
.lil-read-card:hover{outline-color:rgba(24,35,30,.35)}
.lil-read-card:focus-visible{outline:2px solid #18231E}
.lil-read-card img{display:block;width:100%;height:auto;margin-bottom:6px}
.lil-read-card-name{margin:0;font:400 22px/1.2 var(--type-display);color:#18231E}
.lil-read-card-line{margin:0;font:italic 400 15px/1.45 var(--type-text);color:#18231E}
@media (max-width:1023.98px){.lil-read-masonry{columns:2}}
@media (max-width:719.98px){.lil-read-masonry{columns:1}.lil-read-filter{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:-8px -20px -12px -20px;padding:0 14px}.lil-read-filter button{flex:none;white-space:nowrap}}
/* B4: the welcome slip (L1: green primary, parchment text; one focus ring) */
.lil-welcome-slip{position:relative;box-sizing:border-box;width:min(480px,calc(100vw - 40px));padding:32px 40px;border:1px solid rgba(24,35,30,.22);border-radius:3px;box-shadow:0 10px 40px rgba(0,0,0,.45);text-align:center;color:#18231E}
.lil-welcome-title{margin:0 0 12px;font:400 34px/1.15 var(--type-display,'Caslon Display',Georgia,serif);color:#18231E}
.lil-welcome-body{margin:0 0 24px;font:400 17px/1.5 var(--type-text,'Caslon Text',Georgia,serif);color:#18231E}
.lil-welcome-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:8px 24px}
.lil-welcome-primary{display:inline-block;min-height:44px;padding:12px 20px;box-sizing:border-box;background:#24382F;color:#EEE7D6;border:0;border-radius:3px;box-shadow:none;cursor:pointer;font:500 15px/20px var(--type-sans,'Instrument Sans',Arial,sans-serif)}
.lil-welcome-primary:hover{background:#1C2D25}
.lil-welcome-primary:focus{outline:none}
.lil-welcome-primary:focus-visible{outline:2px solid #18231E;outline-offset:2px;box-shadow:none}
.lil-welcome-link{display:inline-block;padding:12px 4px;font:500 15px/20px var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#18231E;text-decoration:underline;text-decoration-color:rgba(24,35,30,.4);text-underline-offset:4px;border-radius:2px}
.lil-welcome-link:focus-visible{outline:2px solid #18231E;outline-offset:0}
@media (max-width:719.98px){.lil-welcome-slip{padding:24px 16px}.lil-welcome-title{font-size:28px}.lil-welcome-actions{flex-wrap:nowrap;column-gap:12px}.lil-welcome-primary{padding:12px 16px}}
/* B3: workshops, printed entries on the sheet, newest first */
.lil-read-entries{display:grid;border-top:1px solid rgba(24,35,30,.18)}
.lil-read-entry{display:grid;gap:6px;padding:20px 8px;margin:0 -8px;border-bottom:1px solid rgba(24,35,30,.18);color:#18231E;text-decoration:none;border-radius:2px;outline:1px solid transparent;transition:outline-color var(--feedback) linear,background-color var(--feedback) linear}
.lil-read-entry:hover{outline-color:rgba(24,35,30,.35);background:rgba(24,35,30,.04)}
.lil-read-entry:focus-visible{outline:2px solid #18231E}
.lil-read-entry-title{margin:0;font:400 24px/1.2 var(--type-display);color:#18231E}
.lil-read-entry-standfirst{margin:0;font:400 17px/1.5 var(--type-text);color:#18231E;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}
@media (max-width:719.98px){.lil-read-entry-title{font-size:21px}.lil-read-entry-standfirst{font-size:16px}}
/* ==== v2 Seat A (demo-day pins, 2026-10-01): the map surface. One block; the chair merges. ==== */
/* L2 / A1: the nav bezel. Brass carries no words: a lozenge frame (a sprite baked at its exact width at
   rung >= 2, a CSS frame below) over a green leather inset; the words are gilt-tooled into the leather */
[data-brass=concho]{flex:none;color:#E2C276}
.lil-bezel-inset{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background-color:#24382F;background-image:url(/textures/leather-field-768.webp);background-size:384px 384px;background-position:center;
  clip-path:polygon(5.66px 50%,23.66px 4px,calc(100% - 23.66px) 4px,calc(100% - 5.66px) 50%,calc(100% - 23.66px) calc(100% - 4px),23.66px calc(100% - 4px));
  box-shadow:inset 0 1px 3px rgba(0,0,0,.55);font-family:"Instrument Sans",Arial,sans-serif;font-weight:500;font-size:14px;white-space:nowrap}
html[data-lod="0"] .lil-bezel-inset{background-image:none}
.lil-bezel-gilt{display:inline-flex;align-items:center;gap:inherit;color:transparent;
  background:linear-gradient(180deg,#F6E3A8 0%,#E2C276 45%,#C99A4A 100%);-webkit-background-clip:text;background-clip:text;
  filter:drop-shadow(0 -1px 0 rgba(8,14,11,.85))}
.lil-bezel-gilt :is(a,button,span){color:transparent!important;text-shadow:none!important;background:none}
.lil-bezel-gilt :is(a,button):focus-visible{outline:2px solid #E2C276!important;outline-offset:1px}
.lil-bezel{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,#E9CF8A,#B8893F 55%,#7A5A26);
  clip-path:polygon(evenodd,0 50%,22px 0,calc(100% - 22px) 0,100% 50%,calc(100% - 22px) 100%,22px 100%,0 50%,
    5.66px 50%,23.66px calc(100% - 4px),calc(100% - 23.66px) calc(100% - 4px),calc(100% - 5.66px) 50%,calc(100% - 23.66px) 4px,23.66px 4px,5.66px 50%)}
html:is([data-lod="2"],[data-lod="3"]) .lil-bezel[data-sprite]{inset:-2px;clip-path:none;background-size:100% 100%!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="bezel-nav-en"]{background-image:-webkit-image-set(url(/assets/brass/bezel-nav-en@2x.webp) 2x,url(/assets/brass/bezel-nav-en@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/bezel-nav-en@2x.webp) 2x,url(/assets/brass/bezel-nav-en@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="bezel-nav-tl"]{background-image:-webkit-image-set(url(/assets/brass/bezel-nav-tl@2x.webp) 2x,url(/assets/brass/bezel-nav-tl@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/bezel-nav-tl@2x.webp) 2x,url(/assets/brass/bezel-nav-tl@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="bezel-menu"]{background-image:-webkit-image-set(url(/assets/brass/bezel-menu@2x.webp) 2x,url(/assets/brass/bezel-menu@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/bezel-menu@2x.webp) 2x,url(/assets/brass/bezel-menu@3x.webp) 3x)!important}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="bezel-admin"]{background-image:-webkit-image-set(url(/assets/brass/bezel-admin@2x.webp) 2x,url(/assets/brass/bezel-admin@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/bezel-admin@2x.webp) 2x,url(/assets/brass/bezel-admin@3x.webp) 3x)!important}
.lil-adesk-concho .lil-bezel-gilt{gap:18px}
/* A6: marker labels upright, Instrument Sans 500 12, ink on a parchment halo; over imagery a small
   solid parchment slip (2 px radius, no shadow). Collisions still drop by priority ([data-label-dropped]) */
[data-desk] .leaflet-tooltip:is(.v4-place-name,.lil-area-label){font:500 12px/1.15 "Instrument Sans",Arial,sans-serif!important;font-style:normal!important;font-variant-caps:normal!important;
  color:#18231E!important;background:none!important;border:0!important;box-shadow:none!important;text-shadow:none!important;
  -webkit-text-stroke:3px #EEE7D6;paint-order:stroke fill;padding:0 2px!important}
[data-desk] .leaflet-tooltip:is(.v4-place-name,.lil-area-label) svg{-webkit-text-stroke:0}
[data-desk] [data-chart-layer]:not([data-chart-layer=chart]) .leaflet-tooltip:is(.v4-place-name,.lil-area-label){-webkit-text-stroke:0;background:#EEE7D6!important;border-radius:2px!important;padding:2px 5px!important}
/* A7: the top slip is a printed slip: Caslon Display title, the search a ruled pen line (1 px ink
   underline, no fill, an ink magnifier), the counts a Plex Mono 12 reading, the contact a printed ink
   link, the L1 green primary; one left edge, everything on the 8 px grid */
[data-desk] .lil-desk-top{width:416px;padding:24px;gap:16px}
[data-desk] .lil-desk-top .lil-desk-wordmark{font:400 28px/32px var(--type-display)}
.lil-desk-pen{display:flex;align-items:center;gap:8px;height:40px;background:linear-gradient(#18231E,#18231E) left bottom/100% 1px no-repeat;cursor:text}
.lil-desk-pen>svg{flex:none}
.lil-desk-pen [data-well]{flex:1;min-width:0;min-height:0!important;height:39px;padding:0!important;background:none!important;border-radius:0!important;font:400 16px/24px var(--type-text)!important;color:#18231E}
.lil-desk-pen [data-well]::placeholder{color:#5C5851;opacity:1}
.lil-desk-pen [data-well]:focus{outline:none}
.lil-desk-pen:focus-within{outline:2px solid #18231E;outline-offset:4px;border-radius:1px}
[data-desk] .lil-desk-top .lil-desk-meta{align-items:baseline;gap:16px;line-height:24px;white-space:nowrap;flex-wrap:wrap;row-gap:0}
[data-desk] .lil-desk-top .lil-desk-meta [data-count]{font:400 12px/24px var(--type-mono);color:#5C5851;letter-spacing:0}
[data-desk] .lil-desk-top .lil-desk-meta [data-text-link]{font:500 13px/24px "Instrument Sans",Arial,sans-serif;color:#18231E;padding:0;margin:0;min-height:24px!important}
[data-desk] .lil-desk-top>[data-primary]{min-height:40px;padding:0 16px;font:500 14px/1 "Instrument Sans",Arial,sans-serif}
[data-primary]:hover{filter:brightness(1.15)}
[data-primary]:focus-visible{outline:2px solid #18231E;outline-offset:2px}
@media (max-width:719px){
  [data-desk] .lil-desk-top{width:auto;padding:12px 16px;gap:8px}
  [data-desk] .lil-desk-top .lil-desk-wordmark{font-size:22px;line-height:32px}
}
/* A4: the print margin. The map prints inside a neatline (the sheet's parchment margin, then 1 px ink,
   3 px, 0.5 px ink); graduated ticks outward from the rule, degree values in the margin (Plex Mono 11) */
.lil-neatline{position:absolute;inset:0;pointer-events:none;z-index:2}
.lil-neat-rule{position:absolute;inset:var(--neat);border:1px solid #18231E}
.lil-neat-rule:after{content:"";position:absolute;inset:3px;border:.5px solid #18231E}
.lil-neat-tick{position:absolute;background:#18231E}
.lil-neat-tick:is([data-edge=top],[data-edge=bottom]){width:1px;height:4px;margin-left:-.5px}
.lil-neat-tick[data-edge=top]{top:calc(var(--neat) - 4px)}
.lil-neat-tick[data-edge=bottom]{bottom:calc(var(--neat) - 4px)}
.lil-neat-tick:is([data-edge=left],[data-edge=right]){height:1px;width:4px;margin-top:-.5px}
.lil-neat-tick[data-edge=left]{left:calc(var(--neat) - 4px)}
.lil-neat-tick[data-edge=right]{right:calc(var(--neat) - 4px)}
.lil-neat-value{position:absolute;font:400 11px/11px var(--type-mono);color:#18231E;white-space:nowrap;padding-left:3px}
.lil-neat-value[data-edge=top]{top:1px}
.lil-neat-value[data-edge=bottom]{bottom:1px}
.lil-neat-value[data-edge=left]{left:1px;transform:rotate(-90deg) translateX(3px);transform-origin:0 0}
.lil-neat-value[data-edge=right]{right:1px;transform:rotate(90deg) translateX(-3px);transform-origin:100% 0}
/* the slips lie inside the neatline (desktop), clear of the margin's values */
@media (min-width:720px){[data-desk] .lil-desk-top{top:32px;left:32px;max-height:calc(100% - 64px)}[data-desk] .lil-desk-keyslip{left:32px;bottom:32px}}
/* A8: the key is a printed key: a KEY tier (Instrument caps 11), entries Instrument Sans 500 13 beside
   14 px discs on a 22 px line, two columns when the height runs short; a toggle per entry as before.
   A8b: one printed control at the head of every key with toggles: Show all / Hide all */
.lil-key-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 0 4px}
.lil-key-tier{font:600 11px/16px "Instrument Sans",Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#5C5851}
.lil-key-all{background:none;border:0;padding:0 2px;margin:0 -2px;min-height:24px;cursor:pointer;color:#18231E;font:500 12px/16px "Instrument Sans",Arial,sans-serif;border-radius:3px}
.lil-key-all:hover{background:rgba(24,35,30,.06)}
.lil-key-all:focus-visible{outline:2px solid #18231E;outline-offset:1px}
[data-desk] .lil-desk-keyslip{padding:12px 16px;font:500 13px/22px "Instrument Sans",Arial,sans-serif}
[data-desk] .lil-desk-key{gap:0;grid-auto-flow:row}
[data-desk] .lil-desk-key [data-link-row]{gap:8px;min-height:24px;padding:1px 6px;margin:0 -6px;font:500 13px/22px "Instrument Sans",Arial,sans-serif}
@media (min-width:720px) and (max-height:760px){[data-desk] .lil-desk-key{grid-template-columns:auto auto;column-gap:20px}}
.lil-desk-pop .lil-desk-key [data-link-row],[data-desk-pop=key] .lil-desk-key [data-link-row]{min-height:32px}
.lil-read .lil-key-head{max-width:640px}
.lil-key-head:has(+ .lil-read-chips){justify-content:flex-start;gap:24px}
/* A5: the roads underlay in chart mode: OSM tiles desaturated and warmed into the sepia ink, ~35 %, multiplied */
.leaflet-pane.lil-roads{opacity:.35;filter:grayscale(1) sepia(.6) contrast(1.15);mix-blend-mode:multiply}
/* L1 sweep: no dark text on brass, gold, amber or yellow. Every amber fill that carried words is the
   field-green ink fill with parchment text; amber stays an accent (ticks, selection, focus of state) */
.lil-map-control-row .lil-map-primary,.v4-board [data-add-record],.v4-content-contact,
.lil-collector .lil-collector-page button.lil-collector-primary,
.lil-admin .admin-primary,.lil-admin [data-testid=commit-import]{background:#24382F!important;color:#EEE7D6!important}

/* Estates over bare imagery: no hatch, a dashed parchment line (r2 satellite frame). */
[data-chart-layer="satellite"] path[fill^="url(#lil-hatch-estate"]{fill:#000;fill-opacity:0!important;stroke:#EFE8D6;stroke-opacity:.9;stroke-width:1.5px;stroke-dasharray:8 4}
/* v2 Seat B (cont.): B5b link marks, media marks, B6 stops. One code: the place's dot, the story's book, the external ↗ */
.story-place[data-link],a[data-link=story],a[data-link=page]{color:#18231E;text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:rgba(24,35,30,.55);text-underline-offset:3px}
.story-place-dot{display:inline-block;width:8px;height:8px;margin:0 4px 0 1px;vertical-align:.08em;align-self:auto!important}
.v4-inline-ref.story-place{display:inline;background:none;border:0;padding:0;font:inherit;color:#18231E;vertical-align:baseline}
a[data-link=story] svg{margin-right:4px;vertical-align:-.1em}
a[data-link=external]{color:#5C5851!important;text-decoration:underline dotted;text-decoration-thickness:1px;text-underline-offset:3px}
a[data-link=external] span{margin-left:2px;text-decoration:none;display:inline-block}
[data-story=scroll] .lil-figure{margin:4px -36px 20px -44px!important}
[data-story=scroll] .lil-figure figcaption{padding:6px 36px 0 44px;font:italic 400 14px/1.45 var(--type-text)!important;color:#18231E!important}
[data-story=scroll] .lil-figure figcaption p{font:inherit!important;margin:0!important;color:inherit!important}
[data-story=scroll] .lil-figure figcaption small{font:400 12px/1.5 var(--type-mono);font-style:normal;color:#5C5851}
.lil-figure>img,.lil-strip>img,.lil-video video{display:block;width:100%;height:auto;max-width:none!important}
.lil-strip{outline:none}.lil-strip:focus-visible{outline:2px solid #18231E;outline-offset:2px}
.lil-strip>img{cursor:pointer;aspect-ratio:3/2;object-fit:cover}
.lil-strip-prints{display:flex;align-items:center;gap:6px;padding:6px 36px 0 44px}
.lil-strip .lil-strip-prints img{width:44px;height:30px;object-fit:cover;opacity:.4;cursor:pointer;transition:opacity var(--feedback) linear}
.lil-strip .lil-strip-prints img[data-current=true]{opacity:1;outline:1px solid #18231E;outline-offset:1px}
.lil-strip-prints .lil-media-time{margin-left:auto}
.lil-media-time{font:400 12px/1.5 var(--type-mono,'IBM Plex Mono',monospace);color:#5C5851;white-space:nowrap}
.lil-media-play{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none;border-radius:50%;border:1px solid #18231E;background:transparent;color:#18231E;cursor:pointer;padding:0}
.lil-media-play:focus-visible{outline:2px solid #18231E;outline-offset:2px}
.lil-audio{display:flex;align-items:center;gap:12px;padding:4px 36px 0 44px}
.lil-figure .lil-audio audio{display:none}
.lil-audio-wave{flex:1;height:24px;cursor:pointer}
.lil-video{position:relative}
.lil-video-play{position:absolute;left:50%;top:50%;width:56px;height:56px;margin:-28px 0 0 -28px;background:#EEE7D6;border-color:#EEE7D6;box-shadow:0 1px 3px rgba(24,35,30,.35)}
.lil-video-play svg{width:22px;height:22px;margin-left:3px}
.lil-stop{display:flex!important;align-items:center;justify-content:center;border-radius:50%;background:#EEE7D6;border:1px solid #5C5851;box-sizing:border-box;font:500 11px/1 var(--type-mono,'IBM Plex Mono',monospace);color:#5C5851}
.lil-stop[data-current]{background:#18231E;border-color:#18231E;color:#EEE7D6}
.lil-story-mark{background:none;border:0}
.lil-story-steps{position:absolute;left:16px;bottom:16px;z-index:12;display:flex;align-items:center;gap:8px;padding:2px 6px;background:#EEE7D6;border:1px solid rgba(24,35,30,.22);border-radius:2px}
.lil-story-steps button{background:none;border:0;cursor:pointer;min-height:36px;padding:0 8px;font:500 14px/1 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#18231E}
.lil-story-steps button:disabled{color:#5C5851;opacity:.5;cursor:default}
@media (max-width:719.98px){[data-story=scroll] .lil-figure{margin:4px -20px 20px -28px!important}[data-story=scroll] .lil-figure figcaption,.lil-strip-prints,.lil-audio{padding-left:28px;padding-right:20px}.lil-story-steps{bottom:auto;top:calc(42dvh - 96px);left:12px}}
/* v2 Seat B (cont.): every input on paper is a pen line (r2 frames): Caslon italic over a hairline, no fill */
.lil-read-well{background:transparent!important;border:0!important;border-bottom:1px solid rgba(24,35,30,.45)!important;border-radius:0!important;padding:8px 0 6px!important;font:italic 400 17px/1.4 var(--type-text,'Caslon Text',Georgia,serif)!important;color:#18231E!important}
.lil-read-well::placeholder{color:#5C5851;opacity:1}
.lil-read-well:focus,.lil-read-well:focus-visible{outline:none!important;border-bottom-color:#18231E!important;box-shadow:0 1px 0 #18231E!important}
/* A10: over imagery our town labels take a dark halo (the Esri reference-label overlay is gone) */
[data-chart-layer]:not([data-chart-layer=chart]) .town-label{fill:#EEE7D6;fill-opacity:1;stroke:#18231E;stroke-opacity:.75;stroke-width:3px}
/* v2 addendum (16:20). Satellite: the photograph lies on the board inside the tooled fillet, warm-graded
   to the leather and paper (no sheet, no neatline). A2: on desktop the discs sit in the r2 tray, leather
   showing through a notch at the foot of the sheet (or of the photograph); the scale bar prints beside it */
[data-desk][data-ground=imagery] .lil-desk-map .leaflet-tile-pane{filter:sepia(.25) saturate(.85) contrast(1.05)}
.lil-desk-tray{position:absolute;left:50%;bottom:0;transform:translateX(-50%);z-index:30;display:flex;align-items:center;gap:12px;
  height:60px;padding:0 20px;box-sizing:border-box;background-color:#24382F;background-image:url(/textures/leather-field-768.webp);background-size:768px 768px;
  box-shadow:inset 0 3px 4px -1px rgba(0,0,0,.55),inset 3px 0 4px -2px rgba(0,0,0,.4),inset -3px 0 4px -2px rgba(0,0,0,.4)}
html[data-lod="0"] .lil-desk-tray{background-image:none;box-shadow:none}
[data-desk] .lil-desk-map .v4-scale{bottom:20px;right:auto;left:calc(50% + 200px)}
/* the scale bar prints left of the tray, clear of the credits; over imagery it takes A6's parchment slip */
[data-desk] .lil-desk-map .v4-scale{left:auto;right:calc(50% + 184px);bottom:16px}
[data-desk][data-ground=imagery] .lil-desk-map .v4-scale{background:#EEE7D6;border-radius:2px;padding:4px 6px}
@media (max-width:719px){[data-desk] .lil-desk-map .v4-scale{right:12px;bottom:64px}}
/* A8 per the r2 frame: the key printed in a double-rule box (1 px ink, 2 px, 0.5 px ink) */
[data-desk] .lil-desk-keyslip{padding:6px}
[data-desk] .lil-desk-keyslip .lil-desk-keywrap{position:relative;border:1px solid #18231E;padding:10px 14px 10px}
[data-desk] .lil-desk-keyslip .lil-desk-keywrap:after{content:"";position:absolute;inset:2px;border:.5px solid #18231E;pointer-events:none}
/* A7 per the r2 frame: the search is an italic pen line over a hairline */
.lil-desk-pen{background:linear-gradient(rgba(24,35,30,.45),rgba(24,35,30,.45)) left bottom/100% 1px no-repeat}
.lil-desk-pen [data-well]{font-style:italic!important;font-size:18px!important}
.lil-desk-pen [data-well]::placeholder{font-style:italic}
/* A8 (atlas, per the r2 frame): the legend is a ruled table under the plate (hairline cells, all four sides) */
[data-atlas-key]{gap:1px!important;margin-top:8px;padding:1px;background:rgba(24,35,30,.35)}
[data-atlas-key]>div{padding:4px 10px;background:#EFE8D6}
[data-atlas-key]>div:last-child{grid-column:span 3}
/* v2-C Seat B: N, the add-story slip: paper pinned at the pin; pen lines; printed choices; no default scope (S9) */
.lil-add-slip{position:absolute;top:122px;right:22px;z-index:30;box-sizing:border-box;width:320px;max-height:calc(100% - 24px);overflow-y:auto;padding:18px 20px 16px;background:#EEE7D6;border-radius:2px;box-shadow:0 6px 20px rgba(24,35,30,.28);color:#18231E;display:grid;gap:14px}
.lil-add-slip[style*="left"]{right:auto}
.lil-add-heading{margin:0;font:400 20px/1.2 var(--type-display,'Caslon Display',Georgia,serif);color:#18231E}
.lil-add-field{display:grid;gap:6px}
.lil-add-label{font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#5C5851}
.lil-add-pen{width:100%;box-sizing:border-box;padding:4px 0 5px;background:transparent;border:0;border-bottom:1px solid rgba(24,35,30,.45);border-radius:0;font:400 16px/1.4 var(--type-text,'Caslon Text',Georgia,serif);color:#18231E;-webkit-appearance:none;appearance:none}
select.lil-add-pen{cursor:pointer;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%235C5851'/%3E%3C/svg%3E") no-repeat right 2px center;padding-right:16px}
.lil-add-well{width:100%;box-sizing:border-box;padding:2px 0;border:0;border-radius:0;resize:vertical;font:400 16px/28px var(--type-text,'Caslon Text',Georgia,serif);color:#18231E;background:transparent repeating-linear-gradient(transparent 0 27px,rgba(24,35,30,.22) 27px 28px)}
.lil-add-pen:focus,.lil-add-well:focus{outline:none;border-bottom-color:#18231E;box-shadow:0 1px 0 #18231E}
.lil-add-discs{display:flex;flex-wrap:wrap;gap:4px}
.lil-add-discs button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;min-width:0!important;min-height:0!important;line-height:0;padding:0;border:0;border-radius:50%;background:none;cursor:pointer;opacity:.55}
.lil-add-discs button[aria-checked=true]{opacity:1;box-shadow:0 0 0 1.5px #18231E}
.lil-add-discs button:focus-visible,.lil-add-choices button:focus-visible{outline:2px solid #18231E;outline-offset:2px}
.lil-add-choices{display:flex;flex-wrap:wrap;gap:4px 16px}
.lil-add-choices button{background:none;border:0;padding:6px 0;min-height:32px;cursor:pointer;font:500 14px/1.2 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#5C5851}
.lil-add-choices button[aria-checked=true]{color:#18231E;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.lil-add-drop{width:100%;padding:12px 10px;border:1px dashed rgba(24,35,30,.4);border-radius:2px;background:transparent;cursor:pointer;font:400 14px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#5C5851}
.lil-add-prints{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.lil-add-print{position:relative;display:grid;gap:2px;width:64px}
.lil-add-print img{width:64px;height:48px;object-fit:cover;display:block}
.lil-add-print span{font:400 10px/1.3 var(--type-mono,'IBM Plex Mono',monospace);color:#5C5851;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lil-add-print button{position:absolute;top:2px;right:2px;width:20px;height:20px;padding:0;border:0;border-radius:50%;background:#EEE7D6;color:#18231E;cursor:pointer;font:500 14px/20px var(--type-sans,'Instrument Sans',Arial,sans-serif)}
.lil-add-error{margin:0;font:400 13px/1.4 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#8C2F2F}
.lil-add-needs{margin:0;font:400 13px/1.4 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#5B645C}
.lil-add-actions{display:flex;align-items:center;gap:20px}
.lil-add-publish{min-height:44px;padding:0 22px;border:0;border-radius:3px;background:#24382F;color:#EEE7D6;cursor:pointer;font:500 15px/1 var(--type-sans,'Instrument Sans',Arial,sans-serif)}
.lil-add-publish:disabled{opacity:.45;cursor:default}
.lil-add-publish:focus-visible{outline:2px solid #18231E;outline-offset:2px}
.lil-add-cancel{background:none;border:0;padding:8px 2px;cursor:pointer;font:500 15px/1 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#18231E;text-decoration:underline;text-decoration-color:rgba(24,35,30,.4);text-underline-offset:4px}
.lil-add-armed{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;font:400 16px/1.4 var(--type-text,'Caslon Text',Georgia,serif)}
@media (max-width:719.98px){.lil-add-slip{top:auto!important;left:8px!important;right:8px;bottom:8px;width:auto;max-height:72dvh}}
/* v2-C Seat B: L, the layers slip: three prints in a row, the chosen one ringed in ink, a notch down to its disc */
[data-desk] [data-desk-pop=layers]{padding:12px 14px 10px;overflow:visible}
[data-desk] [data-desk-pop=layers]::after{content:"";position:absolute;bottom:-6px;left:calc(var(--notch-x,50%) - 6px);width:12px;height:12px;background:inherit;background-color:#EEE7D6;transform:rotate(45deg);box-shadow:3px 3px 4px -2px rgba(24,35,30,.25)}
.lil-layers-slip{display:flex;flex-wrap:wrap;gap:12px}
.lil-layers-slip [data-satellite-unavailable]{flex:1 0 100%;margin:0;font:400 13px/1.4 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#5C5851;font-style:normal}
.lil-layers-slip button{display:grid;justify-items:center;gap:6px;background:none;border:0;padding:0;min-height:0;cursor:pointer;font:500 13px/1.2 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#18231E}
.lil-layers-slip button.is-current{font-weight:500}
.lil-layer-thumb{position:relative;display:block;width:64px;height:44px;overflow:hidden;border-radius:2px;box-shadow:0 0 0 1px rgba(24,35,30,.25)}
.lil-layer-thumb img,.lil-layer-thumb svg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:sepia(.25) saturate(.85) contrast(1.05)}
.lil-layer-thumb svg{filter:none}
.lil-layers-slip button[aria-pressed=true] .lil-layer-thumb{box-shadow:0 0 0 2px #EEE7D6,0 0 0 3.5px #18231E}
.lil-layers-slip button:focus-visible{outline:2px solid #18231E;outline-offset:4px;border-radius:2px}
/* v2-C Seat B: I, italics by cartographic convention: settlements roman, communities roman small caps,
   the search placeholder roman graphite; italic stays for water and for quotations and captions in stories */
.estate-label,.estate-label.leaflet-tooltip{font:400 14px/1.2 var(--type-text,'Libre Caslon Text',Georgia,serif)!important;font-style:normal!important;font-variant:small-caps;letter-spacing:.06em}
[data-desk] .lil-desk-pen [data-well],.lil-read-well{font-style:normal!important}
[data-desk] .lil-desk-pen [data-well]::placeholder,.lil-read-well::placeholder{font-style:normal;color:#5C5851;opacity:1}
.lil-desk-by{font-style:normal}
.lil-colophon-note{font-style:normal}
/* v2-C Seat B: S5 in the add-story slip: the category set (ring = in the set; ★ = primary; ☆ moves primary) */
.lil-add-disc{display:inline-grid;justify-items:center;gap:0}
.lil-add-discs .lil-add-disc>button[aria-pressed]:first-child{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;min-width:0!important;min-height:0!important;line-height:0;padding:0;border:0;border-radius:50%;background:none;cursor:pointer;opacity:.55}
.lil-add-discs .lil-add-disc>button[aria-pressed=true]:first-child{opacity:1;box-shadow:0 0 0 1.5px #18231E}
.lil-add-star{min-width:0!important;min-height:0!important;width:24px;height:20px;padding:0;border:0;background:none;cursor:pointer;font:400 14px/20px var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#5C5851}
.lil-add-star[aria-pressed=true]{color:#18231E;cursor:default}
.lil-add-star:disabled{opacity:1}
/* v2-C Seat B: S4, the category set under a record's title: disc + name, the primary first with ★ */
.lil-cat-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:6px 0 10px}
.lil-cat-chip{display:inline-flex;align-items:center;gap:6px;font:500 13px/1.2 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#18231E;letter-spacing:0;text-transform:none}
.lil-cat-chip~.lil-cat-chip{color:#5C5851}
.lil-cat-star{font-size:11px;color:#18231E;margin-left:-2px}

/* coll-ux */
/* CO3: every collector button reads at 4.5:1 or better, disabled included (no opacity fade; graphite carries "not now") */
.lil-cdesk-primary,.lil-cdesk-primary:hover,.lil-cdesk-primary:focus-visible{background:#24382F;color:#EEE7D6}
.lil-cdesk-primary:disabled{opacity:1;background:#5C5851;color:#EEE7D6}
.lil-cdesk-link:disabled{opacity:1;color:#5C5851}
/* CO2: the category set; the first chosen disc wears the ★, the chosen list lets ☆ move it */
.lil-cdesk-disc{position:relative}
.lil-cdesk-disc[data-primary=true]::after{content:"";position:absolute;top:-4px;right:-4px;width:16px;height:16px;border-radius:50%;background:#24382F;box-shadow:0 0 0 1.5px #EEE7D6;
  background:#24382F url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4.2l2.4 5 5.4.7-4 3.7 1 5.4-4.8-2.7-4.8 2.7 1-5.4-4-3.7 5.4-.7z' fill='%23EEE7D6'/%3E%3C/svg%3E") center/12px no-repeat}
ul.lil-cdesk-chosen{list-style:none;margin:6px 0 0;padding:0;display:grid}
.lil-cdesk-chosen-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}
.lil-cdesk-star{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0 -10px 0 0;padding:0;background:none;border:0;color:#18231E;cursor:pointer}
.lil-cdesk-star[aria-pressed=true]{cursor:default}
.lil-cdesk-star:focus-visible{outline:2px solid #18231E;outline-offset:-4px}
/* CO1: inputs on paper are pen lines (1 px ink underline, no fill, 44 px target); the story is a ruled well */
input.lil-cdesk-well,select.lil-cdesk-well{min-height:44px;padding:10px 0 8px;background:transparent;border:0;border-bottom:1px solid #18231E;border-radius:0}
select.lil-cdesk-well{appearance:none;-webkit-appearance:none;padding-right:26px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%2318231E' stroke-width='1.4'/%3E%3C/svg%3E") right 4px center/12px 8px no-repeat}
textarea.lil-cdesk-well{min-height:140px;padding:0 0 0;line-height:28px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 27px,rgba(24,35,30,.32) 27px,rgba(24,35,30,.32) 28px);border:0;border-bottom:1px solid #18231E;border-radius:0}
.lil-cdesk-well:focus,.lil-cdesk-well:focus-visible{outline:2px solid #18231E;outline-offset:3px}
/* CO4: readings and refusals print as graphite voice lines on paper, never as boxes or bare text on the map */
.lil-cdesk .lil-gps-reading{background:#EEE7D6;color:#5C5851;border:0;height:auto;min-height:28px;padding:2px 8px;border-radius:3px;font:400 12px/1.5 var(--type-mono)}
.lil-cdesk-voice,.lil-cdesk-text.lil-cdesk-voice{color:#5C5851;font-style:normal}
.lil-cdesk-voice[role=alert]{color:#18231E}

/* admin-ux */
/* A4: an empty table says so in graphite and offers the one action that fixes it */
.lil-adesk .admin-empty{display:grid;justify-items:start;gap:12px;padding:20px 16px}
.lil-adesk .admin-empty .admin-empty-voice{margin:0;color:#5C5851;font-size:1rem;line-height:1.5;max-width:46ch}
.lil-adesk .admin-empty .admin-empty-action{min-height:44px;display:inline-flex;align-items:center}
/* A1: sortable column headers; the ink caret points up for ascending order, down for descending */
.lil-adesk th button.admin-sort{min-height:44px;padding:0;display:inline-flex;align-items:center;gap:5px;font:inherit;letter-spacing:inherit;text-transform:inherit;color:#18231E}
.lil-adesk .admin-sort-caret{display:inline-flex}
.lil-adesk .admin-sort-caret[data-dir=asc]{transform:rotate(180deg)}
/* AD1: every field-green fill takes parchment text; 2613 inks any [style*=color] node, so the primary outranks it once */
.lil-adesk [data-paper] button[data-primary][style][type]:not(.x):not(.y){background:#24382F!important;color:#EEE7D6!important}
.lil-adesk [data-paper] button[data-primary][style][type]:not(.x):not(.y) *{color:#EEE7D6!important}
/* AD3: the community filter is a row on desktop, one printed choice opening a slip on a phone */
.admin-community-filter{position:relative}
.admin-community-choice{display:none!important}
@media(max-width:860px){
 .admin-community-choice{display:flex!important;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:44px;padding:0 2px!important;background:linear-gradient(#18231E,#18231E) left bottom/100% 1px no-repeat!important;border:0!important;font:500 14px "Instrument Sans",Arial,sans-serif!important;color:#18231E!important;cursor:pointer}
 .admin-community-filter .admin-community-row{display:none}
 .admin-community-filter[data-open=true] .admin-community-row{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:0;position:absolute;left:0;right:0;top:100%;z-index:20;max-height:50vh;overflow-y:auto;background:#EEE7D6;outline:1px solid #18231E;padding:4px 12px;margin:0}
 .admin-community-filter .admin-community-row .lil-adesk-link{min-height:44px;margin:0}
}
/* AD2: on paper a single-line input is a pen line (1 px ink underline, no fill, 44 px hit area); a textarea is a ruled well; a select a printed choice */
.lil-adesk [data-paper] input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=color]):not([type=range]),
.lil-adesk [data-paper] select{box-sizing:border-box;min-height:44px;width:100%;padding:0 2px!important;background-color:transparent!important;background-image:linear-gradient(#18231E,#18231E)!important;background-repeat:no-repeat!important;background-position:left bottom!important;background-size:100% 1px!important;border-radius:0!important;color:#18231E!important;font:400 16px "Instrument Sans",Arial,sans-serif!important}
.lil-adesk [data-paper] input::placeholder,.lil-adesk [data-paper] textarea::placeholder{color:#5C5851;opacity:1}
.lil-adesk [data-paper] select:not(.lil-adesk-select){-webkit-appearance:none;appearance:none;padding-right:26px!important;background-image:linear-gradient(#18231E,#18231E),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%2318231E' stroke-width='1.5'/%3E%3C/svg%3E")!important;background-repeat:no-repeat,no-repeat!important;background-position:left bottom,right 6px center!important;background-size:100% 1px,12px 8px!important}
.lil-adesk [data-paper] .lil-adesk-select{-webkit-appearance:none;appearance:none;padding-right:30px!important}
.lil-adesk [data-paper] textarea{box-sizing:border-box;width:100%;padding:0 6px!important;background-color:transparent!important;background-image:repeating-linear-gradient(transparent 0 27px,rgba(24,35,30,.4) 27px 28px)!important;background-attachment:local!important;border-radius:0!important;color:#18231E!important;font:400 16px/28px "Instrument Sans",Arial,sans-serif!important}
.lil-adesk [data-paper] input:focus-visible,.lil-adesk [data-paper] select:focus-visible,.lil-adesk [data-paper] textarea:focus-visible{outline:2px solid #18231E;outline-offset:2px}
/* AD4: import is a dashed "drop a CSV or KML file" field printed on the sheet */
.lil-adesk .admin-dropzone{background:transparent!important;border-radius:0!important;outline:1.5px dashed #18231E;outline-offset:-1px;min-height:120px}
.lil-adesk .admin-dropzone *{color:#18231E!important}
.lil-adesk [data-paper] a[download]{color:#18231E!important;text-decoration:underline;text-underline-offset:3px;min-height:44px;display:inline-flex;align-items:center}
/* AD5: export formats are printed choices, each with its mark; Export is the one primary */
.lil-adesk .admin-export-row{position:relative;grid-template-columns:44px 110px 1fr}
.lil-adesk .admin-export-row input{position:absolute;opacity:0;width:1px;height:1px;grid-row:auto}
.lil-adesk .admin-export-row::before{display:flex;align-items:center;justify-content:center;width:36px;height:36px;box-sizing:border-box;outline:1px solid #18231E;outline-offset:-1px;font:500 13px "IBM Plex Mono",monospace;color:#18231E}
.lil-adesk .admin-export-row[data-format=geojson]::before{content:"{ }"}
.lil-adesk .admin-export-row[data-format=csv]::before{content:"a,b"}
.lil-adesk .admin-export-row[data-format=kml]::before{content:"</>"}
.lil-adesk .admin-export-row[data-chosen=true]::before{background:#18231E;color:#EEE7D6}
.lil-adesk .admin-export-row[data-chosen=true] strong{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.lil-adesk .admin-export-row:focus-within{outline:2px solid #18231E;outline-offset:2px}
.lil-adesk .admin-export>button.admin-primary[data-primary]{min-height:44px;padding:0 24px;background:#24382F!important;color:#EEE7D6!important;border-radius:3px!important;font:500 14px "Instrument Sans",Arial,sans-serif!important;cursor:pointer}
@media(max-width:860px){.lil-adesk .admin-export-row{grid-template-columns:44px minmax(0,1fr);gap:2px 12px}.lil-adesk .admin-export-row::before{grid-row:1 / 3}.lil-adesk .admin-export-row>span{grid-column:2}}
@media(max-width:860px){.lil-adesk [data-paper] button.admin-community-choice[aria-haspopup]{background-image:linear-gradient(#18231E,#18231E)!important;background-repeat:no-repeat!important;background-position:left bottom!important;background-size:100% 1px!important}}
/* chair 17:05 (4): the community's name over its region is a printed label like the r2 frame's: Caslon small
   caps, letterspaced; over imagery parchment with a dark halo, on the chart ink with a parchment halo */
[data-desk] .estate-label.leaflet-tooltip{font:400 14px/1.2 var(--type-text)!important;font-variant-caps:small-caps!important;font-synthesis:small-caps!important;letter-spacing:.12em!important;
  color:#EEE7D6;text-shadow:none;-webkit-text-stroke:3px rgba(24,35,30,.8);paint-order:stroke fill}
[data-desk] [data-chart-layer=chart] .estate-label.leaflet-tooltip{color:#18231E;-webkit-text-stroke:3px #EEE7D6}
/* (2) the imagery warm-graded toward the r2 satellite frame: a light sepia, slightly desaturated */
[data-desk][data-ground=imagery] .lil-desk-map .leaflet-tile-pane{filter:sepia(.5) saturate(.62) brightness(1.2) contrast(1.02)!important}
/* v2 addendum 3: the nav is the brass seal (V4b, ported from media/v2/nav-pill/variants.html). A pill: a 2 px
   polished brass bezel round an oxidised, brushed brass ground; the words raised and polished bright. The chosen
   word is struck (sunken, debossed, one ring of light); a press sinks the word 2.5 px and springs back. The seal
   never changes state; each word owns its own. */
.lil-seal{--seal-brass:linear-gradient(180deg,#f6e2a4 0%,#cfa655 28%,#8f6926 58%,#c79d4f 82%,#6f5019 100%);
  display:inline-flex!important;padding:2px!important;border-radius:999px!important;background:var(--seal-brass)!important;box-shadow:0 3px 6px rgba(0,0,0,.5);height:auto!important;width:auto!important;cursor:default}
button.lil-seal{cursor:pointer}
.lil-seal-tr{position:relative;display:flex;align-items:center;border-radius:999px;
  background:linear-gradient(180deg,rgba(255,236,170,.10),rgba(0,0,0,.25)),repeating-linear-gradient(90deg,rgba(255,230,160,.05) 0 1px,transparent 1px 3px),linear-gradient(180deg,#6b5424,#4a3916 55%,#5d4a1f);
  box-shadow:inset 0 2px 4px rgba(0,0,0,.55),inset 0 -1px 0 rgba(255,236,170,.25)}
.lil-seal .lil-desk-nav,.lil-seal .lil-desk-lang{display:flex;align-items:center;gap:0;margin:0}
.lil-seal :is(.lil-desk-nav a,.lil-desk-lang button,.lil-adesk-concho-name,.lil-adesk-account button){position:relative;z-index:1;display:inline-flex;align-items:center;
  padding:7px 15px;border-radius:999px;border:0;background:none;color:transparent;text-decoration:none;cursor:pointer;transition:box-shadow .2s;font:inherit}
.lil-seal .lil-desk-lang button{padding:7px 5px}
.lil-seal .lil-desk-lang>.w{padding:0 1px}
.lil-seal .lil-desk-lang button:first-child{padding-left:15px}
.lil-seal .lil-desk-lang button:last-child{padding-right:15px}
button.lil-seal>.lil-seal-tr>.w{padding:6px 14px}
.lil-seal .w{display:block;font:600 14px/20px "Instrument Sans",Arial,sans-serif;letter-spacing:.02em;white-space:nowrap;
  background:linear-gradient(180deg,#fff4c8 0%,#e8c779 40%,#b8893a 60%,#f0d48e 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.65)) drop-shadow(0 -1px 0 rgba(255,244,200,.35));transition:transform .12s ease-out,filter .12s}
.lil-seal :is(a:not([aria-current]),button[aria-pressed=false]) .w{filter:drop-shadow(0 1px 0 rgba(0,0,0,.65)) drop-shadow(0 -1px 0 rgba(255,244,200,.35)) brightness(.86)}
.lil-seal a[aria-current]{background:radial-gradient(ellipse at 50% 60%,rgba(0,0,0,.28),rgba(0,0,0,.08) 70%);box-shadow:inset 0 2px 5px rgba(0,0,0,.7),inset 0 -1px 0 rgba(255,236,170,.35)}
.lil-seal a[aria-current] .w{filter:drop-shadow(0 -1px 0 rgba(0,0,0,.75)) drop-shadow(0 1px 0 rgba(255,244,200,.45))}
.lil-seal :is(.lil-desk-nav a,.lil-desk-lang button,.lil-adesk-account button,button.lil-seal){min-height:0!important;min-width:0!important}
button.lil-seal{min-height:0!important;min-width:0!important}
/* contrast (journal): the oxidised ground deepened and the polished letters kept bright, >= 4.5:1 */
.lil-seal-tr{background:linear-gradient(180deg,rgba(255,236,170,.08),rgba(0,0,0,.3)),repeating-linear-gradient(90deg,rgba(255,230,160,.05) 0 1px,transparent 1px 3px),linear-gradient(180deg,#4a3a17,#2f240d 55%,#3d3013)}
.lil-seal .w{background:linear-gradient(180deg,#fff6d2 0%,#f0d58e 40%,#d6aa5a 62%,#f6e0a4 100%);-webkit-background-clip:text;background-clip:text}
.lil-seal :is(a:not([aria-current]),button[aria-pressed=false]) .w{filter:drop-shadow(0 1px 0 rgba(0,0,0,.65)) drop-shadow(0 -1px 0 rgba(255,244,200,.35)) brightness(.94)}
/* addendum 3 correction: on the reading pages the seal is centred in the leather band above the sheet
   (band 72 px desktop, 64 px phone; measured), never overlapping it */
.lil-read .lil-read-column>.lil-seal{top:-55px!important}
@media (max-width:719px){.lil-read .lil-read-column>.lil-seal{top:-50px!important}}
.lil-adesk-concho.lil-seal{top:-55px}
@media (max-width:719px){.lil-adesk-concho.lil-seal{top:-51px}}
.lil-seal .lil-adesk-concho-name.w{background:linear-gradient(180deg,#fff6d2 0%,#f0d58e 40%,#d6aa5a 62%,#f6e0a4 100%);-webkit-background-clip:text;background-clip:text;padding:7px 15px}
.lil-seal .lil-adesk-concho-name.w{font:600 14px/20px "Instrument Sans",Arial,sans-serif!important;letter-spacing:.02em}

/* press */
/* the law's press (pass2 M5, subtle): only the pressed control responds: a 1 px sink and a slightly darker face for 120 ms, no overshoot; never the seal (its words respond alone) */
:is(button,[role=button],[data-primary],[data-text-link],[data-link-row],[data-brass],.lil-disc,.lil-desk-print-disc):not(.v4-inline-ref):not(.leaflet-marker-icon):not(.lil-read-body *):not(.lil-story-body *):not(.lil-seal):not(.lil-seal *){transition:transform .12s ease-out,filter .12s ease-out}
:is(button,[role=button],[data-primary],[data-text-link],[data-link-row],[data-brass],.lil-disc,.lil-desk-print-disc):not(.v4-inline-ref):not(.leaflet-marker-icon):not(.lil-read-body *):not(.lil-story-body *):not(.lil-seal):not(.lil-seal *):not(:disabled):active{transform:translateY(1px);filter:brightness(.94)}
@media(prefers-reduced-motion:reduce){:is(button,[role=button],[data-primary],[data-text-link],[data-link-row],[data-brass],.lil-disc,.lil-desk-print-disc):active{transform:none!important;transition:none!important}}
html[data-lod="0"] :is(button,[role=button],[data-primary],[data-text-link],[data-link-row],[data-brass],.lil-disc,.lil-desk-print-disc):active{transform:none}
/* sweep-1 Seat B: the design law on the reading and writing surfaces */
/* the editor: Title is a pen line; the source a ruled well (rules on the mirror, 13px on 21px lines, 12px inset); Publish reads while disabled */
[data-editor-title]{background:transparent!important;border:0!important;border-bottom:1px solid rgba(24,35,30,.45)!important;border-radius:0!important;padding:6px 0!important;min-height:44px;box-sizing:border-box;font:400 24px/1.25 var(--type-display,'Libre Caslon Display',Georgia,serif)!important;color:#18231E!important}
[data-editor-title]::placeholder{color:#5C5851;opacity:1}
[data-editor-title]:focus{outline:none!important;border-bottom-color:#18231E!important;box-shadow:0 1px 0 #18231E!important}
[data-editor=rules]{background:repeating-linear-gradient(to bottom,transparent 0 20px,rgba(24,35,30,.16) 20px 21px);background-origin:content-box;background-clip:content-box;background-attachment:local}
[data-editor=masthead] [data-primary]:disabled{opacity:1!important;background:transparent!important;color:#5C5851!important;box-shadow:inset 0 0 0 1px rgba(24,35,30,.4)!important}
/* the reading pages: roman by the italics law (ledes, card lines, glossary terms, accuracy grades, the atlas index's languages, the pencil) */
.lil-read-lede,.lil-read-card-line,.lil-read .lil-read-body strong,[data-content-page] h3,.lil-read .v4-accuracy strong,.lil-read .v4-accuracy-row *{font-style:normal!important}
[data-print=pencil]{font-style:normal!important}
/* the law's one italic exception: a pending title in the ledger is pencil, not yet inked */
.review-queue-row [data-print=pencil]{font-style:italic!important}
/* pen-line wells on paper: the atlas search, the invite fields, the editor slips' caption and credit */
[data-desk-read] [data-well],[data-atlas] [data-well],[data-route=invite] [data-well],[data-editor-slip] [data-well]{background:transparent!important;border:0!important;border-bottom:1px solid rgba(24,35,30,.45)!important;border-radius:0!important;min-height:44px;box-sizing:border-box;padding-left:0!important;padding-right:0!important}
[data-desk-read] [data-well]:focus,[data-atlas] [data-well]:focus,[data-route=invite] [data-well]:focus,[data-editor-slip] [data-well]:focus{outline:none!important;border-bottom-color:#18231E!important;box-shadow:0 1px 0 #18231E!important}
[data-editor-slip] [data-well]::placeholder{color:#5C5851;opacity:1}
[data-editor-slip] [data-primary]:disabled{opacity:.45;cursor:not-allowed}
/* /stories: the chosen filter is inked and underlined, never bold (one code with the communities filter) */
.lil-read-chips [data-link-row][aria-pressed=true]:not([data-category]){font-weight:400!important;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
/* /atlas: record labels as on the map, upright Instrument 500 12 on a parchment halo (law: map marks) */
.atlas-mark-label{font:500 12px/1 var(--type-sans,'Instrument Sans',Arial,sans-serif)!important;font-variant:normal!important;letter-spacing:0!important}
/* v2 S2: a third or more category rides an area's label disc as 5 px rim pips (S1's rule) */
.lil-area-disc{position:relative;display:inline-flex;flex:none}
.lil-area-pip{position:absolute;width:5px;height:5px;border-radius:50%;box-sizing:border-box;border:1px solid #EEE7D6}
/* S2 pips: clockwise from 12 o'clock on the 16 px label disc's rim (8 px radius), 54° apart; a fourth+ rings the third */
.lil-area-pips{position:absolute;inset:0;pointer-events:none}
.lil-area-pip:nth-child(1){left:5.5px;top:-2.5px}
.lil-area-pip:nth-child(2){left:12px;top:-.8px}
.lil-area-pip:nth-child(3){left:15.1px;top:5.0px}
.lil-area-pips[data-more] .lil-area-pip:nth-child(3){box-shadow:0 0 0 1px #18231E}
/* the seal's touch, in CSS on the word itself (no script): a press sinks the word 2.5 px and springs back
   (0.32 s); a word struck by aria-current flashes its ring once as it is struck */
.lil-seal .w{transition:transform .32s cubic-bezier(.3,1.4,.5,1),filter .12s}
.lil-seal :is(a,button):active .w,button.lil-seal:active .w{transform:translateY(2.5px);transition-duration:.06s}
.lil-seal a[aria-current]::before{content:"";position:absolute;inset:0;border-radius:999px;border:2px solid #ffe7a6;animation:lil-seal-stamp .55s ease-out forwards;pointer-events:none}
@media (prefers-reduced-motion:reduce){.lil-seal a[aria-current]::before{animation:none!important;opacity:0}.lil-seal .w{transition:none!important}}
html[data-reduced-motion] .lil-seal a[aria-current]::before{animation:none!important;opacity:0}
/* K2: the unsaved-map voice line sits on a parchment slip at the map's foot, estate outline left visible */
.lil-offline-grid.is-unsaved{background:none;align-items:flex-end;justify-content:flex-start;padding:0 16px 16px}
.lil-offline-grid.is-unsaved .lil-cdesk-voice{margin:0;padding:6px 10px;background:#EEE7D6;border-radius:3px;color:#5C5851;font-size:13px}

/* content-ed */
.lil-content-bar{display:flex;gap:16px;align-items:center;justify-content:space-between}
.lil-content-bar input{flex:1;max-width:420px}
.lil-content-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:10px 0 12px;border-top:1px solid #9E3E3C;font:400 14px/1.5 var(--type-text);color:#18231E}
.lil-content-confirm>span{flex:1 1 280px}
.lil-content-pager{display:flex;align-items:center;justify-content:flex-end;gap:16px}
.lil-md-slip{display:grid;gap:10px;padding:14px 16px}
.lil-md-slip-field{display:grid;gap:4px;font:600 11px/1.2 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#5C5851}
.lil-md-slip-field select,.lil-md-slip-field input,.lil-md-slip>.lil-md-slip-images input{box-sizing:border-box;width:100%;padding:8px 10px;border:0;border-radius:3px;background:rgba(24,35,30,.05);color:#18231E;font:400 14px/1.4 var(--type-text);letter-spacing:0;text-transform:none}
.lil-md-slip-images{display:flex;flex-wrap:wrap;gap:8px}
.lil-md-slip-images button{padding:0;border:0;background:rgba(24,35,30,.05);cursor:pointer;width:96px;height:72px;display:flex;align-items:center;justify-content:center}
.lil-md-slip-images button[aria-pressed=true]{outline:2px solid #18231E}
.lil-md-slip-images img{max-width:96px;max-height:72px;display:block}
.lil-md-slip-row{display:flex;gap:16px}
.lil-scene-card{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0 0 12px;padding:10px 14px;border:1px solid rgba(24,35,30,.22);border-radius:3px;background:rgba(24,35,30,.04);font:400 15px/1.4 var(--type-text)}
.lil-scene-card-label{font:600 11px/1.2 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#5C5851}
.lil-scene-card-meta{margin-left:auto;font:400 12px/1.5 var(--type-mono);color:#5C5851}
.lil-md-preview .lil-figure{margin:0 0 16px}
.lil-md-preview .lil-figure figcaption{font:italic 400 14px/1.45 var(--type-text);color:#18231E}
.lil-md-preview .lil-figure figcaption p{font:inherit!important;margin:0!important}
.lil-md-preview .lil-figure figcaption small{display:block;font:400 12px/1.5 var(--type-mono);font-style:normal;color:#5C5851}
.lil-content-empty{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:14px 0;font:400 14px/1.5 var(--type-text);color:#5C5851}
/* pass2-features */
.lil-read-column:has(.lil-feature){width:min(752px,calc(100% - 66px))}
.lil-feature{gap:32px}
.lil-feature-head{gap:16px}
.lil-kicker{display:block;font:600 11px/1.3 'Instrument Sans',Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#5C5851}
.lil-feature-title{margin:0;font:400 48px/1.1 var(--type-display);color:#18231E}
.lil-feature-deck{margin:0;font:400 20px/1.45 var(--type-text);color:#18231E}
.lil-byline{margin:0;font:400 12px/1.5 var(--type-mono);color:#5C5851}
.lil-lead{margin:8px -56px 0;display:grid;gap:8px}
.lil-lead img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.lil-lead figcaption{padding:0 56px;font:400 12px/1.5 var(--type-mono);color:#5C5851}
.lil-feature-body{max-width:640px;gap:22px}
.lil-feature-body p,.lil-feature-body li{font:400 19px/1.6 var(--type-text)!important}
.lil-feature-body.lil-drop>p:first-of-type::first-letter{float:left;font:400 64px/.85 var(--type-display);padding:6px 8px 0 0;color:#18231E}
.lil-feature-body blockquote{font:italic 400 28px/1.3 var(--type-display)!important;border:0!important;border-top:1px solid #18231E!important;border-bottom:1px solid #18231E!important;padding:22px 0!important;margin:12px 0!important}
.lil-feature-body blockquote p{font:inherit!important}
.lil-feature-body figure{margin:8px 0!important}
.lil-feature-body figure img{max-width:100%;height:auto}
.lil-feature-body figcaption{font:400 12px/1.5 var(--type-mono)!important;color:#5C5851!important}
.lil-lead-story{gap:10px;padding:24px 8px 28px}
.lil-lead-photo{display:block;width:calc(100% + 16px);margin:-24px -8px 8px;aspect-ratio:16/9;object-fit:cover}
.lil-lead-story .lil-read-entry-title{font-size:36px;line-height:1.15}
.lil-lead-story .lil-read-entry-standfirst{font:400 20px/1.45 var(--type-text);-webkit-line-clamp:4;line-clamp:4}
.lil-more{display:grid;gap:12px;border-top:1px solid #18231E;padding-top:16px}
.lil-more-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px}
.lil-more-item{display:grid;gap:6px;align-content:start;min-height:44px;text-decoration:none;color:#18231E}
.lil-more-title{font:400 20px/1.25 var(--type-display)}
.lil-more-item:hover .lil-more-title{text-decoration:underline}
.lil-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:24px 32px}
.lil-step{display:grid;grid-template-rows:auto auto auto 1fr;grid-template-columns:40px 1fr;column-gap:14px;row-gap:4px;border-top:1px solid rgba(24,35,30,.4);padding-top:14px}
.lil-step-mark{grid-row:1/5}
.lil-step-no{font:400 12px/1.5 var(--type-mono);color:#5C5851;grid-column:2}
.lil-step h3{margin:0;font:400 22px/1.2 var(--type-display);grid-column:2;color:#18231E}
.lil-step p{margin:0;font:400 17px/1.5 var(--type-text);grid-column:2}
.lil-slip{display:grid;gap:10px;justify-items:start;padding:20px 24px;background:#F6F0E0;border:1px dashed rgba(24,35,30,.45);border-radius:2px;max-width:420px}
.lil-slip-address{margin:0;font:400 16px/1.4 var(--type-mono);user-select:text;-webkit-user-select:text}
@media (max-width:719.98px){
  .lil-read-column:has(.lil-feature){width:calc(100% - 66px)}
  .lil-feature-title{font-size:32px}
  .lil-lead{margin:8px -20px 0}.lil-lead figcaption{padding:0 20px}
  .lil-feature-body p,.lil-feature-body li{font-size:18px!important}
  .lil-feature-body blockquote{font-size:24px!important}
  .lil-steps{grid-template-columns:1fr}
  .lil-lead-story .lil-read-entry-title{font-size:28px}
}
/* coll-2 */
.lil-offline-outline{display:block;width:100%;height:auto;max-height:140px;background:#F1ECDD;border:1px solid #D9D2BE;border-radius:3px}
.lil-offline-progress{position:relative;display:flex;align-items:center;gap:10px;min-height:44px}
.lil-offline-bar{display:block;height:6px;background:#2F5D3A;border-radius:3px;transition:width .2s}
.lil-offline-map .lil-cdesk-choices{display:flex;gap:16px;flex-wrap:wrap}
.lil-offline-map .lil-cdesk-link[aria-pressed=true]{box-shadow:inset 0 -2px 0 #18231E}
.lil-offline-map .lil-cdesk-link:disabled[aria-pressed=false]{opacity:1;color:#5C5851}
/* K1: the r2 frame's map is ~320 px, then the sheet begins above the fold */
.lil-cdesk-map{height:min(38vh,320px)}
/* K1: the governed tags run in wrapped rows, as the frame's chips do */
[data-route=collect-story] .lil-cdesk-field>.lil-cdesk-choices{display:flex;flex-flow:row wrap;gap:0 16px}
[data-route=collect-story] .lil-cdesk-field>.lil-cdesk-choices .lil-cdesk-link{width:auto}
.lil-voice{color:#5C5851}
.lil-feature-title,.lil-feature-deck,.lil-more-title,.lil-read-entry-title{overflow-wrap:anywhere;hyphens:auto}
.lil-feature{min-width:0}
/* pass2 M2: the instrument discs stand in a column at the map's bottom-right, 16 px inside the neatline,
   each a separate brass fixture with its own shadow (no tray); the layers slip sits beside its disc */
[data-desk] .lil-desk-instruments{position:absolute;z-index:30;display:flex;flex-direction:column;gap:8px}
[data-desk] .lil-desk-instruments>[data-brass=disc]{filter:drop-shadow(0 2px 2px rgba(0,0,0,.45))}
[data-desk] [data-desk-pop=layers]::after{bottom:auto;left:auto;right:-6px;top:calc(var(--notch-y,50%) - 6px)}
html:is([data-lod="2"],[data-lod="3"]) [data-sprite="disc-help"]{background-image:-webkit-image-set(url(/assets/brass/disc-help@2x.webp) 2x,url(/assets/brass/disc-help@3x.webp) 3x)!important;background-image:image-set(url(/assets/brass/disc-help@2x.webp) 2x,url(/assets/brass/disc-help@3x.webp) 3x)!important}
/* pass2 M3: the help slip shows the marks; captions name them */
.lil-help{display:grid;gap:8px;padding:12px 16px;min-width:260px}
.lil-help .lil-key-tier{margin:0}
.lil-help dl{margin:0;display:grid;gap:6px}
.lil-help-row{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:10px}
.lil-help-row dt{display:flex;align-items:center;justify-content:center;min-height:28px}
.lil-help-row dd{margin:0;font:500 13px/1.3 "Instrument Sans",Arial,sans-serif;color:#18231E}
.lil-help-loupe{display:block;width:24px;height:24px;border-radius:50%;box-sizing:border-box;border:3px solid #C9A04F;
  background:radial-gradient(circle at 40% 40%,#6d7a4c,#2f3a24);box-shadow:inset 0 0 0 1px #7a5a22,0 1px 2px rgba(0,0,0,.4)}
/* the credits line keeps clear of the disc column */
[data-desk] .lil-desk-map .v4-credits{right:68px!important;max-width:min(420px,calc(100% - 84px))}
@media (max-width:719px){
  [data-desk] .lil-desk-top{top:68px!important}
  [data-desk] .lil-desk-map .v4-scale{right:auto!important;left:12px;bottom:52px!important}
}
@media (max-width:719px){[data-desk] [data-desk-pop=help]{left:36px}[data-desk] .lil-help{min-width:0}}
/* pass2 M4: the count line prints at the key's foot, under a hairline (Plex Mono 12) */
.lil-key-count{margin:6px 0 0;padding-top:6px;border-top:0;background:linear-gradient(rgba(24,35,30,.3),rgba(24,35,30,.3)) top/100% 1px no-repeat;font:400 12px/18px var(--type-mono);color:#5C5851;white-space:normal;font-variant-numeric:tabular-nums;min-width:34ch}
/* pass2 M5: on the seal only the pressed word responds: it darkens slightly for 120 ms. No ring flash,
   nothing moves, the seal itself never changes */
.lil-seal .w{transition:filter .12s ease-out}
.lil-seal :is(a,button):active .w,button.lil-seal:active .w{filter:drop-shadow(0 1px 0 rgba(0,0,0,.65)) brightness(.78)}
/* pass2 Seat B: R1, Stories: printed dropdowns, sort, removable chips, rich entries, pages of 12 */
.lil-stories-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:-8px}
.lil-dd{position:relative}
.lil-dd-btn{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0;background:none;border:0;border-bottom:1px solid rgba(24,35,30,.45);cursor:pointer;font:500 15px/1.2 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#18231E}
.lil-dd-btn[aria-expanded=true]{border-bottom-color:#18231E}
.lil-dd-caret{font-size:11px;color:#5C5851}
.lil-dd-slip{position:absolute;left:0;top:calc(100% + 6px);z-index:50;min-width:260px;max-width:min(360px,calc(100vw - 48px));max-height:360px;overflow:auto;padding:12px 14px;background:#EEE7D6;border-radius:2px;box-shadow:0 6px 20px rgba(24,35,30,.28);display:grid;gap:8px}
.lil-dd-search{width:100%;box-sizing:border-box;min-height:40px;padding:4px 0;background:transparent;border:0;border-bottom:1px solid rgba(24,35,30,.45);font:400 15px/1.3 var(--type-text,'Caslon Text',Georgia,serif);color:#18231E}
.lil-dd-search:focus{outline:none;border-bottom-color:#18231E;box-shadow:0 1px 0 #18231E}
.lil-dd-options{display:grid}
.lil-dd-option{display:flex;align-items:center;gap:8px;min-height:36px;padding:0 4px;background:none;border:0;border-radius:2px;cursor:pointer;text-align:left;font:500 14px/1.25 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#5C5851}
.lil-dd-option[aria-pressed=true]{color:#18231E}
.lil-dd-option[aria-pressed=true]::after{content:"✓";margin-left:auto;padding-left:12px;color:#18231E;font-size:13px}
.lil-dd-option[data-category][aria-pressed=false] .lil-disc{opacity:.4}
.lil-dd-option:hover{background:rgba(24,35,30,.06)}
.lil-stories-sort{display:inline-flex;align-items:center;gap:4px 14px;margin-left:auto}
.lil-stories-sort button,.lil-pager button{background:none;border:0;cursor:pointer;min-height:36px;padding:0 2px;font:500 14px/1 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#5C5851}
.lil-stories-sort button[aria-pressed=true],.lil-pager button[aria-current=page]{color:#18231E;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.lil-stories-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:-12px}
.lil-chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;background:transparent;border:1px solid rgba(24,35,30,.3);border-radius:16px;cursor:pointer;font:500 13px/1 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#18231E}
.lil-chip>span:last-child{color:#5C5851;font-size:15px}
.lil-entries{display:grid;border-top:1px solid rgba(24,35,30,.18)}
.lil-entry{display:grid;grid-template-columns:24px 1fr auto;gap:4px 16px;align-items:start;padding:18px 8px;margin:0 -8px;border-bottom:1px solid rgba(24,35,30,.18);border-radius:2px;color:#18231E;text-decoration:none;outline:1px solid transparent;transition:outline-color var(--feedback) linear,background-color var(--feedback) linear}
.lil-entry:hover{background:rgba(24,35,30,.04);outline-color:rgba(24,35,30,.3)}
.lil-entry:focus-visible{outline:2px solid #18231E}
.lil-entry-disc{padding-top:6px;line-height:0}
.lil-entry-text{display:grid;gap:4px;min-width:0}
.lil-entry-title{margin:0;font:400 22px/1.2 var(--type-display,'Libre Caslon Display',Georgia,serif);color:#18231E}
.lil-entry-standfirst{font:400 16px/1.45 var(--type-text,'Caslon Text',Georgia,serif);color:#18231E;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}
.lil-entry-print{width:112px;height:84px;object-fit:cover;display:block}
.lil-pager{display:flex;align-items:center;justify-content:center;gap:6px 12px;padding-top:4px}
.lil-pager button[disabled]{opacity:.35;cursor:default}
.lil-pager-gap{color:#5C5851;font:500 14px/1 var(--type-sans,'Instrument Sans',Arial,sans-serif)}
@media (max-width:719.98px){.lil-stories-sort{margin-left:0}.lil-entry{grid-template-columns:20px 1fr 56px;gap:4px 10px}.lil-entry-print{width:56px;height:42px}.lil-entry-title{font-size:19px}.lil-entry-standfirst{font-size:15px}}
/* pass2 Seat B: R2, Communities as an atlas index: a row per community led by its locator (the estate on a tiny chart) */
.lil-index{display:grid;border-top:1px solid rgba(24,35,30,.18)}
.lil-index-row{display:grid;grid-template-columns:128px 1fr auto;gap:6px 24px;align-items:center;padding:18px 8px;margin:0 -8px;border-bottom:1px solid rgba(24,35,30,.18);border-radius:2px;color:#18231E;text-decoration:none;outline:1px solid transparent;transition:outline-color var(--feedback) linear,background-color var(--feedback) linear}
.lil-index-row:hover{background:rgba(24,35,30,.04);outline-color:rgba(24,35,30,.3)}
.lil-index-row:focus-visible{outline:2px solid #18231E}
.lil-locator{width:128px;height:88px;display:block;box-shadow:0 0 0 1px rgba(24,35,30,.18)}
.lil-index-text{display:grid;gap:4px;min-width:0}
.lil-index-name{margin:0;font:400 24px/1.2 var(--type-display,'Libre Caslon Display',Georgia,serif);color:#18231E}
.lil-index-line{font:400 16px/1.45 var(--type-text,'Caslon Text',Georgia,serif);color:#18231E;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lil-index-count{display:grid;justify-items:end;gap:2px;min-width:56px}
.lil-index-count b{font:400 28px/1 var(--type-display,'Libre Caslon Display',Georgia,serif);color:#18231E}
.lil-index-count span{font:600 11px/1.2 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#5C5851}
@media (max-width:719.98px){.lil-index-row{grid-template-columns:88px 1fr;gap:4px 14px;align-items:start}.lil-locator{width:88px;height:60px}.lil-index-count{grid-column:2;justify-items:start;display:flex;align-items:baseline;gap:6px}.lil-index-count b{font-size:18px}.lil-index-name{font-size:20px}.lil-index-line{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}}
/* pass2 Seat B: R3, the atlas plate: the record the loupe shows is inked, the rest dimmed (highlight by dimming) */
[data-plate] .atlas-mark-label{transition:opacity var(--feedback) linear}
[data-plate] .atlas-mark-label:not([data-current]){opacity:.45}
[data-plate] .atlas-mark-label[data-current]{opacity:1;font-weight:600!important}
[data-plate] .leaflet-marker-icon.atlas-mark-icon{cursor:pointer}
/* closure law: the key's empty state, a graphite voice line with its fix */
.lil-key-voice{margin:4px 0 0;font:400 12px/18px "Instrument Sans",Arial,sans-serif;color:#5C5851;max-width:240px}
.lil-key-voice .lil-key-all{font-size:12px;text-decoration:underline;text-underline-offset:2px}
.lil-help:focus{outline:none}
/* closure law (overflow): on short phones the disc column wraps into a second column to its left
   rather than climbing under the top slip */
@media (max-width:719px){[data-desk] .lil-desk-instruments{flex-wrap:wrap-reverse;align-content:flex-end;max-height:calc(100% - 200px);column-gap:8px}}
.lil-key-voice{color:#5C5851!important}
/* closure law (overflow at 320 px): the top slip fits the map; when the disc column wraps, the help and
   key slips lie over the map's width above the discs (Close, Esc and a click outside close them) */
@media (max-width:360px){
  [data-desk] .lil-desk-top .lil-desk-wordmark{font-size:18px!important}
  [data-desk] .lil-desk-top .lil-desk-top-head{gap:6px}
  [data-desk] .lil-desk-top-head [data-primary]{padding:0 10px!important;font-size:13px}
  [data-desk] .lil-desk-top .lil-desk-print-disc{width:32px;height:32px}
  [data-desk] :is([data-desk-pop=help],[data-desk-pop=key]){left:12px!important;right:64px!important}
  [data-desk] .lil-help{padding:10px 12px}[data-desk] .lil-help-row{grid-template-columns:40px 1fr;gap:8px}[data-desk] .lil-help-row dt svg{width:38px}
}
/* e2e 8: the colophon's voice line, its own line, never clipped; empty takes no room */
.lil-colophon-note{margin:-6px 0 0;min-height:0;font:400 13px/1.4 var(--type-sans,'Instrument Sans',Arial,sans-serif)!important;font-style:normal;color:#5C5851}
.lil-colophon-note:empty{margin:-12px 0 0;height:0}
.lil-slip{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:0;background:none;border:0;max-width:none}
.lil-contact-button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border:1.5px solid #18231E;border-radius:3px;font:500 14px/1 'Instrument Sans',Arial,sans-serif;color:#18231E;text-decoration:none}
.lil-contact-button:hover{background:rgba(24,35,30,.06)}
.lil-contact-button:focus-visible{outline:2px solid #18231E;outline-offset:2px}
.lil-slip-address{margin:0}
.lil-more-item .lil-kicker{min-height:1.3em}
/* stitch: a saddle stitch sewn into the leather 5 px inside the gilt fillet, all round (rung >= 2 only):
   5 px thread stitches 4 px apart, 1.5 px, #C9B98F at 55 %, each over a 1 px darker shadow below */
html:is([data-lod="2"],[data-lod="3"]) [data-fillet]::before,
html:is([data-lod="2"],[data-lod="3"]) [data-fillet]::after{content:"";position:absolute;inset:7.5px;pointer-events:none;
  --st:repeating-linear-gradient(90deg,var(--th) 0 5px,transparent 5px 9px);--sv:repeating-linear-gradient(180deg,var(--th) 0 5px,transparent 5px 9px);
  background:var(--st) left top/100% 1.5px no-repeat,var(--st) left bottom/100% 1.5px no-repeat,
             var(--sv) left top/1.5px 100% no-repeat,var(--sv) right top/1.5px 100% no-repeat}
html:is([data-lod="2"],[data-lod="3"]) [data-fillet]::before{--th:rgba(8,16,12,.55);transform:translateY(1px)}
html:is([data-lod="2"],[data-lod="3"]) [data-fillet]::after{--th:rgba(201,185,143,.55)}
/* help is how to use the map: six printed steps, each beside its control drawn small */
.lil-help-steps{margin:0;padding:0;list-style:none;display:grid;gap:8px;max-width:340px}
.lil-help-steps li{display:grid;grid-template-columns:84px 1fr;align-items:center;gap:10px;font:500 13px/1.35 "Instrument Sans",Arial,sans-serif;color:#18231E}
.lil-help-ctl{display:flex;align-items:center;justify-content:center;gap:3px;min-height:24px}
.lil-help-pen{justify-content:flex-start;width:56px;margin:0 auto;padding-bottom:2px;background:linear-gradient(#18231E,#18231E) left bottom/100% 1px no-repeat}
.lil-help-mini{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#f2dc9c,#c9a04f 55%,#8a6a2a);box-shadow:0 1px 2px rgba(0,0,0,.4)}
.lil-help-primary{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;border-radius:3px;background:#24382F;color:#EEE7D6;font:600 13px/1 "Instrument Sans",Arial,sans-serif}
.lil-help-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:18px;padding:0 3px;border:1px solid rgba(24,35,30,.5);border-radius:3px;font:400 11px/1 var(--type-mono);color:#18231E}
/* foldable overlays: a printed fold mark in each overlay's corner; folded, the overlay is a small tab
   on its edge naming it. The fold runs 240 ms from the overlay's corner; none under reduced motion */
[data-desk] [data-desk-slip]{transform-origin:top left}
[data-desk] [data-desk-slip=key]{transform-origin:bottom left}
[data-desk] [data-desk-slip=record]{transform-origin:top right}
[data-desk] [data-desk-slip]>.lil-fold-btn{position:absolute;top:4px;right:4px;z-index:2;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;
  padding:0;border:0;background:none;border-radius:3px;color:#5C5851;font:500 16px/1 "Instrument Sans",Arial,sans-serif;cursor:pointer}
[data-desk] [data-desk-slip]>.lil-fold-btn:hover{color:#18231E;background:rgba(24,35,30,.06)}
[data-desk] [data-desk-slip]>.lil-fold-btn:focus-visible,.lil-fold-tab:focus-visible{outline:2px solid #18231E;outline-offset:1px}
[data-desk] [data-desk-slip][data-folded=true]{width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;padding:0!important;overflow:visible!important}
[data-desk] [data-desk-slip][data-folded=true]>:not(.lil-fold-tab){display:none!important}
[data-desk] [data-desk-slip][data-folded=true],[data-desk] [data-desk-slip]:not([data-folded=true]){animation:lil-fold .24s ease-out}
.lil-fold-tab{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 12px;border:0;background:none;cursor:pointer;color:#18231E;
  font:400 15px/1 var(--type-display);white-space:nowrap}
[data-desk-slip=key] .lil-fold-tab,[data-desk-slip=record] .lil-fold-tab{font:600 11px/1 "Instrument Sans",Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
[data-desk-slip=record] .lil-fold-tab{text-transform:none;letter-spacing:0;font:400 15px/1 var(--type-display)}
.lil-fold-chev{font-size:10px;color:#5C5851}
@keyframes lil-fold{from{opacity:.4;transform:scale(.96)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){[data-desk] [data-desk-slip]{animation:none!important}}
html[data-reduced-motion] [data-desk] [data-desk-slip]{animation:none!important}
[data-desk] [data-desk-slip=key]:not([data-folded=true]) .lil-key-head{padding-right:20px}
[data-desk] [data-desk-slip=key]>.lil-fold-btn{top:10px;right:10px}
[data-desk] [data-desk-slip=record]>.lil-fold-btn{left:6px;right:auto;top:6px}
[data-desk] [data-desk-slip=record][data-folded=true]{top:72px!important;bottom:auto!important;left:auto!important}
[data-desk] [data-desk-slip]>.lil-fold-btn{font:500 12px/1 "Instrument Sans",Arial,sans-serif}
/* 20:15: the estate slip, a printed slip at the click on a community's estate */
.lil-estate-slip{position:fixed;z-index:60;box-sizing:border-box;width:272px;padding:14px 16px 12px;background:#EEE7D6;border-radius:2px;box-shadow:0 6px 20px rgba(24,35,30,.3);color:#18231E;display:grid;gap:6px}
.lil-estate-slip h3{margin:0;font:400 20px/1.2 var(--type-display,'Libre Caslon Display',Georgia,serif)}
.lil-estate-count{margin:0;font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#5C5851}
.lil-estate-count b{font:400 22px/1 var(--type-display,'Libre Caslon Display',Georgia,serif);letter-spacing:0;color:#18231E;vertical-align:-2px}
.lil-estate-actions{display:flex;flex-wrap:wrap;gap:4px 18px}
.lil-estate-link{display:inline-flex;align-items:center;min-height:36px;font:500 14px/1.2 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#18231E;text-decoration:underline;text-decoration-color:rgba(24,35,30,.45);text-underline-offset:4px}
/* 20:15 item 3: dropdown entries carry no underline (the key's link cue doesn't apply here); the chosen ones get an ink check */
.lil-dd-option,.lil-dd-option *,.lil-dd-option:hover{text-decoration:none!important;outline:none}
.lil-dd-option:focus-visible{outline:2px solid #18231E!important;outline-offset:0}
/* e2e 8: the colophon's voice line, its own line, never clipped; empty takes no room */
.lil-colophon-note{margin:-6px 0 0;min-height:0;font:400 13px/1.4 var(--type-sans,'Instrument Sans',Arial,sans-serif)!important;font-style:normal;color:#5C5851}
.lil-colophon-note:empty{margin:-12px 0 0;height:0}
.lil-slip{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;padding:0;background:none;border:0;max-width:none}
.lil-contact-button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border:1.5px solid #18231E;border-radius:3px;font:500 14px/1 'Instrument Sans',Arial,sans-serif;color:#18231E;text-decoration:none}
.lil-contact-button:hover{background:rgba(24,35,30,.06)}
.lil-contact-button:focus-visible{outline:2px solid #18231E;outline-offset:2px}
.lil-slip-address{margin:0}
.lil-more-item .lil-kicker{min-height:1.3em}
/* Junk 20:00: while a story or record is open, everything that floats over the map fades out (the seal,
   the Menu pill, the disc stack; on phone also the top slip and key), leaving the story and its chart
   clean; all of it returns when the story closes. 200 ms, none under reduced motion */
[data-desk] :is(.lil-seal,[data-instruments],[data-desk-slip=top],[data-desk-slip=key]),
body .lil-seal{transition:opacity .2s ease-out}
[data-desk][data-record-open=true] :is(.lil-seal,[data-instruments]),
body:has(.lil-story-body) .lil-seal{opacity:0!important;pointer-events:none!important;visibility:hidden;transition:opacity .2s ease-out,visibility 0s .2s}
@media (max-width:719px){[data-desk][data-record-open=true] :is([data-desk-slip=top],[data-desk-slip=key]){opacity:0!important;pointer-events:none!important;visibility:hidden;transition:opacity .2s ease-out,visibility 0s .2s}}
@media (prefers-reduced-motion:reduce){[data-desk] :is(.lil-seal,[data-instruments],[data-desk-slip]),body .lil-seal{transition:none!important}}
/* the locate disc's failure: a graphite voice line on a parchment slip beside the disc column */
[data-desk] .lil-locate-voice{position:absolute;right:52px;bottom:120px;margin:0;width:max-content;max-width:220px;padding:6px 10px;
  background:#EEE7D6;border-radius:2px;box-shadow:0 1px 3px rgba(0,0,0,.3);font:400 13px/1.35 "Instrument Sans",Arial,sans-serif;color:#5C5851}
/* 20:20: the shared dropdown on the admin paper keeps its own pen line and lift (admin's input and paper rules don't reach it) */
.lil-dd .lil-dd-slip{box-shadow:0 6px 20px rgba(24,35,30,.3)!important;background:#EEE7D6!important}
.lil-dd .lil-dd-search,.lil-dd .lil-dd-search:focus,.lil-dd .lil-dd-search:focus-visible{outline:none!important;border:0!important;border-bottom:1px solid rgba(24,35,30,.45)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:4px 0!important}
.lil-dd .lil-dd-search:focus{border-bottom-color:#18231E!important;box-shadow:0 1px 0 #18231E!important}
/* 20:20: the table pager (the /stories pager under a table, the count as a value) */
.lil-table-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:12px 0}
.lil-table-pager .lil-pager{padding:0}
/* coll-2: state marks, consent act, sync mark */
.lil-state-mark{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-right:8px;vertical-align:-3px;flex:none}
.lil-state-mark.is-missing{border:1.5px solid #5C5851;border-radius:50%;box-sizing:border-box}
.lil-sync-mark{display:flex;align-items:center;gap:6px;color:#5C5851}
.lil-cdesk-summary dt{display:flex;align-items:center}
.lil-cdesk-summary dt .lil-cdesk-link{font:inherit;text-transform:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}
/* coll-2: Story tab groups */
.lil-story-group{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #D9D2BE}
.lil-group-head{border-bottom:1px solid #18231E;padding-bottom:6px}
.lil-marker-preview{display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 0}
.lil-marker-disc{display:inline-flex;flex:none}
.lil-marker-disc.is-empty{width:36px;height:36px;border:1.5px dashed #5C5851;border-radius:50%;box-sizing:border-box}
.lil-marker-slip{font:500 12px/1.15 "Instrument Sans",Arial,sans-serif;color:#18231E;background:none;padding:0 2px;border:0;text-shadow:0 0 2px #EFE8D6,0 0 2px #EFE8D6,0 0 3px #EFE8D6;overflow-wrap:anywhere}
.lil-title-preview{font:400 26px/1.15 "Libre Caslon Display","Libre Caslon Text",Georgia,serif;color:#18231E;margin:6px 0;overflow-wrap:anywhere}
.lil-offline-live{height:180px;overflow:hidden;pointer-events:none}
/* trails: every stop is a link (pointer, focus ring); the route line between stops isn't */
.lil-stop{cursor:pointer}
.lil-stop:focus-visible{outline:2px solid #18231E;outline-offset:2px}
.lil-stop:hover:not([data-current]){border-color:#18231E;color:#18231E}
/* R4: the trail bar at the column's head, and the trail's numbers (the stop mark, one code) */
.lil-trail-bar{display:grid;gap:6px;padding:10px 36px 12px 44px;border-bottom:1px solid rgba(24,35,30,.18);background:#EEE7D6;position:relative;z-index:1}
.lil-trail-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.lil-trail-name{font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#18231E}
.lil-trail-stop{font:400 12px/1.3 var(--type-mono,'IBM Plex Mono',monospace);color:#5C5851;white-space:nowrap}
.lil-trail-voice{margin:0;font:400 13px/1.4 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#5C5851}
.lil-trail-steps{display:flex;justify-content:space-between;gap:12px}
.lil-trail-steps button,.lil-trail-back{background:none;border:0;padding:0;min-height:36px;cursor:pointer;font:500 14px/1.2 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#18231E;text-decoration:underline;text-decoration-color:rgba(24,35,30,.4);text-underline-offset:4px}
.lil-trail-steps button:disabled{color:#5C5851;opacity:.5;text-decoration:none;cursor:default}
.lil-trail-n{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid #5C5851;box-sizing:border-box;font:500 11px/1 var(--type-mono,'IBM Plex Mono',monospace);color:#5C5851;flex:none}
@media (max-width:719.98px){.lil-trail-bar{padding:8px 20px 10px 28px}}
/* overflow: each trail control keeps one line; the community name ellipsises (full text in title and aria-label) */
.lil-trail-steps>*{white-space:nowrap;flex:none}
.lil-trail-steps>.lil-trail-back{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:36px}
@media (max-width:719.98px){.lil-trail-word{display:none}}
/* carousel: one photograph at a time, flush 4:3; dots and a count under it; no glyphs over the image */
.lil-carousel{margin:0 0 20px;outline:none}.lil-carousel:focus-visible{outline:2px solid #18231E;outline-offset:2px}
.lil-carousel-frame{width:100%;aspect-ratio:4/3;overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none;background:#e8e6dd;cursor:pointer}
.lil-carousel-track{display:flex;height:100%;transition:transform 250ms ease}
.lil-carousel-track img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;display:block;-webkit-user-drag:none;pointer-events:none}
.lil-carousel-pager{display:flex;align-items:center;gap:8px;padding:8px 0 0}
.lil-carousel-pager button{background:none;border:0;padding:0 6px;min-width:28px;min-height:28px;font:400 20px/1 var(--type-mono,'IBM Plex Mono',monospace);color:#18231E;cursor:pointer}
.lil-carousel-pager button:disabled{color:#5C5851;opacity:.4;cursor:default}
.lil-carousel-dots{display:flex;gap:8px;align-items:center}
.lil-carousel-dots i{display:block;width:8px;height:8px;border-radius:50%;background:#8A877F;cursor:pointer}
.lil-carousel-dots i[data-current=true]{background:#18231E}
.lil-carousel-pager .lil-media-time{margin-left:auto}
.lil-carousel figcaption{margin-top:6px;font:11.5px/1.4 var(--v4-mono,'IBM Plex Mono',monospace);color:#5C5851}
@media (prefers-reduced-motion:reduce){.lil-carousel-track{transition:none}}

/* collector links: the press is a 1px sink and a slightly darker face while held, never a lingering fill */
.lil-cdesk-link:hover{background:none;outline-color:transparent}
.lil-cdesk-link:active{background:rgba(24,35,30,.10)}
.lil-cdesk-link:focus:not(:focus-visible){outline-color:transparent}
.lil-cdesk-link[aria-disabled=true]{color:#5C5851;cursor:not-allowed}
/* admin polish: the slip's outcome block, the pager at the table's right edge */
.lil-adesk-outcome{display:grid;gap:8px;margin:12px 0}
.lil-adesk-quote{margin:0;padding-left:12px;border-left:2px solid #5C5851;font-family:'Libre Caslon Text',Georgia,serif;font-style:italic}
.lil-adesk-outcome .lil-adesk-link{justify-self:start}
.lil-table-pager{width:100%;box-sizing:border-box}
.lil-table-pager .lil-pager{margin-left:auto;justify-content:flex-end}
.lil-adesk [data-paper] .lil-adesk-outcome .lil-adesk-quote{margin:0!important;padding:0 0 0 12px!important;border:0!important;box-shadow:inset 2px 0 0 #5C5851!important;font:italic 400 16px/1.45 'Libre Caslon Text',Georgia,serif!important;color:#18231E!important}
.lil-adesk-outcome .lil-adesk-quote{position:relative}
.lil-adesk-outcome .lil-adesk-quote:before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:2px;background:#5C5851}

.lil-offline-saved{display:flex;gap:16px;align-items:stretch}
.lil-offline-open{flex:1 1 55%;min-width:0;padding:0;margin:0;background:none;border:0;cursor:pointer;display:block}
.lil-offline-open .lil-offline-live{background:#F1ECDD;border:1px solid #D9D2BE;border-radius:3px}
.lil-offline-values{flex:1 1 40%;margin:0;display:grid;grid-template-columns:auto;align-content:center;gap:0}
.lil-offline-values dt{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#5C5851}
.lil-offline-values dd{margin:0 0 8px;color:#18231E}
/* the saved imagery's credit (CC BY 4.0): graphite, small, wherever the saved map is drawn */
.lil-offline-credit{margin:4px 0 0;font-size:11px;line-height:1.35;color:#5C5851}
.lil-offline-live .leaflet-container,.lil-offline-live{background:#F1ECDD}

.lil-offline-map .lil-cdesk-row{justify-content:flex-end}
.lil-clash{margin:6px 0 0;grid-column:1/-1;font:normal 14px/1.4 'Caslon Text',Georgia,serif;color:#5B645C}
.lil-clash button{background:none;border:0;padding:8px 2px;margin-left:12px;cursor:pointer;font:500 14px/1 var(--type-sans,'Instrument Sans',Arial,sans-serif);font-style:normal;color:#18231E;text-decoration:underline;text-decoration-color:rgba(24,35,30,.4);text-underline-offset:4px}

/* iOS mechanics (seal-ios-app Precedence; ios-interactions.md 1, 4, 5): root never rubber-bands,
   every control keeps a 44 x 44 hit area on phones without changing the printed look. */
html, body { overscroll-behavior: none; }
@media (max-width: 500px) {
  :where(button, a[href], [role=button], summary) { position: relative; }
  :where(button, a[href], [role=button], summary):not(.leaflet-marker-icon, [data-coach], [data-active], .admin-export-row, [data-fillet], .lil-seal a[aria-current])::before {
    content: ""; position: absolute; inset: min(0px, calc((100% - 44px) / 2));
  }
  /* the pager's glyphs sit 12 px apart: each takes its 44 px as width so no hit area covers its neighbour */
  .lil-pager { gap: 0; }
  .lil-pager button { min-width: 44px; }
}
/* iOS Safari zooms a focused field under 16 px: the collector's wells and pickers keep the floor on phones */
@media (max-width: 500px) {
  input.lil-cdesk-well, textarea.lil-cdesk-well, select.lil-cdesk-well, .lil-cdesk .v4-place-picker input { font-size: 16px; }
}
/* inner scrollers hold their scroll (ios-interactions 5) */
.v4-board .lil-community-list, .v4-record-scroll, .v4-register-scroll, .v4-place-picker>div, .v4-content-scroll, .v4-content-table-scroll,
.lil-admin aside, .lil-admin .v4-page, .admin-queue, .lil-admin [data-testid=markdown-editor] textarea, .lil-admin [data-testid=markdown-preview],
.admin-tags>section:first-child, .lil-admin .admin-accounts>section:first-child, .v4-inview, [data-desk] .lil-desk-top, [data-desk] .lil-desk-record-scroll,
.lil-adesk-slip.is-phone, .lil-add-slip, .admin-community-filter[data-open=true] .admin-community-row, .lil-dd-slip, .lil-pages-preview-slip { overscroll-behavior: contain; }
/* safe areas and keyboard (ios-interactions 0, 1): edge-pinned discs and bottom sheets clear the notch,
   the home bar and the on-screen keyboard (--keyboard-height is set by the visualViewport script in index.html) */
:root { --keyboard-height: 0px; }
.lil-cdesk-map-disc, .lil-cdesk-settings-disc, .lil-adesk-map-disc { top: calc(18px + env(safe-area-inset-top)); }
.lil-cdesk-map-disc, .lil-adesk-map-disc { left: calc(18px + env(safe-area-inset-left)); }
.lil-cdesk-settings-disc { right: calc(18px + env(safe-area-inset-right)); }
.lil-adesk-slip.is-phone { bottom: calc(24px + env(safe-area-inset-bottom) + var(--keyboard-height)); }
@media (max-width: 719.98px) {
  .lil-add-slip { bottom: calc(8px + env(safe-area-inset-bottom) + var(--keyboard-height)); }
}
@media (max-width: 500px) {
  .v4-board .lil-record-card { bottom: calc(8px + env(safe-area-inset-bottom) + var(--keyboard-height)) !important; }
}

/* conf-2: phone slips carry a grabber and swipe down (lil.ui.gesture); pushed views print a back */
.lil-dd-close,.lil-pushed-back,.lil-adesk-back{display:none}
@media (max-width:719.98px){
  .lil-add-slip::before,.lil-adesk-slip.is-phone::before,.lil-dd-slip::before{content:"";position:absolute;top:8px;left:50%;width:36px;height:5px;margin-left:-18px;border-radius:3px;background:rgba(24,35,30,.28);pointer-events:none}
  .lil-add-slip,.lil-adesk-slip.is-phone,.lil-dd-slip{padding-top:26px}
  .lil-dd-slip{position:fixed;left:8px;right:8px;top:auto;bottom:calc(8px + env(safe-area-inset-bottom));max-width:none;max-height:60dvh;z-index:60}
  .lil-dd-close{display:inline-flex;justify-self:end;min-height:44px;align-items:center;font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;background:none;border:0;color:#18231E;padding:0 6px}
  .lil-pushed-back{display:block;position:relative;z-index:31;padding:12px 16px;margin:0;font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#E8E1CE}
  .lil-adesk-back{display:inline-flex;align-items:center;min-height:44px;background:none;border:0;padding:0 6px 0 0;font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#18231E}
  [data-slip-ask]{position:sticky;bottom:0;display:grid;gap:8px;grid-auto-flow:column;align-items:center;padding:12px;margin:8px -4px -4px;background:#F6F0E0;border-top:1px dashed rgba(24,35,30,.45)}
  [data-slip-ask] p{grid-column:1/-1;margin:0;font:400 16px/1.4 var(--type-sans,'Instrument Sans',Arial,sans-serif)}
  [data-slip-ask] button{min-height:44px;font:600 11px/1.3 var(--type-sans,'Instrument Sans',Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;background:none;border:1px solid rgba(24,35,30,.45);color:#18231E}
}

/* closure law (controls): a pen-line input never shows a persistent full box; focus is a slightly heavier underline */
.lil-cdesk-well:is(input,textarea):focus,.lil-cdesk-well:is(input,textarea):focus-visible,
.lil-adesk [data-paper] :is(input:not([type=checkbox],[type=radio]),textarea):is(:focus,:focus-visible){outline:none!important;border-bottom-color:#18231E!important;box-shadow:0 1px 0 #18231E!important}
.lil-desk-pen:focus-within{outline:none!important;border-bottom-color:#18231E!important;box-shadow:0 1px 0 #18231E!important}
.lil-adesk [data-paper] :is(input,textarea).lil-adesk-well.lil-adesk-well:is(:focus,:focus-visible){outline:none!important;box-shadow:0 1px 0 #18231E!important}
/* fix-a: one printed disabled button (graphite outline and text, no fill) and one printed checkbox (ink square, ink tick) */
[data-primary]:disabled,.lil-cdesk-primary:disabled,.lil-adesk-primary:disabled,.lil-add-publish:disabled,[data-editor-slip] [data-primary]:disabled{opacity:1!important;background:transparent!important;color:#5C5851!important;box-shadow:inset 0 0 0 1px rgba(24,35,30,.4)!important;cursor:not-allowed}
.lil-cdesk-box{background:none;border:1.5px solid #18231E;border-radius:0}
.lil-cdesk-link:disabled .lil-cdesk-box{border-color:#5C5851}
input[type=checkbox]{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;min-height:18px;margin:0;box-sizing:border-box;vertical-align:middle;border:1.5px solid #18231E;border-radius:0;background:none;display:inline-grid;place-content:center;cursor:pointer}
input[type=checkbox]:checked:after{content:'✓';font:700 13px/1 var(--v4-sans,'Instrument Sans',Arial,sans-serif);color:#18231E}
input[type=checkbox]:disabled{border-color:#5C5851;cursor:not-allowed}
input[type=checkbox]:disabled:checked:after{color:#5C5851}
input[type=checkbox]:focus-visible{outline:2px solid #18231E;outline-offset:2px}
/* the add slip scrolls: its Community choice opens in flow, never clipped by the slip */
.lil-add-slip .lil-dd-slip{position:static;margin-top:6px;min-width:0;max-width:none;max-height:240px}
/* fix-c2: on a phone the admin sections collapse to one printed choice, and every admin
   table but the review queue (its own grid above) prints as stacked rows: the name first,
   the values in mono, the actions as ink links; nothing scrolls sideways */
.lil-adesk-nav-phone{display:none}
@media (max-width:719.98px){
  .lil-adesk-nav{display:none}
  .lil-adesk-nav-phone{display:block;position:relative}
  .lil-adesk-sheet,.lil-adesk .admin-region,.lil-admin .admin-accounts>section:first-child{overflow-x:visible!important}
  .lil-adesk table:not(.lil-adesk-table){display:block;width:100%!important;min-width:0!important}
  .lil-adesk table:not(.lil-adesk-table) thead{display:none}
  .lil-adesk table:not(.lil-adesk-table)>tbody{display:block}
  .lil-adesk table:not(.lil-adesk-table)>tbody>tr{display:block;padding:10px 0 12px}
  .lil-adesk table:not(.lil-adesk-table)>tbody>tr>td{display:block;padding:2px 0!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere;width:auto!important}
  .lil-adesk [data-paper] table:not(.lil-adesk-table)>tbody>tr>td+td{font-family:var(--type-mono)!important;font-size:12px!important}
  .lil-adesk [data-paper] table:not(.lil-adesk-table)>tbody>tr>td+td :is(.lil-adesk-link,button,a){font-family:var(--type-sans,'Instrument Sans',Arial,sans-serif)!important;font-size:14px!important}
  .lil-adesk table:not(.lil-adesk-table)>tbody>tr>td>:is(div,span)[style*="flex"]{justify-content:flex-start!important}
}
/* the reading pages' search: the clear control is a real button, the browser's own × is hidden */
.lil-search-well{position:relative;display:block}
.lil-search-well .lil-read-well::-webkit-search-cancel-button{display:none}
.lil-search-well .lil-read-well{padding-right:44px!important}
.lil-search-x{position:absolute;right:0;top:0;bottom:0;margin:auto 0;width:44px;height:44px;padding:0;background:none;border:0;cursor:pointer;font:400 20px/1 var(--type-sans,'Instrument Sans',Arial,sans-serif);color:#18231E}
.lil-search-x:focus-visible{outline:2px solid #18231E;outline-offset:-6px;border-radius:3px}
.lil-read-line .lil-key-all{font-size:inherit;line-height:inherit;text-decoration:underline;text-underline-offset:2px}
/* plan-nav-pages N3: "Pages ▾" on the seal. Opened (or holding the current page) it is struck like a chosen
   word; with no pages it stays in place unpolished (matte, lower relief, no highlight) and prints
   "No pages yet." on a slip on hover or focus. The slip hangs from the seal on a brass clip. */
.lil-pages{position:relative;display:inline-flex}
.lil-seal .lil-pages-btn{position:relative;z-index:1;display:inline-flex;align-items:center;padding:7px 15px;border-radius:999px;border:0;background:none;color:transparent;font:inherit;cursor:pointer;min-height:0!important;min-width:0!important}
.lil-seal .lil-pages-btn:focus-visible{outline:2px solid #ffe7a6;outline-offset:-2px}
.lil-pages-chev{display:inline-block;margin-left:4px;font-size:10px;vertical-align:1px}
.lil-seal .lil-pages-btn:is([aria-expanded=true],[aria-current]){background:radial-gradient(ellipse at 50% 60%,rgba(0,0,0,.28),rgba(0,0,0,.08) 70%);box-shadow:inset 0 2px 5px rgba(0,0,0,.7),inset 0 -1px 0 rgba(255,236,170,.35)}
.lil-seal .lil-pages-btn:is([aria-expanded=true],[aria-current]) .w{filter:drop-shadow(0 -1px 0 rgba(0,0,0,.75)) drop-shadow(0 1px 0 rgba(255,244,200,.45))}
.lil-seal .lil-pages-btn:not([aria-expanded=true]):not([aria-current]):not([aria-disabled]) .w{filter:drop-shadow(0 1px 0 rgba(0,0,0,.65)) drop-shadow(0 -1px 0 rgba(255,244,200,.35)) brightness(.94)}
.lil-seal .lil-pages-btn:active:not([aria-disabled]) .w{transform:translateY(2.5px);transition-duration:.06s}
.lil-seal .lil-pages-btn[aria-disabled]{cursor:default}
.lil-seal .lil-pages-btn[aria-disabled] .w{background:linear-gradient(180deg,#b39a62 0%,#9a824d 100%);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 1px 0 rgba(0,0,0,.35))}
.lil-pages-tip{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);z-index:60;white-space:nowrap;padding:6px 10px;background:#EEE7D6;border-radius:2px;box-shadow:0 3px 10px rgba(24,35,30,.28);font:500 13px/18px "Instrument Sans",Arial,sans-serif;color:#5C5851;visibility:hidden;pointer-events:none}
.lil-pages:is(:hover,:focus-within) .lil-pages-tip{visibility:visible}
.lil-pages-slip{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);z-index:60;width:max-content;min-width:200px;max-width:300px;padding:8px 0;background:#EEE7D6;border-radius:2px;box-shadow:0 6px 20px rgba(24,35,30,.3)}
.lil-pages-slip::before{content:"";position:absolute;top:-9px;left:50%;width:14px;height:12px;margin-left:-7px;border-radius:2px;background:linear-gradient(180deg,#f6e2a4,#cfa655 45%,#8f6926);box-shadow:0 1px 2px rgba(0,0,0,.45)}
.lil-pages-rows{display:grid}
.lil-pages-slip[data-many] .lil-pages-rows{max-height:328px;overflow:auto;overscroll-behavior:contain}
.lil-seal .lil-pages-slip a{display:block;min-height:40px;padding:10px 16px;border-radius:0;color:#18231E;font:500 14px/20px "Instrument Sans",Arial,sans-serif;white-space:normal;overflow-wrap:anywhere;text-decoration:none;background:none;box-shadow:none}
.lil-seal .lil-pages-slip a:is(:hover,:focus){outline:none;background:rgba(24,35,30,.07)}
.lil-seal .lil-pages-slip a:focus-visible{outline:2px solid #18231E;outline-offset:-2px}
.lil-seal .lil-pages-slip a[aria-current]::before{content:"✓";position:static;display:inline-block;width:16px;margin-left:-6px;border:0;animation:none;opacity:1}
.lil-pages-count{margin:0 16px 6px;font:400 12px/18px "IBM Plex Mono",monospace;color:#5C5851}
.lil-desk-menu .lil-pages-group{display:grid;gap:6px}
.lil-pages-head{margin:6px 8px 0;font:600 11px/16px "Instrument Sans",Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#18231E}
.lil-pages-group[data-none] .lil-pages-head{color:#5C5851}
.lil-pages-none{display:block;margin-top:4px;font:500 13px/18px "Instrument Sans",Arial,sans-serif;letter-spacing:0;text-transform:none}
.lil-desk-menu .lil-pages-group a{padding-left:24px!important}
/* N4: the admin row's "Shown in" choice and the Pages slip preview (the same parchment slip, printed small) */
.lil-placement{margin:4px 0 0;gap:2px 12px}
.lil-adesk-chips.lil-placement .lil-adesk-link[aria-pressed=false]{color:#5C5851!important}
.lil-adesk-chips.lil-placement .lil-adesk-link[aria-pressed=true]{color:#18231E!important;font-weight:600;text-decoration:underline 2px;text-underline-offset:4px}
.lil-adesk-chips.lil-placement .lil-adesk-link[aria-disabled]{opacity:.55;cursor:default}
.lil-pages-preview{display:grid;gap:8px;justify-items:start}
.lil-pages-preview-slip{margin:0;padding:6px 0;list-style:none;min-width:220px;max-width:300px;max-height:220px;overflow:auto;background:#EEE7D6;border-radius:2px;box-shadow:0 6px 20px rgba(24,35,30,.3)}
.lil-pages-preview-slip li{padding:6px 14px;font:500 14px/20px "Instrument Sans",Arial,sans-serif;color:#18231E}
/* trim-toast: the toast is a printed slip (closure law): parchment, graphite roman voice line, an ink "Try again" where the source can retry; never red-filled */
.lil-slip-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:200;box-sizing:border-box;width:max-content;max-width:min(560px,calc(100vw - 32px));display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;padding:12px 16px;background:#EEE7D6;color:#5C5851;border:1px solid rgba(24,35,30,.22);border-radius:2px;box-shadow:0 4px 16px rgba(24,35,30,.18);font:400 15px/1.45 var(--type-text,'Libre Caslon Text',Georgia,serif);font-style:normal}
.lil-slip-retry{min-height:44px;padding:0 4px;margin:-12px 0;background:none;border:0;color:#18231E;font:500 15px/20px var(--type-sans,'Instrument Sans',Arial,sans-serif);text-decoration:underline;text-decoration-color:rgba(24,35,30,.4);text-underline-offset:4px;cursor:pointer}
.lil-slip-retry:focus-visible{outline:2px solid #18231E;outline-offset:2px}
/* trim-toast (demo ask): the scale bar reads at a glance, ink on a parchment slip, Plex Mono 13; the credits wrap, never truncate */
[data-desk] .lil-desk-map .v4-scale{gap:12px;padding:6px 10px 5px;background:#EEE7D6;border:1px solid rgba(24,35,30,.45);border-radius:2px;font:400 13px/1.2 var(--type-mono,'IBM Plex Mono',ui-monospace,monospace);color:#18231E;font-variant-numeric:tabular-nums}
[data-desk] .lil-desk-map .v4-scale i{height:6px;border:1.5px solid #18231E;margin-bottom:5px}
[data-desk] .lil-desk-map .v4-credits>span{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:break-word}
@media (max-width:719px){[data-desk] .lil-desk-map .v4-scale{bottom:80px!important}[data-desk] .lil-desk-map .v4-credits{bottom:22px}}
