.stromatlas,
.stromatlas-dashboard,
.median-dashboard,
.capital-comparison-dashboard,
.sunshine-overview {
  --chs-comp-total: #374151;
  --chs-comp-netz: #3b82c4;
  --chs-comp-messwesen: #7c6bc7;
  --chs-comp-energie: #3f8f6b;
  --chs-comp-abgaben: #d7a928;
  --chs-comp-netzzuschlag: #c96a5a;
  --chs-comp-total-soft: #f3f4f6;
  --chs-comp-netz-soft: #eaf3fb;
  --chs-comp-messwesen-soft: #f1eefb;
  --chs-comp-energie-soft: #eaf6ef;
  --chs-comp-abgaben-soft: #fff7d6;
  --chs-comp-netzzuschlag-soft: #fbedeb;
}
.chs-tariff-component--total{--chs-comp-color:var(--chs-comp-total);--chs-comp-soft:var(--chs-comp-total-soft)}
.chs-tariff-component--netz{--chs-comp-color:var(--chs-comp-netz);--chs-comp-soft:var(--chs-comp-netz-soft)}
.chs-tariff-component--messwesen{--chs-comp-color:var(--chs-comp-messwesen);--chs-comp-soft:var(--chs-comp-messwesen-soft)}
.chs-tariff-component--energie{--chs-comp-color:var(--chs-comp-energie);--chs-comp-soft:var(--chs-comp-energie-soft)}
.chs-tariff-component--abgaben{--chs-comp-color:var(--chs-comp-abgaben);--chs-comp-soft:var(--chs-comp-abgaben-soft)}
.chs-tariff-component--netzzuschlag{--chs-comp-color:var(--chs-comp-netzzuschlag);--chs-comp-soft:var(--chs-comp-netzzuschlag-soft)}
.stromatlas th[class*="chs-tariff-component--"],
.median-dashboard th[class*="chs-tariff-component--"]{background:linear-gradient(180deg,var(--chs-comp-soft),#fff);box-shadow:inset 0 3px 0 var(--chs-comp-color)}
.stromatlas td[class*="chs-tariff-component--"],
.median-dashboard td[class*="chs-tariff-component--"]{box-shadow:inset 3px 0 0 var(--chs-comp-color);background:linear-gradient(90deg,var(--chs-comp-soft),rgba(255,255,255,0) 42%)}
.chs-component-dot{display:inline-block;width:.72em;height:.72em;border-radius:999px;background:var(--chs-comp-color);box-shadow:0 0 0 1px rgba(15,23,42,.12) inset;margin-right:.35em;vertical-align:-.04em}
.chs-table-context-note{margin-top:.65rem;font-size:.82rem;line-height:1.35;background:#f8fafc;border-color:#e2e8f0;color:#475569}
.chs-table-context-note--compact{margin-top:.25rem;font-size:.74rem;line-height:1.35}
.capital-comparison-dashboard[class*="chs-tariff-component--"] .capital-table-cost,
.capital-comparison-dashboard[class*="chs-tariff-component--"] .capital-value{border-left:3px solid var(--chs-comp-color);padding-left:6px;background:linear-gradient(90deg,var(--chs-comp-soft),rgba(255,255,255,0) 58%)}
.capital-comparison-dashboard[class*="chs-tariff-component--"] .capital-bar-bg{box-shadow:inset 0 0 0 1px var(--chs-comp-color)}
.stromatlas-dashboard {
  font-family: system-ui;
  margin: 20px 0;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.dashboard-topline {
  margin-bottom: 12px;
}


.dashboard-header h1,
.stromatlas-dashboard h2,
.stromatlas-dashboard h3 {
  color: #111827;
  letter-spacing: -0.01em;
}

.dashboard-header h1 {
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  line-height: 1.1;
}

.stromatlas-dashboard h2 {
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  margin: 0 0 16px;
}

.stromatlas-dashboard h3 {
  font-size: 1.05rem;
  margin: 0 0 14px;
}

.dashboard-filterbar {
  margin: 0 0 24px;
  padding: 14px 16px;
  background: linear-gradient(180deg, #f8fafc, #f1f5f9);
  border: 1px solid #dbe4ee;
  border-radius: 16px;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.04);
}

.dashboard-filterbar form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.dashboard-filterbar label {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 13px;
  font-weight: 700;
  color: #334155;
}

.dashboard-filterbar select {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #cbd5e1;
  border-radius: 12px;
  background: #fff;
  color: #111827;
  font-size: 14px;
}

.dashboard-section {
  margin: 0 0 28px;
  padding: 22px;
  background: linear-gradient(180deg, #ffffff, #fbfdff);
  border: 1px solid #e5edf5;
  border-radius: 20px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.04);
}

.dashboard-section + .dashboard-section {
  margin-top: 26px;
}

.dashboard-section-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
  font-size: clamp(1.55rem, 2.2vw, 2rem) !important;
  line-height: 1.15;
  font-weight: 850;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.dashboard-section-title-inline {
  margin-top: 6px;
}

.history-note-info {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid #dbe7f3;
  border-radius: 14px;
  background: linear-gradient(180deg, #f8fbff, #f1f6fb);
  color: #334155;
}

.history-note__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  min-width: 22px;
  color: #2563eb;
}

.history-note__icon svg {
  width: 22px;
  height: 22px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.history-note__icon svg circle:first-child {
  fill: rgba(37, 99, 235, 0.08);
}

.history-note__text {
  display: block;
}

.dashboard-section-current {
  border-top: 4px solid #2563eb;
}

.dashboard-section-sunshine {
  border-top: 4px solid #7c3aed;
}

.dashboard-section-compare {
  border-top: 4px solid #0f766e;
}

.provider-accordion {
  border: 1px solid #dde6ef;
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.provider-accordion + .provider-accordion {
  margin-top: 14px;
}

.provider-accordion summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  list-style: none;
  cursor: pointer;
  padding: 16px 18px;
  background: linear-gradient(180deg, #f8fafc, #f1f5f9);
  font-weight: 800;
}

.provider-accordion summary::-webkit-details-marker {
  display: none;
}

.provider-accordion__title {
  font-size: 1rem;
  color: #0f172a;
}

.provider-accordion__chevron {
  display: inline-block;
  min-width: 1.15ch;
  font-size: 26px;
  font-weight: 700;
  line-height: 0.72;
  color: #475569;
  transform: scaleX(1.4) scaleY(0.72);
  transform-origin: center;
  transition: transform 0.2s ease;
}

.provider-accordion[open] .provider-accordion__chevron {
  transform: rotate(180deg) scaleX(1.4) scaleY(0.72);
}

.provider-accordion__body {
  padding: 18px;
  background: #fff;
  display:flex;
  flex-direction:column;
}

.provider-section-block + .provider-section-block {
  margin-top: 18px;
}

.backlink {
  text-decoration: none;
}

.dashboard-header h1 {
  margin: 0 0 12px;
}

.dashboard-meta {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 12px;
  margin: 16px 0 24px;
}

.dashboard-meta .meta-card {
  background: #f4f6f7;
  padding: 14px;
  border-radius: 8px;
}

.dashboard-meta dt {
  font-weight: 700;
  margin-bottom: 6px;
}

.dashboard-meta dd {
  margin: 0;
  line-height: 1.45;
}

.meta-small {
  grid-column: span 2;
}

.meta-medium {
  grid-column: span 3;
}

.meta-large {
  grid-column: span 5;
}

.submeta {
  display: inline-block;
  margin-top: 6px;
  color: #4b5563;
  font-size: 13px;
  word-break: break-word;
}

.metric-grid {
  display: grid;
  gap: 12px;
}

.metric-grid-tariffs {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin: 15px 0 20px;
}

@media (max-width: 1200px) {
  .metric-grid-tariffs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .metric-grid-tariffs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.metric-grid-sunshine {
  grid-template-columns: repeat(4, minmax(180px, 1fr));
}

.provider-accordion__body .metric-grid-tariffs {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

@media (max-width: 1200px) {
  .provider-accordion__body .metric-grid-tariffs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .provider-accordion__body .metric-grid-tariffs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.metric-card {
  padding: 18px;
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  min-height: 132px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
}

.metric-card__label {
  font-size: 13px;
  font-weight: 800;
  opacity: 0.96;
  color: #1f2937;
}

.metric-card__value-row {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  margin-top: 10px;
}

.metric-card__value {
  font-size: clamp(1.6rem, 2vw, 2rem);
  font-weight: 800;
  line-height: 1.05;
  color: #0f172a;
}

.metric-card__unit {
  font-size: 12px;
  color: #6b7280;
  line-height: 1.2;
  margin-bottom: 3px;
}

.metric-card__delta {
  margin-top: 12px;
  font-size: 12px;
  color: #475569;
  font-weight: 600;
}

.card-total {
  background: linear-gradient(180deg, #f8fbff, #eaf2fb);
}

.card-netz {
  background: linear-gradient(180deg, #dbeafe, #bfdbfe);
}

.card-messwesen {
  background: linear-gradient(180deg, #ede9fe, #ddd6fe);
}

.card-energie {
  background: linear-gradient(180deg, #dcfce7, #bbf7d0);
}

.card-abgaben {
  background: linear-gradient(180deg, #fef3c7, #fde68a);
}

.card-netzzuschlag {
  background: linear-gradient(180deg, #fee2e2, #fecaca);
}

.is-up {
  color: #c0392b;
  font-weight: 600;
}

.is-down {
  color: #2e8b57;
  font-weight: 600;
}

.is-flat {
  color: #6b7280;
  font-weight: 700;
}

.badge {
  display: inline-block;
  padding: 3px 8px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
}

.badge-yes {
  background: #dcfce7;
  color: #166534;
}

.badge-no {
  background: #fee2e2;
  color: #991b1b;
}

.badge-warn {
  background: #fef3c7;
  color: #92400e;
}

.tariff-stack-under-cards {
  margin: 8px 0 30px;
}

.tariff-stack-title {
  font-size: 16px;
  font-weight: 700;
  margin: 0 0 10px;
}

.tariff-stack-bar {
  display: flex;
  width: 100%;
  min-height: 40px;
  border-radius: 999px;
  overflow: hidden;
  background: #e9ecef;
}

.tariff-segment {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  font-size: 12px;
  white-space: nowrap;
  border-right: 1px solid rgba(255, 255, 255, 0.65);
  cursor: default;
}

.tariff-segment:last-child {
  border-right: 0;
}

.seg-netz {
  background: #dbeafe;
}

.seg-messwesen {
  background: #ede9fe;
}

.seg-energie {
  background: #dcfce7;
}

.seg-abgaben {
  background: #fef3c7;
}

.seg-netzzuschlag {
  background: #fee2e2;
}


.dashboard-scroll-snap {
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  overscroll-behavior-x: contain;
}

.dashboard-scroll-snap > * {
  scroll-snap-align: start;
}

.dashboard-scroll-snap-chart {
  padding-bottom: 6px;
}

.dashboard-scroll-snap-table {
  padding-bottom: 6px;
}

.dashboard-scroll-snap-table .dashboard-table {
  min-width: 720px;
}

.history-note {
  margin: 0 0 12px;
  color: #4b5563;
}

.history-chart-horizontal {
  display: flex;
  min-width: 640px;
  flex-direction: column;
  gap: 12px;
  padding: 18px 14px;
  background: #f8fafc;
  border-radius: 12px;
  overflow-x: auto;
  margin-bottom: 8px;
}

.history-row {
  display: grid;
  grid-template-columns: 70px minmax(320px, 1fr) 90px;
  gap: 12px;
  align-items: center;
}

.history-year-label {
  font-weight: 600;
}

.history-row-bar-wrap {
  background: #eef2f7;
  border-radius: 999px;
  height: 40px;
  overflow: hidden;
}

.history-row-bar-scale {
  display: flex;
  height: 100%;
  border-radius: 999px;
  overflow: hidden;
}

.history-row-segment {
  height: 100%;
  cursor: default;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 6px;
  overflow: hidden;
}

.history-segment-label {
  font-size: 12px;
  line-height: 1;
  text-align: center;
  color: #374151;
  font-weight: 700;
  white-space: nowrap;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.35);
}

.history-year-total {
  text-align: right;
  font-size: 16px;
  font-weight: 700;
}

.history-unit-note {
  margin: 0 0 14px;
  font-size: 12px;
  color: #6b7280;
}

.history-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 24px;
}

.legend-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #f8f9fa;
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 13px;
}

.chip-color {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  display: inline-block;
}

.history-empty {
  padding: 14px;
  background: #f8f9fa;
  border-radius: 10px;
  margin-bottom: 22px;
  color: #4b5563;
}

.sunshine-section {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin-bottom: 26px;
}

.sunshine-header-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.sunshine-panel {
  border-radius: 14px;
  padding: 18px;
}

.sunshine-panel-dark {
  background: linear-gradient(135deg, #1f2937, #334155);
  color: #fff;
}

.sunshine-panel-status {
  background: linear-gradient(135deg, #f8fafc, #eef2f7);
  border: 1px solid #e5e7eb;
}

.sunshine-kicker {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  opacity: 0.8;
  margin-bottom: 8px;
}

.sunshine-value {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

.sunshine-status-line {
  margin-top: 4px;
}

.sunshine-block {
  border-radius: 14px;
  padding: 18px;
}

.sunshine-block-accent {
  background: linear-gradient(180deg, #fbfdff, #f4f8fc);
  border: 1px solid #dbe7f3;
}

.sunshine-block-soft {
  background: linear-gradient(180deg, #fafafa, #f5f5f5);
  border: 1px solid #ececec;
}

.sunshine-block h3 {
  margin: 0 0 14px;
  font-size: 18px;
}

.sunbox-blue {
  background: linear-gradient(135deg, #dbeafe, #bfdbfe);
}

.sunbox-violet {
  background: linear-gradient(135deg, #ede9fe, #ddd6fe);
}

.sunbox-amber {
  background: linear-gradient(135deg, #fef3c7, #fde68a);
}

.sunbox-teal {
  background: linear-gradient(135deg, #ccfbf1, #99f6e4);
}

.quality-box {
  background: linear-gradient(180deg, #ffffff, #f8fafc);
  border: 1px solid #dbe4ee;
}

.dashboard-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: #fff;
  margin-top: 8px;
  border: 1px solid #e5edf5;
  border-radius: 16px;
  overflow: hidden;
}

.dashboard-table th,
.dashboard-table td {
  padding: 10px;
  border-bottom: 1px solid #eceff1;
  text-align: left;
}

.dashboard-table th {
  background: #f8fafc;
  color: #0f172a;
  font-weight: 800;
}

.sunshine-note {
  margin-top: 10px;
  color: #6b7280;
  font-size: 13px;
}

.dashboard-bottom-backlink {
  margin-top: 24px;
}

.dashboard-footer {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid #eceff1;
  font-size: 13px;
  color: #4b5563;
}

.dashboard-footer div + div {
  margin-top: 6px;
}

@media (max-width: 1200px) {
  .dashboard-meta {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .meta-small,
  .meta-medium,
  .meta-large {
    grid-column: span 3;
  }

  .sunshine-header-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1100px) {
  .metric-grid-sunshine {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
  }
}

@media (max-width: 900px) {
  .history-row {
    grid-template-columns: 60px minmax(240px, 1fr) 90px;
  }

  .history-segment-label {
    display: none;
  }
}

@media (max-width: 900px) {
  .dashboard-filterbar form {
    grid-template-columns: 1fr;
  }

  .dashboard-section {
    padding: 18px;
    border-radius: 18px;
  }

  .provider-accordion__body {
    padding: 16px;
  }
}

@media (max-width: 700px) {
  .dashboard-meta {
    grid-template-columns: 1fr;
  }

  .meta-small,
  .meta-medium,
  .meta-large {
    grid-column: auto;
  }

  .sunshine-header-grid {
    grid-template-columns: 1fr;
  }

  .metric-grid-tariffs {
    grid-template-columns: 1fr;
  }

  .metric-grid-sunshine {
    grid-template-columns: 1fr;
  }

  .metric-card {
    min-height: auto;
    padding: 16px;
  }

  .metric-card__value-row {
    align-items: baseline;
    flex-wrap: wrap;
  }

  .dashboard-filterbar {
    padding: 14px;
  }
}


@page {
  size: A4 portrait;
  margin: 12mm 10mm 12mm 10mm;
}

@media print {
  html,
  body {
    background: #fff !important;
    color: #000 !important;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  .stromatlas-dashboard {
    margin: 0 !important;
    font-size: 10.5pt;
    line-height: 1.35;
  }

  .dashboard-topline,
  .dashboard-bottom-backlink {
    display: none !important;
  }

  .dashboard-section-current {
    break-before: page;
    page-break-before: always;
  }

  .dashboard-section-sunshine,
  .dashboard-print-break-sunshine {
    break-before: page;
    page-break-before: always;
  }

  .dashboard-print-break-sunshine {
    display: block;
    margin-top: 0 !important;
  }

  .backlink {
    display: none !important;
  }

  .history-legend,
  .history-unit-note {
    font-size: 9pt !important;
  }

  .history-legend {
    margin-top: 6mm !important;
  }

  .dashboard-header,
  .dashboard-meta-section,
  .tariff-stack-under-cards,
  .history-chart-horizontal,
  .dashboard-scroll-snap,
  .sunshine-section,
  .dashboard-table,
  .dashboard-footer,
  .metric-grid,
  .sunshine-block,
  .sunshine-header-grid {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  section {
    margin-bottom: 7mm !important;
  }

  h1 {
    font-size: 18pt !important;
    margin: 0 0 4mm 0 !important;
  }

  h2 {
    font-size: 13pt !important;
    margin: 0 0 3mm 0 !important;
    break-after: avoid;
    page-break-after: avoid;
  }

  h3 {
    font-size: 11pt !important;
    margin: 0 0 2.5mm 0 !important;
    break-after: avoid;
    page-break-after: avoid;
  }

  .dashboard-meta {
    gap: 3mm !important;
    margin: 0 0 5mm 0 !important;
  }

  .dashboard-meta .meta-card,
  .metric-card,
  .sunshine-panel,
  .sunshine-block,
  .quality-box,
  .dashboard-table {
    box-shadow: none !important;
    border: 1px solid #d9d9d9 !important;
  }

  .dashboard-meta .meta-card,
  .metric-card,
  .sunshine-panel,
  .quality-box {
    background: #fff !important;
  }

  .metric-card {
    min-height: auto !important;
    padding: 3mm !important;
  }

  .metric-card__label {
    font-size: 9pt !important;
  }

  .metric-card__value {
    font-size: 16pt !important;
  }

  .metric-card__unit {
    font-size: 8pt !important;
  }

  .metric-card__delta {
    font-size: 8.5pt !important;
    margin-top: 2mm !important;
  }

  .tariff-stack-bar {
    min-height: 10mm !important;
    border: 1px solid #d9d9d9 !important;
  }

  .tariff-segment {
    font-size: 8pt !important;
    padding: 0 2mm !important;
  }

  .history-chart-horizontal {
    padding: 3mm !important;
    background: #fff !important;
    border: 1px solid #d9d9d9 !important;
  }

  .history-row {
    grid-template-columns: 18mm 1fr 22mm !important;
    gap: 2.5mm !important;
  }

  .history-year-label {
    font-size: 9pt !important;
  }

  .history-row-bar-wrap {
    height: 9mm !important;
    border: 1px solid #d9d9d9 !important;
    background: #f7f7f7 !important;
  }

  .history-year-total {
    font-size: 11pt !important;
  }

  .history-segment-label {
    display: none !important;
  }

  .sunshine-header-grid,
  .metric-grid-sunshine,
  .metric-grid-tariffs {
    gap: 3mm !important;
  }

  .sunshine-panel,
  .sunshine-block {
    padding: 3mm !important;
    background: #fff !important;
  }

  .sunshine-value {
    font-size: 12pt !important;
  }

  .dashboard-table {
    margin-top: 2mm !important;
    width: 100% !important;
  }

  .dashboard-table th,
  .dashboard-table td {
    padding: 2.2mm 2.5mm !important;
    font-size: 8.5pt !important;
  }

  .dashboard-footer {
    margin-top: 6mm !important;
    padding-top: 3mm !important;
    font-size: 8pt !important;
    border-top: 1px solid #d9d9d9 !important;
  }

  a,
  a:visited {
    color: #000 !important;
    text-decoration: none !important;
  }

  .badge {
    border: 1px solid #cfcfcf !important;
    background: #fff !important;
    color: #000 !important;
  }
}
.provider-accordion-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.provider-accordion {
  border: 1px solid #d9e2ec;
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}

.provider-accordion summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  background: #f8fafc;
  font-weight: 700;
}

.provider-accordion summary::-webkit-details-marker {
  display: none;
}

.provider-accordion__title {
  font-size: 16px;
}

.provider-accordion__meta {
  font-size: 13px;
  color: #4b5563;
  font-weight: 600;
}

.provider-accordion__body {
  padding: 16px;
  display:flex;
  flex-direction:column;
}

.provider-section-block {
  margin-top: 18px;
}

.provider-section-block h3 {
  margin: 0 0 10px;
}


.dashboard-filterbar{margin:0 0 18px;padding:12px 14px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px}
.dashboard-filterbar form{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end}
.dashboard-filterbar label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:#374151}
.dashboard-filterbar select{padding:6px 8px;min-width:140px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#111827}

.dashboard-display-picker{display:block;min-width:240px;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:0}
.dashboard-display-picker summary{list-style:none;cursor:pointer;padding:8px 10px;font-size:13px;font-weight:600;color:#374151}
.dashboard-display-picker summary::-webkit-details-marker{display:none}
.dashboard-display-picker__body{padding:0 10px 10px 10px;display:grid;gap:8px}
.dashboard-display-picker__option{display:flex !important;flex-direction:row !important;align-items:center;gap:8px;font-size:13px !important;font-weight:500 !important;color:#374151}
.dashboard-display-picker__option input{margin:0}


.machine-hint-box{padding:16px 18px;border-radius:12px;margin:8px 0 18px}
.machine-hint-box h2{margin-top:0}
.machine-hint-box--warning{background:#fff4db;border:1px solid #f3d08b}
.machine-hint-box--missing{background:#f3f4f6;border:1px solid #d1d5db}
.machine-inline-note{margin:6px 0 12px;padding:10px 12px;background:#f8fafc;border-left:4px solid #cbd5e1;border-radius:6px}
.machine-tariff-card{margin:0 0 14px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;overflow:hidden}
.machine-tariff-card__summary{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;padding:14px 16px;background:#f8fafc;cursor:pointer;list-style:none}
.machine-tariff-card__summary::-webkit-details-marker{display:none}
.machine-tariff-card__title{font-size:18px;font-weight:700;margin-bottom:4px}
.machine-tariff-card__meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13px;color:#374151}
.machine-tariff-card__keyprices{display:flex;flex-direction:column;gap:4px;font-size:13px;white-space:nowrap}
.machine-tariff-card__keyprices--one-line{
  grid-column:1 / -1;
  flex-direction:row;
  flex-wrap:nowrap;
  gap:6px 12px;
  align-items:center;
  white-space:nowrap;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:thin;
  padding-top:2px;
}
.machine-tariff-card__keyprices--one-line .machine-price-pair{display:inline-flex;align-items:center;gap:5px;flex-wrap:nowrap}
.machine-tariff-card__chevron{display:inline-block;min-width:1.15ch;font-size:26px;font-weight:700;line-height:.72;color:#4b5563;transform:scaleX(1.4) scaleY(.72);transform-origin:center;transition:transform .15s ease}
details[open] .machine-tariff-card__chevron{transform:rotate(180deg) scaleX(1.4) scaleY(.72)}
.machine-tariff-card__body{padding:14px 16px}
.machine-tax-block{margin-bottom:14px}
.machine-linkline{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.machine-linksep{color:#6b7280}
@media (max-width: 900px){.machine-tariff-card__summary{grid-template-columns:1fr}.machine-tariff-card__keyprices{white-space:normal}}

.machine-linkline{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.machine-linksep{color:#6b7280}
.machine-dataset-count{margin-left:8px;color:#4b5563}
.machine-hint-box{padding:16px 18px;border-radius:12px;margin:10px 0 18px}
.machine-hint-box h2{margin-top:0}
.machine-hint-box--warning{background:#fff4db;border:1px solid #f3d08b}
.machine-hint-box--missing{background:#fef2f2;border:1px solid #fecaca}
.machine-tariff-card{margin:0 0 14px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;overflow:hidden}
.machine-tariff-card__summary{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;padding:14px 16px;background:#f8fafc;cursor:pointer;list-style:none}
.machine-tariff-card__summary::-webkit-details-marker{display:none}
.machine-tariff-card__title{font-size:18px;font-weight:700;margin-bottom:4px}
.machine-tariff-card__meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13px;color:#374151}
.machine-tariff-card__keyprices{display:flex;flex-direction:column;gap:4px;font-size:13px;white-space:nowrap}
.machine-tariff-card__chevron{display:inline-block;min-width:1.15ch;font-size:26px;font-weight:700;line-height:.72;color:#4b5563;transform:scaleX(1.4) scaleY(.72);transform-origin:center;transition:transform .15s ease}
details[open] .machine-tariff-card__chevron{transform:rotate(180deg) scaleX(1.4) scaleY(.72)}
.machine-tariff-card__body{padding:14px 16px}
.machine-inline-note{margin:6px 0 12px;padding:10px 12px;background:#f8fafc;border-left:4px solid #cbd5e1;border-radius:6px}
.machine-tax-block{margin-bottom:14px}
@media (max-width: 900px){.machine-tariff-card__summary{grid-template-columns:1fr}.machine-tariff-card__keyprices{white-space:normal}}


.sunshine-card-group-tariffs{margin:14px 0 18px 0;}
.sunshine-card-group-tariffs h3{margin:0 0 10px 0;font-size:20px;}

.metric-grid-sunshine-tariffs{grid-template-columns:repeat(4,minmax(0,1fr));}
@media (max-width: 1200px){.metric-grid-sunshine-tariffs{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 700px){.metric-grid-sunshine-tariffs{grid-template-columns:repeat(1,minmax(0,1fr));}}

.metric-grid-sunshine-tariffs .metric-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.metric-grid-sunshine-tariffs .metric-title{font-size:20px;font-weight:700;margin-bottom:8px}
.metric-grid-sunshine-tariffs .submeta{font-size:12px;color:#6b7280;margin-top:4px}
.metric-grid-sunshine-tariffs .metric-value{font-size:24px;font-weight:700;line-height:1.2}
.metric-grid-sunshine-tariffs .metric-delta{margin-top:4px;font-size:12px;font-weight:600}


/* Sunshine: 7 Tarifgruppenboxen */
.metric-grid-sunshine-tariffs{grid-template-columns:repeat(4,minmax(0,1fr));}
@media (max-width: 1200px){.metric-grid-sunshine-tariffs{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 700px){.metric-grid-sunshine-tariffs{grid-template-columns:repeat(1,minmax(0,1fr));}}
.sunshine-tariff-card .metric-unit{font-size:12px;line-height:1;color:#6b7280;font-weight:500;margin-left:4px;}
.sunshine-tariff-card .metric-value{display:flex;align-items:baseline;gap:4px;}
.sunshine-tariff-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start;}
@media (max-width: 900px){.sunshine-tariff-pair{grid-template-columns:repeat(1,minmax(0,1fr));}}
.sunshine-tariff-col .submeta{font-size:12px;color:#6b7280;margin-bottom:2px;}
.sunshine-tariff-col .metric-delta{font-size:12px;line-height:1.35;}
/* Top-Kennwerte lesbarer */
.sunshine-meta-card .metric-value,
.sunshine-top-card .metric-value,
.sunshine-summary-card .metric-value,
.sunshine-kpi-card .metric-value{font-size:22px;font-weight:700;color:#1f2937;}
.sunshine-meta-card .status-badge,
.sunshine-top-card .status-badge,
.sunshine-summary-card .status-badge,
.sunshine-kpi-card .status-badge,
.sunshine-badge,
.yesno-badge,
.dashboard-badge{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:4px 10px;border-radius:999px;font-size:13px;font-weight:700;line-height:1.2;color:#1f2937;background:#e5e7eb;}
.sunshine-badge.is-yes,.yesno-badge.is-yes,.dashboard-badge.is-yes{background:#dcfce7;color:#166534;}
.sunshine-badge.is-no,.yesno-badge.is-no,.dashboard-badge.is-no{background:#fee2e2;color:#991b1b;}


/* Sunshine obere Metadaten: Ja/Nein deutlich lesbarer */
.sunshine-grid > .metric-card:nth-child(2) .metric-value,
.sunshine-grid > .metric-card:nth-child(4) .metric-value,
.sunshine-meta-grid > .metric-card:nth-child(2) .metric-value,
.sunshine-meta-grid > .metric-card:nth-child(4) .metric-value,
.sunshine-summary-grid > .metric-card:nth-child(2) .metric-value,
.sunshine-summary-grid > .metric-card:nth-child(4) .metric-value,
.sunshine-grid > div:nth-child(2) .metric-value,
.sunshine-grid > div:nth-child(4) .metric-value,
.sunshine-meta-grid > div:nth-child(2) .metric-value,
.sunshine-meta-grid > div:nth-child(4) .metric-value,
.sunshine-summary-grid > div:nth-child(2) .metric-value,
.sunshine-summary-grid > div:nth-child(4) .metric-value {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:4px 12px;
  border-radius:999px;
  font-size:15px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  background:#e5e7eb;
  color:#111827 !important;
}

.sunshine-grid > .metric-card:nth-child(2) .metric-value,
.sunshine-meta-grid > .metric-card:nth-child(2) .metric-value,
.sunshine-summary-grid > .metric-card:nth-child(2) .metric-value,
.sunshine-grid > div:nth-child(2) .metric-value,
.sunshine-meta-grid > div:nth-child(2) .metric-value,
.sunshine-summary-grid > div:nth-child(2) .metric-value {
  background:#dcfce7;
  color:#166534 !important;
}

.sunshine-grid > .metric-card:nth-child(4) .metric-value,
.sunshine-meta-grid > .metric-card:nth-child(4) .metric-value,
.sunshine-summary-grid > .metric-card:nth-child(4) .metric-value,
.sunshine-grid > div:nth-child(4) .metric-value,
.sunshine-meta-grid > div:nth-child(4) .metric-value,
.sunshine-summary-grid > div:nth-child(4) .metric-value {
  background:#fee2e2;
  color:#991b1b !important;
}


@media (max-width: 900px) {
  .dashboard-scroll-snap {
    scroll-padding-left: 0;
  }

  .dashboard-scroll-snap-table .dashboard-table {
    min-width: 680px;
  }

  .history-chart-horizontal {
    min-width: 560px;
  }
}

@media (max-width: 700px) {
  .dashboard-scroll-snap {
    scroll-snap-type: x mandatory;
  }

  .dashboard-scroll-snap-table .dashboard-table {
    min-width: 620px;
  }

  .history-chart-horizontal {
    min-width: 520px;
  }
}

.machine-price-pair,.machine-window-pair{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.machine-price-value,.machine-window-value,.machine-value-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;min-width:4.2ch;border-radius:999px;background:#e8f0fe;border:1px solid #c7d2fe;color:#1e3a8a;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums}
.machine-price-label{font-weight:500}
.machine-price-unit{color:#4b5563}
.machine-value-cell{white-space:nowrap}
.dashboard-table td.machine-value-cell{font-variant-numeric:tabular-nums}


.stromatlas-overview .dashboard-header {
  margin-bottom: 12px;
}

.stromatlas-overview .dashboard-header h1 {
  margin-bottom: 0;
}

.stromatlas-overview .dashboard-filterbar form {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.stromatlas-overview .dashboard-table {
  margin-top: 0;
}

.stromatlas-overview .dashboard-table th,
.stromatlas-overview .dashboard-table td {
  vertical-align: top;
}

.stromatlas-overview .dashboard-table td a,
.stromatlas-overview .dashboard-footer a,
.stromatlas-overview .pagination a {
  font-weight: 600;
}

.stromatlas-overview .dashboard-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
}

.stromatlas-overview .dashboard-pagination .is-active {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  min-height: 36px;
  padding: 0 10px;
  border-radius: 999px;
  background: #e2e8f0;
  color: #0f172a;
  font-weight: 800;
}

.stromatlas-overview .dashboard-pagination a,
.stromatlas-overview .dashboard-pagination select,
.stromatlas-overview .dashboard-pagination input {
  min-height: 36px;
}

.stromatlas-overview .dashboard-pagination select {
  border: 1px solid #cbd5e1;
  border-radius: 10px;
  padding: 6px 10px;
  background: #fff;
}

.stromatlas-overview .overview-footer {
  margin-top: 22px;
}

.stromatlas-overview .machine-linkline {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.stromatlas-overview .machine-linksep {
  color: #94a3b8;
}

@media (max-width: 1100px) {
  .stromatlas-overview .dashboard-filterbar form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .stromatlas-overview .dashboard-pagination {
    align-items: stretch;
  }

  .stromatlas-overview .dashboard-pagination form {
    width: 100%;
  }
}


/* v19.43.33 Sunshine-Tarifboxen: kompaktere Einheiten und Netz/Energie in einer Zeile */
.sunshine-tariff-card .metric-unit{font-size:10px;line-height:1;color:#6b7280;font-weight:500;margin-left:4px;white-space:nowrap;}
.sunshine-tariff-card .metric-value{display:flex;align-items:baseline;gap:4px;flex-wrap:nowrap;font-size:18px;line-height:1.15;}
.sunshine-tariff-card .metric-title{margin-bottom:10px;}
.sunshine-tariff-card .sunshine-tariff-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start;}
@media (max-width: 900px){.sunshine-tariff-card .sunshine-tariff-pair{grid-template-columns:1fr;gap:10px;}}
.sunshine-tariff-card .sunshine-tariff-col{min-width:0;}
.sunshine-tariff-card .sunshine-tariff-col .submeta{font-size:11px;color:#6b7280;margin:0 0 2px 0;text-transform:none;}
.sunshine-tariff-card .sunshine-tariff-col .metric-delta{margin-top:2px;font-size:11px;line-height:1.3;}


/* v19.43.34 Maschinenlesbare Übersicht: kompakter Header, modernere Filter, volle Tabellenbreite */
.stromatlas-overview-machine .dashboard-section{padding:16px 18px 18px}
.stromatlas-overview-machine .dashboard-header{margin-bottom:8px;padding-bottom:2px}
.stromatlas-overview-machine .dashboard-header h1{font-size:clamp(1.9rem,2.4vw,2.6rem);line-height:1.1}
.stromatlas-overview-machine .machine-filterbar{padding:10px 12px;border-radius:14px;background:linear-gradient(180deg,#fbfdff,#f8fafc);border-color:#dbe5f0}
.stromatlas-overview-machine .machine-filterbar form{display:grid;grid-template-columns:minmax(280px,1.6fr) minmax(150px,.7fr) minmax(220px,1fr);gap:12px;align-items:end}
.stromatlas-overview-machine .machine-filter-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.stromatlas-overview-machine .machine-filter-field span{font-size:12px;font-weight:700;letter-spacing:.02em;color:#475569}
.stromatlas-overview-machine .machine-filterbar input[type="text"],
.stromatlas-overview-machine .machine-filterbar select{width:100%;min-height:42px;padding:10px 14px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.04);color:#0f172a;font-size:14px;transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease}
.stromatlas-overview-machine .machine-filterbar input[type="text"]::placeholder{color:#94a3b8}
.stromatlas-overview-machine .machine-filterbar input[type="text"]:focus,
.stromatlas-overview-machine .machine-filterbar select:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 4px rgba(96,165,250,.16)}
.stromatlas-overview-machine .stromtable-scroll-snap{width:100%;overflow-x:auto}
.stromatlas-overview-machine .stromtable-scroll-snap > #stromtable{width:100%;min-width:100%;table-layout:auto}
.stromatlas-overview-machine .dashboard-table th,
.stromatlas-overview-machine .dashboard-table td{padding:11px 12px}
.stromatlas-overview-machine .dashboard-table th:nth-child(1),
.stromatlas-overview-machine .dashboard-table td:nth-child(1){width:56px}
.stromatlas-overview-machine .dashboard-table th:nth-child(2),
.stromatlas-overview-machine .dashboard-table td:nth-child(2),
.stromatlas-overview-machine .dashboard-table th:nth-child(3),
.stromatlas-overview-machine .dashboard-table td:nth-child(3),
.stromatlas-overview-machine .dashboard-table th:nth-child(4),
.stromatlas-overview-machine .dashboard-table td:nth-child(4){width:auto}
@media (max-width: 1100px){
  .stromatlas-overview-machine .machine-filterbar form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stromatlas-overview-machine .machine-filter-field-search{grid-column:1 / -1}
}
@media (max-width: 700px){
  .stromatlas-overview-machine .dashboard-section{padding:14px}
  .stromatlas-overview-machine .dashboard-header h1{font-size:1.7rem}
  .stromatlas-overview-machine .machine-filterbar form{grid-template-columns:1fr;gap:10px}
  .stromatlas-overview-machine .machine-filter-field-search{grid-column:auto}
}

.provider-section-block-sunshine-global {
  margin-top: 1.25rem;
}

.history-note span[aria-hidden="true"] {
  display: inline-block;
  margin-right: 0.35rem;
}


/* v19.43.46 – section heading spacing refinement */
.dashboard-section-sunshine > .dashboard-section-title,
.provider-section-block-sunshine-global > .dashboard-section-title,
.provider-section-block > .dashboard-section-title.dashboard-section-title-inline {
  margin-top: 20px;
  margin-bottom: 22px;
  padding-top: 6px;
}

.provider-section-block-sunshine-global {
  margin-top: 28px;
}

.provider-section-block > .dashboard-section-title.dashboard-section-title-inline {
  display: block;
  width: 100%;
}


.dashboard-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 18px}
.dashboard-action-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 14px;border:1px solid #d0dbe7;border-radius:999px;background:#fff;color:#0f172a;font-size:14px;font-weight:600;line-height:1;text-decoration:none;box-shadow:0 1px 2px rgba(15,23,42,.05);transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease}
.dashboard-action-btn:hover,.dashboard-action-btn:focus{border-color:#93c5fd;box-shadow:0 0 0 4px rgba(96,165,250,.15);outline:none;text-decoration:none;transform:translateY(-1px)}
.dashboard-action-feedback{font-size:13px;color:#475569;min-height:1em}
.dashboard-print-mode .dashboard-actions{display:none}
@media (max-width: 640px){.dashboard-actions{gap:8px}.dashboard-action-btn{width:100%}}
@media print{.dashboard-actions{display:none !important}.dashboard-filterbar{display:none !important}.dashboard-topline{display:none !important}.dashboard-print-mode .dashboard-header{margin-bottom:10px}.dashboard-print-mode .dashboard-section,.dashboard-print-mode .dashboard-meta-section{break-inside:avoid-page}}


.dashboard-action-btn--secondary{background:#fff;color:#1e293b;border:1px solid #cbd5e1}
.dashboard-action-btn.is-active{background:#ecfeff;border-color:#67e8f9;color:#0f766e}
.dashboard-favorites{margin:-8px 0 22px;padding:14px 16px;border:1px solid #dbe4ee;border-radius:16px;background:linear-gradient(180deg,#ffffff,#f8fafc);box-shadow:0 10px 30px rgba(15,23,42,.05)}
.dashboard-favorites__header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;color:#0f172a}
.dashboard-favorites__close{border:0;background:transparent;font-size:24px;line-height:1;cursor:pointer;color:#64748b;padding:0 4px}
.dashboard-favorites__list{display:grid;gap:10px}
.dashboard-favorites__item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #e2e8f0;border-radius:14px;background:#fff}
.dashboard-favorites__link{display:flex;flex-direction:column;gap:3px;min-width:0;text-decoration:none;color:#0f172a;font-weight:700}
.dashboard-favorites__link span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.dashboard-favorites__meta{font-size:12px;font-weight:600;color:#64748b}
.dashboard-favorites__remove{border:1px solid #cbd5e1;background:#fff;border-radius:10px;padding:8px 10px;font-weight:700;cursor:pointer;white-space:nowrap}
.dashboard-favorites__empty{padding:10px 2px;color:#64748b;font-weight:600}
@media (max-width:640px){.dashboard-favorites__item{flex-direction:column;align-items:stretch}.dashboard-favorites__remove{width:100%}}
@media print{.dashboard-favorites{display:none!important}}


/* v19.43.50 Phase 7 print layout refinement */
@media print {
  @page {
    size: A4 portrait;
    margin: 10mm 9mm 12mm 9mm;
  }

  html,
  body {
    width: auto !important;
    overflow: visible !important;
  }

  body {
    font-size: 10pt !important;
  }

  .stromatlas-dashboard,
  .stromatlas-dashboard.dashboard-print-mode {
    max-width: none !important;
    width: 100% !important;
  }

  .dashboard-actions,
  .dashboard-filterbar,
  .dashboard-topline,
  .dashboard-bottom-backlink,
  .dashboard-favorites,
  .dashboard-scroll-indicator,
  .history-unit-note,
  .backlink,
  .btn,
  button {
    display: none !important;
  }

  .dashboard-header {
    margin: 0 0 4mm 0 !important;
    padding: 0 0 2mm 0 !important;
  }

  .dashboard-section,
  .dashboard-meta-section,
  .provider-section-block,
  .provider-group-card,
  .tariff-stack-under-cards,
  .sunshine-section,
  .sunshine-panel,
  .sunshine-block,
  .quality-box,
  .dashboard-table,
  .table-responsive,
  .history-chart-horizontal,
  .history-chart-grid,
  .metric-grid,
  .metric-card,
  .machine-readable-card,
  .dashboard-footer {
    break-inside: avoid-page !important;
    page-break-inside: avoid !important;
  }

  .dashboard-section + .dashboard-section,
  .provider-section-block + .provider-section-block,
  .provider-group-card + .provider-group-card,
  .dashboard-table + .dashboard-table,
  .sunshine-block + .sunshine-block {
    margin-top: 4mm !important;
  }

  .dashboard-section-title,
  .dashboard-section-title-inline,
  .section-title,
  .dashboard-table-title,
  h2,
  h3 {
    break-after: avoid !important;
    page-break-after: avoid !important;
    margin-top: 0 !important;
    margin-bottom: 2.5mm !important;
  }

  .metric-grid,
  .sunshine-box-grid,
  .sunshine-header-grid,
  .quality-grid,
  .dashboard-meta {
    gap: 2.5mm !important;
  }

  .metric-card,
  .quality-box,
  .sunshine-panel,
  .sunshine-block,
  .dashboard-table,
  .dashboard-meta .meta-card,
  .provider-group-card,
  .machine-readable-card {
    box-shadow: none !important;
    background: #fff !important;
    border: 1px solid #d9dee7 !important;
  }

  .metric-card,
  .quality-box,
  .sunshine-panel,
  .dashboard-table,
  .provider-group-card,
  .machine-readable-card {
    padding: 3mm !important;
  }

  .history-chart-horizontal,
  .history-chart-grid,
  .dashboard-scroll-snap,
  .table-responsive,
  .dashboard-table-scroll,
  .dashboard-chart-scroll {
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .history-chart-horizontal svg,
  .history-chart-grid svg,
  .dashboard-chart svg {
    max-width: 100% !important;
    height: auto !important;
  }

  table,
  .dashboard-table table {
    width: 100% !important;
    table-layout: auto !important;
    border-collapse: collapse !important;
  }

  thead {
    display: table-header-group !important;
  }

  tr,
  img,
  svg {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  th,
  td {
    padding-top: 2.2mm !important;
    padding-bottom: 2.2mm !important;
    vertical-align: top !important;
  }

  .metric-card__value,
  .sunshine-value,
  .quality-box__value,
  .dashboard-value-chip,
  .history-value {
    font-size: 12pt !important;
    line-height: 1.15 !important;
  }

  .metric-card__sub,
  .quality-box__label,
  .sunshine-label,
  .dashboard-meta small,
  .dashboard-note {
    color: #475569 !important;
  }
}


.chst-print-root{display:none}

body.chst-print-mode{
  background:#fff !important;
}

@media screen {
  body.chst-print-mode > *:not(.chst-print-root){display:none !important;}
  body.chst-print-mode .chst-print-root{
    display:block !important;
    max-width:1180px;
    margin:0 auto;
    padding:24px 20px 32px;
    background:#fff;
  }
}

@media print {
  body.chst-print-mode > *:not(.chst-print-root){display:none !important;}
  body.chst-print-mode .chst-print-root{
    display:block !important;
    padding:0 !important;
    margin:0 !important;
    max-width:none !important;
  }
  body.chst-print-mode .chst-print-root .stromatlas-dashboard{
    margin:0 !important;
    width:100% !important;
    max-width:none !important;
  }
  body.chst-print-mode .chst-print-root .dashboard-actions,
  body.chst-print-mode .chst-print-root .dashboard-favorites,
  body.chst-print-mode .chst-print-root .dashboard-filterbar,
  body.chst-print-mode .chst-print-root .dashboard-bottom-backlink,
  body.chst-print-mode .chst-print-root .backlink,
  body.chst-print-mode .chst-print-root button,
  body.chst-print-mode .chst-print-root [data-dashboard-share],
  body.chst-print-mode .chst-print-root [data-dashboard-favorite],
  body.chst-print-mode .chst-print-root [data-dashboard-favorites-toggle]{display:none !important;}
}


/* v19.43.53 Print layout compact + expanded grouped tariffs */
@media print {
  body.chst-print-mode,
  body.chst-print-mode .chst-print-root,
  body.chst-print-mode .chst-print-root .stromatlas-dashboard {
    font-size: 9.5pt !important;
    line-height: 1.28 !important;
  }

  body.chst-print-mode .chst-print-root .dashboard-section-title,
  body.chst-print-mode .chst-print-root h2 {
    font-size: 18pt !important;
    margin-bottom: 3mm !important;
  }

  body.chst-print-mode .chst-print-root h3,
  body.chst-print-mode .chst-print-root .provider-accordion__title {
    font-size: 10.5pt !important;
  }

  body.chst-print-mode .chst-print-root .history-note,
  body.chst-print-mode .chst-print-root .submeta,
  body.chst-print-mode .chst-print-root .sunshine-note,
  body.chst-print-mode .chst-print-root .dashboard-footer,
  body.chst-print-mode .chst-print-root .metric-card__delta,
  body.chst-print-mode .chst-print-root .metric-delta,
  body.chst-print-mode .chst-print-root .metric-unit,
  body.chst-print-mode .chst-print-root .metric-title,
  body.chst-print-mode .chst-print-root .sunshine-kicker,
  body.chst-print-mode .chst-print-root .provider-accordion summary {
    font-size: 8.6pt !important;
    line-height: 1.22 !important;
  }

  body.chst-print-mode .chst-print-root .metric-card__value,
  body.chst-print-mode .chst-print-root .metric-value {
    font-size: 15pt !important;
    line-height: 1.08 !important;
  }

  body.chst-print-mode .chst-print-root .provider-accordion-list {
    gap: 3mm !important;
  }

  body.chst-print-mode .chst-print-root .provider-accordion {
    margin-bottom: 3mm !important;
    break-inside: avoid-page !important;
    page-break-inside: avoid !important;
  }

  body.chst-print-mode .chst-print-root .provider-accordion:nth-of-type(n+2) {
    break-before: page !important;
    page-break-before: always !important;
  }

  body.chst-print-mode .chst-print-root .provider-accordion summary {
    padding: 2.8mm 3mm !important;
  }

  body.chst-print-mode .chst-print-root .provider-accordion__body {
    padding: 3mm !important;
  }
}


/* v19.43.54 Print sunshine typography refinement */
@media print {
  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .metric-card__value,
  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .metric-value,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .metric-card__value,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .metric-value,
  body.chst-print-mode .chst-print-root .sunshine-section .metric-card__value,
  body.chst-print-mode .chst-print-root .sunshine-section .metric-value,
  body.chst-print-mode .chst-print-root .sunshine-tariff-card .metric-value,
  body.chst-print-mode .chst-print-root .sunshine-kpi-card .metric-value,
  body.chst-print-mode .chst-print-root .sunshine-meta-card .metric-value,
  body.chst-print-mode .chst-print-root .sunshine-summary-card .metric-value {
    font-size: 12.2pt !important;
    line-height: 1.02 !important;
    letter-spacing: -0.01em !important;
  }

  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .metric-unit,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .metric-unit,
  body.chst-print-mode .chst-print-root .sunshine-section .metric-unit,
  body.chst-print-mode .chst-print-root .sunshine-tariff-card .metric-unit,
  body.chst-print-mode .chst-print-root .sunshine-kpi-card .metric-unit,
  body.chst-print-mode .chst-print-root .sunshine-meta-card .metric-unit,
  body.chst-print-mode .chst-print-root .sunshine-summary-card .metric-unit,
  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .metric-title,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .metric-title,
  body.chst-print-mode .chst-print-root .sunshine-section .metric-title,
  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .submeta,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .submeta,
  body.chst-print-mode .chst-print-root .sunshine-section .submeta,
  body.chst-print-mode .chst-print-root .sunshine-tariff-col .submeta,
  body.chst-print-mode .chst-print-root .sunshine-kicker,
  body.chst-print-mode .chst-print-root .sunshine-note,
  body.chst-print-mode .chst-print-root .sunshine-badge,
  body.chst-print-mode .chst-print-root .yesno-badge,
  body.chst-print-mode .chst-print-root .dashboard-badge,
  body.chst-print-mode .chst-print-root .status-badge {
    font-size: 7.4pt !important;
    line-height: 1.14 !important;
  }

  body.chst-print-mode .chst-print-root .sunshine-tariff-card .metric-delta,
  body.chst-print-mode .chst-print-root .sunshine-section .metric-delta,
  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .metric-delta,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .metric-delta {
    font-size: 7.6pt !important;
    line-height: 1.14 !important;
    margin-top: 1.2mm !important;
  }

  body.chst-print-mode .chst-print-root .sunshine-section .metric-card,
  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .metric-card,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .metric-card,
  body.chst-print-mode .chst-print-root .sunshine-panel,
  body.chst-print-mode .chst-print-root .sunshine-block {
    padding-top: 2.4mm !important;
    padding-bottom: 2.4mm !important;
  }
}


/* v19.43.55 Phase 7 Print-Polish final */
@media print {
  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .sunshine-header-grid,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .sunshine-header-grid,
  body.chst-print-mode .chst-print-root .sunshine-section .sunshine-header-grid {
    gap: 2.2mm !important;
    align-items: stretch !important;
  }

  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .sunshine-panel,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .sunshine-panel,
  body.chst-print-mode .chst-print-root .sunshine-section .sunshine-panel {
    padding: 2.1mm 2.5mm !important;
    min-height: auto !important;
  }

  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .sunshine-panel-dark,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .sunshine-panel-dark,
  body.chst-print-mode .chst-print-root .sunshine-section .sunshine-panel-dark {
    background: #f2f5f9 !important;
    border: 1px solid #d6dde7 !important;
    color: #111827 !important;
  }

  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .sunshine-panel-dark .sunshine-kicker,
  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .sunshine-panel-dark .sunshine-value,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .sunshine-panel-dark .sunshine-kicker,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .sunshine-panel-dark .sunshine-value,
  body.chst-print-mode .chst-print-root .sunshine-section .sunshine-panel-dark .sunshine-kicker,
  body.chst-print-mode .chst-print-root .sunshine-section .sunshine-panel-dark .sunshine-value {
    color: #111827 !important;
    opacity: 1 !important;
  }

  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .sunshine-kicker,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .sunshine-kicker,
  body.chst-print-mode .chst-print-root .sunshine-section .sunshine-kicker {
    font-size: 6.8pt !important;
    line-height: 1.08 !important;
    margin-bottom: 0.8mm !important;
    letter-spacing: 0.03em !important;
  }

  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .sunshine-value,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .sunshine-value,
  body.chst-print-mode .chst-print-root .sunshine-section .sunshine-value,
  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .metric-card__value,
  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .metric-value,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .metric-card__value,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .metric-value,
  body.chst-print-mode .chst-print-root .sunshine-section .metric-card__value,
  body.chst-print-mode .chst-print-root .sunshine-section .metric-value,
  body.chst-print-mode .chst-print-root .sunshine-tariff-card .metric-value,
  body.chst-print-mode .chst-print-root .sunshine-kpi-card .metric-value,
  body.chst-print-mode .chst-print-root .sunshine-meta-card .metric-value,
  body.chst-print-mode .chst-print-root .sunshine-summary-card .metric-value {
    font-size: 10.8pt !important;
    line-height: 1 !important;
    letter-spacing: -0.01em !important;
  }

  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .metric-unit,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .metric-unit,
  body.chst-print-mode .chst-print-root .sunshine-section .metric-unit,
  body.chst-print-mode .chst-print-root .sunshine-tariff-card .metric-unit,
  body.chst-print-mode .chst-print-root .sunshine-kpi-card .metric-unit,
  body.chst-print-mode .chst-print-root .sunshine-meta-card .metric-unit,
  body.chst-print-mode .chst-print-root .sunshine-summary-card .metric-unit,
  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .metric-title,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .metric-title,
  body.chst-print-mode .chst-print-root .sunshine-section .metric-title,
  body.chst-print-mode .chst-print-root .dashboard-section-sunshine .submeta,
  body.chst-print-mode .chst-print-root .provider-section-block-sunshine-global .submeta,
  body.chst-print-mode .chst-print-root .sunshine-section .submeta,
  body.chst-print-mode .chst-print-root .sunshine-tariff-col .submeta,
  body.chst-print-mode .chst-print-root .sunshine-note,
  body.chst-print-mode .chst-print-root .sunshine-badge,
  body.chst-print-mode .chst-print-root .yesno-badge,
  body.chst-print-mode .chst-print-root .dashboard-badge,
  body.chst-print-mode .chst-print-root .status-badge {
    font-size: 6.7pt !important;
    line-height: 1.1 !important;
  }

  body.chst-print-mode .chst-print-root .sunshine-grid > .metric-card:nth-child(-n+4),
  body.chst-print-mode .chst-print-root .sunshine-meta-grid > .metric-card:nth-child(-n+4),
  body.chst-print-mode .chst-print-root .sunshine-summary-grid > .metric-card:nth-child(-n+4),
  body.chst-print-mode .chst-print-root .sunshine-header-grid > .sunshine-panel:nth-child(-n+4) {
    min-height: 12mm !important;
  }
}


/* v19.43.56 – SVG action buttons and isolated print shell */
.dashboard-action-btn{gap:9px;padding-left:12px;padding-right:14px}
.dashboard-action-btn__icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 18px;color:currentColor}
.dashboard-action-btn__icon svg{display:block;width:18px;height:18px}
.dashboard-action-btn span{display:inline-block}
.dashboard-action-btn[data-dashboard-pdf="1"] .dashboard-action-btn__icon{color:#0f766e}
.dashboard-action-btn[data-dashboard-share="1"] .dashboard-action-btn__icon{color:#2563eb}
.dashboard-action-btn[data-dashboard-favorite="1"] .dashboard-action-btn__icon{color:#b45309}
.dashboard-action-btn--secondary .dashboard-action-btn__icon{color:#475569}

body.chst-print-mode{background:#fff !important}
body.chst-print-mode > *{display:none !important}
body.chst-print-mode > .chst-print-root{display:block !important}
.chst-print-root{display:none;background:#fff;color:#0f172a}
body.chst-print-mode .chst-print-root{display:block;max-width:1120px;margin:0 auto;padding:0;background:#fff}
html.chst-print-shell, html.chst-print-shell body{overflow:visible !important;height:auto !important}
body.chst-print-mode .chst-print-root .dashboard-actions,
body.chst-print-mode .chst-print-root .dashboard-favorites,
body.chst-print-mode .chst-print-root .dashboard-filterbar,
body.chst-print-mode .chst-print-root .backlink,
body.chst-print-mode .chst-print-root .dashboard-bottom-backlink,
body.chst-print-mode .chst-print-root .dashboard-topline{display:none !important}

@media print{
  html.chst-print-shell body > *{display:none !important}
  html.chst-print-shell body > .chst-print-root{display:block !important}
  body.chst-print-mode .chst-print-root{max-width:none !important;padding:0 !important;margin:0 !important}
}


/* Phase 8.1 Median-Basis */
.median-benchmark{margin:16px 0 10px;padding:14px 16px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#f8fafc}
.median-benchmark__intro{font-size:.82rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#334155;margin:0 0 12px}
.median-benchmark__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.median-benchmark-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:16px;padding:12px 13px;box-shadow:0 1px 2px rgba(15,23,42,.03)}
.median-benchmark-card__label{font-size:.82rem;font-weight:700;color:#0f172a;margin-bottom:8px}
.median-benchmark-card__row{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:4px}
.median-benchmark-card__term{font-size:.78rem;color:#64748b}
.median-benchmark-card__value{font-size:.95rem;font-weight:700;color:#0f172a;text-align:right}
.median-benchmark-card__unit{font-size:.72rem;font-weight:600;color:#64748b}
.median-benchmark-card__delta{margin-top:8px;font-size:.78rem;line-height:1.35}
.median-benchmark-card__delta .is-up{color:#b91c1c}
.median-benchmark-card__delta .is-down{color:#047857}
.median-benchmark-card__delta .is-flat{color:#475569}
@media (max-width: 720px){
  .median-benchmark{padding:12px}
  .median-benchmark__grid{grid-template-columns:1fr}
}


.median-dashboard .dashboard-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;align-items:end}.median-dashboard .dashboard-filter-field span{display:block;font-size:.82rem;margin-bottom:6px;color:#5a6472}.median-dashboard .dashboard-filter-field select{width:100%;min-height:42px;border:1px solid #d9e0ea;border-radius:12px;padding:0 12px;background:#fff}.median-dashboard .dashboard-filter-actions{display:flex;align-items:flex-end}.median-dashboard .dashboard-btn{min-height:42px;border-radius:12px;padding:0 16px;border:1px solid #d9e0ea;background:#fff;cursor:pointer}.median-dashboard .dashboard-note{background:#f5f8fc;border:1px solid #e1e8f0;border-radius:14px;padding:12px 14px;color:#334155}.median-dashboard .kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.median-dashboard .kpi-card{background:#fff;border:1px solid #e5ebf2;border-radius:18px;padding:14px 16px;box-shadow:0 2px 10px rgba(15,23,42,.04)}.median-dashboard .kpi-card__label{font-size:.82rem;color:#64748b;margin-bottom:8px}.median-dashboard .kpi-card__value{font-size:1.35rem;font-weight:700;line-height:1.15;color:#0f172a}.median-dashboard .kpi-card__unit{font-size:.8rem;font-weight:500;color:#64748b;margin-left:4px}.median-dashboard .kpi-card__meta{margin-top:8px;font-size:.78rem;color:#475569}.median-dashboard .kpi-card--compact .kpi-card__value{font-size:1.05rem}.median-dashboard .table-responsive{overflow:auto}.median-dashboard table{width:100%;min-width:920px}.median-dashboard .dashboard-section__title{margin-bottom:12px}


.median-linechart{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:12px 14px}
.median-linechart__svg{display:block;width:100%;height:auto}
.median-linechart__grid{stroke:rgba(15,23,42,.12);stroke-width:1}
.median-linechart__line{stroke:#1d4ed8;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.median-linechart__point{fill:#1d4ed8}
.median-linechart__axis-label{fill:#334155;font-size:12px;font-weight:600}
@media print{.median-linechart{break-inside:avoid;page-break-inside:avoid;border-color:#d1d5db}.median-linechart__line{stroke:#111}.median-linechart__point{fill:#111}.median-linechart__grid{stroke:#d1d5db}.median-linechart__axis-label{fill:#111}}

/* v19.43.72 – Median benchmark visuals */
.median-dashboard .kpi-grid--benchmark{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.median-dashboard .kpi-card--benchmark{position:relative;overflow:hidden}
.median-dashboard .kpi-card__badge-row{margin-top:10px}
.median-benchmark-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:0 0 16px}
.median-benchmark-tile{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;padding:14px 16px;box-shadow:0 1px 2px rgba(15,23,42,.03)}
.median-benchmark-tile__title{font-size:.82rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;color:#334155;margin-bottom:8px}
.median-benchmark-tile__values{display:grid;gap:6px;font-size:.86rem;color:#0f172a}
.median-benchmark-tile__values span{display:flex;justify-content:space-between;gap:10px}
.median-benchmark-tile__values strong{font-weight:700;color:#64748b}
.median-benchmark-tile__badge{margin-top:10px}
.median-delta-badge{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;padding:5px 9px;border-radius:999px;font-size:.76rem;font-weight:700;line-height:1.2;border:1px solid #cbd5e1;background:#fff;color:#334155}
.median-delta-badge small{font-size:.68rem;font-weight:700;color:inherit}
.median-delta-badge.is-up{background:#fff1f2;border-color:#fecdd3;color:#b91c1c}
.median-delta-badge.is-down{background:#ecfdf5;border-color:#bbf7d0;color:#047857}
.median-delta-badge.is-flat{background:#f8fafc;border-color:#cbd5e1;color:#475569}
.median-linechart__legend{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin:0 0 10px 4px;color:#475569;font-size:.8rem;font-weight:700}
.median-linechart__legend-item{display:inline-flex;align-items:center;gap:8px}
.median-linechart__legend-line,.median-linechart__legend-marker{display:inline-block;width:22px;height:0;border-top:3px solid #1d4ed8;border-radius:999px}
.median-linechart__legend-marker{border-top-style:dashed;border-top-color:#b45309}
.median-linechart__marker{stroke:#b45309;stroke-width:2.2;stroke-dasharray:7 5}
.median-linechart__marker-label{fill:#92400e;font-size:12px;font-weight:700}
.median-dashboard td .median-delta-badge{white-space:nowrap}
@media (max-width: 760px){
  .median-benchmark-strip{grid-template-columns:1fr}
  .median-dashboard td .median-delta-badge{white-space:normal}
}
@media print{
  .median-benchmark-strip,.median-dashboard .kpi-grid--benchmark{break-inside:avoid;page-break-inside:avoid}
  .median-benchmark-tile{background:#fff;border-color:#d1d5db;box-shadow:none}
  .median-delta-badge{background:#fff !important;color:#111 !important;border-color:#d1d5db !important}
  .median-linechart__marker{stroke:#666}
  .median-linechart__marker-label{fill:#111}
}

.median-distribution-band {
  position: relative;
  min-width: 260px;
  padding: 0.45rem 0 1.35rem;
}
.median-distribution-band__axis {
  height: 6px;
  border-radius: 999px;
  background: #d7deea;
}
.median-distribution-band__iqr {
  position: absolute;
  top: 0.45rem;
  height: 6px;
  border-radius: 999px;
  background: #7b93b5;
}
.median-distribution-band__median {
  position: absolute;
  top: 0.15rem;
  width: 2px;
  height: 14px;
  background: #17324d;
}
.median-distribution-band__labels {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.35rem;
  margin-top: 0.45rem;
  font-size: 0.72rem;
  color: #46576d;
}
.median-distribution-band__labels span:nth-child(3) {
  font-weight: 700;
  color: #17324d;
}
.median-distribution-band.is-empty {
  font-size: 0.82rem;
  color: #6b7a8a;
}

.tariff-sheet-dashboard{max-width:1280px;margin:0 auto;padding:18px 0 32px;color:#111}
.tariff-sheet-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:4px solid #d21f26;padding-bottom:12px;margin-bottom:18px}
.tariff-sheet-title{font-size:2.2rem;line-height:1.1;margin:0 0 6px;font-weight:800;color:#111}
.tariff-sheet-subtitle{font-size:.98rem;color:#444}
.tariff-sheet-badges{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.tariff-sheet-badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#f3f6fb;color:#17325c;font-weight:700;font-size:.92rem;text-decoration:none}
.tariff-sheet-badge--link{background:#17325c;color:#fff}
.tariff-sheet-panel{background:#fff;border:1px solid #dbe2ef;border-radius:20px;padding:18px 18px 20px;margin:0 0 18px;box-shadow:0 8px 24px rgba(17,24,39,.05)}
.tariff-sheet-panel h2{font-size:1.4rem;line-height:1.2;margin:0 0 16px;font-weight:800;color:#111}
.tariff-sheet-panel h3{font-size:1.05rem;margin:0 0 10px;font-weight:800;color:#222}
.tariff-sheet-grid--charts{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}
.tariff-sheet-chart-card{background:#fafbfd;border:1px solid #e3e8f3;border-radius:18px;padding:14px}
.tariff-sheet-svg{width:100%;height:auto;display:block}
.ts-grid{stroke:#d7deea;stroke-width:1}
.ts-line{fill:none;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
.ts-line--netz{stroke:#1f5fbf}.ts-line--energie{stroke:#c6463d}.ts-line--median-netz{stroke:#8aa7d7;stroke-dasharray:6 4}.ts-line--median-energie{stroke:#d6a09a;stroke-dasharray:6 4}
.ts-axis{font-size:10px;fill:#444;text-anchor:middle}
.tariff-sheet-legend{display:flex;flex-wrap:wrap;gap:10px 14px;font-size:.88rem;color:#333;margin-top:10px}
.tariff-sheet-legend span::before{content:'';display:inline-block;width:12px;height:3px;border-radius:999px;margin-right:6px;vertical-align:middle;background:#999}
.tariff-sheet-legend .legend-netz::before{background:#1f5fbf}.tariff-sheet-legend .legend-energie::before{background:#c6463d}.tariff-sheet-legend .legend-median-netz::before{background:#8aa7d7}.tariff-sheet-legend .legend-median-energie::before{background:#d6a09a}
.tariff-sheet-stack-list{display:grid;gap:10px}.ts-stack-row{display:grid;grid-template-columns:56px 1fr 64px;gap:10px;align-items:center}.ts-stack-year,.ts-stack-total{font-weight:700;color:#333}.ts-stack-bar{display:flex;overflow:hidden;height:22px;border-radius:999px;background:#eef2f8}.ts-stack-seg{display:block;height:100%}.ts-stack-seg.seg-netz{background:#b6c9e8}.ts-stack-seg.seg-mess{background:#d8d0eb}.ts-stack-seg.seg-energie{background:#cfe8d4}.ts-stack-seg.seg-abgaben{background:#f2e3ab}.ts-stack-seg.seg-netzzuschlag{background:#f0cfc8}
.tariff-sheet-table-wrap{overflow:auto}.tariff-sheet-table{width:100%;border-collapse:separate;border-spacing:0}.tariff-sheet-table th,.tariff-sheet-table td{padding:11px 12px;border-bottom:1px solid #e5ebf4;vertical-align:top}.tariff-sheet-table thead th{font-size:.92rem;text-transform:none;color:#23324d;background:#f6f8fc;position:sticky;top:0}.tariff-sheet-table tbody th{font-weight:700;color:#17233a;text-align:left;white-space:nowrap}.tariff-sheet-table td strong{display:block;font-size:1rem;color:#111}.ts-subline{font-size:.84rem;color:#5c677a;margin-top:2px}
@media (max-width: 980px){.tariff-sheet-header{flex-direction:column}.tariff-sheet-grid--charts{grid-template-columns:1fr}}

.ts-line--total{stroke:#404040}
.ts-zero{stroke:#4b5563;stroke-width:1.5;stroke-dasharray:4 4}
.tariff-sheet-benchmark-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ts-ring-card{background:#fafbfd;border:1px solid #e3e8f3;border-radius:18px;padding:16px;text-align:center}
.ts-ring-svg{width:112px;height:112px;display:block;margin:0 auto 10px}
.ts-ring-bg{fill:none;stroke:#e5e7eb;stroke-width:12}
.ts-ring-value{fill:none;stroke-width:12;stroke-linecap:round;transform:rotate(-90deg);transform-origin:60px 60px}
.ts-ring-card--netz .ts-ring-value{stroke:#1f5fbf}
.ts-ring-card--messwesen .ts-ring-value{stroke:#7a57a6}
.ts-ring-card--energie .ts-ring-value{stroke:#c6463d}
.ts-ring-card--total .ts-ring-value{stroke:#4b5563}
.ts-ring-score{font-size:1.7rem;font-weight:800;fill:#111;text-anchor:middle}
.ts-ring-label{font-weight:800;color:#111;margin-bottom:4px}
.ts-ring-meta{font-size:.86rem;color:#586579;line-height:1.35}
.legend-total::before{background:#404040}
.tariff-sheet-grid--benchmark{grid-template-columns:1.15fr .85fr}
.tariff-sheet-table--benchmark td,.tariff-sheet-table--benchmark th{white-space:nowrap}
.ts-stage-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#eef2f8;color:#17325c;font-weight:700;font-size:.82rem}
@media (max-width: 1100px){.tariff-sheet-benchmark-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tariff-sheet-grid--benchmark{grid-template-columns:1fr}}
@media (max-width: 680px){.tariff-sheet-benchmark-grid{grid-template-columns:1fr}}

.ts-axis--y{text-anchor:end}
.ts-axis--top{font-weight:700;fill:#23324d}
.ts-axis-line{stroke:#6b7280;stroke-width:1.2}
.ts-point{stroke:#fff;stroke-width:1.5}
.ts-point--netz{fill:#1f5fbf}.ts-point--energie{fill:#c6463d}.ts-point--median-netz{fill:#8aa7d7}.ts-point--median-energie{fill:#d6a09a}.ts-point--total{fill:#404040}
.ts-bar-seg{stroke:#fff;stroke-width:1}.ts-bar-seg.seg-netz{fill:#b6c9e8}.ts-bar-seg.seg-mess{fill:#d8d0eb}.ts-bar-seg.seg-energie{fill:#cfe8d4}.ts-bar-seg.seg-abgaben{fill:#f2e3ab}.ts-bar-seg.seg-netzzuschlag{fill:#f0cfc8}
.tariff-sheet-legend .legend-mess::before{background:#d8d0eb}.tariff-sheet-legend .legend-abgaben::before{background:#f2e3ab}.tariff-sheet-legend .legend-netzzuschlag::before{background:#f0cfc8}

.ts-tooltip-target{cursor:pointer}.ts-hover-tooltip{position:fixed;z-index:99999;display:none;max-width:280px;padding:8px 10px;border-radius:10px;background:rgba(17,24,39,.96);color:#fff;font-size:.82rem;line-height:1.35;box-shadow:0 10px 24px rgba(0,0,0,.18);pointer-events:none}.ts-hover-tooltip.is-visible{display:block}.ts-ring-meta--rank{font-weight:700;color:#1f2937}.ts-ring-meta--rank-detail{color:#4b5563}


.capital-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0}.capital-summary-grid .summary-card{background:#f5f7fb;border:1px solid #dfe5ef;border-radius:16px;padding:14px 16px}.capital-summary-grid .summary-label{font-size:12px;color:#5d6777;margin-bottom:6px;text-transform:uppercase;letter-spacing:.03em}.capital-summary-grid .summary-value{font-size:28px;font-weight:700;line-height:1.1}.capital-summary-grid .summary-value.small{font-size:20px}.capital-chart{background:#fff;border:1px solid #dfe5ef;border-radius:16px;padding:16px 18px;margin:18px 0}.capital-bar-row{display:grid;grid-template-columns:48px minmax(220px,1.4fr) minmax(260px,2fr) 110px;gap:14px;align-items:center;padding:8px 0;border-bottom:1px solid #edf1f6}.capital-bar-row:last-child{border-bottom:none}.capital-rank{font-weight:700;color:#1f2937}.capital-name-block{display:flex;flex-direction:column;gap:2px}.capital-name-block span{font-size:12px;color:#5b6473}.capital-bar-wrap{position:relative;height:22px;background:#edf2f7;border-radius:999px;overflow:hidden}.capital-bar{height:100%;background:linear-gradient(90deg,#7aa6ff,#2f6bff);border-radius:999px}.capital-median-marker{position:absolute;top:-2px;bottom:-2px;width:2px;background:#d93025;opacity:.9}.capital-value{font-weight:700;text-align:right}.capital-comparison-dashboard .table th,.capital-comparison-dashboard .table td{vertical-align:middle}@media (max-width:991px){.capital-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capital-bar-row{grid-template-columns:38px minmax(140px,1fr) minmax(180px,1.6fr) 90px}}@media (max-width:640px){.capital-summary-grid{grid-template-columns:1fr}.capital-bar-row{grid-template-columns:32px 1fr;grid-template-areas:'rank name' 'bar bar' 'value value';gap:8px}.capital-rank{grid-area:rank}.capital-name-block{grid-area:name}.capital-bar-wrap{grid-area:bar}.capital-value{grid-area:value;text-align:left}}


/* v19.43.88 capital comparison refinement */
.capital-comparison-dashboard .dashboard-table th,.capital-comparison-dashboard .dashboard-table td{padding:11px 12px;vertical-align:middle}
.capital-comparison-dashboard .capital-filterbar .machine-filter-field span{display:none!important}
.capital-comparison-dashboard .capital-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}
.capital-comparison-dashboard .capital-chart{display:flex;flex-direction:column;gap:10px;margin:18px 0 22px}
.capital-comparison-dashboard .capital-bar-row{display:grid;grid-template-columns:56px 62px minmax(220px,1.4fr) minmax(240px,2fr) minmax(155px,.9fr);gap:12px;align-items:center;padding:10px 12px;border:1px solid #dbe5f0;border-radius:14px;background:#fff}
.capital-comparison-dashboard .capital-rank,.capital-comparison-dashboard .capital-canton{font-weight:700;color:#17324d}
.capital-comparison-dashboard .capital-name-block strong{display:block;font-size:15px;line-height:1.2}
.capital-comparison-dashboard .capital-name-block span{display:block;margin-top:3px;font-size:12px;color:#4b6480}
.capital-comparison-dashboard .capital-name-block a{text-decoration:none}
.capital-comparison-dashboard .capital-bar-wrap{position:relative;height:16px;border-radius:999px;background:#eef3f8;overflow:hidden}
.capital-comparison-dashboard .capital-bar{height:100%;border-radius:999px;background:linear-gradient(90deg,#2d6ea3,#8bb9df)}
.capital-comparison-dashboard .capital-median-marker{position:absolute;top:-2px;bottom:-2px;width:2px;background:#18324d;opacity:.7}
.capital-comparison-dashboard .capital-value{text-align:right}
.capital-comparison-dashboard .capital-value-main{display:block;font-weight:700;color:#17324d}
.capital-comparison-dashboard .capital-delta-line{display:block;margin-top:2px;font-size:12px}
.capital-comparison-dashboard .capital-sort-label.active-sort{font-weight:700}
.capital-comparison-dashboard .dashboard-table td a{font-weight:600}
@media (max-width: 991px){.capital-comparison-dashboard .capital-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capital-comparison-dashboard .capital-bar-row{grid-template-columns:44px 48px minmax(180px,1fr) minmax(200px,1.7fr) minmax(130px,.8fr)}}

/* v19.43.89 capital comparison trend and multi-provider layout */
.capital-delta-line {
  display: flex;
  flex-direction: column;
  gap: 0.12rem;
  line-height: 1.15;
}
.capital-delta-inline .capital-trend-arrow,
.capital-delta-line .capital-trend-arrow {
  font-weight: 700;
  display: block;
}
.capital-delta-inline .capital-trend-values,
.capital-delta-line .capital-trend-values {
  display: block;
  white-space: nowrap;
}
.capital-trend-sep {
  opacity: 0.55;
  margin: 0 0.2rem;
}
.capital-provider-list {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  margin-top: 0.25rem;
}
.capital-provider-item {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  font-size: 0.86rem;
  line-height: 1.25;
}
.capital-provider-item span {
  white-space: nowrap;
  color: #4b5563;
}
.table-provider-list .capital-provider-item {
  justify-content: flex-start;
}
.capital-name-block > span {
  display: block;
  font-size: 0.82rem;
  color: #6b7280;
}

.capital-comparison-dashboard .capital-filterbar form{display:flex;flex-wrap:nowrap;gap:10px;align-items:center;overflow-x:auto}.capital-comparison-dashboard .capital-filterbar .machine-filter-field{min-width:150px;flex:0 0 auto}.capital-summary-grid .summary-meta{margin-top:6px;font-size:12px;color:#5b6473;line-height:1.25}.capital-summary-grid .summary-city{font-size:14px;font-weight:700;color:#17324d;margin-bottom:4px}.capital-comparison-dashboard .capital-bar-wrap{display:flex;flex-direction:column;gap:5px;background:none;height:auto;overflow:visible}.capital-comparison-dashboard .capital-bar{height:16px}.capital-comparison-dashboard .capital-provider-bars{display:flex;flex-direction:column;gap:3px}.capital-comparison-dashboard .capital-provider-bar-light{display:block;height:8px;border-radius:999px;background:linear-gradient(90deg,#c9ddf2,#e3eef8)}.capital-comparison-dashboard .capital-median-marker{top:0;bottom:0}.capital-comparison-dashboard .capital-value-main .capital-inline-arrow{font-weight:700;margin-right:4px}.capital-comparison-dashboard .capital-delta-line,.capital-summary-trend{display:block;margin-top:2px;font-size:12px}.capital-summary-trend .capital-trend-values,.capital-comparison-dashboard .capital-delta-line .capital-trend-values{white-space:nowrap}.capital-comparison-dashboard .capital-provider-list{margin-top:4px}.capital-comparison-dashboard .capital-chart [title]{cursor:help}@media (max-width:991px){.capital-comparison-dashboard .capital-filterbar form{flex-wrap:wrap}.capital-comparison-dashboard .capital-filterbar .machine-filter-field{min-width:140px}}

.median-development-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:1rem}
.median-development-card{display:flex;flex-direction:column;gap:.8rem;background:#fff;border:1px solid #d9e1ea;border-radius:18px;padding:1rem 1rem 1rem;box-shadow:0 4px 14px rgba(15,23,42,.04);min-height:360px}
.median-development-card__head{display:grid;grid-template-columns:1fr;gap:.55rem;align-items:start;margin-bottom:0}
.median-development-card__profile{min-width:0}
.median-development-card__title{margin:0;font-size:1.22rem;line-height:1;font-weight:850;color:#0f172a;white-space:nowrap}
.median-development-card__consumption{margin-top:.28rem;font-size:.96rem;line-height:1.15;font-weight:750;color:#334155;white-space:nowrap}
.median-development-card__subline{display:flex;flex-wrap:wrap;gap:.3rem .7rem;padding:.52rem .62rem;border:1px solid #edf2f7;border-radius:12px;background:#f8fafc;font-size:.76rem;color:#5f6d7a;line-height:1.2}.median-development-card__subline strong{font-weight:900;color:#0f172a}
.median-development-card__metric{text-align:left;white-space:nowrap}
.median-development-card__metric-value{font-size:1.58rem;font-weight:900;color:#0f172a;line-height:1}
.median-development-card__metric-value span{font-size:.86rem;font-weight:850;color:#475569}
.median-development-card__metric-trend{display:inline-flex;justify-content:flex-end;align-items:center;gap:.28rem;margin-top:.42rem;padding:.22rem .5rem;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;font-size:.78rem;font-weight:800}
.median-development-card__metric-trend.is-up{color:#c2410c}.median-development-card__metric-trend.is-down{color:#15803d}.median-development-card__metric-trend.is-flat{color:#475569}
.median-development-card__chart{padding:.25rem .1rem .15rem;border:1px solid #edf2f7;border-radius:14px;background:linear-gradient(180deg,#fff,#fbfdff)}
.median-dev-sparkline{width:100%;height:auto;display:block;min-height:150px}
.median-dev-sparkline__grid{stroke:#e6edf5;stroke-width:1}
.median-dev-sparkline__line{stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}
.median-dev-sparkline__line--netz{stroke:var(--chs-comp-netz)}.median-dev-sparkline__line--messwesen{stroke:var(--chs-comp-messwesen)}.median-dev-sparkline__line--energie{stroke:var(--chs-comp-energie)}.median-dev-sparkline__line--total{stroke:var(--chs-comp-total)}
.median-dev-sparkline__point{fill:#fff;stroke:var(--chs-comp-total);stroke-width:2.2}
.median-dev-sparkline__hit{fill:transparent;cursor:help}
.median-dev-sparkline__year{font-size:12px;fill:#64748b;font-weight:700}
.median-dev-composition{display:grid;gap:.55rem}
.median-dev-composition__title{font-size:.74rem;font-weight:850;letter-spacing:.02em;text-transform:uppercase;color:#64748b}
.median-dev-composition__bar{display:flex;height:20px;border-radius:999px;overflow:hidden;background:#eef2f7;border:1px solid #dbe4ee}
.median-dev-composition__segment.is-netz{background:var(--chs-comp-netz)}.median-dev-composition__labels .is-netz{background:var(--chs-comp-netz-soft);border-left:3px solid var(--chs-comp-netz)}
.median-dev-composition__segment.is-energie{background:var(--chs-comp-energie)}.median-dev-composition__labels .is-energie{background:var(--chs-comp-energie-soft);border-left:3px solid var(--chs-comp-energie)}
.median-dev-composition__segment.is-messwesen{background:var(--chs-comp-messwesen)}.median-dev-composition__labels .is-messwesen{background:var(--chs-comp-messwesen-soft);border-left:3px solid var(--chs-comp-messwesen)}
.median-dev-composition__segment.is-abgaben{background:var(--chs-comp-abgaben)}.median-dev-composition__labels .is-abgaben{background:var(--chs-comp-abgaben-soft);border-left:3px solid var(--chs-comp-abgaben)}
.median-dev-composition__segment.is-netzzuschlag{background:var(--chs-comp-netzzuschlag)}.median-dev-composition__labels .is-netzzuschlag{background:var(--chs-comp-netzzuschlag-soft);border-left:3px solid var(--chs-comp-netzzuschlag)}
.median-dev-composition__labels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem .55rem;margin-top:0}
.median-dev-composition__labels span{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.1rem .45rem;align-items:baseline;border-radius:12px;padding:.38rem .48rem;font-size:.74rem;font-weight:750;background:#f8fafc;color:#1f2937}
.median-dev-composition__labels span b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.median-dev-composition__labels span strong{font-size:.78rem;white-space:nowrap}
.median-dev-composition__labels span strong small{font-size:.68rem;font-weight:850;color:#64748b;margin-left:.22rem}
.median-dev-composition__labels span em{grid-column:1 / -1;font-style:normal;font-size:.68rem;font-weight:800;opacity:.95}
.median-dev-composition__labels span em.is-up{color:#c0392b}.median-dev-composition__labels span em.is-down{color:#2e8b57}.median-dev-composition__labels span em.is-flat{color:#64748b}
@media (max-width: 767px){.median-development-grid{grid-template-columns:1fr}.median-development-card__head{grid-template-columns:1fr}.median-development-card__metric{text-align:left}.median-dev-composition__labels{grid-template-columns:1fr}}


/* v19.43.94 dashboard + capital comparison refinements */
.median-benchmark__grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.median-benchmark-card__row--primary{margin-bottom:6px}
.median-benchmark-card__row--primary .median-benchmark-card__value{font-size:1.25rem;font-weight:800}
.median-benchmark-card__value--secondary{font-size:1rem}
@media (max-width: 1200px){.median-benchmark__grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width: 700px){.median-benchmark__grid{grid-template-columns:1fr;}}
.capital-comparison-dashboard .capital-bar-wrap{position:relative;display:block;background:#eef3f8 !important;height:28px;border-radius:999px;overflow:visible}
.capital-comparison-dashboard .capital-bar{position:absolute;left:0;top:0;height:16px;border-radius:999px;z-index:2}
.capital-comparison-dashboard .capital-provider-bars{position:absolute;left:0;right:0;top:18px;display:flex;flex-direction:column;gap:3px}
.capital-comparison-dashboard .capital-provider-bar-light{height:6px;opacity:.9}
.capital-comparison-dashboard .capital-median-marker{top:0;bottom:-12px;z-index:3;background:#64748b}
.capital-comparison-dashboard .capital-bar-row{align-items:start}
.capital-comparison-dashboard .capital-value-main{display:block;font-weight:800;color:#17324d}
.capital-comparison-dashboard .capital-inline-arrow.price-up{color:#c2410c}.capital-comparison-dashboard .capital-inline-arrow.price-down{color:#15803d}.capital-comparison-dashboard .capital-inline-arrow.price-flat{color:#64748b}
.capital-comparison-dashboard .capital-average-sign{font-weight:800;color:#64748b}
.capital-comparison-dashboard .capital-value{padding-top:2px}


/* com_chstromtarife v1.1.0 frontend navigation */
.chs-frontend-nav{margin:0 0 16px}.chs-frontend-nav__inner{display:flex;flex-wrap:wrap;gap:8px}.chs-frontend-nav__link{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#f3f6fa;border:1px solid #d8e1eb;color:#1f2937;text-decoration:none;font-weight:600;font-size:.93rem}.chs-frontend-nav__link:hover{background:#edf4fb;border-color:#b8cbe1}.chs-frontend-nav__link.is-active{background:#0b5ed7;border-color:#0b5ed7;color:#fff}.chs-start-pills{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}.chs-start-pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;font-size:.9rem}.chs-start-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.chs-start-card{display:flex;flex-direction:column;gap:12px}.chs-start-card__text{margin:0 0 auto;color:#51606f}

.chstromtarife-textblock{margin:0 0 1.25rem;padding:1rem 1.2rem;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 10px rgba(15,23,42,.04)}
.chstromtarife-textblock--outro{margin-top:1.25rem;margin-bottom:0}
.chstromtarife-textblock p:last-child{margin-bottom:0}


/* v1.6.32 Maschinenlesbare Tarife: Statistikboxen wie Hauptorte + optionale Grafik */
.stromatlas-overview-machine .machine-summary-grid{margin:12px 0 16px;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.stromatlas-overview-machine .machine-summary-card{background:linear-gradient(180deg,#fbfdff 0%,#f8fafc 100%);border:1px solid #dbe5f0;border-radius:18px;box-shadow:0 1px 2px rgba(15,23,42,.04);padding:18px 16px 14px;min-height:132px;display:flex;flex-direction:column;justify-content:space-between}
.stromatlas-overview-machine .machine-summary-card .capital-summary-title{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b;margin-bottom:8px}
.stromatlas-overview-machine .machine-summary-card .capital-summary-value{font-size:2rem;line-height:1.05;font-weight:800;color:#0f172a}
.stromatlas-overview-machine .machine-summary-card .capital-summary-note{font-size:.92rem;line-height:1.35;color:#475569;margin-top:8px}
.stromatlas-overview-machine .machine-stats-chart{margin:0 0 16px;border:1px solid #dbe5f0;border-radius:18px;background:linear-gradient(180deg,#fbfdff 0%,#f8fafc 100%);box-shadow:0 1px 2px rgba(15,23,42,.04);padding:16px}
.stromatlas-overview-machine .machine-stats-chart-title{font-size:1rem;font-weight:800;color:#0f172a;margin-bottom:12px}
.stromatlas-overview-machine .machine-stats-bars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.stromatlas-overview-machine .machine-stats-bar-card{display:grid;grid-template-columns:minmax(90px,110px) 1fr auto;gap:10px;align-items:center}
.stromatlas-overview-machine .machine-stats-bar-label{font-size:.92rem;font-weight:700;color:#334155}
.stromatlas-overview-machine .machine-stats-bar-track{position:relative;height:14px;background:#e8eef5;border-radius:999px;overflow:hidden}
.stromatlas-overview-machine .machine-stats-bar-fill{height:100%;border-radius:999px}
.stromatlas-overview-machine .machine-stats-bar-fill-valid{background:linear-gradient(90deg,#9bdc8a,#d7f3cf)}
.stromatlas-overview-machine .machine-stats-bar-fill-error{background:linear-gradient(90deg,#f2d36a,#e7bf3f)}
.stromatlas-overview-machine .machine-stats-bar-fill-missing{background:linear-gradient(90deg,#f5c59a,#f9dfc4)}
.stromatlas-overview-machine .machine-stats-bar-fill-total{background:linear-gradient(90deg,#1d4ed8,#60a5fa)}
.stromatlas-overview-machine .machine-stats-bar-meta{font-size:.92rem;font-weight:800;color:#0f172a}
@media (max-width: 1100px){.stromatlas-overview-machine .machine-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stromatlas-overview-machine .machine-stats-bars{grid-template-columns:1fr}}
@media (max-width: 700px){.stromatlas-overview-machine .machine-summary-grid{grid-template-columns:1fr}.stromatlas-overview-machine .machine-summary-card{min-height:auto}.stromatlas-overview-machine .machine-stats-bar-card{grid-template-columns:1fr;gap:6px}}


.chstromtarife-hero.item-image {
  margin: 0 0 24px;
}

.chstromtarife-hero__image {
  display: block;
  width: 100%;
  height: auto;
}

.chstromtarife-hero__caption.img-caption,
.chstromtarife-hero__caption.caption {
  margin-top: 8px;
}


.chstromtarife-hero-wrap--dashboard{margin:0 0 24px}.chstromtarife-hero-wrap--dashboard .full-image{width:100%}.chstromtarife-hero-wrap--dashboard .item-image{margin:0}.chstromtarife-hero-wrap--dashboard .item-image img{display:block;width:100%;height:auto}.chstromtarife-hero-wrap--dashboard .caption{margin-top:8px}


/* 1.6.87 */
.dashboard-section--accent-top{border-top:4px solid #2563eb;}
.machine-filterbar--embedded{margin-bottom:14px;}
.machine-filterbar--embedded form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px 14px;align-items:end;}
.machine-filterbar--embedded .machine-filter-field{display:flex;flex-direction:column;gap:6px;min-width:0;}
.machine-filterbar--embedded .machine-filter-field span{font-size:12px;font-weight:700;letter-spacing:.02em;color:#475569;}
.machine-filterbar--embedded .machine-filter-field select{min-height:40px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:8px 12px;width:100%;}
@media (max-width: 767px){.machine-filterbar--embedded form{grid-template-columns:1fr;}}

.machine-meta-label{font-weight:400;color:#6b7280}
.machine-meta-value{font-weight:700;color:#111827}
.machine-timeline-row__grid span{border-left:1px solid rgba(100,116,139,.42)}
.machine-timeline-note{margin-top:.45rem;text-align:right;font-size:.74rem;font-weight:400;color:#94a3b8}


/* v1.6.108 – Dashboard Provider Fix */
.dashboard-section-machine h3{font-size:1.3rem;margin-top:1.25rem;margin-bottom:.75rem}
.dashboard-section-machine .machine-tariff-card__title{font-size:1.42rem;line-height:1.2}
.dashboard-section-machine .machine-dashboard-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.dashboard-section-machine .machine-dashboard-meta .meta-card{padding:16px 18px;border:1px solid #dbe5f0;border-radius:14px;background:linear-gradient(180deg,#fbfdff,#f8fafc);box-shadow:0 1px 2px rgba(15,23,42,.04)}
.dashboard-section-machine .machine-dashboard-meta dd{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-section-machine .machine-filterbar--embedded{padding:12px 14px;border:1px solid #dbe5f0;border-radius:14px;background:linear-gradient(180deg,#fbfdff,#f8fafc)}
.dashboard-section-machine .machine-filterbar--embedded form{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 14px;align-items:end}
.dashboard-section-machine .machine-filterbar--embedded .machine-filter-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.dashboard-section-machine .machine-filterbar--embedded .machine-filter-field span{font-size:12px;font-weight:700;letter-spacing:.02em;color:#475569}
.dashboard-section-machine .machine-filterbar--embedded .machine-filter-field select{width:100%;min-width:0;min-height:42px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;padding:10px 38px 10px 12px}
.dashboard-section-machine .machine-tariff-card{border-color:#dbe5f0;border-radius:16px;box-shadow:0 2px 10px rgba(15,23,42,.04)}
.dashboard-section-machine .machine-tariff-card__summary{background:linear-gradient(180deg,#fbfdff,#f8fafc)}
.dashboard-section-machine .machine-stats-bar-card{grid-template-columns:minmax(110px,130px) 1fr auto;gap:12px;align-items:center}
.dashboard-section-machine .machine-stats-bar-track{height:22px;display:flex;align-items:center}
.dashboard-section-machine .machine-stats-bar-fill{display:flex;align-items:center;justify-content:center;min-width:34px}
.dashboard-section-machine .machine-stats-bar-label,.dashboard-section-machine .machine-stats-bar-meta{line-height:1.2}
.dashboard-section-machine .machine-readable-dashboard-footer{margin-top:18px}
@media (max-width: 1199px){.dashboard-section-machine .machine-filterbar--embedded form{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width: 767px){
  .dashboard-section-machine .machine-dashboard-meta{grid-template-columns:1fr}
  .dashboard-section-machine .machine-filterbar--embedded form{grid-template-columns:1fr}
  .dashboard-section-machine .machine-dashboard-meta dd{white-space:normal}
}


/* v1.6.109 – Dashboard Provider Fix 2 */
.dashboard-section-machine .machine-dashboard-meta .meta-card{grid-column:auto}
.dashboard-section-machine .machine-dashboard-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.dashboard-section-machine .machine-timeline-row{grid-template-columns:minmax(165px,220px) 1fr;gap:14px;align-items:center}
.dashboard-section-machine .machine-timeline-row__label{font-size:.86rem;line-height:1.25;font-weight:700}
.dashboard-section-machine .machine-timeline-row__track{min-height:34px}
.dashboard-section-machine .machine-timeline-row__grid{height:34px}
.dashboard-section-machine .machine-timeline-segment{min-height:12px;padding-top:2px;padding-bottom:2px;font-size:.82rem;line-height:1.1;display:flex;align-items:flex-start;justify-content:center}
.dashboard-section-machine .machine-timeline-note{margin-top:8px}
@media (max-width: 900px){
  .dashboard-section-machine .machine-timeline-row{grid-template-columns:1fr;gap:8px}
}


/* v1.6.110 – Timeline Logic Fix */
.dashboard-section-machine .machine-timeline-block{margin-top:12px;padding-top:10px;border-top:1px solid #dbe5f0}
.dashboard-section-machine .machine-timeline-block:first-child{margin-top:0;padding-top:0;border-top:0}
.dashboard-section-machine .machine-timeline-months{margin:0 0 8px 0;font-weight:700;font-size:.95rem;color:#334155}
.dashboard-section-machine .machine-timeline-axis{margin-bottom:8px}
.dashboard-section-machine .machine-timeline-row{grid-template-columns:minmax(90px,110px) 1fr;gap:12px;align-items:center}
.dashboard-section-machine .machine-timeline-row__track{min-height:38px}
.dashboard-section-machine .machine-timeline-row__grid{height:38px}
.dashboard-section-machine .machine-timeline-segment{display:flex;align-items:center;justify-content:center;min-height:18px;top:10px}
.dashboard-section-machine .machine-timeline-segment__value{display:block;line-height:1;color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.18)}
@media (max-width: 767px){
  .dashboard-section-machine .machine-timeline-row{grid-template-columns:1fr;gap:6px}
}


/* v1.6.112 – Timeline Structure Fix */
.dashboard-section-machine .machine-timeline-block{margin-top:14px;padding-top:12px;border-top:1px solid #dbe5f0}
.dashboard-section-machine .machine-timeline-block:first-child{margin-top:0;padding-top:0;border-top:0}
.dashboard-section-machine .machine-timeline-months{margin:0 0 8px 0;font-weight:700;font-size:.95rem;color:#334155}
.dashboard-section-machine .machine-timeline-axis{margin-bottom:8px}
.dashboard-section-machine .machine-timeline-row__track{min-height:42px}
.dashboard-section-machine .machine-timeline-row__grid{height:42px}
.dashboard-section-machine .machine-timeline-segment{display:flex;align-items:center;justify-content:center;top:11px;min-height:20px;padding:0 4px}
.dashboard-section-machine .machine-timeline-segment__value{display:flex;align-items:center;justify-content:center;height:100%;line-height:1}


/* v1.6.113 – Timeline Alignment Fix */
.dashboard-section-machine .machine-timeline-axis,
.dashboard-section-machine .machine-timeline-row{
    grid-template-columns: 86px minmax(0, 1fr);
    gap: 8px;
}
.dashboard-section-machine .machine-timeline-axis__label,
.dashboard-section-machine .machine-timeline-row__label{
    width: 86px;
    min-width: 86px;
    box-sizing: border-box;
}
.dashboard-section-machine .machine-timeline-axis__hours,
.dashboard-section-machine .machine-timeline-row__track,
.dashboard-section-machine .machine-timeline-row__grid{
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
}
.dashboard-section-machine .machine-timeline-row__track{
    padding: 0;
    margin: 0;
}
.dashboard-section-machine .machine-timeline-row__grid{
    left: 0;
    right: 0;
}
.dashboard-section-machine .machine-timeline-axis__hours span,
.dashboard-section-machine .machine-timeline-row__grid span{
    box-sizing: border-box;
}


/* v1.6.115 – Timeline Final Structure Fix */
.dashboard-section-machine .machine-timeline-block{margin-top:14px;padding-top:12px;border-top:1px solid #dbe5f0}
.dashboard-section-machine .machine-timeline-block:first-child{margin-top:0;padding-top:0;border-top:0}
.dashboard-section-machine .machine-timeline-months{margin:0 0 8px 0;font-weight:700;font-size:.95rem;color:#334155}
.dashboard-section-machine .machine-timeline-axis,
.dashboard-section-machine .machine-timeline-row{display:grid;grid-template-columns:86px minmax(0,1fr);gap:8px;align-items:center}
.dashboard-section-machine .machine-timeline-axis{margin-bottom:8px}
.dashboard-section-machine .machine-timeline-axis__label,
.dashboard-section-machine .machine-timeline-row__label{width:86px;min-width:86px;box-sizing:border-box}
.dashboard-section-machine .machine-timeline-axis__hours,
.dashboard-section-machine .machine-timeline-row__track,
.dashboard-section-machine .machine-timeline-row__grid{width:100%;min-width:0;box-sizing:border-box}
.dashboard-section-machine .machine-timeline-axis__hours{display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:0}
.dashboard-section-machine .machine-timeline-axis__hours span{font-size:.66rem;line-height:1;text-align:center;color:#64748b;font-weight:700}
.dashboard-section-machine .machine-timeline-row{margin-top:.34rem}
.dashboard-section-machine .machine-timeline-row__label{font-size:.8rem;font-weight:700;color:#334155;white-space:nowrap}
.dashboard-section-machine .machine-timeline-row__track{position:relative;height:28px;border-radius:999px;background:#eef2f7;overflow:hidden;padding:0;margin:0}
.dashboard-section-machine .machine-timeline-row__grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:0;z-index:1;height:28px}
.dashboard-section-machine .machine-timeline-row__grid span{border-left:1px solid rgba(100,116,139,.36);box-sizing:border-box}
.dashboard-section-machine .machine-timeline-row__grid span:first-child{border-left:none}
.dashboard-section-machine .machine-timeline-segment{position:absolute;top:3px;bottom:3px;z-index:2;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;color:#fff;padding:0 4px;white-space:nowrap;text-shadow:0 1px 1px rgba(0,0,0,.15);font-variant-numeric:tabular-nums}
.dashboard-section-machine .machine-timeline-segment__value{display:flex;align-items:center;justify-content:center;height:100%;line-height:1;position:relative;top:0}
.dashboard-section-machine .machine-timeline-note{margin-top:.55rem;text-align:right;font-size:.74rem;color:#64748b;font-weight:600}
@media (max-width: 767px){
  .dashboard-section-machine .machine-timeline-axis,
  .dashboard-section-machine .machine-timeline-row{grid-template-columns:1fr;gap:6px}
  .dashboard-section-machine .machine-timeline-axis__label,
  .dashboard-section-machine .machine-timeline-row__label{width:auto;min-width:0}
}


/* v1.6.117 – timeline height hotfix */
.dashboard-section-machine .machine-timeline-row__track{height:18px}
.dashboard-section-machine .machine-timeline-row__grid{height:18px}
.dashboard-section-machine .machine-timeline-segment{top:2px;bottom:2px;font-size:.65rem}

/* v1.6.118 */
.dashboard-section-machine .machine-timeline-row__track{height:18px !important}
.dashboard-section-machine .machine-timeline-row__grid{height:18px !important}
.dashboard-section-machine .machine-timeline-segment{top:2px !important;bottom:2px !important;min-height:14px !important;font-size:.62rem !important;padding:0 3px !important}
.dashboard-section-machine .machine-timeline-segment__value{line-height:1 !important}
.dashboard-section-machine .machine-timeline-months{font-size:.9rem !important}


/* v1.6.119 – slimmer timeline bars in provider dashboard */
.dashboard-section-machine .machine-timeline-row__track{
    height: 14px !important;
    border-radius: 999px !important;
}
.dashboard-section-machine .machine-timeline-row__grid{
    height: 14px !important;
}
.dashboard-section-machine .machine-timeline-segment{
    top: 1px !important;
    bottom: 1px !important;
    min-height: 12px !important;
    font-size: .58rem !important;
    padding: 0 2px !important;
    line-height: 1 !important;
}
.dashboard-section-machine .machine-timeline-segment__value{
    line-height: 1 !important;
    top: 0 !important;
}


/* v1.6.120 – Provider dashboard value bar height copied from v1.6.95 */
.dashboard-section-machine .machine-timeline-row__track{
    height:22px !important;
    border-radius:999px !important;
}
.dashboard-section-machine .machine-timeline-row__grid{
    height:22px !important;
}
.dashboard-section-machine .machine-timeline-segment{
    top:4px !important;
    bottom:4px !important;
    min-height:14px !important;
    font-size:.68rem !important;
    padding:0 .25rem !important;
}
.dashboard-section-machine .machine-timeline-segment__value{
    line-height:1 !important;
}


/* v1.6.126 – month chips in provider timeline */
.machine-timeline-months{margin:0 0 10px 0}
.machine-timeline-monthchips{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px}
.machine-timeline-monthchip{
    display:flex;align-items:center;justify-content:center;
    min-height:34px;padding:6px 8px;border-radius:12px;
    border:1px solid #cbd5e1;background:#fff;color:#0f274f;
    font-size:.82rem;font-weight:700;line-height:1;text-align:center;
}
.machine-timeline-monthchip.is-active{
    border-color:#2563eb;background:#eff6ff;color:#1d4ed8;
    box-shadow:inset 0 0 0 1px rgba(37,99,235,.06);
}
@media (max-width: 991px){
    .machine-timeline-monthchips{grid-template-columns:repeat(6,minmax(0,1fr))}
}
@media (max-width: 640px){
    .machine-timeline-monthchips{grid-template-columns:repeat(4,minmax(0,1fr))}
}


/* v1.6.127 – slimmer machine timeline bars */
.machine-timeline-row__track{
    height: 10px !important;
    border-radius: 999px !important;
}
.machine-timeline-row__grid{
    height: 10px !important;
}
.machine-timeline-segment{
    top: 1px !important;
    bottom: 1px !important;
    min-height: 8px !important;
    font-size: .54rem !important;
    padding: 0 2px !important;
}
.machine-timeline-segment__value{
    line-height: 1 !important;
}


/* v1.6.130 – subtler month chips and no full-year month list */
.machine-timeline-months{margin:0 0 8px 0}
.machine-timeline-monthchips{gap:6px}
.machine-timeline-monthchip{
    min-height:26px !important;
    padding:4px 6px !important;
    border-radius:10px !important;
    font-size:.72rem !important;
    font-weight:600 !important;
}
.machine-timeline-monthchip.is-active{
    box-shadow:none !important;
}


/* v1.6.131 – duplicate row warning */
.machine-data-warning{
    margin:0 0 10px 0;
    padding:10px 12px;
    border:1px solid #f5d38a;
    background:#fff8e8;
    color:#7a4b00;
    border-radius:10px;
    font-size:.88rem;
    line-height:1.35;
}


/* v1.6.134 – range badges */
.machine-range-badges{
    display:inline-flex;
    align-items:center;
    gap:6px;
    white-space:nowrap;
}
.machine-range-sep{
    color:#64748b;
    font-weight:700;
}


/* v1.6.138 – cleaner double-badge display in card header */
.machine-price-pair .machine-range-badges{
    display:inline-flex;
    align-items:center;
    gap:6px;
    vertical-align:middle;
}
.machine-price-pair .machine-range-badges .machine-value-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
.machine-price-pair .machine-range-sep{
    display:inline-block;
    padding:0 1px;
}


/* v1.6.140 – abgestimmtes Dashboard-Spacing-System */
.machine-dashboard h2,
.dashboard-content h2,
.dashboard-section h2 {
    margin: 0 0 14px;
    line-height: 1.2;
}

.machine-dashboard h3,
.dashboard-content h3,
.dashboard-section h3 {
    margin: 26px 0 12px;
    line-height: 1.25;
}

.machine-dashboard h4,
.dashboard-content h4,
.dashboard-section h4 {
    margin: 18px 0 10px;
    line-height: 1.3;
}

.machine-dashboard p,
.dashboard-content p,
.dashboard-section p {
    margin: 0 0 12px;
}

.machine-dashboard .dashboard-table,
.dashboard-content .dashboard-table,
.dashboard-section .dashboard-table {
    margin: 12px 0 20px;
}

.machine-dashboard .machine-timeline-card,
.dashboard-content .machine-timeline-card,
.dashboard-section .machine-timeline-card {
    margin: 10px 0 18px;
}

.machine-dashboard .machine-data-warning,
.dashboard-content .machine-data-warning,
.dashboard-section .machine-data-warning {
    margin: 10px 0 14px;
}

.machine-dashboard .machine-inline-note,
.dashboard-content .machine-inline-note,
.dashboard-section .machine-inline-note {
    margin: 0 0 14px;
}

.machine-dashboard .provider-section-block,
.dashboard-content .provider-section-block,
.dashboard-section .provider-section-block {
    margin-bottom: 22px;
}

.machine-dashboard .machine-tariff-card,
.dashboard-content .machine-tariff-card,
.dashboard-section .machine-tariff-card {
    margin-bottom: 16px;
}

.machine-dashboard .machine-tariff-card__body,
.dashboard-content .machine-tariff-card__body,
.dashboard-section .machine-tariff-card__body {
    padding-top: 16px;
}

.machine-dashboard .machine-tariff-card__body > h3:first-child,
.dashboard-content .machine-tariff-card__body > h3:first-child,
.dashboard-section .machine-tariff-card__body > h3:first-child {
    margin-top: 8px;
}

.machine-dashboard .machine-tariff-card__body > *:last-child,
.dashboard-content .machine-tariff-card__body > *:last-child,
.dashboard-section .machine-tariff-card__body > *:last-child {
    margin-bottom: 0;
}

.machine-dashboard .dashboard-filterbar,
.dashboard-content .dashboard-filterbar,
.dashboard-section .dashboard-filterbar {
    margin: 0 0 18px;
}

.machine-dashboard .dashboard-meta,
.dashboard-content .dashboard-meta,
.dashboard-section .dashboard-meta {
    margin: 0 0 18px;
}

.machine-dashboard .meta-card,
.dashboard-content .meta-card,
.dashboard-section .meta-card {
    padding-top: 14px;
    padding-bottom: 14px;
}

.machine-dashboard .machine-readable-embedded-filter h3,
.dashboard-content .machine-readable-embedded-filter h3,
.dashboard-section .machine-readable-embedded-filter h3 {
    margin-top: 22px;
}

@media (max-width: 767px) {
    .machine-dashboard h3,
    .dashboard-content h3,
    .dashboard-section h3 {
        margin-top: 22px;
        margin-bottom: 10px;
    }

    .machine-dashboard .provider-section-block,
    .dashboard-content .provider-section-block,
    .dashboard-section .provider-section-block {
        margin-bottom: 18px;
    }

    .machine-dashboard .dashboard-table,
    .dashboard-content .dashboard-table,
    .dashboard-section .dashboard-table {
        margin-bottom: 16px;
    }
}


/* v1.6.141 – klarere Boxen für bessere Userführung */
.machine-dashboard .provider-section-block,
.dashboard-content .provider-section-block,
.dashboard-section .provider-section-block,
.machine-dashboard .machine-tariff-card,
.dashboard-content .machine-tariff-card,
.dashboard-section .machine-tariff-card,
.machine-dashboard .meta-card,
.dashboard-content .meta-card,
.dashboard-section .meta-card {
    border-radius: 16px;
    border: 1px solid #d7e3f3;
    background: #ffffff;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.machine-dashboard .provider-section-block,
.dashboard-content .provider-section-block,
.dashboard-section .provider-section-block {
    padding: 18px 18px 16px;
    position: relative;
}

.machine-dashboard .provider-section-block::before,
.dashboard-content .provider-section-block::before,
.dashboard-section .provider-section-block::before {
    content: "";
    position: absolute;
    left: 0;
    top: 18px;
    bottom: 18px;
    width: 4px;
    border-radius: 0 6px 6px 0;
    background: #2563eb;
    opacity: 0.9;
}

.machine-dashboard .provider-section-block > h2,
.machine-dashboard .provider-section-block > h3,
.dashboard-content .provider-section-block > h2,
.dashboard-content .provider-section-block > h3,
.dashboard-section .provider-section-block > h2,
.dashboard-section .provider-section-block > h3 {
    padding-left: 10px;
}

.machine-dashboard .machine-tariff-card__summary,
.dashboard-content .machine-tariff-card__summary,
.dashboard-section .machine-tariff-card__summary {
    background: linear-gradient(180deg, #fbfdff 0%, #f4f8fd 100%);
    border-radius: 16px 16px 0 0;
}

.machine-dashboard .machine-tariff-card[open] .machine-tariff-card__summary,
.dashboard-content .machine-tariff-card[open] .machine-tariff-card__summary,
.dashboard-section .machine-tariff-card[open] .machine-tariff-card__summary {
    border-bottom: 1px solid #dbe7f5;
}

.machine-dashboard .machine-tariff-card__body,
.dashboard-content .machine-tariff-card__body,
.dashboard-section .machine-tariff-card__body {
    background: #fff;
}

.machine-dashboard .dashboard-meta,
.dashboard-content .dashboard-meta,
.dashboard-section .dashboard-meta {
    gap: 14px;
}

.machine-dashboard .meta-card,
.dashboard-content .meta-card,
.dashboard-section .meta-card {
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.machine-dashboard .meta-card dt,
.dashboard-content .meta-card dt,
.dashboard-section .meta-card dt {
    color: #1e3a5f;
    font-weight: 700;
    margin-bottom: 6px;
}

.machine-dashboard .meta-card dd,
.dashboard-content .meta-card dd,
.dashboard-section .meta-card dd {
    color: #334155;
}

.machine-dashboard .dashboard-filterbar,
.dashboard-content .dashboard-filterbar,
.dashboard-section .dashboard-filterbar {
    padding: 14px 16px;
    border: 1px solid #d7e3f3;
    border-radius: 16px;
    background: #f8fbff;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.6);
}

.machine-dashboard .dashboard-filterbar label span,
.dashboard-content .dashboard-filterbar label span,
.dashboard-section .dashboard-filterbar label span,
.machine-dashboard .machine-filter-field span,
.dashboard-content .machine-filter-field span,
.dashboard-section .machine-filter-field span {
    font-weight: 700;
    color: #1e3a5f;
    margin-bottom: 4px;
}

.machine-dashboard .dashboard-table,
.dashboard-content .dashboard-table,
.dashboard-section .dashboard-table {
    border: 1px solid #dbe7f5;
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
}

.machine-dashboard .dashboard-table thead th,
.dashboard-content .dashboard-table thead th,
.dashboard-section .dashboard-table thead th {
    background: #f4f8fd;
    color: #1e293b;
    font-weight: 700;
}

.machine-dashboard h2,
.dashboard-content h2,
.dashboard-section h2 {
    color: #0f172a;
}

.machine-dashboard h3,
.dashboard-content h3,
.dashboard-section h3 {
    color: #1e293b;
}

.machine-dashboard .machine-data-warning,
.dashboard-content .machine-data-warning,
.dashboard-section .machine-data-warning {
    border-radius: 12px;
    border-left: 4px solid #d97706;
}

@media (max-width: 767px) {
    .machine-dashboard .provider-section-block,
    .dashboard-content .provider-section-block,
    .dashboard-section .provider-section-block {
        padding: 16px 14px 14px;
    }

    .machine-dashboard .provider-section-block::before,
    .dashboard-content .provider-section-block::before,
    .dashboard-section .provider-section-block::before {
        top: 14px;
        bottom: 14px;
    }

    .machine-dashboard .dashboard-filterbar,
    .dashboard-content .dashboard-filterbar,
    .dashboard-section .dashboard-filterbar {
        padding: 12px;
    }
}


/* v1.6.142 – Grundpreis als Balken */
.machine-singlebar-card{
    margin: 10px 0 16px;
}
.machine-singlebar-card__label{
    margin: 0 0 6px;
    font-size: .84rem;
    font-weight: 700;
    color: #1e293b;
}
.machine-singlebar-card__track{
    position: relative;
    height: 18px;
    border-radius: 999px;
    background: #e6f4f1;
    overflow: hidden;
    border: 1px solid #cce7e1;
}
.machine-singlebar-card__fill{
    position: absolute;
    inset: 2px;
    border-radius: 999px;
    display: block;
}
.machine-singlebar-card__value{
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    font-size: .72rem;
    font-weight: 800;
    color: #ffffff;
    text-shadow: 0 1px 1px rgba(0,0,0,.15);
    white-space: nowrap;
}
.machine-singlebar-card__unit{
    margin-top: 6px;
    font-size: .76rem;
    color: #64748b;
}


/* v1.6.143 – reine CSS-Sticky-Lösung für Box-Überschriften */
.machine-tariff-card,
.provider-section-block,
.meta-card {
    position: relative;
}

.machine-tariff-card__summary {
    position: sticky;
    top: 78px;
    z-index: 25;
    background: rgba(251, 253, 255, 0.96);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    box-shadow: 0 1px 0 rgba(215, 227, 243, 0.9);
}

.provider-section-block > h2:first-child,
.provider-section-block > h3:first-child {
    position: sticky;
    top: 78px;
    z-index: 24;
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    padding-top: 8px;
    padding-bottom: 8px;
    margin-top: 0;
    box-shadow: 0 1px 0 rgba(215, 227, 243, 0.9);
}

@media (max-width: 991px) {
    .machine-tariff-card__summary,
    .provider-section-block > h2:first-child,
    .provider-section-block > h3:first-child {
        top: 64px;
    }
}

@media (max-width: 767px) {
    .machine-tariff-card__summary,
    .provider-section-block > h2:first-child,
    .provider-section-block > h3:first-child {
        top: 56px;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }
}


/* v1.6.144 – sticky sichtbar + Grundpreis als eigener Abschnitt */
.machine-tariff-card{
    position: relative;
    overflow: visible !important;
}
.machine-tariff-card__summary{
    position: sticky !important;
    top: 78px !important;
    z-index: 60 !important;
    display: block;
    background: rgba(251,253,255,0.98) !important;
    border-bottom: 1px solid #dbe7f5;
    box-shadow: 0 2px 8px rgba(15,23,42,0.06);
}
.machine-tariff-card__summary::-webkit-details-marker{
    display:none;
}
.machine-tariff-card[open] .machine-tariff-card__summary{
    border-radius: 16px 16px 0 0;
}
.machine-tariff-card__body{
    position: relative;
    z-index: 1;
}
.machine-singlebar-card{
    margin: 8px 0 16px;
}
.machine-singlebar-card__label{
    display:none;
}
.machine-singlebar-card__track{
    height: 22px;
    background:#eef7f4;
    border:1px solid #cfe7df;
}
.machine-singlebar-card__fill{
    inset: 2px;
    border-radius: 999px;
}
.machine-singlebar-card__value{
    font-size: .72rem;
}
.machine-singlebar-card__unit{
    text-align: right;
}
@media (max-width: 991px){
    .machine-tariff-card__summary{top:64px !important;}
}
@media (max-width: 767px){
    .machine-tariff-card__summary{top:56px !important;}
}


/* v1.6.145 – Maschinenlesbar-Farbkonzept nach Tariftyp */
.machine-tariff-card--grid {
    border-color: #b7cdef;
    background: linear-gradient(180deg, #f7fbff 0%, #edf4fd 100%);
}
.machine-tariff-card--grid .machine-tariff-card__summary {
    background: linear-gradient(180deg, #edf4fd 0%, #e2ecfa 100%) !important;
}
.machine-tariff-card--electricity {
    border-color: #b9dec3;
    background: linear-gradient(180deg, #f7fcf8 0%, #edf8f0 100%);
}
.machine-tariff-card--electricity .machine-tariff-card__summary {
    background: linear-gradient(180deg, #eaf8ee 0%, #ddf1e3 100%) !important;
}
.machine-tariff-card--metering {
    border-color: #d2c7ef;
    background: linear-gradient(180deg, #fbf9ff 0%, #f1edfb 100%);
}
.machine-tariff-card--metering .machine-tariff-card__summary {
    background: linear-gradient(180deg, #f1edfb 0%, #e7e0f8 100%) !important;
}
.machine-tariff-card--charge,
.machine-tariff-card--tax {
    border-color: #eadb9b;
    background: linear-gradient(180deg, #fffdf7 0%, #faf5df 100%);
}
.machine-tariff-card--charge .machine-tariff-card__summary,
.machine-tariff-card--tax .machine-tariff-card__summary {
    background: linear-gradient(180deg, #faf2cf 0%, #f2e7ba 100%) !important;
}
.machine-tariff-card--other {
    border-color: #ead4d4;
    background: linear-gradient(180deg, #fff9f9 0%, #f8eeee 100%);
}
.machine-tariff-card--other .machine-tariff-card__summary {
    background: linear-gradient(180deg, #f8eeee 0%, #f2e1e1 100%) !important;
}

/* Summary/values subtle type tint */
.machine-tariff-card--grid .dashboard-table thead th { background:#e8f0fb; }
.machine-tariff-card--electricity .dashboard-table thead th { background:#e8f5eb; }
.machine-tariff-card--metering .dashboard-table thead th { background:#eee9fa; }
.machine-tariff-card--charge .dashboard-table thead th,
.machine-tariff-card--tax .dashboard-table thead th { background:#f7f0cf; }

.machine-tariff-card--grid .machine-singlebar-card__track { background:#e8f0fb; border-color:#bfd2ef; }
.machine-tariff-card--electricity .machine-singlebar-card__track { background:#e8f5eb; border-color:#b9dec3; }
.machine-tariff-card--metering .machine-singlebar-card__track { background:#eee9fa; border-color:#d2c7ef; }
.machine-tariff-card--charge .machine-singlebar-card__track,
.machine-tariff-card--tax .machine-singlebar-card__track { background:#f7f0cf; border-color:#eadb9b; }

.machine-tariff-card--grid .machine-singlebar-card__fill { background:#2f67c7 !important; }
.machine-tariff-card--electricity .machine-singlebar-card__fill { background:#2f9153 !important; }
.machine-tariff-card--metering .machine-singlebar-card__fill { background:#7b63bf !important; }
.machine-tariff-card--charge .machine-singlebar-card__fill,
.machine-tariff-card--tax .machine-singlebar-card__fill { background:#ba9b1f !important; }

/* Timeline card background follows card type */
.machine-tariff-card--grid .machine-timeline-card { background:#f4f8fe; border-color:#bfd2ef; }
.machine-tariff-card--electricity .machine-timeline-card { background:#f2f9f4; border-color:#b9dec3; }
.machine-tariff-card--metering .machine-timeline-card { background:#f6f2fc; border-color:#d2c7ef; }
.machine-tariff-card--charge .machine-timeline-card,
.machine-tariff-card--tax .machine-timeline-card { background:#fbf7e7; border-color:#eadb9b; }


/* v1.6.146 – Grundpreis grafisch wie Timeline */
.machine-timeline-card--singlevalue{
    margin: 8px 0 16px;
}
.machine-timeline-card--singlevalue .machine-timeline-row__label{
    font-weight: 700;
}


/* v1.6.147 – mobil taugliche Tabellen und Grafiken mit horizontalem Scrollen */
.dashboard-table-scroll,
.dashboard-graph-scroll{
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    padding-bottom: 2px;
}

.dashboard-table-scroll > .dashboard-table{
    min-width: 760px;
    margin-bottom: 0 !important;
}

.dashboard-graph-scroll > .machine-timeline-card{
    min-width: 760px;
    margin-bottom: 0 !important;
}

.dashboard-graph-scroll > .machine-timeline-card--singlevalue{
    min-width: 760px;
}

@media (max-width: 991px){
    .dashboard-table-scroll > .dashboard-table{
        min-width: 700px;
    }

    .dashboard-graph-scroll > .machine-timeline-card,
    .dashboard-graph-scroll > .machine-timeline-card--singlevalue{
        min-width: 700px;
    }
}

@media (max-width: 767px){
    .dashboard-table-scroll,
    .dashboard-graph-scroll{
        margin-left: -2px;
        margin-right: -2px;
    }

    .dashboard-table-scroll > .dashboard-table{
        min-width: 680px;
    }

    .dashboard-graph-scroll > .machine-timeline-card,
    .dashboard-graph-scroll > .machine-timeline-card--singlevalue{
        min-width: 680px;
    }
}


/* 1.6.154: Dashboard-Hero clear fix */
.chstromtarife-hero-wrap--dashboard,
.chstromtarife-hero-wrap--dashboard .full-image,
.chstromtarife-hero-wrap--dashboard .item-image,
.chstromtarife-hero-wrap--dashboard figure {
  float: none !important;
  clear: both;
  display: block;
  width: 100%;
  max-width: 100%;
}

.chstromtarife-hero-wrap--dashboard::after,
.chstromtarife-hero-wrap--dashboard .full-image::after,
.chstromtarife-hero-wrap--dashboard .item-image::after {
  content: "";
  display: table;
  clear: both;
}

.chstromtarife-hero-wrap--dashboard + *,
.chstromtarife-hero-wrap--dashboard + .dashboard-actions,
.chstromtarife-hero-wrap--dashboard + .dashboard-filterbar,
.chstromtarife-hero-wrap--dashboard + .dashboard-section,
.chstromtarife-hero-wrap--dashboard + .chstromtarife-textblock,
.chstromtarife-hero-wrap--dashboard + .provider-accordion,
.chstromtarife-hero-wrap--dashboard + .container,
.chstromtarife-hero-wrap--dashboard + div {
  clear: both;
}


/* v1.6.160 – Tarifboxen im Versorger-Dashboard einklappbar oder fix offen */
.machine-tariff-card__summary{position:relative;}
.machine-tariff-card__chevron{justify-self:end;align-self:start;margin-top:2px;font-size:24px;line-height:1;transform:none;}
details[open] .machine-tariff-card__chevron{transform:rotate(180deg);}
.machine-tariff-card__summary--static{cursor:default;}
.machine-tariff-card--always-open .machine-tariff-card__summary{grid-template-columns:1fr auto;}
@media (max-width: 900px){.machine-tariff-card--always-open .machine-tariff-card__summary{grid-template-columns:1fr;}}


/* v1.6.198 – provider dashboard link, width and mobile timeline fixes */
.provider-section-block,.dashboard-section-machine{width:100%;max-width:none}
.dashboard-section-machine .machine-timeline-card{overflow-x:auto;-webkit-overflow-scrolling:touch}
.dashboard-section-machine .machine-timeline-axis,.dashboard-section-machine .machine-timeline-row{grid-template-columns:86px minmax(760px,1fr);min-width:846px}
.dashboard-section-machine .machine-timeline-axis__hours,.dashboard-section-machine .machine-timeline-row__track,.dashboard-section-machine .machine-timeline-row__grid{min-width:760px}
.dashboard-section-machine .machine-timeline-row__track{height:20px !important}
.dashboard-section-machine .machine-timeline-row__grid{height:20px !important}
.dashboard-section-machine .machine-timeline-segment{top:2px !important;bottom:2px !important;min-height:16px !important;font-size:.62rem !important;padding:0 4px !important}
@media (max-width: 767px){
  .dashboard-section-machine .machine-timeline-card{padding:.8rem .75rem}
  .dashboard-section-machine .machine-timeline-axis,.dashboard-section-machine .machine-timeline-row{grid-template-columns:86px minmax(760px,1fr) !important;min-width:846px}
  .dashboard-section-machine .machine-timeline-axis__label,.dashboard-section-machine .machine-timeline-row__label{width:86px;min-width:86px}
}


/* v1.6.199 mobile MR graph scroll + full width */
.dashboard-section-machine .dashboard-graph-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.dashboard-section-machine .machine-timeline-card{width:100%;max-width:none;}
@media (max-width:767px){.dashboard-section-machine .machine-timeline-axis__hours,.dashboard-section-machine .machine-timeline-row__track{min-width:720px;}.dashboard-section-machine .machine-timeline-card{overflow-x:auto;}}


/* v1.6.204 MR layout + bars */
.dashboard-section-machine .machine-timeline-row__track{height:14px !important;background:#dde4ee !important;box-shadow:inset 0 0 0 1px rgba(100,116,139,.28)!important}
.dashboard-section-machine .machine-timeline-row__grid{height:14px !important}
.dashboard-section-machine .machine-timeline-row__grid span{border-left:1px solid rgba(100,116,139,.42)!important}
.dashboard-section-machine .machine-timeline-segment{top:0 !important;bottom:0 !important;font-size:.52rem !important}
.dashboard-section-machine .machine-timeline-axis__hours span{color:#55657c !important;font-weight:800 !important}
.dashboard-section-machine .machine-timeline-note{font-size:.72rem !important;color:#516072 !important}
.dashboard-section-machine .machine-tariff-card__body h4{font-size:1.05rem !important;line-height:1.2 !important;margin:1rem 0 .6rem !important;font-weight:700 !important;color:#1f2937 !important}
.dashboard-section-machine .machine-readable-embedded-tariffs{margin-top:1rem}
.dashboard-section-machine .provider-section-block-machine-embedded,.dashboard-section-machine .machine-readable-embedded-filter,.dashboard-section-machine .machine-readable-embedded-tariffs{max-width:none !important;width:100% !important}
.dashboard-section-machine .machine-data-warning{background:#fff8e8;border:1px solid #e8c777;color:#8a5a00;border-radius:10px;padding:.6rem .8rem;margin:.45rem 0 .75rem}
.dashboard-footer .dashboard-source-muted{color:#64748b;font-size:.9em}

/* v1.6.308.19.4.4.2.11 Meta-Layout und Sunshine-Boxen */
.dashboard-meta .meta-fullwidth{grid-column:1 / -1;}
.dashboard-meta .meta-machine-box{grid-column:1 / -1;}
.dashboard-meta .meta-address-box{grid-column:1 / -1;}
@media (max-width: 1199px){.dashboard-meta .meta-machine-box,.dashboard-meta .meta-address-box,.dashboard-meta .meta-fullwidth{grid-column:1 / -1;}}
.sunshine-block__context-note{margin-top:10px;font-size:.78rem;color:#64748b;text-align:right;}
.sunshine-tariff-card .sunshine-tariff-pair{gap:0;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;background:#fff;}
.sunshine-tariff-card .sunshine-tariff-col{padding:8px 10px;}
.sunshine-tariff-card .sunshine-tariff-col + .sunshine-tariff-col{border-left:1px solid #e5e7eb;}
.sunshine-tariff-card .sunshine-tariff-col .metric-value{font-size:20px;font-weight:800;}
.sunshine-tariff-card .sunshine-tariff-col .metric-delta{margin-top:4px;font-size:12px;}

.dashboard-plus-summary__context-note{margin-top:10px;font-size:.78rem;color:#64748b;text-align:right;}
.sunshine-block__header-row{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:10px;}
.sunshine-block__header-row h3{margin:0;}
.sunshine-tariff-card .sunshine-tariff-col{padding:12px 14px;background:#fff;}
.sunshine-tariff-card .sunshine-tariff-col + .sunshine-tariff-col{border-left:1px solid #e5e7eb;}
@media (max-width: 900px){.sunshine-tariff-card .sunshine-tariff-col + .sunshine-tariff-col{border-left:none;border-top:1px solid #e5e7eb;}}

/* v1.6.308.19.4.4.2.21 provider dashboard component median and proportional stack fix */
.dashboard-plus-composition__segment{min-height:0;font-size:1.02rem;line-height:1.05;padding:0 8px;overflow:hidden}
.dashboard-plus-composition__segment-value{display:block;white-space:nowrap}
.dashboard-plus-composition__labels{display:flex;flex-direction:column;gap:8px;align-self:stretch;justify-content:center;height:auto}
.dashboard-plus-composition__label{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 9px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;min-height:0}
.dashboard-plus-composition__swatch{display:block;width:12px;height:12px;border-radius:999px;box-shadow:0 0 0 1px rgba(15,23,42,.12) inset}
.dashboard-plus-composition__leader{display:none}
.dashboard-plus-composition__label-text{font-weight:800;color:#334155;white-space:normal;line-height:1.15}
.dashboard-plus-composition__label-value{display:flex;flex-direction:column;align-items:flex-end;gap:1px;font-weight:800;color:#0f172a;white-space:nowrap}
.dashboard-plus-composition__label-percent{font-size:.68rem;font-weight:700;color:#64748b}
.dashboard-plus-card__trend--stacked{gap:7px}
.dashboard-plus-card__trend-line{gap:8px;flex-wrap:wrap;white-space:normal}
.dashboard-plus-card__trend-prefix{font-size:.68rem;font-weight:800;text-transform:uppercase;max-width:none}
.dashboard-plus-card__median{display:grid;gap:4px;padding-top:6px;border-top:1px solid #e2e8f0}
.dashboard-plus-card__median-main,.dashboard-plus-card__median-delta{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.dashboard-plus-card__median-label,.dashboard-plus-card__median-delta-label{font-size:.68rem;font-weight:800;color:#64748b;text-transform:uppercase}
.dashboard-plus-card__median-value{font-size:.88rem;font-weight:800;color:#0f172a;display:inline-flex;align-items:baseline;gap:.22rem;white-space:nowrap}

/* v1.6.308.19.4.4.2.22 provider dashboard layout follow-up */
.dashboard-meta .meta-machine-box{grid-column:1 / span 8}
.dashboard-meta .meta-address-box{grid-column:9 / span 4}
.machine-readable-ok-box{display:grid;gap:4px}
.machine-readable-ok-box strong{color:#0f766e}
.dashboard-plus-card.is-hero{padding:20px;gap:18px}
.dashboard-plus-card.is-hero .dashboard-plus-card__value{font-size:1.82rem}
.dashboard-plus-hero-copy{margin-top:12px}
.dashboard-plus-hero-compare{padding:12px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc}
.dashboard-plus-composition__body{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:stretch}
.dashboard-plus-composition__bars{display:grid;gap:10px}
.dashboard-plus-composition__bar-row{display:grid;grid-template-columns:46px minmax(0,1fr);gap:10px;align-items:center}
.dashboard-plus-composition__year{font-size:.78rem;font-weight:800;color:#475569}
.dashboard-plus-composition__bar{display:flex;height:46px;border-radius:14px;overflow:hidden;background:#e2e8f0;box-shadow:inset 0 0 0 1px rgba(15,23,42,.08)}
.dashboard-plus-composition__bar--previous{height:34px;opacity:.78}
.dashboard-plus-composition__segment{font-size:.78rem;min-width:0;padding:0 5px}
.dashboard-plus-composition__labels{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;height:auto}
.dashboard-plus-composition__label-value{font-size:.76rem}
@media (max-width: 1199px){.dashboard-meta .meta-machine-box,.dashboard-meta .meta-address-box{grid-column:1 / -1}}
.dashboard-section-machine .machine-dashboard-meta{grid-template-columns:minmax(130px,.7fr) minmax(220px,1.15fr) minmax(300px,1.35fr)}
@media (max-width: 900px){.dashboard-section-machine .machine-dashboard-meta{grid-template-columns:1fr}}
.dashboard-section-tariff-sheet .dashboard-section-title,
.provider-section-block-tariff-sheet h3{margin-bottom:.75rem}
.machine-tariff-sheet{display:grid;gap:1rem}
.machine-tariff-sheet__intro{padding:.85rem 1rem;border:1px solid #dbe5f0;border-radius:12px;background:#f8fafc;color:#334155;font-size:.92rem;line-height:1.45}
.machine-tariff-sheet__subtitle{margin:.25rem 0 0;font-size:1.08rem;color:#1f2937}
.machine-tariff-sheet .dashboard-table th{white-space:nowrap}
.machine-tariff-sheet .dashboard-table td{vertical-align:top}
.machine-tariff-sheet__table td:nth-child(3){min-width:220px;font-weight:650;color:#111827}
.machine-tariff-sheet__table td:nth-child(7),
.machine-tariff-sheet__table td:nth-child(8),
.machine-tariff-sheet__table td:nth-child(9),
.machine-tariff-sheet__table td:nth-child(10){white-space:nowrap}
.machine-tariff-sheet__time-table td:first-child{min-width:190px;font-weight:650;color:#111827}
.machine-tariff-sheet__time-table td:nth-child(3){min-width:130px}
.machine-tariff-sheet__row-warning td{background:#fff8e8}
.machine-tariff-sheet .dashboard-table{
  border-collapse:separate;
  border-spacing:0;
  border:1px solid #c8d2df;
  border-radius:12px;
  overflow:hidden;
  background:#fff;
}
.machine-tariff-sheet .dashboard-table thead th{
  background:#bcc6d4;
  color:#1f2937;
  font-weight:800;
  border-right:1px solid #aeb8c7;
  border-bottom:1px solid #aeb8c7;
  padding:9px 10px;
}
.machine-tariff-sheet .dashboard-table thead th:last-child{border-right:none}
.machine-tariff-sheet .dashboard-table tbody td{
  border-right:1px solid #d8e0ea;
  border-bottom:1px solid #d8e0ea;
  padding:8px 10px;
  line-height:1.32;
}
.machine-tariff-sheet .dashboard-table tbody td:last-child{border-right:none}
.machine-tariff-sheet .dashboard-table tbody tr:last-child td{border-bottom:none}
.machine-tariff-sheet .dashboard-table tbody tr:nth-child(even) td{background:#f8fafd}
.machine-tariff-sheet .dashboard-table tbody tr:hover td{background:#f2f7ff}
.machine-tariff-sheet__table td:nth-child(1){font-weight:700;color:#334155}
.machine-tariff-sheet__table td:nth-child(2){font-weight:800;color:#1f2937}
.machine-tariff-sheet__intro{
  background:linear-gradient(180deg,#f8fbff,#eef4fb);
  border-color:#cbd8e7;
  font-size:.9rem;
  line-height:1.4;
}
.machine-tariff-sheet__subtitle{
  margin:.25rem 0 .1rem;
  font-size:1rem;
  font-weight:800;
  color:#334155;
}
.machine-tariff-sheet-debug-box{
  margin:.2rem 0 .35rem;
  padding:.58rem .72rem;
  border:1px dashed #e29b93;
  border-radius:10px;
  background:#fff8f5;
  color:#8a3b2d;
  font-size:.78rem;
  line-height:1.38;
}
.machine-tariff-sheet-debug-box strong{
  display:block;
  margin-bottom:2px;
  font-size:.8rem;
  color:#7f2d20;
}
.machine-tariff-sheet__table--calculator thead th{
  background:#b9c3d2;
}
.machine-tariff-sheet__table--calculator .machine-tariff-sheet__unit-row th{
  background:#c3ccd8;
  font-weight:700;
  color:#334155;
}
.machine-tariff-sheet__table--calculator td{
  font-size:.95rem;
}
.machine-tariff-sheet__table--calculator td .machine-tariff-sheet__meta{
  margin-top:2px;
  font-size:.78rem;
  color:#64748b;
}
.machine-formal-issues{margin:.4rem 0 0 1.1rem}
.machine-formal-issues li{margin:.15rem 0}
.median-tariff-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:1rem}
.median-tariff-group-card{border:1px solid #e2e8f0;border-radius:14px;background:#fff;padding:14px 16px;box-shadow:0 2px 10px rgba(15,23,42,.04)}
.median-tariff-group-card h4{margin:0 0 .7rem;font-size:1rem;color:#111827}
.median-tariff-group-card dl{display:grid;gap:.45rem;margin:0}
.median-tariff-group-card dl div{display:grid;grid-template-columns:42px minmax(0,1fr);gap:.6rem;align-items:start}
.median-tariff-group-card dt{font-weight:800;color:#1f2937}
.median-tariff-group-card dd{margin:0;color:#475569;line-height:1.35}
@media (max-width: 760px){.median-tariff-group-grid{grid-template-columns:1fr}.median-tariff-group-card dl div{grid-template-columns:38px minmax(0,1fr)}}
.median-dashboard .table th:not(:first-child),
.median-dashboard .table td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}
.median-dashboard .table th:first-child,
.median-dashboard .table td:first-child{text-align:left}
.median-dashboard .table th[class*="chs-tariff-component--"],
.median-dashboard .table td[class*="chs-tariff-component--"],
.median-dashboard .median-trend-cell{width:112px;min-width:112px;max-width:112px}
.median-dashboard .table td[class*="chs-tariff-component--"]{font-weight:650}
@media (max-width: 760px){.median-dashboard .table th[class*="chs-tariff-component--"],.median-dashboard .table td[class*="chs-tariff-component--"],.median-dashboard .median-trend-cell{width:96px;min-width:96px;max-width:96px}}

/* v1.6.308.19.4.4.2.43 median dashboard backend/frontend alignment and readability */
.median-dashboard .dashboard-section__header h1.dashboard-section__title{font-size:2rem;line-height:1.15;margin:0}
.median-dashboard-actions{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}
.median-dashboard .dashboard-filter-field--full{grid-column:1 / -1}
.median-dashboard .median-line-selector{display:flex;flex-wrap:wrap;gap:8px 10px}
.median-dashboard .median-line-selector__item{display:inline-flex;align-items:center;gap:6px;font-size:.8rem}
.median-dashboard .median-line-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#eef2f7;color:#1f2937;font-weight:700}
.median-dashboard .median-line-badge--total{background:#e6ecfa}
.median-dashboard .median-line-badge--netz{background:#e0ecff}
.median-dashboard .median-line-badge--messwesen{background:#ece6ff}
.median-dashboard .median-line-badge--energie{background:#e5f5ea}
.median-dashboard .median-line-badge--abgaben{background:#fff4dc}
.median-dashboard .median-line-badge--netzzuschlag{background:#f9e5e5}
.median-dashboard .kpi-card__hint{font-size:.72rem;color:#64748b;font-weight:600}
.median-dashboard .table thead small{font-size:.68rem;font-weight:600;color:#64748b}
.median-dashboard .sunshine-group-label{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.25;max-width:280px}
.median-dashboard .median-inline-range,.median-dashboard .median-inline-val{white-space:nowrap}
.median-dashboard .median-dev-composition__labels span{display:grid;grid-template-columns:1fr auto;gap:4px 8px;align-items:center}
.median-dashboard .median-dev-composition__labels em{white-space:nowrap;display:inline-flex;justify-content:flex-end}
.median-dashboard .median-linechart__legend{display:flex;flex-wrap:wrap;gap:10px 14px;margin:0 0 10px}
.median-dashboard .median-linechart__legend-line{display:inline-block;width:22px;height:3px;border-radius:99px;background:#4f79d8;vertical-align:middle;margin-right:6px}
.median-dashboard .median-linechart__legend-line--total{background:#4f79d8}
.median-dashboard .median-linechart__legend-line--netz{background:#2b6cb0}
.median-dashboard .median-linechart__legend-line--messwesen{background:#7c3aed}
.median-dashboard .median-linechart__legend-line--energie{background:#2f855a}
.median-dashboard .median-linechart__legend-line--abgaben{background:#b7791f}
.median-dashboard .median-linechart__legend-line--netzzuschlag{background:#c05621}
.median-dashboard .median-linechart__canvas{position:relative}
.median-dashboard .median-linechart__line--total{stroke:#4f79d8;stroke-width:2.5}
.median-dashboard .median-linechart__line--netz{stroke:#2b6cb0;stroke-width:2.5}
.median-dashboard .median-linechart__line--messwesen{stroke:#7c3aed;stroke-width:2.5}
.median-dashboard .median-linechart__line--energie{stroke:#2f855a;stroke-width:2.5}
.median-dashboard .median-linechart__line--abgaben{stroke:#b7791f;stroke-width:2.5}
.median-dashboard .median-linechart__line--netzzuschlag{stroke:#c05621;stroke-width:2.5}
.median-dashboard .median-linechart__hit{fill:transparent;cursor:crosshair}
.median-dashboard .median-linechart__tooltip{position:absolute;z-index:25;min-width:220px;max-width:320px;padding:8px 10px;border-radius:10px;border:1px solid #cbd5e1;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.16);font-size:.78rem;pointer-events:none}
.median-dashboard .median-tooltip-title{font-weight:800;color:#0f172a;margin-bottom:6px}
.median-dashboard .median-tooltip-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:6px;white-space:nowrap}
.median-dashboard .median-tooltip-row .dot{width:8px;height:8px;border-radius:99px;background:#64748b}
.median-dashboard .median-tooltip-row--total .dot{background:#4f79d8}
.median-dashboard .median-tooltip-row--netz .dot{background:#2b6cb0}
.median-dashboard .median-tooltip-row--messwesen .dot{background:#7c3aed}
.median-dashboard .median-tooltip-row--energie .dot{background:#2f855a}
.median-dashboard .median-tooltip-row--abgaben .dot{background:#b7791f}
.median-dashboard .median-tooltip-row--netzzuschlag .dot{background:#c05621}
.median-dashboard .median-tooltip-row .label{color:#334155}
.median-dashboard .median-tooltip-row .value{font-weight:700;color:#0f172a}
.median-dashboard .median-dashboard-footer{margin-top:10px}
@media (max-width: 900px){
  .median-dashboard .table thead small{display:block}
  .median-dashboard .sunshine-group-label{max-width:220px}
}

/* v1.6.308.19.4.4.2.23 real-value vertical composition columns */
.dashboard-plus-composition__bars,.dashboard-plus-composition__bar-row,.dashboard-plus-composition__bar{display:initial}
.dashboard-plus-composition__columns{display:flex;justify-content:center;align-items:end;gap:26px;min-height:190px;padding:4px 4px 0}
.dashboard-plus-composition__column-wrap{display:grid;justify-items:center;gap:6px}
.dashboard-plus-composition__column{height:156px;width:86px;display:flex;flex-direction:column-reverse;justify-content:flex-start;overflow:hidden;border-radius:14px;background:#e2e8f0;box-shadow:inset 0 0 0 1px rgba(15,23,42,.08)}
.dashboard-plus-composition__column--previous{opacity:.78}
.dashboard-plus-composition__total{font-size:.82rem;font-weight:900;color:#0f172a}
.dashboard-plus-composition__segment{display:block;min-height:0;min-width:0;padding:0}
.dashboard-plus-composition__labels{grid-template-columns:repeat(auto-fit,minmax(108px,1fr))}
.dashboard-plus-composition__label{grid-template-columns:12px minmax(0,1fr)}

/* v1.6.308.19.4.4.2.74 - compact readability tune for machine dashboard */
.dashboard-section-machine{padding:16px 18px 18px !important}
.dashboard-section-machine .provider-section-block{padding:12px 14px !important}
.dashboard-section-machine .machine-tariff-card{margin:0 0 10px !important;border-radius:12px !important}
.dashboard-section-machine .machine-tariff-card__summary{padding:10px 12px !important;gap:10px !important}
.dashboard-section-machine .machine-tariff-card__title{font-size:1.95rem;line-height:1.2}
.dashboard-section-machine .machine-tariff-card__meta{gap:6px 12px !important;font-size:12px !important;line-height:1.35}
.dashboard-section-machine .machine-tariff-card__keyprices{font-size:12px !important;gap:2px !important}
.dashboard-section-machine .machine-tariff-card__body{padding:10px 12px !important}
.dashboard-section-machine .machine-tariff-card__body h4{font-size:1rem !important;margin:.7rem 0 .45rem !important}
.dashboard-section-machine .dashboard-table{margin-top:6px !important}
.dashboard-section-machine .dashboard-table th,
.dashboard-section-machine .dashboard-table td{padding:8px 10px !important;font-size:.95rem}
.dashboard-section-machine .dashboard-table thead th{font-size:.92rem}
.dashboard-section-machine .dashboard-graph-scroll{margin-top:4px}
.dashboard-section-machine .machine-timeline-monthchips{gap:4px !important}
.dashboard-section-machine .machine-timeline-monthchip{padding:3px 6px !important;font-size:.72rem !important}
.dashboard-section-machine .machine-timeline-note{font-size:.68rem !important;margin-top:.35rem !important}

@media (max-width: 900px){
  .dashboard-section-machine{padding:14px !important}
  .dashboard-section-machine .provider-section-block{padding:10px 11px !important}
  .dashboard-section-machine .machine-tariff-card__summary{padding:9px 10px !important}
  .dashboard-section-machine .machine-tariff-card__body{padding:9px 10px !important}
  .dashboard-section-machine .dashboard-table th,
  .dashboard-section-machine .dashboard-table td{padding:7px 8px !important;font-size:.92rem}
}

/* v1.6.308.19.4.4.2.167 - force strict single-line header keyprices */
.dashboard-section-machine .machine-tariff-card__keyprices.machine-tariff-card__keyprices--one-line{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:6px 12px !important;
  white-space:nowrap !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
}
.dashboard-section-machine .machine-tariff-card__keyprices.machine-tariff-card__keyprices--one-line .machine-price-pair{
  display:inline-flex !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
}
.dashboard-section-machine .machine-tariff-card__keyprices.machine-tariff-card__keyprices--one-line > *{
  flex:0 0 auto !important;
}

/* v1.6.308.19.4.4.2.75 - slimmer bars for better visual balance */
.dashboard-section-machine .machine-singlebar-card__track{height:14px !important}
.dashboard-section-machine .machine-singlebar-card__fill{height:14px !important}
.dashboard-section-machine .machine-singlebar-card__value{font-size:.82rem !important}
.dashboard-section-machine .machine-timeline-row__track{height:12px !important}
.dashboard-section-machine .machine-timeline-row__grid{height:12px !important}
.dashboard-section-machine .machine-timeline-segment{top:1px !important;bottom:1px !important;min-height:10px !important;font-size:.5rem !important}
.dashboard-section-machine .machine-timeline-segment__value{line-height:1 !important}

@media (max-width: 900px){
  .dashboard-section-machine .machine-singlebar-card__track{height:12px !important}
  .dashboard-section-machine .machine-singlebar-card__fill{height:12px !important}
  .dashboard-section-machine .machine-timeline-row__track{height:10px !important}
  .dashboard-section-machine .machine-timeline-row__grid{height:10px !important}
}

/* v1.6.308.19.4.4.2.98 - embedded MR dashboard layout + compact cleanup */
@media (min-width: 1200px){
  .dashboard-section-machine .provider-section-block-machine-embedded{
    display:grid;
    grid-template-columns:minmax(270px,300px) minmax(0,1fr);
    gap:12px 14px;
    align-items:start;
  }
  .dashboard-section-machine .machine-dashboard-meta,
  .dashboard-section-machine .machine-readable-embedded-overview{
    grid-column:1 / -1;
  }
  .dashboard-section-machine .machine-readable-embedded-filter{
    grid-column:1;
    position:sticky;
    top:96px;
    z-index:8;
    width:100%;
    max-width:300px;
    margin:0;
    float:none;
  }
  .dashboard-section-machine .machine-readable-embedded-filter .dashboard-filterbar{
    margin:0 !important;
  }
  .dashboard-section-machine .machine-readable-embedded-filter .machine-filterbar--embedded form{
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  .dashboard-section-machine .machine-readable-embedded-tariffs{
    grid-column:2;
    margin:0 !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0;
  }
}

@media (max-width: 1199px){
  .dashboard-section-machine .provider-section-block-machine-embedded{
    display:block;
  }
  .dashboard-section-machine .machine-readable-embedded-filter,
  .dashboard-section-machine .machine-readable-embedded-tariffs{
    position:static;
    max-width:none;
    width:100%;
    margin:0;
    float:none;
  }
}

.dashboard-section-machine .machine-tariff-summary-shell__grid{
  grid-template-columns:1fr !important;
}
.dashboard-section-machine .machine-tariff-summary-shell__cards{
  display:none !important;
}

.dashboard-section-machine .machine-tariff-card__summary{padding:8px 10px !important}
.dashboard-section-machine .machine-tariff-card__meta{font-size:11px !important;line-height:1.25 !important}
.dashboard-section-machine .dashboard-table th,
.dashboard-section-machine .dashboard-table td{padding:6px 8px !important}
.dashboard-section-machine .machine-timeline-axis__hours span{font-size:.62rem !important}
.dashboard-section-machine .machine-timeline-row__track{height:10px !important}
.dashboard-section-machine .machine-timeline-row__grid{height:10px !important}
.dashboard-section-machine .machine-timeline-segment{min-height:8px !important;font-size:.48rem !important}

/* v1.6.308.19.4.4.2.99 - hard layout guard for MR filter/tariff columns */
@media (min-width: 1200px){
  .dashboard-section-machine .provider-section-block-machine-embedded{
    display:grid !important;
    grid-template-columns: minmax(260px, 300px) minmax(0, 1fr) !important;
    gap:12px 14px !important;
    align-items:start !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-dashboard-meta,
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-overview{
    grid-column:1 / -1 !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-filter{
    grid-column:1 !important;
    width:100% !important;
    max-width:300px !important;
    min-width:0 !important;
    margin:0 !important;
    float:none !important;
    position:sticky !important;
    top:96px !important;
    z-index:10 !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-tariffs{
    grid-column:2 !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    float:none !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-filter .dashboard-filterbar{
    margin:0 !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-filter .machine-filterbar--embedded form{
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
}

@media (max-width: 1199px){
  .dashboard-section-machine .provider-section-block-machine-embedded{
    display:block !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-filter,
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-tariffs{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    float:none !important;
    position:static !important;
  }
}

/* v1.6.308.19.4.4.2.100 - final override against overlap from legacy float rules */
@media (min-width: 1200px){
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-filter{
    float:none !important;
    clear:none !important;
    width:100% !important;
    max-width:300px !important;
    min-width:260px !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-tariffs{
    float:none !important;
    clear:none !important;
    width:100% !important;
    max-width:calc(100% - 314px) !important;
    min-width:0 !important;
    overflow:hidden !important;
  }
}

/* v1.6.308.19.4.4.2.101 - compact 2-col fit (no clipping) */
@media (min-width: 1200px){
  .dashboard-section-machine .machine-two-col-row.is-split{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:8px !important;
    align-items:start !important;
  }
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-table-scroll,
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-graph-scroll{
    min-width:0 !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-table-scroll .dashboard-table{
    min-width:0 !important;
    width:100% !important;
    table-layout:fixed !important;
  }
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-table-scroll .dashboard-table th,
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-table-scroll .dashboard-table td{
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    padding:5px 6px !important;
    font-size:.86rem !important;
  }
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-graph-scroll .machine-timeline-card,
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-graph-scroll .machine-timeline-card--singlevalue{
    min-width:0 !important;
    width:100% !important;
    padding:8px 9px !important;
  }
  .dashboard-section-machine .machine-two-col-row.is-split .machine-timeline-axis,
  .dashboard-section-machine .machine-two-col-row.is-split .machine-timeline-row{
    grid-template-columns:66px minmax(0,1fr) !important;
    gap:6px !important;
    min-width:0 !important;
  }
  .dashboard-section-machine .machine-two-col-row.is-split .machine-timeline-axis__label,
  .dashboard-section-machine .machine-two-col-row.is-split .machine-timeline-row__label{
    width:66px !important;
    min-width:66px !important;
    font-size:.78rem !important;
  }
  .dashboard-section-machine .machine-two-col-row.is-split .machine-timeline-axis__hours,
  .dashboard-section-machine .machine-two-col-row.is-split .machine-timeline-row__track,
  .dashboard-section-machine .machine-two-col-row.is-split .machine-timeline-row__grid{
    min-width:0 !important;
    width:100% !important;
  }
  .dashboard-section-machine .machine-two-col-row.is-split .machine-timeline-axis__hours span{
    font-size:.56rem !important;
  }
  .dashboard-section-machine .machine-two-col-row.is-split .machine-timeline-row__track,
  .dashboard-section-machine .machine-two-col-row.is-split .machine-timeline-row__grid{
    height:9px !important;
  }
  .dashboard-section-machine .machine-two-col-row.is-split .machine-timeline-segment{
    top:1px !important;
    bottom:1px !important;
    min-height:7px !important;
    font-size:.45rem !important;
    padding:0 2px !important;
  }
}

/* v1.6.308.19.4.4.2.102 - Grundpreis table + compact readable timeline */
.dashboard-section-machine .machine-two-col-row--base.is-split{
  align-items:stretch !important;
}
.dashboard-section-machine .machine-two-col-row--base .dashboard-table{
  height:100%;
}
.dashboard-section-machine .machine-two-col-row--base .machine-timeline-card{
  height:100%;
  margin:0 !important;
}
.dashboard-section-machine .machine-two-col-row--base .machine-timeline-row__track,
.dashboard-section-machine .machine-two-col-row--base .machine-timeline-row__grid{
  height:8px !important;
}
.dashboard-section-machine .machine-two-col-row--base .machine-timeline-row__grid span{
  border-left:1px solid rgba(71,85,105,.5) !important;
}
.dashboard-section-machine .machine-two-col-row--base .machine-timeline-axis__hours span{
  font-size:.62rem !important;
  font-weight:800 !important;
}
.dashboard-section-machine .machine-two-col-row--base .machine-timeline-segment{
  top:1px !important;
  bottom:1px !important;
  min-height:6px !important;
}
.dashboard-section-machine .machine-two-col-row--base .machine-timeline-segment__value{
  font-size:.62rem !important;
  font-weight:800 !important;
}
.dashboard-section-machine .machine-two-col-row--base .machine-timeline-note{
  font-size:.78rem !important;
  font-weight:700 !important;
  color:#475569 !important;
}

/* v1.6.308.19.4.4.2.103 - meta row order + machine box full width + one-line status/link */
.dashboard-meta .meta-address-inline{
  grid-column: span 6;
}
.dashboard-meta .meta-address-inline dd{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.dashboard-meta .meta-machine-box{
  grid-column:1 / -1 !important;
}
.machine-readable-ok-box{
  display:block !important;
}
.machine-readable-ok-box__line{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.machine-readable-ok-box__sep{
  color:#64748b;
  padding:0 4px;
}
@media (max-width: 1199px){
  .dashboard-meta .meta-address-inline{
    grid-column:1 / -1;
  }
  .dashboard-meta .meta-address-inline dd,
  .machine-readable-ok-box__line{
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
  }
}

/* v1.6.308.19.4.4.2.105 - timeline visual tune (slimmer, lighter, clearer hour marks, 24h end mark) */
.dashboard-section-machine .machine-timeline-axis__hours{
  position:relative;
  padding-right:12px;
}
.dashboard-section-machine .machine-timeline-axis__hours::after{
  content:"24";
  position:absolute;
  right:-2px;
  top:0;
  font-size:.62rem;
  line-height:1;
  color:#475569;
  font-weight:800;
}
.dashboard-section-machine .machine-timeline-row__track,
.dashboard-section-machine .machine-timeline-row__grid{
  height:7px !important;
}
.dashboard-section-machine .machine-timeline-row__grid{
  z-index:4 !important;
  pointer-events:none;
}
.dashboard-section-machine .machine-timeline-row__grid span{
  border-left:1px solid rgba(255,255,255,.52) !important;
}
.dashboard-section-machine .machine-timeline-segment{
  top:1px !important;
  bottom:1px !important;
  min-height:5px !important;
  filter:saturate(.82) brightness(1.08);
}
.dashboard-section-machine .machine-timeline-segment__value{
  font-size:.72rem !important;
  font-weight:800 !important;
}
.dashboard-section-machine .machine-timeline-note{
  font-size:.82rem !important;
}

/* v1.6.308.19.4.4.2.110 - hard timeline style override aligned with tarifrechner look */
.dashboard-section-machine .machine-tariff-card .machine-timeline-axis__hours{
  position:relative;
  padding-right:12px !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-axis__end{
  position:absolute;
  right:-2px;
  top:0;
  font-size:.62rem !important;
  line-height:1;
  color:#475569 !important;
  font-weight:800 !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__track,
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__grid{
  height:18px !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__grid{
  z-index:4 !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__grid span{
  border-left:1px solid rgba(100,116,139,.34) !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-segment{
  top:2px !important;
  bottom:2px !important;
  min-height:10px !important;
  border-radius:5px !important;
  filter:saturate(.78) brightness(1.08) !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-segment__value{
  font-size:.78rem !important;
  font-weight:800 !important;
}

/* v1.6.308.19.4.4.2.76 - side-by-side table and bars on wide screens */
.dashboard-section-machine .machine-two-col-row{display:block}
@media (min-width: 1320px){
  .dashboard-section-machine .machine-two-col-row.is-split{
    display:grid;
    grid-template-columns:minmax(560px,1.05fr) minmax(420px,.95fr);
    gap:12px;
    align-items:start;
  }
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-table-scroll,
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-graph-scroll{
    margin-top:0;
    margin-bottom:0;
  }
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-table-scroll .dashboard-table,
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-graph-scroll .machine-timeline-card{
    margin-top:0 !important;
  }
}

/* v1.6.308.19.4.4.2.77 - force split earlier on typical desktop widths */
@media (min-width: 1080px){
  .dashboard-section-machine .machine-two-col-row.is-split{
    display:grid !important;
    grid-template-columns:minmax(520px,1fr) minmax(420px,1fr) !important;
    gap:10px !important;
    align-items:start !important;
  }
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-table-scroll{
    order:1;
  }
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-graph-scroll{
    order:2;
  }
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-table-scroll,
  .dashboard-section-machine .machine-two-col-row.is-split > .dashboard-graph-scroll{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
  }
}

/* v1.6.308.19.4.4.2.78 - split starts earlier */
@media (min-width: 900px){
  .dashboard-section-machine .machine-two-col-row.is-split{
    display:grid !important;
    grid-template-columns:minmax(440px,1fr) minmax(360px,1fr) !important;
    gap:10px !important;
    align-items:start !important;
  }
}

/* v1.6.308.19.4.4.2.79 - apply split layout globally for machine tariff cards */
@media (min-width: 900px){
  .machine-tariff-card .machine-two-col-row.is-split,
  .machine-tax-block .machine-two-col-row.is-split,
  .machine-readable-embedded-tariffs .machine-two-col-row.is-split{
    display:grid !important;
    grid-template-columns:minmax(430px,1fr) minmax(360px,1fr) !important;
    gap:10px !important;
    align-items:start !important;
  }
  .machine-tariff-card .machine-two-col-row.is-split > .dashboard-table-scroll,
  .machine-tax-block .machine-two-col-row.is-split > .dashboard-table-scroll,
  .machine-readable-embedded-tariffs .machine-two-col-row.is-split > .dashboard-table-scroll{
    order:1 !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
  }
  .machine-tariff-card .machine-two-col-row.is-split > .dashboard-graph-scroll,
  .machine-tax-block .machine-two-col-row.is-split > .dashboard-graph-scroll,
  .machine-readable-embedded-tariffs .machine-two-col-row.is-split > .dashboard-graph-scroll{
    order:2 !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
  }
}

/* v1.6.308.19.4.4.2.80 - sticky left filter sidebar for machine tariff list */
@media (min-width: 1200px){
  .machine-readable-embedded-filter{
    float:left;
    width:300px;
    margin:0 14px 14px 0;
    position:sticky;
    top:96px;
    z-index:12;
    align-self:start;
  }
  .machine-readable-embedded-filter .dashboard-filterbar{
    margin:0 !important;
  }
  .machine-readable-embedded-filter .machine-filterbar--embedded form{
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  .machine-readable-embedded-tariffs{
    margin-left:314px;
  }
}
@media (max-width: 1199px){
  .machine-readable-embedded-filter{
    float:none;
    width:auto;
    margin:0;
    position:static;
  }
  .machine-readable-embedded-tariffs{
    margin-left:0;
  }
}

/* v1.6.308.19.4.4.2.84 - dashboard tariff summary card/table block */
.machine-tariff-summary-shell{
  margin:0 0 12px;
  padding:10px 12px 12px;
  border:1px solid #dbe5f0;
  border-radius:14px;
  background:linear-gradient(180deg,#f9fbfd,#f3f8fc);
}
.machine-tariff-summary-shell__title{
  margin:0 0 8px !important;
  font-size:1rem !important;
  font-weight:700 !important;
  color:#1f2937 !important;
}
.machine-tariff-summary-shell__grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(240px,.85fr);
  gap:10px;
  align-items:start;
}

/* v1.6.308.19.4.4.2.127 - MR provider dashboard: right column full width, no desktop x-scroll */
@media (min-width: 1200px){
  .dashboard-section-machine .provider-section-block-machine-embedded{
    display:grid !important;
    grid-template-columns:minmax(240px,260px) minmax(0,1fr) !important;
    gap:12px 14px !important;
    align-items:start !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-filter{
    grid-column:1 !important;
    max-width:260px !important;
    min-width:240px !important;
    width:100% !important;
    position:sticky !important;
    top:96px !important;
    margin:0 !important;
    float:none !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-tariffs{
    grid-column:2 !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    overflow-x:hidden !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-tariffs .machine-two-col-row.is-split{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:10px !important;
    align-items:start !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-tariffs .machine-two-col-row.is-split > .dashboard-table-scroll,
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-tariffs .machine-two-col-row.is-split > .dashboard-graph-scroll{
    min-width:0 !important;
    max-width:100% !important;
    width:100% !important;
    margin:0 !important;
    overflow-x:hidden !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-tariffs .machine-two-col-row.is-split > .dashboard-table-scroll .dashboard-table{
    width:100% !important;
    min-width:0 !important;
    table-layout:fixed !important;
  }
}
.machine-tariff-summary-shell__table{margin:0;}
.machine-tariff-summary-shell__table .dashboard-table{margin:0;}
.machine-tariff-summary-shell__cards{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.machine-tariff-summary-shell__card{
  border:1px solid #cfdbe7;
  border-radius:12px;
  background:#fff;
  padding:8px 10px;
}

/* v1.6.308.19.4.4.2.133 - MR Dashboard: rechte Tarife-Spalte nutzt volle Boxenbreite */
@media (min-width: 1200px){
  .dashboard-section-machine .provider-section-block-machine-embedded{
    display:grid !important;
    grid-template-columns:minmax(240px,260px) minmax(0,1fr) !important;
    gap:12px 14px !important;
    width:100% !important;
    max-width:none !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-filter{
    grid-column:1 !important;
    width:100% !important;
    max-width:260px !important;
    min-width:240px !important;
    margin:0 !important;
    float:none !important;
  }
  .dashboard-section-machine .provider-section-block-machine-embedded > .machine-readable-embedded-tariffs{
    grid-column:2 !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 !important;
    margin-left:0 !important;
    float:none !important;
    clear:none !important;
    overflow-x:hidden !important;
  }
}
.machine-tariff-summary-shell__label{
  font-size:.78rem;
  font-weight:700;
  color:#4b5563;
  margin:0 0 3px;
}
.machine-tariff-summary-shell__value{
  font-size:1.6rem;
  line-height:1.05;
  font-weight:800;
  color:#0f172a;
}
.machine-tariff-summary-shell__unit{
  margin-top:2px;
  font-size:.8rem;
  color:#475569;
}
@media (max-width: 960px){
  .machine-tariff-summary-shell__grid{grid-template-columns:1fr;}
  .machine-tariff-summary-shell__cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));}
}

/* v1.6.308.19.4.4.2.136 - auto stack when timeline/hour-table gets too narrow */
.dashboard-section-machine .machine-two-col-row.is-split.is-auto-stack{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:10px !important;
  align-items:start !important;
}
.dashboard-section-machine .machine-two-col-row.is-split.is-auto-stack > .dashboard-table-scroll,
.dashboard-section-machine .machine-two-col-row.is-split.is-auto-stack > .dashboard-graph-scroll{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
}
.dashboard-section-machine .machine-two-col-row.is-split.is-auto-stack > .dashboard-table-scroll{
  order:1 !important;
}
.dashboard-section-machine .machine-two-col-row.is-split.is-auto-stack > .dashboard-graph-scroll{
  order:2 !important;
}

/* v1.6.308.19.4.4.2.143 - MR timeline neutral + forced single-column fallback */
.dashboard-section-machine .machine-timeline-v2-segment,
.dashboard-section-machine .machine-timeline-segment,
.dashboard-section-machine .machine-singlebar-card__fill{
  background:#5f7898 !important;
  filter:none !important;
}
.dashboard-section-machine .machine-singlebar-card__track,
.dashboard-section-machine .machine-timeline-v2-row__track,
.dashboard-section-machine .machine-timeline-row__track{
  background:#e6edf5 !important;
}
.dashboard-section-machine .machine-two-col-row.is-split.is-auto-stack .machine-hourtable-wrap{
  overflow-x:visible !important;
}
.dashboard-section-machine .machine-two-col-row.is-split.is-auto-stack .machine-hourtable{
  width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
}
.dashboard-section-machine .machine-two-col-row.is-split.is-auto-stack .machine-hourtable thead th:first-child,
.dashboard-section-machine .machine-two-col-row.is-split.is-auto-stack .machine-hourtable tbody td:first-child{
  min-width:92px !important;
  width:92px !important;
}
.dashboard-section-machine .machine-two-col-row.is-split.is-auto-stack .machine-hourtable thead th:not(:first-child),
.dashboard-section-machine .machine-two-col-row.is-split.is-auto-stack .machine-hourtable tbody td:not(:first-child){
  min-width:0 !important;
  width:auto !important;
  padding:5px 3px !important;
  font-size:.68rem !important;
}

/* v1.6.308.19.4.4.2.149 - Timeline-Farbe pro Tarifkomponente */
.dashboard-section-machine .machine-tariff-card--grid .machine-timeline-segment,
.dashboard-section-machine .machine-tariff-card--grid .machine-timeline-v2-segment,
.dashboard-section-machine .machine-tariff-card--grid .machine-singlebar-card__fill{
  background:#2f67c7 !important;
}
.dashboard-section-machine .machine-tariff-card--electricity .machine-timeline-segment,
.dashboard-section-machine .machine-tariff-card--electricity .machine-timeline-v2-segment,
.dashboard-section-machine .machine-tariff-card--electricity .machine-singlebar-card__fill{
  background:#2f9153 !important;
}
.dashboard-section-machine .machine-tariff-card--metering .machine-timeline-segment,
.dashboard-section-machine .machine-tariff-card--metering .machine-timeline-v2-segment,
.dashboard-section-machine .machine-tariff-card--metering .machine-singlebar-card__fill{
  background:#7b63bf !important;
}
.dashboard-section-machine .machine-tariff-card--charge .machine-timeline-segment,
.dashboard-section-machine .machine-tariff-card--charge .machine-timeline-v2-segment,
.dashboard-section-machine .machine-tariff-card--charge .machine-singlebar-card__fill,
.dashboard-section-machine .machine-tariff-card--tax .machine-timeline-segment,
.dashboard-section-machine .machine-tariff-card--tax .machine-timeline-v2-segment,
.dashboard-section-machine .machine-tariff-card--tax .machine-singlebar-card__fill{
  background:#ba9b1f !important;
}

/* v1.6.308.19.4.4.2.85 - machine readable filtered mode highlighting */
.machine-summary-grid.is-filtered .machine-summary-card.is-dimmed,
.machine-stats-chart.is-filtered .machine-stats-bar-card.is-dimmed{
  opacity:.42;
  filter:saturate(.72);
}
.machine-summary-grid.is-filtered .machine-summary-card.is-active,
.machine-stats-chart.is-filtered .machine-stats-bar-card.is-active{
  opacity:1;
  box-shadow:0 8px 20px rgba(37,99,235,.14);
}

.dashboard-plus-composition__label-value-text{font-size:.75rem;font-weight:700;color:#475569;font-variant-numeric:tabular-nums}

/* v1.6.308.19.4.4.2.86 - grafische tarifzusammenfassung */
.dashboard-section-visual-summary{border-top:4px solid #3b82c4}
.dashboard-visual-summary{display:grid;grid-template-columns:minmax(360px,1.2fr) minmax(280px,.9fr);gap:14px;margin:0 0 12px}
.dashboard-visual-summary__hero{border:1px solid #c8dbef;border-radius:16px;padding:14px 16px;background:linear-gradient(145deg,#f8fcff,#eaf3fb)}
.dashboard-visual-summary__kicker{font-size:.98rem;font-weight:800;color:#2b5f84;text-transform:uppercase;letter-spacing:.01em}
.dashboard-visual-summary__value{margin-top:8px;font-size:clamp(2rem,4vw,4rem);line-height:1.02;font-weight:900;color:#2d6fbe;letter-spacing:-.02em}
.dashboard-visual-summary__meta-row{margin-top:10px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.dashboard-visual-summary__chip{display:inline-flex;align-items:center}.dashboard-visual-summary__chip .dashboard-plus-badge{font-size:1.05rem;padding:6px 12px;border-radius:999px}
.dashboard-visual-summary__meta-copy{font-size:1rem;color:#334155;font-weight:600}
.dashboard-visual-summary__compare{border:1px solid #dce6f1;border-radius:16px;padding:12px 14px;background:#fff;display:grid;align-content:start}
.dashboard-visual-summary__compare-row{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid #e5edf5;font-size:1.05rem}
.dashboard-visual-summary__compare-row:first-child{border-top:none;padding-top:2px}
.dashboard-visual-summary__compare-row span{color:#334155;font-weight:700}
.dashboard-visual-summary__compare-row strong{color:#0f172a;font-weight:800;text-align:right}
.dashboard-visual-summary__stack-wrap{margin-top:8px}
.dashboard-visual-summary__stack-total{margin:0 0 8px;font-size:1.65rem;font-weight:900;color:#0f172a}
.dashboard-visual-summary__stack{display:flex;width:100%;min-height:84px;border-radius:16px;overflow:hidden;background:#f1f5f9;border:1px solid #d5e0ec}
.dashboard-visual-summary__segment{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:8px 6px;border-right:1px solid rgba(255,255,255,.65);color:#fff}
.dashboard-visual-summary__stack .seg-netz{background:var(--chs-comp-netz)}
.dashboard-visual-summary__stack .seg-messwesen{background:var(--chs-comp-messwesen)}
.dashboard-visual-summary__stack .seg-energie{background:var(--chs-comp-energie)}
.dashboard-visual-summary__stack .seg-abgaben{background:var(--chs-comp-abgaben);color:#3d2900}
.dashboard-visual-summary__stack .seg-netzzuschlag{background:var(--chs-comp-netzzuschlag)}
.dashboard-visual-summary__segment:last-child{border-right:none}
.dashboard-visual-summary__segment-label{font-size:.9rem;font-weight:800;line-height:1.1;text-align:center}
.dashboard-visual-summary__segment-value{font-size:1.75rem;font-weight:900;line-height:1.02;text-align:center}
@media (max-width: 980px){.dashboard-visual-summary{grid-template-columns:1fr}.dashboard-visual-summary__stack{min-height:72px}.dashboard-visual-summary__segment-value{font-size:1.35rem}}

/* v1.6.308.19.4.4.2.120 - MR timeline aligned to Tarifrechner geometry (colors unchanged) */
.dashboard-section-machine .machine-tariff-card .machine-timeline-card{
  border-radius:12px !important;
  padding:10px 12px !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-axis,
.dashboard-section-machine .machine-tariff-card .machine-timeline-row{
  grid-template-columns:220px minmax(0,1fr) !important;
  gap:10px !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-axis__label,
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__label{
  font-size:1.02rem !important;
  font-weight:800 !important;
  color:#1f2937 !important;
  white-space:nowrap !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-axis__hours{
  position:relative !important;
  display:grid !important;
  grid-template-columns:repeat(24,minmax(0,1fr)) !important;
  align-items:end !important;
  padding:0 0 2px 0 !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-axis__hours span{
  font-size:.74rem !important;
  line-height:1 !important;
  font-weight:700 !important;
  color:#64748b !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__track{
  height:30px !important;
  border-radius:7px !important;
  background:rgba(148,163,184,.20) !important;
  box-shadow:inset 0 0 0 1px rgba(148,163,184,.35) !important;
  overflow:hidden !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__grid{
  height:30px !important;
  z-index:1 !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__grid span{
  border-left:1px solid rgba(100,116,139,.30) !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-segment{
  top:0 !important;
  bottom:0 !important;
  min-height:30px !important;
  border-radius:6px !important;
  padding:0 2px !important;
  font-size:.94rem !important;
  font-weight:800 !important;
  box-shadow:none !important;
  filter:none !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-segment + .machine-timeline-segment{
  box-shadow:inset 1px 0 0 rgba(255,255,255,.55) !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-segment__value{
  font-size:1rem !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:.01em !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-note{
  margin-top:6px !important;
  font-size:.82rem !important;
  color:#64748b !important;
  font-weight:700 !important;
}
@media (max-width: 1200px){
  .dashboard-section-machine .machine-tariff-card .machine-timeline-axis,
  .dashboard-section-machine .machine-tariff-card .machine-timeline-row{
    grid-template-columns:170px minmax(0,1fr) !important;
  }
}
@media (max-width: 767px){
  .dashboard-section-machine .machine-tariff-card .machine-timeline-axis,
  .dashboard-section-machine .machine-tariff-card .machine-timeline-row{
    grid-template-columns:1fr !important;
    gap:6px !important;
  }
  .dashboard-section-machine .machine-tariff-card .machine-timeline-row__track,
  .dashboard-section-machine .machine-tariff-card .machine-timeline-row__grid{
    min-width:720px !important;
  }
}

/* v1.6.308.19.4.4.2.130 - FINAL timeline override (single source of truth) */
.dashboard-section-machine .machine-tariff-card .machine-timeline-axis__hours{
  display:grid !important;
  grid-template-columns:repeat(24,minmax(0,1fr)) auto !important;
  align-items:end !important;
  gap:0 !important;
  padding:0 0 2px 0 !important;
  position:relative !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-axis__hours::after{
  content:none !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-axis__hours > span{
  justify-self:center !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-axis__end{
  position:static !important;
  right:auto !important;
  top:auto !important;
  justify-self:end !important;
  margin-left:4px !important;
  font-size:.72rem !important;
  line-height:1 !important;
  font-weight:800 !important;
  color:#55657c !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__track,
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__grid{
  height:24px !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__track{
  border-radius:8px !important;
  background:rgba(148,163,184,.18) !important;
  box-shadow:inset 0 0 0 1px rgba(148,163,184,.32) !important;
  overflow:hidden !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__grid{
  z-index:2 !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-row__grid span{
  border-left:1px solid rgba(100,116,139,.34) !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-segment{
  top:1px !important;
  bottom:1px !important;
  min-height:22px !important;
  border-radius:7px !important;
  font-size:.86rem !important;
  font-weight:800 !important;
  filter:none !important;
}
.dashboard-section-machine .machine-tariff-card .machine-timeline-segment__value{
  font-size:.90rem !important;
  line-height:1 !important;
}
.machine-json-raw-pre {
  margin: 0;
  padding: .9rem 1rem;
  max-height: 560px;
  overflow: auto;
  border: 1px solid #dbe4f4;
  border-radius: 12px;
  background: #f7faff;
  color: #1f2a44;
  font: 12px/1.45 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  white-space: pre;
}

/* v1.6.308.19.4.4.2.151 - MR-Kopfzeile Rahmen/Title-Alignment Fix */
.dashboard-section-machine .machine-tariff-card{
  overflow:hidden !important;
}
.dashboard-section-machine .machine-tariff-card__summary{
  align-items:start !important;
  padding:14px 16px 12px !important;
}
.dashboard-section-machine .machine-tariff-card__head{
  margin:0 !important;
  align-self:start !important;
}
.dashboard-section-machine .machine-tariff-card__title{
  display:block !important;
  margin:0 0 4px 0 !important;
  line-height:1.15 !important;
}

/* v1.6.308.19.4.4.2.152 - Hourtable always stack + component color shades */
.dashboard-section-machine .machine-two-col-row.is-split.is-hourtable,
.dashboard-section-machine .machine-two-col-row.is-split.is-auto-stack.is-hourtable{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:10px !important;
}
.dashboard-section-machine .machine-two-col-row.is-split.is-hourtable > .dashboard-table-scroll,
.dashboard-section-machine .machine-two-col-row.is-split.is-hourtable > .dashboard-graph-scroll{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
}
.dashboard-section-machine .machine-two-col-row.is-split.is-hourtable > .dashboard-table-scroll{order:1 !important;}
.dashboard-section-machine .machine-two-col-row.is-split.is-hourtable > .dashboard-graph-scroll{order:2 !important;}
.dashboard-section-machine .machine-two-col-row.is-split.is-hourtable .machine-hourtable-wrap{overflow-x:auto !important;}

.machine-tariff-card--grid .machine-hourtable td.machine-hourtable-cell.lv-1{background:rgba(47,103,199,.14)}
.machine-tariff-card--grid .machine-hourtable td.machine-hourtable-cell.lv-2{background:rgba(47,103,199,.34)}
.machine-tariff-card--grid .machine-hourtable td.machine-hourtable-cell.lv-3{background:rgba(47,103,199,.56)}
.machine-tariff-card--electricity .machine-hourtable td.machine-hourtable-cell.lv-1{background:rgba(47,145,83,.14)}
.machine-tariff-card--electricity .machine-hourtable td.machine-hourtable-cell.lv-2{background:rgba(47,145,83,.34)}
.machine-tariff-card--electricity .machine-hourtable td.machine-hourtable-cell.lv-3{background:rgba(47,145,83,.56)}
.machine-tariff-card--metering .machine-hourtable td.machine-hourtable-cell.lv-1{background:rgba(123,99,191,.14)}
.machine-tariff-card--metering .machine-hourtable td.machine-hourtable-cell.lv-2{background:rgba(123,99,191,.34)}
.machine-tariff-card--metering .machine-hourtable td.machine-hourtable-cell.lv-3{background:rgba(123,99,191,.56)}
.machine-tariff-card--charge .machine-hourtable td.machine-hourtable-cell.lv-1,
.machine-tariff-card--tax .machine-hourtable td.machine-hourtable-cell.lv-1{background:rgba(186,155,31,.14)}
.machine-tariff-card--charge .machine-hourtable td.machine-hourtable-cell.lv-2,
.machine-tariff-card--tax .machine-hourtable td.machine-hourtable-cell.lv-2{background:rgba(186,155,31,.34)}
.machine-tariff-card--charge .machine-hourtable td.machine-hourtable-cell.lv-3,
.machine-tariff-card--tax .machine-hourtable td.machine-hourtable-cell.lv-3{background:rgba(186,155,31,.56)}

/* v1.6.308.19.4.4.2.154 - Helle Stunden-Trennlinien in Stunden-Tabelle */
.dashboard-section-machine .machine-hourtable thead th+th,
.dashboard-section-machine .machine-hourtable tbody td+td{
  border-left:1px solid rgba(148,163,184,.34) !important;
}

/* v1.6.308.19.4.4.2.155 - Dashboard Tarifblatt visuell an Tarifrechner angeglichen + Debug-Feinschliff */
.dashboard-section-tariff-sheet .machine-tariff-sheet{
  gap:14px;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__intro{
  border:1px solid #d8e1ec;
  background:#f3f7fc;
  color:#3b475c;
  font-size:.93rem;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__subtitle{
  font-size:1.02rem;
  font-weight:800;
  color:#1f2a3d;
  margin:.2rem 0 .1rem;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator{
  width:100%;
  border:1px solid #c2ccd9;
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  table-layout:auto;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator thead th{
  background:#b8c2d1;
  color:#222f43;
  border-right:1px solid #aeb8c7;
  border-bottom:1px solid #aeb8c7;
  padding:10px 12px;
  font-size:.95rem;
  font-weight:800;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator thead th:last-child{border-right:none;}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator .machine-tariff-sheet__unit-row th{
  background:#c4ceda;
  color:#314055;
  font-size:.9rem;
  font-weight:700;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator .machine-tariff-sheet__unit-row th.machine-tariff-sheet__unit-plain{
  font-weight:500;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator tbody td{
  border-right:1px solid #d6deea;
  border-bottom:1px solid #d6deea;
  padding:8px 10px;
  font-size:.95rem;
  color:#1f2937;
  line-height:1.3;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator tbody td:last-child{border-right:none;}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator tbody tr:last-child td{border-bottom:none;}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator tbody tr:nth-child(even) td{background:#f7fafd;}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator tbody tr:hover td{background:#f0f5fb;}

/* Zeitachsen im Tarifblatt: klar sichtbare Segmentfarben (Netz blau, Energie grün) */
.dashboard-section-tariff-sheet .machine-timeline-v2-card{
  border:1px solid #c8d5e6;
  border-radius:12px;
  background:#f6f9fc;
  padding:10px 12px;
}
.dashboard-section-tariff-sheet .machine-timeline-v2-row__track{
  background:#e7edf5;
}
.dashboard-section-tariff-sheet .machine-timeline-v2-row__grid span{
  border-left:1px solid rgba(71,85,105,.28);
}
.dashboard-section-tariff-sheet .machine-timeline-v2-segment{
  color:#ffffff;
  text-shadow:none;
  box-shadow:inset 0 0 0 1px rgba(15,23,42,.22),0 0 0 1px rgba(255,255,255,.6);
}
.dashboard-section-tariff-sheet .machine-timeline-v2-note{
  color:#64748b;
  font-size:.72rem;
  font-weight:600;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator td.machine-value-cell{
  text-align:right !important;
  font-variant-numeric:tabular-nums !important;
  white-space:nowrap !important;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator th.machine-value-head{
  text-align:right !important;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator th:first-child,
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator td:first-child{
  text-align:left !important;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator .machine-tariff-sheet__unit-row th{
  font-weight:500 !important;
  color:#556273 !important;
}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator .machine-tariff-sheet__unit-row th.machine-tariff-sheet__unit-plain{
  font-weight:500 !important;
  color:#556273 !important;
}

/* Debug-Box kompakt, aber klar */
.dashboard-section-tariff-sheet .machine-tariff-sheet-debug-box{
  margin:.25rem 0 .4rem;
  background:#fff8f5;
  border-color:#e59e96;
}

@media (max-width: 1380px){
  .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator,
  .dashboard-section-tariff-sheet .dashboard-table-scroll{min-width:100%;}
  .dashboard-section-tariff-sheet .dashboard-table-scroll{overflow-x:auto;}
}

/* v1.6.308.19.4.4.2.156 - Tarifblatt Schriftgrössen feinjustiert */
.dashboard-section-tariff-sheet .machine-tariff-sheet__intro{font-size:.88rem;line-height:1.38}
.dashboard-section-tariff-sheet .machine-tariff-sheet__subtitle{font-size:.98rem}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator thead th{font-size:.9rem;padding:9px 11px}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator .machine-tariff-sheet__unit-row th{font-size:.84rem}
.dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator tbody td{font-size:.9rem;line-height:1.26;padding:7px 9px}
.dashboard-section-tariff-sheet .machine-tariff-sheet__meta{font-size:.74rem}
.dashboard-section-tariff-sheet .machine-timeline-v2-axis__hours span{font-size:.7rem}
.dashboard-section-tariff-sheet .machine-timeline-v2-row__label{font-size:.9rem}
.dashboard-section-tariff-sheet .machine-timeline-v2-segment__value{font-size:.86rem}
.dashboard-section-tariff-sheet .machine-timeline-v2-note{font-size:.66rem;font-weight:500;opacity:.9}
.dashboard-section-tariff-sheet .machine-tariff-sheet-debug-box{font-size:.74rem}

/* v1.6.308.19.4.4.2.168 - MR Dashboard: einheitliche Tabellen-Typografie + stabiles Spaltenraster */
.dashboard-section-machine .dashboard-table,
.dashboard-section-machine .dashboard-table th,
.dashboard-section-machine .dashboard-table td{
  font-size:.95rem !important;
  line-height:1.32 !important;
  font-weight:500 !important;
  font-variant-numeric:tabular-nums !important;
}
.dashboard-section-machine .dashboard-table thead th{
  font-size:1rem !important;
  font-weight:700 !important;
}
.dashboard-section-machine .dashboard-table{
  width:100% !important;
  table-layout:fixed !important;
}
.dashboard-section-machine .dashboard-table th:first-child,
.dashboard-section-machine .dashboard-table td:first-child{
  width:26% !important;
}

.dashboard-section-machine .machine-hourtable{
  width:100% !important;
  min-width:100% !important;
  table-layout:fixed !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
}
.dashboard-section-machine .machine-hourtable th,
.dashboard-section-machine .machine-hourtable td{
  box-sizing:border-box !important;
  font-size:.92rem !important;
  line-height:1.28 !important;
  font-weight:600 !important;
  padding:7px 6px !important;
  text-align:center !important;
  white-space:nowrap !important;
}
.dashboard-section-machine .machine-hourtable thead th{
  font-size:.96rem !important;
  font-weight:700 !important;
}
.dashboard-section-machine .machine-hourtable thead th:first-child,
.dashboard-section-machine .machine-hourtable tbody td:first-child{
  width:108px !important;
  min-width:108px !important;
  max-width:108px !important;
  text-align:left !important;
  padding-left:10px !important;
  padding-right:10px !important;
}
.dashboard-section-machine .machine-hourtable thead th:not(:first-child),
.dashboard-section-machine .machine-hourtable tbody td:not(:first-child){
  width:calc((100% - 108px) / 24) !important;
  min-width:0 !important;
}
.dashboard-section-machine .machine-hourtable-note{
  font-size:.82rem !important;
  font-weight:600 !important;
}

/* v1.6.308.19.4.4.2.169 - MR Kopf bündig + Tarifkomponenten strikt einzeilig */
.dashboard-section-machine .machine-tariff-card{
  padding-top:0 !important;
}
.dashboard-section-machine .machine-tariff-card__summary,
.dashboard-section-machine .machine-tariff-card[open] .machine-tariff-card__summary,
.dashboard-section-machine .machine-tariff-card__summary.machine-tariff-card__summary--static{
  position:relative !important;
  top:0 !important;
  margin-top:0 !important;
  align-items:start !important;
  padding-top:12px !important;
}
.dashboard-section-machine .machine-tariff-card__head{
  margin-top:0 !important;
  padding-top:0 !important;
}
.dashboard-section-machine .machine-tariff-card__title{
  margin-top:0 !important;
  padding-top:0 !important;
}
.dashboard-section-machine .machine-tariff-card__keyprices.machine-tariff-card__keyprices--one-line{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:8px 14px !important;
  white-space:nowrap !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
}
.dashboard-section-machine .machine-tariff-card__keyprices.machine-tariff-card__keyprices--one-line .machine-price-pair{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
}
.dashboard-section-machine .machine-tariff-card__keyprices.machine-tariff-card__keyprices--one-line .machine-price-pair .machine-price-label{
  white-space:nowrap !important;
  font-weight:500 !important;
}

/* v1.6.308.19.4.4.2.176 - MR card typography, neutral values, stronger timeline value frame */
.dashboard-section-machine .machine-tariff-card{
  font-size:.95rem !important;
  line-height:1.34 !important;
  color:#334155 !important;
}
.dashboard-section-machine .machine-tariff-card__title{
  font-size:1.28rem !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
}
.dashboard-section-machine .machine-tariff-card__meta,
.dashboard-section-machine .machine-tariff-card__keyprices,
.dashboard-section-machine .dashboard-table,
.dashboard-section-machine .dashboard-table th,
.dashboard-section-machine .dashboard-table td,
.dashboard-section-machine .machine-hourtable th,
.dashboard-section-machine .machine-hourtable td{
  font-size:.95rem !important;
  line-height:1.32 !important;
}
.dashboard-section-machine .machine-price-value,
.dashboard-section-machine .machine-value-badge{
  display:inline !important;
  min-width:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:inherit !important;
  font-weight:800 !important;
  line-height:inherit !important;
  box-shadow:none !important;
}
.dashboard-section-machine .machine-range-badges{
  display:inline-flex !important;
  align-items:baseline !important;
  gap:.35rem !important;
}
.dashboard-section-machine .machine-timeline-v2-card{
  border-color:#aab7c8 !important;
  background:#fff !important;
  box-shadow:inset 0 0 0 1px rgba(15,23,42,.05) !important;
}
.dashboard-section-machine .machine-timeline-v2-row__track{
  height:26px !important;
  border-radius:8px !important;
  background:#eef3f8 !important;
  box-shadow:inset 0 0 0 1px #9eacbd !important;
}
.dashboard-section-machine .machine-timeline-v2-row__grid{
  height:26px !important;
}
.dashboard-section-machine .machine-timeline-v2-segment{
  top:2px !important;
  bottom:2px !important;
  border-radius:6px !important;
  font-size:1rem !important;
  font-weight:800 !important;
  text-shadow:none !important;
  background:var(--mr-seg-bg, #5f7ea6) !important;
  box-shadow:inset 0 0 0 2px rgba(30,41,59,.38),0 0 0 1px rgba(255,255,255,.7) !important;
}
.dashboard-section-machine .machine-timeline-v2-segment__value{
  font-size:1rem !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
}
.dashboard-section-machine .machine-timeline-v2-note,
.dashboard-section-machine .machine-hourtable-note{
  font-size:.82rem !important;
}

/* v1.6.308.19.4.4.2.170 - Tarifblatt im Dashboard näher am Tarifrechner + Kennwerte rechtsbündig */
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator{
  border:1px solid #bcc7d8 !important;
  border-radius:12px !important;
  background:#fff !important;
  overflow:hidden !important;
}
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator thead th{
  background:#b7c2d1 !important;
  color:#1f2937 !important;
  font-size:.95rem !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
  padding:9px 10px !important;
  border-right:1px solid #aeb9ca !important;
  border-bottom:1px solid #aeb9ca !important;
}
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator .machine-tariff-sheet__unit-row th{
  background:#c4cddb !important;
  color:#334155 !important;
  font-size:.86rem !important;
  font-weight:700 !important;
}
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator .machine-tariff-sheet__unit-row th.machine-tariff-sheet__unit-plain{
  font-weight:500 !important;
}
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator tbody td{
  font-size:.95rem !important;
  font-weight:500 !important;
  color:#1f2937 !important;
  padding:8px 10px !important;
  border-right:1px solid #d4deeb !important;
  border-bottom:1px solid #d4deeb !important;
  vertical-align:middle !important;
  background:#fff !important;
}
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator tbody tr:nth-child(even) td{
  background:#f7fafd !important;
}
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator th:first-child,
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator td:first-child{
  text-align:left !important;
}
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator td.machine-value-cell{
  text-align:right !important;
  font-variant-numeric:tabular-nums !important;
  white-space:nowrap !important;
}
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator th.machine-value-head{
  text-align:right !important;
}
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator thead th:nth-child(1),
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator thead th:nth-child(2),
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator .machine-tariff-sheet__unit-row th:nth-child(1),
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator .machine-tariff-sheet__unit-row th:nth-child(2){
  text-align:left !important;
}
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator td.machine-value-cell .machine-value-badge{
  margin-left:auto !important;
}
.dashboard-section-machine .dashboard-section-tariff-sheet .machine-tariff-sheet__table--calculator .machine-tariff-sheet__meta{
  font-size:.82rem !important;
  color:#64748b !important;
}

/* v1.6.308.19.4.4.2.173 - Einheitliche, kompaktere Tabellen-Typografie im MR-Dashboard */
.dashboard-section-machine .dashboard-table th,
.dashboard-section-machine .dashboard-table td,
.dashboard-section-machine .machine-hourtable th,
.dashboard-section-machine .machine-hourtable td{
  font-size:.88rem !important;
  font-weight:500 !important;
  line-height:1.2 !important;
}
.dashboard-section-machine .dashboard-table thead th,
.dashboard-section-machine .machine-hourtable thead th{
  font-size:.92rem !important;
  font-weight:600 !important;
}
.dashboard-section-machine .machine-hourtable tbody td{
  font-weight:500 !important;
}
.dashboard-section-machine .machine-hourtable .value-badge,
.dashboard-section-machine .dashboard-table .value-badge,
.dashboard-section-machine .machine-hourtable .machine-value-badge,
.dashboard-section-machine .dashboard-table .machine-value-badge{
  font-size:.84rem !important;
  font-weight:600 !important;
}
.dashboard-section-machine .machine-hourtable-note,
.dashboard-section-machine .machine-tariff-component .machine-hourtable-note,
.dashboard-section-machine .dashboard-table .machine-unit,
.dashboard-section-machine .machine-hourtable .machine-unit{
  font-size:.78rem !important;
  font-weight:400 !important;
  color:#64748b !important;
}

/* Optionales Zusatzlayout fuer das Versorger-Dashboard Plus */
.dashboard-plus-flow--flat .dashboard-visual-summary__stack .seg-netz{background:var(--chs-comp-netz)}
.dashboard-plus-flow--flat .dashboard-visual-summary__stack .seg-messwesen{background:var(--chs-comp-messwesen)}
.dashboard-plus-flow--flat .dashboard-visual-summary__stack .seg-energie{background:var(--chs-comp-energie)}
.dashboard-plus-flow--flat .dashboard-visual-summary__stack .seg-abgaben{background:var(--chs-comp-abgaben);color:#3d2900}
.dashboard-plus-flow--flat .dashboard-visual-summary__stack .seg-netzzuschlag{background:var(--chs-comp-netzzuschlag)}
.dashboard-plus-flow--flat .dashboard-plus-composition__label-value-text{display:block;margin-top:1px;font-size:.75rem;font-weight:700;color:#475569;font-variant-numeric:tabular-nums}
.dashboard-plus-flow--flat .history-row-bar-wrap{height:52px !important;border-radius:10px !important}
.dashboard-plus-flow--flat .history-row-bar-scale{border-radius:10px !important}
.dashboard-plus-flow--flat .history-chart-horizontal .seg-netz{background:var(--chs-comp-netz)}
.dashboard-plus-flow--flat .history-chart-horizontal .seg-messwesen{background:var(--chs-comp-messwesen)}
.dashboard-plus-flow--flat .history-chart-horizontal .seg-energie{background:var(--chs-comp-energie)}
.dashboard-plus-flow--flat .history-chart-horizontal .seg-abgaben{background:var(--chs-comp-abgaben)}
.dashboard-plus-flow--flat .history-chart-horizontal .seg-netzzuschlag{background:var(--chs-comp-netzzuschlag)}
.dashboard-plus-flow--flat .history-chart-horizontal .history-segment-label{color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.18)}
.dashboard-plus-flow--flat .dashboard-meta-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:9px}
.dashboard-plus-flow--flat .dashboard-meta-chip{display:inline-flex;flex-direction:column;padding:7px 14px;border:1px solid #e2e8f0;border-radius:11px;background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.05)}
.dashboard-plus-flow--flat .dashboard-meta-chip__lbl{font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8}
.dashboard-plus-flow--flat .dashboard-meta-chip__val{margin-top:1px;font-size:.9rem;font-weight:800;color:#0f172a}
.dashboard-plus-flow--flat .dashboard-meta-split{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.dashboard-plus-flow--flat .dashboard-meta-split-card{padding:11px 14px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.04)}
.dashboard-plus-flow--flat .dashboard-meta-split-card--gemeinden{border-left:3px solid #93c5fd;background:#f8fbff}
.dashboard-plus-flow--flat .dashboard-meta-split-card--adresse{border-left:3px solid #d1d5db}
.dashboard-plus-flow--flat .dashboard-meta-split-card__lbl{margin-bottom:3px;font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8}
.dashboard-plus-flow--flat .dashboard-meta-split-card__val{font-size:.88rem;font-weight:700;color:#0f172a}
.dashboard-plus-flow--flat .metric-card__value-row{display:flex;align-items:baseline;gap:4px;margin-top:6px;flex-wrap:nowrap}
.dashboard-plus-flow--flat .metric-card__value{white-space:nowrap}
.dashboard-plus-flow--flat .metric-card__unit{white-space:nowrap;flex-shrink:0}
.dashboard-plus-flow--flat .metric-card__badge-row{display:flex;align-items:center;min-height:22px;margin-top:7px}
.dashboard-plus-flow--flat .metric-card__compare{display:grid;gap:3px;margin-top:10px;font-size:.68rem;line-height:1.45;color:#64748b}
.dashboard-plus-flow--flat .metric-card__compare-line{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}
.dashboard-plus-flow--flat .metric-card__compare-label{font-weight:700;color:#64748b}
.dashboard-plus-flow--flat .metric-card__compare-value{font-weight:700;color:#475569}
.dashboard-plus-flow--flat .metric-card__compare-delta{font-weight:800}
.dashboard-plus-flow--flat .metric-card--flat{min-height:172px;box-shadow:0 6px 18px rgba(15,23,42,.05)}
.dashboard-plus-flow--flat .metric-card--flat .metric-card__delta{display:none}
.dashboard-plus-flow--flat .dashboard-trend-sparkline{margin:6px 0 16px;padding:11px 14px 13px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}
.dashboard-plus-flow--flat .dashboard-trend-sparkline__title{margin-bottom:7px;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#64748b}
.dashboard-plus-flow--flat .dashboard-trend-sparkline svg{display:block;width:100%;height:80px;overflow:visible}
.dashboard-plus-flow--flat .median-benchmark-card__gauge-wrap{position:relative;margin:7px 0 2px}
.dashboard-plus-flow--flat .median-benchmark-card__gauge{position:relative;height:10px;border-radius:999px;background:#e8edf4;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(15,23,42,.07)}
.dashboard-plus-flow--flat .median-benchmark-card__gauge-fill{position:absolute;top:0;bottom:0;border-radius:999px}
.dashboard-plus-flow--flat .median-benchmark-card__gauge-fill--pos{left:50%;border-radius:0 999px 999px 0}
.dashboard-plus-flow--flat .median-benchmark-card__gauge-fill--neg{right:50%;border-radius:999px 0 0 999px}
.dashboard-plus-flow--flat .median-benchmark-card__gauge-mark{position:absolute;top:-1px;bottom:-1px;left:50%;transform:translateX(-50%);width:2px;border-radius:1px;background:#1e293b;z-index:3}
.dashboard-plus-flow--flat .median-benchmark-card__deviation{display:inline-flex;align-items:center;gap:3px;margin-top:5px;padding:3px 7px;border-radius:999px;font-size:.76rem;font-weight:800}
.dashboard-plus-flow--flat .median-benchmark-card__deviation--up{border:1px solid #fecdd3;background:#fff1f2;color:#b91c1c}
.dashboard-plus-flow--flat .median-benchmark-card__deviation--down{border:1px solid #bbf7d0;background:#ecfdf5;color:#047857}
.dashboard-plus-flow--flat .median-benchmark-card__deviation--flat{border:1px solid #cbd5e1;background:#f8fafc;color:#475569}
.dashboard-plus-flow--flat .median-benchmark-card__ref{margin-top:3px;font-size:.63rem;line-height:1.4;color:#64748b;font-variant-numeric:tabular-nums}
.dashboard-plus-flow--flat .dashboard-section-visual-summary{border-top:none}
.dashboard-plus-flow--flat .dashboard-section-title{letter-spacing:.08em;color:#94a3b8}
.dashboard-plus-flow--flat .dashboard-visual-summary{display:block}
.dashboard-plus-flow--flat .dashboard-visual-summary__hero{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:18px;background:#fff;border:1px solid #dce6f1}
.dashboard-plus-flow--flat .dashboard-visual-summary__kicker{font-size:1rem;letter-spacing:.06em;color:#375a7f}
.dashboard-plus-flow--flat .dashboard-visual-summary__value{font-size:3.25rem}
.dashboard-plus-flow--flat .dashboard-visual-summary__chip .dashboard-plus-badge{font-size:1.2rem}
.dashboard-plus-flow--flat .dashboard-visual-summary__compare{border-radius:14px;align-self:start}
.dashboard-plus-flow--flat .dashboard-visual-summary__stack-wrap{margin-top:14px;padding:0 8px 8px;border:1px solid #dce6f1;border-radius:16px;background:#fff}
.dashboard-plus-flow--flat .dashboard-visual-summary__stack-total{padding:12px 0 10px;font-size:.96rem;font-weight:800;letter-spacing:.06em;color:#64748b;text-transform:uppercase}
.dashboard-plus-flow--flat .dashboard-visual-summary__stack{min-height:138px;border-radius:22px;border:1px solid #d7e2ee;box-shadow:inset 0 0 0 1px rgba(255,255,255,.55)}
.dashboard-plus-flow--flat .dashboard-visual-summary__segment{padding:10px 8px}
.dashboard-plus-flow--flat .dashboard-visual-summary__segment-label{font-size:1.05rem;font-weight:800;letter-spacing:.01em}
.dashboard-plus-flow--flat .dashboard-visual-summary__segment-value{font-size:2.15rem;font-weight:900}
.dashboard-plus-flow--flat .dashboard-visual-summary__legend{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}
.dashboard-plus-flow--flat .dashboard-visual-summary__legend-item{display:grid;grid-template-columns:14px minmax(0,1fr);gap:10px;align-items:start;padding:10px 14px;border:1px solid #dce6f1;border-radius:16px;background:#f8fbff;box-shadow:0 1px 3px rgba(15,23,42,.04)}
.dashboard-plus-flow--flat .dashboard-visual-summary__legend-dot{display:block;width:14px;height:14px;margin-top:4px;border-radius:999px;box-shadow:0 0 0 1px rgba(15,23,42,.08)}
.dashboard-plus-flow--flat .dashboard-visual-summary__legend-dot.seg-netz{background:var(--chs-comp-netz)}
.dashboard-plus-flow--flat .dashboard-visual-summary__legend-dot.seg-messwesen{background:var(--chs-comp-messwesen)}
.dashboard-plus-flow--flat .dashboard-visual-summary__legend-dot.seg-energie{background:var(--chs-comp-energie)}
.dashboard-plus-flow--flat .dashboard-visual-summary__legend-dot.seg-abgaben{background:var(--chs-comp-abgaben)}
.dashboard-plus-flow--flat .dashboard-visual-summary__legend-dot.seg-netzzuschlag{background:var(--chs-comp-netzzuschlag)}
.dashboard-plus-flow--flat .dashboard-visual-summary__legend-text{font-size:1.08rem;font-weight:800;color:#334155;line-height:1.1}
.dashboard-plus-flow--flat .dashboard-visual-summary__legend-text small{display:block;margin-top:4px;font-size:.88rem;font-weight:800;color:#475569}
.dashboard-plus-flow--flat .metric-grid-tariffs--flat{grid-template-columns:repeat(6,minmax(0,1fr))}
.dashboard-plus-flow--flat .dashboard-section-history--boxed .history-note{font-size:1.02rem;color:#64748b}
@media (max-width:1200px){.dashboard-plus-flow--flat .median-benchmark__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){
  .dashboard-plus-flow--flat .history-row-bar-wrap{height:44px !important}
  .dashboard-plus-flow--flat .dashboard-meta-split{grid-template-columns:1fr}
  .dashboard-plus-flow--flat .dashboard-visual-summary__hero{grid-template-columns:1fr}
  .dashboard-plus-flow--flat .dashboard-visual-summary__legend{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-plus-flow--flat .dashboard-visual-summary__stack{min-height:116px}
  .dashboard-plus-flow--flat .dashboard-visual-summary__segment-label{font-size:.92rem}
  .dashboard-plus-flow--flat .dashboard-visual-summary__segment-value{font-size:1.6rem}
  .dashboard-plus-flow--flat .metric-grid-tariffs--flat{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){.dashboard-plus-flow--flat .median-benchmark__grid{grid-template-columns:1fr}}
