:root{color-scheme:light;--page: #f9f9f7;--surface: #fcfcfb;--ink: #0b0b0b;--ink-secondary: #52514e;--ink-muted: #898781;--grid: #e1e0d9;--axis: #c3c2b7;--border: rgba(11, 11, 11, .1);--series-1: #2a78d6;--series-2: #eb6834;--good: #0ca30c;--warning: #fab219;--critical: #d03b3b;--delta-up: #006300;--radius: 10px;--shadow: 0 1px 2px rgba(11, 11, 11, .05);--font: system-ui, -apple-system, "Segoe UI", "Noto Sans Arabic", sans-serif}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--page: #0d0d0d;--surface: #1a1a19;--ink: #ffffff;--ink-secondary: #c3c2b7;--ink-muted: #898781;--grid: #2c2c2a;--axis: #383835;--border: rgba(255, 255, 255, .1);--series-1: #3987e5;--series-2: #d95926;--delta-up: #0ca30c;--shadow: none}}:root[data-theme=dark]{color-scheme:dark;--page: #0d0d0d;--surface: #1a1a19;--ink: #ffffff;--ink-secondary: #c3c2b7;--ink-muted: #898781;--grid: #2c2c2a;--axis: #383835;--border: rgba(255, 255, 255, .1);--series-1: #3987e5;--series-2: #d95926;--delta-up: #0ca30c;--shadow: none}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--page);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}.shell{max-width:1180px;margin:0 auto;padding:28px 20px 64px}.topbar{display:flex;flex-wrap:wrap;gap:16px;align-items:baseline;justify-content:space-between;margin-bottom:6px}.brand{display:flex;align-items:baseline;gap:10px}.brand h1{margin:0;font-size:22px;font-weight:650;letter-spacing:-.01em}.brand .sub{color:var(--ink-muted);font-size:13px}.controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.field{display:flex;align-items:center;gap:7px;font-size:13px}.field label{color:var(--ink-secondary)}select,input[type=date],button{font-family:inherit;font-size:13px;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:7px 10px;cursor:pointer}select:hover,input[type=date]:hover,button:hover{border-color:var(--axis)}button:disabled{opacity:.5;cursor:default}.section-title{margin:30px 0 12px;font-size:13px;font-weight:600;color:var(--ink-secondary);letter-spacing:.02em}.kpi-row{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));margin-top:18px}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:15px 16px 14px;box-shadow:var(--shadow)}.kpi .label{font-size:12.5px;color:var(--ink-secondary);margin-bottom:6px}.kpi .value{font-size:27px;font-weight:640;letter-spacing:-.02em;line-height:1.15}.kpi .unit{font-size:14px;font-weight:500;color:var(--ink-secondary);margin-inline-start:4px}.kpi .note{font-size:12px;color:var(--ink-muted);margin-top:5px}.kpi .delta{font-size:12.5px;margin-top:5px}.kpi .delta.up{color:var(--delta-up)}.kpi .delta.down{color:var(--critical)}.kpi .delta.flat{color:var(--ink-muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px 18px 10px;box-shadow:var(--shadow);margin-bottom:16px}.card-head{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;justify-content:space-between;margin-bottom:4px}.card-head h2{margin:0;font-size:15px;font-weight:620}.card-head .hint{font-size:12.5px;color:var(--ink-muted)}.legend{display:flex;gap:16px;font-size:12.5px;color:var(--ink-secondary)}.legend span{display:inline-flex;align-items:center;gap:6px}.swatch{width:11px;height:11px;border-radius:3px;display:inline-block}.tooltip{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:9px 11px;font-size:12.5px;box-shadow:0 4px 14px #0b0b0b1f}.tooltip .t-title{color:var(--ink-secondary);margin-bottom:4px}.tooltip .t-row{display:flex;gap:10px;justify-content:space-between}.tooltip .t-val{font-weight:600;font-variant-numeric:tabular-nums}table{width:100%;border-collapse:collapse;font-size:13.5px}thead th{text-align:start;font-weight:600;color:var(--ink-secondary);padding:9px 10px;border-bottom:1px solid var(--grid);white-space:nowrap}tbody td{padding:9px 10px;border-bottom:1px solid var(--grid);font-variant-numeric:tabular-nums}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:color-mix(in srgb,var(--series-1) 6%,transparent)}td.num,th.num{text-align:end}.table-wrap{overflow-x:auto}.state{padding:44px 20px;text-align:center;color:var(--ink-muted);font-size:14px}.state.error{color:var(--critical)}.banner{display:flex;gap:9px;align-items:flex-start;background:color-mix(in srgb,var(--warning) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--warning) 40%,var(--border));border-radius:var(--radius);padding:11px 13px;font-size:13px;color:var(--ink-secondary);margin-top:18px}.banner .icon{flex:none}footer.note{margin-top:34px;padding-top:16px;border-top:1px solid var(--grid);font-size:12.5px;color:var(--ink-muted)}.review{margin-top:18px;border:1px solid color-mix(in srgb,var(--warning) 40%,var(--border));border-radius:var(--radius);overflow:hidden;background:color-mix(in srgb,var(--warning) 9%,var(--surface))}.review-head{width:100%;display:flex;align-items:center;gap:10px;padding:11px 14px;font-size:13.5px;text-align:start;background:transparent;border:none;border-radius:0;color:var(--ink)}.review-head:hover{background:color-mix(in srgb,var(--warning) 14%,transparent)}.review-chevron{margin-inline-start:auto;color:var(--ink-muted);font-size:11px}.review-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--warning);color:#0b0b0b;font-size:12.5px;font-weight:650;font-variant-numeric:tabular-nums}.review-body{border-top:1px solid var(--border);background:var(--surface)}.review-item{padding:14px;border-bottom:1px solid var(--grid)}.review-item:last-child{border-bottom:none}.review-item-head{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:14px}.chip{font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:999px;font-variant-numeric:tabular-nums}.chip-good{background:color-mix(in srgb,var(--good) 18%,transparent);color:var(--delta-up)}.chip-warn{background:color-mix(in srgb,var(--warning) 22%,transparent);color:var(--ink-secondary)}.review-evidence{display:flex;flex-wrap:wrap;gap:6px 8px;font-size:12.5px;color:var(--ink-secondary)}.review-evidence span{background:color-mix(in srgb,var(--ink) 5%,transparent);border-radius:6px;padding:2px 8px}.review-warnings{margin:9px 0 0;padding:0 18px 0 0;font-size:12.5px;color:var(--ink-secondary)}.review-path{margin-top:8px;font-size:12px;color:var(--ink-muted)}.review-path code{font-size:11.5px}.review-actions{display:flex;gap:8px;margin-top:12px}.btn-approve{background:var(--good);border-color:var(--good);color:#fff;font-weight:600}.btn-approve:hover:not(:disabled){filter:brightness(.92)}.btn-reject{color:var(--critical);border-color:color-mix(in srgb,var(--critical) 40%,var(--border))}.login{min-height:100%;display:grid;place-items:center;padding:24px}.login-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:30px 26px 22px;text-align:center}.login-sub{margin:0 0 22px;color:var(--ink-muted);font-size:13px}.login-label{display:block;text-align:start;font-size:13px;color:var(--ink-secondary);margin-bottom:6px}.login-card input[type=password]{width:100%;padding:10px 12px;font-size:15px;font-family:inherit;color:var(--ink);background:var(--page);border:1px solid var(--border);border-radius:8px}.login-card input[type=password]:focus{outline:2px solid var(--series-1);outline-offset:1px;border-color:transparent}.login-submit{width:100%;margin-top:14px;padding:10px;font-size:14px;font-weight:600;color:#fff;background:var(--series-1);border-color:var(--series-1)}.login-submit:hover:not(:disabled){filter:brightness(.93)}.login-error{margin-top:12px;font-size:13px;color:var(--critical);text-align:start}.login-note{margin:20px 0 0;padding-top:14px;border-top:1px solid var(--grid);font-size:12px;line-height:1.7;color:var(--ink-muted);text-align:start}.review-figure{margin:12px 0 0}.review-figure img{display:block;width:100%;max-width:760px;height:auto;border:1px solid var(--border);border-radius:8px;background:var(--page)}.review-figure figcaption{margin-top:7px;max-width:760px;font-size:12px;line-height:1.7;color:var(--ink-muted)}.review-figure figcaption strong{color:var(--ink-secondary)}.prov-list{display:grid;gap:12px;margin-top:4px}.prov{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow)}.prov-default{border-color:color-mix(in srgb,var(--good) 45%,var(--border))}.prov-head{display:flex;align-items:center;gap:9px;margin-bottom:8px;font-size:14.5px}.prov-test{margin-top:9px;font-size:12.5px;color:var(--ink-muted)}.prov-test.ok{color:var(--delta-up)}.prov-test.bad{color:var(--critical)}.prov-note{margin:12px 0;padding:10px 12px;border-radius:8px;font-size:12.5px;line-height:1.75;color:var(--ink-secondary);background:color-mix(in srgb,var(--warning) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--warning) 35%,var(--border))}.field-col{display:flex;flex-direction:column;gap:5px;margin-bottom:13px}.field-col label{font-size:13px;color:var(--ink-secondary)}.field-col input,.field-col select{width:100%;padding:8px 10px;font-size:14px}.prov-hint{font-size:11.5px;color:var(--ink-muted);line-height:1.7}.prov-hint a{color:var(--series-1)}
