:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#12283d;background:#eef3f8}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:#1464a2}.loading{padding:50px}h1,h2,h3,p{margin:0 0 12px}h1{font-size:26px}h2{font-size:19px}p{line-height:1.45}small,.muted{color:#65778a}.layout{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.side{background:#102638;color:#edf6ff;padding:24px 14px}.brand{font-size:22px;font-weight:850;letter-spacing:.07em;padding:3px 12px 21px}.brand small{display:block;font-size:10px;letter-spacing:1px;font-weight:500;color:#a3bccd;margin-top:5px}.nav{width:100%;text-align:left;background:none;color:#d6e7f4;border:0;padding:13px 14px;border-radius:10px;margin:2px 0}.nav:hover,.nav.active{background:#254861;color:white}.sidefoot{font-size:12px;color:#b5c6d6;margin:30px 12px;line-height:1.6}.main{padding:26px 32px;min-width:0}.top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:25px}.top h1{margin:0}.headerline{font-size:12px;color:#687e91;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}.surface{background:white;border:1px solid #dce5ee;border-radius:14px;box-shadow:0 4px 15px rgba(12,34,54,.035);padding:20px;margin-bottom:17px}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:16px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat{background:white;border:1px solid #dae5ef;border-radius:12px;padding:17px}.stat strong{font-size:28px;display:block;margin-top:7px}.stat small{font-size:12px}.btn{background:white;color:#14344e;border:1px solid #bfd0dd;padding:10px 14px;border-radius:9px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none}.btn.primary{background:#116ca4;color:white;border-color:#116ca4}.btn.danger{background:#fef4f3;color:#a83435;border-color:#edcece}.btn.tiny{padding:6px 9px;font-size:12px}.btn:hover{filter:brightness(.96)}.actions{display:flex;gap:8px;flex-wrap:wrap}.pill{display:inline-block;border-radius:12px;padding:4px 9px;background:#e9eff6;color:#405b71;font-size:11px;font-weight:700}.pill.ready_for_review,.pill.ready_for_billing{background:#fff3ce;color:#855900}.pill.in_progress,.pill.finalized,.pill.completed{background:#d7f5e7;color:#115e3c}.pill.emergency{background:#ffe1de;color:#a42626}.table{width:100%;border-collapse:collapse;text-align:left}.table th{font-size:11px;color:#68798c;letter-spacing:.06em;text-transform:uppercase}.table th,.table td{border-bottom:1px solid #ecf0f4;padding:12px 8px;vertical-align:top}.table tr:last-child td{border:0}.tablewrap{overflow:auto}.link{background:none;border:0;color:#116ca4;text-align:left;text-decoration:underline;padding:0}.note{background:#eef7fe;border-left:3px solid #3190c7;padding:12px;color:#345b73;border-radius:4px;margin-bottom:14px;font-size:13px}.warning{background:#fff5e7;border-left-color:#e3aa3e}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.field label{font-size:13px;font-weight:650}.field input,.field select,.field textarea{border:1px solid #cbd9e5;border-radius:8px;padding:11px 12px;background:#fff;width:100%;min-width:0}.field textarea{min-height:100px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:4px 14px}.field.full{grid-column:1/-1}.labelrow{display:flex;justify-content:space-between;align-items:center;gap:12px}.modalback{position:fixed;inset:0;background:rgba(6,26,42,.65);z-index:10;display:flex;align-items:center;justify-content:center;padding:14px;overflow:auto}.modal{background:white;padding:24px;border-radius:15px;width:min(560px,98vw);max-height:95vh;overflow:auto}.message{position:fixed;right:20px;bottom:20px;background:#183b52;color:white;border-radius:12px;padding:13px 18px;max-width:390px;box-shadow:0 7px 28px #2224}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,#102638,#1b4e73)}.loginbox{background:white;border-radius:16px;padding:32px;width:min(430px,94vw)}.invoice{background:white;border:1px solid #d5e0e9;border-radius:10px;padding:18px}.invoice h2{letter-spacing:2px;color:#0c324e}.invoice .money{text-align:right;font-weight:700}.invoice-table{width:100%;border-collapse:collapse}.invoice-table td,.invoice-table th{padding:10px;border-bottom:1px solid #e8eef3;text-align:left}.invoice-table th:last-child,.invoice-table td:last-child{text-align:right}.invoice-total{font-size:23px;font-weight:800;text-align:right;margin-top:16px}.empty{color:#728398;padding:20px 0}.divider{border-top:1px solid #e3eaf1;margin:16px 0}.statusrow{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.right{text-align:right}.mobilemenu{display:none}@media(max-width:900px){.layout{grid-template-columns:180px 1fr}.main{padding:18px}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.layout{display:block}.side{padding:11px}.brand{font-size:17px;padding:4px 8px}.brand small,.sidefoot{display:none}.sidenav{display:flex;overflow:auto;gap:3px}.nav{font-size:12px;white-space:nowrap;padding:9px 10px;width:auto}.main{padding:16px}.top{align-items:flex-start}.top h1{font-size:22px}.twocol,.formgrid{grid-template-columns:1fr}.field.full{grid-column:auto}.surface{padding:14px}.stats{grid-template-columns:repeat(2,1fr)}.table th,.table td{padding:9px 7px}.modal{padding:18px}}@media print{.side,.top,.actions,.btn,.no-print,.note{display:none!important}.layout{display:block}.main{padding:0}.surface{border:0;box-shadow:none}.invoice{border:0}.twocol{display:block}.twocol>*:not(:last-child){display:none!important}}
