.m3-kpi{border-radius:var(--m3-shape-large);background:var(--m3-sys-surface-container-low);border:1px solid var(--m3-sys-outline-variant);color:var(--m3-sys-on-surface);flex-direction:column;gap:8px;min-width:0;padding:14px;display:flex}.m3-kpi--hero{background:var(--m3-sys-primary-container);color:var(--m3-sys-on-primary-container);border-color:#0000}.m3-kpi--flat{background:var(--m3-sys-surface-container-low);box-shadow:var(--m3-elevation-1)}.m3-kpi__label{font-size:var(--m3-label-small-size);letter-spacing:.4px;color:var(--m3-sys-on-surface-variant);font-weight:600}.m3-kpi--hero .m3-kpi__label{color:inherit;opacity:.8}.m3-kpi__value{letter-spacing:-.3px;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:20px;font-weight:700;line-height:26px;overflow:hidden}.m3-kpi__value--lg{font-size:26px;line-height:32px}.m3-kpi__deltas{flex-wrap:wrap;gap:6px;display:flex}.m3-kpi__spark{width:100%;height:30px;color:var(--m3-sys-primary);margin-top:2px;overflow:visible}.m3-kpi--hero .m3-kpi__spark{color:currentColor;opacity:.9}.m3-kpi__note{font-size:var(--m3-label-small-size);color:var(--m3-sys-on-surface-variant);line-height:14px}.m3-kpi--hero .m3-kpi__note{color:inherit;opacity:.75}.m3-kpi-mini{border-radius:var(--m3-shape-medium);background:var(--m3-sys-surface-container-low);border:1px solid var(--m3-sys-outline-variant);flex-direction:column;gap:2px;padding:10px 14px;display:flex}.m3-kpi-mini__value{font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.m3-kpi-mini__label{font-size:var(--m3-label-small-size);color:var(--m3-sys-on-surface-variant)}.m3-table{border-collapse:collapse;width:100%;font-size:var(--m3-body-medium-size)}.m3-table thead th{text-align:left;font-size:var(--m3-label-small-size);letter-spacing:.6px;text-transform:uppercase;color:var(--m3-sys-on-surface-variant);border-bottom:1px solid var(--m3-sys-outline-variant);white-space:nowrap;padding:0 8px 10px;font-weight:700}.m3-table tbody td{height:var(--m3-h-table-row);border-bottom:1px solid color-mix(in srgb, var(--m3-sys-outline-variant) 50%, transparent);padding:0 8px}.m3-table tbody tr:last-child td{border-bottom:0}.m3-table tbody tr{transition:var(--m3-transition-state)}.m3-table tbody tr:hover{background:color-mix(in srgb, var(--m3-sys-on-surface) 8%, transparent)}.m3-table tbody tr.is-selected{background:var(--m3-sys-secondary-container);color:var(--m3-sys-on-secondary-container)}.m3-table .is-numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.m3-table .is-muted{color:var(--m3-sys-on-surface-variant)}.m3-table tfoot td,.m3-table tr.m3-table__total td{border-top:1px solid var(--m3-sys-outline-variant);border-bottom:0;font-weight:700}.m3-table-scroll{margin:0 -18px;padding:0 18px;overflow-x:auto}.m3-row{border-radius:var(--m3-shape-medium);font-size:var(--m3-body-medium-size);transition:var(--m3-transition-state);align-items:center;gap:0 10px;padding:10px 8px;display:grid}.m3-row--head{border-bottom:1px solid var(--m3-sys-outline-variant);font-size:var(--m3-label-small-size);letter-spacing:.6px;text-transform:uppercase;color:var(--m3-sys-on-surface-variant);border-radius:0;padding-bottom:10px;font-weight:700}.m3-row--clickable{cursor:pointer}.m3-row--clickable:hover{background:color-mix(in srgb, var(--m3-sys-on-surface) 8%, transparent)}.m3-row.is-selected{background:var(--m3-sys-secondary-container);color:var(--m3-sys-on-secondary-container)}.m3-row__label{align-items:center;gap:10px;min-width:0;font-weight:500;display:flex}.m3-row__num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.m3-row__num--strong{font-weight:600}.m3-row__num--muted{color:var(--m3-sys-on-surface-variant)}.m3-selectbar{border-radius:var(--m3-shape-medium);background:var(--m3-sys-secondary-container);height:44px;color:var(--m3-sys-on-secondary-container);font-size:var(--m3-label-large-size);align-items:center;gap:12px;margin-bottom:8px;padding:0 12px;font-weight:600;display:flex}.m3-chart{gap:16px;display:flex}.m3-chart__axis-y{width:32px;font-size:var(--m3-label-small-size);color:var(--m3-sys-on-surface-variant);flex-direction:column;flex:none;justify-content:space-between;align-items:flex-end;font-weight:600;display:flex}.m3-chart__plot{flex:1;min-width:0;position:relative}.m3-chart__grid{pointer-events:none;flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.m3-chart__gridline{background:var(--m3-sys-outline-variant);height:1px}.m3-chart__bars{align-items:flex-end;gap:24px;display:flex;position:relative}.m3-chart__bar{min-width:0;transition:opacity var(--m3-dur-short-3) var(--m3-ease-standard);border-radius:10px 10px 0 0;flex-direction:column-reverse;flex:1;display:flex;overflow:hidden}.m3-chart__bar:hover{opacity:.85}.m3-chart__seg{transition:height var(--m3-dur-long-1) var(--m3-ease-emphasized)}.m3-chart__axis-x{gap:24px;padding-top:12px;display:flex}.m3-chart__tick{text-align:center;font-size:var(--m3-body-small-size);color:var(--m3-sys-on-surface-variant);flex:1;font-weight:500}.m3-legend{flex-wrap:wrap;justify-content:center;gap:8px;padding-top:20px;display:flex}.m3-legend__item{height:var(--m3-h-chip);border:1px solid var(--m3-sys-outline-variant);border-radius:var(--m3-shape-small);font-size:var(--m3-body-small-size);cursor:pointer;transition:var(--m3-transition-state);align-items:center;gap:8px;padding:0 14px;font-weight:500;display:flex}.m3-legend__item:hover{background:color-mix(in srgb, var(--m3-sys-on-surface) 8%, transparent)}.m3-legend__item.is-off{opacity:.45}.m3-empty{text-align:center;border-radius:var(--m3-shape-large);background:var(--m3-sys-surface-container-low);color:var(--m3-sys-on-surface-variant);flex-direction:column;align-items:center;gap:10px;padding:48px 24px;display:flex}.m3-empty__title{font-size:var(--m3-title-small-size);color:var(--m3-sys-on-surface);font-weight:600}.m3-empty__text{font-size:var(--m3-body-small-size);max-width:42ch}.m3-skeleton{border-radius:var(--m3-shape-small);background:linear-gradient(90deg, var(--m3-sys-surface-container) 25%, var(--m3-sys-surface-container-high) 37%, var(--m3-sys-surface-container) 63%);background-size:400% 100%;animation:1.4s infinite m3-shimmer}@keyframes m3-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.m3-route-overlay{z-index:90;background:color-mix(in srgb, var(--m3-sys-surface) 72%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:m3-fade-in var(--m3-dur-short-4) var(--m3-ease-standard);place-items:center;gap:16px;display:grid;position:fixed;inset:0}.m3-footnote{max-width:82ch;font-size:var(--m3-body-small-size);color:var(--m3-sys-on-surface-variant);text-wrap:pretty;margin:24px 0 0;line-height:18px}
*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--m3-sys-surface);color:var(--m3-sys-on-surface);font-family:var(--m3-font-body);font-size:var(--m3-body-medium-size);line-height:var(--m3-body-medium-line);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}h1,h2,h3,h4,h5,h6,p,figure{margin:0}a{color:var(--m3-sys-primary);text-decoration:none}a:hover{color:var(--m3-sys-on-primary-container);text-decoration:underline}a:focus-visible{outline:3px solid color-mix(in srgb, var(--m3-sys-primary) 60%, transparent);outline-offset:2px;border-radius:2px}button{font:inherit;color:inherit}img,svg{max-width:100%;display:block}table{border-collapse:collapse}[hidden]{display:none!important}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--m3-sys-outline-variant);border-radius:var(--m3-shape-full);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background-color:var(--m3-sys-outline);background-clip:content-box}::selection{background:var(--m3-sys-primary-container);color:var(--m3-sys-on-primary-container)}html:not([data-theme]) body{visibility:hidden}.m3-flex{align-items:center;gap:var(--m3-space-2);display:flex}.m3-flex-col{gap:var(--m3-space-2);flex-direction:column;display:flex}.m3-spacer{flex:1}.m3-wrap{flex-wrap:wrap}.m3-truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.m3-muted{color:var(--m3-sys-on-surface-variant)}.m3-sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
