*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:#f4f6f8;color:#18212b}aside{position:fixed;left:0;top:0;bottom:0;width:230px;background:#102a43;color:white;padding:25px}aside h2{margin-bottom:0}aside p{font-size:11px;color:#9fb3c8}nav a{display:block;color:white;text-decoration:none;padding:12px 8px;border-radius:7px;margin:5px 0}nav a:hover{background:#243b53}main{margin-left:230px;padding:35px;max-width:1400px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px}.stat,.card{background:white;padding:22px;border-radius:12px;box-shadow:0 2px 10px #00000010}.stat b{display:block;font-size:24px;margin-bottom:8px}.stat span{color:#627d98;text-transform:capitalize}.top{display:flex;justify-content:space-between;align-items:center}table{width:100%;border-collapse:collapse;background:white;margin-top:20px}th,td{padding:12px;border-bottom:1px solid #eee;text-align:left;font-size:14px}th{background:#e9eef3}.button,button{background:#1f7a5c;color:white;border:0;padding:11px 15px;border-radius:7px;text-decoration:none;cursor:pointer}.form{max-width:760px;display:grid;gap:12px}.form input,.form select,.form textarea,.login input{padding:12px;border:1px solid #ccd6df;border-radius:7px;width:100%}.form textarea{min-height:100px}.login{display:grid;place-items:center;height:85vh}.login .card{width:min(420px,92vw)}.login form{display:grid;gap:12px;margin:20px 0}.flash{background:#d9f2e6;padding:12px;margin-bottom:15px;border-radius:7px}@media(max-width:700px){aside{position:static;width:auto}main{margin-left:0;padding:18px}table{display:block;overflow:auto}nav{display:flex;flex-wrap:wrap;gap:5px}nav a{padding:8px}.grid{grid-template-columns:1fr 1fr}}
@media print{body{background:#fff;color:#000;font-size:10pt}aside,.flash,.report-actions button,.report-actions .button{display:none!important}main{margin:0;padding:0;max-width:none}.top{display:block}h1{font-size:18pt;margin:0 0 12pt}table{display:table!important;width:100%;margin-top:12pt;border:1px solid #999}tr{break-inside:avoid}th,td{font-size:9pt;padding:6pt;border:1px solid #bbb}th{background:#eee!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}@page{margin:16mm}}
.card form{display:grid;gap:12px;max-width:520px;margin:16px 0}.card form label{display:grid;gap:6px}.card form input{padding:11px;border:1px solid #ccd6df;border-radius:7px;width:100%}.card ol{padding-left:24px;line-height:1.65}
