/* charts.css — Gridvynt chart / data-visualization component styles */

/* ── FORECAST CHART PANEL ── */
.gvt-chart-axis-label {
  font-family: 'JetBrains Mono', Consolas, monospace;
  font-size: 0.6875rem;
  fill: #64748B;
}

.gvt-chart-grid-line {
  stroke: #1E3A5F;
  stroke-width: 1;
}

/* Confidence band shading */
.gvt-band-p10-p90 {
  fill: rgba(245, 166, 35, 0.12);
}
.gvt-band-p25-p75 {
  fill: rgba(245, 166, 35, 0.2);
}

/* Trace line styles */
.gvt-trace--solar {
  stroke: #F5A623;
  stroke-width: 2;
  fill: none;
}
.gvt-trace--wind {
  stroke: #1ECFB3;
  stroke-width: 2;
  fill: none;
}
.gvt-trace--reserve {
  stroke: #94A3B8;
  stroke-width: 1.5;
  fill: none;
  stroke-dasharray: 4 3;
}

/* Animated draw effect on canvas */
.gvt-chart-canvas-wrap {
  position: relative;
  width: 100%;
}

/* Inline SVG pipeline diagram */
.gvt-pipe-node {
  rx: 6;
  ry: 6;
}
.gvt-pipe-node--nwp    { fill: #0F1E38; stroke: #1E3A5F; }
.gvt-pipe-node--ml     { fill: #0F1E38; stroke: #F5A623; }
.gvt-pipe-node--output { fill: #0F1E38; stroke: #1ECFB3; }

.gvt-pipe-connector {
  stroke: #F5A623;
  stroke-width: 1.5;
  fill: none;
  marker-end: url(#gvt-arrow);
}

.gvt-pipe-label {
  font-family: 'JetBrains Mono', Consolas, monospace;
  font-size: 11px;
  fill: #94A3B8;
}
.gvt-pipe-label--accent {
  fill: #F5A623;
}
.gvt-pipe-label--teal {
  fill: #1ECFB3;
}
.gvt-pipe-sublabel {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 9px;
  fill: #64748B;
}

/* Platform module icon visual inside diagram */
.gvt-diag-box {
  fill: #0D1F3C;
  stroke: #1E3A5F;
  stroke-width: 1;
  rx: 8;
}
.gvt-diag-box--active {
  stroke: #F5A623;
  stroke-width: 1.5;
}

/* Horizon / time axis labels */
.gvt-x-label {
  font-family: 'JetBrains Mono', monospace;
  font-size: 9px;
  fill: #64748B;
  text-anchor: middle;
}
.gvt-y-label {
  font-family: 'JetBrains Mono', monospace;
  font-size: 9px;
  fill: #64748B;
  text-anchor: end;
}

/* Live "now" marker */
.gvt-now-line {
  stroke: rgba(245,166,35,0.6);
  stroke-width: 1;
  stroke-dasharray: 3 3;
}

/* Status dot */
.gvt-status-ok {
  fill: #22C55E;
}
.gvt-status-warn {
  fill: #EAB308;
}
.gvt-status-err {
  fill: #EF4444;
}
