/* Inicio · chart families. Geometry, series, gaps and source controls stay intact. */
#homeView .home-chart-touch-hint { display: none; }
#homeView .home-performance-group {
  --sw-chart-accent: #0866d9;
  --sw-chart-deep: #074ba0;
  --sw-chart-soft: #eaf3ff;
  --sw-chart-canvas: #f3f7fc;
  --sw-chart-previous: #788496;
  --sw-chart-trend: #46556a;
  --sw-chart-projection: #7351c4;
  gap: 18px;
  padding: 20px;
  background: var(--sw-chart-canvas);
  border: 1px solid #cad8e8;
  border-radius: 14px;
  box-shadow: 0 6px 22px rgb(12 36 68 / 5%);
}

#homeView .home-performance-group[data-performance-group="post-sales"] {
  --sw-chart-accent: #008c95;
  --sw-chart-deep: #006870;
  --sw-chart-soft: #e3f5f4;
  --sw-chart-canvas: #f0f8f7;
  border-color: #c6deda;
}

#homeView .home-performance-group-heading {
  align-items: center;
  gap: 20px;
  margin: -20px -20px 0;
  padding: 22px 24px;
  color: #fff;
  background: #10223c;
  border-left: 5px solid var(--sw-chart-accent);
  border-radius: 13px 13px 0 0;
}

#homeView .home-performance-group[data-performance-group="post-sales"] .home-performance-group-heading {
  background: #102f38;
}

#homeView .home-performance-group-heading span {
  color: #bcd7fc;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
}

#homeView .home-performance-group[data-performance-group="post-sales"] .home-performance-group-heading span {
  color: #a8e2df;
}

#homeView .home-performance-group-heading h3 {
  margin: 5px 0 7px;
  color: #fff;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.2;
}

#homeView .home-performance-group-heading p {
  max-width: 860px;
  color: #d0dce9;
  font-size: 14px;
  line-height: 1.5;
}

#homeView .home-performance-group-heading > a {
  min-height: 42px;
  color: #fff;
  background: rgb(255 255 255 / 9%);
  border: 1px solid #71859e;
  border-radius: 8px;
  font-size: 13px;
  line-height: 1.4;
}

#homeView .home-performance-group-heading > a:hover,
#homeView .home-performance-group-heading > a:focus-visible {
  color: #10223c;
  background: #fff;
  border-color: #fff;
}

#homeView .home-performance-toolbar {
  gap: 16px;
  padding: 14px 16px;
  background: #fff;
  border-color: #d5dfea;
  border-radius: 10px;
}

#homeView .home-performance-controls { gap: 10px 14px; }
#homeView .home-performance-filter > span,
#homeView .home-performance-select > span { color: #4b5a70; font-size: 12px; }
#homeView .home-performance-segmented { background: #edf2f8; border-color: #d6e0ec; }
#homeView .home-performance-segmented button { min-height: 36px; color: #4b5a70; font-size: 13px; }
#homeView .home-performance-segmented button.active { color: #fff; background: var(--sw-chart-deep); box-shadow: 0 2px 5px rgb(8 42 86 / 12%); }
#homeView .home-performance-select select { border-color: #bdcddd; font-size: 14px; }
#homeView .home-performance-freshness { max-width: 310px; }
#homeView .home-performance-freshness > i { color: var(--sw-chart-deep); }
#homeView .home-performance-freshness strong { color: #203752; font-size: 12px; }

#homeView .home-performance-card-list { grid-template-columns: minmax(0, 1fr); gap: 18px; }
#homeView .home-performance-card {
  min-width: 0;
  border: 1px solid #cddbea;
  border-top: 3px solid var(--sw-chart-accent);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 3px 10px rgb(12 36 68 / 3%);
}

#homeView .home-performance-card > header {
  grid-template-columns: minmax(0, 1fr) minmax(180px, auto) minmax(260px, auto);
  gap: 18px;
  align-items: center;
  padding: 18px 20px;
  background: #fff;
}

#homeView .home-performance-card-title > span { color: var(--sw-chart-deep); font-size: 12px; font-weight: 700; letter-spacing: .06em; }
#homeView .home-performance-card-title h4 { margin: 5px 0; color: #10223c; font-size: 21px; line-height: 1.25; }
#homeView .home-performance-card-title p { max-width: 430px; color: #596579; font-size: 12px; line-height: 1.45; }
#homeView .home-performance-total { gap: 5px; }
#homeView .home-performance-total span { color: #596579; font-size: 12px; }
#homeView .home-performance-total strong { margin: 0; color: var(--sw-chart-accent); font-size: 34px; font-weight: 700; line-height: 1.1; letter-spacing: -.025em; font-variant-numeric: tabular-nums; }
#homeView .home-performance-chart-meta { gap: 20px; }
#homeView .home-performance-chart-meta > div { min-width: 110px; gap: 5px; }
#homeView .home-performance-chart-meta strong { margin: 0; font-size: 18px; }
#homeView .home-performance-chart-meta span { color: #596579; font-size: 12px; line-height: 1.45; }

#homeView .home-performance-chart-wrap { border-top: 1px solid #e1e8f0; background: #fff; }
#homeView .home-performance-chart { min-width: 900px; padding: 4px 12px 0; }
#homeView .home-performance-chart-grid { stroke: #e1e7ef; stroke-width: 1; }
#homeView .home-performance-chart-axis { fill: #566579; font-size: clamp(12px, calc(28px - 1vw), 16px); font-weight: 400; }

/* The inline series colours are replaced on paint properties, never on paths. */
#homeView .home-performance-chart stop { stop-color: var(--sw-chart-accent); }
#homeView .home-performance-chart-current {
  stroke: var(--sw-chart-accent);
  stroke-width: 3.2;
  stroke-dasharray: none;
  vector-effect: non-scaling-stroke;
}
#homeView .home-performance-chart-current-point { fill: #fff; stroke: var(--sw-chart-accent); stroke-width: 2.8; vector-effect: non-scaling-stroke; }
#homeView .home-performance-chart-cut-point { fill: var(--sw-chart-accent); stroke: #fff; }
#homeView .home-performance-chart-previous {
  stroke: var(--sw-chart-previous);
  stroke-width: 2.2;
  stroke-dasharray: 9 7;
  vector-effect: non-scaling-stroke;
}
#homeView .home-performance-chart-previous-point { fill: #fff; stroke: var(--sw-chart-previous); stroke-width: 2; vector-effect: non-scaling-stroke; }
#homeView .home-performance-chart-trend {
  stroke: var(--sw-chart-trend);
  stroke-width: 1.7;
  stroke-dasharray: 2 7;
  vector-effect: non-scaling-stroke;
}
#homeView .home-performance-chart-projection {
  stroke: var(--sw-chart-projection);
  stroke-width: 2.6;
  stroke-dasharray: 4 5;
  vector-effect: non-scaling-stroke;
}
#homeView .home-performance-chart-projection-point { fill: #fff; stroke: var(--sw-chart-projection); stroke-width: 2.8; vector-effect: non-scaling-stroke; }

#homeView .home-performance-card > footer {
  grid-template-columns: minmax(0, 1fr) minmax(290px, auto);
  align-items: center;
  gap: 20px;
  padding: 16px 20px;
  background: #fbfcfe;
  border-top: 1px solid #e1e8f0;
}
#homeView .home-performance-legend { gap: 10px 18px; color: #4d5d72; font-size: 12px; line-height: 1.5; }
#homeView .home-performance-legend i { width: 25px; height: 3px; border-radius: 0; background: var(--sw-chart-accent); }
#homeView .home-performance-legend .is-previous i { height: 2px; background: repeating-linear-gradient(90deg, var(--sw-chart-previous) 0 9px, transparent 9px 16px); }
#homeView .home-performance-legend .is-trend i { height: 2px; background: repeating-linear-gradient(90deg, var(--sw-chart-trend) 0 2px, transparent 2px 9px); }
#homeView .home-performance-legend .is-projection i { height: 3px; background: repeating-linear-gradient(90deg, var(--sw-chart-projection) 0 4px, transparent 4px 9px); }
#homeView .home-performance-projection { gap: 4px 10px; padding-left: 18px; border-left: 1px solid #d8e2ed; }
#homeView .home-performance-projection > span,
#homeView .home-performance-projection > small { color: #596579; font-size: 12px; line-height: 1.5; }
#homeView .home-performance-projection > strong { color: var(--sw-chart-projection); font-size: 21px; line-height: 1.2; }
#homeView .home-performance-projection > em { color: #4f3b85; background: #f0eafa; border-radius: 6px; font-size: 12px; }
#homeView .home-performance-projection.is-unavailable > strong,
#homeView .home-performance-projection.is-closed > strong { color: #46556a; }
#homeView .home-performance-tooltip { padding: 13px 16px; border: 1px solid #526885; border-radius: 10px; background: #10223c; box-shadow: 0 8px 24px rgb(16 34 60 / 18%); font-size: 12px; line-height: 1.5; }
#homeView .home-performance-tooltip strong { font-size: 13px; }
#homeView .home-performance-updating { position: static; justify-self: start; padding: 7px 10px; color: var(--sw-chart-deep); background: var(--sw-chart-soft); border-color: #c6d8ea; border-radius: 7px; box-shadow: none; font-size: 12px; }

@media (min-width: 1800px) {
  #homeView .home-performance-card-list { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
  #homeView .home-performance-card { display: flex; flex-direction: column; }
  #homeView .home-performance-card > header { grid-template-columns: minmax(0, 1fr) auto; gap: 14px; padding: 20px; }
  #homeView .home-performance-card-title p { max-width: 300px; min-height: 36px; }
  #homeView .home-performance-total strong { font-size: 32px; }
  #homeView .home-performance-chart-meta { grid-column: 1 / -1; justify-content: flex-start; gap: 28px; padding-top: 12px; border-top: 1px solid #e5ebf2; }
  #homeView .home-performance-chart-meta > div { justify-items: start; }
  #homeView .home-performance-chart { min-width: 0; padding: 8px 8px 0; }
  #homeView .home-performance-chart-axis { font-size: 20px; }
  #homeView .home-performance-card > footer { grid-template-columns: 1fr; margin-top: auto; gap: 14px; }
  #homeView .home-performance-projection { justify-content: start; padding: 13px 0 0; border-top: 1px solid #d8e2ed; border-left: 0; text-align: left; }
  #homeView .home-performance-projection > em { justify-self: start; }
}

@media (min-width: 2200px) {
  #homeView .home-performance-chart-axis { font-size: 18px; }
}

@media (max-width: 1280px) {
  #homeView .home-performance-card > header { grid-template-columns: minmax(0, 1fr) auto; }
  #homeView .home-performance-chart-meta { grid-column: 1 / -1; justify-content: flex-start; gap: 24px; }
  #homeView .home-performance-chart-meta > div { justify-items: start; }
  #homeView .home-performance-card > footer { grid-template-columns: 1fr; }
  #homeView .home-performance-projection { justify-content: start; padding: 13px 0 0; border-top: 1px solid #d8e2ed; border-left: 0; text-align: left; }
  #homeView .home-performance-projection > em { justify-self: start; }
}

@media (max-width: 900px) {
  #homeView .home-chart-touch-hint { display: flex; align-items: center; gap: 9px; margin: 0 0 14px; color: #4b5a70; font-size: 12px; line-height: 1.5; }
  #homeView .home-performance-group-heading { align-items: flex-start; flex-direction: column; gap: 14px; }
  #homeView .home-performance-toolbar { align-items: flex-start; flex-direction: column; }
  #homeView .home-performance-freshness { max-width: none; }
}

@media (max-width: 600px) {
  #homeView .home-performance-group { gap: 14px; padding: 14px; }
  #homeView .home-performance-group-heading { margin: -14px -14px 0; padding: 20px 18px; }
  #homeView .home-performance-group-heading h3 { font-size: 24px; }
  #homeView .home-performance-group-heading > a { max-width: 100%; white-space: normal; }
  #homeView .home-performance-toolbar { padding: 14px; }
  #homeView .home-performance-controls { width: 100%; }
  #homeView .home-performance-segmented { flex-wrap: wrap; }
  #homeView .home-performance-segmented button { flex: 1 1 auto; }
  #homeView .home-performance-card > header { grid-template-columns: 1fr; gap: 16px; padding: 18px; }
  #homeView .home-performance-card-title h4 { font-size: 21px; }
  #homeView .home-performance-total { justify-items: start; }
  #homeView .home-performance-total strong { font-size: 32px; }
  #homeView .home-performance-chart-meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  #homeView .home-performance-chart-meta > div { min-width: 0; }
  #homeView .home-performance-chart { min-width: 820px; }
  #homeView .home-performance-chart-axis { font-size: 17px; }
  #homeView .home-performance-card > footer { padding: 16px 18px; }
  #homeView .home-performance-legend { gap: 9px 14px; }
}

@media (max-width: 760px) {
  #homeView .home-performance-select select { font-size: 16px; }
}
