/* Shared public colour rhythm. All colours come from NYC theme tokens. */
body:not([data-page="lab"]) .hero {
  background:var(--nyc-blue-wash);
  padding:clamp(1.25rem,3vw,3rem);
  margin-block:1.5rem;
  align-items:center;
}
body:not([data-page="lab"]) .hero>div :is(h1,.deck,.editorial-label) {color:var(--nyc-ink)}
body:not([data-page="lab"]) .primary-finding {background:var(--nyc-page);border-top-color:var(--nyc-blue)}
body:not([data-page="lab"]) :is(.toolbar,.source-card,.process-step,.evidence-key>div,.trend-chapters>a,.rail-civic,.area-connections,.civic-connection-story,.story-choice-panel,.story-civic-invite,.civic-band) {background:var(--nyc-blue-wash)}

body:not([data-page="lab"]) .footer {background:var(--nyc-blue-wash);padding:clamp(1rem,3vw,2.5rem);border-top:3px solid var(--nyc-navy)}
body:not([data-page="lab"]) .trust-band {background:var(--nyc-blue-wash)}

/* Example 1: light welcome, navy pulse, pale-blue local connections. */
.landing-front :is(.centered,.pulse,.places) {padding-inline:clamp(1rem,3vw,2.625rem)}
.landing-front .centered {background:var(--nyc-blue-wash);color:var(--nyc-ink);padding-block:clamp(2rem,4vw,3rem)}
.landing-front .centered :is(h1,p,.text-link) {color:var(--nyc-ink)}
.landing-front .centered em {color:var(--nyc-blue)}
.landing-front .pulse {background:var(--nyc-navy);color:var(--nyc-page);padding-top:1.75rem}
.landing-front .pulse :is(.section-title h2,.section-title p),.landing-front .pulse>.source,.landing-front .notice,.landing-front .notice p {color:var(--nyc-page)}
.landing-front .pulse-cards {color:var(--nyc-ink)}
.landing-front .pulse-cards article {background:var(--nyc-page);border-top-color:var(--nyc-blue)}
.landing-front .pulse-cards .subway {background:var(--nyc-blue-wash)}
.landing-front .places {background:var(--nyc-blue-wash);color:var(--nyc-ink);border-top:0;padding-block:2rem;margin-bottom:1.5rem}
.landing-front .local {background:var(--nyc-page);color:var(--nyc-ink)}
.landing-front .trips {background:var(--nyc-page)}
@media(max-width:760px){
  .landing-front .centered h1 {font-size:clamp(2.25rem,9vw,3.2rem)}
  .landing-front .pulse-cards article {padding:1rem}
  .landing-front .pulse-number strong {font-size:3.8rem}
}

/* Filters inside the existing navy subway panel keep their dark surface. */
body:not([data-page=lab]) .rail-controls .toolbar {background:transparent}


/* Private Lab: aligned, zero-baseline evidence bars. */
.lab-bars {list-style:none;padding:0;display:grid;gap:1rem;}
.lab-bars li {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem 1rem;}
.lab-bar-track {display:block;background:var(--nyc-line);height:.65rem;width:100%;grid-column:1/-1;}
.lab-bar-fill {display:block;height:100%;background:var(--nyc-navy);}
.lab-measure {padding:1rem 0;border-bottom:1px solid var(--nyc-line);}
#experiment-form {margin:1.5rem 0;}
#experiment-output {overflow-wrap:anywhere;}

.lab-bars.lab-hours {grid-template-columns:repeat(auto-fit,minmax(100px,1fr));}
.lab-hours li {grid-template-columns:1fr;padding:.65rem;background:var(--nyc-blue-wash);}
.lab-hours li span {font-size:.85rem;}

#experiment-form button.primary {color:var(--nyc-page);background:var(--nyc-navy);}

/* Shared interpretation panels: distinguish evidence limits from the next action. */
.civic-icon {width:1.25rem;height:1.25rem;flex:0 0 1.25rem;display:inline-block;vertical-align:middle;}
.icon-label {display:inline-flex;align-items:center;gap:.65rem;min-width:0;}
.icon-label>span {min-width:0;}
summary>.icon-label {max-width:calc(100% - 1.5rem);vertical-align:middle;}
.evidence-close {
  grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);
  gap:0;padding:0;align-items:stretch;
  border:1px solid var(--nyc-navy);border-top:5px solid var(--nyc-blue);
  border-radius:var(--nyc-radius-small);overflow:hidden;background:var(--nyc-navy);
}
.evidence-close>div {padding:clamp(1.25rem,3vw,2.5rem);min-width:0;}
.evidence-interpretation,.lab-outcome.evidence-interpretation {
  background:var(--nyc-navy);color:var(--nyc-page);
}
.evidence-interpretation :is(h2,h3,strong,p,a) {color:inherit;}
.evidence-close h2 {font-size:clamp(1.6rem,2.5vw,2.2rem);line-height:1.15;margin:0 0 1rem;max-width:26ch;}
.evidence-close .evidence-eyebrow {
  display:flex;align-items:center;gap:.6rem;margin:0 0 1.1rem;
  font:700 .75rem/1.5 var(--nyc-ui);text-transform:uppercase;letter-spacing:.09em;
}
.evidence-eyebrow svg {flex:0 0 24px;}
.evidence-close .evidence-interpretation>p:not(.evidence-eyebrow) {font-size:1rem;line-height:1.65;max-width:65ch;}
.evidence-interpretation a {text-decoration:underline;text-underline-offset:.25em;}
.evidence-interpretation a:hover {text-decoration-thickness:3px;}
.evidence-close .evidence-next {
  background:var(--nyc-blue-wash);display:flex;flex-direction:column;
  justify-content:center;align-items:flex-start;border-left:1px solid var(--nyc-line);
}
.evidence-next .editorial-label {color:var(--nyc-ink);margin:0 0 1rem;}
.evidence-next .primary {background:var(--nyc-navy);border-color:var(--nyc-navy);max-width:100%;text-align:left;}
.evidence-next .primary:hover {background:var(--nyc-blue);border-color:var(--nyc-blue);}
.evidence-next .primary span {flex-shrink:0;}
.story-source-drawer {
  background:var(--nyc-blue-wash);border:1px solid var(--nyc-line);
  border-left:4px solid var(--nyc-blue);border-radius:var(--nyc-radius-small);
  padding:1rem 1.25rem;color:var(--nyc-ink);
}
.story-source-drawer summary {min-height:44px;align-content:center;font-weight:700;cursor:pointer;}
.story-source-drawer[open] summary {border-bottom:1px solid var(--nyc-line);padding-bottom:1rem;margin-bottom:1rem;}
.lab-outcome.evidence-interpretation {border-left:4px solid var(--nyc-blue);border-radius:var(--nyc-radius-small);padding:1.4rem;}
@media(max-width:760px){
  .evidence-close {grid-template-columns:minmax(0,1fr);}
  .evidence-close .evidence-next {border-left:0;border-top:1px solid var(--nyc-line);}
}
