.donut.svelte-1w3qdrw{--donut-track: #e7e8ee;--donut-text: #1c1d22;--donut-muted: #6b6f76;--donut-tooltip-bg: #ffffff;--donut-tooltip-border: #e2e3e9;--donut-tooltip-shadow: rgba(20, 22, 30, .16);--donut-focus: #4f46e5;--donut-legend-hover: #f3f4f8;display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;color:var(--donut-text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.donut__chart-wrap.svelte-1w3qdrw{position:relative;width:var(--donut-size);height:var(--donut-size);flex:0 0 auto}.donut__svg.svelte-1w3qdrw{width:100%;height:100%;overflow:visible;display:block}.donut__track.svelte-1w3qdrw{stroke:var(--donut-track)}.donut__seg.svelte-1w3qdrw{cursor:pointer;transition:transform .18s ease,opacity .18s ease,filter .18s ease;transform-box:fill-box;transform-origin:center;outline:none}.donut__seg--active.svelte-1w3qdrw{transform:scale(1.06);filter:drop-shadow(0 1px 3px var(--donut-tooltip-shadow))}.donut__seg--dim.svelte-1w3qdrw{opacity:.4}.donut__seg.svelte-1w3qdrw:focus-visible{filter:drop-shadow(0 0 0 3px var(--donut-focus))}.donut__centre.svelte-1w3qdrw{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none;padding:18%}.donut__centre-value.svelte-1w3qdrw{font-size:clamp(1.1rem,5vw,1.6rem);font-weight:700;line-height:1.1}.donut__centre-sub.svelte-1w3qdrw{font-size:.72rem;color:var(--donut-muted);margin-top:.15rem}.donut__tooltip.svelte-1w3qdrw{position:absolute;top:-.5rem;left:50%;transform:translate(-50%,-100%);display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;background:var(--donut-tooltip-bg);border:1px solid var(--donut-tooltip-border);border-radius:.5rem;padding:.35rem .55rem;font-size:.78rem;box-shadow:0 6px 18px var(--donut-tooltip-shadow);z-index:2;pointer-events:none}.donut__tooltip-dot.svelte-1w3qdrw{width:.6rem;height:.6rem;border-radius:50%;flex:0 0 auto}.donut__tooltip-val.svelte-1w3qdrw{color:var(--donut-muted)}.donut__legend.svelte-1w3qdrw{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem;min-width:0}.donut__legend-item.svelte-1w3qdrw{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:.5rem;width:100%;background:none;border:1px solid transparent;border-radius:.5rem;padding:.3rem .5rem;font:inherit;color:inherit;cursor:pointer;text-align:left}.donut__legend-item.svelte-1w3qdrw:hover,.donut__legend-item--active.svelte-1w3qdrw{background:var(--donut-legend-hover)}.donut__legend-item.svelte-1w3qdrw:focus-visible{outline:2px solid var(--donut-focus);outline-offset:1px}.donut__swatch.svelte-1w3qdrw{width:.8rem;height:.8rem;border-radius:.2rem;flex:0 0 auto}.donut__legend-label.svelte-1w3qdrw{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.donut__legend-value.svelte-1w3qdrw{font-variant-numeric:tabular-nums;font-weight:600}.donut__legend-pct.svelte-1w3qdrw{font-variant-numeric:tabular-nums;color:var(--donut-muted);min-width:2.8rem;text-align:right}.donut__sr.svelte-1w3qdrw{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(prefers-color-scheme:dark){.donut.svelte-1w3qdrw{--donut-track: #2b2d36;--donut-text: #eceef4;--donut-muted: #9aa0ac;--donut-tooltip-bg: #1b1d24;--donut-tooltip-border: #343742;--donut-tooltip-shadow: rgba(0, 0, 0, .5);--donut-focus: #818cf8;--donut-legend-hover: #23262f}}@media(prefers-reduced-motion:reduce){.donut__seg.svelte-1w3qdrw{transition:none}}.dc-section.svelte-1nyt3v5{margin-bottom:2.5rem}.dc-section.svelte-1nyt3v5 h3:where(.svelte-1nyt3v5){margin:0 0 .25rem;font-size:1.05rem;font-weight:600}.dc-hint.svelte-1nyt3v5{margin:0 0 1rem;font-size:.85rem;opacity:.75;max-width:48ch}.dc-stage.svelte-1nyt3v5{display:flex;justify-content:center;padding:1.5rem;border:1px solid color-mix(in srgb,currentColor 12%,transparent);border-radius:.75rem;background:color-mix(in srgb,currentColor 3%,transparent)}.dc-controls.svelte-1nyt3v5{display:flex;flex-wrap:wrap;gap:1.25rem;margin-bottom:1rem}.dc-controls.svelte-1nyt3v5 label:where(.svelte-1nyt3v5){display:flex;flex-direction:column;gap:.35rem;font-size:.8rem}.dc-controls.svelte-1nyt3v5 input[type=range]:where(.svelte-1nyt3v5){width:12rem;max-width:100%;accent-color:#6366f1}@media(max-width:540px){.dc-stage.svelte-1nyt3v5{padding:1rem .5rem}}
