/* Stone & Bordeaux. The first named important layer outranks historical
   unlayered presentation rules, without changing product/state selectors.
   Author important rules remain subordinate to user accessibility overrides. */
@layer nearbycheck-brand {
  :root {
    --brand-canvas:#f7f4ef!important; --brand-surface:#ffffff!important;
    --brand-soft:#f0ebe6!important; --brand-ink:#302c2b!important;
    --brand-muted:#69615e!important; --brand-line:#d8cec8!important;
    --brand-action:#782c3d!important; --brand-hover:#5e2130!important;
    --brand-on-action:#ffffff!important; --brand-selected:#f4e6ea!important;
    --brand-warn:#82500f!important; --brand-warn-bg:#fff1d8!important;
    --brand-danger:#a02b38!important; --brand-danger-bg:#fce8eb!important;
    --brand-map:#e9e3dd!important; --brand-water:#ccd6db!important;
    --brand-shadow:0 8px 28px #302c2b08!important;
    --brand-tile-filter:grayscale(.8) saturate(.6)!important;
    color-scheme:light;
  }
  :root[data-theme="dark"] {
    --brand-canvas:#1b191d!important; --brand-surface:#262329!important;
    --brand-soft:#322d33!important; --brand-ink:#f3edeb!important;
    --brand-muted:#c3b6b9!important; --brand-line:#51454b!important;
    --brand-action:#d8a0b0!important; --brand-hover:#edbdca!important;
    --brand-on-action:#2a1820!important; --brand-selected:#44303a!important;
    --brand-warn:#f0c67e!important; --brand-warn-bg:#3a2e20!important;
    --brand-danger:#ffadb7!important; --brand-danger-bg:#45272f!important;
    --brand-map:#29272e!important; --brand-water:#353f4b!important;
    --brand-shadow:0 8px 28px #00000024!important;
    --brand-tile-filter:grayscale(1) invert(1) brightness(.72) contrast(.92)!important;
    color-scheme:dark;
  }
  /* Alias the existing semantic tokens to one canonical palette. */
  :root {
    --nc-canvas:var(--brand-canvas)!important; --nc-paper:var(--brand-surface)!important;
    --nc-paper-2:var(--brand-soft)!important; --nc-ink:var(--brand-ink)!important;
    --nc-text:var(--brand-ink)!important; --nc-ink-2:var(--brand-ink)!important;
    --nc-muted:var(--brand-muted)!important; --nc-faint:var(--brand-muted)!important;
    --nc-line:var(--brand-line)!important; --nc-rule:var(--brand-line)!important;
    --nc-line-strong:var(--brand-line)!important; --nc-accent:var(--brand-action)!important;
    --nc-action:var(--brand-action)!important; --nc-action-dark:var(--brand-hover)!important;
    --nc-accent-dark:var(--brand-hover)!important; --nc-action-soft:var(--brand-selected)!important;
    --nc-accent-soft:var(--brand-selected)!important; --nc-spruce:var(--brand-ink)!important;
    --nc-moss:var(--brand-muted)!important; --nc-sage:var(--brand-line)!important;
    --nc-gold:var(--brand-action)!important; --nc-good:var(--brand-action)!important;
    --nc-good-soft:var(--brand-selected)!important; --nc-warn:var(--brand-warn)!important;
    --nc-warn-soft:var(--brand-warn-bg)!important; --nc-danger:var(--brand-danger)!important;
    --nc-danger-soft:var(--brand-danger-bg)!important;
    --fg-canvas:var(--brand-canvas)!important; --fg-paper:var(--brand-surface)!important;
    --fg-ink:var(--brand-ink)!important; --fg-spruce:var(--brand-ink)!important;
    --fg-muted:var(--brand-muted)!important; --fg-rule:var(--brand-line)!important;
    --fg-cedar:var(--brand-action)!important; --fg-moss:var(--brand-muted)!important;
    --fg-brass:var(--brand-action)!important; --fg-sage:var(--brand-line)!important;
    --fg-paper-warm:var(--brand-soft)!important; --fg-ink-2:var(--brand-ink)!important;
    --fg-rule-dark:var(--brand-line)!important; --fg-cedar-dark:var(--brand-hover)!important;
    --fg-brass-dark:var(--brand-hover)!important; --fg-danger:var(--brand-danger)!important;
    --fg-warn:var(--brand-warn)!important; --fg-shadow:var(--brand-shadow)!important;
    --text:var(--brand-ink)!important; --muted:var(--brand-muted)!important;
    --surface:var(--brand-surface)!important; --surface-2:var(--brand-soft)!important;
    --surface-3:var(--brand-surface)!important; --line:var(--brand-line)!important;
    --green:var(--brand-action)!important; --green-deep:var(--brand-selected)!important;
    --yellow:var(--brand-warn)!important; --red:var(--brand-danger)!important;
    --blue:var(--brand-action)!important; --lux-ink:var(--brand-ink)!important;
    --lux-muted:var(--brand-muted)!important; --lux-green:var(--brand-action)!important;
    --lux-green-2:var(--brand-action)!important;
  }
  html, body { background:var(--brand-canvas)!important; color:var(--brand-ink)!important; }
  body::before, .hero::before, .hero::after, .search-panel::before { display:none!important; }
  body { font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important; }
  /* Color changes are atomic: independently animating text and surfaces can
     briefly pair light text with the light canvas during a theme switch. */
  :root[data-theme] *, :root[data-theme] *::before, :root[data-theme] *::after { transition-property:opacity,transform!important; }
  a, button, input, select, summary { -webkit-tap-highlight-color:transparent; }
  :is(a,button,input,select,summary,[tabindex]):focus-visible { outline:3px solid var(--brand-action)!important; outline-offset:3px!important; }
  ::selection { background:var(--brand-action)!important; color:var(--brand-on-action)!important; }
  .shell { width:min(1200px,calc(100% - 64px))!important; padding:0!important; }
  .topbar, body.has-live-results .topbar { background:var(--brand-canvas)!important; border-color:var(--brand-line)!important; gap:18px!important; }
  .brand, .brand-mark { color:var(--brand-ink)!important; border-color:var(--brand-ink)!important; }
  .brand { font-size:18px!important; letter-spacing:-.035em!important; text-transform:none!important; white-space:nowrap; }
  .brand-mark { width:28px!important; height:28px!important; border:0!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; }
  .brand-mark svg { width:28px; height:28px; }
  .brand-mark::before, .brand-mark::after { display:none!important; }
  .pilot-badge { margin-left:auto!important; color:var(--brand-muted)!important; }
  .pilot-badge::before { display:none!important; }
  .appearance-control { position:relative; flex:0 0 auto; color:var(--brand-muted); }
  .appearance-control[hidden], .appearance-menu[hidden] { display:none!important; }
  .appearance-trigger { display:flex!important; align-items:center; justify-content:center; gap:6px; width:auto!important; height:44px!important; min-height:44px!important; padding:0 4px!important; border:0!important; border-radius:6px!important; background:transparent!important; color:var(--brand-muted)!important; box-shadow:none!important; font:inherit; font-size:13px!important; font-weight:400; letter-spacing:normal; white-space:nowrap; cursor:pointer; }
  .appearance-trigger svg { width:12px; height:12px; flex:none; }
  .appearance-trigger:hover, .appearance-trigger[aria-expanded="true"] { background:var(--brand-soft)!important; color:var(--brand-ink)!important; }
  .appearance-menu { position:absolute; bottom:calc(100% + 6px); right:0; z-index:10; width:180px; max-width:calc(100vw - 28px); padding:6px; border:1px solid var(--brand-line)!important; border-radius:10px; background:var(--brand-surface)!important; color:var(--brand-ink)!important; box-shadow:0 8px 28px #00000018!important; }
  .appearance-option { display:flex!important; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:44px!important; padding:10px 12px!important; border:0!important; border-radius:5px; background:transparent!important; color:var(--brand-ink)!important; font:inherit; font-size:14px!important; font-weight:400; text-align:left; cursor:pointer; }
  .appearance-option svg { width:16px; height:16px; visibility:hidden; }
  .appearance-option[aria-checked="true"] svg { visibility:visible; }
  .appearance-option:hover, .appearance-option:focus-visible { background:var(--brand-soft)!important; }
  .appearance-option:focus-visible { outline-offset:-3px!important; }
  .field-hero { grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)!important; grid-template-areas:"copy map" "controls map"!important; gap:20px 48px!important; padding:24px 0 32px!important; }
  body.has-query-response .field-hero { padding:16px 0!important; }
  .field-hero-copy { padding:0!important; }
  .field-hero h1, .privacy-page h1 { font-family:Georgia,"Times New Roman",serif!important; font-size:clamp(38px,4.2vw,56px)!important; font-weight:400!important; letter-spacing:-.045em!important; line-height:1.06!important; color:var(--brand-ink)!important; }
  .field-hero h1 em { display:block!important; color:inherit!important; font-style:normal!important; font-weight:inherit!important; }
  .eyebrow, .field-step-label, .control-label, .decision-check-kicker, .decision-kicker { color:var(--brand-muted)!important; }
  .eyebrow::before { background:var(--brand-action)!important; }
  .hero-copy { color:var(--brand-muted)!important; font-size:16px!important; line-height:1.6!important; max-width:none!important; }
  .field-control-deck { grid-template-columns:minmax(0,1fr)!important; gap:12px!important; padding:0!important; background:transparent!important; border:0!important; border-radius:0!important; box-shadow:none!important; backdrop-filter:none!important; }
  .field-needs-step, .field-location-step, .field-fine-tune { grid-column:1!important; grid-row:auto!important; }
  .field-step-copy > p { color:var(--brand-muted)!important; }
  .field-location-step .field-step-copy > p { margin-bottom:6px!important; }
  .field-submit-row { grid-template-columns:1fr!important; gap:10px!important; padding-top:12px!important; border-color:var(--brand-line)!important; }
  .field-submit-row .search-note { margin:0!important; }
  .search-note { color:var(--brand-muted)!important; max-width:none!important; }
  .field-needs-step .field-step-copy { position:relative!important; }
  .field-needs-step .field-step-label { padding-right:115px!important; }
  .field-needs-step .need-heading { position:absolute!important; right:0!important; top:-10px!important; }
  .field-needs-step .need-section { margin-top:4px!important; padding-top:18px!important; }
  .field-needs-step .field-step-copy > p { display:none!important; }
  .quick-starts-block { margin-top:14px!important; border-color:var(--brand-line)!important; }
  .quick-starts-heading { color:var(--brand-muted)!important; }
  .quick-intents { gap:6px!important; border-color:var(--brand-line)!important; }
  .decision-intent { font-size:12px!important; padding:8px!important; }
  .field-map-visual { align-self:stretch!important; height:auto!important; min-height:540px!important; border:1px solid var(--brand-line)!important; border-radius:12px!important; background:var(--brand-map)!important; box-shadow:none!important; }
  .field-map-visual::before, .field-map-visual::after, .field-map-grid { display:none!important; }
  .field-map-canvas { opacity:1!important; }
  .field-map-canvas .water { fill:var(--brand-water)!important; }
  .field-map-canvas .city-block { fill:var(--brand-soft)!important; }
  .field-map-canvas .street { fill:none!important; stroke:var(--brand-surface)!important; stroke-width:9!important; opacity:1!important; }
  .field-map-canvas .route-solid { stroke:var(--brand-action)!important; opacity:.12!important; }
  .field-map-canvas .route { stroke:var(--brand-action)!important; }
  .field-map-pin, .field-map-pin.one { background:var(--brand-action)!important; color:var(--brand-on-action)!important; border-color:var(--brand-surface)!important; box-shadow:none!important; font-family:inherit!important; }
  .field-map-pin.you { background:var(--brand-ink)!important; color:var(--brand-canvas)!important; border-color:var(--brand-surface)!important; }
  .field-map-pin::before, .field-map-pin::after { display:none!important; }
  .field-fine-tune, .field-fine-tune > summary, .time-row { color:var(--brand-muted)!important; border-color:var(--brand-line)!important; }
  :is(.search-field-wrap input,.future-time,.search-radius,.search-suggestions,.search-suggestion,.time-tabs,.need-chip,.decision-intent,.time-tab) { color:var(--brand-ink)!important; background:var(--brand-surface)!important; border-color:var(--brand-line)!important; box-shadow:none!important; }
  .search-field-wrap input { min-height:52px!important; height:52px!important; }
  input::placeholder { color:var(--brand-muted)!important; opacity:1!important; }
  .future-time, select { color-scheme:inherit!important; }
  /* Selection is persistent business state, not a transient hover/focus paint. */
  .need-chip { transform:none!important; font-weight:400!important; }
  .need-chip[aria-pressed="true"], .need-chip.intent-hard-selected, .need-chip.intent-soft-selected { background:var(--brand-selected)!important; color:var(--brand-action)!important; border-color:var(--brand-action)!important; }
  .need-chip[aria-pressed="true"] { font-weight:650!important; box-shadow:inset 0 0 0 1px var(--brand-action)!important; }
  /* Reserve the selected label's width without adding a visible symbol or
     duplicating its accessible name. Weight changes must not reflow controls. */
  .need-chip .need-label { display:inline-grid; min-width:0; }
  .need-chip .need-label-text, .need-chip .need-label::after { grid-area:1 / 1; }
  .need-chip .need-label::after { content:attr(data-label); font-weight:650; visibility:hidden; }
  /* No hover repaint for toggle chips: mixed touch/mouse devices can retain it.
     The cursor, native button activation and independent focus ring remain. */
  .decision-intent:hover, .time-tab:hover, .search-suggestion:hover, .search-suggestion.keyboard-active { background:var(--brand-soft)!important; color:var(--brand-ink)!important; }
  .primary-button, .decision-primary.nearbycheck-directions, .nearbycheck-directions, .po6-card-directions, .try-nearby-directions,
  .decision-intent.active, .decision-intent[aria-pressed="true"], .time-tab.active { background:var(--brand-action)!important; background-image:none!important; color:var(--brand-on-action)!important; border-color:var(--brand-action)!important; box-shadow:none!important; }
  .primary-button:hover:not(:disabled), .nearbycheck-directions:hover, .po6-card-directions:hover, .try-nearby-directions:hover { background:var(--brand-hover)!important; color:var(--brand-on-action)!important; }
  .primary-button { font-weight:650!important; min-height:48px!important; }
  :is(.secondary-button,.map-link,.po6-evidence-action,.location-retry,.location-switch,.feedback-button,.decision-results-toggle,.try-nearby-toggle,.try-nearby-source,.dialog-close,.clear-search,.cancel-query,.decision-check-actions button,.decision-actions > button,.outcome-prompt button,.po7-recovery-actions button,.po7-feedback-reasons button) { background:var(--brand-surface)!important; color:var(--brand-ink)!important; border-color:var(--brand-line)!important; box-shadow:none!important; }
  :is(.text-button,.search-icon,.anchor-status,.result-count,.field-submit-row,.decision-check-needs,.decision-check-anchor,.decision-check-meta,.query-summary) { color:var(--brand-muted)!important; }
  .honesty-strip { background:transparent!important; color:var(--brand-muted)!important; border-color:var(--brand-line)!important; border-left-color:var(--brand-action)!important; }
  .honesty-strip strong { color:var(--brand-ink)!important; }
  .decision-check-summary { border-color:var(--brand-line)!important; }
  :is(.decision-check-copy,.section-heading h2,.decision-list-heading strong,.place-name,.try-nearby-heading h3,.try-nearby-card strong,.privacy-page h2) { color:var(--brand-ink)!important; }
  .section-heading, .decision-list-heading, .place-card, .try-nearby-card, .try-nearby-section, .try-nearby-method, .try-nearby-heading { border-color:var(--brand-line)!important; }
  .po6-has-results .decision-banner { background:var(--brand-surface)!important; color:var(--brand-ink)!important; border:1px solid var(--brand-line)!important; border-left:3px solid var(--brand-action)!important; box-shadow:var(--brand-shadow)!important; border-radius:10px!important; }
  .decision-banner::after, .decision-banner::before { color:var(--brand-action)!important; }
  .decision-main > strong { color:var(--brand-ink)!important; font-weight:400!important; }
  :is(.decision-main > span,.decision-use-status,.decision-navigation-context,.decision-meta,.decision-trust,.decision-trust-body,.decision-brief-row strong,.decision-facilities .capability,.decision-facilities .cap-text) { color:var(--brand-ink)!important; }
  :is(.decision-brief,.decision-brief-row,.decision-trust,.decision-trust-body,.decision-facilities .capability) { border-color:var(--brand-line)!important; background:transparent!important; }
  .decision-brief-row span, .decision-brief-label { color:var(--brand-muted)!important; }
  .decision-check-copy small, .try-nearby-method > summary { color:var(--brand-muted)!important; }
  .try-nearby-method > summary::after, .how-it-works-disclosure > summary::after { color:var(--brand-action)!important; }
  .decision-trust > summary, .decision-trust-body strong, .outcome-prompt-main strong, .po7-recovery > strong { color:var(--brand-ink)!important; }
  .decision-trust-body span, .outcome-prompt-main span, .outcome-reasons > span, .po7-recovery > span, .po7-feedback-copy { color:var(--brand-muted)!important; }
  .decision-brief-row.caution strong, .decision-brief-row[data-tone="caution"] strong { color:var(--brand-warn)!important; }
  .result-view-tabs { background:var(--brand-canvas)!important; border-color:var(--brand-line)!important; }
  .view-tab { background:transparent!important; color:var(--brand-muted)!important; }
  .view-tab.active { background:var(--brand-surface)!important; color:var(--brand-action)!important; border-bottom-color:var(--brand-action)!important; }
  .view-tab::after { background:var(--brand-action)!important; }
  .place-card, .try-nearby-card { background:transparent!important; }
  .place-card:hover { background:var(--brand-surface)!important; }
  /* This pseudo-element is now a number, not the historical hover stripe.
     Fence both its paint and geometry, including sticky hover on touch. */
  .place-card::before { color:var(--brand-action)!important; background:transparent!important; background-image:none!important; bottom:auto!important; height:auto!important; }
  :is(.place-type,.status-line,.decision-card-summary,.navigation-context,.try-nearby-card small,.try-nearby-description,.try-nearby-note,.try-nearby-method,.try-nearby-method li,.try-nearby-method p,.try-nearby-subtitle,.cap-note) { color:var(--brand-muted)!important; }
  :is(.distance-badge,.source-badge,.source-badge-curated,.po-scope-city,.po-scope-snapshot,.match-exact,.capability,.evidence-state) { background:var(--brand-soft)!important; color:var(--brand-ink)!important; border-color:var(--brand-line)!important; }
  .outing-site-context { background:transparent!important; color:var(--brand-muted)!important; border:0!important; }
  .outing-site-context :is(.outing-site-context-label,.outing-site-context-items,.outing-site-context-item,.outing-site-context-source) { color:inherit!important; }
  .capability.yes, .try-nearby-access.good { color:var(--brand-action)!important; border-color:var(--brand-action)!important; }
  .capability.maybe { color:var(--brand-warn)!important; }
  .capability.no { color:var(--brand-danger)!important; }
  .status-dot.good, .anchor-dot.ready { background:var(--brand-action)!important; box-shadow:none!important; }
  .anchor-dot.search { background:var(--brand-action)!important; box-shadow:none!important; }
  .anchor-dot.loading, .status-dot.warn { background:var(--brand-warn)!important; box-shadow:none!important; }
  .status-dot.bad, .anchor-dot.error { background:var(--brand-danger)!important; box-shadow:none!important; }
  .try-nearby-unconfirmed, .try-nearby-access, .warning-box, .results-warning, .condition-note, .map-tile-warning { background:var(--brand-warn-bg)!important; color:var(--brand-warn)!important; border-color:var(--brand-warn)!important; }
  .results-warning.source-notice { padding:10px 14px!important; border-width:1px!important; border-left-width:3px!important; border-radius:8px!important; font-size:14px!important; font-weight:400!important; line-height:1.5!important; box-shadow:none!important; }
  .source-notice-summary { margin:0!important; font-size:14px!important; font-weight:500!important; color:inherit!important; }
  .source-notice-details > summary { display:flex; align-items:center; min-height:44px!important; cursor:pointer; font-size:14px!important; font-weight:400!important; list-style:none; color:inherit!important; }
  .source-notice-details > summary::-webkit-details-marker { display:none; }
  .source-notice-details > summary::after { content:'+'; margin-left:auto; padding-left:12px; }
  .source-notice-details[open] > summary::after { content:'−'; }
  .source-notice-body, .source-notice-body p, .source-notice-body strong { font-size:14px!important; line-height:1.5!important; color:inherit!important; overflow-wrap:anywhere; }
  .source-notice-body p { margin:0 0 8px!important; }
  .results-match-note { grid-column:1 / -1; margin:0!important; padding:10px 0!important; font-size:14px!important; line-height:1.5!important; font-weight:400!important; color:var(--brand-muted)!important; background:transparent!important; }
  .condition-blocked, .condition-blocked .condition-note { color:var(--brand-danger)!important; border-color:var(--brand-danger)!important; }
  .try-nearby-eyebrow { color:var(--brand-warn)!important; }
  .current-conditions-bar, .freshness-bar { background:var(--brand-soft)!important; color:var(--brand-muted)!important; border-color:var(--brand-line)!important; }
  .conditions-links a, .conditions-citywide a, .live-condition a { color:var(--brand-action)!important; }
  .conditions-warning, .conditions-citywide strong { color:var(--brand-warn)!important; }
  .live-condition-closed { color:var(--brand-danger)!important; background:var(--brand-danger-bg)!important; border-color:var(--brand-danger)!important; }
  .live-condition-partial { color:var(--brand-warn)!important; background:var(--brand-warn-bg)!important; border-color:var(--brand-warn)!important; }
  .detail-dialog, .detail-inner, .outcome-prompt, .outcome-reasons, .po7-feedback-panel { background:var(--brand-surface)!important; color:var(--brand-ink)!important; border-color:var(--brand-line)!important; }
  .detail-dialog { border-radius:12px!important; }
  .dialog-close { width:44px!important; height:44px!important; }
  .detail-sub, .evidence-note, .outcome-prompt p, .outcome-prompt small { color:var(--brand-muted)!important; }
  .evidence-row { background:var(--brand-soft)!important; border-color:var(--brand-line)!important; }
  .facility-evidence-meta { background:var(--brand-soft)!important; color:var(--brand-muted)!important; border-color:var(--brand-line)!important; }
  .facility-evidence-meta strong { color:var(--brand-ink)!important; }
  .source-link, .privacy-page a, footer a { color:var(--brand-action)!important; }
  .outcome-prompt-actions [data-outcome-answer="worked"] { background:var(--brand-action)!important; color:var(--brand-on-action)!important; border-color:var(--brand-action)!important; }
  .empty-state, .search-pending-note { background:var(--brand-soft)!important; color:var(--brand-ink)!important; border-color:var(--brand-line)!important; }
  /* Contain Leaflet's internal layers so page menus stay above the map. */
  .results-map { isolation:isolate; background:var(--brand-map)!important; border-color:var(--brand-line)!important; }
  /* Only raster tiles are toned. Markers, labels, controls and attribution
     retain the theme's explicit contrast and remain unfiltered. */
  /* Filter each raster image, not its transformed ancestor: WebKit can skip
     ancestor filters when Leaflet promotes tiles to compositing layers. */
  .leaflet-tile-pane .leaflet-tile { filter:var(--brand-tile-filter)!important; }
  .leaflet-container { background:var(--brand-map)!important; }
  .leaflet-popup-content-wrapper, .leaflet-popup-tip, .leaflet-control a, .leaflet-control-attribution { background:var(--brand-surface)!important; color:var(--brand-ink)!important; }
  .leaflet-popup-content, .leaflet-popup-content strong, .leaflet-popup-content small { color:var(--brand-ink)!important; }
  .leaflet-control-attribution a { color:var(--brand-action)!important; }
  .nearbycheck-result-icon span { background:var(--brand-action)!important; color:var(--brand-on-action)!important; border-color:var(--brand-surface)!important; box-shadow:none!important; }
  .nearbycheck-anchor-icon, .nearbycheck-anchor-icon span { background:var(--brand-ink)!important; color:var(--brand-canvas)!important; border-color:var(--brand-surface)!important; box-shadow:0 0 0 2px var(--brand-ink)!important; }
  .nearbycheck-anchor-selected, .nearbycheck-anchor-selected span { background:var(--brand-action)!important; color:var(--brand-on-action)!important; box-shadow:0 0 0 2px var(--brand-action)!important; }
  .leaflet-tooltip.nearbycheck-anchor-label { background:var(--brand-ink)!important; color:var(--brand-canvas)!important; }
  .leaflet-tooltip-top.nearbycheck-anchor-label::before { border-top-color:var(--brand-ink)!important; }
  .how-it-works-disclosure, .how-it-works-disclosure > summary, .privacy-section, footer { color:var(--brand-muted)!important; border-color:var(--brand-line)!important; }
  .moment-grid article, .privacy-note { background:var(--brand-soft)!important; border-color:var(--brand-line)!important; color:var(--brand-ink)!important; }
  .privacy-lead, .privacy-page p, .privacy-page li, .moment-grid p { color:var(--brand-muted)!important; }
  .privacy-page strong, .moment-grid h3 { color:var(--brand-ink)!important; }
  .privacy-page code { background:var(--brand-soft)!important; color:var(--brand-ink)!important; }
  .privacy-note { border-left-color:var(--brand-action)!important; }
  footer { text-transform:none!important; }
  .site-footer { flex-direction:row!important; align-items:center!important; gap:16px!important; font-size:12px!important; letter-spacing:normal!important; }
  .footer-meta { display:flex; flex-direction:column; align-items:flex-start; gap:4px; line-height:1.6; }
  .footer-links { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:2px 18px; font-size:13px; }
  .footer-links > a { display:inline-flex; align-items:center; min-height:44px; color:var(--brand-muted)!important; }
  .footer-links > a:hover { color:var(--brand-ink)!important; }
  .footer-attribution { color:var(--brand-muted)!important; }
  @media (max-width:1000px) and (min-width:761px) {
    .field-hero { grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr)!important; gap:24px!important; }
    .field-hero h1 { font-size:40px!important; }
    .field-control-deck { gap:16px!important; }
  }
  @media (max-width:760px) {
    .shell { width:calc(100% - 28px)!important; }
    .topbar { gap:10px!important; }
    .brand { font-size:17px!important; gap:8px!important; }
    .topbar .pilot-badge { display:none!important; }
    .site-footer { flex-direction:column!important; align-items:stretch!important; }
    .footer-links { justify-content:flex-start; }
    .footer-links .appearance-control { margin-left:auto; }
    .field-hero { display:block!important; padding:24px 0!important; }
    .field-hero h1 { font-size:34px!important; }
    .field-hero h1 em { display:block!important; }
    .field-map-visual { display:none!important; }
    .field-control-deck { margin-top:24px!important; padding:0!important; gap:18px!important; }
    .quick-intents { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; overflow:visible!important; }
    .decision-intent { width:auto!important; min-width:0!important; }
    .decision-main > strong { font-size:25px!important; }
    .privacy-page h1 { font-size:38px!important; }
  }
  /* Results read in order: destination, fit/access, Directions, alternatives.
     Keep the query editor and landing composition out of this hierarchy. */
  body.has-query-response .field-hero { padding:12px 0 16px!important; }
  body.has-query-response .field-control-deck { margin-top:0!important; }
  body.has-query-response .decision-check-summary { margin:0!important; padding:12px 16px!important; gap:12px!important; background:var(--brand-soft)!important; border:0!important; border-radius:8px!important; }
  .decision-check-copy { gap:3px!important; }
  .decision-check-copy .decision-check-kicker { font-size:11px!important; font-weight:600!important; letter-spacing:.08em!important; line-height:1.4!important; }
  .decision-check-copy strong { font-size:16px!important; font-weight:600!important; line-height:1.4!important; white-space:normal!important; overflow:visible!important; }
  .decision-check-copy small { font-size:13px!important; font-weight:400!important; line-height:1.5!important; }
  .decision-check-actions { gap:8px!important; }
  .decision-check-actions button { min-height:44px!important; padding:8px 12px!important; font-size:13px!important; font-weight:500!important; }
  body.has-query-response .results-section { padding-top:4px!important; }
  body.has-query-response .results-section .section-heading { margin:0 0 12px!important; padding:0 0 10px!important; }
  body.has-query-response .results-section .section-heading .eyebrow { display:none!important; }
  body.has-query-response .results-section .section-heading h2 { font-family:inherit!important; font-size:18px!important; font-weight:500!important; letter-spacing:-.01em!important; line-height:1.4!important; }
  .po6-has-results .decision-banner { padding:24px!important; grid-template-columns:48px minmax(0,1fr) auto!important; }
  .po6-has-results .decision-banner::after { font-size:30px!important; line-height:1.12!important; }
  .decision-main > .decision-kicker { order:0!important; }
  .decision-main > strong { order:1!important; }
  .decision-main > span:not(.decision-kicker) { order:2!important; }
  .decision-facilities { order:3!important; }
  .decision-navigation-context { order:4!important; }
  .decision-use-status { order:5!important; }
  .outing-site-context-primary { order:6!important; }
  .decision-brief { order:7!important; }
  .decision-trust { order:8!important; }
  .decision-meta { order:9!important; }
  .decision-main > strong { font-size:34px!important; line-height:1.12!important; letter-spacing:-.035em!important; }
  .decision-main > span { font-size:14px!important; font-weight:400!important; color:var(--brand-muted)!important; line-height:1.5!important; }
  .decision-banner .decision-kicker { font-size:11px!important; font-weight:650!important; letter-spacing:.1em!important; color:var(--brand-action)!important; line-height:1.4!important; }
  .decision-use-status { margin:8px 0 0!important; font-size:15px!important; font-weight:400!important; line-height:1.55!important; }
  .decision-facilities { margin:12px 0 0!important; }
  .decision-facilities .capability { padding:6px 8px!important; }
  .decision-facilities .cap-text { font-size:14px!important; font-weight:500!important; }
  .decision-navigation-context, .decision-meta { font-size:13px!important; font-weight:400!important; line-height:1.5!important; }
  .decision-banner .decision-brief { margin:8px 0 0!important; }
  .decision-brief-row { padding:10px 0!important; }
  .decision-brief-row span { font-size:13px!important; font-weight:500!important; }
  .decision-brief-row strong { font-size:14px!important; font-weight:400!important; line-height:1.5!important; }
  .decision-brief-row.decision-brief-risk strong { color:var(--brand-warn)!important; }
  .decision-trust > summary { font-weight:500!important; font-size:14px!important; }
  .decision-actions > a, .decision-actions > button { font-size:15px!important; font-weight:600!important; text-transform:none!important; letter-spacing:0!important; }
  .decision-list-heading { padding:16px 0 12px!important; margin:0!important; }
  .decision-list-heading strong { font-family:inherit!important; font-size:16px!important; font-weight:600!important; letter-spacing:0!important; line-height:1.4!important; }
  .decision-list-heading span { font-size:11px!important; }
  /* Put the generated rank and the header in the same baseline-sharing row.
     Never override semantic hiding of duplicates or collapsed alternatives. */
  .po6-has-results .place-card:not(.decision-primary-duplicate):not(.po-duplicate):not(.decision-overflow-card:not(.decision-overflow-open)) { display:grid!important; grid-template-columns:32px minmax(0,1fr)!important; gap:0 12px!important; align-items:start!important; padding:20px 0!important; min-height:0!important; }
  .po6-has-results .place-card > * { grid-column:2!important; grid-row:auto!important; min-width:0!important; }
  .po6-has-results .place-card::before { position:static!important; display:block!important; inset:auto!important; grid-column:1!important; grid-row:1!important; align-self:first baseline!important; width:32px!important; margin:0!important; font-size:20px!important; font-weight:500!important; line-height:1.25!important; }
  .po6-has-results .place-card .card-top { display:grid!important; grid-template-columns:minmax(0,1fr) auto!important; grid-template-areas:"name distance" "meta meta"!important; grid-row:1!important; align-self:first baseline!important; align-items:first baseline!important; gap:4px 16px!important; margin:0!important; }
  .po6-has-results .card-top .card-badge-row { display:none!important; }
  .po6-has-results .card-top .place-name { grid-area:name!important; min-width:0!important; margin:0!important; overflow-wrap:anywhere!important; }
  .po6-has-results .card-top .distance-badge { grid-area:distance!important; margin:0!important; border:0!important; border-radius:0!important; }
  .po6-has-results .card-top .place-type { grid-area:meta!important; display:grid!important; gap:2px!important; margin:0!important; min-width:0!important; }
  .po6-has-results .place-name { font-size:20px!important; font-weight:500!important; line-height:1.25!important; }
  .po6-has-results .place-type { font-size:13px!important; font-weight:400!important; line-height:1.5!important; }
  .po6-has-results .distance-badge { background:transparent!important; padding:0!important; font-size:14px!important; font-weight:500!important; line-height:1.5!important; }
  .po6-has-results .status-line, .po6-has-results .decision-card-summary { font-size:14px!important; font-weight:400!important; }
  .po6-has-results .place-card .decision-card-summary { margin:12px 0 0!important; line-height:1.5!important; }
  .po6-has-results .place-card .status-line { align-items:flex-start!important; gap:8px!important; margin:8px 0 0!important; line-height:1.5!important; }
  .po6-has-results .place-card .status-dot { flex:0 0 8px!important; width:8px!important; height:8px!important; margin-top:calc(.75em - 4px)!important; }
  /* Single-need fit is already stated by the visible facility chip. Keep the
     coverage summary for multi-need searches and any card without a chip. */
  body.po6-single-need .place-card:has(.capability-grid .cap-text) .decision-card-summary { display:none!important; }
  /* Facility evidence is a readable register, not a collection of buttons.
     Columns depend on viewport, never on whether a status is a shorter word. */
  .po6-has-results :is(.capability-grid,.decision-facilities) { display:grid!important; grid-template-columns:minmax(0,1fr)!important; gap:0!important; width:100%!important; max-width:32rem!important; margin:12px 0 0!important; }
  .po6-has-results :is(.capability-grid,.decision-facilities) .capability { display:grid!important; grid-template-columns:20px minmax(0,1fr)!important; gap:8px!important; align-items:start!important; min-width:0!important; margin:0!important; padding:6px 0!important; border:0!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; }
  .po6-has-results .capability .cap-icon { display:flex!important; align-items:center!important; width:20px!important; height:21px!important; }
  .po6-has-results .capability .cap-text { display:grid!important; grid-template-columns:repeat(auto-fit,minmax(min(100%,7em),1fr))!important; gap:4px 12px!important; min-width:0!important; font-size:14px!important; font-weight:400!important; line-height:1.5!important; color:inherit!important; white-space:normal!important; overflow:visible!important; text-overflow:clip!important; }
  .po6-has-results .capability :is(.cap-label,.cap-state) { min-width:0!important; overflow-wrap:anywhere!important; }
  .po6-has-results .capability .cap-label { color:var(--brand-ink)!important; }
  .po6-has-results .capability .cap-state { text-align:left!important; }
  .po6-has-results .place-card :is(.navigation-context,.outing-site-context) { margin:8px 0 0!important; }
  .po6-has-results .place-card .card-actions { position:static!important; transform:none!important; margin:16px 0 0!important; gap:8px!important; align-self:start!important; }
  .po6-has-results .place-card .card-actions > * { flex:0 1 auto!important; min-height:44px!important; font-size:14px!important; font-weight:500!important; text-transform:none!important; letter-spacing:0!important; }
  .po6-has-results .place-card .card-actions .po6-card-directions { background:transparent!important; color:var(--brand-action)!important; border-color:var(--brand-action)!important; }
  .po6-has-results .place-card .card-actions .po6-card-directions:hover { background:var(--brand-selected)!important; color:var(--brand-action)!important; }
  .po6-has-results .place-card .po6-evidence-action { background:transparent!important; border-color:transparent!important; color:var(--brand-muted)!important; }
  @media (min-width:1024px) {
    .po6-has-results :is(.capability-grid,.decision-facilities):has(> .capability + .capability) { grid-template-columns:repeat(2,minmax(0,1fr))!important; column-gap:28px!important; max-width:56rem!important; }
  }
  @media (max-width:760px) {
    body.has-query-response .decision-check-summary { padding:12px!important; }
    body.has-query-response .results-section .section-heading h2 { font-size:16px!important; }
    .po6-has-results .decision-banner { padding:18px!important; gap:10px!important; }
    .decision-main > strong { font-size:30px!important; }
    .decision-banner .decision-brief-row { gap:4px!important; }
    .po6-has-results .place-card:not(.decision-primary-duplicate):not(.po-duplicate):not(.decision-overflow-card:not(.decision-overflow-open)) { grid-template-columns:28px minmax(0,1fr)!important; column-gap:10px!important; }
    .po6-has-results .place-card::before { width:28px!important; }
    .po6-has-results .place-card .card-top { grid-template-columns:minmax(0,1fr)!important; grid-template-areas:"name" "distance" "meta"!important; row-gap:4px!important; }
  }
  @media (prefers-reduced-motion:reduce) { *, *::before, *::after { transition:none!important; animation:none!important; scroll-behavior:auto!important; } }
}
