@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-arabic-400-normal-C3kpE8kt.woff2) format("woff2"),url(/assets/rubik-arabic-400-normal-irYcn3w0.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EFD-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-cyrillic-ext-400-normal-CFEw2TAA.woff2) format("woff2"),url(/assets/rubik-cyrillic-ext-400-normal-CivHtLLc.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-cyrillic-400-normal-CQ8oBEnj.woff2) format("woff2"),url(/assets/rubik-cyrillic-400-normal-B_UJh8st.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-hebrew-400-normal-CU-W3G4s.woff2) format("woff2"),url(/assets/rubik-hebrew-400-normal-CJmvi9hr.woff) format("woff");unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-latin-ext-400-normal-D8QMPjzI.woff2) format("woff2"),url(/assets/rubik-latin-ext-400-normal-DEDy7jdJ.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/rubik-latin-400-normal-Bd548WEe.woff2) format("woff2"),url(/assets/rubik-latin-400-normal-BUVSATH5.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-arabic-500-normal-CIuFrOEg.woff2) format("woff2"),url(/assets/rubik-arabic-500-normal-CB6YDCvE.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EFD-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-cyrillic-ext-500-normal-CYNkIfox.woff2) format("woff2"),url(/assets/rubik-cyrillic-ext-500-normal-nmoKJHwc.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-cyrillic-500-normal-BV4bma5x.woff2) format("woff2"),url(/assets/rubik-cyrillic-500-normal-C7Gn_qby.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-hebrew-500-normal-DDKUYthM.woff2) format("woff2"),url(/assets/rubik-hebrew-500-normal-CPKiYkJP.woff) format("woff");unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-latin-ext-500-normal-DkKfJ6Pe.woff2) format("woff2"),url(/assets/rubik-latin-ext-500-normal-BCdQQ5de.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rubik-latin-500-normal-u2YmNvkZ.woff2) format("woff2"),url(/assets/rubik-latin-500-normal-BH6pWtAW.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rubik-arabic-600-normal-CA-1nC9U.woff2) format("woff2"),url(/assets/rubik-arabic-600-normal-DIQFjsrV.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EFD-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rubik-cyrillic-ext-600-normal-D0QttgeF.woff2) format("woff2"),url(/assets/rubik-cyrillic-ext-600-normal-DkSZ61cp.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rubik-cyrillic-600-normal-Bhv6AWrg.woff2) format("woff2"),url(/assets/rubik-cyrillic-600-normal-CxjqTR49.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rubik-hebrew-600-normal-B4Yt0yNp.woff2) format("woff2"),url(/assets/rubik-hebrew-600-normal-QqLXU8b4.woff) format("woff");unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rubik-latin-ext-600-normal-ZJbMVRVo.woff2) format("woff2"),url(/assets/rubik-latin-ext-600-normal-gqY5hKZ6.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rubik-latin-600-normal-DKH4MTrm.woff2) format("woff2"),url(/assets/rubik-latin-600-normal-Cur5zd5D.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.react-grid-layout{position:relative;transition:height .2s ease}.react-grid-item{transition:all .2s ease;transition-property:left,top,width,height}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:.2;transition-duration:.1s;z-index:2;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{position:absolute;width:20px;height:20px}.react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,.4);border-bottom:2px solid rgba(0,0,0,.4)}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}:root{color-scheme:light;--page: #ecf8f9;--surface: #ffffff;--surface-2: #daf2f3;--ink: #0f2324;--ink-2: #44605f;--muted: #6f8a8b;--grid: #daf2f3;--axis: #a4dfe1;--border: rgba(61, 180, 186, .28);--accent: #3db4ba;--accent-ink: #062224;--accent-soft: #67c9cd;--link: #137f85;--series-1: #0e9fa6;--series-1-strong: #0a6b70;--series-1-soft: #a4dfe1;--series-2: #eb6834;--good: #0ca30c;--warning: #fab219;--critical: #d03b3b;--good-wash: #e3f4e3;--warning-wash: #fdf1d6;--critical-wash: #f9e2e2;--good-text: #006300;--bad-text: #a32828;--shadow: 0 1px 3px rgba(15, 35, 36, .06);--radius: 6px;--gap: 20px;font-family:Rubik,system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme: dark){:root:where(:not([data-theme=light])){color-scheme:dark;--page: #071415;--surface: #0f2224;--surface-2: #163234;--ink: #e3f3f4;--ink-2: #a6c6c8;--muted: #7d9fa1;--grid: #1b3a3c;--axis: #2a5456;--border: rgba(164, 223, 225, .14);--accent: #2c9da3;--accent-ink: #031314;--accent-soft: #1d5457;--link: #67c9cd;--series-1: #24a5ac;--series-1-strong: #8fdde0;--series-1-soft: #1d5457;--series-2: #e0703f;--good-wash: #13301a;--warning-wash: #3a2d0c;--critical-wash: #3d1818;--good-text: #0ca30c;--bad-text: #e66767;--shadow: 0 1px 3px rgba(0, 0, 0, .3)}}:root[data-theme=dark]{color-scheme:dark;--page: #071415;--surface: #0f2224;--surface-2: #163234;--ink: #e3f3f4;--ink-2: #a6c6c8;--muted: #7d9fa1;--grid: #1b3a3c;--axis: #2a5456;--border: rgba(164, 223, 225, .14);--accent: #2c9da3;--accent-ink: #031314;--accent-soft: #1d5457;--link: #67c9cd;--series-1: #24a5ac;--series-1-strong: #8fdde0;--series-1-soft: #1d5457;--series-2: #e0703f;--good-wash: #13301a;--warning-wash: #3a2d0c;--critical-wash: #3d1818;--good-text: #0ca30c;--bad-text: #e66767;--shadow: 0 1px 3px rgba(0, 0, 0, .3)}*{box-sizing:border-box}html,body{margin:0;background:var(--page);color:var(--ink)}body{font-size:14px;line-height:1.45}a{color:var(--link)}button,input,select{font:inherit;color:inherit}h1{font-size:22px;margin:0 0 4px;font-weight:600}h2{font-size:16px;margin:0 0 12px;font-weight:500}h3{font-size:14px;margin:0 0 8px;font-weight:500}.muted{color:var(--ink-2)}.small{font-size:12px}.num{font-variant-numeric:tabular-nums;text-align:right}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.side{background:var(--surface);border-right:1px solid var(--border);padding:16px 12px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;font-weight:600;padding:4px 8px 12px}.brand img{width:36px;height:36px}.brand small{display:block;font-weight:400;color:var(--ink-2);font-size:12px}.who{padding:10px 10px 12px;margin-bottom:8px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.who .name{font-weight:500}.who .roles{font-size:12px;color:var(--ink-2)}.nav a{display:block;padding:8px 10px;border-radius:var(--radius);color:var(--ink);text-decoration:none}.nav a:hover{background:var(--surface-2)}.nav a.active{background:var(--accent);color:var(--accent-ink);font-weight:500}.side .spacer{flex:1}.side .user{padding:8px 10px;border-top:1px solid var(--border)}.main{padding:24px 32px 48px;min-width:0}.topbar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;justify-content:space-between;margin-bottom:var(--gap)}.controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.btn.menu-btn{display:none}@media (max-width: 860px){.shell{grid-template-columns:1fr}.side{position:fixed;z-index:30;left:0;top:0;width:260px;transform:translate(-100%);transition:transform .2s;box-shadow:0 0 24px #0003}.side.open{transform:none}.main{padding:12px 16px 40px}.btn.menu-btn{display:inline-flex}}.btn{border:1px solid var(--border);background:var(--surface);padding:7px 12px;border-radius:var(--radius);cursor:pointer;display:inline-flex;gap:6px;align-items:center}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:transparent;font-weight:500}.btn.danger{color:var(--bad-text)}.btn:disabled{opacity:.5;cursor:default}select,input[type=text],input[type=email],input[type=date],input[type=number]{border:1px solid var(--border);background:var(--surface);padding:7px 10px;border-radius:var(--radius);max-width:100%}label.field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--ink-2)}label.check{display:flex;gap:8px;align-items:center}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:var(--gap);overflow-x:auto}.tabs button{border:0;background:none;padding:8px 12px;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;color:var(--ink-2)}.tabs button.active{border-bottom-color:var(--accent);color:var(--ink);font-weight:500}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);min-width:0}.grid{display:grid;gap:var(--gap)}.kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:var(--gap)}.two{grid-template-columns:repeat(auto-fit,minmax(380px,1fr))}@media (max-width: 500px){.two{grid-template-columns:1fr}}.kpi .label{font-size:12px;color:var(--ink-2)}.kpi .value{font-size:26px;font-weight:600;margin-top:2px}.kpi .sub{font-size:12px;color:var(--ink-2);margin-top:4px}.delta-up{color:var(--bad-text)}.delta-down{color:var(--good-text)}.stack{display:flex;flex-direction:column;gap:var(--gap)}.chip{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:500;white-space:nowrap;color:var(--ink);background:var(--surface-2)}.chip:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--muted)}.chip.red{background:var(--critical-wash)}.chip.red:before{background:var(--critical)}.chip.amber{background:var(--warning-wash)}.chip.amber:before{background:var(--warning)}.chip.green{background:var(--good-wash)}.chip.green:before{background:var(--good)}.dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:-1px}.dot.red{background:var(--critical)}.dot.amber{background:var(--warning)}.dot.green{background:var(--good)}.banner{border-radius:var(--radius);padding:10px 14px;margin-bottom:var(--gap);display:flex;gap:10px;align-items:flex-start}.banner.info{background:var(--surface-2)}.banner.warn{background:var(--warning-wash)}.banner.error{background:var(--critical-wash)}.banner strong{display:block;font-weight:500}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;font-weight:500;font-size:12px;color:var(--ink-2);padding:8px;border-bottom:1px solid var(--axis);white-space:nowrap}td{padding:8px;border-bottom:1px solid var(--grid);vertical-align:middle}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--surface-2)}.heat td.cell{padding:0;min-width:34px;text-align:center;font-size:11px;font-variant-numeric:tabular-nums}.heat td.cell div{margin:1px;padding:6px 2px;border-radius:3px}.cell.red div{background:var(--critical-wash)}.cell.amber div{background:var(--warning-wash)}.cell.green div{background:var(--good-wash)}.tree-name{display:flex;align-items:center;gap:6px;white-space:nowrap}.tree-toggle{width:22px;height:22px;border:0;background:none;cursor:pointer;border-radius:4px;color:var(--ink-2)}.tree-toggle:hover{background:var(--surface-2)}.level{font-size:11px;color:var(--muted)}.hidden-note{color:var(--muted);font-style:italic;font-size:12px}.chart{width:100%;height:280px}.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--ink-2);margin-top:6px}.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:5px;vertical-align:-2px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:grid;place-items:center;z-index:50;padding:16px}.modal{background:var(--surface);border-radius:var(--radius);padding:24px;max-width:560px;width:100%}.center-page{min-height:100vh;display:grid;place-items:center;padding:16px}.dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px}.dl dt{color:var(--ink-2)}.dl dd{margin:0}.pill-btn{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:3px 10px;cursor:pointer;font-size:12px}.err{color:var(--bad-text)}.dash-grid{margin:0 -2px}.dash-card{display:flex;flex-direction:column;padding:14px 16px;overflow:hidden}.card-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.card-head h3{margin:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-grid.editing .card-head{cursor:move}.dash-grid.editing .dash-card{outline:1px dashed var(--axis)}.card-unit{margin-bottom:6px;font-size:12px;padding:4px 6px}.card-body{flex:1;min-height:0;display:flex;flex-direction:column}.card-body>.chart{flex:1}.card-body .kpi .value{font-size:24px}.card-scroll{overflow:auto;min-height:0;flex:1}.react-grid-item.react-grid-placeholder{background:var(--accent);opacity:.15;border-radius:var(--radius)}.react-grid-item>.react-resizable-handle:after{border-color:var(--ink-2)}.dash-stack{display:flex;flex-direction:column;gap:var(--gap)}
