.toys-sales-geo {
  --tsg-surface:#fff;--tsg-panel:#f5f8fa;--tsg-text:#172630;--tsg-muted:#516472;
  --tsg-stroke:#dae4eb;--tsg-accent:#63cdfd;--tsg-outline:#18749e;--tsg-empty:#e3e9ee;
  --tsg-label:#132f42;--tsg-halo:#fff;--tsg-border-map:#fff;
  --tsg-1:#d5edfa;--tsg-2:#a9def7;--tsg-3:#79cbf4;--tsg-4:#3dabe2;--tsg-5:#1486bc;
  box-sizing:border-box;width:calc(100% - 28px);max-width:1440px;margin:16px auto 22px;padding:clamp(16px,3vw,34px);
  border:1px solid var(--tsg-stroke);border-radius:20px;background:var(--tsg-surface);color:var(--tsg-text);
}
html[data-toys-theme="dark"] .toys-sales-geo,html[data-site-theme="dark"] .toys-sales-geo {
  --tsg-surface:#171b20;--tsg-panel:#20262d;--tsg-text:#eef4f8;--tsg-muted:#b2c0cc;--tsg-stroke:#35404a;
  --tsg-outline:#80d5ff;--tsg-empty:#303b45;--tsg-label:#f4f9ff;--tsg-halo:#15232d;--tsg-border-map:#171b20;
  --tsg-1:#234257;--tsg-2:#285875;--tsg-3:#2e759c;--tsg-4:#308ebf;--tsg-5:#40ade0;
}
.toys-sales-geo [hidden]{display:none!important}
.toys-sales-geo .tsg-header h2{margin:4px 0 7px;color:var(--tsg-text);font-size:clamp(20px,3vw,32px);font-weight:750;line-height:1.18}
.toys-sales-geo p{margin:0;color:var(--tsg-muted);line-height:1.5}
.tsg-kicker{font-size:12px;font-weight:700;letter-spacing:.025em}
.tsg-map{margin:18px 0 14px;padding:clamp(10px,2.2vw,20px);border:1px solid var(--tsg-stroke);border-radius:16px;background:var(--tsg-panel)}
.tsg-map-head,.tsg-map-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.tsg-selection{display:flex;align-items:center;gap:6px 12px;flex-wrap:wrap;border:1px solid var(--tsg-stroke);border-radius:10px;padding:7px 11px;background:var(--tsg-surface)}
.tsg-selection strong{white-space:nowrap;font-variant-numeric:tabular-nums}
.tsg-geometry{display:block;width:100%;height:auto;max-width:900px;margin:0 auto}
.tsg-shape{cursor:pointer;outline:none}
.tsg-shape path{fill:var(--tsg-empty);stroke:var(--tsg-border-map);stroke-width:1.4}
.tsg-level-1 path{fill:var(--tsg-1)}.tsg-level-2 path{fill:var(--tsg-2)}.tsg-level-3 path{fill:var(--tsg-3)}
.tsg-level-4 path{fill:var(--tsg-4)}.tsg-level-5 path{fill:var(--tsg-5)}
.tsg-shape:hover path,.tsg-shape:focus-visible path,.tsg-shape[aria-pressed="true"] path{stroke:var(--tsg-outline);stroke-width:2.6}
.tsg-map-labels{pointer-events:none;text-anchor:middle;font-size:12px;font-weight:750;fill:var(--tsg-label);stroke:var(--tsg-halo);stroke-width:3px;paint-order:stroke fill;stroke-linejoin:round}
.tsg-map-footer{justify-content:flex-start;color:var(--tsg-muted);font-size:11px}
.tsg-credit{margin-left:auto}
.tsg-scale{width:70px;height:7px;border-radius:12px;background:linear-gradient(90deg,var(--tsg-1),var(--tsg-5))}
.tsg-switch{display:inline-flex;padding:4px;gap:4px;border:1px solid var(--tsg-stroke);border-radius:12px;background:var(--tsg-panel);margin:0 0 8px}
.toys-sales-geo .tsg-switch button{border:0;background:transparent;color:var(--tsg-text);padding:8px 16px;border-radius:8px;font-weight:650;cursor:pointer}
.toys-sales-geo .tsg-switch button[aria-pressed="true"]{background:var(--tsg-accent);color:#112631}
.tsg-list{list-style:none;margin:0;padding:0}
.tsg-list li{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 4px;border-bottom:1px solid var(--tsg-stroke)}
.tsg-list li>span:nth-child(2){overflow-wrap:anywhere}
.tsg-rank{color:var(--tsg-muted);font-variant-numeric:tabular-nums}
.tsg-list strong{white-space:nowrap;font-variant-numeric:tabular-nums}
.tsg-more{display:block;margin-top:10px}
.tsg-more summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:7px;margin:0 0 8px;padding:8px 12px;border:1px solid var(--tsg-stroke);border-radius:10px;background:var(--tsg-panel);color:var(--tsg-text);font-weight:650}
.tsg-more summary::-webkit-details-marker{display:none}
.tsg-more svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tsg-more[open] svg{transform:rotate(180deg)}
.tsg-more:not([open]) .tsg-hide,.tsg-more[open] .tsg-show{display:none}
.toys-sales-geo .tsg-note{margin-top:12px}
@media(max-width:650px){
  .toys-sales-geo{width:calc(100% - 12px);padding:14px;margin-block:12px 16px;border-radius:16px}
  .tsg-map-labels{display:none}.tsg-credit{margin-left:0}
  .tsg-list li{grid-template-columns:32px minmax(0,1fr) auto}
}
