/* AB-018: Complete theme palettes for Life Update and Technology Works.
 * This stylesheet is loaded with the public bundle and affects only these two
 * Pacorips surfaces. Do not repaint the surrounding WordPress theme. */
.tbfab-public:is(.tbfab-live-page,.tbfab-tech-page){
  --tbfab-lt-surface:#ffffff;
  --tbfab-lt-elevated:#f7f9fb;
  --tbfab-lt-gradient-start:#fbfcfd;
  --tbfab-lt-gradient-end:#edf3f7;
  --tbfab-lt-line:#dce4eb;
  --tbfab-lt-ink:#162333;
  --tbfab-lt-sub:#566574;
  --tbfab-lt-muted:#667789;
  --tbfab-lt-focus:#1d6f95;
  color:var(--tbfab-lt-ink);
}
html[data-tbfab-theme="dark"] .tbfab-public:is(.tbfab-live-page,.tbfab-tech-page){
  --tbfab-lt-surface:#172637;
  --tbfab-lt-elevated:#1d3044;
  --tbfab-lt-gradient-start:#142437;
  --tbfab-lt-gradient-end:#102032;
  --tbfab-lt-line:#395064;
  --tbfab-lt-ink:#f0f6ff;
  --tbfab-lt-sub:#d0dceb;
  --tbfab-lt-muted:#b7c9d9;
  --tbfab-lt-focus:#91dafa;
  color:var(--tbfab-lt-ink);
}
/* Existing white cards, timeline, workflow diagram, and controls share one palette. */
.tbfab-public:is(.tbfab-live-page,.tbfab-tech-page) :is(
  .tbfab-live-hero,.tbfab-tech-hero,.tbfab-country-clocks,
  .tbfab-source-stack,.tbfab-data-we-map,.tbfab-research-map
){
  background:linear-gradient(155deg,var(--tbfab-lt-gradient-start),var(--tbfab-lt-gradient-end));
  border-color:var(--tbfab-lt-line);
  color:var(--tbfab-lt-ink);
}
.tbfab-public:is(.tbfab-live-page,.tbfab-tech-page) :is(
  .tbfab-live-kicker,.tbfab-live-metrics article,.tbfab-life-controls,
  .tbfab-update-copy,.tbfab-live-disclosure,.tbfab-research-core,
  .tbfab-engine,.tbfab-tech-grid article,.tbfab-source-columns article,
  .tbfab-data-chip-grid span,.tbfab-tech-flow div,.tbfab-clock-table
){
  background:var(--tbfab-lt-surface);
  border-color:var(--tbfab-lt-line);
  color:var(--tbfab-lt-ink);
}
.tbfab-public:is(.tbfab-live-page,.tbfab-tech-page) :is(
  .tbfab-live-hero>p,.tbfab-tech-hero>p,
  .tbfab-live-metrics span,.tbfab-update-log>header>p:last-child,
  .tbfab-update-copy p,.tbfab-update-top time,
  .tbfab-country-clocks>header>p:last-child,.tbfab-clock-table small,
  .tbfab-clock-table time,.tbfab-life-filter-copy small,
  .tbfab-live-disclosure p,.tbfab-source-stack header>p:last-child,
  .tbfab-tech-grid p,.tbfab-source-columns p,.tbfab-data-we-map>p,
  .tbfab-research-core em,.tbfab-research-core small,
  .tbfab-tech-flow span,.tbfab-feed-status
){ color:var(--tbfab-lt-sub); }
.tbfab-public:is(.tbfab-live-page,.tbfab-tech-page) :is(
  .tbfab-tech-grid h3,.tbfab-source-columns h4,
  .tbfab-live-metrics strong,.tbfab-research-core strong,
  .tbfab-engine span,.tbfab-update-copy h4,
  .tbfab-life-filter-copy strong,.tbfab-update-log h3,
  .tbfab-country-clocks h3,.tbfab-live-disclosure strong
){ color:var(--tbfab-lt-ink); }
/* Selectable filters, typed search, load-more and navigation all respond to mode. */
.tbfab-public.tbfab-live-page :is(
  .tbfab-life-filter-pills button:not(.is-active),
  .tbfab-event-filter-pills button:not(.is-active),
  .tbfab-lazy-footer button,.tbfab-life-search input
){
  background:var(--tbfab-lt-surface);
  border-color:var(--tbfab-lt-line);
  color:var(--tbfab-lt-ink);
}
.tbfab-public.tbfab-live-page .tbfab-life-search span,
.tbfab-public.tbfab-tech-page .tbfab-data-chip-grid span{
  color:var(--tbfab-lt-sub);
}
.tbfab-public.tbfab-live-page .tbfab-life-search input::placeholder{color:var(--tbfab-lt-muted);opacity:1}
.tbfab-public.tbfab-live-page :is(.tbfab-life-filter-pills,.tbfab-event-filter-pills) button:focus-visible,
.tbfab-public.tbfab-live-page :is(.tbfab-life-search input,.tbfab-lazy-footer button):focus-visible{
  outline:2px solid var(--tbfab-lt-focus);outline-offset:2px;
}
.tbfab-public.tbfab-live-page .tbfab-life-filter-pills button:not(.is-active) span{
  background:var(--tbfab-lt-elevated);color:var(--tbfab-lt-sub);
}
.tbfab-public.tbfab-live-page .tbfab-update-timeline:before{background:var(--tbfab-lt-line)}
.tbfab-public.tbfab-live-page .tbfab-update-top>span{color:var(--tbfab-lt-focus)}
.tbfab-public.tbfab-live-page .tbfab-update-log .tbfab-lazy-empty{
  background:var(--tbfab-lt-elevated);border-color:var(--tbfab-lt-line);color:var(--tbfab-lt-sub);
}
.tbfab-public.tbfab-live-page .tbfab-clock-table :is(th,td){
  background:var(--tbfab-lt-surface);color:var(--tbfab-lt-ink);border-color:var(--tbfab-lt-line);
}
.tbfab-public.tbfab-live-page .tbfab-clock-table tr:target :is(th,td){
  background:var(--tbfab-lt-elevated);
}
.tbfab-public.tbfab-live-page .tbfab-clock-table time{color:var(--tbfab-lt-sub)}
.tbfab-public.tbfab-live-page .tbfab-country-clocks .tbfab-clock-explainer{
  background:var(--tbfab-lt-elevated);border-color:var(--tbfab-lt-line);color:var(--tbfab-lt-ink);
}
.tbfab-public.tbfab-tech-page .tbfab-tech-grid article>small{
  background:var(--tbfab-lt-elevated);color:var(--tbfab-lt-sub);
}
.tbfab-public.tbfab-tech-page .tbfab-tech-flow b{
  background:#253a50;color:#fff;
}
.tbfab-public.tbfab-tech-page .tbfab-engine b{color:var(--tbfab-lt-focus)}
.tbfab-public:is(.tbfab-live-page,.tbfab-tech-page) .tbfab-live-hero-actions a:not(:first-child){
  background:var(--tbfab-lt-surface);border-color:var(--tbfab-lt-line);
  color:var(--tbfab-lt-ink)!important;
}
.tbfab-public:is(.tbfab-live-page,.tbfab-tech-page) .tbfab-live-hero-actions a:focus-visible{
  outline:2px solid var(--tbfab-lt-focus);outline-offset:3px;
}
/* The monitor strip intentionally remains dark in both modes. */
@media (prefers-reduced-motion:reduce){
  .tbfab-public.tbfab-tech-page :is(.tbfab-research-map:before,.tbfab-research-map:after,.tbfab-engine){animation:none}
}
/* The shared footer is rendered immediately after these two sections. */
.tbfab-public:is(.tbfab-live-page,.tbfab-tech-page) + .tbfab-scorecard-footer{
  background:linear-gradient(150deg,#fff,#f5f8fb);
  color:#162333;
  border-color:#dce4eb;
}
html[data-tbfab-theme="dark"] .tbfab-public:is(.tbfab-live-page,.tbfab-tech-page) + .tbfab-scorecard-footer{
  background:linear-gradient(150deg,#182b3e,#102032);
  color:#f0f6ff;
  border-color:#395064;
}
html[data-tbfab-theme="dark"] .tbfab-public:is(.tbfab-live-page,.tbfab-tech-page) + .tbfab-scorecard-footer .tbfab-country-nav-footer{
  background:#15283a!important;
  border-color:#395064;
}
html[data-tbfab-theme="dark"] .tbfab-public:is(.tbfab-live-page,.tbfab-tech-page) + .tbfab-scorecard-footer :is(h3,p,strong){color:#f0f6ff}
.tbfab-public.tbfab-live-page .tbfab-rank-population-note{font-size:.78rem;color:var(--tbfab-lt-sub)}
