.hcl-revenue-history { min-width:0; padding:20px; border:1px solid var(--border); border-radius:14px; background:linear-gradient(125deg,color-mix(in srgb,var(--accent) 5%,var(--bg-soft)),var(--bg-soft) 65%); color:var(--text); }
.hcl-revenue-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; margin-bottom:18px; }
.hcl-revenue-heading h3 { margin:5px 0 7px; color:var(--text); font:750 22px/1.2 'Sora',sans-serif; }
.hcl-revenue-eyebrow { margin:0; color:var(--accent); font:750 9px/1.4 'Sora',sans-serif; text-transform:uppercase; letter-spacing:.11em; }
.hcl-revenue-subtitle { margin:0; color:var(--text2); font:500 11px/1.6 'Sora',sans-serif; }
.hcl-revenue-cutoff { padding:7px 10px; border:1px solid var(--border); border-radius:999px; color:var(--text2); background:var(--bg); font:650 9px/1.4 'Sora',sans-serif; white-space:nowrap; }
.hcl-revenue-kpis { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:20px; }
.hcl-revenue-kpi { display:flex; flex-direction:column; align-items:flex-start; min-width:0; gap:10px; padding:15px; border:1px solid var(--border); border-radius:11px; background:var(--bg); }
.hcl-revenue-kpi p { margin:0; color:var(--text2); font:700 9px/1.5 'Sora',sans-serif; text-transform:uppercase; letter-spacing:.04em; }
.hcl-revenue-kpi strong { color:var(--text); font:750 clamp(16px,1.6vw,25px)/1.4 'JetBrains Mono',monospace; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.hcl-revenue-kpi > span { margin-top:auto; color:var(--text2); font:500 10px/1.5 'Sora',sans-serif; }
.hcl-revenue-history .is-positive { color:var(--green,#4ade80); }
.hcl-revenue-history .is-negative { color:var(--red,#f87171); }
.hcl-revenue-chart { min-width:0; margin:0; padding:16px; border:1px solid var(--border); border-radius:11px; background:var(--bg); }
.hcl-revenue-chart figcaption { display:flex; justify-content:space-between; align-items:baseline; flex-wrap:wrap; gap:8px; margin-bottom:20px; color:var(--text); font:700 11px/1.5 'Sora',sans-serif; }
.hcl-revenue-chart figcaption > span + span { color:var(--text2); font-size:9px; font-weight:500; }
.hcl-revenue-months { display:grid; grid-template-columns:repeat(var(--hcl-month-count,4),minmax(0,1fr)); gap:14px; margin:0; padding:0; list-style:none; }
.hcl-revenue-month { display:grid; grid-template-rows:auto 180px auto auto; align-items:end; min-width:0; gap:9px; text-align:center; }
.hcl-revenue-month-value { min-width:0; color:var(--text); font:700 clamp(10px,1.1vw,14px)/1.4 'JetBrains Mono',monospace; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.hcl-revenue-bar-track { display:flex; justify-content:center; align-items:flex-end; height:180px; border-bottom:1px solid var(--border); background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),var(--border) calc(25% - 1px),var(--border) 25%); }
.hcl-revenue-bar { flex:0 1 68%; max-width:110px; border:1px solid color-mix(in srgb,var(--accent) 70%,transparent); border-bottom:0; border-radius:8px 8px 0 0; background:linear-gradient(to top,color-mix(in srgb,var(--accent) 26%,var(--bg)),color-mix(in srgb,var(--accent) 65%,var(--bg))); }
.hcl-revenue-month.is-latest .hcl-revenue-bar { background:linear-gradient(to top,color-mix(in srgb,var(--accent) 55%,var(--bg)),var(--accent)); border-color:var(--accent); }
.hcl-revenue-month-label { color:var(--text); font:700 10px/1.5 'Sora',sans-serif; }
.hcl-revenue-change { min-height:28px; color:var(--text2); font:600 9px/1.5 'Sora',sans-serif; }
.hcl-revenue-countries { margin-top:12px; border:1px solid var(--border); border-radius:10px; background:var(--bg); }
.hcl-revenue-countries > summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 15px; color:var(--text2); font:650 10px/1.5 'Sora',sans-serif; cursor:pointer; list-style:none; }
.hcl-revenue-countries > summary::-webkit-details-marker { display:none; }
.hcl-revenue-countries > summary > span { font-size:16px; transition:transform .15s; }
.hcl-revenue-countries[open] > summary > span { transform:rotate(180deg); }
.hcl-revenue-countries > summary:focus-visible,.hcl-revenue-table-scroll:focus-visible { outline:2px solid var(--accent); outline-offset:2px; border-radius:9px; }
.hcl-revenue-table-scroll { min-width:0; max-width:100%; overflow:auto; padding:0 14px 12px; }
.hcl-revenue-table-scroll table { width:100%; min-width:620px; border-collapse:collapse; text-align:right; font-variant-numeric:tabular-nums; }
.hcl-revenue-table-scroll caption { padding:0 0 10px; color:var(--text2); text-align:left; font:500 9px/1.5 'Sora',sans-serif; }
.hcl-revenue-table-scroll th,.hcl-revenue-table-scroll td { padding:11px 9px; border-top:1px solid var(--border); }
.hcl-revenue-table-scroll thead th { color:var(--text2); font:650 9px/1.5 'Sora',sans-serif; white-space:nowrap; }
.hcl-revenue-table-scroll tbody th { color:var(--text); text-align:left; font:650 10px/1.5 'Sora',sans-serif; }
.hcl-revenue-table-scroll thead th:first-child { text-align:left; }
.hcl-revenue-table-scroll td { color:var(--text2); font:500 10px/1.5 'JetBrains Mono',monospace; white-space:nowrap; }
.hcl-revenue-table-scroll td.hcl-revenue-country-total { color:var(--text); font-weight:700; }
.hcl-revenue-source { margin:13px 0 0; color:var(--text2); font:500 9px/1.6 'Sora',sans-serif; overflow-wrap:anywhere; }
.hcl-revenue-state { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:12px; min-height:130px; color:var(--text2); font:500 11px/1.6 'Sora',sans-serif; }
.hcl-revenue-error { justify-content:space-between; min-height:60px; }
.hcl-revenue-loading { width:15px; height:15px; border:2px solid var(--border); border-top-color:var(--accent); border-radius:50%; animation:hcl-revenue-spin .8s linear infinite; }
@keyframes hcl-revenue-spin { to { transform:rotate(360deg); } }
@media (max-width:900px) {
  .hcl-revenue-kpi { padding:12px; }
  .hcl-revenue-kpi strong { font-size:17px; }
  .hcl-revenue-months { gap:9px; }
}
@media (max-width:640px) {
  .hcl-revenue-history { padding:14px; }
  .hcl-revenue-kpis { grid-template-columns:minmax(0,1fr); gap:9px; }
  .hcl-revenue-kpi { gap:7px; }
  .hcl-revenue-kpi strong { font-size:19px; }
  .hcl-revenue-kpi > span { font-size:9px; }
  .hcl-revenue-chart { padding:12px 8px; }
  .hcl-revenue-months { gap:6px; }
  .hcl-revenue-month { grid-template-rows:32px 135px auto auto; gap:8px; }
  .hcl-revenue-month-value { align-self:center; font-size:8px; white-space:nowrap; }
  .hcl-revenue-bar-track { height:135px; }
  .hcl-revenue-bar { flex-basis:80%; border-radius:5px 5px 0 0; }
  .hcl-revenue-month-label { font-size:9px; }
  .hcl-revenue-change { font-size:8px; }
}
@media (prefers-reduced-motion:reduce) {
  .hcl-revenue-loading { animation:none; }
  .hcl-revenue-countries > summary > span { transition:none; }
}
