:root{--nav:#111827;--bg:#f4f7fb;--ink:#172033;--muted:#748096;--blue:#3867ed;--line:#e4e9f1;--green:#18a573}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--ink)}aside{position:fixed;inset:0 auto 0 0;width:230px;background:var(--nav);color:white;padding:28px 16px;display:flex;flex-direction:column}.logo{font-size:20px;padding:0 12px 30px;display:flex;gap:12px;align-items:center}.logo span,.brandmark{background:var(--blue);border-radius:12px;padding:8px}nav{display:grid;gap:7px}nav a{color:#aeb8ca;text-decoration:none;padding:12px 15px;border-radius:8px}nav a:hover,nav a.active{background:#243047;color:white}.user{margin-top:auto;color:#aeb8ca;padding:12px}.user a{color:white}.content{margin-left:230px;padding:38px;max-width:1500px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}h1{font-size:27px;margin:0 0 5px}h2{font-size:17px;margin:0 0 20px}p{color:var(--muted);margin:0}.status{background:#e5f8f0;color:#11805c;padding:9px 13px;border-radius:20px;font-size:13px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px}.cards article,.panel{background:#fff;border:1px solid var(--line);border-radius:13px;padding:24px;box-shadow:0 2px 7px #1b294008}.cards small{display:block;color:var(--muted);font-weight:700;font-size:11px}.cards strong{display:block;font-size:34px;margin:10px 0 2px}.cards span{font-size:13px;color:var(--muted)}.split{display:flex;gap:22px;align-items:flex-start}.split>.panel:first-child{width:350px;flex:none}.grow{flex:1}form{display:grid;gap:13px}label{display:grid;gap:6px;font-size:13px;font-weight:600;color:#4c566a}input,select{width:100%;padding:10px 11px;border:1px solid #d8deea;border-radius:7px;background:white;color:var(--ink);font:inherit}button{border:0;background:var(--blue);color:white;border-radius:7px;padding:11px 16px;font-weight:700;cursor:pointer}.check{display:flex;grid-template-columns:auto 1fr;align-items:center}.check input{width:auto}.cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.members{background:#f7f9fc;padding:12px;border-radius:8px;display:grid;gap:7px}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;color:var(--muted);font-size:11px;text-transform:uppercase;padding:10px;border-bottom:1px solid var(--line)}td{padding:13px 10px;border-bottom:1px solid var(--line)}td small{display:block;color:var(--muted);margin-top:3px}.actions{text-align:right;white-space:nowrap}.actions a,.link{font-size:12px;color:var(--blue);text-decoration:none;background:none;padding:4px}.inline{display:inline}.danger{color:#d14343}.pill{font-size:11px;padding:5px 8px;color:var(--green);background:#e8f8f2;border-radius:12px}.alert{padding:12px 15px;border-radius:8px;background:#ddf6ed;color:#087451;margin-bottom:20px}.alert.bad{background:#ffe8e8;color:#a52b2b}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#111827,#263a63)}.loginbox{background:white;width:360px;padding:38px;border-radius:17px;box-shadow:0 20px 60px #0005}.loginbox h1{text-align:center;margin-top:14px}.loginbox>p{text-align:center;margin-bottom:25px}.brandmark{color:white;width:max-content;margin:auto;font-size:24px}@media(max-width:900px){aside{position:static;width:auto;height:auto}.user{display:none}.content{margin:0;padding:20px}.cards{grid-template-columns:1fr 1fr}.split{display:block}.split>.panel:first-child{width:auto;margin-bottom:20px}}@media(max-width:520px){.cards{grid-template-columns:1fr}.content{padding:14px}nav{grid-template-columns:1fr 1fr}.loginbox{width:calc(100% - 30px)}}
.button{display:inline-block;background:var(--blue);color:#fff;text-decoration:none;border-radius:7px;padding:11px 16px;font-size:14px;font-weight:700}.button.secondary{background:#fff;color:var(--blue);border:1px solid #cfd8ea}.list-only .split>.panel:first-child{display:none}.list-only .split>.grow{width:100%}.form-only .split>.grow{display:none}.form-only .split>.panel:first-child{width:min(620px,100%);margin:0 auto}@media(max-width:900px){.form-only .split>.panel:first-child{width:100%}}
