.analytics-shell{--analytics-ink:#f4f7fc;--analytics-ink-soft:#d5dce8;--analytics-muted:#aeb8ca;--analytics-accent:#a8c2ff;--analytics-accent-soft:#243352;--analytics-bg:#10161f;--analytics-bg-band:#1a222f;--analytics-line:#3a465a;--analytics-line-strong:#556378;--analytics-radius:10px;--analytics-container:68rem;--analytics-gutter:1.25rem;--analytics-topbar-height:4.2rem;min-height:100dvh;color:var(--analytics-ink);background:radial-gradient(1100px 520px at 8% -8%, #6e91d212, transparent 55%), radial-gradient(900px 480px at 92% 0%, #4664a00d, transparent 50%), radial-gradient(700px 420px at 50% 110%, #2846780a, transparent 55%), var(--analytics-bg);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro SC,system-ui,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:1rem;line-height:1.6;transition:color .28s,background-color .28s}html.light .analytics-shell{--analytics-ink:#131c28;--analytics-ink-soft:#3d4756;--analytics-muted:#68738a;--analytics-accent:#1d4fd7;--analytics-accent-soft:#eef3fd;--analytics-bg:#fff;--analytics-bg-band:#f5f7fa;--analytics-line:#e3e8ef;--analytics-line-strong:#cbd3dd;background:var(--analytics-bg)}.analytics-shell h1,.analytics-shell h2{text-wrap:balance;line-height:1.25}.analytics-shell :focus-visible{outline:2px solid var(--analytics-accent);outline-offset:2px;border-radius:2px}.analytics-top-bar{z-index:60;height:var(--analytics-topbar-height);pointer-events:none;justify-content:space-between;align-items:center;padding-inline:1rem;display:flex;position:fixed;inset:0 0 auto}.analytics-top-bar>*{pointer-events:auto}.analytics-top-bar-left,.analytics-top-bar-right{align-items:center;display:inline-flex}.analytics-theme-switch{width:2.7rem;height:2.7rem;color:var(--analytics-ink);cursor:pointer;box-shadow:none;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;line-height:1;transition:color .15s,transform .15s,opacity .15s;display:inline-flex}.analytics-theme-switch:hover{color:var(--analytics-ink-soft);transform:scale(1.06)}.analytics-theme-switch:active{transform:scale(.96)}.analytics-theme-switch svg{width:22px;height:22px;transition:transform .35s,opacity .2s}.analytics-theme-switch:hover svg{transform:rotate(24deg)}.analytics-page{min-height:100dvh;padding:calc(var(--analytics-topbar-height) + .5rem) 0 4rem}.analytics-container{box-sizing:border-box;width:min(100% - (var(--analytics-gutter) * 2), var(--analytics-container));overflow-wrap:break-word;gap:2.5rem;max-width:100%;margin-inline:auto;display:grid}.analytics-head h1{letter-spacing:-.02em;font-size:clamp(2rem,4vw,2.75rem);font-weight:700}.analytics-sub{max-width:40rem;color:var(--analytics-muted);margin-top:.55rem;font-size:.92rem}.analytics-home{color:var(--analytics-ink-soft);white-space:nowrap;padding:.35rem .2rem;font-size:.9rem;text-decoration:none}.analytics-home:hover{color:var(--analytics-ink)}.analytics-error{border-top:1px solid var(--analytics-line-strong);border-bottom:1px solid var(--analytics-line-strong);color:var(--analytics-ink-soft);margin:-1rem 0 0;padding:.65rem 0;font-size:.92rem}.analytics-error code{font-family:var(--font-mono);font-size:.86em}.analytics-metrics{border-top:2px solid var(--analytics-ink);border-bottom:1px solid var(--analytics-line);grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem 1.5rem;padding:.15rem 0 .35rem;display:grid}.analytics-metrics>div{gap:.35rem;min-width:0;display:grid}.analytics-metrics dt{color:var(--analytics-muted);font-size:.8rem}.analytics-metrics dd{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--analytics-ink);margin:0;font-size:clamp(1.35rem,2.4vw,1.75rem);font-weight:650;line-height:1.15}.analytics-section-head{border-bottom:2px solid var(--analytics-ink);flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin-bottom:1.15rem;padding-bottom:.7rem;display:flex}.analytics-section-head h2{letter-spacing:-.01em;font-size:1.6rem;font-weight:700}.analytics-section-head-meta{align-items:center;gap:.55rem;margin-left:auto;display:inline-flex}.analytics-aside{color:var(--analytics-muted);font-size:.8rem;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase}.analytics-note{color:var(--analytics-muted);font-size:.8rem;font-family:var(--font-mono);margin:0}.analytics-range{flex-wrap:wrap;align-items:flex-end;gap:.65rem 1rem;margin:-.35rem 0 1rem;display:flex}.analytics-range-field{color:var(--analytics-muted);gap:.25rem;font-size:.78rem;display:grid}.analytics-range-input{box-sizing:border-box;border:1px solid var(--analytics-line);border-radius:var(--analytics-radius);background:var(--analytics-bg-band);min-width:9.5rem;color:var(--analytics-ink);font:inherit;font-family:var(--font-mono);color-scheme:inherit;padding:.35rem .55rem;font-size:.84rem}html.light .analytics-range-input{background:var(--analytics-bg)}.analytics-range-input:hover{border-color:var(--analytics-line-strong)}.analytics-range-input:focus{border-color:var(--analytics-accent);box-shadow:0 0 0 3px var(--analytics-accent-soft);outline:none}.analytics-range-reset{border:1px solid var(--analytics-line);border-radius:var(--analytics-radius);color:var(--analytics-ink-soft);font:inherit;cursor:pointer;background:0 0;padding:.35rem .55rem;font-size:.82rem}.analytics-range-reset:hover{border-color:var(--analytics-line-strong);color:var(--analytics-ink)}.analytics-range-hint{color:var(--analytics-muted);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;align-self:center;margin-left:auto;font-size:.74rem}.analytics-legend{color:var(--analytics-muted);font-size:.78rem;font-family:var(--font-mono);gap:.9rem;margin:0;padding:0;list-style:none;display:flex}.analytics-legend li{align-items:center;gap:.35rem;display:inline-flex}.analytics-swatch{background:var(--analytics-accent);width:.55rem;height:.55rem;display:inline-block}.analytics-swatch--pv{opacity:.3}.analytics-chart{width:100%;height:auto;display:block}.analytics-chart-bar-pv{fill:var(--analytics-accent);opacity:.28}.analytics-chart-bar-uv{fill:var(--analytics-accent)}.analytics-chart-axis{stroke:var(--analytics-line-strong);stroke-width:1px}.analytics-chart-tick{fill:var(--analytics-muted);font-family:var(--font-mono);font-size:11px}.analytics-map-frame{border:1px solid var(--analytics-line);overflow:hidden}.analytics-map-svg{width:100%;height:auto;display:block}.analytics-map-ocean{fill:#16202e}.analytics-map-land path{fill:#2a3547}html.light .analytics-map-ocean{fill:#b7c9de}html.light .analytics-map-land path{fill:#dde7f1}#analytics-heat-gradient stop{stop-color:var(--analytics-accent)}.analytics-heat-blob{fill:url(#analytics-heat-gradient)}.analytics-heat-core{fill:var(--analytics-accent);opacity:.8}.analytics-cols{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:2.5rem 3rem;display:grid}.analytics-section--wide{grid-column:1/-1}.analytics-table-scroll{overflow-x:auto}.analytics-breakdown{display:grid}.analytics-table{border-collapse:collapse;width:100%;min-width:23rem;font-size:.92rem}.analytics-table th,.analytics-table td{text-align:left;border-bottom:1px solid var(--analytics-line);vertical-align:top;padding:.55rem .35rem}.analytics-table th{color:var(--analytics-muted);letter-spacing:.04em;font-size:.8rem;font-weight:600}.analytics-table td{color:var(--analytics-ink-soft)}.analytics-table tr:last-child td{border-bottom:0}.analytics-table .num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.analytics-table .mono{font-family:var(--font-mono);font-size:.84rem}.analytics-metric{white-space:nowrap}.analytics-metric-distribution{color:var(--analytics-muted);margin-left:.32rem;font-size:.72em;font-weight:500}.analytics-empty{color:var(--analytics-muted)}.analytics-table-toggle{color:var(--analytics-muted);font:inherit;cursor:pointer;background:0 0;border:0;justify-self:center;align-items:center;gap:.4rem;margin-top:.8rem;padding:.35rem .55rem;font-size:.8rem;transition:color .15s;display:inline-flex}.analytics-table-toggle:hover{color:var(--analytics-ink)}.analytics-table-toggle svg{width:1rem;height:1rem;transition:transform .2s}.analytics-table-toggle svg.is-expanded{transform:rotate(180deg)}@media (width<=52rem){.analytics-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-cols{grid-template-columns:1fr;gap:2.25rem}}@media (width<=28rem){.analytics-metrics{grid-template-columns:1fr 1fr;gap:.85rem 1rem}}@media (prefers-reduced-motion:reduce){.analytics-theme-switch:hover{transform:none}.analytics-table-toggle svg{transition:none}}
