:root{--bg:#f6f5f1;--surface:#fff;--border:#e2dfd7;--text:#17181a;--muted:#5f6268;--accent:#3a4fd8;--accent-strong:#2e3fb3;--accent-tint:#e9ebfa}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,sans-serif;line-height:1.5}a{color:var(--accent-strong)}main{width:min(56rem,100% - 2rem);margin:2.5rem auto}.site-header{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.site-header nav{align-items:center;gap:1.25rem;display:flex}.wordmark{color:var(--text);font-size:1.25rem;font-weight:700;text-decoration:none}.muted{color:var(--muted)}.button{border:1px solid var(--accent);background:var(--accent);color:#fff;font:inherit;cursor:pointer;border-radius:8px;padding:.6rem 1rem;text-decoration:none;display:inline-block}.button.secondary{background:var(--surface);color:var(--accent-strong)}.button:disabled{opacity:.6}.hero{padding:3rem 0}.hero h1{margin:0 0 .75rem;font-size:2.5rem;line-height:1.15}.actions{gap:.75rem;margin-top:1.5rem;display:flex}.filters,.row{flex-wrap:wrap;align-items:end;gap:1rem;display:flex}label{flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--surface);border-radius:6px;padding:.5rem .6rem}.form{flex-direction:column;gap:1rem;max-width:32rem;display:flex}.list{flex-direction:column;gap:.75rem;padding:0;list-style:none;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:.25rem;padding:1rem 1.25rem;display:flex}.dashboard{grid-template-columns:12rem minmax(0,1fr);display:grid}.dashboard aside{border-right:1px solid var(--border);flex-direction:column;gap:.75rem;min-height:calc(100vh - 4rem);padding:2.5rem 1.5rem;display:flex}.dashboard main{width:auto;margin:2.5rem}table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:.75rem 1rem}.pill{background:var(--accent-tint);color:var(--accent-strong);border-radius:999px;padding:.15rem .6rem;font-size:.85rem}.error{color:#b42318}
