/* Dashboard palette aligned with ptplnnr.com. Keep other public pages scoped out. */
html.dashboard-page {
  --brand: #15718a;
  --deep: #115b6f;
  --glow: #b9d532;
  --chart-series: #15718a;
  --chart-label: #486570;
  --chart-grid: #d8e6ea;
}
html.dashboard-page[data-public-theme="dark"] {
  --pub-bg: #091519;
  --pub-bg-image: none;
  --pub-surface: #142a30;
  --pub-surface-2: #1c363e;
  --pub-text: #e2edf1;
  --pub-heading: #f4fafc;
  --pub-muted: #b7cbd3;
  --pub-border: #36525d;
  --pub-accent: #80ddeb;
  --pub-chrome-muted: #c1d5dd;
  --ink: #f4fafc;
  --mute: #b7cbd3;
  --chart-series: #80ddeb;
  --chart-label: #c5d8e0;
  --chart-grid: #36525d;
}
html.dashboard-page[data-public-theme="dark"] .card:not(.fin) {
  background-color: var(--pub-surface) !important;
}
html.dashboard-page[data-public-theme="dark"] .card .text-brand {
  color: var(--pub-accent) !important;
}
.dashboard-page .gender-series-dot {
  background: var(--chart-series);
  color: var(--chart-series);
}
html.dashboard-page[data-public-theme="plnnr"] {
  --pub-bg: #f3f7f8;
  --pub-bg-image: none;
  --pub-surface: #ffffff;
  --pub-surface-2: #edf5f7;
  --pub-border: #d8e6ea;
  --pub-heading: #115b6f;
  --pub-text: #294b57;
  --pub-muted: #587580;
  --pub-accent: #15718a;
  --pub-chrome-bg: #15718a;
  --pub-chrome-solid: #15718a;
  --pub-chrome-btn-text: #115b6f;
  --ink: #115b6f;
  --mute: #587580;
  --line: #d8e6ea;
}
html.dashboard-page body,
.dashboard-page .public-chrome,
.dashboard-page .card {
  transition: background-color .5s ease, color .5s ease, border-color .5s ease, transform .25s ease, box-shadow .25s ease;
}
.dashboard-page .app-header::after { display: none; }
.dashboard-page .app-header { border-bottom: 3px solid #b9d532 !important; }
.dashboard-page .card { box-shadow: 0 4px 18px -10px rgba(17,91,111,.2); }
.dashboard-page .kpi::before { background: linear-gradient(#15718a, #b9d532); }
.dashboard-page .kpi-ico { color: #15718a; background: #e8f3f6; }
.dashboard-page .esg-ico { background: #15718a; }
html.dashboard-page[data-public-theme] .fin {
  background-color: #15718a !important;
  background-image: linear-gradient(120deg, #115b6f, #15718a) !important;
}
.dashboard-page .fin::after { background: radial-gradient(circle, rgba(185,213,50,.06), transparent 70%); }
html.dashboard-page[data-public-theme] .fin .text-white\/80 { color: #fff !important; }
.dashboard-page .dot { box-shadow: none; }
.dashboard-page [data-public-theme-button="plnnr"] > span:first-child { background: #15718a !important; }

/* The geographical canvas is always light, independently of the surrounding theme. */
.dashboard-page .map-wrap {
  background: #aad3df;
  border: 1px solid #cadfe6;
  box-shadow: 0 8px 28px -16px rgba(17,91,111,.25);
  color-scheme: light;
}
.dashboard-page .leaflet-container { background: #aad3df !important; }
html.dashboard-page[data-public-theme] .leaflet-tile-pane { filter: none; }
.dashboard-page .map-frame { box-shadow: inset 0 0 0 1px rgba(21,113,138,.08); }
.dashboard-page .map-topbar {
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(255,255,255,.95);
  border: 1px solid #d8e6ea;
  box-shadow: 0 3px 12px rgba(17,91,111,.08);
}
.dashboard-page .map-eyebrow { color: #115b6f; background: #eef6dc; border-color: #d3e7a3; }
.dashboard-page .live-dot { background: #6e941d; }
.dashboard-page .map-title { color: #115b6f; text-shadow: none; }
.dashboard-page .project-map-legend,
.dashboard-page .map-btn {
  color: #294b57;
  background: rgba(255,255,255,.97);
  border-color: #cadfe6;
  box-shadow: 0 3px 12px rgba(17,91,111,.1);
}
.dashboard-page .project-map-legend strong { color: #115b6f; }
.dashboard-page .map-btn:hover { background: #e8f3f6; color: #115b6f; }
.dashboard-page .map-btn:focus-visible { outline: 3px solid #15718a; outline-offset: 3px; }
.dashboard-page .leaflet-control-zoom a { background: #fff !important; color: #115b6f !important; border-color: #cadfe6 !important; }
.dashboard-page .leaflet-control-zoom a:hover { background: #e8f3f6 !important; }
.dashboard-page .leaflet-control-attribution { background: rgba(255,255,255,.9) !important; color: #486570 !important; }
.dashboard-page .leaflet-control-attribution a { color: #115b6f !important; }
.dashboard-page .project-tooltip { box-shadow: 0 8px 24px rgba(17,91,111,.18) !important; }
.dashboard-page .project-tooltip-card { background: #fff; border-color: #cadfe6; }
.dashboard-page .project-tooltip-head { background: #15718a; }
.dashboard-page .project-tooltip-type { color: #486570; }
.dashboard-page .project-tooltip-capacity { background: #eef6dc; color: #476315; }
.dashboard-page .project-tooltip-media { background: #edf5f7; }
.dashboard-page .project-tooltip-image-placeholder { color: #486570; }
html.dashboard-page[data-public-theme] .leaflet-popup-content-wrapper,
html.dashboard-page[data-public-theme] .leaflet-popup-tip { background: #fff !important; color: #294b57 !important; }
.dashboard-page .leaflet-popup-content a { color: #15718a !important; }
@media (prefers-reduced-motion: reduce) {
  .dashboard-page *, .dashboard-page *::before, .dashboard-page *::after { transition: none !important; }
}
