:root{--acc:#6b4bff;--acc-ink:#fff;--acc2:#00b3a4;--done:#12b76a;--warn:#f79009;--bad:#d1495b;--bg:#f6f7f9;--panel:#fff;--line:#e5e8ee;--ink:#141821;--mut:#5b6472;--r-sm:10px;--r-md:12px;--r-lg:16px;--shadow:0 1px 2px rgba(16,24,40,.06);--shadow-lg:0 8px 28px rgba(16,24,40,.14);--sidebar-w:240px;--topbar-h:56px;--container:1440px;--row:44px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1115;--panel:#1a1e26;--line:#2a303c;--ink:#e8ecf2;--mut:#9aa3b2;--shadow:0 1px 2px rgba(0,0,0,.4);--shadow-lg:0 8px 28px rgba(0,0,0,.55)}}:root[data-theme=dark]{--bg:#0f1115;--panel:#1a1e26;--line:#2a303c;--ink:#e8ecf2;--mut:#9aa3b2;--shadow:0 1px 2px rgba(0,0,0,.4);--shadow-lg:0 8px 28px rgba(0,0,0,.55)}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}.tnum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}a{color:inherit;text-decoration:none}:where(p,li,span,small,td,label,dd,.text-links)>a:not([class]),a.text-link{color:var(--acc);font-weight:600}:where(p,li,span,small,td,label,dd,.text-links)>a:not([class]):hover,a.text-link:hover{text-decoration:underline}h1,h2,h3{margin:0;font-weight:650;letter-spacing:-.01em}button{font:inherit}input,select{font:inherit;color:inherit}label{align-content:start}::placeholder{color:var(--mut)}.app-shell{display:flex;min-height:100vh}.app-sidebar{width:var(--sidebar-w);flex:0 0 var(--sidebar-w);border-right:1px solid var(--line);background:var(--panel);height:100vh;height:100dvh;position:-webkit-sticky;position:sticky;top:0;display:flex;flex-direction:column}.app-column{flex:1 1;min-width:0;display:flex;flex-direction:column}.app-main{width:100%;min-width:0;padding:20px}.app-topbar{height:var(--topbar-h);gap:12px;padding:0 20px;border-bottom:1px solid var(--line);background:var(--panel);position:-webkit-sticky;position:sticky;top:0;z-index:5}.app-topbar,.app-topbar-title{display:flex;align-items:center}.app-topbar-title{flex:0 1 auto;min-width:0;max-width:60%}.app-topbar-extra{flex:1 1;min-width:0;align-self:stretch;display:flex}.app-backdrop,.app-burger,.app-drawer-close{display:none}.app-burger,.app-drawer-close{width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:var(--r-sm);border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}.r-show-sm{display:none!important}@media (max-width:900px){.app-sidebar{position:fixed;left:0;top:0;bottom:0;z-index:40;width:min(300px,86vw);transform:translateX(-100%);visibility:hidden;transition:transform .2s ease,visibility .2s;box-shadow:none}.app-shell[data-nav-open=true] .app-sidebar{transform:none;visibility:visible;box-shadow:var(--shadow-lg)}.app-shell[data-nav-open=true] .app-backdrop{display:block;position:fixed;inset:0;z-index:39;border:none;padding:0;background:rgba(16,24,40,.45)}.app-burger,.app-drawer-close{display:grid}.app-main{padding:12px}.app-main,.app-main *{grid-auto-columns:minmax(0,1fr)}.app-topbar{height:auto;min-height:var(--topbar-h);flex-wrap:wrap;gap:8px 10px;padding:8px 12px}.app-topbar-title{flex:1 1;max-width:none}.app-topbar-extra{order:10;flex:1 0 100%;height:40px;margin:0 -12px -8px;border-top:1px solid var(--line)}.app-topbar-extra:empty{display:none}}@media (max-width:760px){.r-hide-sm{display:none!important}.r-show-sm{display:revert!important}.r-stack{grid-template-columns:minmax(0,1fr)!important}.r-static-sm{position:static!important}.r-scroll-x-sm{overflow-x:auto!important}.app-main input:not([type=checkbox]):not([type=radio]),.app-main select,.app-main textarea{max-width:100%;min-width:0!important}.r-span{grid-column:auto!important}.r-fill-sm{flex:1 1 100%!important;min-width:0!important;width:100%!important}}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px}@media (max-width:760px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.kpi-value{font-size:clamp(16px,4.8vw,20px)!important}.chart-scroll{overflow-x:auto;width:0;min-width:100%}.chart-scroll-inner{min-width:560px}}.dg-cards{display:none}.dg-filters{display:contents}.dg-card-text,.dg-card-text *{white-space:normal!important;overflow-wrap:anywhere}@media (max-width:760px){.dg-filters{display:flex;flex-wrap:wrap;gap:8px;flex:1 1 100%;order:10}.dg-filters[data-collapsed=true],.dg-root[data-mobile=cards] .dg-table{display:none}.dg-root[data-mobile=cards] .dg-cards{display:grid}}