:root{--accent:#8a6a3a;--accent-tint:#f5efe4;--ink:#1f2933;--body:#3c4750;--muted:#6b7680;--faint:#97a1aa;--white:#ffffff;--mist:#f4f6f8;--line:#e4e8ec;--line-strong:#d3d9df;--sage:#3d6b4f;--sage-hover:#335c43;--sage-tint:#eaf1ec;--amber:#8a6a3a;--amber-tint:#f7f1e6;--clay:#9d5a4e;--clay-tint:#f6ece9;--radius:10px;--radius-lg:14px;--shadow:0 1px 2px rgba(31,41,51,.04),0 8px 24px rgba(31,41,51,.06);--tab-h:52px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-inter),-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--body);background:var(--mist);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3{color:var(--ink);font-weight:600;letter-spacing:-.01em}h1{font-size:22px;margin:0 0 4px}h2{font-size:18px}h3{font-size:15px}a{color:var(--sage);text-decoration:none}a:hover{text-decoration:underline}.mono,code{font-family:var(--font-mono),ui-monospace,Menlo,monospace}@media (prefers-reduced-motion:no-preference){.fade{animation:fade .18s ease-out}}@keyframes fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.app-header{background:var(--white);border-bottom:1px solid var(--line)}.app-header .bar{max-width:1280px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:16px}.app-header .wordmark{height:26px;width:auto;display:block}.app-header .tagline{font-size:12px;color:var(--faint);border-left:1px solid var(--line);padding-left:16px}.app-header .spacer{flex:1 1}.app-header .org{font-size:13px;color:var(--ink);font-weight:500}.app-header .org .role{color:var(--muted);font-weight:400}.app-header .usermenu{font-size:13px;color:var(--muted);cursor:pointer}.accent-band{height:3px;background:var(--accent)}.tabs{background:var(--white);border-bottom:1px solid var(--line)}.tabs .row{max-width:1280px;margin:0 auto;padding:0 24px;display:flex;gap:4px;height:var(--tab-h);align-items:stretch;overflow-x:auto}.tabs a{display:inline-flex;align-items:center;gap:7px;padding:0 14px;font-size:14px;font-weight:500;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap}.tabs a:hover{color:var(--ink);text-decoration:none}.tabs a.active{color:var(--ink);border-bottom-color:var(--accent)}main.page{max-width:1280px;margin:0 auto;padding:28px 24px 80px}.crumbs{font-size:12.5px;color:var(--muted);margin:0 0 14px}.crumbs .sep{margin:0 7px;color:var(--faint)}.card{background:var(--white);border:1px solid var(--line);padding:22px;box-shadow:var(--shadow)}.card,.panel{border-radius:var(--radius-lg)}.panel{background:var(--mist);padding:20px}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:14px;gap:14px}.kpi{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px 18px}.kpi .label{font-size:12.5px;color:var(--muted)}.kpi .value{font-size:26px;font-weight:600;color:var(--ink);letter-spacing:-.02em;margin-top:2px}.kpi .delta{font-size:12px;margin-top:2px;display:inline-flex;align-items:center;gap:3px}.kpi .delta.up{color:var(--sage)}.kpi .delta.down{color:var(--clay)}.btn{display:inline-flex;align-items:center;gap:7px;font:inherit;font-weight:500;font-size:14px;padding:9px 16px;border-radius:var(--radius);cursor:pointer;border:1px solid transparent}.btn.primary{background:var(--sage);color:#fff}.btn.primary:hover{background:var(--sage-hover)}.btn.ghost{background:#fff;color:var(--ink);border-color:var(--line-strong)}.btn.ghost:hover{background:var(--mist)}.btn.danger{background:var(--clay);color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed}.btn .ti{font-size:16px}.field{position:relative;margin:18px 0}.field input,.field select,.field textarea{width:100%;padding:18px 12px 8px;border:1px solid var(--line-strong);border-radius:var(--radius);font:inherit;background:#fff;color:var(--ink)}.field textarea{min-height:110px;resize:vertical}.field label{position:absolute;left:12px;top:13px;color:var(--muted);font-size:14px;pointer-events:none;transition:all .15s ease}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--line-strong);border-color:var(--accent)}.field input:focus+label,.field input:not(:placeholder-shown)+label,.field textarea:focus+label,.field textarea:not(:placeholder-shown)+label{top:6px;font-size:11px;color:var(--accent)}.field input::placeholder,.field textarea::placeholder{color:transparent}table.grid{width:100%;border-collapse:collapse;font-size:13.5px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}table.grid td,table.grid th{border:1px solid var(--line);padding:9px 12px;text-align:left}table.grid thead th{background:var(--mist);font-weight:600;color:var(--ink);font-size:12.5px}table.grid tbody tr:hover{background:var(--sage-tint)}table.grid td.num,table.grid th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.idchip{font-family:var(--font-mono),monospace;background:var(--mist);border:1px solid var(--line);border-radius:6px;padding:1px 6px;cursor:copy}.chip,.idchip{font-size:12px}.chip{display:inline-flex;align-items:center;gap:5px;font-weight:500;padding:3px 10px;border-radius:999px}.chip.sage{background:var(--sage-tint);color:var(--sage)}.chip.amber{background:var(--amber-tint);color:var(--amber)}.chip.clay{background:var(--clay-tint);color:var(--clay)}.chip.neutral{background:var(--mist);color:var(--muted)}.chip.accent{color:var(--accent)}.chip.accent,.progress{background:var(--accent-tint)}.progress{height:3px;border-radius:3px;overflow:hidden}.progress>span{display:block;height:100%;width:35%;background:var(--accent);animation:slide 1.1s ease-in-out infinite}@keyframes slide{0%{margin-left:-35%}to{margin-left:100%}}.empty{text-align:center;padding:48px 20px;color:var(--muted)}.empty .art{font-size:40px;color:var(--accent);opacity:.5;margin-bottom:10px}.empty h3{color:var(--ink);margin:0 0 4px}.toasts{position:fixed;left:18px;bottom:18px;display:grid;grid-gap:8px;gap:8px;z-index:60}.toast{background:var(--ink);color:#fff;font-size:13px;padding:10px 14px;border-radius:var(--radius);box-shadow:var(--shadow);max-width:320px}.drawer-scrim{position:fixed;inset:0;background:rgba(31,41,51,.35);z-index:70}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,92vw);background:#fff;z-index:71;box-shadow:-8px 0 30px rgba(31,41,51,.12);padding:24px;overflow-y:auto}.app-footer{border-top:1px solid var(--line);background:#fff;margin-top:40px}.app-footer .row{max-width:1280px;margin:0 auto;padding:20px 24px;display:flex;flex-wrap:wrap;gap:14px;align-items:center;font-size:12.5px;color:var(--muted)}.app-footer .built{font-weight:500;color:var(--ink)}.app-footer .spacer{flex:1 1}.signin{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.signin .brandside{background:var(--accent);color:#fff;padding:48px;display:flex;flex-direction:column;justify-content:space-between}.signin .brandside .wm{height:30px;filter:brightness(0) invert(1);align-self:flex-start}.signin .brandside .mission{font-size:26px;font-weight:600;line-height:1.25;max-width:420px}.signin .brandside .built{font-size:13px;opacity:.85}.signin .formside{background:#fff;display:flex;align-items:center;justify-content:center;padding:48px}.signin .formside .box{width:min(360px,100%)}@media (max-width:760px){.signin{grid-template-columns:1fr}.signin .brandside{padding:32px;gap:28px}.tabs .row{padding:0 14px}main.page{padding:20px 14px 64px}.app-header .tagline{display:none}table.grid{display:block;overflow-x:auto}table.grid tbody,table.grid thead{display:table;width:100%;min-width:560px}}.wrap{max-width:1280px;margin:0 auto;padding:24px}.bar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:12px}.muted{color:var(--muted);font-size:13.5px}.row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.zone{font-weight:600;margin-top:10px;color:var(--ink)}.section{margin-left:14px}.artifact{margin-left:28px;font-size:14px}.artifact,.tag{color:var(--muted)}.tag{display:inline-block;font-size:12px;padding:2px 8px;border-radius:999px;background:var(--mist)}.modal-bg{position:fixed;inset:0;background:rgba(31,41,51,.4);display:flex;align-items:center;justify-content:center;z-index:72}.modal{background:#fff;border-radius:var(--radius-lg);padding:20px;width:440px;max-width:92vw}.err{color:var(--clay);font-size:14px}.btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--line-strong)}.card label{display:block;font-size:13px;font-weight:500;margin:8px 0 4px;color:var(--ink)}.card input,.card select,.card textarea{width:100%;padding:9px;border:1px solid var(--line-strong);border-radius:8px;font:inherit;background:#fff}