:root{font-family:Inter,system-ui,sans-serif;color:#203631;background:#f3f6f3;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;background:#17634f;color:#fff;border:0;border-radius:7px;padding:11px 18px}button:disabled{opacity:.5;cursor:wait}.secondary{background:#e2ebe5;color:#264a3e}button:hover{filter:brightness(.94)}.layout{display:grid;grid-template-columns:240px 1fr;min-height:100vh}aside{background:#163e33;color:#fff;padding:32px 20px}aside h1{font-size:28px;margin:16px 0 38px}aside h1 span{display:block;font-size:12px;font-weight:400;opacity:.6;margin-top:7px}.brand,.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700}nav{display:grid;gap:5px;margin-bottom:32px}nav button{text-align:left;background:transparent;color:#cee0d4}nav button.active{background:#d8eb9f;color:#203631}main{padding:44px;min-width:0}header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}h2{font-size:30px;margin:10px 0}h3{font-size:17px}p{line-height:1.6;color:#5d7067}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:30px 0 40px}article,section,.table{background:#fff;border:1px solid #dfe7df;border-radius:10px;padding:22px;margin-bottom:20px}article p{font-size:12px;margin:0 0 14px}article strong{font-size:28px}form{display:flex;flex-wrap:wrap;gap:16px;align-items:end}label{display:grid;gap:7px;font-size:12px;font-weight:600;flex:1;min-width:160px}input,select{border:1px solid #c8d4cc;background:#fff;border-radius:6px;padding:10px;width:100%;color:#203631}input[type=file]{max-width:540px}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}td,th{padding:15px 10px;border-bottom:1px solid #e7ede7}th{font-size:11px;text-transform:uppercase;color:#687e70}.table{overflow:auto}footer{font-size:11px;color:#7d8e82;margin-top:38px}.error,[role=alert]{color:#a32c27;background:#ffeded;padding:12px;border-radius:6px}.login{max-width:470px;margin:8vh auto;background:#fff;border-radius:14px}.login form{display:grid;margin:24px 0}.login h1{font-size:40px}.login p{font-size:14px}@media(max-width:1000px){.metrics{grid-template-columns:repeat(2,1fr)}main{padding:24px}.layout{grid-template-columns:205px 1fr}}@media(max-width:650px){.layout{display:block}aside{padding:20px}aside h1{margin:10px 0}nav{grid-template-columns:repeat(2,1fr);margin:20px 0}nav button{font-size:12px}.metrics{grid-template-columns:1fr 1fr;gap:8px}article{padding:15px}article strong{font-size:22px}h2{font-size:24px}main{padding:20px}form{display:grid}label{min-width:0}}
