.kskl{
  --kskl-red:var(--ksq-red,#E30512);
  --kskl-ink:var(--ksq-ink,#292929);
  --kskl-muted:var(--ksq-muted,#67645f);
  --kskl-warm:var(--ksq-warm,#F7F5F1);
  --kskl-line:var(--ksq-line,#DEDAD3);
  --kskl-compare:#5b6470;
  margin:clamp(32px,5vw,56px) 0;
  padding:clamp(24px,4vw,38px);
  border:1px solid var(--kskl-line);
  border-radius:22px;
  background:#fbf8f5;
  color:var(--kskl-ink);
  box-sizing:border-box;
  overflow:hidden;
}
.kskl *{box-sizing:border-box}
.kskl__intro{max-width:820px}
.kskl__kicker{
  margin:0 0 .45rem!important;
  color:var(--kskl-red);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.kskl__title{margin:0 0 .75rem!important;font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.08}
.kskl__lead{margin:0!important;max-width:760px;color:var(--kskl-muted);font-size:clamp(.96rem,1.5vw,1.05rem)}
.kskl__lead--secondary{margin-top:.7rem!important}
.kskl__toolbar{
  display:grid;
  grid-template-columns:minmax(220px,.7fr) minmax(360px,1.3fr);
  gap:18px 26px;
  margin-top:28px;
  padding-top:24px;
  border-top:1px solid var(--kskl-line);
}
.kskl__control-group{min-width:0}
.kskl__control-label{display:block;margin:0 0 8px;font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--kskl-muted)}
.kskl__segmented,.kskl__cities{display:flex;flex-wrap:wrap;gap:8px}
.kskl button{
  appearance:none;
  min-height:42px;
  border:1px solid var(--kskl-line);
  border-radius:999px;
  padding:.62rem .95rem;
  background:#fff;
  color:var(--kskl-ink);
  font:inherit;
  font-size:.9rem;
  font-weight:700;
  line-height:1;
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
.kskl button:hover{border-color:#bbb5ad}
.kskl button:focus-visible{outline:3px solid rgba(227,5,18,.23);outline-offset:2px}
.kskl button.is-active{background:var(--kskl-red);border-color:var(--kskl-red);color:#fff}
.kskl__legend{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;margin:26px 0 8px;font-size:.88rem;font-weight:700}
.kskl__legend span{display:inline-flex;align-items:center;gap:8px}
.kskl__legend small{font-weight:500;color:var(--kskl-muted)}
.kskl__legend-line{width:28px;height:0;border-top:3px solid;display:inline-block;border-radius:10px}
.kskl__legend-line--reference{border-color:var(--kskl-red)}
.kskl__legend-line--compare{border-color:var(--kskl-compare);border-top-style:dashed}
.kskl__chart-wrap{width:100%;overflow:hidden}
.kskl__chart{display:block;width:100%;height:auto;min-height:250px;font-family:Arial,"Helvetica Neue",sans-serif;touch-action:manipulation}
.kskl__grid{stroke:#d9d5cf;stroke-width:1}
.kskl__axis-label{fill:#77716a;font-size:12px}
.kskl__month-label{fill:#5f5a54;font-size:12px;font-weight:700}
.kskl__unit-label{fill:#77716a;font-size:12px;font-weight:700}
.kskl__line-reference{fill:none;stroke:var(--kskl-red);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.kskl__line-compare{fill:none;stroke:var(--kskl-compare);stroke-width:3.2;stroke-dasharray:8 7;stroke-linecap:round;stroke-linejoin:round}
.kskl__point-reference{fill:#fff;stroke:var(--kskl-red);stroke-width:3}
.kskl__point-compare{fill:#fff;stroke:var(--kskl-compare);stroke-width:2.5}
.kskl__selected-band{fill:rgba(227,5,18,.045)}
.kskl__selected-line{stroke:rgba(227,5,18,.28);stroke-width:1.5;stroke-dasharray:4 5}
.kskl__month-hit{fill:transparent;cursor:pointer}
.kskl__month-hit:focus{outline:none}
.kskl__month-focus{fill:none;stroke:transparent;stroke-width:2}
.kskl__month-hit:focus + .kskl__month-focus{stroke:var(--kskl-red)}
.kskl__selection{
  margin-top:12px;
  padding:18px 20px;
  border:1px solid var(--kskl-line);
  border-radius:16px;
  background:#fff;
}
.kskl__month{font-size:.77rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--kskl-red);margin-bottom:10px}
.kskl__values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kskl__values>div{padding:12px 14px;border-radius:12px;background:var(--kskl-warm)}
.kskl__values span{display:block;color:var(--kskl-muted);font-size:.8rem;margin-bottom:3px}
.kskl__values strong{display:block;font-size:clamp(1.2rem,2.4vw,1.55rem);line-height:1.1}
.kskl__insight{margin:13px 0 0!important;color:var(--kskl-ink);font-size:.92rem}
.kskl__table-details{margin-top:18px;border-top:1px solid var(--kskl-line);padding-top:16px}
.kskl__table-details summary{cursor:pointer;font-weight:700;font-size:.9rem;color:var(--kskl-ink)}
.kskl__table-details summary:focus-visible{outline:2px solid var(--kskl-red);outline-offset:3px}
.kskl__table-scroll{overflow-x:auto;margin-top:12px}
.kskl__table{width:100%;border-collapse:collapse;font-size:.86rem;background:#fff;border-radius:12px;overflow:hidden}
.kskl__table th,.kskl__table td{padding:9px 12px;text-align:right;border-bottom:1px solid #ece8e3;white-space:nowrap}
.kskl__table th:first-child,.kskl__table td:first-child{text-align:left}
.kskl__table thead th{background:var(--kskl-warm);font-size:.78rem;color:var(--kskl-muted)}
.kskl__table tbody tr:last-child td{border-bottom:0}
.kskl__source{margin:18px 0 0!important;padding-top:16px;border-top:1px solid var(--kskl-line);color:var(--kskl-muted);font-size:.74rem;line-height:1.5}
.kskl__noscript,.kskl-error{padding:12px 14px;border-radius:10px;background:#fff;border:1px solid var(--kskl-line);font-size:.9rem}
@media (max-width:760px){
  .kskl{padding:22px 18px;border-radius:18px}
  .kskl__toolbar{grid-template-columns:1fr;gap:18px}
  .kskl__control-group--cities{min-width:0}
  .kskl__cities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .kskl__cities button{width:100%;padding-left:.7rem;padding-right:.7rem}
  .kskl__chart{min-height:225px}
}
@media (max-width:430px){
  .kskl__segmented{display:grid;grid-template-columns:1fr 1fr}
  .kskl__segmented button{width:100%}
  .kskl__values{grid-template-columns:1fr 1fr;gap:8px}
  .kskl__values>div{padding:10px}
  .kskl__legend{gap:9px 16px}
  .kskl__legend span{font-size:.82rem}
  .kskl__legend small{display:none}
}
@media (prefers-reduced-motion:reduce){.kskl button{transition:none}}
