:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#172b3c;background:#f3f6f9}*{box-sizing:border-box}body{margin:0}header{height:76px;background:#102b3e;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 32px}.brand{display:flex;gap:14px;align-items:center}.brand span{font-size:35px}.brand b{font-size:18px;letter-spacing:.08em}.brand small{display:block;color:#96b7c8;font-size:10px;letter-spacing:.2em;margin-top:4px}.headright{font-size:13px;color:#d2e4ed}.pill{background:#23495b;border-radius:30px;padding:8px 12px;margin-left:18px}.layout{display:flex;min-height:calc(100vh - 76px)}aside{width:240px;background:#fff;border-right:1px solid #e1e8ee;padding:24px 14px;flex-shrink:0}aside h4{color:#82929f;letter-spacing:.13em;font-size:11px;padding-left:12px}nav{display:grid;gap:5px;margin:15px 0 24px}button{cursor:pointer;border:1px solid #d5e0e7;border-radius:8px;background:white;color:#1d4054;padding:10px 13px;font-weight:650}button:hover{background:#eaf2f7}nav button{text-align:left;border:0;padding:13px 14px}nav button.active{background:#dceef5;color:#086a89}.primary{background:#087b9c;color:white;border-color:#087b9c}.primary:hover{background:#056480}.danger{color:#af3341;border-color:#f2c6cb}.subtle{background:#f4f8fb}.full{width:100%;margin-bottom:12px}.hint{font-size:12px;line-height:1.65;color:#81919d;margin-top:24px}hr{border:0;border-top:1px solid #e9eff3;margin:18px 0}main{flex:1;min-width:0;padding:34px;max-width:1700px}.heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:25px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:.14em;color:#0981a2}h1{font-size:29px;margin:6px 0}h2{font-size:20px}h3{font-size:17px}p{color:#738493;margin:5px 0}.actions{display:flex;gap:8px;flex-wrap:wrap}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.jobcard,.metric,.bottom{background:white;border:1px solid #e1e8ed;border-radius:12px;padding:20px}.jobcard{cursor:pointer}.jobcard:hover{border-color:#1684a5;box-shadow:0 4px 18px #b5cdd333}.jobcard b{font-size:18px}.jobcard .tag{font-size:11px;color:#1283a0;margin-top:20px}.metrics{display:grid;grid-template-columns:repeat(6,minmax(125px,1fr));gap:12px;margin-bottom:20px}.metric{padding:16px}.metric small{color:#7d909b;display:block;margin-bottom:10px;font-size:12px}.metric strong{font-size:20px}.tablewrap{background:white;border:1px solid #e1e8ed;border-radius:12px;overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:13px}th{text-align:left;background:#f8fafc;color:#667c89;font-size:11px;letter-spacing:.04em}td,th{padding:14px;border-bottom:1px solid #edf1f4}td .muted{display:block;font-size:11px;color:#7c919f;margin-top:3px}td button{padding:6px 9px;font-size:11px}.bottom{margin-top:20px}.warning{padding:12px;background:#fff8e9;border-left:3px solid #d9a13b;margin:8px 0;border-radius:5px;font-size:13px}.good{padding:12px;background:#e9f8ef;border-radius:6px;color:#24794a;font-size:13px}dialog{width:min(560px,95vw);border:0;border-radius:14px;padding:0;box-shadow:0 20px 70px #112b3f55}dialog::backdrop{background:#112a3d88}dialog form{padding:24px}.modhead,.modfoot{display:flex;justify-content:space-between;align-items:center;gap:12px}.modfoot{justify-content:flex-end;margin-top:24px}.x{border:0;font-size:19px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fields label{font-size:12px;font-weight:700;color:#607887}.fields input,.fields select{display:block;width:100%;margin-top:6px;border:1px solid #cbd9e2;border-radius:7px;padding:11px;font:inherit;color:#172b3c}.wide{grid-column:1/-1}.help{font-size:12px;color:#687e8b;line-height:1.5;margin:10px 0}.rowlist{border:1px solid #e2eaf0;border-radius:8px;padding:12px;margin-top:8px;display:flex;justify-content:space-between;align-items:center;gap:12px}.link{color:#0780a4;text-decoration:underline;cursor:pointer}@media(max-width:1000px){.metrics{grid-template-columns:repeat(3,1fr)}aside{width:190px}main{padding:20px}}@media(max-width:650px){.layout{display:block}aside{width:100%}nav{display:flex;overflow:auto}main{padding:16px}.heading{display:block}.metrics{grid-template-columns:repeat(2,1fr)}}

.brand-logo{height:59px;width:126px;object-fit:contain;background:#fff;border-radius:7px;padding:3px}.brand{gap:12px}@media(max-width:650px){header{padding:8px 12px;gap:10px}.brand-logo{height:49px;width:102px}.brand b{font-size:13px}.headright{font-size:10px}.pill{margin-left:5px;padding:5px}}
#quotepanel{background:#fff;border:1px solid #e1e8ed;border-radius:12px;padding:22px}#quotepanel .quote-head{display:flex;justify-content:space-between;align-items:center;gap:12px}#quotepanel .quote-actions{display:flex;gap:10px;margin:16px 0}#quote-review{margin-top:24px}#quote-review .tablewrap{margin:12px 0}#quote-review table{min-width:1050px}#quote-review select{max-width:220px;padding:7px;border:1px solid #cbd9e2;border-radius:5px}#quote-review input[type=checkbox]{width:17px;height:17px}#quote-review td{white-space:normal;min-width:70px}#quote-review .qwarn{color:#a35414;display:block;font-size:11px}#quote-review button{margin-right:8px}#modal textarea,#modal select,#modal input{display:block;width:100%;padding:10px;border:1px solid #cbd9e2;border-radius:6px;margin:7px 0 13px;font:inherit}#modal label{display:block;font-size:13px;font-weight:650}

#costpanel,#crewmanager{margin-top:22px;padding:18px;border:1px solid #d8e0e8;border-radius:12px;background:white}#costpanel h3{margin-top:24px}.costrow{padding:12px;border-bottom:1px solid #e5ebf1}.costsub{margin:8px 0 0 18px;padding:7px;background:#f4f7fb}.costfield{display:block;margin:12px 0}.costfield input,.costfield select{display:block;width:100%;padding:10px;border:1px solid #aebdca;border-radius:6px}#costdialog{width:min(500px,95vw);border:0;border-radius:12px;padding:24px}#costdialog::backdrop{background:#10223688}

.costnav{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.costnav button{padding:10px 16px}.costpohead{margin-bottom:10px}.costsub{padding:12px;margin:8px 0 8px 15px;border-left:3px solid #5c91b8;background:rgba(130,155,175,.08);line-height:1.8}.costsub button{margin:4px 5px 0 0}#costoutstanding{margin:16px 0;padding:12px;border:1px solid #d7dfe5;border-radius:8px}#costoutstanding h4{margin:0 0 8px}

.costcompare{overflow-x:auto}.costcompare table{width:100%;border-collapse:collapse}.costcompare th,.costcompare td{padding:9px;border-bottom:1px solid #ccd4df;text-align:left;vertical-align:top}.costpohead{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.costpohead button{white-space:nowrap}.costpohead .danger{color:#a12222;border-color:#a12222}
