/* ===== Procurement-app look (matches elev8-procurement-control v54 theme) =====
   Screen UI only. The client proposal pages (#proposal .document) keep their own print design. */
:root{
  --ink:#12223f;--ink2:#1b3664;--cyan:#20a3de;--cyan-dk:#1180b0;--cyan-tint:#e8f5fc;
  --bg:#edf1f6;--panel:#fff;--soft:#f5f8fb;--text:#14213b;--muted:#5b6a80;--line:#d9e1eb;
  --shadow:0 1px 2px rgba(18,34,63,.06),0 6px 18px rgba(18,34,63,.05);
  --ui:"IBM Plex Sans",Inter,"Segoe UI",Arial,sans-serif;
  font-family:var(--ui);color:var(--text);background:var(--bg)
}
html,body,button,input,select,textarea{font-family:var(--ui)}
body{background:var(--bg);color:var(--text);font-feature-settings:"tnum" 1,"lnum" 1;-webkit-font-smoothing:antialiased;padding:18px 22px 30px}
:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
*{scrollbar-width:thin;scrollbar-color:#b7c4d6 transparent}

/* command bar (replaces the old logo header) */
.topbar{background:var(--ink);border:1px solid #0b1830;border-radius:14px;padding:14px 18px;margin:0 0 12px;box-shadow:0 1px 2px rgba(18,34,63,.2);display:flex;align-items:center;justify-content:flex-start;gap:12px;flex-wrap:wrap}
.topbar h1{margin:0;font-size:21px;font-weight:600;letter-spacing:-.01em;color:#fff;white-space:nowrap}
.topbar .tag{font-size:11.5px;font-weight:600;letter-spacing:.02em;color:#e8eefb;border:1px solid rgba(255,255,255,.28);border-radius:8px;padding:5px 9px;background:rgba(255,255,255,.06)}

/* tender bar (library / new / copy / save status) */
#cloud-bar{max-width:none;margin:0 0 12px;padding:12px 16px;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
#cloud-bar .cb-label{font-size:12.5px;letter-spacing:0;text-transform:none;font-weight:500;color:var(--muted)}
#cloud-bar strong{font-size:16px;font-weight:600;color:var(--ink)}
.cb-status{font-size:12.5px;color:var(--muted)}

/* main panel with section tabs */
.shell{max-width:none;margin:0;border:1px solid var(--line);border-top:3px solid var(--ink2);border-radius:14px;box-shadow:var(--shadow)}
.tabs{border-bottom:1px solid var(--line);background:#fff;padding:0 8px}
.tabs button{padding:14px 16px;font-size:13.5px;font-weight:500;color:var(--muted);border-bottom:2px solid transparent;background:transparent}
.tabs button:hover{color:var(--ink2)}
.tabs button.active{color:var(--ink);font-weight:600;border-bottom-color:var(--cyan)}
.panel{padding:18px 18px 22px}
h1{font-size:21px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}
h2{font-size:17px;font-weight:600;color:var(--ink)}
h3{font-weight:600;color:var(--ink)}
.muted,.help{color:var(--muted)}
.help{font-size:12px}

/* buttons */
.btn{border:1px solid var(--line);background:#fff;color:var(--ink2);border-radius:8px;padding:7px 11px;font-size:12.5px;font-weight:500;line-height:1.2;white-space:nowrap}
.btn:hover:not(:disabled){border-color:var(--cyan);color:var(--cyan-dk);background:var(--cyan-tint)}
.btn.primary{background:var(--ink2);border-color:var(--ink2);color:#fff;font-weight:600}
.btn.primary:hover:not(:disabled){background:var(--ink);border-color:var(--ink);color:#fff}
.btn.warn{color:#b0392f}
.btn.warn:hover:not(:disabled){border-color:#e7b8b2;background:#fbe9e7;color:#b0392f}

/* form fields */
.field label{font-size:12.5px;text-transform:none;letter-spacing:0;font-weight:500;color:var(--muted)}
.field input,.field textarea,.field select,.drawing-card .field select,.drawing-card .field textarea,.cl-search{border:1px solid var(--line);border-radius:9px;padding:9px 11px;font-size:13.5px;color:var(--text);background:#fff}
.field input:focus,.field textarea:focus,.field select:focus,.cl-search:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px rgba(32,163,222,.18)}

/* KPI ledger strip */
.kpis{gap:0;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}
.kpi{border:0;border-right:1px solid var(--line);border-radius:0;padding:14px 18px}
.kpi:last-child{border-right:0}
.kpi small{font-size:12.5px;font-weight:500;color:var(--muted);margin-bottom:4px}
.kpi strong{font-size:22px;font-weight:600;letter-spacing:-.02em;color:var(--ink)}
.import-kpis>div{border-color:var(--line);border-radius:10px}
.import-kpis strong{font-weight:600;color:var(--ink)}
.import-kpis small{font-size:12px;color:var(--muted)}

/* cards and notes */
.box,.choice-card,.work,.drawing-card,.internal-cost details{border:1px solid var(--line);border-radius:12px}
.choice-card{background:var(--soft)}
.choice-card h3{color:var(--ink)}
.alert{background:var(--soft);border-left:3px solid var(--cyan);color:var(--muted);font-size:12px;border-radius:0 8px 8px 0}
.pill{border-color:var(--line);color:var(--ink2);font-weight:600;font-size:11.5px}
.placeholder{border-color:#c3cfdd;background:var(--soft);color:var(--muted);border-radius:10px}
.scope-edit-group summary,.internal-cost summary{color:var(--ink);font-weight:600}

/* BOQ editor work sections and tables (app tables only, not proposal pages) */
.workhead{background:#eaf1f8;color:var(--ink2)}
.workhead>div:first-child{flex:1 1 360px;min-width:0}
.workhead input{font-weight:600;color:var(--ink);max-width:none;width:100%}
.workhead input:focus{border-color:var(--cyan);border-radius:7px}
table{font-size:13px}
.work th,.internal-cost th,.cost-table th{background:#f2f5f9;color:#41536e;font-size:12px;font-weight:600;letter-spacing:0;padding:10px 10px;border-bottom:1px solid var(--line);border-right:1px solid #e6ebf2}
.work td,.cost-table td{border-top:0;border-bottom:1px solid #e9eef4;border-right:1px solid #eff3f7}
.work tbody tr:hover td{background:#f3f9fd}
td input,td select{color:var(--text);border-radius:7px}
td input:focus,td select:focus{border-color:var(--cyan);background:#fff;box-shadow:0 0 0 3px rgba(32,163,222,.2)}
.cost-cell{border-color:var(--line);border-radius:7px}
.subtot{background:var(--soft);font-weight:600;color:var(--ink)}
.sumrow.grand{color:var(--ink2);font-weight:600}

/* library, lock and toast */
.cl-card,.cloud-lock-card{border-radius:14px}
.cl-row.cur{background:var(--cyan-tint)}
#cloud-lock{background:rgba(18,34,63,.62)}
.cloud-lock-card h2{color:var(--ink);margin-top:0}
#cloud-toast{background:var(--ink)}

.footer{color:var(--muted);font-size:11.5px;padding:14px 0 0}

@media(max-width:650px){body{padding:10px 8px 20px}.topbar{padding:12px 14px}.topbar h1{font-size:18px}.kpi{padding:10px 12px}.kpi strong{font-size:18px}}
@media print{body{padding:0;background:#fff}}

/* hidden BOQ lines (counted in totals, not listed in the client proposal) */
.row-hidden td{background:#f6f7f9}
.row-hidden td input,.row-hidden td select{color:#7d8ba1}
.show-cell{text-align:center;white-space:nowrap}
.show-cell input{width:auto}
.hid-badge{display:inline-block;margin-left:6px;font-size:10.5px;font-weight:600;color:#7d5a12;background:#fff3d6;border:1px solid #f0dca6;border-radius:6px;padding:1px 6px}

.blocker-groups{margin:8px 0 6px;padding-left:18px}
.blocker-groups li{margin:4px 0;font-size:12.5px;color:#5b1d1d}
.print-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.print-why{color:#b0392f;max-width:300px;text-align:right}
.print-blockers{margin:0 0 12px}
.alert.proposal-blocked{border-left:3px solid #b0392f;background:#fdf1ef;color:#792e23}
.alert.proposal-blocked strong{color:#792e23}
/* let the proposal preview stay pinned while the editor scrolls */
.shell{overflow:clip}
.scope-editor .scope-edit-group summary{font-size:13.5px}
