:root{color:#1d2430;background:#f4f6f5;--brand-teal: #0f766e;--brand-teal-strong: #0f5f5b;--brand-teal-border: rgba(15, 118, 110, .34);--brand-teal-border-soft: rgba(15, 118, 110, .18);--brand-teal-wash: #eef8f5;--brand-teal-wash-strong: #e4f3ef;--brand-heading-font: "Arial Black", "Segoe UI", Inter, ui-sans-serif, system-ui, sans-serif;--control-height: 40px;--control-radius: 8px;--control-font-size: .88rem;--control-padding-x: 12px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f4f6f5}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}.loading-shell{min-height:100vh;display:grid;place-items:center;gap:12px;color:#17615b}.login-shell{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top left,rgba(15,118,110,.12),transparent 32rem),#f4f6f5;padding:24px}.login-card{width:min(440px,100%);display:grid;gap:16px;border:1px solid var(--brand-teal-border-soft);border-left:4px solid var(--brand-teal);border-radius:10px;background:#fff;box-shadow:0 18px 48px #0f172a1f;padding:24px}.login-logo{width:min(320px,100%);max-width:100%;display:block}.login-card h1{margin:4px 0 0;color:#102a2a;font-size:1.35rem}.login-form{display:grid;gap:12px}.password-setup-card .secondary-action{justify-self:start}.password-input-control{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:center;border:1px solid #cbd5d1;border-radius:7px;background:#fff;overflow:hidden}.password-input-control:focus-within{border-color:var(--brand-teal);box-shadow:0 0 0 2px #0f766e1f}.password-input-control input{min-width:0;border:0;border-radius:0;box-shadow:none}.password-input-control .icon-action{width:40px;height:40px;border:0;border-left:1px solid #dbe5e1;border-radius:0;background:#eff7f4;color:var(--brand-teal-dark)}.password-input-control .icon-action svg{width:18px;height:18px}.login-error{margin:0;border:1px solid #fecaca;border-radius:8px;background:#fef2f2;color:#991b1b;padding:9px 10px;font-size:.88rem}.app-shell{min-height:100vh;display:grid;grid-template-columns:264px minmax(0,1fr);transition:grid-template-columns .18s ease}.app-shell.sidebar-is-collapsed{grid-template-columns:76px minmax(0,1fr)}.sidebar{background:#fff;border-right:1px solid #dce3df;padding:24px 18px;display:flex;flex-direction:column;gap:28px;position:sticky;top:0;height:100vh}.brand-block{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:70px}.brand-logo{width:58px;max-width:100%;max-height:58px;display:block;object-fit:contain}.loading-shell svg{width:24px;height:24px}.brand-block p,.brand-block strong,.metric span,.metric small,.eyebrow,.detail-list dt,.detail-list dd,.template-item span,.template-item small,.legacy-item span,.legacy-item small,.helper-text{margin:0}.brand-block p{color:#68727d;font-size:.84rem}.brand-block strong{display:block;color:#111827;font-size:1.02rem}.nav-list,.record-list,.segmented-list,.template-list,.bid-lines,.total-stack{display:grid;gap:10px}.contact-link{color:#087f79;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;overflow-wrap:anywhere}.contact-link:hover,.contact-link:focus-visible{color:#075f5b}.form-field.has-error input{border-color:#b42318}.field-error{color:#9b1c1c;font-size:.76rem;line-height:1.25}.nav-list-secondary{margin-top:auto;padding-top:14px;border-top:1px solid #dce8e4}.nav-button{width:100%;min-height:44px;border:0;border-radius:8px;background:transparent;color:#46515e;display:flex;align-items:center;gap:12px;padding:0 12px;text-align:left}.nav-button:hover,.nav-button.is-active{color:var(--brand-teal-strong);background:#e9f4f1}.nav-button svg,.environment-note svg,.primary-small svg,.primary-action svg,.secondary-action svg,.danger-action svg,.line-actions svg{width:18px;height:18px;flex:0 0 auto}.environment-note{margin-top:0;min-height:40px;display:flex;align-items:center;gap:10px;color:#7a4b0b;background:#fff4db;border:1px solid #f1d18a;border-radius:8px;padding:0 12px;font-size:.88rem}.workspace{padding:34px 26px 26px;display:grid;gap:20px;align-content:start}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar-actions{width:min(760px,100%);display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px}.app-topbar{min-height:48px;align-items:flex-start}.workspace-heading{display:grid;gap:5px;align-content:start;padding-top:2px}.workspace-wordmark{width:min(170px,42vw);max-height:18px;display:block;object-fit:contain;object-position:left center}.page-title{margin:0;color:var(--brand-teal-strong);font-family:var(--brand-heading-font);font-size:clamp(1.55rem,2.8vw,2.25rem);font-weight:900;line-height:1;letter-spacing:0}.workspace-description{max-width:760px;margin:0;color:#5f6f7b;font-size:.86rem;line-height:1.35}.app-topbar-actions{width:auto;display:flex;justify-content:flex-end}.bid-tab-stack,.projects-shell,.suppliers-workspace{display:grid;gap:14px}.projects-lifecycle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.sidebar-toggle{min-height:38px;border:1px solid #dce3df;border-radius:8px;background:#fff;color:#65716f;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 10px}.sidebar-toggle:hover{border-color:var(--brand-teal);color:var(--brand-teal-strong);background:var(--brand-teal-wash)}.sidebar-toggle svg{width:17px;height:17px;flex:0 0 auto}.sidebar-is-collapsed .sidebar{padding-inline:12px;gap:18px}.sidebar-is-collapsed .brand-block{min-height:48px}.sidebar-is-collapsed .brand-logo{width:42px;max-height:42px}.sidebar-is-collapsed .brand-wordmark,.sidebar-is-collapsed .nav-button span,.sidebar-is-collapsed .environment-note span,.sidebar-is-collapsed .sidebar-toggle span{display:none}.sidebar-is-collapsed .nav-button,.sidebar-is-collapsed .environment-note{justify-content:center;padding-inline:0}.auth-user-chip{display:flex;align-items:center;gap:6px;min-height:34px;border:1px solid var(--brand-teal-border-soft);border-radius:8px;background:#fff;padding:3px 3px 3px 9px}.auth-user-chip span{max-width:220px;overflow:hidden;color:#46515e;font-size:.78rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.auth-user-chip .secondary-action{min-height:28px;border-radius:7px;padding:0 9px;font-size:.82rem}.topbar-actions select,.section-heading select{min-height:40px;border:1px solid #cbd6d1;border-radius:8px;background:#fff;color:#1f2937;padding:0 10px}.eyebrow{color:#60707f;font-size:.78rem;text-transform:uppercase;letter-spacing:0;font-weight:700}h1{margin:4px 0 0;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.04;color:#111827}h2{margin:0;color:#111827}.search-box{width:min(440px,100%);height:44px;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid #ccd6d2;border-radius:8px;background:#fff}.search-box svg{width:18px;height:18px;color:#52616f}.search-box input{width:100%;border:0;outline:0;color:#1f2937}.metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.metric,.panel,.metric-card{background:#fff;border:1px solid #dce3df;border-radius:8px}.metric{min-height:92px;padding:12px;display:grid;gap:4px;align-content:center}.metric span{color:#66717e;font-size:.82rem}.metric strong{color:#121821;font-size:1.22rem;line-height:1.1}.metric small{color:#7a4b0b;font-size:.82rem}.content-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.8fr);gap:18px;align-items:start}.bid-layout{grid-template-columns:minmax(260px,.55fr) minmax(0,1.35fr) minmax(280px,.55fr)}.terms-layout{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr)}.settings-layout{grid-template-columns:minmax(0,.8fr) minmax(360px,1fr)}.panel{min-width:0;padding:14px;border-color:var(--brand-teal-border-soft);border-left:4px solid var(--brand-teal);background:#fbfcfb}.bid-builder-panel{padding:14px}.wide-panel{min-height:440px}.panel-inner{min-width:0;display:grid;gap:14px}.panel-heading,.split-heading,.modal-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-4px -4px 12px -10px;padding:7px 10px 8px;border-bottom:1px solid var(--brand-teal-border-soft);border-radius:6px;background:linear-gradient(90deg,var(--brand-teal-wash),rgba(255,255,255,0))}.panel-heading>div:first-child{display:flex;align-items:center;gap:10px}.panel-heading svg{width:20px;height:20px;color:var(--brand-teal)}.panel-heading h2{font-size:1rem}.heading-actions,.button-row,.action-row,.line-actions,.inline-action-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.workspace-control-row,.section-status-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.workspace-control-row{padding-bottom:10px;border-bottom:1px solid var(--brand-teal-border-soft)}.section-status-row{color:#5f6f7b;font-size:.86rem}.mode-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.section-inline-status{margin:0;color:#5f6f7b;font-size:.86rem;line-height:1.35}.heading-actions>span,.record-title span{color:#4c5a67;background:#eef2f1;border-radius:999px;padding:6px 10px;font-size:.8rem;white-space:nowrap}.primary-small,.secondary-action,.danger-action,.primary-action{border:0;border-radius:var(--control-radius);min-height:var(--control-height);padding:0 var(--control-padding-x);display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:var(--control-font-size);font-weight:700;line-height:1;white-space:nowrap}.primary-small,.primary-action{background:var(--brand-teal);color:#fff}.secondary-action{color:#24313d;background:#edf2f0}.danger-action{color:#8a2418;background:#ffe4df}.primary-action{width:100%;min-height:46px;margin-top:14px}.full-width{width:100%;margin-bottom:14px}.supplier-table{display:grid;gap:8px}.table-row{display:grid;gap:12px;align-items:center;min-height:50px;border:1px solid #e2e8e5;border-radius:8px;padding:0 12px;background:#fff;color:#2c3642;text-align:left}.supplier-row{grid-template-columns:1.15fr .75fr .85fr .75fr .55fr}.table-head{min-height:34px;border:0;background:#f5f7f6;color:#65717d;font-size:.78rem;font-weight:700}button.table-row:hover,button.table-row.is-selected,.lookup-row.is-selected,.record-button:hover,.record-button.is-selected{border-color:var(--brand-teal);background:#f3fbf8}.record-button{min-height:62px;border:1px solid #e2e8e5;border-radius:8px;background:#fff;color:#263241;padding:12px;display:grid;gap:4px;text-align:left}.record-button span,.split-heading p,.line-item span,.line-item small,.helper-text{color:#63707d;font-size:.84rem}.north-yard-note,.mix-future-note{margin:10px 0 0}.mix-scm-toggles{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px 14px;max-width:520px}.mix-scm-toggles .check-field{min-height:32px;padding:0 2px;white-space:nowrap}.mix-designs-tab{gap:10px}.mix-card{overflow:hidden}.mix-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.mix-header-fields{display:grid;grid-template-columns:minmax(100px,.55fr) minmax(160px,1fr) minmax(160px,1fr) minmax(90px,.45fr);gap:10px}.mix-subsection{display:grid;gap:10px;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;padding:10px}.mix-subsection .section-card-header{margin:-4px -4px 0 -8px}.mix-recipe-table{display:grid;gap:6px;overflow-x:auto}.mix-recipe-row{display:grid;grid-template-columns:minmax(110px,.65fr) minmax(180px,1fr) minmax(110px,.55fr) minmax(80px,.4fr);gap:8px;align-items:center;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;padding:8px}.mix-recipe-head{min-height:30px;background:var(--brand-teal-wash);border-left-color:var(--brand-teal);color:#65717d;font-size:.78rem;font-weight:800}.mix-recipe-row>span:first-child{color:#0f5f5b;font-weight:800}.mix-recipe-row .compact-field{min-width:0}.mix-recipe-row:not(.mix-recipe-head) .compact-field span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.general-info-tab{gap:10px}.general-info-section{overflow:hidden}.general-status-row{display:grid;grid-template-columns:repeat(3,minmax(130px,.45fr)) minmax(240px,1fr);gap:8px;align-items:center}.general-status-row .helper-text{border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;padding:7px 9px}.status-pill{width:fit-content;border-radius:999px;padding:5px 8px;font-size:.75rem;font-weight:700;color:#274c77;background:#e3eefb}.status-pill-success{color:#0f766e;background:#ccfbf1}.status-pill-warning{color:#8a4b08;background:#fef3c7}.preferred,.active,.awarded{color:#075e54;background:#dff5ee}.needs-review,.draft,.pricing{color:#7a4b0b;background:#fff4db}.archived,.inactive,.lost{color:#6b2f2a;background:#ffe4df}.submitted,.qualified{color:#274c77;background:#e3eefb}.supplier-detail,.detail-list,.offering-list{display:grid;gap:14px}.supplier-title{display:grid;gap:5px}.supplier-title strong{font-size:1.35rem;line-height:1.15}.supplier-title span{color:#566372}.detail-list{margin:0}.detail-list div{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #edf1ef;padding-bottom:10px}.detail-list dt{color:#677381}.detail-list dd{color:#1f2937;text-align:right;overflow-wrap:anywhere}.notes{margin:0;color:#384554;line-height:1.5;background:#f8faf9;border-left:3px solid var(--brand-teal);padding:12px}.project-header{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.project-header div,.record-form .project-header div{background:#f8faf9;border:1px solid #e1e7e4;border-radius:8px;padding:12px;display:grid;gap:5px}.project-header span{color:#63707d;font-size:.82rem}.bid-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px;border-bottom:1px solid #dce3df;padding-bottom:12px}.tab-button{min-height:var(--control-height);border:1px solid #d6dfdb;border-radius:var(--control-radius);background:#fff;color:#435060;padding:0 var(--control-padding-x);font-size:var(--control-font-size);font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.mode-tabs .tab-button{margin:0}.tab-button:hover{border-color:var(--brand-teal-border);background:#f5fbf9}.tab-button.is-active{color:var(--brand-teal-strong);border-color:var(--brand-teal);background:#e9f4f1}.tab-button:disabled{color:#8b949e;background:#f3f4f4}.bid-builder-local-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:10px 12px;border:1px solid var(--brand-teal-border-soft);border-left:4px solid var(--brand-teal);border-radius:8px;background:linear-gradient(90deg,var(--brand-teal-wash),#ffffff)}.bid-builder-local-header h2{margin:2px 0 0;font-size:1.2rem}.bid-manager-actions{justify-content:flex-end;align-items:center}.bid-manager-status-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px}.bid-manager-status-row .helper-text{margin:0}.bid-load-error{margin:0 0 10px}.project-manager-button{border:1px solid var(--brand-teal-border);color:var(--brand-teal-strong);background:var(--brand-teal-wash)}.project-manager-backdrop{background:#0f172a3d}.project-manager-drawer{position:fixed;z-index:30;top:18px;right:18px;bottom:18px;width:min(920px,calc(100vw - 36px));min-height:0;overflow-y:auto;border:1px solid var(--brand-teal-border-soft);border-left:4px solid var(--brand-teal);border-radius:10px;background:#fff;box-shadow:0 24px 72px #0f172a3d;padding:14px}.bid-builder-context{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:6px;color:#596674;font-size:.82rem;font-weight:700}.primary-small:hover,.secondary-action:hover,.danger-action:hover,.primary-action:hover{filter:brightness(.98)}.primary-small:focus-visible,.secondary-action:focus-visible,.danger-action:focus-visible,.primary-action:focus-visible,.tab-button:focus-visible,.nav-button:focus-visible{outline:3px solid rgba(15,118,110,.22);outline-offset:2px}.bid-builder-summary-strip{margin-bottom:14px}.bid-builder-summary-strip .metric{min-height:74px;padding:10px}.projects-workspace{display:grid;gap:12px}.projects-header .primary-small{width:auto}.projects-filter-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(130px,170px) minmax(130px,170px) minmax(150px,190px);gap:10px;align-items:end}.projects-search{width:100%;height:38px}.compact-project-field{min-width:0}.compact-project-field select{min-height:38px}.projects-results{display:grid;gap:8px}.project-result-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--brand-teal-border-soft);border-left:3px solid #d6e5de;border-radius:8px;background:#fff;padding:9px}.project-result-row.is-active{border-left-color:var(--brand-teal);background:#f6fbf9}.project-result-main{min-width:0;border:0;background:transparent;color:inherit;text-align:left;padding:0;cursor:pointer}.project-result-title{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:6px}.project-result-title strong{color:#111827;font-size:.98rem}.project-result-meta{display:flex;flex-wrap:wrap;gap:6px 14px;color:#566474;font-size:.82rem}.project-result-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px}.projects-helper{padding-top:2px}.bid-empty-state{display:grid;gap:10px}.bid-empty-actions{justify-content:center}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-2px 0 12px;padding:7px 10px;border-bottom:1px solid var(--brand-teal-border-soft);border-radius:6px;background:linear-gradient(90deg,var(--brand-teal-wash),rgba(255,255,255,0))}.panel-controls-row{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-bottom:10px}.files-controls-row{justify-content:space-between}.files-controls-row .helper-text{max-width:760px}.section-heading h2{font-size:1rem}.tab-stack,.detail-stack,.quote-row-section{display:grid;gap:10px}.quote-output-page{display:grid;gap:12px}.quote-editor{min-width:0}.quote-option-row{display:flex;flex-wrap:wrap;gap:10px}.quote-export-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.quote-export-message{margin:0;border:1px solid #f1d18a;border-radius:8px;background:#fff8e8;color:#5c4212;padding:8px 10px;font-size:.86rem}.quote-editor-section,.quote-table-section{border-color:var(--brand-teal-border-soft);border-left-color:var(--brand-teal);background:#fbfcfb}.quote-table-section{gap:0;padding:0;overflow:hidden}.quote-editor-header,.quote-table-section .section-card-header{min-height:36px;margin:0;border:0;border-bottom:1px solid var(--brand-teal-border-soft);border-radius:0;background:linear-gradient(90deg,var(--brand-teal-wash),rgba(255,255,255,.82));color:#102a2a;padding:7px 10px}.quote-editor-header h2,.quote-table-section .section-card-header h2{color:#102a2a;font-size:.95rem;letter-spacing:0}.quote-table-section .primary-small{min-height:28px;border:1px solid var(--brand-teal-border);background:var(--brand-teal);color:#fff;padding:0 10px}.quote-editor-table,.quote-edit-table{display:grid;overflow-x:auto;border-top:1px solid var(--brand-teal-border-soft);background:#fff}.quote-editor-row,.quote-edit-row{display:grid;align-items:stretch;gap:0;min-width:980px;border-bottom:1px solid #d7e5e1;background:#fff}.quote-edit-row:last-child{border-bottom:0}.quote-edit-row>*{min-width:0;min-height:32px;border-right:1px solid #d7e5e1;padding:3px 5px}.quote-edit-row>*:last-child{border-right:0}.quote-concrete-row{grid-template-columns:.65fr 1fr 1fr .58fr .58fr .72fr .34fr .55fr}.quote-charge-row{grid-template-columns:.55fr 1.05fr 1.25fr .45fr .5fr .34fr}.quote-mob-row{grid-template-columns:.9fr 1.1fr 1.1fr .55fr .34fr;min-width:760px}.quote-table-head{min-height:32px;background:var(--brand-teal-wash-strong);color:#23443f;font-size:.76rem;font-weight:800;text-transform:none}.quote-table-head>span{display:flex;align-items:center}.quote-row-included{background:#edf4f1}.quote-edit-row .form-field,.quote-edit-row .compact-field{display:flex;align-items:center;gap:0;padding:0;font-size:.8rem}.quote-edit-row .form-field>span,.quote-edit-row .compact-field>span,.quote-edit-row .check-field span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.quote-edit-row .form-field input,.quote-edit-row .compact-field input{min-height:28px;width:100%;border:0;border-radius:0;background:transparent;color:#111827;padding:3px 4px}.quote-edit-row .form-field input:focus,.quote-edit-row .compact-field input:focus{outline:2px solid var(--brand-teal-border);outline-offset:-2px;background:#f3fbf8}.quote-edit-row .check-field{justify-content:center;min-height:28px;padding:0}.quote-row-source{display:flex;align-items:center;color:#4b5563;font-size:.72rem;font-weight:700}.quote-concrete-row>:nth-child(4) input,.quote-concrete-row>:nth-child(5) input,.quote-concrete-row>:nth-child(6) input,.quote-charge-row>:nth-child(5) input,.quote-mob-row>:nth-child(4) input{text-align:right;font-weight:800;font-variant-numeric:tabular-nums}.quote-preview{width:min(100%,920px);margin:0 auto;border:1px solid #111827;border-radius:0;background:#fff;color:#111827;padding:20px 22px;box-shadow:0 16px 34px #0f172a14}.quote-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border-bottom:3px solid #111827;padding-bottom:8px}.quote-preview-header h1{margin:0;color:#111827;font-size:1.38rem;letter-spacing:0}.quote-preview-header p{margin:2px 0 0;color:#4b5563;font-size:.83rem}.quote-number-block{min-width:150px;border:1px solid #111827;padding:7px 9px;text-align:right}.quote-number-block span,.quote-info span{display:block;color:#6b7280;font-size:.72rem;font-weight:800;text-transform:uppercase}.quote-number-block strong,.quote-info strong{display:block;color:#111827;font-size:.95rem;overflow-wrap:anywhere;justify-content:flex-start;text-align:left}.quote-info-grid,.quote-acceptance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:10px 0 12px;border:1px solid #111827;border-bottom:0;border-right:0}.quote-info{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;min-height:26px;border-right:1px solid #111827;border-bottom:1px solid #111827;background:#fff;padding:0}.quote-info span,.quote-info strong{min-height:26px;display:flex;align-items:center;padding:3px 6px}.quote-info span{border-right:1px solid #111827;background:#f3f4f6}.quote-preview-section{margin-top:10px;break-inside:avoid}.quote-preview-section h2{margin:0;background:#b91c1c;color:#fff;border-left:0;padding:5px 8px;font-size:.9rem;text-transform:uppercase}.quote-section-note,.quote-reference-line{margin:0;color:#374151;font-size:.72rem;font-style:italic;line-height:1.3;border-left:1px solid #111827;border-right:1px solid #111827;padding:4px 6px}.quote-preview-table{display:grid;gap:0;border:1px solid #111827;border-bottom:0}.quote-preview-row{display:grid;grid-template-columns:.65fr 1fr 1fr .55fr .55fr .65fr;gap:0;border-bottom:1px solid #111827;padding:0;font-size:.76rem;line-height:1.25}.quote-preview-row>span,.quote-preview-row>strong{min-height:24px;border-right:1px solid #111827;padding:4px 5px;overflow-wrap:anywhere}.quote-preview-row>span:last-child,.quote-preview-row>strong:last-child{border-right:0}.quote-preview-five{grid-template-columns:.55fr 1.2fr 1.2fr .45fr .45fr}.quote-preview-four{grid-template-columns:.85fr 1.1fr 1.1fr .45fr}.quote-preview-head{background:#e5e7eb;color:#111827;font-weight:800;text-transform:none}.quote-preview-head>span{font-weight:800}.quote-preview-five>span:nth-child(3),.quote-preview-four>span:nth-child(3){font-size:.72rem;line-height:1.22}.quote-price-cell{text-align:right;font-weight:800;font-variant-numeric:tabular-nums}.quote-preview-page-two{break-before:page}.quote-terms-list{margin:0;border:1px solid #111827;border-top:0;padding:6px 10px 6px 24px;color:#1f2937;font-size:.76rem;line-height:1.35}.bid-section-grid{display:grid;gap:10px}.bid-builder-panel .tab-stack,.bid-builder-panel .bid-section-grid{gap:10px}.bid-builder-panel .section-heading{margin-bottom:10px}.bid-builder-panel .section-card,.bid-builder-panel .editable-card,.bid-builder-panel .bid-subsection,.bid-builder-panel .permit-row{border-color:var(--brand-teal-border-soft);border-left-color:var(--brand-teal)}.bid-builder-panel .form-field,.bid-builder-panel .compact-field{gap:4px;font-size:.78rem}.bid-builder-panel .form-field input,.bid-builder-panel .form-field select,.bid-builder-panel .form-field textarea,.bid-builder-panel .compact-field input,.bid-builder-panel .compact-field select{min-height:var(--control-height);padding:7px 9px}.bid-builder-panel .form-field textarea{min-height:74px}.compact-section-card,.accent-section{border:1px solid var(--brand-teal-border-soft);border-left:4px solid var(--brand-teal);background:#fff}.compact-section-header,.accent-section-header{background:linear-gradient(90deg,var(--brand-teal-wash),rgba(255,255,255,0));border-bottom:1px solid var(--brand-teal-border-soft)}.compact-section-card,.section-card{border:1px solid var(--brand-teal-border-soft);border-left:4px solid var(--brand-teal);border-radius:8px;background:#fbfcfb;padding:12px;display:grid;gap:10px}.compact-section-header,.section-card-header{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--brand-teal-border-soft);border-radius:6px;background:linear-gradient(90deg,var(--brand-teal-wash),rgba(255,255,255,0));margin:-4px -4px 0 -10px;padding:7px 10px 8px}.section-card-header h2{font-size:.96rem}.section-card-header p{margin:3px 0 0;color:#63707d;font-size:.84rem}.field-grid,.compact-input-grid{display:grid;gap:10px}.field-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.field-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.content-stack,.fuel-page{display:grid;gap:10px;min-width:0}.compact-form-grid{display:grid;gap:10px;align-items:end;justify-content:start;min-width:0}.summary-card{background:#f8fbfa}.summary-metric-grid,.summary-card-grid,.material-cost-summary,.summary-grid{display:grid;gap:10px}.summary-card-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.compact-summary-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compact-summary-row .metric,.summary-card-grid .metric{min-height:78px;padding:10px}.mix-header-row{align-items:center}.editable-card,.supplier-card,.offering-card{border:1px solid #e1e8e4;border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;padding:10px;display:grid;gap:8px}.offering-card{border-color:var(--brand-teal-border-soft);border-left-color:var(--brand-teal);background:#f8faf9}.offering-card>div:first-child{display:grid;gap:3px}.offering-list{display:grid;gap:8px}.offering-card>div:first-child span{color:#63707d;font-size:.84rem}.offering-form{border:1px solid var(--brand-teal-border-soft);border-left:4px solid var(--brand-teal);border-radius:8px;padding:14px;background:#fbfcfb}.card-summary,.derived-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #edf1ef;padding-top:12px}.derived-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:0;padding-top:0;margin-top:10px}.material-pricing-grid{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:18px}.filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.supplier-filter-bar,.lookup-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr)) auto;gap:10px;align-items:end;margin-bottom:14px}.supplier-filter-bar,.lookup-filter-grid,.record-form{border:1px solid var(--brand-teal-border-soft);border-radius:8px;background:#fff;padding:10px}.lookup-filter-grid{grid-template-columns:repeat(4,minmax(150px,1fr));align-items:end}.filter-clear{min-height:40px}.supplier-cards{display:grid;gap:10px;max-height:640px;overflow:auto;padding-right:4px}.supplier-card div:first-child{display:grid;gap:3px}.supplier-card p,.supplier-card small{margin:0;color:#4b5968;line-height:1.4}.lookup-panel{display:grid;gap:14px}.lookup-results{display:grid;gap:6px}.lookup-row{display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(120px,.55fr) minmax(150px,.65fr) minmax(150px,.7fr);gap:10px;align-items:start;border:1px solid #e1e8e4;border-radius:8px;background:#fff;padding:8px 9px;font-size:.88rem}.lookup-head{min-height:34px;background:var(--brand-teal-wash);color:#65717d;font-size:.78rem;font-weight:700}.lookup-actions{display:flex;flex-wrap:wrap;gap:6px;grid-column:1 / -1;justify-content:flex-end}.compact-action{min-height:var(--control-height);padding:0 var(--control-padding-x);font-size:var(--control-font-size)}.map-lookup-board{border:1px solid var(--brand-teal-border-soft);border-left:4px solid var(--brand-teal);border-radius:8px;background:#fbfcfb;padding:10px}.lookup-summary-bar{margin-top:8px}.lookup-row div{min-width:0;display:grid;gap:3px}.lookup-row span,.lookup-row small{color:#4b5968;overflow-wrap:anywhere}.lookup-row strong{color:#111827}.compact-note{max-height:1.35em;overflow:hidden}.lookup-actions{grid-column:1 / -1;display:flex!important;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px!important;border-top:1px solid #edf1ef;padding-top:8px}.lookup-actions .secondary-action,.lookup-actions .primary-small{width:auto}.material-pricing-compact{display:grid;gap:14px}.material-group{border:1px solid var(--brand-teal-border-soft);border-left:4px solid var(--brand-teal);border-radius:8px;background:#fff;overflow:hidden}.material-group-heading{border-left:0;background:linear-gradient(90deg,var(--brand-teal-wash-strong),#f7f9f8);border-bottom:1px solid var(--brand-teal-border-soft);padding:10px 12px}.material-group-heading h2{font-size:1rem}.material-group-heading .helper-text{margin:2px 0 0;padding:0}.material-group-cement .material-group-heading,.material-group-scm .material-group-heading,.material-group-aggregate .material-group-heading,.material-group-admix .material-group-heading,.material-group-water .material-group-heading{border-left-color:var(--brand-teal)}.material-group-body{display:grid;gap:8px;padding:10px}.material-pricing-note{border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal);border-radius:8px;background:var(--brand-teal-wash);margin:0;padding:8px 10px}.pricing-context-panel{border:1px solid var(--brand-teal-border-soft);border-left:4px solid var(--brand-teal);border-radius:8px;background:#fff;padding:12px;display:grid;gap:10px}.selected-mix-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.admix-recipe-list{display:grid;gap:8px}.admix-recipe-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(110px,.5fr) minmax(90px,.4fr) minmax(180px,1fr) auto;gap:8px;align-items:end;border:1px solid #e6ece9;border-radius:8px;padding:10px;background:#fbfcfb}.compact-grouped-row,.bid-subsection{display:grid;gap:10px;border:1px solid var(--brand-teal-border-soft);border-left:4px solid var(--brand-teal);border-radius:8px;background:#fff;padding:12px}.bid-subsection+.bid-subsection{margin-top:10px}.bid-subsection h2{font-size:.96rem;background:var(--brand-teal-wash);border-radius:6px;margin:-4px -4px 0 -8px;padding:7px 10px}.permit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.permit-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(120px,.55fr);gap:8px;align-items:end;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;padding:8px}.scm-toggle-row{display:flex;flex-wrap:wrap;gap:8px 18px;padding:4px 2px}.pricing-row{display:grid;grid-template-columns:minmax(120px,.6fr) minmax(220px,1.35fr) minmax(90px,.45fr) minmax(78px,.35fr) minmax(92px,.45fr) minmax(140px,.8fr) minmax(120px,.55fr) auto;gap:8px;align-items:end;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fbfcfb;padding:10px}.pricing-source-row{display:grid;gap:8px;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fbfcfb;padding:8px;overflow:hidden}.pricing-band{display:grid;gap:7px;align-items:end;border:1px solid #dfe9e5;border-radius:8px;background:#fff;padding:8px}.pricing-band-source{grid-template-columns:minmax(250px,1.45fr) minmax(120px,.72fr) minmax(120px,.72fr) minmax(120px,.72fr)}.pricing-band-cost{grid-template-columns:minmax(92px,.48fr) minmax(112px,.58fr) minmax(128px,.7fr) minmax(90px,.45fr)}.pricing-band-freight{grid-template-columns:repeat(4,minmax(78px,.48fr)) minmax(94px,.5fr) minmax(82px,.48fr) repeat(3,minmax(92px,.55fr))}.pricing-band-admin{grid-template-columns:minmax(128px,.55fr) minmax(260px,1fr) minmax(150px,.7fr) auto auto}.delivered-unit-field{border-color:var(--brand-teal-border);background:var(--brand-teal-wash)}.delivered-unit-field strong{color:#0f5f5b}.pricing-source-line{display:grid;gap:7px;align-items:end}.pricing-source-line-top{grid-template-columns:minmax(86px,.45fr) minmax(230px,1.4fr) minmax(120px,.7fr) minmax(120px,.75fr) minmax(120px,.75fr) minmax(86px,.45fr) minmax(86px,.45fr)}.pricing-source-line-trucking{grid-template-columns:repeat(7,minmax(82px,.58fr)) minmax(118px,.8fr) auto}.pricing-source-line-summary{grid-template-columns:minmax(84px,.55fr) minmax(96px,.62fr) minmax(96px,.62fr) minmax(122px,.72fr) minmax(220px,1.1fr) minmax(160px,1fr) auto}.pricing-source-line>strong{min-height:34px;display:flex;align-items:center;color:#111827;font-size:.86rem}.pricing-source-row .notes-field,.pricing-source-row .offering-select-field{min-width:0}.pricing-route-message{align-self:center;color:#7a4b0b}.material-needs-summary{border:1px solid var(--brand-teal-border-soft);border-left:4px solid var(--brand-teal);border-radius:8px;background:#fff;overflow:hidden}.material-needs-summary .helper-text{margin:2px 0 0;padding:0}.material-needs-table{display:grid;gap:6px;padding:10px;overflow-x:auto}.material-needs-row{display:grid;grid-template-columns:minmax(110px,.7fr) minmax(180px,1.1fr) minmax(95px,.55fr) minmax(70px,.4fr) minmax(120px,.7fr) minmax(65px,.35fr) minmax(190px,1.15fr);gap:8px;align-items:center;border:1px solid #e1e8e4;border-radius:8px;background:#fbfcfb;padding:8px 10px;color:#4b5968;font-size:.8rem}.material-needs-head{background:var(--brand-teal-wash);color:#52616f;font-weight:800}.material-needs-row strong{color:#111827}.material-needs-waste input{max-width:82px;min-height:30px;padding:5px 7px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.compact-route-action{min-height:34px;padding:0 9px;white-space:nowrap;justify-self:end}.pricing-band-admin .compact-route-action{grid-column:-2 / -1}.pricing-row-empty{grid-template-columns:minmax(120px,.6fr) minmax(0,1fr) auto;align-items:center}.compact-field{display:grid;gap:3px;font-size:.74rem;color:#52616f;font-weight:700}.compact-field input,.compact-field select{width:100%;min-height:30px;border:1px solid #cbd6d1;border-radius:8px;background:#fff;color:#1f2937;padding:5px 7px}.compact-field small{color:#8a2418;font-weight:600}.compact-number-unit-field{min-width:0}.compact-number-unit-control{display:grid;grid-template-columns:minmax(0,1fr) 52px;align-items:stretch;width:100%;min-height:30px;border:1px solid #cbd6d1;border-radius:8px;background:#fff;overflow:hidden}.compact-number-unit-control input,.compact-number-unit-control select{min-height:30px;border:0;border-radius:0;background:transparent;padding:5px 7px}.compact-number-unit-control select{color:#315d54;background:#edf6f2;border-left:1px solid #d6e5de;padding:5px 4px;font-weight:800}.job-costing-tab{gap:10px}.job-costing-section{overflow:hidden}.job-planning-output-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:8px}.job-mix-table{overflow-x:auto}.job-mix-row{display:grid;grid-template-columns:minmax(170px,1.2fr) minmax(70px,.45fr) repeat(6,minmax(92px,.6fr));gap:8px;align-items:center;border:1px solid #e1e8e4;border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;color:#2c3642;padding:8px 10px;font-size:.8rem}.job-mix-head{min-height:32px;background:var(--brand-teal-wash);border-left-color:var(--brand-teal);color:#65717d;font-weight:800}.job-mix-row span,.job-mix-row strong{min-width:0;overflow-wrap:anywhere}.equipment-tab{gap:10px}.equipment-section{overflow:hidden}.equipment-table{display:grid;gap:6px;overflow-x:auto}.equipment-row{display:grid;gap:7px;align-items:end;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;padding:8px}.support-equipment-table .equipment-row{grid-template-columns:minmax(170px,1.25fr) minmax(76px,.42fr) minmax(110px,.62fr) minmax(120px,.7fr) minmax(112px,.55fr)}.rental-equipment-table .equipment-row{grid-template-columns:minmax(160px,1.2fr) minmax(70px,.42fr) minmax(112px,.62fr) minmax(106px,.58fr) minmax(116px,.68fr) minmax(100px,.56fr) minmax(112px,.55fr)}.equipment-head{min-height:30px;background:var(--brand-teal-wash);border-left-color:var(--brand-teal);color:#65717d;font-size:.78rem;font-weight:800;align-items:center}.equipment-row .form-field,.equipment-row .compact-field,.equipment-row .check-field{min-width:0}.equipment-row:not(.equipment-head) .form-field span,.equipment-row:not(.equipment-head) .compact-field span,.equipment-row:not(.equipment-head) .check-field span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.equipment-row:not(.equipment-head) .check-field{justify-content:center}.personnel-tab{gap:10px}.personnel-section{overflow:hidden}.personnel-role-table{display:grid;gap:6px;overflow-x:auto}.personnel-role-row{display:grid;gap:7px;align-items:end;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;padding:8px}.personnel-role-table.is-simple .personnel-role-row{grid-template-columns:minmax(180px,1.35fr) minmax(90px,.45fr) minmax(118px,.55fr)}.personnel-role-table.is-detailed .personnel-role-row{grid-template-columns:minmax(180px,1.25fr) minmax(90px,.45fr) minmax(130px,.65fr) minmax(118px,.55fr)}.personnel-role-head{min-height:30px;background:var(--brand-teal-wash);border-left-color:var(--brand-teal);color:#65717d;font-size:.78rem;font-weight:800;align-items:center}.personnel-role-row .form-field,.personnel-role-row .compact-field,.personnel-role-row .check-field{min-width:0}.personnel-role-row:not(.personnel-role-head) .form-field span,.personnel-role-row:not(.personnel-role-head) .compact-field span,.personnel-role-row:not(.personnel-role-head) .check-field span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.personnel-role-row:not(.personnel-role-head) .check-field{justify-content:center}.permitting-tab{gap:10px}.permitting-section{overflow:hidden}.permit-table{display:grid;gap:6px;overflow-x:auto}.permit-table-row{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(100px,.45fr) minmax(130px,.65fr);gap:8px;align-items:center;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;padding:8px}.permit-table-head{min-height:30px;background:var(--brand-teal-wash);border-left-color:var(--brand-teal);color:#65717d;font-size:.78rem;font-weight:800}.permit-item-name{color:#1f2937;font-weight:800}.permit-required-cell{justify-content:center}.permit-table-row:not(.permit-table-head) .compact-field span,.permit-table-row:not(.permit-table-head) .check-field span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.permit-table-row .compact-field,.permit-table-row .check-field{min-width:0}.permitting-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mobilization-tab{gap:10px}.mobilization-section{overflow:hidden}.mobilization-table{display:grid;gap:6px;overflow-x:auto}.mobilization-row{display:grid;grid-template-columns:minmax(130px,.85fr) minmax(150px,1fr) minmax(62px,.34fr) minmax(70px,.38fr) minmax(76px,.42fr) minmax(100px,.55fr) minmax(100px,.55fr) minmax(150px,.9fr) minmax(72px,.34fr) minmax(72px,.34fr);gap:7px;align-items:center;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;padding:8px}.mobilization-head{min-height:30px;background:var(--brand-teal-wash);border-left-color:var(--brand-teal);color:#65717d;font-size:.78rem;font-weight:800}.mobilization-row .form-field,.mobilization-row .compact-field,.mobilization-row .check-field{min-width:0}.mobilization-row:not(.mobilization-head) .form-field span,.mobilization-row:not(.mobilization-head) .compact-field span,.mobilization-row:not(.mobilization-head) .check-field span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mobilization-check{justify-content:center}.mobilization-summary-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.competitors-tab{gap:10px}.competitors-section{overflow:hidden}.competitor-table{display:grid;gap:6px;overflow-x:auto}.competitor-row{display:grid;grid-template-columns:minmax(140px,.95fr) minmax(170px,1.1fr) minmax(115px,.7fr) minmax(118px,.75fr) minmax(100px,.6fr) repeat(7,minmax(78px,.46fr)) minmax(140px,.85fr) minmax(70px,.34fr);gap:7px;align-items:center;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;padding:8px}.competitor-head{min-height:30px;background:var(--brand-teal-wash);border-left-color:var(--brand-teal);color:#65717d;font-size:.78rem;font-weight:800}.competitor-row .form-field,.competitor-row .compact-field,.competitor-row .check-field{min-width:0}.competitor-row:not(.competitor-head) .form-field span,.competitor-row:not(.competitor-head) .compact-field span,.competitor-row:not(.competitor-head) .check-field span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.competitor-distance-cell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:end}.competitor-check{justify-content:center}.competitor-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.compact-readonly-field{min-height:30px;justify-content:end}.compact-readonly-field strong{display:flex;align-items:center;min-height:30px;border:1px solid #dbe5e0;border-radius:8px;background:#f7faf8;color:#111827;padding:5px 7px;font-size:.8rem}.calculated-trucking-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;grid-column:1 / -1;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:var(--brand-teal-wash);padding:10px}.pricing-trucking-grid{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}.row-cost{display:grid;gap:4px;color:#52616f;font-size:.78rem}.row-cost strong{color:#111827;font-size:.94rem}.compact-remove{min-height:34px;padding:0 10px}.material-cost-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.material-cost-summary .metric{min-height:84px;padding:12px}.trace-table{display:grid;gap:6px;overflow-x:auto;padding-bottom:2px}.trace-row{display:grid;grid-template-columns:.65fr .85fr .75fr .5fr .8fr .65fr .65fr .85fr .8fr .65fr .55fr .55fr .55fr .75fr .6fr .6fr .7fr .75fr .75fr .85fr minmax(240px,1.5fr) .65fr minmax(160px,.95fr);gap:8px;align-items:start;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;padding:8px 10px;color:#3e4a58;font-size:.78rem;min-width:2600px}.trace-head{background:var(--brand-teal-wash);color:#52616f;font-weight:700}.trace-row span,.trace-row strong{overflow-wrap:anywhere}.mix-trace-row{grid-template-columns:minmax(100px,.7fr) minmax(110px,.75fr) minmax(130px,.8fr) minmax(130px,.8fr) minmax(260px,1.45fr) minmax(100px,.65fr) minmax(170px,.95fr);min-width:1020px}.mode-toggle{display:flex;gap:8px;flex-wrap:wrap}.costing-table{display:grid;gap:6px}.costing-row{display:grid;gap:7px;align-items:end;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;padding:8px}.personnel-cost-table .costing-row{grid-template-columns:minmax(145px,1.15fr) repeat(7,minmax(86px,.6fr)) minmax(118px,.75fr)}.shared-personnel-table.is-simple .costing-row{grid-template-columns:minmax(180px,1.4fr) minmax(90px,.45fr) minmax(118px,.55fr)}.shared-personnel-table.is-detailed .costing-row{grid-template-columns:minmax(180px,1.3fr) minmax(90px,.45fr) minmax(150px,.75fr) minmax(118px,.55fr)}.equipment-need-table .costing-row{grid-template-columns:minmax(150px,1.2fr) repeat(5,minmax(88px,.7fr)) minmax(118px,.8fr)}.rental-cost-table .costing-row{grid-template-columns:minmax(150px,1.2fr) repeat(5,minmax(88px,.68fr)) minmax(118px,.8fr)}.costing-head{min-height:30px;background:var(--brand-teal-wash);border-left-color:var(--brand-teal);color:#65717d;font-size:.78rem;font-weight:700;align-items:center}.costing-row .form-field,.costing-row .compact-field,.costing-row .check-field{min-width:0}.costing-row .form-field span,.costing-row .compact-field span{font-size:.72rem}.map-lookup-board{display:grid;grid-template-columns:minmax(420px,1fr);gap:10px;align-items:stretch}.compact-map{min-height:340px}.lookup-summary-bar{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:8px}.compact-status{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #dce3df;border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#fff;color:#24313d;padding:8px 10px}.compact-status span{color:#64717d;font-size:.76rem;font-weight:700}.compact-status strong{color:#111827;font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tomtom-map-panel{background:#eef2f1}.tomtom-map-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;min-height:340px}.tomtom-map-status{position:absolute;left:12px;top:12px;z-index:2;display:grid;gap:2px;border:1px solid rgba(15,118,110,.24);border-radius:8px;background:#ffffffeb;color:#24313d;padding:8px 10px;box-shadow:0 8px 24px #1118271f;pointer-events:none}.tomtom-map-status span{color:#60707f;font-size:.76rem;font-weight:700}.tomtom-map-status strong{color:#0f5f5b;font-size:.88rem}.tomtom-popup-card{display:grid;gap:4px;color:#24313d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.tomtom-popup-card strong{color:#111827;font-size:.94rem}.tomtom-popup-card span,.tomtom-popup-card small{color:#4b5968;font-size:.8rem}.map-ready-note{position:absolute;top:24px;right:24px;bottom:24px;left:24px;display:grid;place-content:center;justify-items:center;gap:8px;color:#2f3c49;text-align:center}.map-ready-note svg{width:28px;height:28px;color:#0f766e}.map-diagnostic{display:flex;justify-content:center;flex-wrap:wrap;gap:5px 10px;max-width:520px;margin-top:4px}.map-diagnostic small{border:1px solid rgba(15,118,110,.18);border-radius:999px;background:#ffffffb8;color:#52616f;padding:3px 7px}.map-marker{position:absolute;width:12px;height:12px;border:2px solid #ffffff;border-radius:999px;box-shadow:0 4px 12px #0f172a3d}.project-marker{left:50%;top:50%;background:#0f766e;transform:translate(-50%,-50%)}.supplier-marker{background:#f59e0b}.data-table,.compact-table{display:grid;gap:6px;min-width:0;overflow-x:auto}.mix-summary-table{overflow-x:auto}.bid-summary-tab{gap:10px}.bid-summary-section{min-width:0}.bid-summary-top-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.bid-mix-summary-table,.bid-cost-breakdown-table{overflow-x:auto}.table-scroll{width:100%;overflow-x:auto}.settings-action-row{justify-content:flex-start}.bid-import-preview{margin-top:12px}.bid-import-table{width:100%;min-width:980px;border-collapse:collapse;font-size:.84rem}.bid-import-table th,.bid-import-table td{border-bottom:1px solid #dbe7e3;padding:8px;text-align:left;vertical-align:top}.bid-import-table th{background:#eef8f5;color:#334155;font-weight:700}.compact-data-table{width:100%;min-width:760px;border-collapse:collapse;font-size:.84rem}.compact-data-table th,.compact-data-table td{border-bottom:1px solid #dbe7e3;padding:7px 8px;text-align:left;vertical-align:middle}.compact-data-table th{background:#eef8f5;color:#334155;font-weight:800}.compact-data-table td strong{color:#172331}.table-select{width:100%;min-height:34px;border:1px solid #cbdad5;border-radius:8px;background:#fff;color:#172331;font:inherit;padding:6px 8px}.users-access-section{margin-top:12px}.users-invite-form{display:grid;grid-template-columns:minmax(220px,360px) minmax(140px,180px) auto;gap:10px;align-items:end}.users-access-block{display:grid;gap:8px}.users-access-block h3{margin:0;color:#0f766e;font-size:.94rem}.users-access-table{min-width:900px}.users-access-table td:first-child{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.users-access-actions{justify-content:flex-start;gap:6px}.data-row,.compact-row{display:grid;gap:10px;align-items:center;min-height:38px;border:1px solid #e2e8e5;border-left:3px solid transparent;border-radius:8px;background:#fff;color:#2c3642;padding:7px 9px;text-align:left;font-size:.88rem}button.data-row:hover,.data-row.is-selected{border-color:var(--brand-teal);background:#f3fbf8}.summary-grid>.metric,.metric-strip>.metric,.derived-strip>.metric,.summary-card-grid>.metric,.material-cost-summary>.metric{border-left:3px solid var(--brand-teal-border)}.panel.full-span{border-left:4px solid var(--brand-teal)}.supplier-ready-table .data-row{grid-template-columns:1.2fr .75fr .35fr .75fr .4fr}.mix-summary-table .data-row{grid-template-columns:minmax(160px,1.1fr) repeat(12,minmax(92px,.55fr));min-width:1320px}.bid-mix-summary-row{grid-template-columns:minmax(170px,1.15fr) minmax(120px,.75fr) minmax(82px,.45fr) repeat(5,minmax(96px,.58fr)) repeat(3,minmax(110px,.68fr)) minmax(82px,.45fr);min-width:1320px}.bid-cost-breakdown-row{grid-template-columns:minmax(180px,1fr) minmax(130px,.6fr) minmax(100px,.45fr) minmax(140px,.7fr);min-width:620px}.material-needs-reminder,.muted-helper{color:#536171;font-size:.88rem;margin:0}.fuel-ready-table .data-row{grid-template-columns:repeat(3,minmax(90px,1fr)) minmax(90px,.55fr);min-width:560px}.fuel-page .section-card{min-width:0}.fuel-index-grid{grid-template-columns:minmax(260px,520px) minmax(220px,380px) minmax(150px,190px) minmax(150px,190px)}.fuel-mode-grid{grid-template-columns:minmax(160px,220px) minmax(170px,220px) minmax(180px,220px) minmax(190px,260px)}.fuel-project-field,.fuel-region-field,.fuel-mode-field,.fuel-mode-grid .form-field,.fuel-index-grid .form-field{width:100%;min-width:0}.compact-metric-card{width:100%;max-width:220px}.fuel-updated-card{max-width:260px}.fuel-action-row{align-items:center}.fuel-page .compact-status-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.fuel-page .compact-status{min-width:132px;max-width:260px;border:1px solid #d6ebe7;border-left:3px solid var(--brand-teal-border);border-radius:8px;background:#f8fbfa;padding:7px 9px}.fuel-page .compact-status strong{overflow-wrap:anywhere}.fuel-diagnostic-note{margin:0}.fuel-table-settings{align-items:end}.fuel-ready-table .compact-field span{display:none}.fuel-ready-table .compact-field input{min-height:32px}.fuel-ready-table .table-head{background:#eef8f5;border-left-color:var(--brand-teal);font-weight:800}.compact-row-action{min-height:32px;padding:0 10px}.compact-note-card{padding-bottom:10px}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.full-span{grid-column:1 / -1}.pill{width:fit-content;border-radius:999px;background:#eef2f1;color:#4c5a67;padding:6px 10px;font-size:.8rem;font-weight:700}.single-column{grid-template-columns:1fr}.detail-row{display:grid;gap:4px;border-bottom:1px solid #edf1ef;padding-bottom:10px}.detail-row span{color:#677381;font-size:.82rem}.detail-row strong{color:#1f2937;overflow-wrap:anywhere}.compact{margin-bottom:0}.line-item{display:grid;grid-template-columns:minmax(0,1.35fr) .45fr .5fr .5fr auto;gap:12px;align-items:center;border:1px solid #e1e8e4;border-radius:8px;padding:14px}.line-item div{display:grid;gap:4px}.line-actions{justify-content:flex-end}.line-actions button,.icon-button{width:34px;height:34px;border:0;border-radius:8px;color:#344253;background:#edf2f0;display:grid;place-items:center}.template-item,.legacy-item{border:1px solid #e1e8e4;border-radius:8px;padding:14px;display:grid;gap:10px}.record-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.template-item p,.legacy-item p{margin:0;color:#3e4a58;line-height:1.45}.fuel-editor{margin-top:14px;display:grid;gap:12px}.fuel-table{display:grid;gap:8px}.fuel-row{min-height:52px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;border-bottom:1px solid #edf1ef}.fuel-row strong{color:#0f766e;font-size:1.1rem}.legacy-grid,.terms-grid{display:grid;grid-template-columns:1fr;gap:8px}.terms-grid .editable-card{grid-template-columns:minmax(160px,.45fr) minmax(360px,1.55fr) auto;align-items:end}.terms-grid .editable-card .form-field-wide{grid-column:auto}.terms-grid .editable-card textarea{min-height:58px}.terms-grid .editable-card .button-row{justify-content:flex-end;align-self:end}.legacy-grid .editable-card{grid-template-columns:minmax(160px,.8fr) minmax(100px,.45fr) minmax(120px,.55fr) minmax(140px,.65fr) minmax(220px,1fr) minmax(260px,1.2fr) auto;align-items:end}.legacy-grid .editable-card .form-field-wide{grid-column:auto}.legacy-grid .editable-card textarea{min-height:58px}.terms-template-list,.files-page{display:grid;gap:10px}.terms-template-list .compact-section-card{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(280px,2fr) auto;align-items:start;gap:12px}.terms-preview-text{margin:0;color:#64748b;white-space:pre-wrap;max-height:8rem;overflow:auto}.settings-wide-section{margin-top:14px}.terms-manager-table .compact-table-row{grid-template-columns:minmax(180px,1.4fr) minmax(120px,.8fr) 80px 90px minmax(180px,auto)}.terms-manager-record{display:grid;gap:0}.terms-full-preview{margin:0;padding:14px 16px;border:1px solid var(--brand-teal-border-soft);border-top:0;background:#f8fbfa;color:#334155;font:inherit;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.compact-table-row{display:grid;align-items:center;gap:10px;min-width:760px;padding:8px 10px;border:1px solid #dbe7e3;border-radius:6px;background:#fff}.compact-table-head{background:#eef8f5;color:#334155;font-weight:800}.terms-editor{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,.6fr);gap:10px;margin-top:12px}.terms-editor .form-field-wide,.terms-editor .inline-action-row{grid-column:1 / -1}.terms-editor textarea{min-height:280px;resize:vertical}.terms-fuel-workspace{min-width:0}.terms-fuel-tabs{width:fit-content;max-width:100%}.recovery-panel{border-left-color:#b7791f;background:#fffdf7}.recovery-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.recovery-summary-grid>div{display:grid;align-content:start;justify-items:start;gap:5px;min-width:0;padding:10px 12px;border:1px solid #ead9ae;border-radius:6px;background:#fff}.recovery-summary-grid p{margin:0;color:#586674;overflow-wrap:anywhere}.recovery-preview{display:grid;gap:10px}.recovery-preview-details,.recovery-fuel-preview{min-width:0;padding:10px 12px;border:1px solid #d7e6e3;border-radius:6px;background:#fff}.recovery-preview-details summary{cursor:pointer;font-weight:800;color:#183d3a}.recovery-preview-details pre{max-height:360px;margin:10px 0 0;padding:12px;overflow:auto;border:1px solid #e3e9e8;border-radius:4px;background:#f8faf9;color:#263b3a;font:inherit;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.recovery-fuel-preview h3{margin:0 0 6px}.eia-apply-row{margin-top:10px;padding-top:10px;border-top:1px solid var(--brand-teal-border-soft)}.shared-fuel-settings-grid{grid-template-columns:repeat(4,minmax(150px,1fr));align-items:end}.files-filter-grid{grid-template-columns:minmax(220px,2fr) repeat(3,minmax(150px,1fr))}.files-add-row,.files-link-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin-top:10px}.files-link-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(240px,1.5fr) minmax(140px,.7fr) minmax(220px,1.2fr) auto}.file-picker{position:relative;overflow:hidden;cursor:pointer}.file-picker input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.files-table .compact-table-row{grid-template-columns:minmax(220px,1.7fr) minmax(110px,.7fr) minmax(110px,.7fr) 90px 100px 80px minmax(220px,auto)}.files-table .compact-table-row>span:first-child{display:grid;gap:2px}.files-table small{color:#64748b;overflow-wrap:anywhere}.validation-error{color:#b42318}.map-surface{position:relative;min-height:520px;width:100%;overflow:hidden;border:1px solid #d5dfdb;border-radius:8px;background:linear-gradient(90deg,rgba(15,118,110,.11) 1px,transparent 1px),linear-gradient(rgba(15,118,110,.11) 1px,transparent 1px),linear-gradient(135deg,#eef8f2,#f8f5ed 55%,#edf4fb);background-size:56px 56px,56px 56px,cover}.map-surface.compact-map{width:100%;height:clamp(340px,42vh,520px);min-height:340px}.map-grid{position:absolute;top:18px;right:18px;bottom:18px;left:18px;border:1px dashed rgba(31,41,55,.22);border-radius:8px}.map-pin{position:absolute;transform:translate(-50%,-50%);border:0;border-radius:999px;min-height:34px;max-width:190px;display:flex;align-items:center;gap:6px;padding:6px 10px;background:#fff;color:#22303d;box-shadow:0 8px 22px #11182724;white-space:nowrap}.map-pin svg{width:16px;height:16px;color:#a43d2e;flex:0 0 auto}.map-pin span{overflow:hidden;text-overflow:ellipsis}.map-pin.is-selected{color:#fff;background:#0f766e}.map-pin.is-selected svg{color:#fff}.empty-state{min-height:160px;border:1px dashed #c8d2ce;border-radius:8px;background:#f8faf9;display:grid;place-content:center;gap:6px;padding:22px;text-align:center;color:#46515e}.empty-state p{margin:0;color:#6b7683}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#141a226b;display:grid;place-items:center;padding:24px;z-index:20}.modal-panel{width:min(920px,100%);max-height:min(86vh,900px);overflow:auto;background:#fff;border-radius:8px;border:1px solid #cfd9d5;box-shadow:0 22px 80px #11182747;padding:18px}.modal-heading h2{font-size:1.15rem}.archive-bid-modal{width:min(460px,100%);padding:16px}.archive-bid-modal .modal-heading{align-items:flex-start;margin-bottom:12px}.archive-bid-modal .modal-heading p{margin:5px 0 0;color:#536170;font-size:.9rem;line-height:1.45}.archive-bid-body{display:grid;gap:4px;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal);border-radius:8px;background:#f7fbfa;padding:10px 12px}.archive-bid-body span{color:#65758a;font-size:.78rem;font-weight:800;text-transform:uppercase}.archive-bid-body strong{color:#172331;overflow-wrap:anywhere}.restore-bid-status-field{margin-top:12px}.archive-bid-actions{justify-content:flex-end;margin-top:14px}.archive-bid-error,.warning-note{border:1px solid #ffd5cc;border-left:3px solid #c2410c;border-radius:8px;background:#fff7ed;color:#8a2418;padding:8px 10px;font-size:.86rem}.bid-manager-message{border-left:3px solid var(--brand-teal);border-radius:6px;background:#0f766e0d;padding:6px 9px}.record-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.form-field{display:grid;gap:5px;color:#293646;font-weight:700;font-size:.82rem}.form-field-wide{grid-column:1 / -1}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:var(--control-height);border:1px solid #cbd6d1;border-radius:var(--control-radius);padding:7px 9px;color:#1f2937;background:#fff;font-size:var(--control-font-size);line-height:1.2}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible,.compact-field input:focus-visible,.compact-field select:focus-visible{border-color:var(--brand-teal);outline:3px solid rgba(15,118,110,.18);outline-offset:1px}.form-field textarea{min-height:82px;resize:vertical}.readonly-field strong{min-height:var(--control-height);border:1px solid #d7e0dc;border-radius:var(--control-radius);background:#f1f5f3;color:#1f2937;padding:7px 9px;display:flex;align-items:center;font-size:var(--control-font-size);line-height:1.2}.form-field small{color:#9b2d20;font-weight:600}.check-field{min-height:36px;display:flex;align-items:center;gap:8px;color:#2d3948;font-weight:600}.check-field input{width:16px;height:16px}.checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;padding:10px;border:1px solid #e1e8e4;border-radius:8px;background:#f8faf9}.form-actions{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:4px}.warning-box{display:grid;gap:8px;border:1px solid #f1d18a;border-left:4px solid #d68a00;border-radius:8px;background:#fff7e6;color:#51360b;padding:10px 12px;margin-bottom:10px}.warning-box p{margin:0;line-height:1.45}.settings-actions{display:grid;gap:10px;margin-bottom:12px}.settings-reset{min-height:38px;width:100%}.settings-layout .derived-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.json-import{min-height:260px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.84rem}.crm-workspace{display:grid;gap:12px}.crm-grid{grid-template-columns:minmax(0,1.1fr) minmax(340px,.82fr)}.opportunity-workspace{min-width:0}.opportunity-workspace>.section-card{min-width:0;overflow:hidden}.crm-detail-drawer{position:fixed;z-index:30;top:16px;right:16px;bottom:16px;width:min(440px,calc(100vw - 36px));max-height:calc(100vh - 32px);min-height:0;overflow:hidden;display:flex;flex-direction:column;border-color:var(--brand-teal-border-soft);box-shadow:0 18px 48px #18302b33;padding:0}.crm-detail-drawer-chrome{position:sticky;top:0;z-index:3;display:flex;justify-content:flex-end;flex:0 0 auto;border-bottom:1px solid #eef3f1;background:linear-gradient(90deg,#e0f6f1e0,#fff 45%);padding:10px 10px 8px}.crm-detail-drawer-content{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;flex:1 1 auto;padding:12px 14px 14px}.detail-drawer-backdrop{position:fixed;z-index:29;top:0;right:0;bottom:0;left:0;border:0;background:#0f172a2e;cursor:default}.detail-drawer-close{flex:0 0 auto;width:34px;height:34px;border:1px solid #dce3df;border-radius:999px;background:#fff;color:#53615e;font-size:1.35rem;line-height:1}.detail-drawer-close:hover{border-color:var(--brand-teal);color:var(--brand-teal-strong);background:var(--brand-teal-wash)}.crm-filter-grid{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(150px,.45fr));gap:8px;align-items:end;margin-bottom:10px}.crm-search{width:100%;height:40px}.crm-table,.crm-detail-stack,.crm-form,.crm-linked-list{display:grid;gap:8px}.crm-row{display:grid;gap:10px;align-items:center;min-height:42px;width:100%;border:1px solid #e2e8e5;border-radius:8px;background:#fff;color:#263241;padding:7px 10px;text-align:left}button.crm-row:hover,button.crm-row.is-selected{border-color:var(--brand-teal);background:#f3fbf8}.crm-company-row{grid-template-columns:minmax(160px,1.2fr) minmax(120px,.62fr) minmax(130px,.7fr) minmax(90px,.45fr) minmax(150px,.9fr)}.crm-contact-row{grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) minmax(120px,.8fr) minmax(90px,.45fr)}.crm-table-head{min-height:30px;border:0;background:var(--brand-teal-wash);color:#52616f;font-size:.78rem;font-weight:800}.crm-row span,.crm-row strong{min-width:0;overflow-wrap:anywhere}.crm-detail{min-height:0}.crm-linked-section{padding:10px}.crm-message{border-left:3px solid var(--brand-teal);border-radius:6px;background:#0f766e0d;padding:5px 8px}.crm-form .section-card-header,.crm-detail-stack .section-card-header{margin:-4px -4px 8px -8px}.crm-form .field-grid{margin-bottom:8px}.opportunity-filter-grid{grid-template-columns:minmax(220px,1fr) repeat(6,minmax(120px,.36fr))}.relationship-filter-grid{grid-template-columns:minmax(220px,1fr) repeat(4,minmax(130px,.42fr))}.opportunity-board-wrap{display:grid;gap:10px}.opportunity-board{display:grid;grid-template-columns:repeat(7,minmax(210px,1fr));min-width:max-content;gap:10px;padding-bottom:4px}.relationship-board{grid-template-columns:repeat(6,minmax(210px,1fr))}.opportunity-board-wrap{min-width:0;overflow-x:auto;overscroll-behavior-inline:contain}.opportunity-column{display:grid;align-content:start;gap:8px;min-width:210px;border:1px solid var(--brand-teal-border-soft);border-left:3px solid var(--brand-teal);border-radius:8px;background:#f7fbfa;padding:8px}.opportunity-column.is-drop-target{border-color:var(--brand-teal);background:var(--brand-teal-wash);box-shadow:inset 0 0 0 1px #0f766e29}.opportunity-column-header{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#263241;font-size:.9rem}.opportunity-column-header span{border-radius:999px;background:var(--brand-teal-wash);color:#0f766e;font-size:.74rem;font-weight:800;padding:2px 7px}.opportunity-card-list{display:grid;gap:8px}.opportunity-card{display:grid;gap:7px;width:100%;border:1px solid #dfe8e5;border-radius:8px;background:#fff;color:#263241;padding:9px;text-align:left}.opportunity-card:hover,.opportunity-card.is-selected,.record-button.is-selected{border-color:var(--brand-teal);background:#f3fbf8}.opportunity-card.is-dragging{z-index:5;cursor:grabbing;box-shadow:0 14px 30px #0f172a2e;opacity:.96}.opportunity-card-main{display:grid;gap:7px;width:100%;border:0;background:transparent;color:inherit;padding:0;text-align:left}.opportunity-card-title{display:flex;align-items:start;justify-content:space-between;gap:8px}.opportunity-card dl{display:grid;gap:4px;margin:0}.opportunity-card dl div{display:flex;justify-content:space-between;gap:8px;font-size:.78rem}.opportunity-card dt{color:#65758a}.opportunity-card dd{margin:0;font-weight:800;text-align:right}.opportunity-stage-control{margin-top:2px}.relationship-card .opportunity-card-title strong{max-width:160px;overflow-wrap:anywhere}.relationship-stage-pill{background:var(--brand-teal-wash);color:var(--brand-teal-strong)}.crm-stage-field{max-width:260px}.opportunity-empty{margin:0;padding:8px;text-align:center}.opportunity-terminal{padding:10px}.crm-followup-strip,.crm-activity-section{display:grid;gap:10px}.crm-followup-cards{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.crm-followup-card{display:grid;grid-template-columns:auto auto;gap:8px;align-items:center;min-height:34px;border:1px solid var(--brand-teal-border-soft);border-radius:8px;background:#fff;color:#334155;padding:6px 10px;font-size:.84rem}.crm-followup-card strong{color:var(--brand-teal-strong);font-size:1rem}.crm-followup-card.is-active,.crm-followup-card:hover{border-color:var(--brand-teal);background:var(--brand-teal-wash)}.crm-followup-card.is-warning strong,.crm-followup-row.is-overdue>span:first-child{color:#b45309}.crm-followup-list{display:grid;gap:6px}.crm-followup-row{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(170px,1.1fr) minmax(150px,1fr) minmax(130px,.8fr) minmax(130px,.8fr) auto;gap:8px;align-items:center;border:1px solid #e2e8e5;border-radius:8px;background:#fff;padding:7px 9px;font-size:.82rem}.activity-form{border:1px solid var(--brand-teal-border-soft);border-radius:8px;background:#fbfefd;padding:10px}.activity-filter-row{display:flex;flex-wrap:wrap;gap:6px}.activity-filter{border:1px solid var(--brand-teal-border-soft);cursor:pointer}.activity-filter.is-active{border-color:var(--brand-teal);background:var(--brand-teal);color:#fff}.activity-timeline{display:grid;gap:8px}.activity-item{display:grid;grid-template-columns:12px 1fr;gap:8px}.activity-rail{width:3px;height:100%;border-radius:999px;background:var(--brand-teal-border-soft);justify-self:center}.activity-item.is-stage-change .activity-rail{background:var(--brand-teal)}.activity-card-body{display:grid;gap:7px;border:1px solid #e2e8e5;border-radius:8px;background:#fff;padding:9px}.activity-item.is-stage-change .activity-card-body{background:#f7fbfa}.activity-card-header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;color:#64748b;font-size:.78rem}.activity-card-header>div{display:flex;flex-wrap:wrap;gap:5px}.activity-card-body h3{margin:0;color:#102033;font-size:.98rem}.activity-card-body p{margin:0;color:#475569;line-height:1.35}.activity-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0}.activity-meta div{min-width:0}.activity-type-pill{background:var(--brand-teal-wash);color:var(--brand-teal-strong)}.crm-error-message{border-left:3px solid #b45309;color:#7c2d12}@media(max-width:1180px){.bid-layout,.content-grid,.terms-layout,.settings-layout,.material-pricing-grid{grid-template-columns:1fr}.legacy-grid,.terms-grid .editable-card,.legacy-grid .editable-card,.summary-grid,.summary-card-grid,.bid-summary-top-grid,.material-cost-summary,.mobilization-summary-grid,.competitor-summary-grid,.fuel-index-grid,.fuel-mode-grid,.field-grid-4,.permit-grid,.job-planning-output-grid,.mix-header-fields,.crm-followup-row{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-metric-card,.fuel-updated-card{max-width:none}.general-status-row{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-filter-bar,.lookup-filter-grid,.lookup-row,.terms-grid .editable-card,.legacy-grid .editable-card,.pricing-row,.pricing-source-row,.pricing-source-line,.pricing-band,.material-needs-row,.trace-row,.personnel-cost-table .costing-row,.equipment-need-table .costing-row,.rental-cost-table .costing-row,.permit-row,.admix-recipe-row,.job-mix-row,.equipment-row,.personnel-role-row,.permit-table-row,.mobilization-row,.competitor-row,.bid-mix-summary-row,.bid-cost-breakdown-row,.mix-recipe-row{grid-template-columns:1fr 1fr}.trace-row{min-width:0}.lookup-actions{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1080px){.app-shell,.app-shell.sidebar-is-collapsed{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid #dce3df;padding:16px}.nav-list{grid-template-columns:repeat(5,minmax(0,1fr))}.nav-list-secondary{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}.nav-button{justify-content:center}.nav-button span{display:none}.environment-note{margin-top:0;width:fit-content}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.workspace{padding:24px 18px 18px}.recovery-summary-grid{grid-template-columns:1fr}.terms-fuel-tabs{width:100%}.topbar,.panel-heading,.split-heading,.section-heading,.workspace-control-row,.section-status-row{align-items:stretch;flex-direction:column}.topbar-actions,.workspace-control-row .action-row,.mode-tabs,.mix-scm-toggles,.filter-grid,.field-grid-2,.field-grid-3,.field-grid-4,.supplier-filter-bar,.lookup-filter-grid,.map-lookup-board,.derived-strip,.summary-grid,.summary-card-grid,.bid-summary-top-grid,.compact-summary-row,.permit-grid,.job-planning-output-grid,.material-cost-summary,.mobilization-summary-grid,.competitor-summary-grid,.mix-header-fields,.projects-filter-grid,.project-result-row,.fuel-index-grid,.fuel-mode-grid,.general-status-row,.lookup-row,.pricing-row,.pricing-row-empty,.pricing-source-row,.pricing-source-line,.pricing-band,.material-needs-row,.trace-row,.personnel-cost-table .costing-row,.equipment-need-table .costing-row,.rental-cost-table .costing-row,.permit-row,.admix-recipe-row,.job-mix-row,.equipment-row,.personnel-role-row,.permit-table-row,.mobilization-row,.competitor-row,.bid-mix-summary-row,.bid-cost-breakdown-row,.mix-recipe-row,.crm-followup-row,.activity-meta{grid-template-columns:1fr}.sidebar-toggle{display:none}.crm-detail-drawer{top:8px;right:8px;bottom:8px;width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.crm-detail-drawer-content{padding:10px}.project-manager-drawer{top:8px;right:8px;bottom:8px;width:calc(100vw - 16px);padding:10px}.sidebar-is-collapsed .sidebar{padding:16px}.trace-row{min-width:0}.pricing-source-row .offering-select-field,.pricing-source-row .notes-field,.pricing-route-message{grid-column:auto}.mix-scm-toggles{justify-content:flex-start}.section-card-header{align-items:stretch;flex-direction:column}.lookup-actions{grid-template-columns:1fr}.fuel-page .compact-status-row{align-items:stretch}.fuel-ready-table .compact-field span{display:block}.heading-actions{align-items:stretch}.heading-actions>span,.primary-small{width:100%}.metric-strip,.legacy-grid,.terms-grid .editable-card,.legacy-grid .editable-card,.project-header,.record-form,.checkbox-grid,.supplier-row,.crm-company-row,.crm-contact-row,.line-item,.fuel-row,.supplier-ready-table .data-row,.mix-summary-table .data-row,.bid-mix-summary-table .data-row,.bid-cost-breakdown-table .data-row,.fuel-ready-table .data-row{grid-template-columns:1fr}.table-row{min-height:auto;padding:12px}.table-head{display:none}.crm-filter-grid{grid-template-columns:1fr}.modal-backdrop{padding:12px}.map-surface{min-height:420px}.quote-concrete-row,.quote-charge-row,.quote-mob-row{grid-template-columns:1fr;min-width:0}.quote-info-grid,.quote-acceptance-grid,.quote-preview-row,.quote-preview-five,.quote-preview-four{grid-template-columns:1fr}.quote-preview-header{flex-direction:column}.terms-template-list .compact-section-card,.terms-manager-table .compact-table-row,.terms-editor,.shared-fuel-settings-grid,.files-filter-grid,.files-link-form,.files-table .compact-table-row{grid-template-columns:1fr;min-width:0}}@media(min-width:761px)and (max-width:1180px){.quote-concrete-row,.quote-charge-row,.quote-mob-row{grid-template-columns:1fr 1fr;min-width:0}}@media print{@page{margin:.45in}body{background:#fff}.sidebar,.topbar,.tabs,.no-print,.environment-note,.project-header,.panel-heading,.section-heading,button{display:none!important}.app-shell{display:block}.workspace{padding:0}.quote-output-page{display:block}.quote-preview{width:100%;margin:0;border:0;border-radius:0;box-shadow:none;padding:0}.quote-preview-section{break-inside:avoid}}
