/* Operational UI follows the current Build Estimate canvas.
   New working screens inherit these rules through .view. Estimate, Excel,
   drawing geometry and client-facing documents deliberately own their styles. */
@media screen {
 :root {
  --bindr-ui-paper:#fff; --bindr-ui-canvas:#eef1f4; --bindr-ui-section:#d9dee4;
  --bindr-ui-charcoal:#535d69; --bindr-ui-ink:#26313c; --bindr-ui-muted:#596777;
  --bindr-ui-edge:#c7cdd5; --bindr-ui-soft-edge:#dde2e8;
  --bindr-ui-radius:4px; --bindr-ui-control:32px; --bindr-ui-gap:10px;
 }
 /* Page, heading, toolbar and form primitives. */
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) {
  --bindr-radius:var(--bindr-ui-radius); --bindr-padding:10px; --bindr-gap:10px; --bindr-shadow:none;
  padding:10px 14px 24px; color:var(--bindr-ui-ink); font-size:14px; line-height:1.35;
 }
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-page-heading,.section-heading,.account-heading) {gap:8px;margin:0 0 10px;min-height:var(--bindr-ui-control);align-items:center}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-page-heading,.account-heading)>div:first-child {min-width:0}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-page-heading,.account-heading) h2 {margin:0;font-size:18px;line-height:1.3;font-weight:650}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-page-heading,.account-heading) p {margin:2px 0 0;font-size:12px}
 .bindr-heading-title {display:flex;align-items:center;gap:7px;min-width:0}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.btn,.account-scope button) {min-height:var(--bindr-ui-control);padding:5px 9px;border-radius:var(--bindr-ui-radius);font-size:13px;line-height:1.3;box-shadow:none;transform:none}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(input:not([type=checkbox],[type=radio],[type=color]),select) {min-height:var(--bindr-ui-control);padding:5px 7px;font-size:13px;border-radius:var(--bindr-ui-radius);border-color:var(--bindr-ui-edge)}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) textarea {padding:6px 8px;min-height:60px;font-size:13px;border-radius:var(--bindr-ui-radius)}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) label {font-size:13px;gap:4px}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.top-actions,.account-actions,.afp-toolbar) {gap:6px}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-filters,.cvr-report-filters,.account-scope) {gap:8px 12px;padding:8px 0;margin:0 0 10px;background:transparent;border:0;border-bottom:1px solid var(--bindr-ui-edge);border-radius:0}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.form-grid,.quote-edit-fields,.account-form) {gap:8px 12px;padding:10px}
 /* Sections are flat working regions, with one heading strip. */
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.panel,.crm-panel,.account-panel,.cvr-report-panel,.qr-info-card,.vjf-overview-card,.cvr-costing-box,.cvr-comparison-box) {min-width:0;border:1px solid var(--bindr-ui-edge);border-radius:var(--bindr-ui-radius);box-shadow:none;margin-bottom:10px;background:var(--bindr-ui-paper)}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.account-panel,.cvr-report-panel,.qr-info-card,.cvr-costing-box,.cvr-comparison-box) {padding:10px}
 .app-shell .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-panel-heading,.cvr-report-panel-heading,.fx-folder-heading,.cvr-costing-heading,.vjf-overview-card>header,.panel>.section-heading) {display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;margin:0;background:var(--bindr-ui-section)!important;color:var(--bindr-ui-ink)!important;border-left:0!important;border-bottom:1px solid var(--bindr-ui-edge);border-radius:0;box-shadow:none}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.cvr-report-panel-heading,.cvr-costing-heading) {margin:-10px -10px 10px}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-panel-heading,.cvr-report-panel-heading,.fx-folder-heading,.cvr-costing-heading,.vjf-overview-card>header,.panel>.section-heading) :is(h2,h3) {font-size:14px;line-height:1.35;margin:0;font-weight:650}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .account-panel>h3 {font-size:14px;padding:7px 10px;margin:-10px -10px 10px;background:var(--bindr-ui-section);border-bottom:1px solid var(--bindr-ui-edge)}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-two-col,.account-grid,.business-setup-grid,.qr-record-grid,.split-grid,.cvr-report-panels) {gap:10px;align-items:start}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .crm-panel :is(.crm-table-wrap,.account-table-wrap) {border:0;border-radius:0;box-shadow:none}
 /* Consistent registers. Wide financial tables scroll inside their region. */
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-table-wrap,.table-wrap,.account-table-wrap,.afp-table-wrap,.fx-table-wrap) {max-width:100%;overflow:auto;box-shadow:none;border-radius:3px}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-table,.rate-table,.account-table,.cvr-table,.fx-table,.afp-table,.afp-adjustment-table,.job-saved-table) {font-size:13px;border-collapse:collapse}
 .app-shell .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-table,.rate-table,.account-table,.cvr-table,.fx-table,.afp-table,.afp-adjustment-table,.job-saved-table) td {padding:6px 8px!important;font-size:13px;line-height:1.35;border-bottom:1px solid var(--bindr-ui-soft-edge);font-variant-numeric:tabular-nums}
 .app-shell .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-table,.rate-table,.account-table,.cvr-table,.fx-table,.afp-table,.afp-adjustment-table,.job-saved-table) th {padding:6px 8px!important;font-size:12px;line-height:1.3;letter-spacing:0;text-transform:none;background:#e9edf2;color:#475463}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) table :is(.btn,input:not([type=checkbox],[type=radio]),select) {min-height:29px;padding:4px 6px;font-size:13px}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) table small {font-size:12px;line-height:1.3;margin-top:2px}
 /* Small KPI tiles share the estimate's restrained outline and typography. */
 .app-shell .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-kpis,.account-kpis,.cvr-report-metrics,.vjf-summary-grid,.job-pricing-totals,.variation-contract-summary) {display:grid;gap:6px;padding:0;margin:0 0 10px;border:0;border-radius:0;background:transparent;box-shadow:none}
 .app-shell .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-kpis,.account-kpis,.cvr-report-metrics,.vjf-summary-grid,.job-pricing-totals,.variation-contract-summary)>:is(article,button,div) {display:grid;align-content:start;gap:3px;min-width:0;padding:7px 9px;border:1px solid var(--bindr-ui-edge);border-radius:var(--bindr-ui-radius);background:#f8f9fa;box-shadow:none;text-align:left;color:var(--bindr-ui-ink)}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-kpis,.account-kpis,.cvr-report-metrics,.vjf-summary-grid,.job-pricing-totals,.variation-contract-summary) strong {font-size:18px;line-height:1.25;margin:0;font-variant-numeric:tabular-nums}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-kpis,.account-kpis,.cvr-report-metrics,.vjf-summary-grid,.job-pricing-totals,.variation-contract-summary) :is(span,small) {font-size:12px;line-height:1.25;letter-spacing:0;text-transform:none;margin:0}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-kpis,.account-kpis) button:hover {border-color:#738292;background:#edf1f5}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .crm-quote-hubs {gap:8px;margin:0 0 10px}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .crm-quote-hub {display:grid;grid-template-columns:minmax(90px,1fr) auto auto;align-items:center;gap:5px 14px;padding:9px 11px;border-radius:var(--bindr-ui-radius);box-shadow:none;transform:none}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .crm-quote-hub-label {font-size:14px}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .crm-quote-hub>strong {grid-column:2;grid-row:1;font-size:20px}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .crm-quote-hub-caption {grid-column:3;grid-row:1;font-size:12px}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .crm-quote-hub dl {grid-column:1/-1;display:flex;gap:20px;margin:0;padding:4px 0 0;border:0}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .crm-quote-hub dl div {display:flex;align-items:baseline;gap:6px}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .crm-quote-hub dd {font-size:14px}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .stage-summary>div {padding:6px 10px;min-height:30px}
 /* Empty states retain their action without a large illustration or panel. */
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-empty,.qr-empty,.journey-empty) {display:flex;align-items:center;flex-wrap:wrap;gap:7px 10px;min-height:0;padding:12px;text-align:left;border-radius:0;margin:0;background:transparent}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-empty,.qr-empty) :is(h3,strong,p) {font-size:13px;line-height:1.4;margin:0;max-width:none}
 /* Job File: no minimum-height page within a page. */
 #recordView .vjf-header {gap:12px;padding:8px 10px;margin-bottom:8px;border-radius:var(--bindr-ui-radius);background:#e8ecf0;box-shadow:none}
 #recordView .vjf-header h2 {font-size:18px;margin:1px 0}
 #recordView .vjf-header p,#recordView .vjf-eyebrow {font-size:12px}
 #recordView .vjf-workspace-tabs {padding:0 4px;gap:2px;border-radius:var(--bindr-ui-radius) 4px 0 0;background:var(--bindr-ui-paper)}
 #recordView .vjf-workspace-tabs button {padding:8px 10px;min-height:34px;font-size:13px;border-bottom-width:2px}
 #recordView .vjf-workspace-tabs button.is-active {border-bottom-color:#de761f;background:#fff7ef;color:var(--bindr-ui-ink)}
 /* Costings has five totals; an explicit grid keeps them in one desktop row. */
 #recordView .job-pricing-totals.cvr-costing-overview {grid-template-columns:repeat(5,minmax(0,1fr));margin:0 0 10px;padding:0;border:0}
 #recordView .cvr-costing-overview>div {font-size:12px;line-height:1.3}
 #recordView .cvr-costing-overview strong {overflow-wrap:anywhere}
 #recordView .vjf-workspace-body,#recordView .virtual-job-file .fx-body {min-height:0;border-radius:0 0 4px 4px}
 #recordView .vjf-overview {padding:10px}
 #recordView .vjf-content {padding:0 10px 10px}
 #recordView .vjf-content.vjf-locked-estimate {padding:0}
 #recordView .vjf-next-action {padding:8px 10px;margin:0 0 10px;border-left:3px solid #758292;border-radius:3px;background:#f0f3f6;gap:10px}
 #recordView .vjf-next-action strong {font-size:14px}
 #recordView .vjf-activity-preview {padding:0 10px}
 #recordView .vjf-activity-preview article {padding:7px 0;gap:8px}
 #recordView .vjf-quote-controls,#recordView .qr-upload-row,#recordView .qr-editor-action {padding:8px 10px;margin:0 0 8px;gap:8px;border-radius:3px;box-shadow:none}
 #recordView :is(.qr-info-card,.qr-quote-body,.job-folder-content) {padding:10px}
 #recordView :is(.qr-quote-card,.job-folder) {margin:0 0 10px;border-radius:var(--bindr-ui-radius);box-shadow:none}
 #recordView :is(.qr-quote-card>summary,.job-folder>summary) {padding:8px 10px;font-size:14px}
 #recordView .record-details {gap:0;margin:0}
 #recordView .record-details>div {padding:7px 9px;border-radius:0;border:0;border-bottom:1px solid var(--bindr-ui-soft-edge);background:transparent}
 #recordView .responsibility {padding:7px 10px;margin:0 0 8px;border-radius:var(--bindr-ui-radius);background:#f4f6f8}
 #recordView .responsibility summary {font-size:13px}
 #recordView .responsibility-fields {gap:8px;margin-top:8px}
 #recordView .commercial-status-legend {gap:6px;padding:0;margin:6px 0;font-size:12px}
 #recordView .variation-card-list {gap:8px}
 #recordView .variation-card {border-radius:var(--bindr-ui-radius);box-shadow:none;margin-bottom:8px}
 #recordView .variation-card>header {padding:7px 10px;gap:10px;background:#e9edf2}
 #recordView .variation-card h3 {font-size:14px;margin:2px 0}
 #recordView .variation-card-body {padding:8px 10px;gap:14px}
 #recordView .variation-values {gap:16px}
 #recordView .variation-values strong {font-size:17px}
 #recordView .variation-card footer {padding:6px 10px}
 #recordView .variation-retained {font-size:12px;margin:0;padding:6px 10px}
 #recordView .variation-history {padding:6px 10px}
 #recordView .job-variation-form {padding:10px;gap:8px;border-radius:var(--bindr-ui-radius);margin-top:10px}
 /* Applications: the existing summary is moved above the lines, not duplicated. */
 #recordView .afp {padding:10px;background:transparent}
 #recordView .afp>fieldset {padding:0!important;border:0!important;border-radius:0;margin:0 0 10px;background:transparent}
 #recordView .afp-status:empty {display:none}
 #recordView .afp-toolbar {margin:0 0 8px}
 #recordView .afp-fields {gap:8px;padding:0 0 8px;margin:0 0 8px}
 #recordView .afp-draft-heading {gap:8px;margin:0 0 8px}
 #recordView .afp-draft-heading h3 {font-size:16px}
 #recordView .afp-claim-summary {grid-template-columns:minmax(250px,1.3fr) minmax(230px,1fr);gap:16px;padding:8px 10px;margin:0 0 10px;border-radius:var(--bindr-ui-radius);background:#eef2f6}
 #recordView .afp-claim-summary h3 {font-size:13px;margin:0 0 5px}
 #recordView .afp-claim-summary dl>div {font-size:13px;margin:3px 0}
 #recordView .afp-claim-amount {gap:4px;padding:6px 12px;border-left:3px solid #74808d;background:#fff}
 #recordView .afp-claim-amount>span {font-size:13px}
 #recordView .afp-claim-amount strong {font-size:22px}
 #recordView .afp-adjustments {padding:0 10px;margin:10px 0;border-radius:var(--bindr-ui-radius)}
 #recordView .afp-adjustments summary {padding:8px 0;font-size:13px}
 #recordView .afp-adjustments summary span {font-size:12px}
 #recordView .afp-history {padding:10px;margin-top:10px;border-radius:var(--bindr-ui-radius);background:transparent}
 #recordView .afp-history>h3 {padding:7px 10px;margin:-10px -10px 8px;font-size:14px;border-left:0;border-radius:0;background:var(--bindr-ui-section)}
 #recordView .afp-table .afp-area-heading th {background:var(--bindr-ui-charcoal);color:white}
 #recordView .afp-table .afp-variation-heading th {border-left-color:#74808d}
 /* Cost and value reports and daily input sheets. */
 .cvr-report .cvr-report-counts {gap:6px 16px;padding:0;margin:0 0 10px;font-size:12px}
 .cvr-report .cvr-report-panel>h3 {font-size:14px;margin:0 0 8px}
 .cvr-report .cvr-bar-pair {height:90px}
 .cvr-report .cvr-report-panels {grid-template-columns:minmax(0,2fr) minmax(230px,1fr)}
 .cvr-report .cvr-category-totals>div {font-size:13px;padding:5px 0}
 #cvrDialog {padding:12px;border-radius:5px}
 #cvrForm>header {top:-12px;padding:8px 0;gap:10px}
 #cvrForm h2 {font-size:18px;margin:0}
 #cvrForm :is(input,select,textarea) {min-height:var(--bindr-ui-control);padding:5px 7px;font-size:13px}
 #cvrForm label {font-size:13px;gap:4px}
 #cvrForm .cvr-meta {gap:8px 12px;margin:10px 0}
 #cvrForm :is(.cvr-material-section,.cvr-waiting-section) {padding:10px;border-radius:var(--bindr-ui-radius);border-top:1px solid var(--bindr-ui-edge)}
 #cvrForm .cvr-section-heading {padding:7px 10px;background:var(--bindr-ui-section);border-left:0!important}
 #cvrForm .cvr-section-heading h3 {font-size:14px}
 #cvrForm .cvr-material-row {padding:8px;border-radius:3px;margin-bottom:8px;box-shadow:none}
 #cvrForm .cvr-material-link,#cvrForm .cvr-material-costs {gap:8px}
 #cvrForm .cvr-material-row .cvr-material-variance {padding:6px 8px;margin:8px -8px -8px;gap:8px}
 #cvrForm .cvr-totals {padding:9px 0;margin-bottom:8px;font-size:14px}
 /* Account management and roles use the same working density. */
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .account-panel p {margin:6px 0;font-size:13px}
 .permission-layout {grid-template-columns:210px minmax(0,1fr);gap:12px}
 .permission-role {padding:8px 10px;border-radius:var(--bindr-ui-radius);margin:2px 0}
 .permission-group {margin:10px 0;padding:10px;border-radius:var(--bindr-ui-radius)}
 .permission-group legend {font-size:14px}
 .permission-group>div {gap:8px}
 .permission-save {padding:8px 0;gap:8px}
 /* Useful explanations are opt-in, keyboard-operable disclosures. */
 .bindr-help {display:inline-block;position:relative;flex:0 0 auto;vertical-align:middle;font-weight:400;letter-spacing:normal;text-transform:none;color:#465666}
 .bindr-help>summary {display:inline-grid!important;place-items:center;width:22px;min-width:22px;height:22px;min-height:22px;padding:0!important;border:1px solid #aab4c0!important;border-radius:50%!important;background:#f8f9fa!important;color:#465666!important;font:600 12px/1 system-ui;cursor:pointer;list-style:none!important}
 .bindr-help>summary::-webkit-details-marker {display:none}
 .bindr-help>summary:focus-visible {outline:2px solid #496786;outline-offset:2px}
 .bindr-help>div {position:absolute;z-index:60;top:calc(100% + 5px);left:0;width:min(320px,calc(100vw - 48px));padding:10px 12px!important;border:1px solid #aab4c0;border-radius:var(--bindr-ui-radius);background:#fff;color:#344454;font-size:13px;font-weight:400;line-height:1.5;box-shadow:0 4px 16px #1c28382b;text-align:left;white-space:normal}
 .top-actions .bindr-help>div,.bindr-help-right>div {left:auto;right:0}
 .bindr-context-help {display:flex;align-items:center;gap:7px;font-size:12px;margin:6px 0;color:var(--bindr-ui-muted)}
 .bindr-inline-note {font-size:12px;color:var(--bindr-ui-muted);margin:5px 0}
 .bindr-operational-help {display:flex;align-items:center;gap:8px;margin-bottom:8px}
 /* Shell density applies on operational pages; the benchmark stays unchanged. */
 body:not(:has(#estimateView.active,#knockUpView.active,#takeoffView.active,#quoteView.active)) .topbar.bindr-page-header {min-height:54px;padding:8px 14px;gap:10px}
 body:not(:has(#estimateView.active,#knockUpView.active,#takeoffView.active,#quoteView.active)) .topbar.bindr-page-header h1 {font-size:19px}
 body:not(:has(#estimateView.active,#knockUpView.active,#takeoffView.active,#quoteView.active)) .topbar .software-section-label {font-size:11px!important;margin-bottom:1px}
 body:not(:has(#estimateView.active,#knockUpView.active,#takeoffView.active,#quoteView.active)) .topbar .btn {min-height:var(--bindr-ui-control);padding:5px 9px;font-size:13px}
 @media(min-width:1051px) {
  body:not(:has(#estimateView.active,#knockUpView.active,#takeoffView.active,#quoteView.active)) .sidebar {padding-top:12px;background:#232930;box-shadow:none}
  body:not(:has(#estimateView.active,#knockUpView.active,#takeoffView.active,#quoteView.active)) .sidebar .nav-item {min-height:30px;padding:5px 10px;font-size:13px}
  body:not(:has(#estimateView.active,#knockUpView.active,#takeoffView.active,#quoteView.active)) .sidebar .nav-divider {padding-top:7px;padding-bottom:3px;font-size:11px}
 }
 @media(max-width:900px) {
  #recordView .job-pricing-totals.cvr-costing-overview {grid-template-columns:repeat(2,minmax(0,1fr))}
  .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-two-col,.account-grid,.cvr-report-panels) {grid-template-columns:minmax(0,1fr)}
  .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-kpis,.account-kpis,.cvr-report-metrics,.vjf-summary-grid) {grid-template-columns:repeat(2,minmax(0,1fr))}
  #recordView .afp-claim-summary {grid-template-columns:minmax(0,1fr);gap:8px}
 }
 @media(max-width:600px) {
  .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) {padding:8px 10px 20px}
  .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .crm-quote-hubs {grid-template-columns:minmax(0,1fr)}
  #recordView .vjf-header {align-items:flex-start}
  #recordView .afp-fields {grid-template-columns:minmax(0,1fr)}
  #recordView .variation-card-body {grid-template-columns:minmax(0,1fr)}
  .permission-layout {grid-template-columns:minmax(0,1fr)}
  .permission-group>div {grid-template-columns:minmax(0,1fr)}
 }
 @media(pointer:coarse) {
  .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.btn,.account-scope button,input:not([type=checkbox],[type=radio],[type=color]),select),#cvrForm :is(.btn,input,select) {min-height:40px}
  .bindr-help>summary {width:32px;height:32px}
 }
}
@media screen {
 /* Avoid a second page title immediately below the shell's h1. */
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-page-heading,.account-heading) h2 {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .bindr-heading-context {font-size:12px;color:var(--bindr-ui-muted)}
 .app-shell .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .panel>.section-heading {border-top:0!important}
 #ratesView .panel,#plantLibraryView .panel {padding:0}
 #ratesView .panel>.section-heading,#plantLibraryView .panel>.section-heading {margin:0!important;padding:7px 10px!important;border-left:0!important}
 #ratesView #psvLibraryPanel {padding:0}
 #ratesView .material-library-layout {gap:10px}
 #ratesView .table-wrap,#plantLibraryView .table-wrap {padding:0}
 #ratesView .eyebrow,#plantLibraryView .eyebrow,#businessSetupView>.section-heading .eyebrow {display:none}
 #businessSetupView .backup-setup-entry {display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 10px}
 #businessSetupView #backupHealth {margin:0;font-size:12px}
 #recordView .job-quick-recovery {margin:0 0 8px;border-radius:var(--bindr-ui-radius);box-shadow:none}
 #recordView .job-quick-recovery-bar {padding:6px 10px;gap:8px;min-height:34px}
 #recordView .job-quick-recovery-bar>span {font-size:12px}
 #recordView .job-quick-recovery-panel {padding:10px}
 #recordView .variation-card-list {margin-bottom:10px}
 #recordView .variation-workspace {padding:10px}
 #recordView .variation-card p {margin:3px 0;font-size:13px}
 .app-shell #recordView .qr-view-heading {padding:7px 10px!important;border-left:0!important;gap:8px}
 .app-shell #cvrDashboardView .cvr-report-panel-heading {margin:-10px -10px 10px;padding:7px 10px}
 .app-shell #cvrDashboardView .cvr-report-panel>h3 {padding:7px 10px;margin:-10px -10px 8px;background:var(--bindr-ui-section);border-left:0;border-bottom:1px solid var(--bindr-ui-edge)}
 .cvr-report .cvr-month-bar.selected {border-color:var(--bindr-ui-charcoal);background:#edf1f5}
 .cvr-report .cvr-month-bar .value,.cvr-report .cvr-chart-legend .value {background:#52766b}
 .app-shell #dashboardView .crm-quote-hub.is-live {background:#f0f6f1;border-left:3px solid #72977c}
 .app-shell #dashboardView .crm-quote-hub.is-tender {background:#eff4f9;border-left:3px solid #7294b4}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) :is(.crm-empty,.qr-empty) {border:0}
 .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView) .crm-table th .bindr-help {display:inline-flex}
 .bindr-operations .ops-header {padding:10px 16px;gap:10px;background:#e9edf2}
 .bindr-operations .ops-brand {font-size:24px}
 .bindr-operations .ops-main {max-width:none;margin:0;padding:10px 16px}
 .bindr-operations .ops-main h1 {font-size:19px;margin:8px 0 12px}
 .bindr-operations .ops-header button,.bindr-operations .btn {min-height:var(--bindr-ui-control);padding:5px 9px;border-radius:var(--bindr-ui-radius);font-size:13px}
 .bindr-operations .account-panel {padding:10px;margin-bottom:10px;border-radius:var(--bindr-ui-radius);box-shadow:none}
 .bindr-operations .account-panel h3 {padding:7px 10px;margin:-10px -10px 8px;background:var(--bindr-ui-section);font-size:14px;border-bottom:1px solid var(--bindr-ui-edge)}
 .bindr-operations .account-table :is(th,td) {padding:6px 8px;font-size:13px}
 .bindr-operations .account-table th {font-size:12px;text-transform:none;letter-spacing:0;background:#e9edf2}
 .bindr-operations .ops-quantities {gap:10px}
 .bindr-operations .ops-quantities div {padding:7px 10px;border:1px solid var(--bindr-ui-edge);border-radius:var(--bindr-ui-radius)}
 .bindr-operations .ops-quantities strong {margin-top:3px;font-size:18px}
 .bindr-operations .ops-handover {gap:10px}
 .bindr-operations .ops-handover dd {margin-top:3px}
 @media(min-width:1051px) {
  body:not(:has(#estimateView.active,#knockUpView.active,#takeoffView.active,#quoteView.active)) .sidebar .brand-copy>span {display:none}
  body:not(:has(#estimateView.active,#knockUpView.active,#takeoffView.active,#quoteView.active)) .sidebar .brand {margin-bottom:12px;gap:10px}
  body:not(:has(#estimateView.active,#knockUpView.active,#takeoffView.active,#quoteView.active)) .sidebar .brand-mark {width:34px;height:34px;flex-basis:34px}
 }
 @media(max-width:600px) {
  .bindr-operations .ops-main,.bindr-operations .ops-header {padding:10px}
 }
}
@media screen {
 #recordView #quoteRecord .vjf-revision-list {padding:8px 10px;gap:6px}
 #recordView #quoteRecord .vjf-revision-row {padding:7px 10px;gap:12px;border-radius:3px;box-shadow:none;border-left-width:3px}
 #recordView #quoteRecord .vjf-revision-row>div:first-child {display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}
 #recordView #quoteRecord .vjf-revision-row :is(strong,span) {font-size:13px;margin:0}
 #recordView #quoteRecord .vjf-revision-value {gap:3px}
 #recordView #quoteRecord .variation-card {border-radius:3px;border-left-width:3px;margin:0}
 #recordView #quoteRecord .variation-card>header {padding:7px 10px;align-items:center;gap:10px}
 #recordView #quoteRecord .variation-card>header>div {display:flex;align-items:center;gap:12px;flex-wrap:wrap}
 #recordView #quoteRecord .variation-card h3 {font-size:14px!important;line-height:1.35;margin:0}
 #recordView #quoteRecord .variation-reference {font-size:12px}
 #recordView #quoteRecord .variation-card-body {padding:6px 10px;gap:12px}
 #recordView #quoteRecord .variation-values>div {padding:0 10px;gap:3px}
 #recordView #quoteRecord .variation-values strong {font-size:16px;margin:2px 0}
 #recordView #quoteRecord .variation-values :is(span,small) {font-size:12px}
 #recordView #quoteRecord .variation-card footer {padding:4px 10px}
 #recordView #quoteRecord .variation-history {padding:5px 10px;font-size:12px}
 #recordView #quoteRecord .variation-history summary {padding:0;min-height:20px}
 #recordView #quoteRecord .variation-contract-total :is(span,strong) {color:var(--bindr-ui-ink)}
 #recordView #quoteRecord .variation-contract-total {border-color:#8796a5;background:#e9edf2}
 #recordView #quoteRecord .variation-card-list {gap:8px;margin-bottom:10px}
 #cvrForm #cvrProgressPanel>.bindr-context-help {margin:6px 0}
 #cvrForm .cvr-recovery {padding:5px 10px;gap:2px;border-left-color:#74808d;border-radius:3px;background:#eef2f6}
 #cvrForm .cvr-recovery strong {font-size:18px}
 #cvrForm .cvr-recovery small {font-size:12px}
 #cvrForm .cvr-section {margin-bottom:10px}
 @media(max-width:700px) {
  #recordView #quoteRecord .vjf-revision-row {grid-template-columns:minmax(0,1fr) auto}
  #recordView #quoteRecord .vjf-revision-buttons {grid-column:1/-1;justify-content:flex-start}
  #recordView #quoteRecord .variation-card>header {align-items:flex-start;flex-wrap:wrap}
 }
}
@media screen {
 /* Editor chrome is compact; the isolated quotation preview retains its layout. */
 #quoteTemplateView>.section-heading .eyebrow {display:none}
 #quoteTemplateView .quote-appearance-workspace {grid-template-columns:minmax(270px,310px) minmax(0,1fr);gap:10px;margin-bottom:10px}
 #quoteTemplateView :is(.quote-appearance-controls,.quote-appearance-preview-panel,.template-panel) {padding:10px;border-radius:var(--bindr-ui-radius);box-shadow:none}
 #quoteTemplateView .quote-appearance-controls>h3 {font-size:14px;padding:7px 10px;margin:-10px -10px 8px;background:var(--bindr-ui-section);border-bottom:1px solid var(--bindr-ui-edge)}
 #quoteTemplateView .quote-appearance-state {padding:4px 0 8px}
 #quoteTemplateView .quote-appearance-controls fieldset {margin-top:10px}
 #quoteTemplateView .quote-appearance-controls legend {font-size:13px;margin-bottom:4px}
 #quoteTemplateView .quote-appearance-fields {gap:6px 8px;margin-top:4px}
 #quoteTemplateView .quote-preview-scroll {padding:8px;border-radius:3px}
 #quoteTemplateView .quote-template-layout {gap:10px;margin-bottom:10px}
 #quoteTemplateView .template-panel>h3 {font-size:14px;margin:8px 0}
 .app-shell #quoteTemplateView :is(.template-panel>h3,.template-panel>.panel-title-row) {border-left:0;padding:7px 10px;border-radius:0}
 #cvrForm>header {border-left:0;margin-bottom:10px;padding:8px 10px}
 #cvrForm>header>div:first-child>span {font-size:13px}
 #cvrForm .cvr-recovery {display:flex;align-items:center;gap:8px;min-width:0;padding:6px 8px}
 #cvrForm .cvr-recovery strong {white-space:nowrap}
 #cvrForm .btn {min-height:var(--bindr-ui-control);padding:5px 9px;font-size:13px;border-radius:var(--bindr-ui-radius)}
 #cvrForm .cvr-section {padding:10px;border-radius:var(--bindr-ui-radius);margin:0 0 10px;border:1px solid var(--bindr-ui-edge)}
 #cvrForm .cvr-section>.cvr-section-heading {margin:-10px -10px 8px;padding:7px 10px;border-radius:0}
 #cvrForm :is(.cvr-table th,.cvr-table td) {padding:5px 7px;font-size:13px;line-height:1.35}
 #cvrForm .cvr-table th {font-size:12px}
 #cvrForm .cvr-work-package {margin:7px 0;border-radius:3px}
 #cvrForm .cvr-work-package>summary {padding:6px 8px;font-size:13px}
 #cvrForm :is(.cvr-work-heading,.cvr-site-works h4) {font-size:13px;margin:8px 0}
 #cvrForm .cvr-site-works {padding:0;margin-top:8px;border-top:1px solid var(--bindr-ui-edge)}
 #cvrForm .cvr-site-works>.cvr-section-heading {padding:4px 0;margin:0;background:transparent}
 #cvrForm .cvr-value-mode {padding:0;margin:5px 0}
 #recordView .invoices .invoice-parties {gap:10px 16px;margin:10px 0}
 #recordView .invoices .invoice-parties section {gap:6px}
 #recordView .invoices :is(h3,h4) {font-size:14px;margin:6px 0}
 #recordView .invoices .afp-toolbar {margin:8px 0}
 #recordView .invoices .invoice-editor>label {margin:8px 0}
 #recordView .invoices [data-invoice-status]:empty {display:none}
 #recordView #quoteRecord .invoice-editor>h3 {margin:0 0 8px;padding:7px 10px;border-left:0;font-size:14px}
 #recordView .afp-totals {padding:8px 10px;gap:8px 18px;border-radius:var(--bindr-ui-radius);background:#eef2f6}
 #crmForm {padding:12px}
 #crmForm>header {margin-bottom:10px;padding:7px 10px;border-left:0;border-radius:0}
 #crmForm h2 {font-size:18px}
 #crmFormFields {gap:8px 12px}
 #crmFormFields label {font-size:13px;gap:4px}
 #crmFormFields :is(input,select,textarea) {min-height:var(--bindr-ui-control);padding:5px 7px;font-size:13px;border-radius:var(--bindr-ui-radius)}
 #crmForm :is(.btn,button[type=submit]) {min-height:var(--bindr-ui-control);padding:5px 9px;font-size:13px;border-radius:var(--bindr-ui-radius)}
 #crmForm>footer {padding:8px 0 0;margin-top:10px}
 #crmDialog #crmFormFields :is(input,select) {height:var(--bindr-ui-control)}
 #crmDialog .enquiry-number-notice {padding:7px 10px;font-size:13px;background:#eef2f6;border-color:var(--bindr-ui-edge);border-radius:var(--bindr-ui-radius)}
 #crmDialog .enquiry-client-select .btn.link {min-height:24px;padding:2px 5px}
 #recordView .project-documents {min-height:0;border-radius:var(--bindr-ui-radius)}
 #recordView .project-documents .enquiry-upload {padding:8px 10px;gap:8px 12px}
 .bindr-help>div[popover] {margin:0;max-height:calc(100dvh - 24px);overflow:auto}
 .bindr-nav-toggle {display:none}
 @media(max-width:1050px) {
  .app-shell {grid-template-rows:auto 1fr;align-content:start}
  .app-shell>.sidebar {height:auto;min-height:0;padding:8px 12px;overflow:visible;background:#232930}
  .sidebar .brand {width:100%;margin:0;padding:0;gap:10px}
  .sidebar .brand-copy>span {display:none!important}
  .sidebar .brand-mark {width:30px;height:30px;flex-basis:30px}
  .sidebar .brand strong {font-size:24px}
  .sidebar .bindr-nav-toggle {display:block;margin-left:auto;min-height:40px;padding:7px 12px;border:1px solid #697785;border-radius:var(--bindr-ui-radius);background:#303b47;color:#fff;font:600 14px/1.3 system-ui;cursor:pointer}
  .sidebar nav {display:none;overflow:visible}
  .sidebar.bindr-nav-open nav {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px;max-height:65dvh;overflow-y:auto}
  .sidebar .nav-section {min-width:0;padding:0 0 6px}
  .sidebar .nav-item {width:100%;min-height:40px;white-space:normal}
  .sidebar nav>.nav-item {grid-column:1/-1}
  .sidebar .nav-section[hidden],.sidebar .nav-item[hidden] {display:none}
  .sidebar .sidebar-footer {display:none!important}
  .sidebar #saveSyncSlot:empty {display:none}
 }
 @media(max-width:800px) {
  #quoteTemplateView .quote-appearance-workspace {grid-template-columns:minmax(0,1fr)}
 }
 @media(max-width:600px) {
  .sidebar.bindr-nav-open nav {grid-template-columns:repeat(2,minmax(0,1fr))}
 }
 @media(pointer:coarse) {
  #cvrForm .btn,#crmForm :is(.btn,button[type=submit]),#crmFormFields :is(input,select) {min-height:40px}
  #crmDialog .enquiry-client-select .btn.link {min-height:40px}
 }
}

@media screen and (max-width:420px) {#recordView .job-pricing-totals.cvr-costing-overview {grid-template-columns:minmax(0,1fr)}}

/* CRM quote lists show decision essentials; supporting detail lives in the Quote File. */
@media screen {
 .app-shell :is(#pipelineView,#liveQuotesView,#tenderQuotesView) .pipeline-register .crm-table {min-width:850px;table-layout:auto}
 .app-shell :is(#pipelineView,#liveQuotesView,#tenderQuotesView) .pipeline-register .crm-table :is(th,td) {padding:10px;white-space:normal}
 .app-shell :is(#pipelineView,#liveQuotesView,#tenderQuotesView) .pipeline-register .crm-table :is(.pipeline-ref,.money-cell,.pipeline-days,.pipeline-followup-cell) {white-space:nowrap;font-variant-numeric:tabular-nums}
 body[data-bindr-theme="evergreen"] .app-shell :is(#pipelineView,#liveQuotesView,#tenderQuotesView) .pipeline-actions {display:flex;flex-wrap:nowrap;align-items:center;gap:6px;min-width:0;max-width:none}
 .pipeline-ref>small {font-weight:500}
 #recordView .quote-file-details {display:grid;grid-template-columns:minmax(220px,1fr) minmax(320px,1.4fr);gap:12px;margin:12px 0}
 #recordView .quote-file-details .vjf-overview-card {margin:0;min-width:0}
 #recordView .quote-file-card-body {padding:12px 14px;display:grid;gap:10px}
 #recordView .quote-file-card-body>p {margin:0;font-size:13px;color:var(--muted)}
 #recordView .quote-file-card-body .chase-contact {padding:0;border:0;background:none}
 #recordView .quote-file-card-body dl {display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}
 #recordView .quote-file-card-body dt {font-size:12px;color:var(--muted)}
 #recordView .quote-file-card-body dd {margin:3px 0 0;font-size:14px;overflow-wrap:anywhere}
 #recordView .quote-file-followup-fields {display:flex;flex-wrap:wrap;gap:12px;align-items:start}
 #recordView .quote-file-followup-fields label {display:grid;gap:5px;margin:0;font-size:12px}
 #recordView .quote-file-followup-fields :is(select,input) {min-height:34px}
 #recordView .quote-file-next-action {display:grid;gap:4px}
 #recordView .quote-file-card-body>.btn {justify-self:start}
 @media(max-width:850px) {#recordView .quote-file-details {grid-template-columns:minmax(0,1fr)}}
}

/* Keep the estimator selector on the dashboard action row. */
@media screen {
 #dashboardView .dashboard-estimator-filter {display:flex;align-items:center;gap:8px;margin:0;font-size:13px;color:var(--muted);white-space:nowrap}
 #dashboardView .dashboard-estimator-filter select {width:220px;max-width:55vw;min-height:34px;padding:5px 9px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font:inherit}
}

/* One compact follow-up list, grouped by due day. */
@media screen {
 .app-shell .quote-followup-panel .followup-filters {display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px;border-bottom:1px solid var(--line)}
 .app-shell .quote-followup-panel .followup-filters button {display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);font:600 13px/1.3 system-ui;cursor:pointer}
 .app-shell .quote-followup-panel .followup-filters button.active {background:#fff0e2;border-color:#e5a36c;color:#803900}
 .app-shell .quote-followup-panel .followup-filters button span {font-variant-numeric:tabular-nums;font-size:12px}
 .app-shell .quote-followup-panel .followup-day th {padding:7px 10px;background:#f0f3f6;color:#334155;text-align:left;font-size:13px}
 .app-shell .quote-followup-panel .followup-day.is-today th {background:#fff0e2;color:#803900}
 .app-shell .quote-followup-panel .followup-day.is-overdue th {background:#fff1ef;color:#9d3025}
 .app-shell .quote-followup-panel .followup-day :is(span,small) {font-size:12px;font-weight:400}
 .app-shell .quote-followup-panel .crm-table td {padding:8px 10px;vertical-align:middle}
 .app-shell .quote-followup-panel .crm-table td:last-child {width:1%;white-space:nowrap}
 .app-shell .quote-followup-panel .followup-late {color:#a33521;font-size:11px}
}

@media screen {
 .app-shell .quote-followup-panel .followup-row-actions {display:flex;align-items:center;gap:6px;white-space:nowrap}
 .app-shell .quote-followup-panel .followup-quote-icon {display:inline-flex;align-items:center;justify-content:center;min-width:34px;padding:6px}
 .app-shell .quote-followup-panel .money-cell {white-space:nowrap;font-variant-numeric:tabular-nums}
}

/* Shared compact page chrome and list controls. */
@media screen {
 body .app-shell .topbar.bindr-page-header{min-height:60px!important;padding:8px 16px!important;gap:10px}
 body .app-shell .topbar.bindr-page-header h1{font-size:24px!important;line-height:1.2; margin:0}
 body .app-shell .topbar.bindr-page-header .software-section-label{margin-bottom:2px;font-size:10px!important}
 body .app-shell .view:not(#estimateView,#knockUpView,#takeoffView,#quoteView){padding-top:8px}
 /* Routine connection acknowledgements still announce to assistive technology. */
 body .app-shell #crmStatus.is-routine:not(.error){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
 body .app-shell .view.active:has(>.crm-filters){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-content:start}
 body .app-shell .view.active:has(>.crm-filters)>*{grid-column:1/-1;min-width:0}
 body .app-shell .view.active:has(>.crm-filters)>.crm-page-heading{grid-column:2;grid-row:1;margin:0;padding:0;min-height:0;align-self:end;flex-direction:row;justify-content:flex-end}
 body .app-shell .view.active:has(>.crm-filters)>.crm-page-heading>.top-actions{margin:0;gap:8px;justify-content:flex-end}
 body .app-shell .view.active:has(>.crm-filters)>.crm-filters{grid-column:1;grid-row:1;margin:0;padding:0 0 8px;gap:8px 12px;flex-wrap:wrap}
 body .app-shell .view.active:has(>.crm-filters)>.crm-filters label:first-child{width:min(380px,100%)}
 body .app-shell .view.active:has(>.crm-filters)>.account-scope{grid-column:1;grid-row:1;margin:0;padding:0;min-height:34px;border:0;flex-wrap:wrap;gap:6px}
 body .app-shell .view.active:has(>.account-scope):has(>.crm-filters)>.crm-page-heading{align-self:center}
 body .app-shell .view.active:has(>.account-scope):has(>.crm-filters)>.crm-filters{grid-column:1/-1;grid-row:2;padding:0 0 8px}
 body .app-shell .view.active:has(>.crm-filters)>.pipeline-stage-filter{margin:0;gap:8px}
 body .app-shell .view.active:has(>.crm-filters)>.crm-table-wrap{margin-top:0}
 body .app-shell .view.active:has(>.crm-filters) .pipeline-toolbar{padding:6px 10px}
 body .app-shell .view.active:has(>.crm-filters) .pipeline-stage-choice{padding:8px 12px;min-height:0}
 @media(max-width:720px){
  body .app-shell .topbar.bindr-page-header{padding:8px 12px!important}
  body .app-shell .topbar.bindr-page-header h1{font-size:21px!important}
  body .app-shell .view.active:has(>.crm-filters){grid-template-columns:minmax(0,1fr)}
  body .app-shell .view.active:has(>.crm-filters)>:is(.account-scope,.crm-page-heading,.crm-filters){grid-column:1;grid-row:auto}
  body .app-shell .view.active:has(>.account-scope):has(>.crm-filters)>.crm-filters{grid-row:auto}
  body .app-shell .view.active:has(>.crm-filters)>.crm-page-heading{justify-content:flex-start}
  body .app-shell .view.active:has(>.crm-filters)>.crm-filters label:first-child{width:100%}
 }
}

/* File references use the row's typography; the full row is the opening target. */
@media screen {
 body .app-shell [data-bindr-file-row] {cursor:pointer}
 body .app-shell [data-bindr-file-row]:hover {background-color:#f2f5f8}
 body .app-shell [data-bindr-file-row]:focus-visible {outline:2px solid #b96624;outline-offset:-2px}
 body .app-shell [data-bindr-file-row] .bindr-row-reference {
  color:inherit!important;font:inherit!important;text-decoration:none!important;
  background:transparent!important;border:0!important;border-radius:0;padding:0!important;
  min-height:0;box-shadow:none;text-align:left;letter-spacing:inherit;
 }
 body .app-shell .pipeline-ref,body .app-shell .pipeline-ref .bindr-row-reference {white-space:nowrap;overflow-wrap:normal}
}

/* Open CRM enquiries and quotes share the same Live / Tender tint in every list. */
@media screen {
 body .app-shell tr[data-crm-quote-tone="live"] {--crm-quote-tint:var(--bindr-live-tint,#f7faf8);--crm-quote-hover:var(--bindr-live-tint,#f7faf8)}
 body .app-shell tr[data-crm-quote-tone="tender"] {--crm-quote-tint:var(--bindr-tender-tint,#f7f9fd);--crm-quote-hover:var(--bindr-tender-tint,#f7f9fd)}
 body .app-shell tr[data-crm-quote-tone],
 body .app-shell tr[data-crm-quote-tone]>td {background:var(--crm-quote-tint)!important}
 body .app-shell tr[data-crm-quote-tone]:is(:hover,:focus-visible),
 body .app-shell tr[data-crm-quote-tone]:is(:hover,:focus-visible)>td {background:var(--crm-quote-hover)!important}
}

/* Orange end glows identify the full clickable file row without moving it. */
@media screen {
 body .app-shell tr[data-bindr-file-row]:is(:hover,:focus-visible)>:first-child {
  box-shadow:inset 4px 0 0 #ff8a1c,inset 18px 0 18px -12px rgb(255 138 28 / .75)!important;
 }
 body .app-shell tr[data-bindr-file-row]:is(:hover,:focus-visible)>:last-child {
  box-shadow:inset -4px 0 0 #ff8a1c,inset -18px 0 18px -12px rgb(255 138 28 / .75)!important;
 }
 body .app-shell [data-bindr-file-row]:not(tr):is(:hover,:focus-visible),
 body .app-shell tr[data-bindr-file-row]:is(:hover,:focus-visible)>:only-child {
  box-shadow:inset 4px 0 0 #ff8a1c,inset -4px 0 0 #ff8a1c,inset 18px 0 18px -12px rgb(255 138 28 / .75),inset -18px 0 18px -12px rgb(255 138 28 / .75)!important;
 }
}

/* Job documents reuse the folder explorer with the compact, neutral shell. */
@media screen {
 .job-document-folders .fx-toolbar,.job-document-folders .fx-tree {background:#fff}
 .job-document-folders .fx-toolbar {padding:10px 12px;gap:10px}
 .job-document-folders .fx-path {padding:6px 10px;min-height:40px}
 .job-document-folders .fx-folder-heading {padding:12px}
 .job-document-folders .fx-table td {padding:10px}
}
