/* Shared chart treatment: dashboard, comparisons, production and payroll. */
html:root{
  --chart-blue:#2563eb;--chart-green:#15803d;--chart-red:#dc2626;
  --chart-shadow:color-mix(in srgb,var(--text-primary) 7%,transparent);
}
html:root[data-theme="dark"]{--chart-blue:#60a5fa;--chart-green:#4ade80;--chart-red:#fb7185;}
html:root :is(.analytics-chart,.analytics-year-chart,.production-price-chart){
  background:var(--surface) linear-gradient(145deg,color-mix(in srgb,var(--accent) 3%,var(--surface)),var(--surface) 65%);
  border-color:color-mix(in srgb,var(--accent) 12%,var(--border));
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--surface) 90%,white),0 7px 24px var(--chart-shadow);
}
html:root #payroll-window .payroll-chart{
  background:var(--surface) linear-gradient(145deg,color-mix(in srgb,var(--accent) 3%,var(--surface)),var(--surface) 65%);
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--surface) 90%,white),0 7px 24px var(--chart-shadow);
}
:is(.analytics-plot,.analytics-year-plot)>svg,.production-price-chart>svg,.payroll-department-chart{
  border-radius:12px;
  background:var(--surface) linear-gradient(180deg,color-mix(in srgb,var(--accent) 3%,var(--surface)),var(--surface));
}
.analytics-line,.analytics-year-line,.production-price-line{
  stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;
  filter:drop-shadow(0 3px 4px color-mix(in srgb,currentColor 18%,transparent));
}
.analytics-line{color:var(--series-color,var(--accent));stroke-width:2.8;}
.analytics-year-line{stroke-width:2.8;}
.production-price-line{color:var(--price-color,var(--accent));}
.analytics-area{fill-opacity:1;}
.analytics-series-area{pointer-events:none;opacity:.65;}
.analytics-year-area{pointer-events:none;opacity:.6;}
.analytics-year-area[data-period="comparison"]{opacity:.25;}
.production-price-area{opacity:.65;pointer-events:none;animation:crm-chart-area-in .6s var(--motion-ease);}
.analytics-point,.analytics-year-point{
  stroke:var(--surface);stroke-width:1.8;vector-effect:non-scaling-stroke;
  transition:r var(--motion-fast,.16s),stroke-width var(--motion-fast,.16s),opacity var(--motion-fast,.16s);
}
.analytics-day[data-active="true"] .analytics-point,.analytics-year-point[data-active="true"]{
  r:5;stroke-width:2.8;filter:drop-shadow(0 0 5px color-mix(in srgb,var(--accent) 28%,transparent));
}
.analytics-bar,.analytics-comparison-bar,.payroll-bar-fill{
  filter:drop-shadow(0 3px 3px var(--chart-shadow));
  transition:opacity var(--motion-fast,.16s),filter var(--motion-fast,.16s);
}
.analytics-day[data-active="true"] .analytics-bar,.analytics-comparison-target:is(:hover,:focus,[data-active="true"]) .analytics-comparison-bar{
  filter:brightness(1.08) drop-shadow(0 4px 5px var(--chart-shadow));
}
.analytics-gridline,.production-price-grid{stroke:var(--border);stroke-dasharray:3 6;opacity:.7;}
.analytics-axis,.production-price-axis{font-variant-numeric:tabular-nums;letter-spacing:.01em;}
.analytics-day[data-active="true"] .analytics-day-band{fill-opacity:.055;}
.analytics-crosshair{stroke-dasharray:none;}
.analytics-year-band{rx:8px;}
.analytics-year-month[data-active="true"] .analytics-year-band{fill-opacity:.055;}
.analytics-chart-tooltip,.production-price-tooltip{
  background:color-mix(in srgb,var(--surface) 96%,transparent);
  backdrop-filter:blur(14px) saturate(1.12);
  border-color:color-mix(in srgb,var(--accent) 22%,var(--border));
  box-shadow:0 10px 28px color-mix(in srgb,var(--text-primary) 12%,transparent),inset 0 1px 0 var(--surface);
}
.analytics-ring-segment{filter:drop-shadow(0 2px 3px var(--chart-shadow));}
.analytics-ring-segment.is-active{filter:brightness(1.08) drop-shadow(0 3px 5px var(--chart-shadow));}
.analytics-chart-multiple{--series-revenue:var(--chart-blue);--series-check:var(--chart-green);--series-turnover:var(--chart-red);}
html:root[data-theme="dark"] .analytics-chart-multiple{--series-revenue:var(--chart-blue);--series-check:var(--chart-green);--series-turnover:var(--chart-red);}
.analytics-chart-multiple .analytics-line{stroke-dasharray:none;stroke-dashoffset:0;}
.analytics-chart-multiple[data-drawing="pending"] .analytics-series-reveal{transform:scaleX(0);}
.analytics-chart-multiple .analytics-series-label::before{background:var(--series-color);}
html:root .analytics-table-fold .news-text-content{overflow:clip;}
.analytics-table-fold>.news-text-toggle{margin-top:8px;}
@keyframes crm-chart-area-in{from{opacity:0;}to{opacity:.65;}}
@media(prefers-reduced-motion:reduce){
  .analytics-point,.analytics-year-point,.analytics-bar,.analytics-comparison-bar,.payroll-bar-fill{transition:none;}
  .production-price-area{animation:none;}
}
