@import url("https://fonts.googleapis.com/css2?family=Archivo:wght@500;600;700&family=IBM+Plex+Sans:wght@400;500;600&family=IBM+Plex+Sans+Arabic:wght@400;500;600&family=IBM+Plex+Mono:wght@500;600&display=swap");:root{--ink:#0a1428;--ink-800:#14213d;--lapis:#12306e;--blue:#1f4fd8;--blue-600:#1a44bc;--blue-050:#ebf0fc;--steel-500:#8b95a6;--steel-300:#c9cfd9;--steel-200:#e2e6ec;--steel-100:#eff2f7;--amber:#e5a13c;--amber-050:#fbf1df;--paper:#f6f8fb;--white:#fff;--danger:#c2402a;--ok:#1e7f4f;--ok-050:#e6f4ec;--display:"Archivo",sans-serif;--body:"IBM Plex Sans","IBM Plex Sans Arabic",sans-serif;--mono:"IBM Plex Mono",monospace;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:28px;--radius:10px;--shadow:0 1px 2px rgba(10,20,40,.05),0 3px 12px rgba(10,20,40,.05);--t:200ms ease}*{box-sizing:border-box}body,html{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:14px}h1,h2,h3{font-family:var(--display);letter-spacing:-.01em;margin:0}h1{font-size:22px}h2{font-size:15px}h3{font-size:13px}a{color:var(--blue);text-decoration:none}.num{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.shell{display:flex;min-height:100vh}.side{width:216px;background:var(--ink);color:var(--steel-300);padding:var(--s5) var(--s3);display:flex;flex-direction:column;gap:var(--s1);flex-shrink:0;position:-webkit-sticky;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;margin:0 var(--s2) var(--s5);color:#fff;font-family:var(--display);font-weight:700;font-size:19px}.brand .ai{color:#6e93ee}.nav{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;color:var(--steel-300);font-weight:500;cursor:pointer;transition:background var(--t),color var(--t)}.nav:hover{background:hsla(0,0%,100%,.07);color:#fff}.nav.active{background:var(--blue);color:#fff}.nav svg{flex-shrink:0}.side .foot{margin-top:auto;font-size:11.5px;color:#55627c;padding:var(--s2);line-height:1.5}.live{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ok);-webkit-margin-end:6px;margin-inline-end:6px;animation:pulse 2s infinite;vertical-align:middle}@keyframes pulse{50%{opacity:.35}}.main{flex:1 1;padding:var(--s5) var(--s6);max-width:1320px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--s5);gap:var(--s3);flex-wrap:wrap}.muted{font-size:12.5px}.crumb,.muted{color:var(--steel-500)}.crumb{font-size:12px;letter-spacing:.08em;text-transform:uppercase}.card{background:var(--white);border:1px solid var(--steel-200);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--s4)}.card h2{margin-bottom:var(--s3);color:var(--lapis)}.grid{grid-gap:var(--s3)}.grid,.kpis{display:grid;gap:var(--s3)}.kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:var(--s3);margin-bottom:var(--s3)}.kpi .lbl{font-size:12px;color:var(--steel-500);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.kpi .val{font-family:var(--display);font-size:26px;font-weight:700;margin:4px 0 2px}.kpi .delta{font-size:12px;font-weight:600}.delta.up{color:var(--ok)}.delta.down{color:var(--danger)}.kpi.amberline{border-top:3px solid var(--amber)}.btn,button.btn{background:var(--blue);color:#fff;border:0;border-radius:8px;padding:9px 14px;font-weight:600;font-family:var(--body);cursor:pointer;font-size:13.5px;transition:background var(--t)}.btn:hover{background:var(--blue-600)}.btn.ghost{background:transparent;color:var(--blue);border:1px solid var(--steel-300)}.btn.ghost:hover{background:var(--blue-050)}.btn:disabled{background:var(--steel-300);cursor:not-allowed}input,select,textarea{width:100%;padding:9px 11px;border:1px solid var(--steel-300);border-radius:8px;font-family:var(--body);font-size:13.5px;background:#fff;transition:border-color var(--t)}input:hover,select:hover{border-color:var(--steel-500)}label{display:block;font-size:12.5px;font-weight:600;margin:var(--s3) 0 5px;color:var(--lapis)}.err{color:var(--danger)}.err,.okmsg{font-size:13px;margin-top:8px}.okmsg{color:var(--ok)}table{width:100%;border-collapse:collapse}th{text-align:start;font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--steel-500);padding:7px 10px;border-bottom:1px solid var(--steel-200);white-space:nowrap}td{padding:9px 10px;border-bottom:1px solid var(--steel-100);vertical-align:middle}tr:hover td{background:#fafbfd}.pill{display:inline-block;padding:2px 9px;border-radius:99px;font-size:11.5px;font-weight:600;background:var(--steel-200);color:var(--ink);white-space:nowrap}.pill.hot{background:var(--amber)}.pill.blue{background:var(--blue-050);color:var(--lapis)}.pill.won{background:var(--lapis);color:#fff}.pill.ok{background:var(--ok-050);color:var(--ok)}.pill.err{background:#f9e3de;color:var(--danger)}.switch{position:relative;width:38px;height:21px;background:var(--steel-300);border-radius:99px;border:0;cursor:pointer;transition:background var(--t);flex-shrink:0}.switch.on{background:var(--blue)}.switch:after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:15px;height:15px;border-radius:50%;background:#fff;transition:inset-inline-start var(--t)}.switch.on:after{inset-inline-start:20px}.seg{display:inline-flex;border:1px solid var(--steel-300);border-radius:8px;overflow:hidden}.seg button{border:0;background:#fff;padding:7px 12px;font-family:var(--body);font-size:12.5px;font-weight:600;color:var(--steel-500);cursor:pointer;transition:all var(--t)}.seg button.on{background:var(--ink);color:#fff}.legend{display:flex;gap:var(--s4);flex-wrap:wrap;font-size:12px;color:var(--steel-500);margin-top:var(--s2)}.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;-webkit-margin-end:6px;margin-inline-end:6px;vertical-align:-1px}.projcard{border:1px solid var(--steel-200);border-radius:var(--radius);padding:var(--s4);background:#fff;transition:box-shadow var(--t)}.projcard:hover{box-shadow:var(--shadow)}.projcard.focused{border-color:var(--amber);background:linear-gradient(180deg,var(--amber-050),#fff 40%)}[dir=rtl]{--display:"IBM Plex Sans Arabic",sans-serif}[dir=rtl] .icon-flip{transform:scaleX(-1)}.bar{height:8px;background:var(--steel-200);overflow:hidden}.bar,.bar>i{border-radius:99px}.bar>i{display:block;height:100%;background:var(--blue);transition:width .4s ease}.bar.warn>i{background:var(--amber)}@media (max-width:900px){.side{display:none}.main{padding:var(--s4)}}