:root { --navy:#101c2c; --navy-2:#172a40; --gold:#b78a42; --cream:#f7f3ea; --ink:#1e2a37; --muted:#69727c; --line:#d9d4c9; --ok:#50735d; --fail:#a5534d; }
* { box-sizing:border-box; }
body { margin:0; background:var(--cream); color:var(--ink); font:16px/1.55 Georgia, 'Times New Roman', serif; }
a { color:inherit; }
.site-header { min-height:76px; padding:0 clamp(24px,6vw,88px); display:flex; align-items:center; justify-content:space-between; background:var(--navy); color:#fff; }
.brand { display:flex; gap:12px; align-items:center; text-decoration:none; font-size:20px; letter-spacing:.03em; }
.brand-mark { width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--gold); border-radius:50%; color:var(--gold); font:12px Arial,sans-serif; letter-spacing:.08em; }
.site-header nav a { color:#d9dde1; font:13px Arial,sans-serif; text-decoration:none; letter-spacing:.05em; }
.page-shell { max-width:1180px; margin:0 auto; padding:clamp(64px,9vw,128px) 28px; }
.hero { max-width:820px; }
.eyebrow { color:var(--gold); font:600 12px Arial,sans-serif; letter-spacing:.18em; text-transform:uppercase; }
h1 { max-width:900px; margin:.15em 0; color:var(--navy); font-size:clamp(44px,7vw,84px); font-weight:400; line-height:1.04; letter-spacing:-.035em; }
.lede { max-width:690px; color:var(--muted); font-size:clamp(18px,2vw,22px); }
.actions { margin-top:36px; }
.button { display:inline-block; padding:14px 20px; background:var(--navy); color:#fff; text-decoration:none; font:600 13px Arial,sans-serif; letter-spacing:.03em; border-radius:3px; }
.principles { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:100px; border-top:1px solid var(--line); }
.principles article { padding:28px 30px 10px 0; }
.principles span { color:var(--gold); font:12px Arial,sans-serif; }
h2 { margin:8px 0; color:var(--navy); font-size:20px; font-weight:400; }
.principles p, .check p { color:var(--muted); margin:0; }
.health-heading h1 { font-size:clamp(38px,6vw,66px); }
.check-grid { margin-top:55px; display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.check { display:flex; gap:18px; padding:24px; background:#fff; border:1px solid var(--line); }
.check-status { flex:0 0 auto; width:11px; height:11px; margin-top:10px; border-radius:50%; background:var(--fail); }
.check-ok .check-status { background:var(--ok); }
.check h2 { margin:0 0 3px; text-transform:capitalize; }
.pipeline{display:flex;gap:4px;overflow:auto;margin:36px 0}.pipeline span{padding:9px 12px;background:#ded9ce;color:var(--muted);font:11px Arial,sans-serif;text-transform:uppercase;white-space:nowrap}.pipeline span.done{background:var(--navy);color:#fff}.run-list article{margin:14px 0;padding:22px;background:#fff;border:1px solid var(--line)}.run-list small{color:var(--muted);font:12px Arial,sans-serif}.run-list pre{overflow:auto;padding:15px;background:var(--navy);color:#dce2e8;font:12px monospace}
footer { padding:26px clamp(24px,6vw,88px); background:var(--navy-2); color:#b9c0c7; font:12px Arial,sans-serif; }
@media (max-width:720px) { .principles, .check-grid { grid-template-columns:1fr; } .principles article { border-bottom:1px solid var(--line); } }
.auth-card{max-width:620px}.auth-card h1{font-size:clamp(38px,6vw,64px)}form{display:grid;gap:18px;margin:28px 0}label{display:grid;gap:7px;color:var(--navy);font:600 13px Arial,sans-serif}input,select,textarea{width:100%;padding:13px;border:1px solid var(--line);border-radius:3px;background:#fff;color:var(--ink);font:16px Arial,sans-serif}.button{border:0;cursor:pointer;justify-self:start}.form-error{padding:12px;border-left:3px solid var(--fail);background:#fff}.form-notice{padding:12px;border-left:3px solid var(--ok);background:#fff}
.table-wrap{overflow:auto;margin:20px 0 44px}table{width:100%;border-collapse:collapse;background:#fff;font-family:Arial,sans-serif}th,td{padding:13px 16px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.dashboard-title{display:flex;justify-content:space-between;gap:40px;align-items:end}.total-card{min-width:290px;padding:24px;background:var(--navy);color:#fff}.total-card span,.total-card small,.metric-grid span,.metric-grid small{display:block;font:12px Arial,sans-serif;color:#aeb8c2}.total-card strong{display:block;font-size:32px;font-weight:400;color:#fff}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:40px 0}.metric-grid article{padding:22px;background:#fff;border:1px solid var(--line)}.metric-grid strong{display:block;font-size:25px;font-weight:400}.warnings{padding:20px 24px;border-left:3px solid var(--gold);background:#fff}.dashboard-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:42px;margin:48px 0}.treemap{display:flex;flex-wrap:wrap;min-height:230px;gap:4px}.treemap article{flex:var(--weight) 1 100px;min-width:100px;padding:16px;background:var(--navy-2);color:#fff;display:flex;flex-direction:column}.treemap .cash-tile{background:#74613f}.treemap small{color:#acb7c0}.top-list{padding:0;list-style:none}.top-list li{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.top-list small{display:block;color:var(--muted);font:12px Arial,sans-serif}.allocation{margin:36px 0}.bar-row{display:grid;grid-template-columns:160px 1fr 60px;gap:14px;align-items:center;margin:10px 0;font:13px Arial,sans-serif}.bar-row>div{height:8px;background:#ddd8ce}.bar-row i{display:block;height:100%;background:var(--gold)}.empty-state{padding:40px;background:#fff;border:1px solid var(--line)}@media(max-width:720px){.dashboard-title{display:block}.total-card{margin-top:25px}.metric-grid,.dashboard-grid{grid-template-columns:1fr}.bar-row{grid-template-columns:100px 1fr 50px}}
