:root{--ds-color-blue-900: #000000;--ds-color-blue-700: #1a1a1a;--ds-color-blue-600: #2e2e2e;--ds-color-blue-500: #3a3a3a;--ds-color-blue-300: #d4d4d4;--ds-color-orange-500: #3a3a3a;--ds-color-orange-300: #8a8a8a;--ds-color-green-500: #2f7d4a;--ds-color-red-500: #9b2c2c;--ds-color-white: #ffffff;--ds-color-neutral-50: #f7f7f7;--ds-color-neutral-100: #efefef;--ds-surface-page: var(--ds-color-white);--ds-surface-brand: var(--ds-color-blue-900);--ds-surface-muted: var(--ds-color-neutral-100);--ds-surface-subtle: var(--ds-color-neutral-50);--ds-text-primary: var(--ds-color-blue-900);--ds-text-on-brand: var(--ds-color-white);--ds-text-muted: rgba(0, 0, 0, .62);--ds-text-link: var(--ds-color-blue-500);--ds-border-default: rgba(0, 0, 0, .12);--ds-border-strong: rgba(0, 0, 0, .4);--ds-border-focus: var(--ds-color-blue-500);--ds-feedback-success: var(--ds-color-green-500);--ds-feedback-danger: var(--ds-color-red-500);--ds-feedback-warning: var(--ds-color-orange-500);--ds-feedback-info: var(--ds-color-blue-500);--ds-accent-highlight: var(--ds-color-blue-500);--ds-accent-spotlight: var(--ds-color-orange-500);--ds-chart-1: var(--ds-color-blue-500);--ds-chart-2: var(--ds-color-orange-500);--ds-chart-3: var(--ds-color-blue-600);--ds-chart-4: var(--ds-color-blue-300);--ds-chart-5: var(--ds-color-blue-700);--ds-chart-6: var(--ds-color-orange-300);--ds-font-family: Verdana, Geneva, sans-serif;--ds-font-weight-regular: 400;--ds-font-weight-semibold: 600;--ds-font-weight-bold: 700;--ds-font-size-display: 32px;--ds-font-size-h1: 24px;--ds-font-size-h2: 20px;--ds-font-size-h3: 16px;--ds-font-size-body: 14px;--ds-font-size-small: 12px;--ds-font-size-micro: 10px;--ds-line-height-tight: 1.2;--ds-line-height-snug: 1.3;--ds-line-height-default: 1.4;--ds-line-height-relaxed: 1.5;--ds-space-1: 4px;--ds-space-2: 8px;--ds-space-3: 12px;--ds-space-4: 16px;--ds-space-6: 24px;--ds-space-8: 32px;--ds-space-12: 48px;--ds-space-16: 64px;--ds-radius-button: 8px;--ds-radius-input: 8px;--ds-radius-card: 12px;--ds-radius-modal: 16px;--ds-radius-pill: 999px;--ds-radius-circle: 50%;--ds-radius-tooltip: 6px;--ds-radius-toast: 10px;--ds-shadow-0: none;--ds-shadow-1: 0 1px 4px rgba(0, 0, 0, .06);--ds-shadow-2: 0 4px 12px rgba(0, 0, 0, .08);--ds-shadow-3: 0 8px 24px rgba(0, 0, 0, .12);--ds-shadow-4: 0 16px 40px rgba(0, 0, 0, .16);--ds-duration-micro: .15s;--ds-duration-component: .2s;--ds-duration-overlay: .25s;--ds-duration-page: .3s;--ds-easing-in: cubic-bezier(.4, 0, 1, 1);--ds-easing-out: cubic-bezier(0, 0, .2, 1);--ds-easing-in-out: cubic-bezier(.4, 0, .2, 1);--ds-bp-tablet: 768px;--ds-bp-desktop: 1024px;--ds-bp-wide: 1440px;--ds-z-base: 0;--ds-z-dropdown: 100;--ds-z-sticky: 200;--ds-z-overlay: 300;--ds-z-modal: 400;--ds-z-popover: 500;--ds-z-tooltip: 600;--ds-z-toast: 700}body{font-family:var(--ds-font-family);font-size:var(--ds-font-size-body);line-height:var(--ds-line-height-relaxed);color:var(--ds-text-primary);background-color:var(--ds-surface-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.material-symbols-rounded{font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 24;font-size:20px;color:inherit;-webkit-user-select:none;user-select:none;line-height:1;display:inline-flex;align-items:center;flex-shrink:0}.material-symbols-rounded.is-filled{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}:root[data-theme=light]{--sg-page: #ffffff;--sg-surface: #ffffff;--sg-surface-2: #f7f7f7;--sg-surface-3: #efefef;--sg-ink: #000000;--sg-ink-2: rgba(0, 0, 0, .72);--sg-ink-3: rgba(0, 0, 0, .55);--sg-line: rgba(0, 0, 0, .12);--sg-line-2: rgba(0, 0, 0, .28);--sg-shadow-1: 0 1px 4px rgba(0, 0, 0, .06);--sg-shadow-2: 0 4px 12px rgba(0, 0, 0, .08);--sg-shadow-3: 0 8px 24px rgba(0, 0, 0, .12);--sg-track: rgba(0, 0, 0, .08);--sg-hover: rgba(0, 0, 0, .04);--sg-selected: rgba(0, 0, 0, .06);--sg-accent: #000000;--sg-chart-1: #1a1a1a;--sg-chart-2: #5c5c5c;--sg-chart-3: #8a8a8a;--sg-chart-4: #bdbdbd;--sg-chart-5: #2e2e2e;--sg-chart-6: #737373;--sg-chart-grid: rgba(0, 0, 0, .12);--sg-chart-surface: #ffffff;--sg-success: #2f7d4a;--sg-danger: #9b2c2c;--sg-warning: #3a3a3a;--sg-info: #3a3a3a}:root[data-theme=dark]{--sg-page: #0a0a0a;--sg-surface: #141414;--sg-surface-2: #1c1c1c;--sg-surface-3: #242424;--sg-ink: #f5f5f5;--sg-ink-2: rgba(245, 245, 245, .76);--sg-ink-3: rgba(245, 245, 245, .55);--sg-line: rgba(255, 255, 255, .14);--sg-line-2: rgba(255, 255, 255, .28);--sg-shadow-1: 0 1px 4px rgba(0, 0, 0, .5);--sg-shadow-2: 0 4px 14px rgba(0, 0, 0, .55);--sg-shadow-3: 0 10px 28px rgba(0, 0, 0, .6);--sg-track: rgba(255, 255, 255, .1);--sg-hover: rgba(255, 255, 255, .06);--sg-selected: rgba(255, 255, 255, .1);--sg-accent: #ffffff;--sg-chart-1: #f2f2f2;--sg-chart-2: #b5b5b5;--sg-chart-3: #8a8a8a;--sg-chart-4: #5a5a5a;--sg-chart-5: #d4d4d4;--sg-chart-6: #737373;--sg-chart-grid: rgba(255, 255, 255, .14);--sg-chart-surface: #141414;--sg-success: #5cbf86;--sg-danger: #e07a7a;--sg-warning: #c4c4c4;--sg-info: #d0d0d0}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--sg-page);color:var(--sg-ink);font-family:var(--ds-font-family);font-size:var(--ds-font-size-body);line-height:var(--ds-line-height-relaxed);-webkit-font-smoothing:antialiased;transition:background-color var(--ds-duration-component) var(--ds-easing-out),color var(--ds-duration-component) var(--ds-easing-out)}h1,h2,h3,h4{margin:0;line-height:var(--ds-line-height-tight)}a{color:var(--sg-ink)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--sg-line-2);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--sg-ink-3)}.material-symbols-rounded{font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 24}.sg-shell{display:flex;height:100vh;overflow:hidden}.sg-topbar{height:60px;flex-shrink:0;display:flex;align-items:center;gap:16px;padding:0 20px;color:#fff;background:#000;border-bottom:1px solid rgba(255,255,255,.12);box-shadow:var(--sg-shadow-1);position:relative;z-index:200}.sg-topbar img.amp,.sg-logo{height:40px;width:40px;display:block;object-fit:cover;object-position:center 28%}.sg-logo.lg{height:88px;width:88px}.sg-topbar .wordmark{font-size:18px;font-weight:700;letter-spacing:-.03em;text-transform:lowercase}.sg-topbar .sep{width:1px;height:26px;background:#ffffff47}.sg-topbar .client-logo{height:30px;max-width:150px;object-fit:contain;background:#fff;border-radius:6px;padding:3px 8px}.sg-topbar .client-name{font-size:15px;font-weight:700;letter-spacing:.01em}.sg-topbar .spacer{flex:1}.sg-topbar .code{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#ffffffb3}.sg-icon-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.24);color:#fff;border-radius:8px;width:34px;height:34px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background var(--ds-duration-micro) var(--ds-easing-out)}.sg-icon-btn:hover{background:#ffffff38}.sg-body{display:flex;flex:1;min-height:0}.sg-sidebar{width:232px;flex-shrink:0;background:var(--sg-surface);border-right:1px solid var(--sg-line);display:flex;flex-direction:column;overflow-y:auto;transition:width var(--ds-duration-component) var(--ds-easing-out)}.sg-sidebar.collapsed{width:56px}.sg-sidebar .group{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--sg-ink-3);padding:16px 16px 6px;font-weight:700;white-space:nowrap}.sg-navitem{display:flex;align-items:center;gap:12px;padding:9px 16px;cursor:pointer;color:var(--sg-ink-2);font-size:13.5px;border:none;background:none;width:100%;text-align:left;font-family:inherit;border-left:3px solid transparent;white-space:nowrap;transition:background var(--ds-duration-micro) var(--ds-easing-out)}.sg-navitem:hover{background:var(--sg-hover);color:var(--sg-ink)}.sg-navitem.active{background:var(--sg-selected);color:var(--sg-ink);font-weight:700;border-left-color:var(--sg-accent, #000)}.sg-navitem .material-symbols-rounded{font-size:19px}.sg-main{flex:1;overflow-y:auto;padding:24px 28px 64px;min-width:0}.sg-page-head{margin-bottom:20px}.sg-page-head h1{font-size:var(--ds-font-size-h1);font-weight:700}.sg-page-head p{margin:5px 0 0;color:var(--sg-ink-3);font-size:13.5px}.sg-card{background:var(--sg-surface);border:1px solid var(--sg-line);border-radius:var(--ds-radius-card);box-shadow:var(--sg-shadow-1);padding:18px 20px;margin-bottom:16px}.sg-card-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.sg-card-head h3{font-size:var(--ds-font-size-h3);font-weight:700;flex:1}.sg-card-head .sub{font-size:12px;color:var(--sg-ink-3);font-weight:400}.sg-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:18px}.sg-kpi{background:var(--sg-surface);border:1px solid var(--sg-line);border-radius:var(--ds-radius-card);padding:14px 16px;box-shadow:var(--sg-shadow-1)}.sg-kpi .v{font-size:24px;font-weight:700;letter-spacing:-.01em;line-height:1.15}.sg-kpi .l{font-size:11.5px;color:var(--sg-ink-3);margin-top:5px;line-height:1.35}.sg-kpi .d{font-size:11px;margin-top:4px}.sg-kpi.hot .v{color:var(--sg-warning)}.sg-kpi.bad .v{color:var(--sg-danger)}.sg-kpi.good .v{color:var(--sg-success)}.sg-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 15px;border-radius:var(--ds-radius-button);border:1px solid transparent;font-family:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:all var(--ds-duration-micro) var(--ds-easing-out);white-space:nowrap}.sg-btn .material-symbols-rounded{font-size:17px}.sg-btn-primary{background:#000;color:#fff}:root[data-theme=dark] .sg-btn-primary{background:#fff;color:#000}.sg-btn-primary:hover{filter:brightness(1.12)}.sg-btn-secondary{background:transparent;color:var(--sg-ink);border-color:var(--sg-line-2)}.sg-btn-secondary:hover{background:var(--sg-hover)}.sg-btn-ghost{background:transparent;color:var(--sg-ink-2)}.sg-btn-ghost:hover{background:var(--sg-hover);color:var(--sg-ink)}.sg-btn-danger{background:var(--sg-danger);color:#fff}.sg-btn:disabled{opacity:.45;cursor:not-allowed}.sg-btn-sm{padding:5px 10px;font-size:12.5px}.sg-field{margin-bottom:14px}.sg-label{display:block;font-size:12.5px;font-weight:600;margin-bottom:5px;color:var(--sg-ink-2)}.sg-input,.sg-select{width:100%;padding:9px 12px;border-radius:var(--ds-radius-input);border:1px solid var(--sg-line-2);background:var(--sg-surface);color:var(--sg-ink);font-family:inherit;font-size:13.5px;transition:border-color var(--ds-duration-micro) var(--ds-easing-out)}.sg-input:focus,.sg-select:focus{outline:none;border-color:var(--sg-chart-1);box-shadow:0 0 0 3px var(--sg-selected)}.sg-hint{font-size:11.5px;color:var(--sg-ink-3);margin-top:4px}.sg-error{color:var(--sg-danger);font-size:12.5px;margin-top:6px}.sg-table-wrap{overflow:auto;border:1px solid var(--sg-line);border-radius:var(--ds-radius-card);background:var(--sg-surface)}table.sg-table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}table.sg-table th{position:sticky;top:0;z-index:2;background:var(--sg-surface-3);text-align:left;padding:9px 12px;font-weight:700;font-size:11.5px;letter-spacing:.03em;white-space:nowrap;border-bottom:1px solid var(--sg-line);cursor:pointer;-webkit-user-select:none;user-select:none}table.sg-table th.no-sort{cursor:default}table.sg-table th:hover:not(.no-sort){color:var(--sg-chart-3)}table.sg-table td{padding:8px 12px;border-bottom:1px solid var(--sg-line);white-space:nowrap}table.sg-table tbody tr:hover{background:var(--sg-hover)}table.sg-table td.num,table.sg-table th.num{text-align:right;font-variant-numeric:tabular-nums}table.sg-table td.wrap{white-space:normal;min-width:240px}.sg-table-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.sg-table-foot{display:flex;align-items:center;gap:10px;padding:10px 2px;font-size:12.5px;color:var(--sg-ink-3);flex-wrap:wrap}.sg-badge{display:inline-block;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:999px;letter-spacing:.02em;white-space:nowrap}.sg-badge.a{background:var(--sg-selected);color:var(--sg-ink)}.sg-badge.b{background:var(--sg-track);color:var(--sg-ink-2)}.sg-badge.c{background:var(--sg-track);color:var(--sg-ink-3)}.sg-badge.ok{background:#40b4812e;color:var(--sg-success)}.sg-badge.warn{background:var(--sg-track);color:var(--sg-warning)}.sg-badge.dang{background:#b440402e;color:var(--sg-danger)}.sg-badge.mut{background:var(--sg-track);color:var(--sg-ink-3)}.sg-bars{display:flex;flex-direction:column;gap:7px}.sg-bar-row{display:grid;grid-template-columns:minmax(120px,210px) 1fr minmax(120px,auto);gap:12px;align-items:center}.sg-bar-lbl{font-size:12.5px;color:var(--sg-ink-2);text-align:right;line-height:1.25}.sg-bar-track{background:var(--sg-track);border-radius:4px;height:18px;overflow:hidden}.sg-bar-fill{height:100%;border-radius:0 4px 4px 0;transition:width .4s var(--ds-easing-out)}.sg-bar-val{font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.sg-bar-sub{font-size:11px;color:var(--sg-ink-3);font-weight:400}.sg-empty{text-align:center;padding:48px 20px;color:var(--sg-ink-3)}.sg-empty .material-symbols-rounded{font-size:44px;opacity:.5;display:block;margin:0 auto 10px}.sg-spinner{width:22px;height:22px;border:2.5px solid var(--sg-track);border-top-color:var(--sg-chart-1);border-radius:50%;animation:sg-spin .7s linear infinite;margin:0 auto}@keyframes sg-spin{to{transform:rotate(360deg)}}.sg-loading{padding:48px;text-align:center;color:var(--sg-ink-3)}.sg-alert{border-radius:var(--ds-radius-card);padding:13px 16px;margin-bottom:14px;border-left:4px solid;font-size:13.5px;background:var(--sg-surface-2);display:flex;gap:11px;align-items:flex-start}.sg-alert.err{border-color:var(--sg-danger)}.sg-alert.warn{border-color:var(--sg-warning)}.sg-alert.ok{border-color:var(--sg-success)}.sg-alert.info{border-color:var(--sg-chart-1)}.sg-alert strong{display:block;margin-bottom:2px}.sg-modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:400;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sg-modal{background:var(--sg-surface);border-radius:var(--ds-radius-modal);box-shadow:var(--sg-shadow-3);width:100%;max-width:560px;max-height:88vh;overflow-y:auto;padding:22px 24px;border:1px solid var(--sg-line)}.sg-modal.wide{max-width:900px}.sg-modal h2{font-size:var(--ds-font-size-h2);margin-bottom:4px}.sg-modal-foot{display:flex;gap:9px;justify-content:flex-end;margin-top:20px}.sg-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sg-grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}@media(max-width:720px){.sg-grid-2{grid-template-columns:1fr}}.sg-chips{display:flex;gap:7px;flex-wrap:wrap}.sg-chip{font-size:12px;padding:4px 11px;border-radius:999px;cursor:pointer;border:1px solid var(--sg-line-2);background:var(--sg-surface);color:var(--sg-ink-2);font-family:inherit;transition:all var(--ds-duration-micro) var(--ds-easing-out)}.sg-chip:hover{background:var(--sg-hover)}.sg-chip.on{background:var(--sg-selected);border-color:var(--sg-chart-1);color:var(--sg-ink);font-weight:700}.recharts-cartesian-axis-tick text{fill:var(--sg-ink-3);font-size:11px}.recharts-legend-item-text{color:var(--sg-ink-2)!important;font-size:12px}.recharts-cartesian-grid line{stroke:var(--sg-chart-grid)}
