:root{--ff-body: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ff-display: "Inter Tight", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fs-xs: 11px;--fs-sm: 12px;--fs-base: 13px;--fs-md: 15px;--fs-lg: 18px;--fs-xl: 23px;--fs-2xl: 28px;--fs-3xl: 34px;--lh-tight: 1.2;--lh-snug: 1.35;--lh-base: 1.55;--tracking-tight: -.02em;--tracking-wide: .04em;--tracking-caps: .06em;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-7: 32px;--sp-8: 48px;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 20px;--r-full: 999px;--sh-1: 0 1px 2px rgba(15, 23, 42, .04), 0 1px 3px rgba(15, 23, 42, .06);--sh-2: 0 2px 4px rgba(15, 23, 42, .04), 0 4px 12px rgba(15, 23, 42, .08);--sh-3: 0 4px 8px rgba(15, 23, 42, .05), 0 12px 28px rgba(15, 23, 42, .12);--sh-4: 0 8px 16px rgba(15, 23, 42, .06), 0 24px 48px rgba(15, 23, 42, .16);--sh-brand: 0 1px 2px rgba(var(--brand-rgb), .22), 0 2px 8px rgba(var(--brand-rgb), .18);--dur-fast: .12s;--dur-base: .2s;--ease: cubic-bezier(.4, 0, .2, 1);--ring: 0 0 0 3px rgba(var(--brand-rgb), .32);--ring-danger: 0 0 0 3px rgba(220, 38, 38, .3);--sidebar-w: 248px;--sidebar-rail-w: 68px;--topbar-h: 56px;--content-max: 1560px;--bg: #f3f7f4;--surface: #ffffff;--surface2: #f7faf8;--surface3: #eef3f0;--border: #dde7e1;--border-strong: #c2d1c9;--text: #0d1a16;--text2: #40544c;--muted: #5d6f68;--faint: #6a7771;--hover: #f1f6f3;--shadow: var(--sh-1);--brand: #157648;--brand-rgb: 21, 118, 72;--brand-hover: #0f5c38;--brand-2: #3eac64;--brand-ink: #ffffff;--brand-bright: #2ebf85;--brand-highlight: #91fb64;--brand-tint: rgba(var(--brand-rgb), .1);--brand-tint-2: rgba(var(--brand-rgb), .16);--brand-border: rgba(var(--brand-rgb), .25);--brand-deep: #157648;--brand-wash: #eef8f2;--brand-grad: linear-gradient(135deg, var(--brand), var(--brand-2));--c-green: #16a34a;--c-green-t: rgba(22, 163, 74, .12);--c-amber: #d97706;--c-amber-t: rgba(217, 119, 6, .13);--c-amber-ink: #b45309;--c-blue: #2563eb;--c-blue-t: rgba(37, 99, 235, .12);--c-blue-alt: #2a78d6;--c-red: #dc2626;--c-red-t: rgba(220, 38, 38, .12);--c-red-ink: #b91c1c;--c-red-wash: #fee2e2;--c-slate: #64748b;--c-slate-t: rgba(100, 116, 139, .13);--c-violet: #7c3aed;--c-violet-t: rgba(124, 58, 237, .1);--c-green-wash: #dcfce7;--c-green-line: #bbf7d0;--c-amber-wash: #fffbeb;--c-amber-line: #fde68a;--c-amber-deep: #92400e;--c-red-wash-2: #fef2f2;--c-blue-ink: #1d4ed8;--c-blue-wash: #cde2fb;--c-blue-line: #86b6ef;--s-blue: #2a78d6;--s-aqua: #1baf7a;--s-yellow: #eda100;--s-violet: #4a3aa7;--st-good: #0ca30c;--st-muted: #94a3b8;--st-critical: #d03b3b;--seq-1: #cde2fb;--seq-2: #86b6ef;--seq-3: #5598e7;--seq-4: #2a78d6;--seq-5: #1c5cab;--seq-6: #104281;--nav-bg: #0a1210;--nav-text: #a2b2ab;--nav-text-active: #f2fff9;--nav-group: #b6bcb7;--nav-hover: rgba(255, 255, 255, .05);--nav-active: #113d2e;--nav-border: rgba(255, 255, 255, .07)}body.dark{color-scheme:dark;--bg: #0a1210;--surface: #152220;--surface2: #111c1a;--surface3: #1d2a28;--border: #2c3937;--border-strong: #3b4947;--text: #ffffff;--text2: #c5d2cc;--muted: #a2b2ab;--faint: #7c8c85;--hover: #1d2a28;--brand: #2ebf85;--brand-rgb: 46, 191, 133;--brand-hover: #26a874;--brand-2: #91fb64;--brand-ink: #0a1210;--brand-deep: #4ade80;--brand-wash: #1c3a2f;--sh-1: 0 1px 2px rgba(0, 0, 0, .4), 0 1px 3px rgba(0, 0, 0, .3);--sh-2: 0 2px 4px rgba(0, 0, 0, .4), 0 4px 12px rgba(0, 0, 0, .45);--sh-3: 0 4px 8px rgba(0, 0, 0, .45), 0 12px 28px rgba(0, 0, 0, .55);--sh-4: 0 8px 16px rgba(0, 0, 0, .5), 0 24px 48px rgba(0, 0, 0, .6);--shadow: var(--sh-1);--pill-bg: #1c3a2f;--c-red-ink: #f87171;--c-red-wash: rgba(220, 38, 38, .16);--c-amber-ink: #fbbf24;--c-blue-alt: #60a5fa;--c-green-wash: rgba(22, 163, 74, .16);--c-green-line: rgba(22, 163, 74, .34);--c-amber-wash: rgba(217, 119, 6, .14);--c-amber-line: rgba(217, 119, 6, .32);--c-amber-deep: #fcd34d;--c-red-wash-2: rgba(220, 38, 38, .12);--c-blue-ink: #93c5fd;--c-blue-wash: rgba(37, 99, 235, .16);--c-blue-line: rgba(37, 99, 235, .36);--nav-bg: #070d18;--nav-group: #64748b;--s-blue: #3987e5;--s-aqua: #199e70;--s-yellow: #c98500;--s-violet: #9085e9;--st-muted: #64748b;--seq-1: #26456e;--seq-2: #2f5c96;--seq-3: #3f79c1;--seq-4: #5598e7;--seq-5: #86b6ef;--seq-6: #cde2fb}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:var(--ff-body);font-size:var(--fs-base);line-height:var(--lh-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text)}body{background:var(--bg)}h1,h2,h3,h4{font-family:var(--ff-display);letter-spacing:var(--tracking-tight);line-height:var(--lh-tight)}button,input,select,textarea{font-family:inherit;font-size:var(--fs-base);color:var(--text)}button{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-sm);padding:8px 12px;cursor:pointer}button:hover:not(:disabled){background:var(--hover)}button:disabled{opacity:.55;cursor:default}input,select,textarea{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-sm);padding:8px 10px}input[type=date],input[type=time],input[type=datetime-local],input[type=month],input[type=week]{background:var(--surface);color:var(--text)}input::placeholder,textarea::placeholder{color:var(--muted)}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid transparent;outline-offset:2px;box-shadow:var(--ring);border-radius:var(--r-sm)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#64748b4d;border-radius:8px;border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}@keyframes ah-pulse{0%,to{opacity:1}50%{opacity:.4}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-4);box-shadow:var(--sh-1)}.card+.card,.card+.stack-item,.stack-item+.card{margin-top:var(--sp-4)}.stack{display:flex;flex-direction:column;gap:var(--sp-4)}.stack>.card+.card{margin-top:0}.stack-lg{gap:var(--sp-5)}.segmented,.tabs{display:inline-flex;margin-bottom:var(--sp-4);gap:3px;padding:3px;background:var(--surface2, var(--hover));border:1px solid var(--border);border-radius:999px;max-width:100%;flex-wrap:wrap}.segmented>button,.segmented>.seg,.tabs>button,.tabs>.seg{border:0;background:transparent;padding:9px 16px;border-radius:999px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;color:var(--muted);cursor:pointer;white-space:nowrap;transition:background .12s ease,color .12s ease}.segmented>button:hover:not(:disabled),.segmented>.seg:hover:not(:disabled),.tabs>button:hover:not(:disabled),.tabs>.seg:hover:not(:disabled){background:transparent;color:var(--text)}.segmented>button.active,.segmented>button.on,.segmented>button[aria-selected=true],.segmented>.seg.active,.segmented>.seg.on,.tabs>button.active,.tabs>button.on,.tabs>button[aria-selected=true],.tabs>.seg.active,.tabs>.seg.on{background:var(--surface);color:var(--text);box-shadow:var(--sh-1)}.segmented .count,.tabs .count{margin-left:6px;padding:1px 6px;border-radius:999px;background:var(--hover);color:var(--muted);font-size:11.5px}.card-pad-lg{padding:var(--sp-6)}.alert{background:var(--c-red-t);color:var(--c-red);border:1px solid rgba(220,38,38,.25);border-radius:var(--r-sm);padding:var(--sp-3) var(--sp-3);font-size:var(--fs-base)}.muted{color:var(--muted)}.small{font-size:var(--fs-sm)}.strong{font-weight:600;color:var(--text)}.nowrap{white-space:nowrap}.num{font-variant-numeric:tabular-nums}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--sp-4);margin-bottom:var(--sp-5);flex-wrap:wrap}.page-head h1{margin:0;font-family:var(--ff-display);font-size:var(--fs-xl);font-weight:600;letter-spacing:var(--tracking-tight);line-height:var(--lh-tight);color:var(--text)}.page-head .sub{margin-top:var(--sp-1);font-size:var(--fs-base);color:var(--muted)}.btn{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);border-radius:var(--r-sm);font-size:var(--fs-base);font-weight:600;font-family:inherit;line-height:1.2;padding:var(--sp-2) 14px;min-height:34px;border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:var(--sh-1);transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.btn:hover{background:var(--hover);border-color:var(--border-strong)}.btn:active{transform:translateY(1px);box-shadow:none}.btn:disabled,.btn[disabled]{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-primary{background:var(--brand);color:var(--brand-ink);border-color:transparent;box-shadow:var(--sh-brand)}.btn-primary:hover{background:var(--brand-hover);border-color:transparent}.btn-danger{background:var(--c-red-t);color:var(--c-red);border-color:transparent;box-shadow:none}.btn-danger:hover{background:#dc26262e;border-color:transparent}.btn-ghost{background:transparent;border-color:transparent;box-shadow:none}.btn-ghost:hover{background:var(--hover);border-color:transparent}.btn-sm{padding:5px 11px;min-height:28px;font-size:var(--fs-sm)}a.btn{text-decoration:none}table.grid{width:100%;border-collapse:collapse;font-size:var(--fs-base)}table.grid th{text-align:left;font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--muted);padding:var(--sp-3) 14px;background:var(--surface2);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1}table.grid td{padding:11px 14px;border-top:1px solid var(--border);color:var(--text)}table.grid td.num,table.grid th.num{font-variant-numeric:tabular-nums;text-align:right}table.grid tbody tr{transition:background var(--dur-fast) var(--ease)}table.grid tbody tr:hover{background:var(--hover)}.table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.pill{display:inline-flex;align-items:center;gap:6px;background:var(--c-slate-t);color:var(--c-slate);padding:3px 9px;border-radius:var(--r-full);font-size:var(--fs-sm);font-weight:500;white-space:nowrap}.pill.green{background:var(--c-green-t);color:var(--c-green)}.pill.amber{background:var(--c-amber-t);color:var(--c-amber)}.pill.blue{background:var(--c-blue-t);color:var(--c-blue)}.pill.red{background:var(--c-red-t);color:var(--c-red)}.pill.violet{background:var(--c-violet-t);color:var(--c-violet)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:var(--sp-3);margin-bottom:var(--sp-5)}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-4);box-shadow:var(--sh-1);transition:box-shadow var(--dur-base) var(--ease),border-color var(--dur-base) var(--ease)}.kpi:hover{box-shadow:var(--sh-2);border-color:var(--border-strong)}.kpi-val{font-family:var(--ff-display);font-size:var(--fs-2xl);font-weight:700;letter-spacing:var(--tracking-tight);line-height:var(--lh-tight);color:var(--text);font-variant-numeric:tabular-nums}.kpi-lbl{font-size:var(--fs-sm);color:var(--muted);margin-top:var(--sp-1)}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--sp-8) var(--sp-5)}.empty-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:var(--sp-3);border-radius:var(--r-md);background:var(--surface3);color:var(--faint)}.empty-t{font-family:var(--ff-display);font-size:var(--fs-md);font-weight:600;letter-spacing:var(--tracking-tight);color:var(--text)}.empty-d{font-size:var(--fs-base);color:var(--muted);margin-top:5px;max-width:380px;line-height:var(--lh-base)}.empty .btn{margin-top:var(--sp-4)}.cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4)}.field{display:flex;flex-direction:column;gap:var(--sp-1)}.field label{font-size:var(--fs-sm);font-weight:600;color:var(--muted)}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea,label input:not([type=checkbox]):not([type=radio]),label select,label textarea{padding:9px var(--sp-3);border:1px solid var(--border);border-radius:var(--r-sm);font-size:var(--fs-base);width:100%;background:var(--surface);color:var(--text);font-family:inherit;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.field input:not([type=checkbox]):not([type=radio]):hover,.field select:hover,.field textarea:hover{border-color:var(--border-strong)}.field input:not([type=checkbox]):not([type=radio]):focus,.field select:focus,.field textarea:focus,label input:not([type=checkbox]):not([type=radio]):focus,label select:focus,label textarea:focus{outline:none;border-color:var(--brand);box-shadow:var(--ring)}.field input::placeholder,.field textarea::placeholder{color:var(--faint)}.field .hint{font-size:var(--fs-xs);color:var(--muted)}.field .err{font-size:var(--fs-xs);color:var(--c-red)}.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:var(--c-red)}input[type=checkbox],input[type=radio]{accent-color:var(--brand);width:16px;height:16px;flex:none;margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}.form-grid .full{grid-column:1/-1}.overlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:flex-end;z-index:1050;animation:ah-fade var(--dur-base) var(--ease)}.drawer{width:480px;max-width:100%;height:100%;background:var(--surface);padding:var(--sp-6);overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-3);box-shadow:var(--sh-4);animation:ah-slide-in var(--dur-base) var(--ease)}.drawer.wide{width:560px}.drawer h2{margin:0;font-family:var(--ff-display);font-size:var(--fs-lg);font-weight:600;letter-spacing:var(--tracking-tight)}.drawer-actions{display:flex;gap:var(--sp-2);margin-top:var(--sp-2)}@keyframes ah-fade{0%{opacity:0}to{opacity:1}}@keyframes ah-slide-in{0%{transform:translate(16px);opacity:0}to{transform:translate(0);opacity:1}}.toolbar{display:flex;gap:var(--sp-2);align-items:center;margin-bottom:var(--sp-3);flex-wrap:wrap}.toolbar input,.toolbar select{padding:7px var(--sp-3);border:1px solid var(--border);border-radius:var(--r-sm);font-size:var(--fs-base);background:var(--surface);color:var(--text);font-family:inherit;transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.toolbar input:focus,.toolbar select:focus{outline:none;border-color:var(--brand);box-shadow:var(--ring)}.link{background:none;border:0;padding:0;color:var(--brand);text-decoration:none;font-weight:600;font-size:inherit;border-radius:3px;cursor:pointer}.link:hover,button.link:hover:not(:disabled){background:none;text-decoration:underline}.row-actions{display:flex;gap:6px;justify-content:flex-end}@media(max-width:900px){.cols,.form-grid{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.overlay{align-items:flex-end}.drawer,.drawer.wide{width:100%;height:auto;max-height:88vh;border-radius:var(--r-lg) var(--r-lg) 0 0;padding:var(--sp-5);animation:ah-slide-up var(--dur-base) var(--ease)}@keyframes ah-slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}}@media(max-width:560px){.kpis{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:var(--sp-2)}.toolbar input,.toolbar select{flex:1 1 140px;min-width:0}}
