:root {
  color-scheme: light;
  --surface-base: #f8fafc;
  --surface-raised: #ffffff;
  --surface-subtle: #eef4f7;
  --ink-primary: #172026;
  --ink-secondary: #52636c;
  --ink-muted: #7c8a92;
  --border-subtle: #d8e2e7;
  --primary: #0f5e7a;
  --primary-hover: #0b4c63;
  --primary-soft: #e4f3f7;
  --accent: #d97706;
  --accent-soft: #fef3c7;
  --success: #16834a;
  --success-soft: #e7f6ed;
  --danger: #c9342c;
  --white: #ffffff;
}

.support-contact-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(240px, 1fr); gap: 40px; border-top: 1px solid var(--border-subtle); padding-top: 24px; }
.support-contact-form, .support-contact-aside { min-width: 0; }
.support-contact-form { display: grid; gap: 20px; align-content: start; }
.support-contact-form .validation-summary-valid, .support-contact-form .field-validation-valid { display: none; }
.support-contact-form .support-reply-address { margin: 0; }
.support-contact-form .field-group { display: grid; gap: 8px; min-width: 0; }
.support-contact-form input[type="text"], .support-contact-form textarea { box-sizing: border-box; width: 100%; padding: 12px; border: 1px solid var(--border-subtle); border-radius: 6px; background: var(--surface-raised); color: var(--ink-primary); font: inherit; }
.support-contact-form textarea { resize: vertical; min-height: 180px; }
.support-contact-form label { font-weight: 600; }
.support-contact-page p { line-height: 1.5; }
.support-contact-page p, .support-contact-page dd, .support-contact-page a { overflow-wrap: anywhere; }
.support-contact-page .support-note { color: var(--ink-secondary); font-size: 14px; margin: 6px 0; }
.support-checkbox { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; }
.support-checkbox input { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 3px; accent-color: var(--primary); }
.support-technical-option { border-top: 1px solid var(--border-subtle); padding-top: 20px; }
.support-technical-option details { margin-top: 12px; font-size: 14px; }
.support-technical-option summary { cursor: pointer; color: var(--primary); }
.support-technical-option dl { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 8px 16px; }
.support-technical-option dd { margin: 0; }
.support-contact-aside section + section { border-top: 1px solid var(--border-subtle); margin-top: 24px; padding-top: 24px; }
.support-contact-aside h2 { font-size: 18px; margin: 0 0 12px; letter-spacing: 0; }
.support-form-actions .primary-action { min-height: 44px; max-width: 100%; white-space: normal; }
@media (max-width: 800px) {
  .support-contact-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .support-contact-aside { border-top: 1px solid var(--border-subtle); padding-top: 24px; }
}

.storage-section {
  min-width: 0;
  padding: 20px 0;
  border-top: 1px solid var(--border-subtle);
}

.storage-section h2 { margin: 0 0 12px; font-size: 18px; letter-spacing: 0; }
.storage-section p { line-height: 1.5; }
.storage-note, .storage-upload-hint { color: var(--ink-secondary); font-size: 14px; }
.storage-meter { width: 100%; height: 12px; accent-color: var(--success); }
.storage-meter[data-level="warning"] { accent-color: var(--accent); }
.storage-meter[data-level="critical"], .storage-meter[data-level="full"] { accent-color: var(--danger); }
.storage-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 20px 0; }
.storage-metrics dt { font-size: 13px; color: var(--ink-secondary); }
.storage-metrics dd { margin: 6px 0 0; font-size: 18px; font-weight: 650; font-variant-numeric: tabular-nums; }
.storage-metrics > div, .storage-photo-options span { min-width: 0; overflow-wrap: anywhere; }
.storage-notice { padding: 12px 16px; border-left: 3px solid var(--accent); background: #fff9e8; color: var(--ink-primary); font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.storage-notice p { margin: 6px 0; }
.storage-notice-critical, .storage-notice-full { border-color: var(--danger); background: #fff1f0; }
.storage-photo-options { display: grid; gap: 12px; padding: 0; margin: 16px 0; border: 0; min-width: 0; }
.storage-option-legend { margin-bottom: 10px; font-size: 14px; font-weight: 600; }
.storage-photo-options label { display: flex; align-items: start; gap: 10px; cursor: pointer; }
.storage-photo-options input[type="radio"] { flex: 0 0 18px; width: 18px; height: 18px; margin: 2px 0; accent-color: var(--primary); }
.storage-photo-options small { display: block; margin-top: 4px; color: var(--ink-secondary); line-height: 1.5; }
.storage-links { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.storage-upload-hint { margin: 10px 0; line-height: 1.5; }
.storage-upload-hint p { margin: 6px 0; }
.storage-page .primary-action { max-width: 100%; white-space: normal; }
.storage-page a { overflow-wrap: anywhere; }
@media (max-width: 640px) {
  .storage-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .storage-page .settings-detail-header { flex-wrap: wrap; }
}

.job-checklist-summary-actions,
.job-checklist-filters,
.job-checklist-review-group > summary {
  display: flex;
  align-items: center;
  gap: 10px;
}

.job-checklist-filters {
  flex-wrap: wrap;
  padding: 12px 20px;
  border-bottom: 1px solid #dbe5e8;
  background: #f8fbfc;
}

.job-checklist-filters button {
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid #c9d9df;
  border-radius: 6px;
  background: #fff;
  color: #075f76;
  font-size: 0.8rem;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}

.job-checklist-filters button span {
  margin-left: 5px;
  color: #52636c;
  font-weight: 700;
}

.job-checklist-filters button.is-active {
  border-color: #0f718b;
  background: #e4f3f7;
  box-shadow: inset 0 2px 0 #0f718b;
}

.job-checklist-filters button.is-active span {
  color: #075f76;
}

.job-checklist-review-list {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.job-checklist-review-group {
  overflow: hidden;
  border: 1px solid #cbdbe1;
  border-radius: 7px;
  background: #fff;
}

.job-checklist-review-group > summary {
  justify-content: space-between;
  min-height: 58px;
  padding: 13px 16px;
  cursor: pointer;
  background: #f8fbfc;
}

.job-checklist-review-group > summary > span:first-child {
  display: grid;
  gap: 3px;
}

.job-checklist-review-group > summary small {
  color: #61747c;
}

.job-checklist-phase-group > h3 {
  margin: 0;
  padding: 11px 16px;
  border-top: 1px solid #dbe5e8;
  border-bottom: 1px solid #dbe5e8;
  background: #eef7f8;
  color: #075f76;
  font-size: 0.82rem;
}

.job-checklist-step-editor {
  grid-column: 1 / -1;
  margin-top: 9px;
  border-top: 1px solid #e1e9ec;
}

.job-checklist-step-editor > summary {
  padding: 10px 0 0;
  cursor: pointer;
  color: #075f76;
  font-size: 0.82rem;
  font-weight: 800;
}

.job-checklist-step-editor .job-checklist-step-form {
  margin-top: 12px;
  padding: 14px;
  border: 1px solid #d6e2e6;
  border-radius: 6px;
  background: #f8fbfc;
}

@media (max-width: 680px) {
  .job-checklist-progress-header,
  .job-checklist-review-group > summary {
    align-items: stretch;
  }

  .job-checklist-progress-header {
    display: grid;
  }

  .job-checklist-summary-actions {
    justify-content: space-between;
  }
}

.checklist-correction-form {
    display: grid;
    gap: 12px;
    padding-top: 14px;
}

.checklist-correction-form + .checklist-correction-form {
    margin-top: 14px;
    border-top: 1px solid var(--border-color, #d5e0e5);
}

.checklist-impact {
    margin-top: 12px;
    padding: 12px 14px;
    border: 1px solid #c9dbe2;
    border-left: 4px solid #2384a0;
    background: #f2f8fa;
}

.checklist-impact p {
    margin: 4px 0 0;
}

.checklist-impact-warning {
    border-color: #e4c576;
    border-left-color: #c88800;
    background: #fff8e8;
}

.checklist-impact-high {
    border-color: #e1a19a;
    border-left-color: #b52b22;
    background: #fff3f1;
}

.button-danger-subtle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 42px;
    padding: 0 16px;
    border: 1px solid #c94a40;
    border-radius: 6px;
    color: #a9231b;
    background: #fff;
    font: inherit;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

.button-danger-subtle:hover {
    background: #fff3f1;
}

.checklist-archive-disclosure {
    margin-top: 16px;
    border-top: 1px solid var(--border-color, #d5e0e5);
    padding-top: 14px;
}

.checklist-archive-disclosure > summary {
    color: #005d73;
    font-weight: 700;
    cursor: pointer;
}

.checklist-archive-list {
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.checklist-archive-item {
    padding: 12px 14px;
    border: 1px solid #d5e0e5;
    border-radius: 6px;
    background: #f8fafb;
}

.checklist-archive-item > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.checklist-archive-item p {
    margin: 5px 0 0;
}

.checklist-archive-steps-disclosure {
    margin-top: 10px;
}

.checklist-archive-steps-disclosure > summary {
    color: #005d73;
    font-weight: 700;
    cursor: pointer;
}

.checklist-archive-steps {
    display: grid;
    gap: 8px;
    margin: 10px 0 0;
    padding: 0;
    list-style: none;
}

.checklist-archive-steps li {
    padding: 10px 0;
    border-top: 1px solid #dce6ea;
}

.checklist-archive-steps li > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

@media (max-width: 720px) {
    .button-danger-subtle {
        width: 100%;
    }

    .checklist-archive-item > div {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Invoice release workspace */
.invoice-release-page,.invoice-detail-page{max-width:none;width:100%}.invoice-release-header{align-items:flex-start}.invoice-kpis .workspace-kpi-card{text-decoration:none;color:inherit;min-height:126px}.invoice-kpis .workspace-kpi-card.is-selected{border-color:#08758e;background:#eef9fb;box-shadow:inset 0 3px 0 #08758e}.workspace-list-card{background:#fff;border:1px solid #cbdbe3;border-radius:7px;overflow:hidden}.workspace-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 20px;border-bottom:1px solid #d7e2e8}.segmented-tabs{display:flex;gap:6px;flex-wrap:wrap}.segmented-tabs a{color:#435963;text-decoration:none;font-weight:700;padding:9px 13px;border-radius:6px}.segmented-tabs a.active{background:#e4f4f7;color:#075f74}.workspace-search{display:flex;align-items:center;gap:6px;min-width:min(360px,100%)}.workspace-search label{flex:1}.workspace-search input{width:100%}.icon-action{width:44px;height:44px;border:1px solid #c9d9e1;background:#fff;border-radius:6px;color:#075f74;font-size:22px}.invoice-row-head,.invoice-directory-row{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(220px,1.3fr) minmax(150px,.75fr) minmax(130px,.7fr) 96px;gap:22px;align-items:center}.invoice-row-head{padding:12px 20px;color:#63757e;font-size:.78rem;font-weight:800;text-transform:uppercase}.invoice-directory-row{padding:18px 20px;border-top:1px solid #e1e9ed;text-decoration:none;color:#16232b;transition:background .15s}.invoice-directory-row:hover,.invoice-directory-row:focus-visible{background:#f3fafb}.invoice-directory-row>span{display:flex;flex-direction:column;gap:4px;min-width:0}.invoice-directory-row small{color:#5f737e}.invoice-directory-row .row-action{align-items:flex-end;color:#00677d;font-weight:800}.workspace-empty{padding:42px 24px;text-align:center}.workspace-empty.compact{padding:24px}.drawer-backdrop{position:fixed;inset:0;z-index:80;background:rgba(10,31,40,.38);display:flex;justify-content:flex-end}.workspace-drawer{width:min(760px,100%);height:100%;overflow:auto;background:#fff;box-shadow:-16px 0 36px rgba(15,42,53,.16)}.drawer-heading{display:flex;justify-content:space-between;gap:20px;padding:28px 30px 20px;border-bottom:1px solid #d8e3e8}.drawer-heading h2{margin:0 0 6px}.drawer-heading p{margin:0;color:#536a75}.drawer-close{display:grid;place-items:center;width:40px;height:40px;color:#17262d;text-decoration:none;font-size:28px}.drawer-form{padding:0 30px 30px}.drawer-section{padding:24px 0;border-bottom:1px solid #dce6ea}.drawer-section h3{font-size:1rem;margin:0 0 16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid label{display:flex;flex-direction:column;gap:7px;font-weight:700}.full-row{grid-column:1/-1}.invoice-job-picker{display:grid;gap:10px}.invoice-job-option{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px;border:1px solid #ccdae1;border-radius:7px;cursor:pointer}.invoice-job-option:has(input:checked){border-color:#08758e;background:#eff9fb}.invoice-job-option span{display:flex;flex-direction:column;gap:4px}.invoice-job-option small{font-weight:400;color:#5a707b}.segmented-control{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.segmented-control label{position:relative}.segmented-control input{position:absolute;opacity:0}.segmented-control span{display:block;text-align:center;padding:12px;border:1px solid #cadbe2;border-radius:6px;font-weight:700}.segmented-control input:checked+span{border-color:#08758e;background:#e7f5f7;color:#075f74}.toggle-row{display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:14px;background:#f5f8fa;border-radius:6px}.toggle-row span{display:flex;flex-direction:column;gap:4px}.toggle-row small{font-weight:400}.toggle-row input{width:20px;height:20px;accent-color:#08758e}.drawer-actions,.card-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:22px}.context-feedback{margin:16px 0;padding:13px 16px;border-radius:6px;border:1px solid}.context-feedback:empty{display:none}.context-feedback.success{background:#edf8f0;border-color:#8bc99a;color:#185b2b}.context-feedback.error,.field-validation{background:#fff2f0;border-color:#e0a59d;color:#8a281e}.detail-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;background:#fff;border:1px solid #cbdbe3;border-left:4px solid #16849d;border-radius:7px}.detail-title-line{display:flex;align-items:center;gap:10px}.detail-hero h1{margin:7px 0 4px}.detail-hero p{margin:0;color:#536a75}.workspace-detail-tabs{display:flex;gap:26px;margin-top:22px;padding:0 22px;background:#fff;border:1px solid #cbdbe3;border-radius:7px;overflow:auto}.workspace-detail-tabs a{white-space:nowrap;padding:17px 0 14px;color:#465c67;text-decoration:none;font-weight:800;border-bottom:3px solid transparent}.workspace-detail-tabs a.active{color:#00677d;border-color:#0088a3}.invoice-detail-grid,.invoice-tab-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start;margin-top:18px}.card-section-heading{padding:20px 22px;border-bottom:1px solid #d8e3e8}.card-section-heading h2,.card-section-heading p{margin:0}.card-section-heading p{margin-top:5px;color:#5b707a}.invoice-job-group-title{display:flex;justify-content:space-between;padding:15px 20px;background:#f3f7f9;border-bottom:1px solid #dce5e9}.invoice-job-group-title a{color:#00677d;font-weight:700;text-decoration:none}.invoice-lines-head,.invoice-line-row{display:grid;grid-template-columns:28px minmax(220px,1.6fr) 160px 120px 100px 110px;gap:12px;align-items:center;padding:11px 20px}.invoice-lines-head{font-size:.75rem;font-weight:800;color:#637681;text-transform:uppercase}.invoice-line-row{border-top:1px solid #e1e9ed}.invoice-line-row label{display:flex;flex-direction:column;gap:4px}.invoice-line-row small{color:#627681}.quantity-fields{display:grid;grid-template-columns:1fr 58px;gap:5px}.line-include input,.rot-line-toggle input{accent-color:#08758e}.rot-line-toggle{grid-column:2}.invoice-summary-card{position:sticky;top:20px;padding:22px;background:#fff;border:1px solid #cbdbe3;border-radius:7px}.invoice-summary-card h2{font-size:1.08rem;margin:0 0 18px}.invoice-summary-card dl{margin:0}.invoice-summary-card dl div{display:flex;justify-content:space-between;gap:20px;padding:9px 0}.invoice-summary-card dl .total{margin-top:8px;padding-top:16px;border-top:2px solid #20343d;font-size:1.1rem;font-weight:800}.invoice-checklist{margin:18px 0;padding:15px;background:#f5f8fa;border-radius:6px}.invoice-checklist h3{font-size:.92rem}.invoice-checklist p{font-size:.86rem;margin:9px 0;color:#2e6241}.invoice-checklist p.needs-action{color:#965d00}.full-width{display:block;width:100%;text-align:center}.form-card{padding:24px}.form-card>h2,.form-card>p{margin-top:0}.summary-big{font-size:2rem}.fortnox-state{padding:16px;background:#f3f8fa;border-radius:6px;margin:20px 0}.compact-history,.history-row{display:flex;flex-direction:column;gap:4px;padding:14px 0;border-top:1px solid #dfe8ec}.compact-history small,.history-row small{color:#60747e}.history-list{margin-top:18px}.history-row{position:relative;padding:16px 24px 16px 48px}.history-dot{position:absolute;left:23px;top:23px;width:9px;height:9px;border-radius:50%;background:#07839d}.back-link{display:inline-block;margin-bottom:14px;color:#075f74}.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}
@media(max-width:1000px){.invoice-row-head{display:none}.invoice-directory-row{grid-template-columns:1fr 1fr}.invoice-directory-row .row-action{align-items:flex-start}.invoice-detail-grid,.invoice-tab-layout{grid-template-columns:1fr}.invoice-summary-card{position:static}.invoice-lines-card{overflow-x:auto}.invoice-lines-head,.invoice-line-row{min-width:900px}.form-grid.three-columns{grid-template-columns:1fr 1fr}}
.invoice-pricing-source{display:grid;grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr);gap:20px;margin-top:18px;padding:16px 18px;border:1px solid #cbdbe3;border-left:4px solid #16849d;border-radius:7px;background:#fff}.invoice-pricing-source>div{display:grid;gap:4px}.invoice-pricing-source span{color:#536a75}.invoice-pricing-jobs{display:flex!important;flex-wrap:wrap;justify-content:flex-end;gap:8px}.invoice-pricing-jobs>span{padding:7px 9px;border-radius:5px;background:#eef6f8;font-size:.82rem}.invoice-manual-line{margin-top:18px;border:1px solid #cbdbe3;border-radius:7px;background:#fff}.invoice-manual-line>summary{cursor:pointer;padding:17px 20px;color:#075f74;font-weight:800}.invoice-manual-line[open]>summary{border-bottom:1px solid #d8e3e8}.invoice-manual-line form{padding:20px}
@media(max-width:760px){.invoice-pricing-source{grid-template-columns:1fr}.invoice-pricing-jobs{justify-content:flex-start}.invoice-manual-line .form-grid{grid-template-columns:1fr}.invoice-manual-line .full-row{grid-column:1}}
@media(max-width:680px){.workspace-list-toolbar,.detail-hero{align-items:stretch;flex-direction:column}.workspace-search{min-width:0;width:100%}.invoice-directory-row{grid-template-columns:1fr;padding:16px}.invoice-directory-row .row-action{align-items:flex-end}.form-grid,.form-grid.three-columns{grid-template-columns:1fr}.segmented-control{grid-template-columns:1fr}.drawer-heading,.drawer-form{padding-left:18px;padding-right:18px}.workspace-detail-tabs{gap:20px}.invoice-line-row{display:grid;min-width:0;grid-template-columns:28px 1fr}.invoice-lines-head{display:none}.invoice-line-row>*{grid-column:2}.invoice-line-row>.line-include{grid-column:1;grid-row:1}.invoice-line-row>.rot-line-toggle{grid-column:2}.invoice-line-row>strong{text-align:right}.quantity-fields{grid-template-columns:1fr 72px}}

/* Notification center release contract */
.notification-page {
  width: 100%;
  max-width: none;
  padding-bottom: 32px;
}

.notification-page-header {
  align-items: flex-end;
}

.notification-page-header h1 {
  margin: 2px 0 4px;
}

.notification-mark-all-form {
  flex: 0 0 auto;
}

.notification-mark-all {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
}

.notification-tabs {
  display: flex;
  gap: 28px;
  margin: 18px 0 0;
  border-bottom: 1px solid #cad9df;
}

.notification-tabs a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 45px;
  padding: 0 2px;
  border-bottom: 3px solid transparent;
  color: #4b5e68;
  font-weight: 700;
  text-decoration: none;
}

.notification-tabs a.active {
  border-bottom-color: #087b91;
  color: #073b4a;
}

.notification-tabs a span,
.notification-filters a span {
  display: inline-grid;
  min-width: 22px;
  min-height: 22px;
  place-items: center;
  padding: 0 6px;
  border-radius: 999px;
  background: #e3f1f4;
  color: #075b70;
  font-size: 12px;
}

.notification-status-message {
  margin: 16px 0 0;
  padding: 12px 14px;
  border: 1px solid #9bd1b0;
  border-radius: 6px;
  background: #edf8f1;
  color: #146338;
  font-weight: 700;
}

.notification-center,
.notification-settings-panel {
  margin-top: 20px;
  overflow: hidden;
  border: 1px solid #cad9df;
  border-radius: 6px;
  background: #fff;
}

.notification-center-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 18px 20px;
  border-bottom: 1px solid #d7e2e7;
}

.notification-center-toolbar h2,
.notification-settings-panel h2 {
  margin: 0 0 4px;
  font-size: 19px;
}

.notification-center-toolbar p,
.notification-settings-panel header p {
  margin: 0;
  color: #536873;
}

.notification-filters {
  display: flex;
  flex: 0 0 auto;
  gap: 6px;
  padding: 4px;
  border: 1px solid #c7d8de;
  border-radius: 6px;
  background: #f5f8f9;
}

.notification-filters a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 4px;
  color: #465d68;
  font-weight: 700;
  text-decoration: none;
}

.notification-filters a.active {
  background: #fff;
  color: #075b70;
  box-shadow: 0 1px 3px rgba(15, 56, 68, .12);
}

.notification-item {
  position: relative;
  display: grid;
  grid-template-columns: 42px minmax(260px, 1.5fr) minmax(130px, .7fr) minmax(170px, .9fr) minmax(100px, auto);
  align-items: center;
  gap: 16px;
  min-height: 112px;
  padding: 18px 20px;
  border-bottom: 1px solid #dce5e9;
}

.notification-item:last-child {
  border-bottom: 0;
}

.notification-item.unread {
  border-left: 4px solid #0a8095;
  padding-left: 16px;
  background: #fbfeff;
}

.notification-type-icon,
.notification-empty-icon {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 6px;
  background: #e7f3f5;
  color: #08778c;
  font-size: 19px;
  font-weight: 800;
}

.notification-type-icon.type-offeracceptance,
.notification-type-icon.type-invoicepreparation {
  background: #e9f6ee;
  color: #18844b;
}

.notification-type-icon.type-syncissue,
.notification-type-icon.type-criticalservice {
  background: #fff2df;
  color: #9c5a00;
}

.notification-primary,
.notification-context,
.notification-next-step {
  min-width: 0;
}

.notification-type-label,
.notification-context small,
.notification-next-step small {
  display: block;
  margin-bottom: 3px;
  color: #60737d;
  font-size: 12px;
}

.notification-primary h3 {
  margin: 0 0 3px;
  font-size: 16px;
}

.notification-primary p {
  margin: 0 0 5px;
  color: #4e626d;
}

.notification-primary time {
  color: #526670;
  font-size: 12px;
}

.notification-context strong,
.notification-next-step strong {
  display: block;
  line-height: 1.35;
}

.notification-item-action {
  justify-self: end;
}

.notification-open-action {
  border: 0;
  background: transparent;
  color: #00647a;
  font: inherit;
  font-weight: 800;
  white-space: nowrap;
  cursor: pointer;
}

.notification-open-action:hover {
  text-decoration: underline;
}

.notification-empty {
  display: grid;
  justify-items: center;
  padding: 54px 20px;
  text-align: center;
}

.notification-empty h3 {
  margin: 14px 0 4px;
}

.notification-empty p,
.notification-retention-note {
  color: #61737c;
}

.notification-retention-note {
  margin: 12px 2px 0;
  font-size: 12px;
}

.notification-settings-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr);
  gap: 20px;
}

.notification-settings-panel > header {
  padding: 20px;
  border-bottom: 1px solid #d7e2e7;
}

.notification-preference-row,
.notification-required-list > div {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 82px;
  padding: 16px 20px;
  border-bottom: 1px solid #e0e8eb;
}

.notification-preference-row label,
.notification-required-list > div > span:nth-child(2) {
  display: grid;
  flex: 1;
  gap: 3px;
}

.notification-preference-row small,
.notification-required-list small {
  color: #5d7079;
}

.notification-toggle-wrap {
  position: relative;
  display: inline-block;
  width: 44px;
  height: 24px;
}

.notification-toggle {
  width: 44px;
  height: 24px;
  margin: 0;
  appearance: none;
  border: 1px solid #91a7b0;
  border-radius: 999px;
  background: #dce5e8;
  cursor: pointer;
}

.notification-toggle::after {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  margin: 2px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .24);
  transition: transform .16s ease;
}

.notification-toggle:checked {
  border-color: #08788d;
  background: #08788d;
}

.notification-toggle:checked::after {
  transform: translateX(20px);
}

.notification-toggle:focus-visible {
  outline: 3px solid rgba(8, 120, 141, .25);
  outline-offset: 2px;
}

.required-check {
  display: grid;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  place-items: center;
  border-radius: 50%;
  background: #e8f6ee;
  color: #16804a;
  font-weight: 800;
}

.notification-required-list em {
  border-radius: 999px;
  padding: 5px 9px;
  background: #edf2f4;
  color: #526771;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
  white-space: nowrap;
}

.notification-channel-note {
  margin: 18px 20px 20px;
  padding: 14px;
  border-left: 3px solid #168097;
  background: #f1f8fa;
}

.notification-channel-note p {
  margin: 4px 0 0;
  color: #526873;
}

.notification-settings-footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 18px;
}

.notification-settings-footer .auth-submit {
  width: auto;
  min-width: 190px;
}

@media (max-width: 980px) {
  .notification-item {
    grid-template-columns: 42px minmax(0, 1fr) minmax(150px, .75fr) auto;
  }

  .notification-context {
    display: none;
  }

  .notification-settings-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .notification-page-header,
  .notification-center-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .notification-mark-all,
  .notification-mark-all-form {
    width: 100%;
  }

  .notification-filters {
    width: 100%;
  }

  .notification-filters a {
    flex: 1;
    justify-content: center;
  }

  .notification-item {
    grid-template-columns: 38px minmax(0, 1fr);
    align-items: start;
    gap: 10px 12px;
    padding: 16px;
  }

  .notification-item.unread {
    padding-left: 12px;
  }

  .notification-context,
  .notification-next-step,
  .notification-item-action {
    grid-column: 2;
    justify-self: start;
  }

  .notification-context {
    display: block;
  }

  .notification-open-action {
    padding: 6px 0;
  }

  .notification-settings-footer .auth-submit {
    width: 100%;
  }
}

.customer-history-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.customer-history-heading strong { min-width: 0; }
.customer-history-heading em { flex: 0 0 auto; padding: 3px 8px; border: 1px solid #b9d7de; border-radius: 999px; color: #0a6074; background: #edf7f9; font-size: 12px; font-style: normal; font-weight: 750; }
.customer-timeline p { margin: 5px 0 0; color: #334b56; font-size: 14px; }
.customer-history-source { display: inline-flex; margin-top: 6px; color: #075f76; font-size: 13px; font-weight: 750; }
.upload-progress-status { margin: 0; padding: 10px 12px; border: 1px solid #b9d7de; border-radius: 7px; color: #174d59; background: #edf7f9; font-size: 13px; }
.upload-progress-status[hidden] { display: none; }

.users-workspace { width: 100%; max-width: none; }
.users-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; }
.invite-drawer-trigger { position: static; flex: 0 0 auto; }
.invite-drawer-trigger > summary { list-style: none; cursor: pointer; white-space: nowrap; }
.invite-drawer-trigger > summary::-webkit-details-marker { display: none; }
.users-invite-button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; padding: 0 18px; border: 1px solid #07647c; border-radius: 8px; color: #fff; background: #07647c; font-weight: 800; line-height: 1; text-decoration: none; white-space: nowrap; box-shadow: 0 1px 2px rgba(8, 45, 56, .16); }
.users-invite-button:hover { color: #fff; background: #064f62; text-decoration: none; }
.users-invite-button:focus-visible { outline: 3px solid rgba(7, 100, 124, .28); outline-offset: 3px; }
.users-invite-button span { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 18px; width: 18px; height: 18px; font-size: 22px; font-weight: 400; line-height: 18px; transform: translateY(-1px); }
.invite-drawer-backdrop { position: fixed; inset: 0; z-index: 40; background: rgba(13, 30, 36, .34); }
.invite-drawer { position: fixed; z-index: 41; top: 0; right: 0; width: min(560px, 100%); height: 100vh; overflow-y: auto; background: #fff; border-left: 1px solid var(--border); padding: 38px; box-shadow: -18px 0 50px rgba(18, 34, 40, .15); }
:where(.invite-drawer, .customer-drawer, .workspace-drawer, .job-create-drawer, .material-drawer, .invoice-create-drawer) { box-sizing: border-box; max-width: 100%; min-width: 0; overflow-x: hidden; }
:where(.invite-drawer, .customer-drawer, .workspace-drawer, .job-create-drawer, .material-drawer, .invoice-create-drawer) > *,
:where(.invite-drawer, .customer-drawer, .workspace-drawer, .job-create-drawer, .material-drawer, .invoice-create-drawer) form,
:where(.invite-drawer, .customer-drawer, .workspace-drawer, .job-create-drawer, .material-drawer, .invoice-create-drawer) fieldset { box-sizing: border-box; min-width: 0; max-width: 100%; }
:where(.invite-drawer, .customer-drawer, .workspace-drawer, .job-create-drawer, .material-drawer, .invoice-create-drawer) :is(.onboarding-message, .form-error, .customer-drawer-message, .customer-context-message, .context-feedback, .field-error) { box-sizing: border-box; max-width: 100%; overflow-wrap: anywhere; white-space: normal; }
.invite-drawer header { margin-bottom: 28px; }
.invite-drawer-close { position: absolute; top: 28px; right: 28px; display: grid; place-items: center; width: 36px; height: 36px; color: var(--ink-primary); font-size: 30px; line-height: 1; text-decoration: none; }
.invite-drawer h2, .users-panel h2, .users-role-summary h2 { margin: 0; font-size: 20px; }
.invite-drawer header p, .users-panel header p { margin: 8px 0 0; color: var(--muted); }
.role-picker { border: 0; padding: 0; margin: 28px 0; }
.role-picker legend { font-weight: 700; margin-bottom: 6px; }
.role-picker > p { color: var(--muted); margin: 0 0 14px; }
.role-choice { display: grid; grid-template-columns: 42px minmax(0, 1fr) 24px; gap: 14px; align-items: center; border: 1px solid #c6d7df; border-radius: 8px; padding: 16px; margin-top: 10px; cursor: pointer; background: #fff; }
.role-choice:has(input:checked) { border-color: #0b708a; background: #fbfeff; box-shadow: inset 0 0 0 1px #0b708a; }
.role-choice-icon { grid-column: 1; grid-row: 1; justify-self: start; align-self: center; }
.role-choice input { grid-column: 3; grid-row: 1; justify-self: end; align-self: center; width: 24px; height: 24px; margin: 0; appearance: none; border: 1.5px solid #6f7f87; border-radius: 4px; background: #fff; cursor: pointer; }
.role-choice:has(input:checked)::after { content: '✓'; grid-column: 3; grid-row: 1; z-index: 1; justify-self: end; align-self: center; width: 24px; height: 24px; display: grid; place-items: center; color: #fff; font-size: 17px; font-weight: 800; pointer-events: none; }
.role-choice input:checked { border-color: #07647c; background-color: #07647c; }
.role-choice > span:last-child { grid-column: 2; grid-row: 1; align-self: center; min-width: 0; }
.role-choice-icon { display: grid; place-items: center; flex: 0 0 42px; width: 42px; height: 42px; border-radius: 50%; background: #eef3f5; color: #172026; }
.role-choice-icon svg, .info-icon svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.role-choice input { margin-top: 3px; width: 20px; height: 20px; accent-color: var(--teal); }
.role-choice strong, .role-choice small { display: block; }
.role-choice small { color: var(--muted); margin-top: 4px; }
.invite-field-lead { border: 1px solid #bddbe4; background: #f2f9fb; border-radius: 8px; padding: 16px; }
.invite-field-lead { display: flex; align-items: center; gap: 10px; }
.info-icon { display: inline-grid; place-items: center; flex: 0 0 23px; color: #07647c; }
.invite-drawer footer { position: sticky; bottom: -38px; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; background: #fff; padding: 22px 0 4px; }
.invite-drawer footer .auth-submit, .invite-cancel { width: 100%; min-height: 48px; }
.invite-cancel { display: inline-flex; align-items: center; justify-content: center; border: 1px solid #8eb6c4; border-radius: 8px; color: #075d73; text-decoration: none; font-weight: 700; }
.users-role-summary { display: grid; grid-template-columns: 64px minmax(260px, .8fr) minmax(300px, 1.2fr); align-items: center; gap: 20px; margin: 28px 0 22px; padding: 22px; border: 1px solid #c6d7df; border-radius: 8px; background: #fff; }
.users-role-icon { position: relative; display: block; width: 52px; height: 52px; border: 1px solid #b9d4dd; border-radius: 50%; }
.users-role-icon::before, .users-role-icon::after, .users-role-icon i::before, .users-role-icon i::after { content: ''; position: absolute; display: block; border: 2px solid #075d73; }
.users-role-icon::before { width: 9px; height: 9px; left: 15px; top: 13px; border-radius: 50%; }
.users-role-icon::after { width: 8px; height: 8px; left: 27px; top: 16px; border-radius: 50%; }
.users-role-icon i::before { width: 16px; height: 9px; left: 10px; top: 28px; border-radius: 10px 10px 0 0; border-bottom: 0; }
.users-role-icon i::after { width: 13px; height: 8px; left: 25px; top: 30px; border-radius: 10px 10px 0 0; border-bottom: 0; }
.users-role-explanation p { margin: 0 0 8px; color: var(--muted); }
.users-role-explanation strong { font-size: 14px; }
.role-chip-row { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.status-badge.role-admin { color: #fff; background: #07647c; border: 1px solid #07647c; }
.status-badge.role-office { color: #075d73; background: #eef8fb; border: 1px solid #9dcbda; }
.status-badge.role-technician { color: #19713c; background: #edf8ed; border: 1px solid #a7d8af; }
.status-badge.role-owner { color: #6c4a00; background: #fff5d9; border: 1px solid #dfbd5d; }
.users-panel { border: 1px solid #c6d7df; border-radius: 8px; background: #fff; margin-top: 20px; overflow: hidden; box-shadow: 0 1px 1px rgba(20, 48, 57, .02); }
.users-panel > header { padding: 20px 22px; border-bottom: 1px solid #d4e0e5; background: #fff; }
.users-table-row { display: grid; grid-template-columns: minmax(190px, 1.25fr) minmax(180px, 1.05fr) minmax(92px, .5fr) minmax(112px, .6fr) auto; gap: 18px; align-items: center; padding: 18px 22px; border-bottom: 1px solid #dbe5e9; }
.users-table-heading { display: grid; grid-template-columns: minmax(190px, 1.25fr) minmax(180px, 1.05fr) minmax(92px, .5fr) minmax(112px, .6fr) auto; gap: 18px; padding: 13px 22px; color: #52636c; font-size: 13px; font-weight: 700; border-bottom: 1px solid #cfdde3; background: #f8fbfc; }
.pending-invitations-table .users-table-heading, .pending-invitation-row { grid-template-columns: minmax(220px, 1.35fr) minmax(180px, 1fr) minmax(110px, .55fr) 164px; }
.pending-invitation-avatar { background: #e6f3f7; color: #075d73; border: 1px solid #b8d7e1; }
.copy-invitation-link { display: inline-flex; align-items: center; justify-content: center; justify-self: end; gap: 7px; width: 164px; min-width: 0; min-height: 36px; padding: 0 10px; border: 1px solid #8eb6c4; border-radius: 7px; color: #075d73; background: #fff; font: inherit; font-size: 13px; font-weight: 700; white-space: nowrap; cursor: pointer; }
.copy-invitation-link:hover { background: #eef8fb; }
.copy-invitation-link > span:first-child { font-size: 18px; line-height: 1; }
.users-table-row:last-child { border-bottom: 0; }
.users-table-row strong, .users-table-row small { display: block; }
.users-table-row small { color: var(--muted); margin-top: 4px; }
.user-identity { display: flex; align-items: center; gap: 12px; }
.user-avatar { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; border-radius: 50%; background: #07647c; color: #fff; font-size: 13px; font-weight: 700; }
.user-actions { position: relative; justify-self: end; }
.user-actions > summary { list-style: none; display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid var(--border); border-radius: 7px; cursor: pointer; color: var(--ink); font-size: 22px; line-height: 1; }
.user-actions > summary::-webkit-details-marker { display: none; }
.user-actions-menu { position: absolute; z-index: 8; right: 0; bottom: 42px; display: grid; min-width: 224px; padding: 8px; border: 1px solid var(--border); border-radius: 8px; background: #fff; box-shadow: 0 12px 28px rgba(16, 33, 40, .16); }
.user-actions-menu .secondary-link { display: flex; align-items: center; justify-content: flex-start; width: 100%; min-height: 38px; text-align: left; padding: 9px; border: 0; background: transparent; color: #172026; white-space: nowrap; }
.user-actions-menu form { margin: 0; }
.user-actions-menu .secondary-link:hover { background: #eef5f7; color: #172026; }
.protected-access-note { display: block; padding: 9px; color: #52636c; font-size: 13px; line-height: 1.35; }
.role-choice.role-choice-locked { border-color: #d5dde1; background: #f3f5f6; color: #687780; cursor: not-allowed; }
.role-choice.role-choice-locked .role-choice-icon, .role-choice.role-choice-locked strong, .role-choice.role-choice-locked small { color: #687780; opacity: .72; }
.role-choice.role-choice-locked input[type="checkbox"] { accent-color: #97a4aa; }
.action-symbol { display: inline-flex; align-items: center; justify-content: center; width: 22px; margin-right: 2px; color: #172026; font-size: 16px; line-height: 1; }
.danger-action { color: #9b2626; }
.access-confirmation { width: min(440px, calc(100vw - 32px)); border: 1px solid #c6d7df; border-radius: 8px; padding: 0; box-shadow: 0 20px 50px rgba(16, 33, 40, .24); }
.access-confirmation::backdrop { background: rgba(14, 31, 37, .36); }
.access-confirmation form { padding: 24px; }
.access-confirmation h2 { margin: 0; font-size: 20px; }
.access-confirmation p { color: var(--muted); line-height: 1.55; }
.access-confirmation form > div { display: flex; justify-content: flex-end; gap: 12px; margin-top: 24px; }
.access-confirmation .auth-submit { width: auto; min-height: 42px; padding: 0 16px; }
.lifecycle-assignment-warning { margin: 16px 0 0; padding: 12px 14px; border: 1px solid #e8c86a; border-radius: 8px; color: #674b00; background: #fff8dd; font-size: 14px; }
.role-removal-warning { display: grid; gap: 8px; }
.role-removal-warning p { margin: 0; }
.role-removal-warning a { color: #005e75; font-weight: 800; }
.edit-user-header { display: grid; gap: 18px; }
.edit-user-header h2 { font-size: 28px; }
.edit-user-identity .user-avatar { width: 54px; height: 54px; flex-basis: 54px; font-size: 18px; }
.edit-name-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.edit-access-status { margin: 24px 0; padding: 18px; border: 1px solid #c6d7df; border-radius: 8px; }
.edit-access-status h3 { margin: 0 0 10px; font-size: 18px; }
.edit-access-status p { margin: 10px 0 16px; color: var(--muted); }
.edit-access-status > div { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.edit-access-status > div .secondary-link { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; border: 1px solid #8eb6c4; border-radius: 8px; background: #fff; color: #075d73; }
.edit-access-status small { display: block; margin-top: 14px; color: var(--muted); }
.user-status::before { content: ''; display: inline-block; width: 8px; height: 8px; margin-right: 7px; border-radius: 50%; background: #18864b; }
.user-status.pending::before { background: #d68a00; }
.user-status.suspended::before { background: #b95d00; }
.user-status.inactive::before { background: #7b8790; }
.inactive-users-panel > header { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.inactive-users-panel > header > div { min-width: 0; }
.inactive-user-count { flex: 0 0 auto; padding: 5px 9px; border-radius: 999px; color: #52636c; background: #eef3f5; font-size: 13px; font-weight: 700; }
.inactive-users-table { border-top: 1px solid #dbe5e9; }
.inactive-users-table .users-table-row { background: #fbfcfc; }
.inactive-users-table .user-status.inactive { color: #52636c; }
.users-panel-empty { padding: 20px 22px 22px; color: #52636c; background: #fff; }
.users-panel-empty p { margin: 0; }
.lifecycle-row-action { display: inline-flex; align-items: center; justify-content: center; min-height: 36px; padding: 0 12px; border: 1px solid #8eb6c4; border-radius: 7px; color: #075d73; background: #fff; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; white-space: nowrap; }
.lifecycle-row-action:hover { background: #eef8fb; }
@media (max-width: 1100px) {
  .users-role-summary { grid-template-columns: 64px minmax(0, 1fr); }
  .users-role-explanation { grid-column: 1 / -1; padding-top: 4px; border-top: 1px solid #dbe5e9; }
}
@media (max-width: 760px) { .users-header, .users-role-summary, .inactive-users-panel > header { display: grid; } .invite-drawer { padding: 24px 18px; } .users-table-row, .pending-invitation-row { grid-template-columns: 1fr; gap: 10px; } .users-table-heading { display: none; } .users-table-row .role-chip-row { margin-top: 0; } .copy-invitation-link { justify-self: stretch; width: 100%; } }

.settings-shell.customer-workspace-shell { width: 100%; max-width: none; }
.customers-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; }
.customers-header h1 { margin: 2px 0 4px; }
.customer-directory { margin-top: 24px; border: 1px solid #c6d7df; border-radius: 8px; overflow: hidden; background: #fff; box-shadow: 0 1px 2px rgba(18, 45, 55, .04); }
.customer-workspace-tabs { display: flex; gap: 8px; min-height: 60px; padding: 0 22px; border-bottom: 1px solid #d6e1e5; }
.customer-workspace-tabs a { position: relative; display: inline-flex; align-items: center; gap: 8px; min-height: 60px; padding: 0 4px; color: #52636c; font-weight: 750; text-decoration: none; }
.customer-workspace-tabs a.active { color: #075d73; }
.customer-workspace-tabs a.active::after { content: ''; position: absolute; right: 0; bottom: -1px; left: 0; height: 3px; background: #08748e; }
.customer-workspace-tabs a span { min-width: 26px; padding: 2px 7px; border-radius: 999px; color: #52636c; background: #eef3f5; font-size: 12px; text-align: center; }
.customer-directory-toolbar { display: grid; grid-template-columns: minmax(280px, 1fr) auto minmax(170px, auto) auto; gap: 10px; padding: 16px 22px; border-bottom: 1px solid #d6e1e5; }
.customer-directory-search { position: relative; display: flex; align-items: center; min-width: 0; }
.customer-directory-search svg { position: absolute; left: 14px; width: 20px; height: 20px; fill: none; stroke: #6b7c84; stroke-width: 1.8; }
.customer-directory-search input { width: 100%; min-height: 46px; padding: 10px 14px 10px 44px; border: 1px solid #b9cbd3; border-radius: 8px; font: inherit; }
.customer-filter-menu { position: relative; }
.customer-filter-menu summary { display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 14px; border: 1px solid #b9cbd3; border-radius: 8px; font-weight: 750; cursor: pointer; list-style: none; }
.customer-filter-menu summary::-webkit-details-marker { display: none; }
.customer-filter-menu summary svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.customer-filter-menu > div { position: absolute; z-index: 5; top: 52px; right: 0; min-width: 240px; padding: 14px; border: 1px solid #c6d7df; border-radius: 8px; background: #fff; box-shadow: 0 12px 28px rgba(16, 33, 40, .14); }
.customer-filter-menu label { display: block; margin-bottom: 6px; font-weight: 700; }
.customer-filter-menu input, .customer-sort select { min-height: 46px; border: 1px solid #b9cbd3; border-radius: 8px; padding: 0 12px; background: #fff; font: inherit; }
.customer-search-submit { min-height: 46px; }
.customer-table { display: grid; grid-template-columns: minmax(210px, 1.2fr) minmax(190px, 1fr) minmax(210px, 1.1fr) minmax(170px, .8fr) 22px; gap: 18px; align-items: center; }
.customer-table-heading { min-height: 44px; padding: 0 22px; border-bottom: 1px solid #d6e1e5; color: #60717a; background: #f7fafb; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.customer-table-row { min-height: 86px; padding: 14px 22px; border-bottom: 1px solid #dbe5e9; color: #172026; text-decoration: none; }
.customer-table-row:last-child { border-bottom: 0; }
.customer-table-row:hover { background: #f8fbfc; }
.customer-cell { display: block; min-width: 0; }
.customer-cell strong, .customer-cell small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.customer-cell small { margin-top: 3px; color: #60717a; font-size: 13px; }
.customer-identity-cell { display: flex; align-items: center; gap: 12px; }
.customer-avatar { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border-radius: 8px; color: #075d73; background: #e4f3f7; font-size: 13px; font-weight: 800; }
.customer-row-arrow { color: #64767f; font-size: 27px; line-height: 1; }
.customer-directory-footer { display: flex; align-items: center; justify-content: space-between; min-height: 58px; padding: 10px 22px; border-top: 1px solid #d6e1e5; color: #60717a; }
.customer-directory-footer nav { display: flex; align-items: center; gap: 10px; }
.customer-directory-footer a { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid #b9cbd3; border-radius: 7px; color: #075d73; text-decoration: none; }
.customer-empty-state { display: grid; justify-items: start; gap: 8px; min-height: 260px; align-content: center; padding: 36px; }
.customer-empty-state h2, .customer-empty-state p { margin: 0; }
.customer-empty-state p { color: #52636c; }
.customer-related-list a { display: flex; align-items: center; justify-content: space-between; min-height: 74px; padding: 14px 22px; border-bottom: 1px solid #dbe5e9; text-decoration: none; }
.customer-related-list strong, .customer-related-list small { display: block; }
.customer-related-list small { margin-top: 4px; color: #60717a; }
.customer-type-switch { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; margin-bottom: 24px; padding: 4px; border: 1px solid #c6d7df; border-radius: 8px; background: #f2f6f8; }
.customer-type-switch a, .customer-type-switch label { display: grid; place-items: center; min-height: 42px; border-radius: 6px; color: #52636c; font-weight: 750; text-decoration: none; cursor: pointer; }
.customer-type-switch a.active, .customer-type-switch label.active { color: #075d73; background: #fff; box-shadow: 0 1px 3px rgba(16, 40, 50, .12); }
.customer-type-switch input { position: absolute; opacity: 0; pointer-events: none; }
.customer-type-switch button { min-height: 42px; border: 0; border-radius: 6px; color: #52636c; background: transparent; font: inherit; font-weight: 750; cursor: pointer; }
.customer-type-switch button.active { color: #075d73; background: #fff; box-shadow: 0 1px 3px rgba(16, 40, 50, .12); }
.hierarchy-context-hero { border-left: 4px solid #4a8b72; }
.hierarchy-site .record-summary-hero { border-left: 4px solid #3a7e9a; }
.customer-document-filter { display: flex; justify-content: flex-end; margin: 0; padding: 12px 18px; border-bottom: 1px solid #e0e8eb; background: #f8fbfc; }
.customer-document-filter label { display: flex; align-items: center; gap: 10px; color: #465b65; font-weight: 750; }
.customer-document-filter select { min-width: 154px; min-height: 40px; border: 1px solid #b9ccd5; border-radius: 8px; background: #fff; padding: 0 34px 0 12px; font: inherit; }
.customer-document-column-headings { display: grid; grid-template-columns: 36px minmax(0, 1fr) minmax(130px, .28fr) minmax(150px, .32fr) 112px 64px; column-gap: 14px; padding: 10px 18px 8px; color: #6b7d85; font-size: 11px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; }
.customer-document-column-headings a { color: inherit; text-decoration: none; }
.customer-document-column-headings a:hover, .customer-document-column-headings a.active { color: #075d73; text-decoration: underline; text-underline-offset: 3px; }
.customer-document-owner { align-self: center; color: #075d73; font-size: .85rem; font-weight: 700; text-decoration: none; }
.customer-card-actions.vertical { align-items: flex-start; flex-direction: column; gap: 10px; }
.customer-detail-card.full { grid-column: 1 / -1; }
.customer-drawer-form { display: grid; gap: 22px; }
.customer-drawer-form section { padding-top: 18px; border-top: 1px solid #dbe5e9; }
.customer-drawer-form h3 { margin: 0 0 14px; font-size: 16px; }
.customer-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.customer-form-grid .full { grid-column: 1 / -1; }
.customer-form-grid input { width: 100%; min-height: 46px; border: 1px solid #b9cbd3; border-radius: 8px; padding: 10px 12px; font: inherit; }
.customer-form-grid .field-group > span:first-child { display: flex; justify-content: space-between; gap: 8px; font-weight: 700; }
.customer-form-grid .field-group small { color: #75858c; font-weight: 500; }
.customer-option, .customer-duplicate-confirm { display: grid; grid-template-columns: minmax(0, 1fr) 24px; gap: 14px; align-items: center; margin-top: 14px; padding: 14px; border: 1px solid #bddbe4; border-radius: 8px; background: #f2f9fb; cursor: pointer; }
.customer-option strong, .customer-option small, .customer-duplicate-confirm strong, .customer-duplicate-confirm small { display: block; }
.customer-option small, .customer-duplicate-confirm small { margin-top: 3px; color: #52636c; }
.customer-option input, .customer-duplicate-confirm input { width: 22px; height: 22px; accent-color: #08748e; }
.customer-duplicate-confirm { border-color: #e8c86a; background: #fff8dd; }
.customer-progressive { border-top: 1px solid #dbe5e9; padding-top: 18px; }
.customer-progressive summary { min-height: 44px; font-weight: 800; cursor: pointer; }
.customer-progressive summary span { margin-left: 6px; color: #75858c; font-size: 13px; font-weight: 600; }
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }

@media (max-width: 1100px) {
  .customer-table { grid-template-columns: minmax(190px, 1.2fr) minmax(180px, 1fr) minmax(160px, .8fr) 22px; }
  .customer-table > :nth-child(3) { display: none; }
  .customer-directory-toolbar { grid-template-columns: minmax(240px, 1fr) auto minmax(160px, auto); }
  .customer-search-submit { display: none; }
}

@media (max-width: 760px) {
  .customers-header { display: grid; }
  .customers-header .users-invite-button { width: 100%; }
  .customer-workspace-tabs { overflow-x: auto; padding: 0 14px; }
  .customer-directory-toolbar { grid-template-columns: 1fr auto; padding: 14px; }
  .customer-directory-search { grid-column: 1 / -1; }
  .customer-table-heading { display: none; }
  .customer-table-row { grid-template-columns: 1fr 22px; gap: 10px; min-height: 0; padding: 16px; }
  .customer-table-row > .customer-cell { grid-column: 1; }
  .customer-table-row > .customer-row-arrow { grid-column: 2; grid-row: 1 / span 3; }
  .customer-table-row > :nth-child(3) { display: block; }
  .customer-directory-footer { align-items: flex-start; gap: 12px; }
  .customer-form-grid { grid-template-columns: 1fr; }
  .customer-form-grid .full { grid-column: auto; }
}

/* Release checklist management: compact filtering, traceable usage, and consistent actions. */
.status-badge.neutral {
  border-color: #c5d4da;
  background: #f1f5f6;
  color: #415b65;
}

.checklist-template-filters {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) minmax(170px, .35fr) auto auto;
  gap: 10px;
  align-items: center;
  padding: 14px;
  border: 1px solid #cad8de;
  border-radius: 7px;
  background: #fff;
}

.checklist-template-filters :is(input, select) {
  box-sizing: border-box;
  width: 100%;
  min-height: 42px;
  padding: 8px 11px;
  border: 1px solid #b9cbd3;
  border-radius: 6px;
  background: #fff;
  color: #17262d;
  font: inherit;
}

.checklist-usage-link {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 12px;
  width: max-content;
  max-width: 100%;
  margin-top: 10px;
  color: #075f76;
  font-size: .8rem;
  text-decoration: none;
}

.checklist-usage-link:hover,
.checklist-usage-link:focus-visible {
  text-decoration: underline;
}

.checklist-usage-link span {
  color: #60727a;
}

.checklist-row-icon-actions {
  display: flex;
  align-items: center;
  gap: 3px;
}

.checklist-row-icon-actions .icon-button {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #075f76;
  font-size: 1.1rem;
  line-height: 1;
  text-decoration: none;
}

.checklist-row-icon-actions .icon-button:hover,
.checklist-row-icon-actions .icon-button:focus-visible {
  background: #eaf4f6;
  outline: none;
}

.checklist-availability-form {
  display: flex;
}

.checklist-availability-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 5px 10px;
  border: 1px solid #b9cbd3;
  border-radius: 6px;
  background: #fff;
  color: #28444f;
  font: inherit;
  font-size: .8rem;
  font-weight: 800;
  cursor: pointer;
}

.checklist-availability-toggle > span {
  position: relative;
  width: 28px;
  height: 16px;
  border-radius: 999px;
  background: #a9b8be;
}

.checklist-availability-toggle > span::after {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #fff;
  content: "";
  transition: transform .15s ease;
}

.checklist-availability-toggle[aria-checked="true"] > span {
  background: #16834f;
}

.checklist-availability-toggle[aria-checked="true"] > span::after {
  transform: translateX(12px);
}

.checklist-audit-timeline > li {
  gap: 7px;
  padding: 9px 0 9px 13px;
}

.checklist-audit-timeline > li > div {
  display: grid;
  gap: 2px;
}

.checklist-audit-timeline > li > ul {
  display: grid;
  gap: 4px;
  margin: 0;
  padding-left: 18px;
  color: #344b55;
}

.checklist-audit-timeline > li > ul > li {
  display: list-item;
  padding: 0;
  border: 0;
  font-size: .8rem;
}

.jobs-filter-context {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 16px;
  border-top: 1px solid #dbe5e8;
  background: #f1f8fa;
  color: #36535f;
  font-size: .86rem;
}

.jobs-filter-context a {
  color: #075f76;
  font-weight: 800;
}

@media (max-width: 760px) {
  .checklist-template-filters {
    grid-template-columns: 1fr 1fr;
  }

  .checklist-template-filters input {
    grid-column: 1 / -1;
  }

  .checklist-template-filters .secondary-action {
    width: 100%;
  }

  .checklist-template-row-actions {
    display: flex;
    align-items: center;
  }

  .checklist-template-row-actions > * {
    width: auto;
  }

  .checklist-template-row-actions > .secondary-action {
    flex: 1 1 190px;
    text-align: center;
  }

  .jobs-filter-context {
    align-items: flex-start;
    flex-direction: column;
  }
}

.customer-breadcrumb { display: flex; gap: 7px; margin-bottom: 12px; color: #60717a; font-size: 13px; }
.customer-breadcrumb a { color: #075d73; text-decoration: none; font-weight: 750; }
.customer-back-link { display: inline-flex; align-items: center; gap: 7px; }
.customer-back-link span { font-size: 17px; line-height: 1; }
.customer-context-message { margin: 0 0 12px; padding: 11px 14px; border: 1px solid #9fcfb1; border-radius: 8px; color: #155f36; background: #edf8f1; font-weight: 700; }
.customer-context-message.warning { border-color: #dfbf65; color: #624700; background: #fff8e2; }
.customer-context-message.error { border-color: #dca49e; color: #84281f; background: #fff1ef; }
.customer-workspace-shell .customer-summary-hero { width: 100%; margin: 0; box-shadow: none; }
.customer-title-line { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.customer-title-line h1 { margin: 0; }
.customer-type-badge { padding: 4px 9px; border-radius: 999px; color: #52636c; background: #edf2f4; font-size: 12px; font-weight: 750; }
.customer-identity-facts { display: flex; flex-wrap: wrap; gap: 18px; margin: 10px 0 0; }
.customer-identity-facts div { display: flex; gap: 5px; }
.customer-identity-facts dt { color: #6c7c84; }
.customer-identity-facts dd { margin: 0; font-weight: 750; }
.customer-more-actions { position: relative; }
.customer-more-actions summary { display: grid; place-items: center; width: 46px; min-height: 46px; border: 1px solid #b9cbd3; border-radius: 8px; font-size: 20px; font-weight: 800; cursor: pointer; list-style: none; }
.customer-more-actions summary::-webkit-details-marker { display: none; }
.customer-more-actions > div { position: absolute; z-index: 5; top: 52px; right: 0; min-width: 180px; padding: 7px; border: 1px solid #c6d7df; border-radius: 8px; background: #fff; box-shadow: 0 12px 28px rgba(16, 33, 40, .14); }
.customer-more-actions a { display: block; padding: 9px 10px; border-radius: 6px; text-decoration: none; }
.customer-more-actions a:hover { background: #eef5f7; }
.customer-detail-tabs { display: flex; gap: 22px; margin-top: 16px; min-height: 58px; padding: 0 20px; border: 1px solid #c6d7df; border-radius: 8px; background: #fff; overflow-x: auto; overflow-y: hidden; }
.customer-detail-tabs a { position: relative; display: inline-flex; align-items: center; gap: 7px; min-height: 58px; color: #52636c; font-weight: 750; text-decoration: none; white-space: nowrap; }
.customer-detail-tabs a.active { color: #075d73; }
.customer-detail-tabs a.active::after { content: ''; position: absolute; right: 0; bottom: -1px; left: 0; height: 3px; background: #08748e; }
.customer-detail-tabs span { min-width: 23px; padding: 1px 6px; border-radius: 999px; background: #edf2f4; font-size: 11px; text-align: center; }
.customer-overview-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 16px; }
.customer-overview-grid.customer-section-view { grid-template-columns: minmax(0, 1fr); }
.customer-detail-card { min-width: 0; border: 1px solid #c6d7df; border-radius: 8px; background: #fff; overflow: hidden; }
.customer-detail-card > header { display: flex; align-items: center; justify-content: space-between; min-height: 62px; gap: 14px; padding: 14px 18px; border-bottom: 1px solid #dbe5e9; }
.customer-detail-card h2 { display: flex; align-items: center; gap: 9px; margin: 0; font-size: 18px; }
.customer-detail-card h2 svg { width: 21px; height: 21px; fill: none; stroke: #075d73; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.customer-detail-card header a { color: #075d73; font-size: 14px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.customer-card-actions { display: flex; align-items: center; justify-content: flex-end; gap: 18px; }
.customer-section-intro { margin: 0; padding: 16px 18px; border-bottom: 1px solid #e0e8eb; color: #41565f; background: #f7fafb; line-height: 1.55; }
.customer-card-message { margin: 14px 18px 0; }
.customer-related-row, .customer-document-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 12px; align-items: center; min-height: 74px; padding: 12px 18px; border-bottom: 1px solid #e0e8eb; }
.customer-related-row:last-child, .customer-document-row:last-child { border-bottom: 0; }
.customer-related-row.linked { color: inherit; text-decoration: none; transition: background-color 120ms ease; }
.customer-related-row.linked:hover { background: #f4f9fa; }
.customer-related-row.linked:focus-visible { position: relative; z-index: 1; outline: 3px solid rgba(8, 116, 142, .28); outline-offset: -3px; }
.customer-related-row strong, .customer-related-row small, .customer-document-row strong, .customer-document-row small { display: block; }
.customer-related-row small, .customer-document-row small { margin-top: 3px; color: #60717a; font-size: 13px; }
.customer-related-content { min-width: 0; }
.customer-related-content strong, .customer-related-content small, .customer-related-meta { overflow-wrap: anywhere; }
.customer-related-meta { display: block; margin-top: 5px; color: #52636c; font-size: 12px; line-height: 1.4; }
.customer-related-open { display: inline-flex; align-items: center; justify-content: flex-end; gap: 8px; min-width: 18px; color: #075d73; font-size: 18px; font-weight: 800; white-space: nowrap; }
.customer-related-open-label { font-size: 13px; }
.customer-avatar.round { border-radius: 50%; }
.customer-record-icon { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 8px; color: #075d73; background: #edf5f7; font-size: 18px; }
.customer-chip-row { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 5px; }
.customer-chip-row em, .customer-document-row em { width: fit-content; padding: 2px 7px; border-radius: 999px; color: #52636c; background: #edf2f4; font-size: 11px; font-style: normal; font-weight: 700; }
.customer-document-row em.customer-visible { color: #176a3b; background: #e8f6ed; }
.customer-document-row .icon-button { width: 32px; height: 32px; border: 0; border-radius: 7px; color: #8c2e2e; background: transparent; font-size: 22px; cursor: pointer; }
.customer-document-row .icon-button:hover { background: #fff0f0; }
.customer-document-actions { display: flex; align-items: center; gap: 2px; }
.customer-document-actions > a.icon-button { display: grid; place-items: center; color: #075d73; font-size: 18px; text-decoration: none; }
.customer-document-actions > a.icon-button:hover { background: #edf6f8; }
.customer-document-row--aggregate { grid-template-columns: 36px minmax(0, 1fr) minmax(130px, .28fr) minmax(150px, .32fr) 112px 64px; column-gap: 14px; min-height: 78px; }
.customer-document-row--aggregate .customer-document-category { display: grid; grid-column: 3; grid-row: 1; align-self: start; gap: 3px; padding-top: 2px; min-width: 0; }
.customer-document-row--aggregate .customer-document-category small { margin: 0; color: #6b7d85; font-size: 11px; font-weight: 700; }
.customer-document-row--aggregate .customer-document-category strong { font-size: 13px; }
.customer-document-row--aggregate .customer-document-date { display: grid; grid-column: 5; grid-row: 1; align-self: start; gap: 2px; padding-top: 2px; min-width: 0; }
.customer-document-row--aggregate .customer-document-date small { margin: 0; color: #6b7d85; font-size: 11px; font-weight: 700; }
.customer-document-row--aggregate .customer-document-date strong { font-size: 13px; white-space: nowrap; }
.customer-document-row--aggregate .customer-document-owner { display: grid; grid-column: 4; grid-row: 1; align-self: start; gap: 2px; min-width: 0; padding-top: 2px; color: #075d73; font-size: 13px; text-align: left; text-decoration: none; }
.customer-document-row--aggregate .customer-document-owner small { margin: 0; color: #6b7d85; font-size: 11px; font-weight: 700; }
.customer-document-row--aggregate .customer-document-owner strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.customer-document-row--aggregate .customer-document-actions { grid-column: 6; grid-row: 1; align-self: start; justify-self: end; }
.customer-document-actions-placeholder { display: block; grid-column: 6; grid-row: 1; width: 32px; height: 32px; justify-self: end; }
.customer-document-description { max-width: 72ch; color: #40545d !important; white-space: normal; }
.customer-documents-card { overflow: visible; }
.customer-card-empty { min-height: 92px; margin: 0; padding: 24px 18px; color: #60717a; }
.customer-history-card { grid-column: 1 / -1; }
.customer-timeline { display: grid; gap: 0; margin: 0; padding: 6px 18px 16px; list-style: none; }
.customer-timeline li { display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 10px; min-height: 58px; padding-top: 13px; }
.customer-timeline li > span { position: relative; width: 10px; height: 10px; margin-top: 5px; border: 2px solid #fff; border-radius: 50%; background: #08748e; box-shadow: 0 0 0 1px #78b8c7; }
.customer-timeline li > span::after { content: ''; position: absolute; top: 10px; left: 3px; width: 1px; height: 40px; background: #c9dce2; }
.customer-timeline li:last-child > span::after { display: none; }
.customer-timeline strong, .customer-timeline small { display: block; }
.customer-timeline small { margin-top: 3px; color: #60717a; }
.customer-drawer-form select, .customer-drawer-form textarea { width: 100%; min-height: 46px; border: 1px solid #b9cbd3; border-radius: 8px; padding: 10px 12px; background: #fff; font: inherit; }
.customer-drawer-form textarea { min-height: 100px; resize: vertical; }
.customer-site-picker { display: grid; gap: 8px; margin: 0; padding: 14px; border: 1px solid #c6d7df; border-radius: 8px; }
.customer-site-picker legend { padding: 0 6px; font-weight: 800; }
.customer-site-picker label { display: flex; align-items: center; gap: 9px; }
.customer-site-picker label > span { display: grid; gap: 2px; min-width: 0; }
.customer-site-picker label small { color: #60717a; font-size: 13px; }
.customer-inline-link { color: #075d73; font-weight: 750; text-decoration: none; }
.customer-inline-link:hover { text-decoration: underline; }
.site-section-contacts .site-card-contacts,
.site-section-projects .site-card-projects,
.site-section-documents .site-card-documents,
.site-section-history .site-card-history { grid-column: 1 / -1; }
.project-overview-facts,
.project-overview-sites { min-height: 100%; }
.customer-file-drop { display: grid; justify-items: center; gap: 7px; padding: 24px; border: 1px dashed #7faeba; border-radius: 8px; color: #075d73; background: #f5fafb; text-align: center; }
.customer-file-drop > span:first-child { font-weight: 800; }
.customer-file-drop small { color: #60717a; }
.customer-file-drop { position: relative; cursor: pointer; }
.customer-file-button { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; margin-top: 10px; padding: 0 16px; border: 1px solid #8fb9c5; border-radius: 7px; color: #075d73; background: #fff; font-weight: 750; }
.customer-file-drop:hover .customer-file-button { background: #eaf5f7; }
.customer-file-name { color: #52636c; font-size: 13px; font-weight: 600; overflow-wrap: anywhere; }
.customer-file-native { position: absolute; width: 1px; height: 1px; overflow: hidden; opacity: 0; pointer-events: none; }
.customer-file-drop:focus-within { outline: 3px solid rgba(8, 116, 142, .22); outline-offset: 2px; }
.customer-drawer-message { margin: -10px 0 22px; padding: 12px 14px; border: 1px solid #9fcfb1; border-radius: 8px; color: #155f36; background: #edf8f1; font-weight: 700; }
.customer-other-category[hidden] { display: none; }
.customer-form-grid .field-group > small { display: block; margin-top: 6px; color: #60717a; line-height: 1.45; }
.customer-detail-facts { display: grid; gap: 0; margin: 0; }
.customer-detail-facts div { display: grid; grid-template-columns: minmax(130px, .7fr) minmax(0, 1fr); gap: 18px; padding: 14px 18px; border-bottom: 1px solid #e0e8eb; }
.customer-detail-facts div:last-child { border-bottom: 0; }
.customer-detail-facts dt { color: #60717a; font-weight: 700; }
.customer-detail-facts dd { margin: 0; }
.customer-card-copy { min-height: 92px; margin: 0; padding: 20px 18px; color: #33474f; white-space: pre-line; }
.customer-delete-confirm { position: relative; }
.customer-delete-confirm > summary { display: grid; place-items: center; list-style: none; }
.customer-delete-confirm > summary::-webkit-details-marker { display: none; }
.customer-delete-confirm > div { position: absolute; z-index: 8; right: 0; top: 38px; width: min(280px, calc(100vw - 48px)); padding: 14px; border: 1px solid #d7b5b5; border-radius: 8px; background: #fff; box-shadow: 0 12px 28px rgba(16, 33, 40, .16); }
.customer-delete-confirm p { margin: 0 0 12px; color: #473535; font-size: 13px; }
.customer-delete-confirm .danger-action { width: 100%; min-height: 38px; border: 1px solid #a54545; border-radius: 7px; color: #fff; background: #9b3737; font: inherit; font-weight: 750; cursor: pointer; }

@media (max-width: 900px) {
  .customer-overview-grid { grid-template-columns: 1fr; }
  .customer-history-card { grid-column: auto; }
  .customer-document-column-headings { display: none; }
  .customer-document-row--aggregate { grid-template-columns: 36px minmax(0, 1fr); row-gap: 3px; }
  .customer-document-row--aggregate .customer-document-category { grid-column: 2; grid-row: 2; padding-top: 0; }
  .customer-document-row--aggregate .customer-document-owner { grid-column: 2; grid-row: 3; padding-top: 0; }
  .customer-document-row--aggregate .customer-document-date { grid-column: 2; grid-row: 4; padding-top: 0; }
  .customer-document-row--aggregate .customer-document-actions { grid-column: 2; grid-row: 5; justify-self: start; align-self: end; margin-top: 8px; }
  .customer-document-actions-placeholder { display: none; }
}

@media (max-width: 760px) {
  .customer-summary-hero { grid-template-columns: 1fr; }
  .customer-identity-facts { display: grid; gap: 6px; }
  .customer-detail-tabs { padding: 0 14px; gap: 18px; }
  .customer-detail-card > header { align-items: flex-start; }
  .customer-detail-facts div { grid-template-columns: 1fr; gap: 4px; }
  .customer-document-filter { justify-content: stretch; }
  .customer-document-filter label { width: 100%; justify-content: space-between; }
  .customer-related-open.is-labeled { grid-column: 2 / -1; justify-self: start; margin-top: 5px; }
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  background: var(--surface-base);
  color: var(--ink-primary);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.5;
}

a {
  color: inherit;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
summary:focus-visible {
  outline: 3px solid var(--accent);
  outline-offset: 3px;
}

.office-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 320px minmax(0, 1fr);
}

.office-sidebar {
  display: flex;
  flex-direction: column;
  position: sticky;
  top: 0;
  height: 100vh;
  padding: 20px 16px;
  background: var(--surface-raised);
  border-right: 1px solid var(--border-subtle);
}

.office-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  color: var(--ink-primary);
  text-decoration: none;
}

.klarjobb-logo {
  display: block;
  width: 172px;
  max-width: 100%;
  height: auto;
  aspect-ratio: 1050 / 275;
  object-fit: contain;
}

.office-brand > span {
  min-width: 0;
}

.auth-brand .klarjobb-logo {
  width: 192px;
}

.office-brand small {
  display: block;
  color: var(--ink-secondary);
  font-size: 12px;
}

.office-nav {
  display: grid;
  gap: 18px;
  margin-top: 24px;
}

.office-nav-group {
  display: grid;
  gap: 4px;
}

.office-nav-group:empty {
  display: none;
}

.office-nav-group-label {
  padding: 0 12px 4px;
  color: #526670;
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
}

.office-nav-link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 8px;
  text-decoration: none;
  color: var(--ink-secondary);
}

.office-nav-link.active,
.office-nav-link[aria-current="page"] {
  background: var(--primary-soft);
  color: var(--primary);
  font-weight: 700;
}

.office-nav-link:hover {
  background: var(--surface-subtle);
  color: var(--ink-primary);
}

.office-nav-label {
  display: block;
  font-weight: 650;
}

.office-nav-content { min-width: 0; }

.office-nav-description {
  display: block;
  color: #526670;
  font-size: 12px;
}

.office-nav-icon { display: grid; place-items: center; flex: 0 0 20px; width: 20px; height: 20px; color: var(--brand-primary); }
.office-nav-icon svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.office-nav-link.active .office-nav-icon, .office-nav-link[aria-current="page"] .office-nav-icon { color: var(--primary); }

.office-nav-utilities {
  margin-top: auto;
  padding-top: 18px;
}

.office-trial-status {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  padding: 11px 12px;
  border: 1px solid #b8dce7;
  border-radius: 8px;
  background: #f1fafc;
  color: var(--ink-primary);
  text-decoration: none;
}

.office-trial-status:hover {
  border-color: var(--primary);
  background: var(--primary-soft);
}

.office-trial-status-attention {
  border-color: #e6bd68;
  background: #fff9e9;
}

.office-trial-status-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.office-trial-status-copy > span,
.office-trial-status-copy small {
  color: var(--ink-secondary);
  font-size: 12px;
}

.office-trial-status-copy strong {
  color: var(--ink-primary);
  font-size: 15px;
}

.office-trial-status-action {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  justify-self: end;
  white-space: nowrap;
  color: var(--primary);
  font-size: 12px;
  font-weight: 800;
}

.office-trial-status-attention .office-trial-status-action {
  color: #7a5100;
}

.office-trial-status-expired {
  border-color: #d9958e;
  background: #fff2f0;
}

.office-trial-status-expired .office-trial-status-action {
  color: #983126;
}

.office-trial-status:hover .office-trial-status-action {
  text-decoration: underline;
}

.office-notification-row {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 8px 12px;
  border-radius: 8px;
  color: var(--ink-primary);
  font-weight: 700;
  text-decoration: none;
}

.office-notification-row:hover {
  background: var(--surface-subtle);
}

.office-notification-row.active,
.office-notification-row[aria-current="page"] {
  background: var(--primary-soft);
  color: var(--primary);
}

.office-notification-row.active .office-notification-icon,
.office-notification-row[aria-current="page"] .office-notification-icon {
  color: var(--primary);
}

.office-notification-icon {
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  color: var(--brand-primary);
}

.office-notification-icon svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.office-notification-badge {
  margin-left: auto;
  display: grid;
  place-items: center;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  border-radius: 9px;
  background: var(--danger);
  color: var(--white);
  font-size: 11px;
  font-weight: 800;
}

.office-user-menu {
  position: relative;
  margin-top: 10px;
  border-top: 1px solid var(--border-subtle);
}

.office-user-menu summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 2px;
  padding: 12px;
  cursor: pointer;
  list-style: none;
}

.office-user-menu summary::-webkit-details-marker {
  display: none;
}

.office-user-menu summary span {
  color: var(--ink-secondary);
  font-size: 14px;
}

.office-user-menu summary strong {
  color: var(--ink-primary);
  grid-column: 1;
}

.office-user-menu-caret {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
  transition: transform 160ms ease;
}

.office-user-menu[open] .office-user-menu-caret {
  transform: rotate(225deg) translateY(-2px);
}

.office-user-menu-content {
  display: grid;
  gap: 4px;
  padding: 0 8px 10px;
}

.office-user-menu-content .office-nav-link {
  padding: 8px;
}

.office-sidebar .office-user-menu-content {
  position: absolute;
  z-index: 20;
  right: 0;
  bottom: calc(100% + 8px);
  left: 0;
  max-height: min(440px, calc(100vh - 40px));
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 8px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
  box-shadow: 0 14px 34px rgba(16, 42, 53, 0.18);
  scrollbar-gutter: stable;
}

.office-current-company,
.office-company-switcher {
  display: grid;
  gap: 3px;
  padding: 9px 8px;
  border-bottom: 1px solid var(--border-subtle);
}

.office-current-company span,
.office-company-switcher > span {
  color: var(--ink-secondary);
  font-size: 12px;
  font-weight: 700;
}

.office-current-company strong {
  color: var(--ink-primary);
  font-size: 14px;
}

.office-company-switch-form button {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 0;
  border: 0;
  background: transparent;
  color: var(--primary);
  font: inherit;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

.office-shell-message {
  margin-bottom: 18px;
  padding: 12px 14px;
  border: 1px solid var(--accent);
  border-radius: 6px;
  background: var(--accent-soft);
  color: var(--ink-primary);
}

.field-access-page {
  width: min(100% - 40px, 560px);
  margin: min(20vh, 160px) auto 0;
}

.field-access-page > h1 { margin-bottom: 6px; }

.field-access-apps {
  display: grid;
  gap: 16px;
  margin-top: 26px;
  padding: 20px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
  box-shadow: 0 12px 30px rgba(16, 42, 53, 0.08);
}

.field-access-apps h2 { margin: 0; font-size: 18px; }
.field-access-apps p { margin: 5px 0 0; color: var(--ink-secondary); font-size: 14px; }

.field-access-store-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.field-access-store-options > span {
  display: grid;
  gap: 3px;
  min-height: 64px;
  padding: 11px 13px;
  border: 1px dashed #9fb9c3;
  border-radius: 8px;
  background: var(--surface-base);
}

.field-access-store-options small { color: var(--ink-muted); font-size: 12px; }

.field-access-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.field-access-actions .office-logout-form,
.field-access-logout { width: 100%; margin-top: 18px; }

@media (max-width: 520px) {
  .field-access-page { margin-top: 48px; }
  .field-access-store-options { grid-template-columns: 1fr; }
}

/* Release-ready checklist workflow: compact lists, explicit actions, and one drawer pattern. */
.checklist-review-editor {
  grid-template-columns: 1fr;
}

.checklist-review-editor .checklist-copy-context,
.checklist-review-editor .checklist-step-editor,
.checklist-review-editor .job-drawer-footer {
  grid-column: 1 / -1;
}

.checklist-review-editor .checklist-step-primary-fields {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.job-checklist-heading-actions,
.job-checklist-instance-state {
  display: flex;
  align-items: center;
  gap: 9px;
}

.job-checklist-instance-list {
  display: grid;
}

.job-checklist-instance-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 78px;
  padding: 14px 20px;
  border-bottom: 1px solid #e0e9ec;
  background: #fff;
}

.job-checklist-instance-row:last-child {
  border-bottom: 0;
}

.job-checklist-instance-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.job-checklist-instance-copy strong {
  color: #17262d;
}

.job-checklist-instance-copy span {
  color: #5a6d76;
  font-size: 0.8rem;
}

.job-checklist-instance-state .icon-button {
  flex: 0 0 36px;
}

.job-checklist-instance-state :is(.secondary-action, .button-danger-subtle) {
  min-height: 38px;
  padding: 0 13px;
}

.job-checklist-drawer {
  width: min(620px, 100vw);
}

.job-checklist-drawer-form {
  display: grid;
  gap: 17px;
}

.job-checklist-drawer-form .checklist-impact {
  margin: 0;
}

.customer-drawer-empty {
  display: grid;
  gap: 14px;
  padding: 22px 26px;
}

@media (max-width: 760px) {
  .checklist-review-editor .checklist-step-primary-fields {
    grid-template-columns: 1fr 1fr;
  }

  .job-checklist-planning-panel .review-panel-header,
  .job-checklist-instance-row {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .job-checklist-heading-actions,
  .job-checklist-instance-state {
    justify-content: space-between;
  }
}

@media (max-width: 520px) {
  .checklist-review-editor .checklist-step-primary-fields {
    grid-template-columns: 1fr;
  }

  .job-checklist-instance-state {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .job-checklist-instance-state > .status-badge {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .job-checklist-instance-state :is(.secondary-action, .button-danger-subtle) {
    width: 100%;
    min-height: 42px;
  }
}

.office-mobile-header {
  display: none;
}

.office-main {
  min-width: 0;
  padding: 32px;
}

.office-main > .settings-page,
.office-main > .onboarding-page {
  min-height: auto;
  padding: 0;
  background: transparent;
}

.office-topbar {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: flex-start;
  margin-bottom: 24px;
}

.office-topbar-actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.eyebrow {
  margin: 0 0 4px;
  color: var(--primary);
  font-size: 14px;
  font-weight: 700;
}

h1,
h2,
h3,
p {
  margin-top: 0;
}

h1 {
  margin-bottom: 8px;
  font-size: 32px;
  line-height: 1.15;
}

h2 {
  margin-bottom: 8px;
  font-size: 18px;
}

h3 {
  margin-bottom: 4px;
  font-size: 16px;
}

.office-lede {
  max-width: 680px;
  margin-bottom: 0;
  color: var(--ink-secondary);
}

.office-profile {
  display: flex;
  align-items: center;
  gap: 10px;
  position: relative;
}

.office-profile span,
.office-profile strong {
  display: block;
}

.office-profile span {
  color: var(--ink-secondary);
  font-size: 14px;
}

.office-profile > .office-user-menu {
  margin: 0;
  border: 0;
}

.office-profile > .office-user-menu summary {
  min-width: 150px;
  padding: 8px 10px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
  text-align: right;
}

.office-profile > .office-user-menu-content {
  position: absolute;
  z-index: 5;
  top: calc(100% + 8px);
  right: 0;
  min-width: 220px;
  padding: 8px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
  box-shadow: 0 12px 28px rgba(16, 42, 53, 0.14);
}

.office-logout-form {
  margin-top: 10px;
}

.office-logout-form button {
  min-height: 36px;
  width: 100%;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  color: var(--primary);
  background: var(--surface-raised);
  font-weight: 700;
  cursor: pointer;
}

.office-logout-form button:hover {
  border-color: var(--primary);
  background: var(--primary-soft);
}

.office-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 24px;
}

.overview-guidance {
  grid-column: 1 / -1;
  display: grid;
  gap: 6px;
  padding: 18px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.overview-guidance h2 {
  margin: 0;
  font-size: 20px;
}

.overview-guidance p:last-child {
  margin: 0;
  color: var(--ink-secondary);
}

.office-action {
  display: grid;
  gap: 4px;
  min-height: 76px;
  padding: 16px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
  text-decoration: none;
}

.office-action.primary {
  background: var(--primary);
  border-color: var(--primary);
  color: var(--white);
}

.office-action span {
  font-weight: 700;
}

.office-action small {
  color: var(--ink-secondary);
}

.office-action.primary small {
  color: var(--primary-soft);
}

.office-attention,
.overview-task-section {
  margin-bottom: 24px;
  padding: 18px;
  border-radius: 12px;
}

.office-attention {
  border: 1px solid var(--accent);
  background: var(--accent-soft);
}

.overview-task-section.setup-blockers {
  border: 1px solid var(--accent);
  background: var(--accent-soft);
}

.overview-task-section.later-setup {
  border: 1px solid var(--border-subtle);
  background: var(--surface-raised);
}

.section-heading {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: baseline;
  margin-bottom: 12px;
}

.section-heading p {
  margin-bottom: 0;
  color: var(--ink-secondary);
  font-size: 14px;
}

.attention-list {
  display: grid;
  gap: 10px;
}

.overview-task-list,
.overview-task-grid {
  display: grid;
  gap: 12px;
}

.overview-task-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.attention-item {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 14px;
  border: 1px solid rgba(183, 121, 31, 0.35);
  border-radius: 8px;
  background: var(--surface-raised);
}

.attention-item p {
  margin-bottom: 0;
  color: var(--ink-secondary);
}

.overview-task-card {
  display: grid;
  gap: 14px;
  min-height: 150px;
  padding: 16px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.overview-task-card.blocker {
  border-color: rgba(183, 121, 31, 0.35);
}

.overview-task-card.later,
.overview-task-card.ready {
  background: var(--surface-base);
}

.overview-task-card h3 {
  margin-top: 10px;
}

.overview-task-card p {
  margin-bottom: 0;
  color: var(--ink-secondary);
}

.overview-task-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  align-self: end;
}

.primary-action.compact,
.secondary-action.compact {
  min-height: 38px;
  padding: 8px 12px;
  font-size: 14px;
}

.text-action {
  color: var(--primary);
  font-weight: 800;
  text-decoration: none;
}

.status-badge,
.panel-state {
  align-self: flex-start;
  white-space: nowrap;
  border-radius: 9999px;
  padding: 4px 9px;
  color: var(--primary);
  background: var(--primary-soft);
  font-size: 12px;
  font-weight: 700;
}

.overview-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.overview-tutorial-note,
.overview-snapshot-heading {
  grid-column: 1 / -1;
  display: grid;
  gap: 4px;
  padding: 14px 16px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.overview-snapshot-heading h2 {
  margin: 0;
  font-size: 18px;
}

.overview-tutorial-note p,
.overview-snapshot-heading p {
  margin: 0;
  color: var(--ink-secondary);
}

.overview-panel {
  display: grid;
  gap: 10px;
  min-height: 180px;
  padding: 18px;
  border: 1px solid var(--border-subtle);
  border-radius: 12px;
  background: var(--surface-raised);
}

.overview-panel p {
  margin-bottom: 0;
  color: var(--ink-secondary);
}

.overview-panel.workqueue .panel-state {
  color: var(--success);
  background: var(--success-soft);
}

.overview-first-work {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, .65fr);
  gap: 16px;
  margin-bottom: 18px;
}

.overview-activation-card,
.overview-first-work-actions,
.overview-attention-card,
.overview-optional-setup {
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.overview-activation-card {
  padding: 22px;
  border-left: 4px solid var(--primary);
}

.overview-activation-card h2,
.overview-first-work-actions h2 {
  margin-bottom: 6px;
  font-size: 21px;
}

.overview-activation-card > p,
.overview-first-work-actions > p {
  margin-bottom: 18px;
  color: var(--ink-secondary);
}

.overview-activation-progress {
  height: 7px;
  margin-bottom: 14px;
  overflow: hidden;
  border-radius: 999px;
  background: #e2eaee;
}

.overview-activation-progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--primary);
}

.overview-activation-steps {
  display: grid;
  margin: 0;
  padding: 0;
  list-style: none;
}

.overview-activation-steps li {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px 0;
  border-top: 1px solid #e1e8eb;
}

.overview-activation-steps li > span {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 50%;
  color: var(--primary);
  background: var(--primary-soft);
  font-weight: 800;
}

.overview-activation-steps li.complete > span {
  color: var(--success);
  background: var(--success-soft);
}

.overview-activation-steps strong,
.overview-activation-steps small {
  display: block;
}

.overview-activation-steps small {
  color: var(--ink-secondary);
}

.overview-first-work-actions {
  display: grid;
  align-content: start;
  gap: 10px;
  padding: 22px;
}

.overview-first-work-actions > p {
  margin-bottom: 6px;
}

.overview-first-work-actions .office-action {
  min-height: 0;
}

.overview-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.overview-metric {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 5px 12px;
  min-height: 132px;
  padding: 18px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  color: var(--ink-primary);
  background: var(--surface-raised);
  text-decoration: none;
}

.overview-metric:hover,
.overview-metric:focus-visible {
  border-color: var(--primary);
  box-shadow: 0 2px 8px rgba(12, 75, 92, .09);
}

.overview-metric > span,
.overview-metric small {
  color: #53666f;
  font-size: 13px;
  font-weight: 700;
}

.overview-metric > span { grid-column: 1 / -1; }

.overview-metric strong {
  grid-column: 1;
  grid-row: 2;
  align-self: start;
  color: var(--ink-primary);
  font-size: 31px;
  line-height: 1;
}

.overview-metric small {
  grid-column: 1;
  grid-row: 3;
  align-self: end;
  font-weight: 500;
}

.overview-metric em {
  grid-column: 2;
  grid-row: 3;
  align-self: end;
  justify-self: end;
  color: var(--primary);
  font-style: normal;
  font-weight: 800;
}

.overview-work-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, .75fr);
  gap: 16px;
}

.overview-card-heading {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 16px 18px;
  border-bottom: 1px solid var(--border-subtle);
}

.overview-card-heading h2 { margin: 0; }

.overview-empty-state {
  margin: 0;
  padding: 28px 18px;
  color: var(--ink-secondary);
}

.overview-attention-row {
  display: grid;
  grid-template-columns: 36px minmax(180px, 1.35fr) minmax(180px, .9fr) 86px;
  gap: 14px;
  align-items: center;
  padding: 15px 18px;
  border-bottom: 1px solid #e1e8eb;
  color: var(--ink-primary);
  text-decoration: none;
}

.overview-attention-row:last-child { border-bottom: 0; }

.overview-attention-row:hover,
.overview-attention-row:focus-visible { background: #f7fbfc; }

.overview-attention-icon {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 7px;
  color: var(--primary);
  background: var(--primary-soft);
  font-weight: 800;
}

.overview-attention-icon::before { content: "!"; }
.overview-attention-icon.acceptedoffer { color: var(--success); background: var(--success-soft); }
.overview-attention-icon.acceptedoffer::before { content: "\2713"; }
.overview-attention-icon.review::before { content: "\25A1"; }

.overview-attention-primary small,
.overview-attention-primary strong,
.overview-attention-primary em,
.overview-attention-explanation small,
.overview-attention-explanation strong {
  display: block;
}

.overview-attention-primary small,
.overview-attention-primary em,
.overview-attention-explanation small {
  color: var(--ink-secondary);
  font-size: 12px;
  font-style: normal;
}

.overview-attention-primary strong { margin-top: 2px; }
.overview-attention-explanation {
  min-width: 0;
  padding-left: 4px;
}
.overview-attention-explanation strong {
  margin-top: 2px;
  color: #334850;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.3;
}

.overview-attention-row b {
  justify-self: end;
  color: var(--primary);
  white-space: nowrap;
  text-align: right;
}

.overview-supporting-column { display: grid; align-content: start; gap: 16px; }

.overview-today-card {
  overflow: hidden;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.overview-today-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 18px;
  border-bottom: 1px solid #e1e8eb;
  color: var(--ink-primary);
  text-decoration: none;
}

.overview-today-row:hover,
.overview-today-row:focus-visible { background: #f7fbfc; }
.overview-today-row strong,
.overview-today-row small { display: block; }
.overview-today-row small { margin-top: 3px; color: var(--ink-secondary); font-size: 12px; }
.overview-today-row em {
  flex: 0 0 auto;
  padding: 5px 8px;
  border-radius: 999px;
  color: var(--success);
  background: var(--success-soft);
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}
.overview-today-row em.attention { color: #8a5b00; background: #fff2d5; }
.overview-today-footer {
  display: block;
  padding: 14px 18px;
  color: var(--primary);
  font-weight: 800;
  text-decoration: none;
}
.overview-today-footer:hover { background: #f7fbfc; }

.overview-optional-setup > a {
  display: grid;
  gap: 5px;
  padding: 14px 18px;
  border-bottom: 1px solid #e1e8eb;
  color: var(--ink-primary);
  text-decoration: none;
}

.overview-optional-setup > a:last-child { border-bottom: 0; }
.overview-optional-setup > a:hover { background: #f7fbfc; }
.overview-optional-setup small { color: var(--ink-secondary); }
.overview-optional-setup b { color: var(--primary); font-size: 13px; }

@media (max-width: 980px) {
  .overview-first-work,
  .overview-work-grid { grid-template-columns: 1fr; }

  .overview-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .overview-attention-row { grid-template-columns: 36px minmax(0, 1fr) 86px; }
  .overview-attention-explanation { grid-column: 2; }
}

@media (max-width: 680px) {
  .office-topbar { gap: 16px; }
  .office-topbar-actions { width: 100%; justify-content: stretch; }
  .office-topbar-actions > a { flex: 1; text-align: center; }
  .overview-metrics { grid-template-columns: 1fr 1fr; }
  .overview-activation-card,
  .overview-first-work-actions { padding: 18px; }
  .overview-activation-steps li { grid-template-columns: 32px minmax(0, 1fr); }
  .overview-activation-steps li .text-action { grid-column: 2; }
  .overview-attention-row { grid-template-columns: 36px minmax(0, 1fr); }
  .overview-attention-explanation,
  .overview-attention-row b { grid-column: 2; }
}

@media (max-width: 520px) {
  .overview-metrics { grid-template-columns: 1fr; }
  .overview-metric { min-height: 118px; }
}

.auth-page {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 24px;
  background:
    linear-gradient(180deg, rgba(248, 250, 252, 0.92), rgba(238, 244, 247, 0.88)),
    var(--surface-base);
}

.auth-shell {
  width: min(100%, 420px);
  display: grid;
  gap: 18px;
}

.auth-card {
  padding: 28px;
  border: 1px solid var(--border-subtle);
  border-radius: 12px;
  background: var(--surface-raised);
  box-shadow: 0 18px 48px rgba(16, 42, 53, 0.12);
}

.auth-language-form {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-bottom: 22px;
}

.auth-language-title {
  color: var(--ink-secondary);
  font-size: 13px;
  font-weight: 700;
}

.auth-language-switch {
  display: inline-grid;
  grid-template-columns: repeat(2, minmax(74px, 1fr));
  gap: 3px;
  padding: 3px;
  border: 1px solid var(--border-subtle);
  border-radius: 999px;
  background: var(--surface-base);
}

.auth-language-switch button {
  min-height: 34px;
  border: 0;
  border-radius: 999px;
  padding: 0 12px;
  color: var(--ink-secondary);
  background: transparent;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
}

.auth-language-switch button.is-active {
  color: var(--white);
  background: var(--primary);
  box-shadow: 0 6px 16px rgba(12, 103, 128, 0.24);
}

.auth-lede {
  margin-bottom: 22px;
  color: var(--ink-secondary);
}

.auth-error {
  margin-bottom: 16px;
  padding: 12px;
  border: 1px solid #b42318;
  border-radius: 8px;
  color: #7a271a;
  background: #fef3f2;
  font-weight: 650;
}

.auth-form {
  display: grid;
  gap: 16px;
}

.auth-remember-choice {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  cursor: pointer;
}

.auth-remember-choice input {
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
  accent-color: var(--primary);
}

.auth-remember-choice span,
.auth-remember-choice small {
  display: block;
}

.auth-remember-choice small {
  margin-top: 2px;
  color: var(--ink-secondary);
  line-height: 1.4;
}

.company-selection-list {
    display: grid;
    gap: 10px;
}

.company-selection-option {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    min-height: 68px;
    padding: 12px 14px;
    border: 1px solid #c9d8df;
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
}

.company-selection-option:has(input:checked) {
    border-color: #0f6b7a;
    background: #eef8fa;
    box-shadow: 0 0 0 1px #0f6b7a;
}

.company-selection-option input {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: #0f6b7a;
}

.company-selection-copy {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.company-selection-copy strong,
.company-selection-copy small {
    overflow-wrap: anywhere;
}

.company-selection-copy small {
    color: #536873;
}

.invite-summary {
    display: grid;
    grid-template-columns: minmax(84px, auto) minmax(0, 1fr);
    gap: 8px 14px;
    margin: 18px 0;
    padding: 14px;
    border: 1px solid #c9d8df;
    border-radius: 8px;
    background: #f7fafb;
}

.invite-summary span {
    color: #536873;
}

.invite-summary strong {
    overflow-wrap: anywhere;
}

.auth-link-button {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.invite-decline-form {
    display: flex;
    justify-content: center;
    margin-top: 14px;
}

.auth-shell.invite-completion-shell { width: min(100%, 620px); }

.invite-completion-options {
  display: grid;
  gap: 14px;
}

.invite-completion-option {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 14px;
  padding: 18px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.invite-completion-option h2 {
  margin: 0;
  font-size: 18px;
}

.invite-completion-option p {
  margin: 5px 0 14px;
  color: var(--ink-secondary);
  font-size: 14px;
}

.invite-completion-icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  color: var(--primary);
  background: var(--primary-soft);
}

.invite-completion-icon svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.invite-store-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.invite-store-options > span {
  display: grid;
  gap: 2px;
  min-height: 58px;
  padding: 10px 12px;
  border: 1px dashed #a8bdc6;
  border-radius: 8px;
  color: var(--ink-secondary);
  background: var(--surface-raised);
}

.invite-store-options strong {
  color: var(--ink-primary);
  font-size: 14px;
}

.invite-store-options small,
.invite-completion-option .invite-completion-note {
  color: var(--ink-muted);
  font-size: 12px;
}

.invite-completion-option .invite-completion-note {
  margin: 10px 0 0;
}

@media (max-width: 520px) {
  .invite-completion-option { grid-template-columns: 1fr; }
  .invite-store-options { grid-template-columns: 1fr; }
}

.auth-text-button {
    border: 0;
    background: transparent;
    color: #315562;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
}

.field-group {
  display: grid;
  gap: 6px;
}

.field-group label {
  font-weight: 700;
}

.field-group input,
.field-group textarea {
  min-height: 46px;
  width: 100%;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  padding: 10px 12px;
  color: var(--ink-primary);
  background: var(--white);
  font: inherit;
}

.field-group textarea {
  min-height: 96px;
  resize: vertical;
}

.job-material-catalog-search { display: grid; gap: 6px; }
.job-material-catalog-search > label { color: #3f535c; font-size: .8rem; font-weight: 800; }
.job-material-catalog-search > .job-material-drawer-grid { grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.job-material-catalog-search input { min-width: 0; }
.job-material-catalog-results { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }
.job-material-catalog-pages { display: flex; align-items: center; gap: 8px; margin-left: auto; }
.job-material-catalog-pages[hidden] { display: none; }
.job-material-catalog-pages .secondary-action { width: 44px; min-width: 44px; height: 44px; min-height: 44px; padding: 0; }

.field-error {
  min-height: 18px;
  color: #b42318;
  font-size: 13px;
  font-weight: 650;
}

.auth-privacy-note {
  margin-top: 22px;
  margin-bottom: 0;
  color: var(--ink-secondary);
  font-size: 13px;
  text-align: center;
}

.auth-submit {
  min-height: 48px;
  width: 100%;
  border: 1px solid var(--primary);
  border-radius: 8px;
  color: var(--white);
  background: var(--primary);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.auth-submit:hover:not(:disabled) {
  background: var(--primary-hover);
}

.auth-submit:disabled {
  border-color: #cbd6da;
  color: #71838b;
  background: #e9eef0;
  cursor: not-allowed;
}

.auth-recovery-link {
  margin: 18px 0 0;
  text-align: center;
  font-size: 14px;
}

.auth-recovery-link a {
  color: var(--primary);
  font-weight: 700;
  text-decoration: none;
}

.auth-recovery-link a:hover,
.auth-recovery-link a:focus-visible {
  text-decoration: underline;
}

.auth-signup-divider {
  height: 1px;
  margin: 18px 0 14px;
  background: var(--border-subtle);
}

.auth-signup {
  display: grid;
  gap: 2px;
  text-align: center;
}

.auth-signup h2 {
  margin: 0;
  font-size: 16px;
}

.auth-signup p {
  margin: 0 0 4px;
  color: var(--ink-secondary);
  font-size: 14px;
}

.auth-secondary-action {
  display: flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--primary);
  border-radius: 8px;
  color: var(--primary);
  background: var(--surface-raised);
  font-weight: 800;
  text-decoration: none;
}

.auth-secondary-action:hover,
.auth-secondary-action:focus-visible {
  color: var(--primary-hover);
  background: var(--primary-soft);
}

.auth-checkbox {
  display: flex;
  gap: 9px;
  align-items: flex-start;
  color: var(--ink-secondary);
  font-size: 14px;
  line-height: 1.45;
}

.auth-checkbox input {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  margin: 1px 0 0;
  accent-color: var(--primary);
}

.auth-checkbox a {
  color: var(--primary);
  font-weight: 700;
}

.password-input-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.password-toggle-button {
  min-height: 46px;
  padding: 8px 12px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  color: var(--primary);
  background: var(--surface-raised);
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
}

.password-toggle-button:hover,
.password-toggle-button:focus-visible {
  border-color: var(--primary);
  background: var(--primary-soft);
}

.password-rules {
  margin: 2px 0 0;
  color: var(--ink-secondary);
  font-size: 12px;
}

.signup-form {
  gap: 12px;
}

.signup-form .field-group {
  gap: 5px;
}

.signup-form .field-error {
  min-height: 0;
}

.signup-form .field-error:empty {
  display: none;
}

.consent-error {
  margin-top: -8px;
}

.auth-account-link {
  margin: 22px 0 0;
  color: var(--ink-secondary);
  text-align: center;
  font-size: 14px;
}

.auth-account-link a {
  color: var(--primary);
  font-weight: 800;
}

.auth-confirmation {
  display: grid;
  gap: 8px;
  margin-top: 20px;
  padding: 14px;
  border: 1px solid var(--success);
  border-radius: 8px;
  color: #14532d;
  background: var(--success-soft);
}

.auth-confirmation p {
  margin: 0;
}

.auth-confirmation-email {
  overflow-wrap: anywhere;
  font-weight: 800;
}

.auth-confirmation-warning {
  border-color: #d97706;
  color: #92400e;
  background: #fffbeb;
}

.auth-confirmation-actions {
  margin-top: 14px;
}

.auth-confirmation-actions .auth-secondary-action {
  width: 100%;
}

.public-trial-page {
  min-height: 100vh;
  padding: 24px;
  background: var(--surface-base);
}

.public-trial-shell {
  width: min(100%, 1040px);
  margin: 0 auto;
}

.public-trial-header,
.public-trial-header-actions,
.public-language-form,
.public-contact-panel {
  display: flex;
  align-items: center;
}

.public-trial-header {
  justify-content: space-between;
  gap: 20px;
  padding: 6px 0 30px;
}

.public-trial-brand {
  color: var(--ink-primary);
  font-size: 20px;
  font-weight: 850;
  text-decoration: none;
}

.public-trial-header-actions,
.public-language-form {
  gap: 14px;
}

.public-language-form > span {
  color: var(--ink-secondary);
  font-size: 13px;
  font-weight: 700;
}

.public-text-link {
  color: var(--primary);
  font-weight: 750;
  text-decoration: none;
}

.public-trial-intro,
.public-workflow,
.public-demo-summary,
.public-contact-panel {
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.public-trial-intro {
  padding: clamp(28px, 5vw, 56px);
}

.public-trial-intro h1 {
  max-width: 690px;
  font-size: 42px;
}

.public-trial-intro p:not(.eyebrow) {
  max-width: 650px;
  margin-bottom: 24px;
  color: var(--ink-secondary);
  font-size: 18px;
}

.public-primary-action {
  display: inline-flex;
  align-items: center;
  width: auto;
  padding: 0 18px;
  text-decoration: none;
}

.public-workflow,
.public-demo-summary,
.public-contact-panel {
  margin-top: 18px;
  padding: 24px;
}

.public-workflow-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.public-workflow-list li {
  padding: 16px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.public-workflow-list p,
.public-demo-summary p,
.public-contact-panel p {
  margin-bottom: 0;
  color: var(--ink-secondary);
}

.public-contact-panel {
  justify-content: space-between;
  gap: 20px;
}

@media (max-width: 680px) {
  .public-trial-page {
    padding: 16px;
  }

  .public-trial-header,
  .public-trial-header-actions,
  .public-contact-panel {
    align-items: flex-start;
    flex-direction: column;
  }

  .public-trial-header-actions {
    width: 100%;
  }

  .public-trial-intro h1 {
    font-size: 32px;
  }

  .public-workflow-list {
    grid-template-columns: 1fr;
  }
}

.auth-brand {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  color: var(--ink-primary);
}

.onboarding-page {
  min-height: 100vh;
  padding: 32px;
  background: var(--surface-base);
}

.onboarding-shell {
  width: min(100%, 1080px);
  margin: 0 auto;
  display: grid;
  gap: 18px;
}

.onboarding-header {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: flex-start;
}

.onboarding-progress {
  display: grid;
  gap: 8px;
  width: min(100%, 320px);
  padding: 16px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.onboarding-progress p {
  margin: 0;
  color: var(--ink-secondary);
}

.secondary-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  color: var(--primary);
  background: var(--surface-raised);
  font-weight: 700;
  text-decoration: none;
}

.onboarding-message {
  margin: 0;
  padding: 12px 14px;
  border: 1px solid var(--success);
  border-radius: 8px;
  color: #14532d;
  background: var(--success-soft);
  font-weight: 650;
}

.onboarding-form {
  display: grid;
  gap: 14px;
}

.onboarding-section {
  display: grid;
  grid-template-columns: minmax(220px, 0.45fr) minmax(0, 1fr);
  gap: 24px;
  padding: 20px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
  min-width: 0;
  overflow-wrap: anywhere;
}

.onboarding-section > *, .onboarding-section .field-group { min-width: 0; }
.invoice-directory .workspace-empty { overflow-wrap: anywhere; }
.settings-page .status-badge, .job-detail-hero .status-badge {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}

.onboarding-section > div > p,
.onboarding-section > p {
  margin-bottom: 0;
  color: var(--ink-secondary);
}

.setup-step-list ol {
  margin: 0;
  padding-left: 20px;
  color: var(--ink-secondary);
}

.setup-step-list li + li {
  margin-top: 8px;
}

.onboarding-fields {
  display: grid;
  gap: 14px;
}

.onboarding-fields.two-columns {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.field-group select {
  min-height: 46px;
  width: 100%;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  padding: 10px 12px;
  color: var(--ink-primary);
  background: var(--white);
  font: inherit;
}

.checkbox-row {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  color: var(--ink-primary);
  font-weight: 700;
}

.checkbox-row input {
  width: 20px;
  height: 20px;
}

.choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.choice-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 2px 10px;
  padding: 16px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.choice-card input {
  grid-row: span 2;
  width: 20px;
  height: 20px;
  margin-top: 2px;
}

.choice-card span {
  font-weight: 800;
}

.choice-card small {
  color: var(--ink-secondary);
}

.onboarding-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
  align-items: center;
}

.onboarding-footer .auth-submit {
  width: min(100%, 260px);
}

.onboarding-next-steps {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.onboarding-next-steps h3 {
  width: 100%;
  margin: 0;
}

.onboarding-next-steps a {
  min-height: 40px;
  padding: 9px 12px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  color: var(--primary);
  background: var(--surface-base);
  font-weight: 700;
  text-decoration: none;
}

.header-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: flex-end;
}

.user-list {
  display: grid;
  gap: 12px;
}

.user-row {
  align-items: center;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  padding: 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.user-row p {
  margin-bottom: 0;
  color: var(--ink-secondary);
}

.inline-contact-form,
.inline-site-form,
.inline-project-form {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  align-items: center;
}

.inline-contact-form {
  grid-template-columns: minmax(160px, 1fr) minmax(160px, 1fr) minmax(140px, 0.6fr) auto;
}

.inline-site-form {
  grid-template-columns: repeat(3, minmax(160px, 1fr)) auto;
}

.inline-project-form {
  grid-template-columns: minmax(160px, 1fr) minmax(140px, 0.7fr) minmax(180px, 1fr) minmax(180px, 1fr) auto;
}

.inline-contact-form input,
.inline-contact-form select,
.inline-site-form input,
.inline-site-form select,
.inline-site-form textarea,
.inline-project-form input,
.inline-project-form textarea {
  min-height: 42px;
  width: 100%;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  padding: 8px 10px;
  color: var(--ink-primary);
  background: var(--white);
  font: inherit;
}

.inline-site-form textarea,
.inline-project-form textarea {
  min-height: 78px;
  resize: vertical;
}

.inline-site-form button,
.inline-project-form button {
  align-self: stretch;
}

.site-list,
.project-list {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
}

.inline-choice-list {
  min-height: 42px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin: 0;
  padding: 8px 10px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--white);
}

.inline-choice-list legend {
  padding: 0 4px;
  color: var(--ink-secondary);
  font-size: 12px;
  font-weight: 700;
}

.inline-choice-list label {
  display: inline-flex;
  gap: 6px;
  align-items: center;
}

.inline-choice-list input {
  width: auto;
  min-height: auto;
}

.inline-choice-list .unavailable-technician-choice { border: 1px solid #e8c86a; border-radius: 6px; padding: 8px 10px; background: #fff8dd; }
.unavailable-technician-choice span { font-weight: 800; }
.unavailable-technician-choice small { color: #674b00; }

.site-summary {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.site-summary p {
  margin: 0;
}

.customer-search-panel {
  align-items: start;
}

.customer-search-content {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.customer-search-form {
  display: grid;
  grid-template-columns: minmax(220px, 1.5fr) repeat(4, minmax(140px, 1fr));
  gap: 12px;
  align-items: end;
}

.customer-search-form .field-group {
  min-width: 0;
}

.search-term-field {
  grid-column: span 2;
}

.search-actions {
  display: flex;
  gap: 10px;
  align-items: center;
}

.search-actions .auth-submit,
.search-actions .secondary-link {
  min-height: 46px;
  width: 100%;
}

.search-result-list {
  display: grid;
  gap: 10px;
}

.search-result-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
  text-decoration: none;
}

.search-result-row:hover {
  border-color: var(--primary);
  background: var(--primary-soft);
}

.search-result-row small {
  display: block;
  color: var(--ink-secondary);
}

.job-draft-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.job-draft-form textarea {
  min-height: 104px;
  width: 100%;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  padding: 10px 12px;
  color: var(--ink-primary);
  background: var(--white);
  font: inherit;
  resize: vertical;
}

.offer-draft-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.offer-draft-form textarea {
  min-height: 96px;
  resize: vertical;
}

.offer-command-strip,
.job-command-strip,
.invoice-command-strip,
.handover-command-strip {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  order: 0;
  padding: 18px 20px;
  border: 1px solid rgba(15, 94, 122, 0.22);
  border-radius: 8px;
  background: linear-gradient(135deg, #ffffff 0%, #eaf5f8 100%);
}

.offer-command-strip h2,
.offer-command-strip p,
.job-command-strip h2,
.job-command-strip p,
.invoice-command-strip h2,
.invoice-command-strip p,
.handover-command-strip h2,
.handover-command-strip p {
  margin-bottom: 0;
}

.offer-command-strip p:not(.eyebrow),
.job-command-strip p:not(.eyebrow),
.invoice-command-strip p:not(.eyebrow),
.handover-command-strip p:not(.eyebrow) {
  color: var(--ink-secondary);
}

.command-strip-note {
  font-size: 13px;
  font-weight: 700;
}

.offer-command-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.offers-review-section {
  order: 1;
}

.offers-create-section {
  order: 2;
}

.jobs-list-section {
  order: 1;
}

.jobs-create-section {
  order: 2;
}

.offer-fieldset {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.offer-fieldset legend {
  padding: 0 4px;
  color: var(--ink-secondary);
  font-size: 13px;
  font-weight: 700;
}

.offer-field-grid,
.offer-section-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.offer-section-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.offer-section-card {
  display: grid;
  gap: 8px;
}

.offer-section-card input,
.offer-section-card select,
.offer-section-card textarea {
  min-height: 42px;
  width: 100%;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  padding: 8px 10px;
  color: var(--ink-primary);
  background: var(--white);
  font: inherit;
}

.offer-section-card textarea {
  min-height: 74px;
}

.offer-draft-list {
  display: grid;
  gap: 12px;
}

.offer-draft-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  gap: 12px;
  align-items: start;
  padding: 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.offer-draft-row h3,
.offer-draft-row p {
  margin-bottom: 4px;
}

.offer-summary-list,
.offer-section-list,
.offer-version-list {
  grid-column: 1 / -1;
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.offer-summary-list p,
.offer-section-list p,
.offer-version-list p {
  margin: 0;
  color: var(--ink-secondary);
}

.offer-delivery-form {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(180px, 1fr) auto;
  gap: 10px;
  align-items: end;
}

.offer-decision-form {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(140px, 1fr)) auto;
  gap: 10px;
  align-items: end;
}

.offer-conversion-form {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(140px, 1fr)) auto;
  gap: 10px;
  align-items: end;
  padding-top: 10px;
  border-top: 1px solid var(--border-subtle);
}

.public-offer-trust {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.public-trust-points {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.public-trust-points span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px;
  border-radius: 999px;
  color: var(--primary);
  background: var(--primary-soft);
  font-size: 13px;
  font-weight: 800;
}

.offer-delivery-form input,
.offer-delivery-form select,
.offer-decision-form input,
.offer-decision-form select,
.offer-conversion-form select {
  min-height: 42px;
  width: 100%;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  padding: 8px 10px;
  color: var(--ink-primary);
  background: var(--white);
  font: inherit;
}

.offer-version-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--border-subtle);
}

.offer-version-row .offer-delivery-form,
.offer-version-row .offer-decision-form,
.offer-version-row .offer-conversion-form,
.offer-delivery-list,
.offer-decision-list {
  grid-column: 1 / -1;
}

.offer-decision-list p,
.offer-linked-jobs p {
  margin: 0;
  color: var(--ink-secondary);
}

.public-offer-page {
  min-height: 100vh;
  padding: 32px 16px;
  background: var(--surface-raised);
}

.public-offer-shell {
  max-width: 840px;
  margin: 0 auto;
  display: grid;
  gap: 18px;
  padding: 24px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.public-offer-header {
  display: grid;
  gap: 8px;
}

.public-offer-header p {
  margin: 0;
  color: var(--ink-secondary);
}

.public-offer-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.job-draft-list {
  display: grid;
  gap: 12px;
}

.job-filter-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.job-filter-tabs a {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  padding: 8px 10px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  color: var(--ink-secondary);
  background: var(--surface-raised);
  font-weight: 700;
  text-decoration: none;
}

.job-filter-tabs a.active {
  color: var(--primary);
  border-color: var(--primary);
  background: var(--primary-soft);
}

.job-search-form {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto auto;
  gap: 10px;
  align-items: end;
}

.job-detail-hero {
  width: min(100%, 1180px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.55fr);
  gap: 18px;
  align-items: start;
  padding: 20px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.record-summary-hero {
  width: min(100%, 1180px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
  padding: 20px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
  box-shadow: 0 10px 28px rgba(16, 42, 53, 0.06);
}

.record-summary-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.record-summary-facts {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

.record-summary-facts div {
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.record-summary-facts dt {
  color: var(--ink-muted);
  font-size: 13px;
  font-weight: 750;
}

.record-summary-facts dd {
  margin: 4px 0 0;
  color: var(--ink-primary);
  font-size: 18px;
  font-weight: 850;
}

.job-detail-hero h1,
.job-detail-hero h2,
.job-detail-hero p {
  margin-bottom: 6px;
}

.job-detail-hero h1 {
  font-size: 1.5rem;
  line-height: 1.25;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
}

.job-next-action-panel.is-closed {
  grid-template-columns: minmax(0, 1fr) auto;
  background: #fff;
  border-left-color: #78939b;
}

@media (max-width: 760px) {
  .job-next-action-panel.is-closed {
    grid-template-columns: minmax(0, 1fr);
  }
}

.job-detail-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.job-detail-summary.record-summary-facts {
  grid-column: auto;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.job-draft-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 12px;
  align-items: start;
  padding: 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.job-draft-row h3,
.job-draft-row p {
  margin-bottom: 4px;
}

.missing-info-panel {
  grid-column: 1 / -1;
  padding: 12px;
  border: 1px solid rgba(217, 119, 6, 0.35);
  border-radius: 8px;
  background: var(--accent-soft);
}

.missing-info-panel ul {
  margin: 6px 0 0;
  padding-left: 20px;
  color: var(--ink-secondary);
}

.checklist-template-panel,
.job-checklist-panel,
.job-attachment-panel {
  grid-column: 1 / -1;
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.checklist-template-panel p,
.job-checklist-step p {
  margin: 0;
  color: var(--ink-secondary);
}

.job-planning-form {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(220px, 1.3fr) repeat(3, minmax(120px, 0.7fr)) auto;
  gap: 10px;
  align-items: end;
}

.workflow-form-heading {
  grid-column: 1 / -1;
  margin: 0;
  font-size: 18px;
}

.workflow-form-note {
  grid-column: 1 / -1;
  display: grid;
  gap: 4px;
}

.workflow-form-note p {
  margin: 0;
  color: var(--ink-secondary);
}

.job-status-form {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(180px, auto) auto;
  gap: 10px;
  align-items: end;
  padding-top: 12px;
  border-top: 1px solid var(--border-subtle);
}

.field-team-panel {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.field-team-panel p {
  margin: 0;
  color: var(--ink-secondary);
}

.field-lead-form {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 10px;
  align-items: end;
}

.field-readiness-row {
  display: grid;
  grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr);
  gap: 12px;
  padding-top: 10px;
  border-top: 1px solid var(--border-subtle);
}

.field-readiness-form {
  display: grid;
  grid-template-columns: minmax(120px, .8fr) minmax(120px, auto) repeat(2, minmax(150px, 1fr)) auto;
  gap: 10px;
  align-items: end;
}

.inline-checkbox {
  display: flex;
  gap: 8px;
  align-items: center;
  color: var(--ink-secondary);
  font-size: 14px;
}

.toggle-checkbox {
  min-height: 48px;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  color: var(--ink-primary);
  background: var(--surface-raised);
}

.toggle-checkbox input {
  appearance: none;
  width: 42px;
  height: 24px;
  margin-left: auto;
  border: 1px solid var(--border-subtle);
  border-radius: 999px;
  background: var(--surface-muted);
  position: relative;
  flex: 0 0 auto;
}

.toggle-checkbox input::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: var(--surface-raised);
  box-shadow: 0 1px 3px rgb(15 23 42 / 18%);
  transition: transform 160ms ease;
}

.toggle-checkbox input:checked {
  border-color: var(--primary);
  background: var(--primary);
}

.toggle-checkbox input:checked::after {
  transform: translateX(18px);
}

.toggle-checkbox input:focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 2px;
}

.job-checklist-apply-form {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 10px;
  align-items: end;
}

.job-checklist-step {
  display: grid;
  grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr);
  gap: 12px;
  padding-top: 10px;
  border-top: 1px solid var(--border-subtle);
}

.job-checklist-step-form {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr)) auto;
  gap: 10px;
  align-items: end;
}

.job-attachment-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  align-items: end;
}

.job-attachment-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding-top: 10px;
  border-top: 1px solid var(--border-subtle);
}

.job-attachment-row p {
  margin: 0;
  color: var(--ink-secondary);
}

.job-history-panel {
  grid-column: 1 / -1;
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.job-history-panel p {
  margin: 0;
  color: var(--ink-secondary);
}

.detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}

.detail-section,
.empty-panel {
  display: grid;
  gap: 8px;
  padding: 16px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.detail-section h2,
.empty-panel h2 {
  margin: 0;
}

.detail-section p,
.empty-panel p {
  margin: 0;
  color: var(--ink-secondary);
}

.empty-panel {
  margin-top: 16px;
}

.empty-copy {
  margin-bottom: 0;
  color: var(--ink-secondary);
}

.demo-preview {
  align-items: start;
}

.demo-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.demo-list article {
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.demo-list article p {
  margin-bottom: 0;
  color: var(--ink-secondary);
}

.remove-demo-form {
  grid-column: 2;
}

.remove-demo-form button {
  min-height: 44px;
  border: 1px solid #b42318;
  border-radius: 8px;
  color: #7a271a;
  background: #fef3f2;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.settings-page {
  min-height: 100vh;
  padding: 32px;
  background: var(--surface-base);
}

.integration-readiness-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  margin: 1rem 0 1.5rem;
}

.integration-readiness-card {
  min-width: 0;
  padding: 1rem;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.integration-readiness-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
}

.integration-readiness-card h3,
.integration-readiness-card p {
  margin-top: 0;
}

.integration-readiness-card p {
  color: var(--ink-secondary);
  line-height: 1.5;
}

.integration-empty-state {
  padding: 1rem;
  border-left: 4px solid var(--accent);
  background: var(--surface-subtle);
}

.integration-empty-state p {
  margin-bottom: 0;
}

@media (max-width: 900px) {
  .integration-readiness-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .integration-readiness-grid {
    grid-template-columns: 1fr;
  }

  .integration-readiness-card__header {
    align-items: center;
  }
}

.operator-console-page {
  min-height: 100vh;
  padding: 32px;
  background: var(--surface-muted);
}

.workspace-page-frame,
.settings-shell {
  --workspace-section-gap: 18px;
}

.settings-shell {
  width: 100%;
  max-width: none;
  margin: 0 auto;
  display: grid;
  row-gap: var(--workspace-section-gap);
  column-gap: 18px;
}

.activation-panel,
.activation-guidance {
  display: grid;
  gap: 18px;
  padding: 20px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.activation-panel-heading,
.activation-guidance {
  max-width: 760px;
}

.activation-panel-heading h2,
.activation-guidance h2,
.activation-guidance p {
  margin: 0;
}

.activation-panel-heading p,
.activation-guidance > p,
.activation-note {
  color: var(--ink-secondary);
}

.activation-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  max-width: 760px;
}

.activation-actions {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding-top: 4px;
}

.operator-console-shell {
  display: grid;
  gap: 18px;
}

.operator-console-header {
  border-color: rgba(15, 94, 122, 0.28);
}

.operator-console-page p,
.operator-console-page h3 {
  overflow-wrap: anywhere;
}

.settings-hero,
.workflow-hero {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: flex-start;
  width: min(100%, 1180px);
  margin: 0 auto;
  padding: 20px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
  box-shadow: 0 10px 28px rgba(16, 42, 53, 0.06);
}

.settings-hero h1,
.workflow-hero h1 {
  margin-bottom: 6px;
}

.settings-hero p,
.workflow-hero p {
  margin-bottom: 0;
  color: var(--ink-secondary);
}

.settings-grid,
.workflow-grid {
  width: min(100%, 1180px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 0.48fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.settings-card,
.workflow-card {
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.settings-card h2,
.settings-card h3,
.workflow-card h2,
.workflow-card h3 {
  margin: 0;
}

.settings-card p,
.workflow-card p {
  margin-bottom: 0;
  color: var(--ink-secondary);
}

.settings-section-map {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  padding: 8px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.settings-section-map a {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  padding: 7px 10px;
  border: 1px solid transparent;
  border-radius: 6px;
  color: var(--ink-secondary);
  font-size: 14px;
  font-weight: 750;
  text-decoration: none;
}

.settings-section-map a.active,
.settings-section-map a:hover {
  color: var(--primary);
  border-color: var(--primary-soft);
  background: var(--primary-soft);
}

.settings-map-home {
  color: var(--primary) !important;
}

.settings-back-link {
  width: fit-content;
  color: var(--primary);
  font-weight: 750;
  text-decoration: none;
}

.settings-back-link:hover {
  text-decoration: underline;
}

.settings-directory {
  display: grid;
  gap: 24px;
  max-width: none;
}

.settings-directory-header h1,
.settings-directory-group h2,
.settings-directory-card strong,
.settings-directory-card small {
  margin: 0;
}

.settings-directory-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 28px;
}

.settings-profile-callout {
  width: min(100%, 370px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 14px 16px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--primary-soft);
  color: var(--ink-secondary);
  font-size: 14px;
}
.settings-profile-callout a { color: var(--primary); font-weight: 800; white-space: nowrap; }

.settings-directory-group {
  display: grid;
  gap: 12px;
}

.settings-directory-group > header {
  display: grid;
  gap: 4px;
}

.settings-directory-group > header p {
  margin: 0;
  color: var(--ink-secondary);
}

.settings-directory-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.settings-directory-card {
  min-width: 0;
  min-height: 108px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 16px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  color: var(--ink-primary);
  background: var(--surface-raised);
  text-decoration: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.settings-directory-card:hover {
  border-color: var(--primary);
  box-shadow: 0 8px 18px rgb(15 23 42 / 8%);
  transform: translateY(-1px);
}

.settings-directory-card > span:nth-child(2) {
  display: grid;
  gap: 5px;
}

.settings-directory-card strong {
  color: var(--ink-primary);
}

.settings-directory-card small {
  color: var(--ink-secondary);
  line-height: 1.4;
}

.settings-directory-icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  color: var(--primary);
  background: var(--primary-soft);
  font-weight: 850;
}

.settings-directory-arrow {
  color: var(--primary);
  font-weight: 850;
}

.settings-directory-card-muted {
  color: var(--ink-secondary);
  background: var(--surface-muted);
}

/* Settings workspace contract */
.settings-detail-shell {
  grid-template-columns: minmax(190px, 220px) minmax(0, 1fr);
  column-gap: 24px;
  align-items: start;
}

.settings-detail-shell > .settings-back-link,
.settings-detail-shell > .settings-detail-header {
  grid-column: 1 / -1;
}

.settings-detail-shell > .settings-back-link { grid-row: 1; }
.settings-detail-shell > .settings-detail-header { grid-row: 2; }

.settings-detail-shell > .settings-section-map {
  grid-column: 1;
  grid-row: 3 / span 20;
}

.settings-detail-shell > :not(.settings-back-link):not(.settings-detail-header):not(.settings-section-map):not(.settings-section-menu) {
  grid-column: 2;
}

.settings-section-map {
  display: grid;
  gap: 18px;
  align-content: start;
  padding: 18px;
}

.settings-section-map h2,
.settings-section-map h3 { margin: 0; }
.settings-section-map h2 { font-size: 18px; }
.settings-section-map section { display: grid; gap: 4px; }
.settings-section-map h3 {
  margin-bottom: 3px;
  color: var(--ink-secondary);
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
}

.settings-section-map a {
  width: 100%;
  min-height: 40px;
  padding: 9px 10px;
}

.settings-section-menu { display: none; }

.settings-directory-group {
  grid-template-columns: minmax(210px, 250px) minmax(0, 1fr);
  gap: 22px;
  overflow: hidden;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.settings-directory-group > header { padding: 22px; background: #f8fafb; }

.settings-directory-list {
  overflow: hidden;
  border-left: 1px solid var(--border-subtle);
  background: var(--surface-raised);
}

.settings-detail-shell .branding-form > .onboarding-section { grid-template-columns: minmax(0, 1fr); }
.company-profile-actions { display:flex; justify-content:flex-end; align-items:center; flex-wrap:wrap; gap:12px; padding:8px 0; }
.company-profile-actions > button { min-height:44px; }
.company-profile-logo { position:relative; }
.company-profile-logo input[type="file"].visually-hidden { top:0; left:0; width:1px; min-width:0; height:1px; min-height:0; padding:0; }
@media(max-width:600px) { .company-profile-actions > button { flex:1 1 auto; } }

.settings-directory-card {
  min-height: 82px;
  grid-template-columns: 38px minmax(0, 1fr) minmax(190px, .65fr) 22px;
  padding: 14px 16px;
  border: 0;
  border-bottom: 1px solid var(--border-subtle);
  border-radius: 0;
  transition: background 160ms ease;
}

.settings-directory-card:last-child { border-bottom: 0; }
.settings-directory-card:hover {
  border-color: var(--border-subtle);
  background: #f6fafb;
  box-shadow: none;
  transform: none;
}

.settings-directory-summary {
  color: var(--ink-secondary);
  font-size: 13px;
  line-height: 1.4;
}

.required-mark { color: #a53b32; }
.file-picker {
  min-height: 46px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  overflow: hidden;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--white);
  cursor: pointer;
}
.file-picker-button {
  align-self: stretch;
  display: inline-flex;
  align-items: center;
  padding: 0 14px;
  border-right: 1px solid var(--border-subtle);
  color: var(--primary);
  background: var(--primary-soft);
  font-weight: 800;
}
.file-picker-name {
  min-width: 0;
  overflow: hidden;
  padding: 0 12px;
  color: var(--ink-secondary);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.brand-preview-contexts {
  display: grid;
  gap: 8px;
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}
.brand-preview-contexts li {
  padding: 9px 11px;
  border: 1px solid var(--border-subtle);
  border-radius: 6px;
  background: var(--surface-base);
  font-size: 13px;
  font-weight: 750;
}

.workflow-record-card {
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.workflow-record-main {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.workflow-record-main h3,
.workflow-record-main p {
  margin: 0;
}

.record-chip-row,
.workflow-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.workflow-review-panel,
.workflow-action-panel {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.workflow-review-panel ul {
  margin: 0;
  padding-left: 20px;
  color: var(--ink-secondary);
}

.workflow-action-stack {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.handover-package-card .workflow-action-stack {
  grid-template-columns: 1fr;
}

.success-banner {
  width: min(100%, 1180px);
  margin: 0 auto;
  padding: 12px 14px;
  border: 1px solid var(--success);
  border-radius: 8px;
  color: #14532d;
  background: var(--success-soft);
  font-weight: 750;
}

.primary-action,
.secondary-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 14px;
  border-radius: 8px;
  font: inherit;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}

.primary-action {
  border: 1px solid var(--primary);
  color: var(--white);
  background: var(--primary);
}

.primary-action:hover {
  background: var(--primary-hover);
}

.secondary-action {
  border: 1px solid var(--border-subtle);
  color: var(--primary);
  background: var(--surface-raised);
}

.workspace-summary-grid {
  width: min(100%, 1180px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.workspace-stat {
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.workspace-stat span {
  display: block;
  color: var(--ink-muted);
  font-size: 13px;
  font-weight: 750;
}

.workspace-stat strong {
  display: block;
  margin-top: 4px;
  color: var(--ink-primary);
  font-size: 24px;
  line-height: 1.1;
}

.workspace-nav {
  width: min(100%, 1180px);
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.workspace-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 10px;
  border-radius: 8px;
  color: var(--ink-secondary);
  font-weight: 750;
  text-decoration: none;
}

.workspace-nav a:hover {
  color: var(--primary);
  background: var(--primary-soft);
}

.workflow-disclosure {
  grid-column: 1 / -1;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
}

.workflow-disclosure summary {
  min-height: 46px;
  padding: 12px 14px;
  color: var(--ink-primary);
  font-weight: 850;
  cursor: pointer;
}

.workflow-disclosure-body {
  display: grid;
  gap: 12px;
  padding: 0 14px 14px;
}

.workflow-composition {
  margin-top: 14px;
}

.workflow-packs-page .user-row {
  grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
  align-items: start;
}

.field-access-company-switcher {
  display: grid;
  gap: 12px;
  margin-bottom: 20px;
}

.field-access-company-switcher h2,
.field-access-company-switcher p {
  margin: 0;
}

.field-access-company-switcher h2 {
  font-size: 1rem;
}

.field-access-company-switcher button {
  width: 100%;
}

.workflow-packs-page .workflow-composition {
  grid-column: 1 / -1;
  min-width: 0;
}

.workflow-packs-page input:not([type="hidden"]):not([type="checkbox"]),
.workflow-packs-page select,
.workflow-packs-page .button-secondary {
  box-sizing: border-box;
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid var(--border-subtle);
  border-radius: 7px;
  background: var(--surface-raised);
  color: var(--ink-primary);
  font: inherit;
}

.workflow-packs-page .button-secondary {
  color: var(--primary);
  font-weight: 750;
  cursor: pointer;
}

.workflow-packs-page .button-secondary:hover {
  border-color: var(--primary);
}

.workflow-packs-page input:focus-visible,
.workflow-packs-page select:focus-visible,
.workflow-packs-page button:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}

@media (max-width: 760px) {
  .workflow-packs-page .user-row,
  .workflow-packs-page .workflow-composition-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.workflow-composition-form {
  padding: 0 14px 14px;
}

.workflow-composition-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 14px;
}

.workflow-composition-grid > div {
  display: grid;
  align-content: start;
  gap: 9px;
  min-width: 0;
}

.workflow-composition-grid h3 {
  margin: 0;
  font-size: 1rem;
}

.workflow-composition-grid p,
.workflow-composition-grid .form-help {
  margin: 0;
  color: var(--ink-secondary);
}

.workflow-checkbox-grid {
  display: grid;
  gap: 8px;
}

.workflow-checkbox-grid label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 32px;
  color: var(--ink-primary);
  font-weight: 700;
}

.workflow-pack-preview-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 12px;
}

.job-pack-guidance-panel {
  display: grid;
  gap: 16px;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: var(--surface);
}

.workflow-pack-guidance-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 12px;
}

.record-actions {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 8px;
}

.record-actions .workflow-disclosure {
  grid-column: auto;
}

.settings-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.42fr);
  gap: 18px;
  align-items: start;
}

.branding-form {
  display: grid;
  gap: 14px;
}

:is(.subscription-page, .company-export-page) .attention-item {
  flex-wrap: wrap;
}

:is(.subscription-page, .company-export-page) .attention-item > div {
  flex: 1 1 200px;
  min-width: 0;
}

:is(.subscription-page, .company-export-page) .attention-item > .status-badge {
  flex: 0 0 auto;
  max-width: 100%;
}

.field-group.full-row {
  grid-column: 1 / -1;
}

.field-group small {
  color: var(--ink-secondary);
}

.field-group input[type="color"] {
  min-height: 46px;
  width: 100%;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  padding: 4px;
  background: var(--white);
}

.field-group input[type="file"] {
  min-height: 46px;
  width: 100%;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  padding: 9px 12px;
  background: var(--white);
  font: inherit;
}

.brand-preview-panel {
  position: sticky;
  top: 24px;
}

.document-preview {
  overflow: hidden;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
  box-shadow: 0 18px 42px rgba(16, 42, 53, 0.1);
}

.document-preview-header {
  display: flex;
  gap: 14px;
  align-items: center;
  padding: 20px;
  color: var(--company-brand-contrast);
  background: var(--company-brand-color);
}

.document-preview-header .eyebrow,
.document-preview-header p {
  color: inherit;
}

.document-preview-header p {
  margin-bottom: 0;
}

.document-logo-slot {
  display: grid;
  place-items: center;
  flex: 0 0 68px;
  width: 68px;
  height: 68px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--ink-primary);
  font-size: 22px;
  font-weight: 900;
}

.document-logo-slot img {
  max-width: 56px;
  max-height: 56px;
  object-fit: contain;
}

.document-preview-body {
  padding: 20px;
}

.document-preview-body p {
  color: var(--ink-secondary);
}

.public-document-page {
  min-height: 100vh;
  padding: 28px 18px 40px;
  background: #eef4f7;
}

.public-document-shell {
  width: min(100%, 920px);
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-raised);
  box-shadow: 0 18px 42px rgba(16, 42, 53, 0.1);
}

.public-document-header {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  padding: 24px;
  color: var(--company-brand-contrast);
  background: var(--company-brand-color);
}

.public-document-header h1,
.public-document-header p,
.public-document-header .eyebrow {
  color: inherit;
}

.public-document-header h1,
.public-document-header p {
  margin: 0;
}

.public-document-brand {
  display: flex;
  gap: 14px;
  align-items: center;
  min-width: 0;
}

.public-document-meta {
  display: grid;
  gap: 4px;
  text-align: right;
  font-weight: 800;
}

.public-document-section,
.public-document-form,
.public-document-actions {
  display: grid;
  gap: 10px;
  padding: 22px 24px;
  border-top: 1px solid var(--border-subtle);
}

.public-document-section h2,
.public-document-section h3,
.public-document-section p {
  margin: 0;
}

.public-document-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.public-document-summary-grid article {
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.public-document-section p,
.public-document-section li {
  color: var(--ink-secondary);
}

.public-work-item,
.public-contact-panel,
.public-decision-intro {
  display: grid;
  gap: 6px;
}

.public-work-item {
  padding: 12px 0;
  border-top: 1px solid var(--border-subtle);
}

.public-work-item:first-of-type {
  border-top: 0;
}

.public-contact-panel {
  padding: 14px;
  border: 1px solid var(--border-subtle);
  border-radius: 8px;
  background: var(--surface-base);
}

.public-document-actions {
  grid-template-columns: repeat(auto-fit, minmax(180px, max-content));
  align-items: center;
}

.public-document-form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.public-document-status {
  margin: 0;
  padding: 14px 24px;
  border-top: 1px solid #b7ebc9;
  color: #0b5f35;
  background: var(--success-soft);
  font-weight: 800;
}

.logo-meta {
  margin: 0;
  padding: 12px 20px 18px;
  color: var(--ink-secondary);
  font-size: 13px;
}

@media (max-width: 900px) {
  .office-shell {
    display: block;
  }

  .office-sidebar {
    display: none;
  }

  .office-mobile-header {
    position: sticky;
    top: 0;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    border-bottom: 1px solid var(--border-subtle);
    background: var(--surface-raised);
  }

  .office-mobile-menu {
    position: relative;
  }

  .office-mobile-menu summary {
    min-height: 44px;
    padding: 10px 14px;
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    color: var(--primary);
    background: var(--surface-raised);
    font-weight: 700;
    cursor: pointer;
  }

  .office-mobile-menu-panel {
    position: absolute;
    right: 0;
    width: min(86vw, 340px);
    max-height: calc(100vh - 76px);
    overflow-y: auto;
    margin-top: 8px;
    padding: 8px;
    border: 1px solid var(--border-subtle);
    border-radius: 12px;
    background: var(--surface-raised);
    box-shadow: 0 12px 32px rgba(16, 42, 53, 0.14);
  }

  .office-mobile-menu-panel .office-nav {
    width: auto;
    margin-top: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  .office-mobile-menu-panel .office-nav-utilities {
    margin-top: 8px;
  }

  .office-mobile-menu-panel .office-trial-status {
    margin-top: 8px;
  }

  .office-mobile-menu-panel .office-notification-row {
    margin-top: 8px;
    border-top: 1px solid var(--border-subtle);
  }

  .office-mobile-menu-panel .office-user-menu {
    border-top: 1px solid var(--border-subtle);
  }

  .office-main {
    padding: 20px 16px 28px;
  }

  .office-topbar,
  .section-heading,
  .attention-item,
  .header-actions,
  .user-row {
    display: grid;
  }

  .office-profile {
    text-align: left;
  }

  .office-profile > .office-user-menu summary {
    text-align: left;
  }

  .office-actions,
  .overview-grid,
  .overview-task-grid,
  .settings-grid,
  .workflow-grid,
  .settings-layout,
  .settings-section-map,
  .onboarding-section,
  .onboarding-fields.two-columns,
  .choice-grid,
  .demo-list,
  .inline-contact-form,
  .inline-site-form,
  .inline-project-form,
  .customer-search-form,
  .job-draft-form,
  .job-draft-row,
  .job-search-form,
  .job-detail-hero,
  .job-detail-summary,
  .record-summary-hero,
  .record-summary-facts,
  .job-planning-form,
  .job-status-form,
  .field-lead-form,
  .field-readiness-row,
  .field-readiness-form,
  .job-checklist-apply-form,
  .job-checklist-step,
  .job-checklist-step-form,
  .job-attachment-form,
  .job-attachment-row,
  .workflow-action-stack,
  .detail-grid {
    grid-template-columns: 1fr;
  }

  .job-attachment-row {
    display: grid;
  }

  .record-summary-actions {
    justify-content: flex-start;
  }

  .search-term-field {
    grid-column: auto;
  }

  .onboarding-page {
    padding: 20px 16px 28px;
  }

  .settings-page {
    padding: 20px 16px 28px;
  }

  .settings-hero,
  .workflow-hero {
    display: grid;
  }

  .workspace-summary-grid {
    grid-template-columns: 1fr;
  }

  .settings-section-map {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding: 6px;
  }

  .settings-section-map a {
    flex: 0 0 auto;
  }

  .settings-directory-grid {
    grid-template-columns: 1fr;
  }

  .settings-directory-card {
    min-height: 84px;
  }

  .public-document-page {
    padding: 16px 10px 28px;
  }

  .public-document-header,
  .public-document-brand,
  .public-document-summary-grid,
  .public-document-form,
  .public-offer-trust,
  .offer-command-strip,
  .job-command-strip,
  .invoice-command-strip,
  .handover-command-strip {
    display: grid;
  }

  .offer-command-actions,
  .public-trust-points {
    justify-content: flex-start;
  }

  .public-document-summary-grid {
    grid-template-columns: 1fr;
  }

  .public-document-meta {
    text-align: left;
  }

  .public-document-section,
  .public-document-form,
  .public-document-actions {
    padding: 18px 16px;
  }

  .onboarding-header {
    display: grid;
  }

  .brand-preview-panel {
    position: static;
  }

  .remove-demo-form {
    grid-column: auto;
  }

  .settings-detail-shell { grid-template-columns: minmax(0, 1fr); }
  .settings-detail-shell > * { grid-column: 1 !important; grid-row: auto !important; }
  .settings-detail-shell > .settings-back-link { grid-row: 1 !important; }
  .settings-detail-shell > .settings-detail-header { grid-row: 2 !important; }
  .settings-detail-shell > .settings-section-menu { grid-row: 3 !important; }
  .settings-section-map { display: none; }
  .settings-section-menu {
    display: block;
    border: 1px solid var(--border-subtle);
    border-radius: 8px;
    background: var(--surface-raised);
  }
  .settings-section-menu summary {
    min-height: 46px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    color: var(--ink-primary);
    font-weight: 800;
    cursor: pointer;
  }
  .settings-section-menu nav {
    display: grid;
    gap: 3px;
    padding: 0 8px 8px;
    border-top: 1px solid var(--border-subtle);
  }
  .settings-section-menu a {
    min-height: 40px;
    display: flex;
    align-items: center;
    padding: 8px 10px;
    border-radius: 6px;
    color: var(--ink-secondary);
    font-weight: 750;
    text-decoration: none;
  }
  .settings-section-menu a.active { color: var(--primary); background: var(--primary-soft); }
  .settings-directory-group { grid-template-columns: 1fr; gap: 12px; }
  .settings-directory-header { display: grid; }
  .settings-profile-callout { width: 100%; }
  .settings-directory-group > header { padding: 16px; }
  .settings-directory-list { border-left: 0; border-top: 1px solid var(--border-subtle); }
  .settings-directory-card { grid-template-columns: 38px minmax(0, 1fr) 22px; }
  .settings-directory-summary { display: none; }
}

@media (max-width: 620px) {
  .settings-page { padding: 16px 0; }
  .settings-directory-card { min-height: 76px; padding: 12px; }
  .settings-layout { gap: 14px; }
  .brand-preview-panel { position: static; }
  .file-picker { grid-template-columns: 1fr; text-align: center; }
  .file-picker-button { justify-content: center; min-height: 42px; border-right: 0; border-bottom: 1px solid var(--border-subtle); }
  .file-picker-name { padding: 10px 12px; }
}
/* Offer workspace */
.offer-workspace-shell,.offer-detail-shell,.offer-editor-shell{max-width:none;width:100%}.offer-page-header{align-items:center}.offer-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.offer-kpi{display:grid;gap:5px;padding:18px 20px;border:1px solid #cbd9df;border-radius:7px;background:#fff;color:#18252c;text-decoration:none;transition:border-color .15s,box-shadow .15s}.offer-kpi:hover,.offer-kpi.active{border-color:#16738b;box-shadow:0 7px 18px rgba(25,67,79,.08)}.offer-kpi span{font-size:.83rem;font-weight:750;color:#52656e}.offer-kpi strong{font-size:1.75rem}.offer-kpi small{color:#60717a}.offer-status-tabs{overflow-x:auto}.offer-status-tabs a{white-space:nowrap}.offer-directory{overflow:hidden}.offer-table{display:grid;grid-template-columns:minmax(250px,1.7fr) minmax(170px,1.05fr) minmax(150px,.9fr) minmax(130px,.7fr) minmax(190px,1.1fr) 24px;column-gap:20px;align-items:center}.offer-table-heading{padding:12px 20px;border-top:1px solid #d6e1e5;border-bottom:1px solid #d6e1e5;background:#f5f8f9;color:#60717a;font-size:.72rem;font-weight:800;text-transform:uppercase}.offer-table-row{padding:18px 20px;border-bottom:1px solid #dce5e8;color:#17242b;text-decoration:none}.offer-table-row:hover{background:#f7fafb}.offer-table-row>span{min-width:0;display:grid;gap:4px}.offer-table-row strong,.offer-table-row small{overflow:hidden;text-overflow:ellipsis}.offer-table-row small{color:#62737c;font-size:.78rem}.offer-status{display:inline-flex;width:max-content;max-width:100%;padding:4px 9px;border-radius:999px;background:#edf3f5;color:#39515b;font-size:.75rem;font-weight:800}.offer-status-awaitingresponse{background:#e6f3f7;color:#075f76}.offer-status-accepted{background:#e6f6ed;color:#08733b}.offer-status-declined,.offer-status-expired,.offer-status-cancelled{background:#f4ecec;color:#8b3232}.offer-main-cell strong{font-size:.98rem}.offer-editor-form{display:grid;gap:18px}.offer-editor-header{padding:8px 0 2px}.offer-editor-card{border:1px solid #cbdbe1;border-radius:7px;background:#fff;overflow:hidden}.offer-editor-card>header{display:flex;gap:14px;align-items:flex-start;padding:19px 22px;border-bottom:1px solid #dbe5e8}.offer-editor-card h2,.offer-editor-card p{margin:0}.offer-editor-card header p{margin-top:4px;color:#5c6e77}.offer-step{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:#dff1f5;color:#075f76;font-weight:850}.offer-editor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:20px 22px;align-items:start}.offer-editor-grid>.field-group{align-self:start}.offer-editor-grid .full-row{grid-column:1/-1}.offer-editor-grid input,.offer-editor-grid select,.offer-editor-grid textarea,.offer-command-card input,.offer-command-card select,.offer-command-card textarea,.offer-terms-card input,.offer-template-card input,.offer-template-card select{width:100%}.offer-recipient-panel{display:none}.offer-recipient-workflow.recipient-mode-ExistingCustomer [data-offer-recipient-panel="ExistingCustomer"],.offer-recipient-workflow.recipient-mode-LightweightRecipient [data-offer-recipient-panel="LightweightRecipient"]{display:block}.offer-recipient-mode-grid{padding-bottom:0}.offer-recipient-details-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.offer-recipient-panel.offer-optional-panel{margin-top:20px;padding-bottom:1px}.offer-recipient-panel.offer-optional-panel>h3{margin:14px 15px 0;color:#075f76;font-size:1rem}.offer-optional-panel{margin:0 22px 20px;border:1px solid #d7e2e6;border-radius:6px;background:#f9fbfb}.offer-optional-panel>summary{padding:13px 15px;color:#075f76;font-weight:800;cursor:pointer}.offer-section-editor{margin:20px 22px;border:1px solid #d6e2e6;border-radius:6px;padding:0}.offer-section-editor legend{margin-left:14px;padding:0 8px;font-weight:850}.offer-section-editor .offer-editor-grid{padding-top:12px}.offer-material-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:12px;padding:0 15px 15px;align-items:start}.offer-material-grid>.field-group{align-self:start}.offer-check-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:13px 15px;border:1px solid #d5e1e5;border-radius:6px}.offer-check-row span{display:grid;gap:3px}.offer-check-row small{color:#60717a}.offer-check-row input{width:20px;height:20px;accent-color:#0e7188}.offer-editor-actions{position:sticky;bottom:0;z-index:3;display:flex;justify-content:flex-end;gap:10px;padding:14px 0;background:rgba(244,248,249,.95);backdrop-filter:blur(8px)}.offer-detail-header{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:24px;border:1px solid #cbdbe1;border-left:4px solid #18819a;border-radius:7px;background:#fff;box-shadow:0 12px 30px rgba(30,64,76,.07)}.offer-detail-header h1,.offer-detail-header p{margin:0}.offer-title-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.offer-action-menu{position:relative}.offer-action-menu>summary{display:grid;place-items:center;width:44px;height:44px;border:1px solid #cbd9df;border-radius:7px;background:#fff;cursor:pointer;list-style:none;font-weight:900}.offer-action-menu>div{position:absolute;right:0;top:50px;z-index:8;width:290px;padding:12px;border:1px solid #c7d7dc;border-radius:7px;background:#fff;box-shadow:0 14px 35px rgba(20,47,57,.18)}.offer-action-menu form{display:grid;gap:8px;margin:0 0 8px}.offer-action-menu input,.offer-action-menu textarea{width:100%}.offer-action-menu button{width:100%;text-align:left;padding:10px;border:0;background:transparent;color:#18313a;font-weight:750;cursor:pointer}.offer-action-menu button:hover{background:#eef5f7}.offer-overview-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.offer-next-panel{padding:20px}.offer-next-panel strong{font-size:1.05rem}.offer-command-card{display:grid;grid-template-columns:minmax(260px,1fr) minmax(360px,1.35fr);gap:24px;align-items:start;padding:22px;border:1px solid #cbdbe1;border-radius:7px;background:#fff}.offer-command-card h2,.offer-command-card p{margin:0}.offer-command-card>div>p{margin-top:6px;color:#5b6d76}.offer-command-card form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.offer-command-card label,.offer-template-card label,.offer-terms-card label{display:grid;gap:6px;font-weight:750}.offer-command-card button{align-self:end}.offer-content-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.75fr);gap:18px;align-items:start}.offer-content-layout>div{display:grid;gap:14px}.offer-content-section,.offer-terms-card,.offer-history-card,.offer-template-card{border:1px solid #cbdbe1;border-radius:7px;background:#fff;overflow:hidden}.offer-content-section>header,.offer-history-card>header,.offer-template-card>header{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:17px 19px;border-bottom:1px solid #dbe4e7}.offer-content-section h2,.offer-content-section p,.offer-history-card h2,.offer-template-card h2,.offer-template-card p{margin:0}.offer-content-section>p,.offer-content-section>dl,.offer-content-section>table{margin:16px 19px}.offer-content-section dl,.offer-terms-card dl,.public-offer-terms dl,.public-offer-price-row{display:grid;gap:10px}.offer-content-section dl>div,.offer-terms-card dl>div,.public-offer-terms dl>div,.public-offer-price-row>div{display:flex;justify-content:space-between;gap:16px}.offer-content-section dt,.offer-terms-card dt,.public-offer-terms dt,.public-offer-price-row dt{color:#60717a;font-weight:700}.offer-terms-card{padding:20px;position:sticky;top:16px}.offer-terms-card form{display:grid;gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid #dce5e8}.offer-delivery-layout{display:grid;gap:16px}.offer-delivery-actions{display:grid;gap:10px}.offer-history-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:center;padding:15px 19px;border-top:1px solid #e0e7ea}.offer-history-row:first-of-type{border-top:0}.offer-history-row>div{display:grid;gap:3px}.offer-history-row small{color:#61737c}.offer-history-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:6px;background:#e8f3f6;color:#05667d;font-weight:850}.offer-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.offer-template-card>p{padding:0 18px}.offer-template-card form{display:grid;gap:12px;padding:18px;border-top:1px solid #dce5e8}.public-work-item{padding:20px;border:1px solid #d6e1e5;border-radius:6px}.public-work-item+ .public-work-item{margin-top:12px}.public-work-item>header{display:flex;justify-content:space-between;gap:16px}.public-work-item header p{margin:4px 0 0}.public-offer-scope{padding:14px 16px;border-left:3px solid var(--company-brand-color);background:#f4f8f9}.public-material-summary{margin-top:14px}.public-material-summary p{margin:4px 0}.public-material-table{width:100%;margin-top:14px;border-collapse:collapse}.public-material-table th,.public-material-table td{padding:9px;border-bottom:1px solid #dce5e8;text-align:left}.public-offer-terms dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.public-offer-terms dl>div{display:grid;padding:14px;border:1px solid #d7e2e6;border-radius:6px}.public-decision-actions{display:flex;gap:10px;grid-column:1/-1}.danger-link{color:#9b2c2c!important}
@media(max-width:1280px){.offer-kpi-grid{grid-template-columns:repeat(2,1fr)}.offer-table{grid-template-columns:minmax(220px,1.5fr) minmax(150px,1fr) minmax(130px,.8fr) minmax(160px,1fr) 22px}.offer-table>:nth-child(4){display:none}.offer-table-heading>:nth-child(4){display:none}.offer-content-layout{grid-template-columns:1fr}.offer-terms-card{position:static}.offer-command-card{grid-template-columns:1fr}.offer-overview-grid{grid-template-columns:1fr}}
@media(max-width:720px){.offer-kpi-grid,.offer-template-grid{grid-template-columns:1fr 1fr}.offer-table-heading{display:none}.offer-table-row{grid-template-columns:1fr auto;gap:10px}.offer-table-row>span{display:grid!important}.offer-table-row>:not(.offer-main-cell):not(.customer-row-arrow){grid-column:1}.offer-table-row .customer-row-arrow{grid-column:2;grid-row:1/-1}.offer-editor-grid{grid-template-columns:1fr;padding:16px}.offer-editor-card>header{padding:16px}.offer-optional-panel,.offer-section-editor{margin:14px}.offer-material-grid{grid-template-columns:1fr 1fr}.offer-detail-header{align-items:flex-start}.offer-detail-header,.offer-detail-header .header-actions{flex-direction:column}.offer-detail-header .header-actions{width:100%;align-items:stretch}.offer-command-card form{grid-template-columns:1fr}.public-offer-terms dl{grid-template-columns:1fr}.public-decision-actions{flex-direction:column}.public-work-item>header{flex-direction:column}.offer-kpi{padding:14px}.offer-kpi strong{font-size:1.45rem}}
@media(max-width:430px){.offer-kpi-grid{grid-template-columns:1fr}.offer-material-grid{grid-template-columns:1fr}.offer-editor-actions{display:grid;grid-template-columns:1fr 1fr}.offer-editor-actions>*{text-align:center}}

/* Offer release contract correction */
.offer-template-start{display:grid;grid-template-columns:minmax(240px,1fr) minmax(260px,360px);gap:18px;align-items:center;margin:20px 22px 0;padding:16px;border:1px solid #cbdbe1;border-radius:7px;background:#f5f9fa}.offer-template-start>div{display:grid;gap:4px}.offer-template-start small{color:#60717a}.offer-template-start .offer-template-select select{min-height:46px;width:100%;justify-self:end;border:1px solid var(--border-subtle);border-radius:8px;padding:10px 12px;color:var(--ink-primary);background:var(--white);font:inherit}.offer-add-section-row{display:flex;justify-content:flex-start;padding:0 22px 22px}.offer-section-editor legend{display:flex;align-items:center;justify-content:space-between;gap:16px;width:calc(100% - 28px)}.offer-remove-section{border:0;background:transparent;color:#9b2c2c;font:inherit;font-size:.82rem;font-weight:800;cursor:pointer}.offer-rot-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px;border:1px solid #cbdbe1;border-radius:7px;background:#f7fafb}.offer-rot-note{grid-column:1/-1;margin:0;color:#53666f}.offer-rot-summary{display:grid;gap:7px;margin-top:18px;padding:15px;border:1px solid #cfe0e5;border-radius:7px;background:#f3f9fa}.offer-menu-link{display:block;padding:10px;color:#18313a;text-decoration:none;font-weight:750}.offer-menu-link:hover{background:#eef5f7}.offer-guidance{margin-top:14px;padding:12px;border-left:3px solid #16809a;background:#eff7f9}.offer-created-jobs{margin-top:16px;border:1px solid #cbdbe1;border-radius:7px;background:#fff;overflow:hidden}.offer-created-jobs header{padding:18px 20px;border-bottom:1px solid #dbe4e7}.offer-created-jobs h2,.offer-created-jobs p{margin:0}.offer-created-jobs p{margin-top:4px;color:#60717a}.offer-created-jobs>a{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-top:1px solid #e1e8eb;color:#17313b;text-decoration:none}.offer-created-jobs>a:first-of-type{border-top:0}.offer-created-jobs>a>span:first-child{display:grid;gap:3px}.offer-created-jobs small{color:#60717a}.offer-version-identity{display:flex;gap:20px;margin:16px 0 0}.offer-version-identity>div{display:grid;gap:2px}.offer-version-identity dt{font-size:.75rem;color:#60717a}.offer-version-identity dd{margin:0;font-weight:800}.offer-copy-feedback{padding:8px 10px;border-radius:6px;background:#e7f6ed;color:#08733b;font-weight:750}.offer-template-preview{display:grid;gap:5px;padding:14px;border:1px solid #d6e2e6;border-radius:7px;background:#f6f9fa}.offer-template-preview p{margin:0 0 8px;color:#566a73}.public-offer-rot dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.public-offer-rot dl>div{display:grid;gap:4px;padding:13px;border:1px solid #d6e2e6;border-radius:6px}.public-offer-rot dt{color:#60717a;font-size:.8rem;font-weight:750}.public-offer-rot dd{margin:0;font-weight:850}.public-decision-confirmation{display:flex;gap:16px;align-items:flex-start;padding:22px;border:1px solid #a9d9bc;border-radius:7px;background:#edf9f2}.public-decision-confirmation h2,.public-decision-confirmation p{margin:0}.public-decision-confirmation p{margin-top:6px}.field-error.full-row{grid-column:1/-1}
@media(max-width:720px){.offer-template-start,.offer-rot-fields{grid-template-columns:1fr}.offer-template-start{margin:14px}.offer-add-section-row{padding:0 14px 16px}.public-offer-rot dl{grid-template-columns:1fr 1fr}.offer-section-editor legend{width:calc(100% - 18px)}}
@media(max-width:430px){.public-offer-rot dl{grid-template-columns:1fr}.public-decision-confirmation{flex-direction:column}}
.offer-template-summary{display:flex;flex-wrap:wrap;gap:7px;padding:16px 18px;border-top:1px solid #e0e7ea}.offer-template-summary span{width:100%;color:#60717a;font-size:.78rem;font-weight:750}.offer-template-summary strong,.offer-template-summary small{padding:5px 8px;border-radius:999px;background:#edf5f7;color:#174d5b;font-size:.78rem}.offer-template-card>footer{display:flex;gap:9px;padding:16px 18px;border-top:1px solid #dce5e8}.offer-template-delete{padding:0 22px 22px}.offer-template-delete button{border:0;background:transparent;font:inherit;font-weight:800;cursor:pointer}
.offer-section-editor:not([data-pricing-method="TimeAndMaterials"]) [data-price-field="time"],.offer-section-editor[data-pricing-method="TimeAndMaterials"] [data-price-field="amount"]{display:none}
.offer-conversion-sites{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:14px;border:1px solid #d4e0e4;border-radius:7px}.offer-conversion-sites legend{padding:0 6px;font-weight:800}.offer-command-card .full-row{grid-column:1/-1}.offer-copy-feedback.error{background:#f8eaea;color:#8a2e2e}
@media(max-width:720px){.offer-conversion-sites{grid-template-columns:1fr}}
.offer-editor-grid>.field-group>label,.offer-material-grid>.field-group>label{display:flex;align-items:flex-end;min-height:2.7rem}
.offer-editor-form [hidden]{display:none!important}
@media(max-width:720px){.offer-editor-grid>.field-group>label,.offer-material-grid>.field-group>label{min-height:0}}
.offer-overview-grid>.customer-info-card{overflow:hidden;border:1px solid #cbdbe1;border-radius:7px;background:#fff}
.offer-overview-grid>.customer-info-card>header{padding:17px 20px;border-bottom:1px solid #dbe5e8}
.offer-overview-grid>.customer-info-card h2,.offer-overview-grid>.customer-info-card p{margin:0}
.offer-overview-grid>.customer-info-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0}
.offer-overview-grid>.customer-info-card dl>div{display:grid;gap:4px;padding:15px 20px;border-bottom:1px solid #e1e8eb}
.offer-overview-grid>.customer-info-card dl>div:nth-last-child(-n+2){border-bottom:0}
.offer-overview-grid>.customer-info-card dt{color:#60717a;font-size:.8rem;font-weight:750}
.offer-overview-grid>.customer-info-card dd{margin:0;color:#17262d;font-weight:800}
.offer-command-card input,.offer-command-card select,.offer-command-card textarea,.offer-template-card input,.offer-template-card select{min-height:46px;padding:10px 12px;border:1px solid #c7d6dc;border-radius:7px;background:#fff;color:#15252c;font:inherit}
@media(max-width:720px){.offer-overview-grid>.customer-info-card dl{grid-template-columns:1fr}.offer-overview-grid>.customer-info-card dl>div{border-bottom:1px solid #e1e8eb}.offer-overview-grid>.customer-info-card dl>div:last-child{border-bottom:0}}
.offer-history-card>.empty-copy{margin:0;padding:18px 20px;color:#60717a}
.offer-pricing-help{margin:0;padding:.75rem 1rem;border-left:3px solid #16829b;background:#edf7f9;color:#3c5660;font-size:.9rem;line-height:1.45}.job-offer-created-notice{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.15rem;border:1px solid #9ed6bd;background:#eef9f3;border-radius:6px}.job-offer-created-notice strong{display:block;color:#174f3a}.job-offer-created-notice p{margin:.2rem 0 0;color:#3c5f50}@media(max-width:700px){.job-offer-created-notice{align-items:stretch;flex-direction:column}.job-offer-created-notice .secondary-action{justify-content:center;width:100%}}
.offer-conversion-stage{display:grid;gap:14px;padding:18px;border:1px solid #c9dce3;border-radius:6px;background:#fff}.offer-conversion-stage>header{display:flex;align-items:center;gap:12px}.offer-conversion-stage>header>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#dff1f5;color:#075f75;font-weight:800}.offer-conversion-stage>header strong,.offer-conversion-stage>header small{display:block}.offer-conversion-stage>header small{margin-top:2px;color:#5d7079}.offer-conversion-stage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.offer-conversion-stage label{display:grid;gap:6px}.offer-conversion-review{grid-template-columns:minmax(0,1fr) auto;align-items:center}.offer-conversion-review>header{min-width:0}.offer-conversion-review>.primary-action{min-width:190px}@media(max-width:760px){.offer-conversion-stage-grid,.offer-conversion-review{grid-template-columns:1fr}.offer-conversion-review>.primary-action{width:100%}}
.offer-save-state{margin-right:auto;color:#52707a;font-size:.88rem;font-weight:700}.offer-save-state::before{content:"";display:inline-block;width:8px;height:8px;margin-right:7px;border-radius:50%;background:#2d9b70}.offer-save-state.unsaved{color:#825b18}.offer-save-state.unsaved::before{background:#d99a24}@media(max-width:620px){.offer-save-state{width:100%;text-align:center}}
.offer-material-lines{display:grid;gap:10px}.offer-material-grid{position:relative;padding-right:54px!important}.offer-remove-material{position:absolute;right:12px;bottom:25px;width:34px;height:34px;border:1px solid #e3c2c2;border-radius:5px;background:#fff;color:#9a3030;font-size:1.25rem;line-height:1}.offer-add-material{margin:0 15px 15px;border:0;background:transparent;color:#08677d;font-weight:800;cursor:pointer}@media(max-width:760px){.offer-material-grid{padding-right:15px!important;padding-bottom:58px!important}.offer-remove-material{right:15px;bottom:14px}}

/* Jobs workspace release contract */
.jobs-page .jobs-workspace-shell{width:100%;max-width:none;padding-inline:clamp(16px,3vw,48px)}.jobs-page .job-detail-hero{width:100%;max-width:none}.jobs-page .workspace-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.jobs-page .workspace-stat{min-height:124px}.job-detail-tabs{display:flex;width:100%;box-sizing:border-box;gap:4px;overflow-x:auto;margin:20px 0;border:1px solid #cbdbe1;border-radius:7px;background:#fff;padding:0 12px}.job-detail-tabs a{display:flex;align-items:center;min-height:58px;padding:0 14px;border-bottom:3px solid transparent;color:#53666f;text-decoration:none;font-weight:800;white-space:nowrap}.job-detail-tabs a:hover{color:#076881}.job-detail-tabs a.active{border-bottom-color:#08758e;color:#075d75}.job-detail-mode .jobs-list-section>div:first-child{display:none}.job-detail-mode .jobs-list-section{border:0;background:transparent;padding:0}.job-detail-mode .job-draft-list{display:block}.job-detail-mode .job-draft-row{display:block;padding:0;border:0;background:transparent}.job-detail-mode .job-draft-row>div:first-child,.job-detail-mode .job-draft-row>span,.job-detail-mode .job-draft-row>.record-actions{display:none}.job-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.job-next-action-panel,.job-overview-card{border:1px solid #cbdbe1;border-radius:7px;background:#fff}.job-next-action-panel{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;border-left:4px solid #d49a1c;background:#fff8e8}.job-next-action-panel h2,.job-next-action-panel p,.job-overview-card h2,.job-overview-card p{margin:0}.job-next-action-panel p{margin-top:5px;color:#596b74}.job-next-action-panel .primary-action{white-space:nowrap}.job-overview-card{overflow:hidden}.job-overview-card>header{padding:16px 18px;border-bottom:1px solid #dfe8eb}.job-overview-card>header h2{font-size:1rem}.job-overview-card>dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0}.job-overview-card>dl>div{display:grid;gap:4px;padding:15px 18px;border-bottom:1px solid #e1e8eb}.job-overview-card>dl>div:nth-last-child(-n+2){border-bottom:0}.job-overview-card dt{color:#5d7079;font-size:.78rem;font-weight:800}.job-overview-card dd{margin:0;color:#15272f;font-weight:800}.job-overview-card a{color:#00677f}.job-create-drawer{position:relative;width:min(560px,100%);margin-left:auto;min-height:100%;padding:28px;background:#fff;box-shadow:-12px 0 34px rgba(27,49,58,.16);overflow-y:auto}.job-drawer-layer{position:fixed;inset:0;z-index:30;padding-left:max(0px,calc(100vw - 100%));background:rgba(20,39,47,.42)}.job-create-drawer form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.job-create-drawer .drawer-close{position:absolute;right:20px;top:18px;display:grid;place-items:center;width:38px;height:38px;border:1px solid #cbdbe1;border-radius:6px;color:#1b333b;text-decoration:none;font-size:1.35rem}.job-create-drawer h2{margin:0;padding-right:48px}.job-create-drawer>p{margin:7px 0 22px;color:#5c7079}.job-drawer-footer{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.job-queue-mode .jobs-list-section{padding:0;overflow:hidden}.job-queue-mode .jobs-list-section>div:first-child{padding:22px 24px 0}.job-queue-mode .job-filter-tabs,.job-queue-mode .job-search-form{margin-inline:24px}.job-queue-mode .job-draft-list{display:grid;gap:0;margin-top:18px;border-top:1px solid #dbe5e8}.job-queue-mode .job-draft-row{display:grid;grid-template-columns:minmax(280px,1.7fr) minmax(130px,.75fr) minmax(150px,.8fr) minmax(150px,.85fr) auto;gap:16px;align-items:center;padding:18px 24px;border:0;border-bottom:1px solid #dbe5e8;border-radius:0;background:#fff}.job-queue-mode .job-draft-row>div:first-child{min-width:0}.job-queue-mode .job-draft-row h3{margin:3px 0;font-size:1rem}.job-queue-mode .job-draft-row p{margin:0;color:#5c7079}.job-queue-mode .job-draft-row .status-badge{justify-self:start}.job-queue-mode .job-draft-row .record-actions{display:flex;gap:7px;justify-self:end}.job-queue-mode .job-draft-row .record-actions a{padding:8px 10px;font-size:.85rem}.job-queue-mode .job-draft-row .missing-info-panel,.job-queue-mode .job-draft-row .job-pack-guidance-panel{display:none}.job-planning-form,.field-team-panel,.job-review-panel,.job-checklist-apply-form,.job-checklist-panel,.job-attachment-panel,.job-history-panel,.job-exception-actions{margin:0 0 16px;border:1px solid #cbdbe1;border-radius:7px;background:#fff;padding:20px}.job-planning-form,.field-lead-form,.field-readiness-form,.job-checklist-apply-form,.job-checklist-step-form,.job-attachment-form,.office-review-form,.job-status-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.job-planning-form h3,.job-checklist-apply-form h3,.job-status-form h3{grid-column:1/-1;margin:0}.job-planning-form fieldset,.office-review-form fieldset,.job-planning-form button,.field-lead-form button,.field-readiness-form button,.job-checklist-apply-form button,.job-checklist-step-form button,.job-attachment-form button,.office-review-form button,.job-status-form button{grid-column:1/-1}.job-checklist-panel>strong,.job-attachment-panel>strong,.job-history-panel>strong{display:block;margin-bottom:14px}.job-checklist-step,.job-attachment-row,.field-readiness-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.9fr);gap:16px;align-items:start;padding:16px 0;border-top:1px solid #e1e8eb}.job-checklist-step:first-of-type,.job-attachment-row:first-of-type,.field-readiness-row:first-of-type{border-top:0}.job-exception-actions summary{cursor:pointer;color:#53666f;font-weight:800}.job-exception-actions[open] summary{margin-bottom:16px}.job-detail-mode .missing-info-panel,.job-detail-mode .job-pack-guidance-panel{margin-bottom:16px}.job-detail-mode .job-draft-row>.missing-info-panel,.job-detail-mode .job-draft-row>.job-pack-guidance-panel{display:block}
@media(max-width:980px){.jobs-page .workspace-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.job-queue-mode .job-draft-row{grid-template-columns:minmax(220px,1.5fr) minmax(120px,.8fr) minmax(130px,.8fr) auto}.job-queue-mode .job-draft-row>span:nth-of-type(2){display:none}.job-overview-grid{grid-template-columns:1fr}.job-detail-mode .job-draft-row>.missing-info-panel,.job-detail-mode .job-draft-row>.job-pack-guidance-panel{display:block}.job-planning-form,.field-lead-form,.field-readiness-form,.job-checklist-apply-form,.job-checklist-step-form,.job-attachment-form,.office-review-form,.job-status-form{grid-template-columns:1fr}.job-checklist-step,.job-attachment-row,.field-readiness-row{grid-template-columns:1fr}}
@media(max-width:680px){.jobs-page .jobs-workspace-shell{padding-inline:14px}.jobs-page .workspace-summary-grid{grid-template-columns:1fr 1fr}.job-create-drawer{width:100%;padding:24px 18px}.job-create-drawer form{grid-template-columns:1fr}.job-next-action-panel{align-items:stretch;flex-direction:column}.job-next-action-panel .primary-action{width:100%;text-align:center}.job-overview-card>dl{grid-template-columns:1fr}.job-overview-card>dl>div:nth-last-child(-n+2){border-bottom:1px solid #e1e8eb}.job-overview-card>dl>div:last-child{border-bottom:0}.job-queue-mode .jobs-list-section>div:first-child{padding:18px 16px 0}.job-queue-mode .job-filter-tabs,.job-queue-mode .job-search-form{margin-inline:16px}.job-queue-mode .job-draft-row{grid-template-columns:1fr auto;padding:16px}.job-queue-mode .job-draft-row>span{display:none!important}.job-queue-mode .job-draft-row .record-actions{grid-column:1/-1;justify-self:stretch}.job-queue-mode .job-draft-row .record-actions a{flex:1;text-align:center}.job-detail-tabs{margin:14px 0}.job-detail-tabs a{min-height:52px;padding:0 12px}.job-drawer-footer{display:grid;grid-template-columns:1fr 1fr}.job-drawer-footer>*{text-align:center;justify-content:center}}
.job-overview-history{grid-column:1/-1}.job-overview-history ol{display:grid;gap:0;margin:0;padding:0;list-style:none}.job-overview-history li{display:grid;gap:4px;padding:14px 18px;border-top:1px solid #e1e8eb}.job-overview-history li span{color:#5b6c75;font-size:.9rem}
.job-overview-history .review-panel-header>div{display:grid;gap:4px;min-width:0}.job-overview-history .review-panel-header p{margin:0;color:#60717a;font-size:.86rem;font-weight:500}.job-overview-history>.job-overview-empty-state{box-sizing:border-box;min-height:64px;margin:0;padding:20px 18px;color:#60717a}.job-planning-attention{margin-bottom:16px}
.job-drawer-layer{display:flex;justify-content:flex-end}.job-create-drawer{display:flex;flex-direction:column;width:min(620px,100%);height:100%;min-height:100%;padding:0}.job-create-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:28px 30px 22px;border-bottom:1px solid #dbe5e8}.job-create-drawer-header>div{min-width:0}.job-create-drawer-header h2{margin:0;padding:0;font-size:1.35rem}.job-create-drawer-header p{max-width:470px;margin:7px 0 0;color:#5c7079;line-height:1.55}.job-create-drawer .drawer-close{position:static;flex:0 0 38px}.job-create-drawer .job-draft-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:18px 16px;padding:24px 30px 30px}.job-create-drawer .field-group{align-self:start}.job-create-drawer .field-group :is(input,select,textarea){width:100%;min-width:0;box-sizing:border-box}.job-create-drawer .field-group textarea{min-height:116px;resize:vertical}.job-drawer-feedback{grid-column:1/-1;margin:0;padding:12px 14px;border:1px solid #e3b5b0;border-radius:7px;background:#fff3f1;color:#8a2e2a}.job-drawer-feedback:empty{display:none}.job-drawer-footer{align-items:center;margin-top:4px;padding-top:20px;border-top:1px solid #dbe5e8}.job-create-drawer .job-drawer-footer .auth-submit{width:auto;min-width:220px}.job-create-drawer .job-drawer-footer .secondary-action{min-width:92px;text-align:center}
@media(max-width:680px){.job-create-drawer{width:100%;padding:0}.job-create-drawer-header{padding:22px 18px 18px}.job-create-drawer-header h2{font-size:1.2rem}.job-create-drawer .job-draft-form{grid-template-columns:1fr;padding:20px 18px 26px}.job-create-drawer .job-drawer-footer{grid-template-columns:1fr 1.45fr}.job-create-drawer .job-drawer-footer .auth-submit,.job-create-drawer .job-drawer-footer .secondary-action{width:100%;min-width:0}}
.job-tab-feedback{margin:0 0 16px;padding:11px 14px;border:1px solid;border-radius:7px;font-weight:750}.job-tab-feedback.success{border-color:#a9d9bc;background:#edf9f2;color:#17643d}.job-tab-feedback.error{border-color:#e3b5b0;background:#fff3f1;color:#8a2e2a}.job-tab-feedback ul{margin:6px 0 0;padding-left:18px}

/* Focused job workspace: overview uses the approved two-row operational card layout. */
.job-detail-hero{padding:22px 24px;border-left:4px solid #25839b;box-shadow:0 8px 22px rgba(33,61,72,.06)}
.job-hero-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.job-hero-kicker .eyebrow{margin:0}.job-hero-context{display:flex;flex-wrap:wrap;gap:7px 18px;margin:8px 0 0!important;color:#53666f}.job-hero-context span{white-space:nowrap}.job-hero-context strong{color:#334b55;font-size:.78rem}.job-hero-context a{font-weight:800}
.technician-publication-badge{display:inline-flex;align-items:center;width:max-content;max-width:100%;white-space:normal;border:1px solid #b8cbd2;border-radius:999px;padding:3px 8px;background:#f4f7f8;color:#4b616a;font-size:.72rem;font-weight:800;line-height:1.25;text-align:center}.technician-publication-badge.published{border-color:#9bcdb1;background:#edf8f1;color:#176b3b}.technician-publication-badge.unassigned{border-color:#e2c46e;background:#fff8e6;color:#72520b}.job-state-badges{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.job-detail-hero{align-items:center;min-width:0}.job-detail-hero>div:first-child{min-width:0}.job-detail-hero h2{max-width:100%;overflow-wrap:anywhere;word-break:normal}.job-hero-context{min-width:0}.job-hero-context span,.job-hero-context a{min-width:0;overflow-wrap:anywhere}.job-detail-command-bar{align-items:center;flex-wrap:nowrap;gap:18px}.job-workflow-actions,.job-navigation-group,.job-record-navigation{display:flex;align-items:center}.job-workflow-actions{gap:8px}.job-navigation-group{gap:10px;padding-left:18px;border-left:1px solid #d9e3e6}.job-navigation-position{color:#657780;font-size:.78rem;font-weight:750;white-space:nowrap}.job-detail-plan-action,.job-record-nav{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px}.job-record-navigation{gap:6px}.job-record-nav{gap:7px;padding:0 12px;border:1px solid #cbdbe1;border-radius:7px;background:#fff;color:#075f76;text-decoration:none;font-size:.86rem;font-weight:800;white-space:nowrap}.job-record-nav:hover{border-color:#91b6c0;background:#edf6f8}.job-record-nav.disabled{border-color:#dbe4e7;color:#9aa8ad;background:#f7f9fa;cursor:not-allowed}.job-record-nav>span[aria-hidden="true"]{font-size:1.05rem;line-height:1}
.job-release-form{display:contents}.job-release-form .primary-action{min-height:44px;white-space:nowrap}.job-next-action-panel .job-release-form{justify-self:end}
.job-detail-tabs{min-height:58px}.job-next-action-panel{display:grid;grid-template-columns:42px minmax(0,1fr) auto;padding:15px 18px;border-left:4px solid #d79c1c;background:#fff8e7}.job-next-action-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f9df9f;color:#805b0c;font-size:1.15rem;font-weight:900}.job-next-action-panel>div strong{display:block;color:#1c2a30}.job-next-action-panel>div p{font-size:.9rem}.job-overview-grid{gap:14px}.job-overview-card{min-height:0}.job-overview-card .review-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #dfe8eb}.job-overview-card .review-panel-header h3{margin:0;color:#17262d;font-size:1rem}.job-overview-card .review-panel-header a{font-size:.88rem;font-weight:850;text-decoration:none}.job-overview-card .review-panel-header a:hover{text-decoration:underline}.job-relationship-grid,.job-summary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.job-relationship-grid>div,.job-summary-list>div{display:grid;gap:5px;min-height:66px;padding:14px 18px;border-bottom:1px solid #e1e8eb}.job-relationship-grid>div:nth-child(odd),.job-summary-list>div:nth-child(odd){border-right:1px solid #e1e8eb}.job-relationship-grid>div:nth-last-child(-n+2),.job-summary-list>div:nth-last-child(-n+2){border-bottom:0}.job-relationship-grid dt,.job-summary-list dt{color:#657780;font-size:.76rem;font-weight:800}.job-relationship-grid dd,.job-summary-list dd{margin:0;color:#17262d;font-weight:850}.job-related-work{padding:0 18px 14px}.job-related-work p{margin:8px 0 0;color:#53666f;font-size:.88rem}.job-work-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 18px}.job-work-metrics span{display:grid;gap:5px;padding:12px;border:1px solid #dce6e9;border-radius:6px;background:#f8fbfc}.job-work-metrics small{color:#657780;font-size:.76rem;font-weight:800}.job-work-metrics strong{color:#17262d;font-size:1rem}.job-overview-history{margin-top:2px}
@media(max-width:760px){.job-detail-hero{padding:18px}.job-hero-context{display:grid;gap:5px}.job-hero-context span{white-space:normal}.job-next-action-panel{grid-template-columns:34px minmax(0,1fr);gap:12px;padding:15px}.job-next-action-panel .primary-action{grid-column:1/-1;width:100%;text-align:center}.job-relationship-grid,.job-summary-list{grid-template-columns:1fr}.job-relationship-grid>div,.job-summary-list>div{border-right:0!important;border-bottom:1px solid #e1e8eb!important}.job-relationship-grid>div:last-child,.job-summary-list>div:last-child{border-bottom:0!important}.job-work-metrics{grid-template-columns:1fr}.job-detail-tabs{padding:0 8px}.job-detail-tabs a{padding:0 12px}}
@media(max-width:900px){.job-detail-command-bar{width:100%;flex-wrap:wrap;justify-content:space-between}.job-navigation-group{margin-left:auto}}@media(max-width:760px){.job-detail-command-bar{display:grid;grid-template-columns:1fr}.job-workflow-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%}.job-detail-command-bar .job-release-form{display:block}.job-detail-command-bar .job-release-form .primary-action{width:100%}.job-navigation-group{width:100%;margin:0;padding:12px 0 0;border-top:1px solid #d9e3e6;border-left:0;justify-content:space-between}.job-record-navigation{flex:0 0 auto}.job-next-action-panel .job-release-form{justify-self:stretch}.job-next-action-panel .job-release-form .primary-action{width:100%}}@media(max-width:460px){.job-record-nav{width:42px;padding:0}.job-record-nav-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.job-workflow-actions{grid-template-columns:1fr}.job-detail-plan-action{width:100%}}

/* Checklist templates and job checklist execution */
.checklist-template-section{display:grid;gap:18px;padding-block:6px 24px;border-bottom:1px solid #dbe5e8}.checklist-template-section:last-child{border-bottom:0}.checklist-template-section .section-heading-row h2{margin:3px 0 5px}.checklist-template-section .section-heading-row p{margin:0;color:#53666f}.checklist-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.checklist-template-card{display:flex;min-width:0;flex-direction:column;border:1px solid #cbdbe1;border-radius:7px;background:#fff;overflow:hidden}.checklist-template-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:17px 18px;border-bottom:1px solid #e1e8eb}.checklist-template-card h3,.checklist-template-row h3{margin:0;font-size:1rem}.checklist-template-card header p,.checklist-template-row p{margin:5px 0 0;color:#60727a;font-size:.86rem}.status-badge.warning{border-color:#e6c66d;background:#fff4d8;color:#765205}.checklist-template-meta{display:grid;gap:0;margin:0}.checklist-template-meta>div{display:grid;gap:3px;padding:11px 18px;border-bottom:1px solid #edf1f2}.checklist-template-meta dt{color:#657780;font-size:.74rem;font-weight:800}.checklist-template-meta dd{margin:0;overflow-wrap:anywhere;font-size:.84rem}.checklist-step-preview{padding:13px 18px;border-bottom:1px solid #e1e8eb}.checklist-step-preview summary,.checklist-template-editor summary,.checklist-change-disclosure summary{cursor:pointer;color:#075f76;font-weight:800}.checklist-step-preview ol{display:grid;gap:9px;margin:13px 0 2px;padding-left:20px}.checklist-step-preview li{padding-left:3px;color:#344b55;font-size:.86rem}.checklist-step-preview li strong{display:block;color:#82600f;font-size:.72rem}.checklist-copy-form{display:grid;gap:8px;margin-top:auto;padding:15px 18px}.checklist-copy-form label{font-size:.8rem;font-weight:800}.checklist-standards-note{margin:0;padding:13px 16px;border-left:4px solid #d39a1d;background:#fff8e7;color:#4e5f67;font-size:.88rem}.checklist-template-list{display:grid;border:1px solid #cbdbe1;border-radius:7px;background:#fff;overflow:hidden}.checklist-template-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:17px 18px;border-bottom:1px solid #dbe5e8}.checklist-template-row:last-child{border-bottom:0}.checklist-template-title-row{display:flex;align-items:center;gap:10px}.checklist-template-row-actions{display:flex;align-items:start;gap:8px}.checklist-template-editor{grid-column:1/-1}.checklist-template-editor[open] summary{margin-bottom:14px}.checklist-template-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px;border:1px solid #dbe5e8;border-radius:6px;background:#f8fbfc}.checklist-template-form .checklist-step-field{align-self:start}.checklist-template-form textarea{width:100%;box-sizing:border-box;resize:vertical}.checklist-template-form .auth-submit{grid-column:1/-1;justify-self:end}.checklist-template-create-form{max-width:1040px;padding:0;border:0;background:transparent}.checklist-template-errors:empty{display:none}
.job-checklist-planning-panel{margin:0 0 16px;border:1px solid #cbdbe1;border-radius:7px;background:#fff;overflow:hidden}.job-checklist-planning-panel .review-panel-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 20px;border-bottom:1px solid #dbe5e8}.job-checklist-planning-panel h3,.job-checklist-planning-panel p{margin:0}.job-checklist-planning-panel .review-panel-header p,.job-checklist-current p{margin-top:5px;color:#5b6e77;font-size:.88rem}.job-checklist-select-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;padding:17px 20px}.job-checklist-select-form .field-group{margin:0}.job-checklist-current{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start;padding:17px 20px}.checklist-change-disclosure{min-width:min(360px,100%)}.checklist-change-disclosure[open] summary{margin-bottom:10px}.checklist-change-disclosure .job-checklist-select-form{display:grid;grid-template-columns:1fr;padding:12px 0 0}.checklist-replace-confirm{align-items:flex-start}.job-checklist-empty.compact{padding:17px 20px;border:0;border-radius:0;background:#fff}.job-checklist-progress-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:-20px -20px 0;padding:17px 20px;border-bottom:1px solid #dbe5e8}.job-checklist-progress-header p{margin:4px 0 0;color:#5b6e77;font-size:.88rem}.job-checklist-progress{display:grid;text-align:right}.job-checklist-progress strong{font-size:1.15rem}.job-checklist-progress span{color:#62747c;font-size:.76rem}.job-checklist-step-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.job-checklist-step-title{display:flex;gap:11px;align-items:flex-start}.job-checklist-step-title p{margin:1px 0 3px;font-weight:800}.checklist-step-mark{display:grid;flex:0 0 30px;place-items:center;width:30px;height:30px;border:1px solid #b9cdd4;border-radius:6px;background:#f7fafb;color:#078053;font-weight:900}.job-checklist-step.complete .checklist-step-mark{border-color:#abdabe;background:#eaf7ef}.checklist-requirement{color:#657780;font-size:.76rem;font-weight:800}.checklist-step-note{grid-column:1/-1;margin:2px 0 0 41px!important;color:#52666f}.checklist-evidence-summary{grid-column:1/-1;margin-left:41px;color:#075f76;font-size:.82rem;font-weight:800}.job-checklist-step-form small{color:#657780;font-size:.76rem}.job-checklist-empty{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:14px;align-items:center;padding:22px;border:1px solid #cbdbe1;border-radius:7px;background:#fff}.job-checklist-empty h3,.job-checklist-empty p{margin:0}.job-checklist-empty p{margin-top:4px;color:#5b6e77}.job-checklist-empty-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:6px;background:#e7f3f6;color:#08718a;font-size:1.1rem;font-weight:900}
@media(max-width:1100px){.checklist-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.checklist-template-grid{grid-template-columns:1fr}.checklist-template-form{grid-template-columns:1fr}.checklist-template-form .auth-submit{grid-column:1;justify-self:stretch}.checklist-template-row{grid-template-columns:1fr}.checklist-template-row-actions{justify-content:flex-start}.job-checklist-planning-panel .review-panel-header,.job-checklist-current,.job-checklist-progress-header{align-items:stretch}.job-checklist-current{grid-template-columns:1fr}.checklist-change-disclosure{min-width:0}.job-checklist-select-form{grid-template-columns:1fr}.job-checklist-step-copy{grid-template-columns:1fr}.job-checklist-step-copy>.status-badge{margin-left:41px;justify-self:start}.job-checklist-empty{grid-template-columns:38px minmax(0,1fr)}.job-checklist-empty .button-secondary{grid-column:1/-1;text-align:center}}

.checklist-template-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.checklist-template-page-header>div{min-width:0}.checklist-template-page-header .auth-submit{flex:0 0 auto;width:auto;min-width:170px;text-align:center;text-decoration:none}.checklist-template-card>header{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.checklist-template-card>header .status-badge{justify-self:start}.checklist-template-card>footer{margin-top:auto;padding:14px 18px}.checklist-template-card>footer .button-secondary{display:block;text-align:center}.checklist-source-preview{padding:13px 18px;border-bottom:1px solid #e1e8eb}.checklist-source-preview summary{cursor:pointer;color:#075f76;font-weight:800}.checklist-source-preview ul{display:grid;gap:12px;margin:14px 0 2px;padding:0;list-style:none}.checklist-source-preview li{display:grid;gap:3px}.checklist-source-preview a{color:#00677f;font-weight:800}.checklist-source-preview span{color:#60727a;font-size:.78rem;line-height:1.4}.checklist-source-policy{display:grid;gap:4px;padding:14px 16px;border:1px solid #b8d7df;border-radius:7px;background:#f3fafb}.checklist-source-policy p{margin:0;color:#4f646d}.checklist-template-row{align-items:center}.checklist-template-row-main{min-width:0}.checklist-template-row-main small{display:block;margin-top:5px;color:#60727a}.checklist-template-row-actions{align-items:center;flex-wrap:wrap}.checklist-template-row-actions form{margin:0}.checklist-template-drawer{width:min(680px,100%)}.checklist-template-drawer-body{display:grid;gap:20px;padding:24px 30px 30px;overflow-y:auto}.checklist-copy-context{display:grid;gap:5px;padding:16px;border:1px solid #cbdbe1;border-radius:7px;background:#f7fafb}.checklist-copy-context span{color:#60727a}.checklist-copy-context p{margin:6px 0 0;color:#4f646d}.checklist-template-drawer-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:18px 16px;padding:24px 30px 30px;overflow-y:auto}.checklist-template-drawer-body .checklist-template-drawer-form{grid-template-columns:1fr;padding:0;overflow:visible}.checklist-template-drawer-form .field-group{display:grid;align-content:start;gap:7px;min-width:0;font-weight:800}.checklist-template-drawer-form .field-group :is(input,textarea){box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:46px;padding:10px 12px;border:1px solid #b9cbd3;border-radius:7px;background:#fff;color:#17262d;font:inherit}.checklist-template-drawer-form .field-group textarea{min-height:150px;resize:vertical}.checklist-template-drawer-form .field-group small{color:#60727a;font-weight:400}.checklist-template-drawer-form .field-group :is(input,textarea):focus-visible{outline:3px solid rgba(8,117,142,.16);border-color:#08758e}.checklist-template-drawer-form .job-drawer-footer{grid-column:1/-1}.checklist-template-drawer-form .secondary-action{display:flex;align-items:center;justify-content:center;min-height:46px;color:#075f76;font-weight:800;text-decoration:none}.checklist-template-drawer-form .auth-submit{min-width:190px}

@media(max-width:760px){.checklist-template-page-header{display:grid}.checklist-template-page-header .auth-submit{width:100%;text-align:center}.checklist-template-row-actions{display:grid;grid-template-columns:1fr 1fr}.checklist-template-row-actions>*{width:100%}.checklist-template-row-actions .button-secondary{box-sizing:border-box;width:100%;text-align:center}.checklist-template-drawer{width:100%}.checklist-template-drawer-body,.checklist-template-drawer-form{grid-template-columns:1fr;padding:20px 18px 26px}.checklist-template-drawer-form .job-drawer-footer{display:grid;grid-template-columns:1fr 1.45fr}.checklist-template-drawer-form .auth-submit{width:100%;min-width:0}}

.checklist-template-audit{margin-top:10px}.checklist-template-audit summary{cursor:pointer;color:#075f76;font-size:.8rem;font-weight:800}.checklist-template-audit ol{display:grid;gap:8px;margin:10px 0 0;padding:0;list-style:none}.checklist-template-audit li{display:grid;gap:2px;padding-left:10px;border-left:2px solid #c4dde4;font-size:.78rem}.checklist-template-audit li span{color:#60727a}.button-secondary.disabled{cursor:not-allowed;border-color:#d9e1e4;background:#f3f6f7;color:#768991}.checklist-evidence-picker{grid-column:1/-1;padding:10px 12px;border:1px solid #d5e1e5;border-radius:7px;background:#f8fbfc}.checklist-evidence-picker summary{cursor:pointer;color:#075f76;font-weight:800}.checklist-evidence-picker fieldset{display:grid;gap:7px;margin:12px 0 0;padding:0;border:0}.checklist-evidence-picker legend{margin-bottom:5px;color:#526871;font-size:.76rem;font-weight:800;text-transform:uppercase}.checklist-evidence-picker label{display:flex;align-items:flex-start;gap:8px;font-size:.84rem}.checklist-evidence-picker input{margin-top:2px}

/* Job detail tabs share one responsive workspace language. */
.job-tab-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:-2px 0 16px;padding:0 2px 15px;border-bottom:1px solid #d8e4e8}.job-tab-page-header h2,.job-tab-page-header p{margin:0}.job-tab-page-header h2{font-size:1.18rem;line-height:1.3}.job-tab-page-header p{max-width:760px;margin-top:4px;color:#596c75;font-size:.92rem}.job-tab-shortcuts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.job-tab-shortcuts a{display:inline-flex;align-items:center;min-height:36px;padding:7px 11px;border:1px solid #c7d8de;border-radius:6px;background:#fff;color:#08647b;font-size:.84rem;font-weight:800;text-decoration:none}.job-tab-shortcuts a:hover{border-color:#16839b;background:#f2fafb}.job-tab-content{width:100%;min-width:0}.job-planning-tab-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.job-planning-tab-layout>.job-planning-form,.job-planning-tab-layout>.job-checklist-planning-panel,.job-planning-tab-layout>.field-team-panel,.job-planning-tab-layout>.workflow-policy-impact{min-width:0;margin:0}.job-planning-tab-layout>.job-planning-form,.job-planning-tab-layout>.job-checklist-planning-panel,.job-planning-tab-layout>.field-team-panel{grid-column:auto}.job-planning-tab-layout>.workflow-policy-impact,.job-planning-tab-layout>.job-checklist-planning-panel.full-span{grid-column:1/-1}.job-planning-tab-layout>.job-planning-form{align-content:start}.job-planning-tab-layout>.job-planning-form>p,.workflow-form-description{grid-column:1/-1;margin:0;color:#596c75;font-size:.88rem}.job-planning-tab-layout>.job-brief-form .field-group{grid-column:1/-1}.job-planning-tab-layout>.job-planning-form:not(.job-brief-form) fieldset{grid-column:1/-1}.job-planning-tab-layout .field-team-panel{overflow:hidden}.job-planning-tab-layout .field-team-panel>strong,.job-planning-tab-layout .field-team-panel>p{display:block;margin:0 0 10px}.job-planning-tab-layout .field-readiness-row{grid-template-columns:minmax(160px,.7fr) minmax(0,1.3fr)}.job-planning-tab-layout .job-checklist-empty.compact{grid-template-columns:minmax(0,1fr) auto;gap:12px}.job-planning-tab-layout .job-checklist-empty.compact p{margin:0}.job-planning-tab-layout .job-checklist-empty.compact .button-secondary{justify-self:start}.job-tab-empty-state{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:16px;align-items:center;min-height:132px;padding:22px;border:1px solid #cbdbe1;border-radius:7px;background:#fff}.job-tab-empty-state.compact{min-height:0;margin-top:14px;padding:17px 18px}.job-tab-empty-state h3,.job-tab-empty-state p{margin:0}.job-tab-empty-state h3{font-size:1rem}.job-tab-empty-state p{max-width:720px;margin-top:4px;color:#596c75}.job-tab-empty-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:6px;background:#e6f3f6;color:#08718a;font-weight:900}.job-tab-empty-actions{display:flex;flex-wrap:wrap;gap:8px}.job-review-panel{overflow:hidden}.job-review-panel>.review-panel-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;margin:-20px -20px 18px;padding:17px 20px;border-bottom:1px solid #dbe5e8}.job-review-panel>.review-panel-header p{margin:4px 0 0;color:#5b6e77}.job-review-panel .review-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.job-attachment-panel{overflow:hidden}.job-attachment-panel>.job-attachment-form{grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:18px;border-bottom:1px solid #e1e8eb}.job-attachment-panel>.job-attachment-form>button{grid-column:1/-1;justify-self:start}.job-history-panel{padding:0;overflow:hidden}.job-history-panel>strong{display:block;margin:0;padding:17px 20px;border-bottom:1px solid #dbe5e8}.job-history-timeline{display:grid;gap:0;margin:0;padding:0;list-style:none}.job-history-timeline li{position:relative;display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px;padding:16px 20px;border-bottom:1px solid #e4ecef}.job-history-timeline li:last-child{border-bottom:0}.job-history-marker{display:block;width:10px;height:10px;margin-top:5px;border:2px solid #fff;border-radius:50%;background:#08758e;box-shadow:0 0 0 2px #b9d5dc}.job-history-timeline p{margin:4px 0;color:#53666f}.job-history-timeline small{color:#6b7d85}.job-history-timeline strong{color:#17262d}
@media(max-width:1100px){.job-planning-tab-layout{grid-template-columns:1fr}.job-planning-tab-layout>*{grid-column:1!important}.job-planning-tab-layout .field-readiness-row{grid-template-columns:1fr}.job-review-panel .review-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.job-attachment-panel>.job-attachment-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.job-tab-page-header{display:grid;gap:12px;padding-bottom:14px}.job-tab-shortcuts{justify-content:flex-start}.job-tab-shortcuts a{flex:1;justify-content:center}.job-tab-empty-state{grid-template-columns:40px minmax(0,1fr);min-height:0;padding:18px}.job-tab-empty-state>.secondary-action,.job-tab-empty-actions{grid-column:1/-1}.job-tab-empty-actions>*{flex:1;text-align:center}.job-review-panel>.review-panel-header{grid-template-columns:1fr}.job-review-panel>.review-panel-header .status-badge{justify-self:start}.job-review-panel .review-summary-grid,.job-attachment-panel>.job-attachment-form{grid-template-columns:1fr}.job-history-timeline li{padding:15px 16px}.job-planning-tab-layout>.job-planning-form,.job-planning-tab-layout>.field-team-panel{padding:17px}.job-planning-tab-layout .job-checklist-planning-panel .review-panel-header{display:grid}.job-planning-tab-layout .job-checklist-planning-panel .status-badge{justify-self:start}.job-planning-tab-layout .job-checklist-empty.compact{grid-template-columns:1fr}.job-planning-tab-layout .job-checklist-empty.compact .button-secondary{justify-self:stretch;text-align:center}}

/* Field work checklist: compact, nested and predictable at every width. */
.job-field-work-layout .job-checklist-panel{box-sizing:border-box;width:100%;min-width:0;margin:0;padding:0;overflow:hidden}
.job-field-work-layout .job-checklist-progress-header{margin:0;padding:17px 20px}
.job-field-work-layout .job-checklist-summary-actions{display:flex;flex:0 0 auto;align-items:stretch;gap:0}
.job-field-work-layout .job-checklist-summary-stat{display:grid;grid-template-rows:auto auto;align-content:center;justify-items:center;min-width:86px;min-height:42px;box-sizing:border-box;padding:3px 12px;border-left:1px solid #d3e0e5;color:#52636c;line-height:1.2;text-align:center}
.job-field-work-layout .job-checklist-summary-stat strong{color:#17313b;font-size:.92rem;line-height:1.15}
.job-field-work-layout .job-checklist-summary-stat>span{margin-top:2px;color:#60737c;font-size:.7rem;font-weight:700;white-space:nowrap}
.job-field-work-layout .job-checklist-summary-stat:first-child{border-left:0}
.job-field-work-layout .job-checklist-summary-stat.job-checklist-attention{min-height:42px;padding:3px 12px;border-width:0 0 0 1px;border-radius:0;background:transparent;color:#8a5a00}
.job-field-work-layout .job-checklist-summary-stat.job-checklist-attention strong,.job-field-work-layout .job-checklist-summary-stat.job-checklist-attention>span{color:#8a5a00}
.job-field-work-layout .job-checklist-summary-stat.job-checklist-progress{text-align:center}
.job-field-work-layout .job-checklist-filters{padding:11px 20px;gap:7px}
.job-field-work-layout .job-checklist-filters button{min-height:36px;padding:7px 11px}
.job-field-work-layout .job-checklist-review-list{gap:12px;padding:16px 20px 20px}
.job-field-work-layout .job-checklist-review-group{min-width:0}
.job-field-work-layout .job-checklist-review-group>summary{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:64px;padding:13px 16px;list-style:none}
.job-field-work-layout .job-checklist-review-group>summary::-webkit-details-marker,.job-field-work-layout .job-checklist-step-editor>summary::-webkit-details-marker{display:none}
.job-field-work-layout .job-checklist-review-group>summary::marker,.job-field-work-layout .job-checklist-step-editor>summary::marker{content:""}
.job-checklist-disclosure-icon,.job-checklist-editor-chevron{display:inline-grid;place-items:center;color:#07657b;font-size:1.25rem;font-weight:900;line-height:1;transition:transform .15s ease}
.job-checklist-review-group[open]>summary .job-checklist-disclosure-icon,.job-checklist-step-editor[open]>summary .job-checklist-editor-chevron{transform:rotate(90deg)}
.job-checklist-summary-copy{display:grid;min-width:0;gap:3px}
.job-checklist-summary-copy strong{overflow-wrap:anywhere;color:#17262d;line-height:1.35}
.job-checklist-summary-copy small{color:#61747c}
.job-field-work-layout .status-badge{display:inline-flex;width:max-content;max-width:100%;min-height:24px;box-sizing:border-box;align-items:center;justify-content:center;margin:0;padding:3px 8px;white-space:nowrap;line-height:1.2}
.job-field-work-layout .job-checklist-phase-group{min-width:0}
.job-field-work-layout .job-checklist-phase-group>h3{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:10px 16px}
.job-field-work-layout .job-checklist-phase-group>h3 small{color:#54727c;font-size:.73rem;font-weight:750;white-space:nowrap}
.job-field-work-layout .job-checklist-step{display:block;min-width:0;padding:0;border-top:1px solid #e1e8eb}
.job-field-work-layout .job-checklist-step-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;min-width:0;padding:16px 18px}
.job-field-work-layout .job-checklist-step-title{min-width:0;gap:11px}
.job-field-work-layout .job-checklist-step-title>div{min-width:0}
.job-field-work-layout .job-checklist-step-title p{margin:0 0 4px;overflow-wrap:anywhere;color:#24333a;line-height:1.38}
.job-field-work-layout .job-checklist-step-meta{display:flex;flex-wrap:wrap;gap:5px 9px;color:#657780;font-size:.76rem}
.checklist-step-state{display:grid;flex:0 0 28px;place-items:center;width:28px;height:28px;border:1px solid #b9cdd4;border-radius:50%;background:#f7fafb;color:#52717c;font-size:.8rem;font-weight:900}
.checklist-step-state.status-completed{border-color:#abdabe;background:#eaf7ef;color:#087647}
.checklist-step-state.status-attention{border-color:#edc060;background:#fff1c8;color:#9b6200}
.checklist-step-state.status-returned{border-color:#efabab;background:#fff0f0;color:#b42318}
.checklist-step-state.status-skipped{border-color:#c8d3d8;background:#f2f5f6;color:#52636c}
.checklist-step-state.status-overridden{border-color:#e5c371;background:#fff5d9;color:#835b05}
.job-field-work-layout .job-checklist-step-copy>:not(.job-checklist-step-title):not(.status-badge){grid-column:1/-1;min-width:0;margin-left:39px}
.job-field-work-layout :is(.checklist-step-instructions,.checklist-step-note){margin-top:1px;margin-bottom:0;color:#52636c;line-height:1.5;overflow-wrap:anywhere}
.job-field-work-layout .checklist-step-note{margin-left:39px!important}
.job-field-work-layout .checklist-step-expectation{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:2px;margin-bottom:0;padding:9px 11px;border-left:3px solid #16849d;background:#f1f8fa;color:#435b65;line-height:1.45;overflow-wrap:anywhere}
.job-field-work-layout .checklist-step-expectation a,.job-field-work-layout .checklist-evidence-summary{color:#075f76;font-weight:800}
.job-field-work-layout .checklist-evidence-summary{display:inline-flex;width:max-content;max-width:calc(100% - 39px);overflow-wrap:anywhere}
.job-field-work-layout .job-checklist-readonly-notice{margin:0;padding:11px 18px 13px 57px;border-top:1px solid #e1e8eb;color:#60727a}
.job-field-work-layout .job-checklist-step-editor{display:block;margin:0;border-top:1px solid #e1e8eb}
.job-field-work-layout .job-checklist-step-editor>summary{display:flex;align-items:center;gap:7px;min-height:42px;box-sizing:border-box;padding:9px 18px;list-style:none;background:#fbfcfd;color:#075f76;cursor:pointer;font-size:.82rem;font-weight:800}
.job-field-work-layout .job-checklist-step-editor>summary:hover{background:#f3f8fa}
.job-field-work-layout .job-checklist-step-editor[open]>summary{border-bottom:1px solid #dbe5e8;background:#f3f8fa}
.job-field-work-layout .job-checklist-step-editor .job-checklist-step-form{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(260px,1.35fr);gap:14px 16px;margin:0;padding:16px 18px 18px;border:0;border-radius:0;background:#f8fbfc}
.job-field-work-layout .job-checklist-step-form>.job-checklist-closed-correction,.job-field-work-layout .job-checklist-step-form>.checklist-evidence-picker,.job-field-work-layout .job-checklist-step-form>button{grid-column:1/-1}
.job-field-work-layout .job-checklist-step-form>button{justify-self:start;min-width:150px}
.job-field-work-layout .checklist-evidence-picker{margin:0}
@media(max-width:760px){.job-field-work-layout .job-checklist-progress-header{display:grid;gap:12px}.job-field-work-layout .job-checklist-summary-actions{justify-content:flex-start}.job-field-work-layout .job-checklist-summary-stat{min-width:82px}.job-field-work-layout .job-checklist-review-list{padding:12px}.job-field-work-layout .job-checklist-review-group>summary{grid-template-columns:16px minmax(0,1fr);padding:13px 14px}.job-field-work-layout .job-checklist-review-group>summary>.status-badge{grid-column:2;justify-self:start}.job-field-work-layout .job-checklist-phase-group>h3{align-items:flex-start;padding:10px 14px}.job-field-work-layout .job-checklist-phase-group>h3 small{white-space:normal;text-align:right}.job-field-work-layout .job-checklist-step-copy{grid-template-columns:1fr;padding:15px 14px}.job-field-work-layout .job-checklist-step-copy>.status-badge{margin-left:39px;justify-self:start}.job-field-work-layout .job-checklist-step-copy>:not(.job-checklist-step-title):not(.status-badge){margin-left:39px}.job-field-work-layout .job-checklist-step-editor>summary{padding-inline:14px}.job-field-work-layout .job-checklist-step-editor .job-checklist-step-form{grid-template-columns:1fr;padding:15px 14px}.job-field-work-layout .job-checklist-step-form>button{width:100%;justify-self:stretch}.job-field-work-layout .job-checklist-readonly-notice{padding-left:53px}}
@media(max-width:440px){.job-field-work-layout .job-checklist-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 12px}.job-field-work-layout .job-checklist-filters button{width:100%}.job-field-work-layout .job-checklist-phase-group>h3{display:grid;gap:3px}.job-field-work-layout .job-checklist-phase-group>h3 small{text-align:left}.job-field-work-layout .job-checklist-step-copy>.status-badge,.job-field-work-layout .job-checklist-step-copy>:not(.job-checklist-step-title):not(.status-badge){margin-left:0}.job-field-work-layout .checklist-step-note{margin-left:0!important}.job-field-work-layout .checklist-evidence-summary{max-width:100%}}

.status-badge.deadline-badge {
  border: 1px solid #e6c66d;
  background: #fff4d8;
  color: #765205;
  box-shadow: inset 3px 0 0 #c98200;
  font-weight: 850;
}

/* Jobs queue: one operational toolbar and stable rows, matching the approved queue contract. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.jobs-detail-breadcrumb{display:flex;gap:8px;align-items:center;margin:0 0 12px;color:#5b6d76;font-size:.82rem}.jobs-detail-breadcrumb a{color:#075d73;font-weight:800;text-decoration:none}.jobs-detail-breadcrumb a:hover{text-decoration:underline}
.jobs-page .workspace-summary-grid,.offer-kpi-grid{width:100%;max-width:none;gap:12px}.jobs-page .workspace-stat,.offer-kpi{min-height:134px;padding:16px 18px;border:1px solid #cad8de;border-radius:7px;background:#fff;box-shadow:none}.jobs-page a.workspace-stat{color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s,background-color .15s}.jobs-page .workspace-stat:hover,.jobs-page .workspace-stat.active,.offer-kpi:hover,.offer-kpi.active{border-color:#458da1;box-shadow:inset 0 3px 0 #0f718a;background:#fff}.jobs-page .workspace-stat span,.offer-kpi span{color:#5b6d76;font-size:.78rem;font-weight:800}.jobs-page .workspace-stat strong,.offer-kpi strong{margin-top:5px;color:#172026;font-size:1.55rem;line-height:1}.jobs-page .workspace-stat small,.offer-kpi small{margin-top:6px;color:#657780;font-size:.8rem}
.jobs-queue-panel{overflow:hidden;border:1px solid #cbdbe1;border-radius:8px;background:#fff}
.jobs-queue-toolbar{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:22px;align-items:end;padding:18px 20px;border-bottom:1px solid #dce6e9;background:#fbfcfd}
.jobs-queue-toolbar h2,.jobs-queue-toolbar p{margin:0}.jobs-queue-toolbar h2{font-size:1.05rem}.jobs-queue-toolbar p{margin-top:5px;color:#5b6d76}
.jobs-queue-filters{display:grid;grid-template-columns:minmax(230px,1fr) minmax(165px,.48fr) auto auto;gap:10px;align-items:center}
.jobs-queue-filters.has-publication-filter{grid-template-columns:minmax(230px,1fr) minmax(165px,.48fr) minmax(190px,.58fr) auto auto}
.jobs-queue-filters.invoice-preparation-filters{grid-template-columns:minmax(260px,1fr) repeat(4,minmax(150px,.34fr)) auto}
.jobs-queue-filters input,.jobs-queue-filters select{width:100%;min-height:42px;padding:0 12px;border:1px solid #bfcfd6;border-radius:7px;background:#fff;color:#23343c;font:inherit}
.jobs-queue-filters .secondary-action{min-height:42px;justify-content:center;white-space:nowrap}
.jobs-queue-table{display:grid}.jobs-queue-head,.jobs-queue-row{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(200px,1.15fr) minmax(110px,.62fr) minmax(120px,.72fr) minmax(160px,.85fr) 36px;gap:16px;align-items:center}
.jobs-queue-head{padding:10px 20px;background:#f5f8f9;color:#687a82;font-size:.72rem;font-weight:850;letter-spacing:.02em;text-transform:uppercase}
.jobs-queue-row{min-height:105px;padding:14px 20px;border-top:1px solid #dfe7ea;background:#fff;color:inherit;text-decoration:none}.jobs-queue-row:hover,.jobs-queue-row:focus-visible{background:#f9fbfc}
.jobs-queue-main{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;min-width:0}.jobs-queue-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:7px;background:#e6f2f5;color:#09647a;font-weight:900}.jobs-queue-main strong,.jobs-queue-cell strong{display:block;color:#172026;font-size:.94rem}.jobs-queue-main small,.jobs-queue-cell small{display:block;margin-top:3px;color:#5b6d76;font-size:.82rem}.jobs-queue-source{display:inline-flex;width:max-content;margin-top:5px;padding:2px 7px;border-radius:999px;background:#eef3f5;color:#50656e;font-size:.72rem;font-weight:750}.jobs-queue-status{display:grid;gap:5px}.jobs-queue-status .status-badge{justify-self:start}.jobs-queue-status .job-state-badges{align-items:flex-start}.jobs-queue-open{display:grid;place-items:center;width:34px;height:34px;border-radius:6px;color:#35626f;font-size:1.3rem;font-weight:850;text-decoration:none}.jobs-queue-open:hover,.jobs-queue-open:focus-visible{background:#e5f3f7;color:#075d73}.jobs-queue-empty{margin:0;padding:32px 20px}
@media(max-width:1280px){.jobs-queue-toolbar{grid-template-columns:1fr}}
@media(max-width:1400px){.jobs-queue-filters.invoice-preparation-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.jobs-queue-filters.invoice-preparation-filters .jobs-search-control{grid-column:1/-1}}
@media(max-width:900px){.jobs-queue-filters.invoice-preparation-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1040px){.jobs-queue-toolbar{grid-template-columns:1fr}.jobs-queue-head,.jobs-queue-row{grid-template-columns:minmax(245px,1.5fr) minmax(180px,1.1fr) minmax(120px,.7fr) minmax(150px,.85fr) 34px}.jobs-queue-head>span:nth-child(4),.jobs-queue-row>.jobs-queue-cell:nth-of-type(4){display:none}}
@media(max-width:700px){.jobs-queue-toolbar{gap:14px;padding:16px}.jobs-queue-filters{grid-template-columns:1fr 1fr}.jobs-queue-filters input{grid-column:1/-1}.jobs-queue-filters .secondary-action{width:100%}.jobs-queue-head{display:none}.jobs-queue-row{grid-template-columns:minmax(0,1fr) 36px;gap:10px;min-height:0;padding:16px}.jobs-queue-main{grid-column:1}.jobs-queue-row>.jobs-queue-cell{display:grid!important;grid-template-columns:105px minmax(0,1fr);gap:10px;grid-column:1}.jobs-queue-row>.jobs-queue-cell::before{color:#687a82;font-size:.72rem;font-weight:850;text-transform:uppercase}.jobs-queue-row>.jobs-queue-cell:nth-of-type(2)::before{content:"Kund"}.jobs-queue-row>.jobs-queue-cell:nth-of-type(3)::before{content:"Tid"}.jobs-queue-row>.jobs-queue-cell:nth-of-type(4)::before{content:"Team"}.jobs-queue-row>.jobs-queue-cell:nth-of-type(5)::before{content:"Status"}.jobs-queue-cell small{margin-top:0}.jobs-queue-status .status-badge{justify-self:start}.jobs-queue-open{grid-column:2;grid-row:1;align-self:start}}

/* Shared Web Admin page frame: list workspaces and Overview use one spacing and card contract. */
.workspace-page-frame {
  display: grid;
  align-content: start;
  width: 100%;
  max-width: none;
  row-gap: var(--workspace-section-gap);
}

/* Activity log: company-wide accountability without technical audit noise. */
.activity-shell {
  width: 100%;
  max-width: none;
}

.activity-header .office-lede {
  max-width: 760px;
}

.activity-history-action {
  gap: 8px;
}

.activity-history-action svg,
.activity-input-with-icon svg,
.activity-advanced-filters summary svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.activity-filter-card,
.activity-list-card {
  overflow: hidden;
  border: 1px solid #cbdbe1;
  border-radius: 8px;
  background: var(--surface-raised);
}

.activity-filter-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px 18px;
  padding: 18px 20px;
}

.activity-filter-primary {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 14px;
  align-items: end;
}

.activity-filter-primary label,
.activity-filter-advanced label,
.activity-sort-form label {
  display: grid;
  gap: 7px;
  min-width: 0;
  color: var(--ink-primary);
  font-size: 14px;
  font-weight: 750;
}

.activity-filter-primary input,
.activity-filter-primary select,
.activity-filter-advanced input,
.activity-sort-form select {
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid #bdced5;
  border-radius: 7px;
  background: #fff;
  color: var(--ink-primary);
  font: inherit;
}

.activity-search-field {
  grid-column: span 2;
}

.activity-input-with-icon {
  position: relative;
  display: block;
}

.activity-input-with-icon svg {
  position: absolute;
  top: 12px;
  left: 12px;
  color: var(--ink-secondary);
  pointer-events: none;
}

.activity-input-with-icon input {
  padding-left: 42px;
}

.activity-period {
  grid-column: span 2;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.activity-period legend {
  margin-bottom: 7px;
  color: var(--ink-primary);
  font-size: 14px;
  font-weight: 750;
}

.activity-period-options {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  min-height: 44px;
  border: 1px solid #bdced5;
  border-radius: 7px;
  background: #fff;
}

.activity-period-options input {
  position: absolute;
  width: 1px;
  height: 1px;
  min-height: 0;
  padding: 0;
  border: 0;
  opacity: 0;
  pointer-events: none;
}

.activity-period-options label {
  display: grid;
  place-items: center;
  border: 0;
  border-right: 1px solid #d5e0e4;
  background: #fff;
  color: var(--ink-primary);
  font: inherit;
  cursor: pointer;
}

.activity-period-options label:last-child {
  border-right: 0;
}

.activity-period-options label:hover,
.activity-period-options input:focus-visible + label,
.activity-period-options input:checked + label {
  color: #fff;
  background: var(--primary);
}

.activity-advanced-filters {
  align-self: center;
}

.activity-advanced-filters summary {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--primary);
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
  list-style: none;
}

.activity-advanced-filters summary::-webkit-details-marker {
  display: none;
}

.activity-filter-advanced {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 14px;
  margin-top: 14px;
}

.activity-filter-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
}

.activity-filter-actions .primary-action {
  min-width: 112px;
  min-height: 44px;
}

.activity-filter-actions > a {
  color: var(--primary);
  font-weight: 750;
  text-decoration: none;
}

.activity-filter-actions > a:hover {
  text-decoration: underline;
}

.activity-list-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 16px 20px;
  border-bottom: 1px solid #dce6e9;
}

.activity-list-toolbar h2,
.activity-list-toolbar p {
  margin: 0;
}

.activity-list-toolbar h2 {
  font-size: 18px;
}

.activity-list-toolbar p {
  margin-top: 3px;
  color: var(--ink-secondary);
  font-size: 13px;
}

.activity-sort-form {
  width: min(100%, 190px);
}

.activity-table {
  display: grid;
}

.activity-table-head,
.activity-row {
  display: grid;
  grid-template-columns: minmax(300px, 1.8fr) minmax(130px, .65fr) minmax(130px, .65fr) minmax(150px, .72fr) minmax(150px, .78fr);
  gap: 16px;
  align-items: center;
}

.activity-table-head {
  padding: 10px 20px;
  background: #f5f8f9;
  color: #526670;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.activity-row {
  min-height: 96px;
  padding: 14px 20px;
  border-top: 1px solid #dfe7ea;
  background: #fff;
}

.activity-row:first-of-type {
  border-top: 0;
}

.activity-row:hover {
  background: #fbfcfd;
}

.activity-event {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-width: 0;
}

.activity-event-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  color: var(--primary);
  background: #e5f3f7;
}

.activity-event-icon.category-usermanagement {
  color: #8a5a00;
  background: #fff2d6;
}

.activity-event-icon.category-invoicetransfer {
  color: #1c6a3a;
  background: #e7f5eb;
}

.activity-event-icon svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.activity-event strong,
.activity-event small,
.activity-actor strong,
.activity-date time {
  display: block;
  overflow-wrap: anywhere;
}

.activity-event strong {
  color: var(--ink-primary);
  font-size: 15px;
}

.activity-event small {
  margin-top: 4px;
  color: var(--ink-secondary);
  font-size: 13px;
}

.activity-area-badge {
  display: inline-flex;
  width: fit-content;
  padding: 4px 9px;
  border-radius: 999px;
  color: #075d73;
  background: #e2f2f6;
  font-size: 12px;
  font-weight: 800;
}

.activity-actor strong,
.activity-date time {
  color: var(--ink-primary);
  font-size: 14px;
  font-weight: 650;
}

.activity-cell-label,
.activity-area-label {
  display: none;
}

.activity-row-action {
  text-align: right;
}

.activity-row-action a {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  color: var(--primary);
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}

.activity-row-action a:hover {
  text-decoration: underline;
}

.activity-list-footer {
  display: flex;
  justify-content: center;
  padding: 16px 20px;
  border-top: 1px solid #dfe7ea;
}

.activity-empty {
  display: grid;
  justify-items: center;
  gap: 8px;
  padding: 42px 20px;
  text-align: center;
}

.activity-empty > svg {
  width: 34px;
  height: 34px;
  fill: none;
  stroke: var(--primary);
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.activity-empty h3,
.activity-empty p {
  margin: 0;
}

.activity-empty p {
  max-width: 540px;
  color: var(--ink-secondary);
}

.activity-empty a {
  color: var(--primary);
  font-weight: 800;
}

@media (max-width: 1100px) {
  .activity-table-head,
  .activity-row {
    grid-template-columns: minmax(280px, 1.6fr) minmax(110px, .6fr) minmax(120px, .6fr) minmax(140px, .7fr) minmax(130px, .7fr);
    gap: 12px;
  }
}

@media (max-width: 900px) {
  .activity-filter-primary,
  .activity-filter-advanced {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .activity-search-field,
  .activity-period {
    grid-column: span 1;
  }

  .activity-table-head {
    display: none;
  }

  .activity-row {
    grid-template-columns: minmax(0, 1fr) minmax(130px, .42fr);
    gap: 12px 18px;
    padding: 16px;
  }

  .activity-event {
    grid-column: 1;
    grid-row: 1 / span 2;
  }

  .activity-area,
  .activity-actor,
  .activity-date {
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    gap: 8px;
    grid-column: 2;
  }

  .activity-area-label,
  .activity-cell-label {
    display: block;
    color: var(--ink-secondary);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
  }

  .activity-row-action {
    grid-column: 2;
  }
}

@media (max-width: 650px) {
  .activity-header {
    display: grid;
  }

  .activity-header .workspace-page-actions,
  .activity-history-action {
    width: 100%;
  }

  .activity-filter-card {
    grid-template-columns: 1fr;
    padding: 16px;
  }

  .activity-filter-primary,
  .activity-filter-advanced {
    grid-template-columns: 1fr;
  }

  .activity-search-field,
  .activity-period {
    grid-column: auto;
  }

  .activity-filter-actions {
    justify-content: stretch;
  }

  .activity-filter-actions .primary-action {
    flex: 1;
  }

  .activity-list-toolbar {
    align-items: stretch;
    padding: 14px 16px;
  }

  .activity-list-toolbar p {
    display: none;
  }

  .activity-sort-form {
    width: 150px;
  }

  .activity-row {
    grid-template-columns: 1fr;
    gap: 10px;
    min-height: 0;
  }

  .activity-event {
    grid-column: 1;
    grid-row: auto;
    grid-template-columns: 38px minmax(0, 1fr);
  }

  .activity-event-icon {
    width: 38px;
    height: 38px;
  }

  .activity-area,
  .activity-actor,
  .activity-date {
    grid-template-columns: 88px minmax(0, 1fr);
    grid-column: 1;
    padding-left: 52px;
  }

  .activity-row-action {
    grid-column: 1;
    padding-top: 4px;
    padding-left: 52px;
    text-align: left;
  }

  .activity-row-action a {
    justify-content: flex-start;
    white-space: normal;
  }
}

.workspace-page-frame > *,
.settings-shell:not(.operator-console-shell) > * {
  margin-block: 0;
}

.jobs-page .jobs-workspace-shell.workspace-page-frame {
  padding-inline: 0;
}

.workspace-page-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
  margin: 0;
}

.workspace-page-header > div:first-child {
  min-width: 0;
}

.workspace-page-header h1 {
  margin: 2px 0 4px;
}

.workspace-page-header .office-lede {
  margin: 0;
}

.workspace-page-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0;
}

.workspace-page-actions > a,
.workspace-page-actions > button {
  min-height: 44px;
  justify-content: center;
  white-space: normal;
  overflow-wrap: anywhere;
  max-width: 100%;
}

.workspace-page-frame > .customer-directory {
  margin-top: 0;
}

.workspace-page-frame .workspace-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
  max-width: none;
  margin: 0;
}

.workspace-kpi-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  min-width: 0;
  min-height: 104px;
  padding: 14px 16px;
  border: 1px solid #cad8de;
  border-radius: 7px;
  background: var(--surface-raised);
  color: var(--ink-primary);
  box-shadow: none;
  text-decoration: none;
  transition: border-color 150ms ease, box-shadow 150ms ease, background-color 150ms ease;
}

.workspace-kpi-card:hover,
.workspace-kpi-card:focus-visible,
.workspace-kpi-card.active {
  border-color: #458da1;
  background: var(--surface-raised);
  box-shadow: inset 0 3px 0 #0f718a;
}

.workspace-kpi-card > span,
.workspace-kpi-card > small {
  color: #5b6d76;
  font-size: 0.8rem;
}

.workspace-kpi-card > span {
  font-weight: 800;
}

.workspace-kpi-card > strong {
  margin: 0;
  color: #172026;
  font-size: 1.5rem;
  line-height: 1;
}

.workspace-kpi-card > small {
  align-self: flex-start;
  margin: 0;
  line-height: 1.3;
}

/* Overview and Jobs expose the same operational queues and therefore share one density. */
:is(.overview-workspace-shell, .jobs-workspace-shell) .workspace-kpi-card {
  min-height: 104px;
  padding: 14px 16px;
}

:is(.overview-workspace-shell, .jobs-workspace-shell) .workspace-kpi-card > strong {
  margin: 0;
  font-size: 1.5rem;
}

:is(.overview-workspace-shell, .jobs-workspace-shell) .workspace-kpi-card > small {
  margin: 0;
  line-height: 1.3;
}

.overview-workspace-shell .office-topbar,
.overview-workspace-shell .overview-first-work,
.overview-workspace-shell .overview-metrics {
  margin-bottom: 0;
}

.overview-workspace-shell .overview-attention-card,
.overview-workspace-shell .overview-today-card,
.overview-workspace-shell .overview-optional-setup {
  border-color: #cbdbe1;
  border-radius: 8px;
}

@media (max-width: 980px) {
  .workspace-page-frame .workspace-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .workspace-page-frame,
  .settings-shell {
    --workspace-section-gap: 14px;
  }
}

@media (max-width: 680px) {
  .workspace-page-header {
    display: grid;
    gap: 16px;
  }

  .workspace-page-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .workspace-page-actions > :only-child,
  .workspace-page-actions > a,
  .workspace-page-actions > button {
    width: 100%;
    text-align: center;
  }
}

@media (max-width: 430px) {
  .workspace-page-frame .workspace-kpi-grid,
  .workspace-page-actions {
    grid-template-columns: 1fr;
  }
}

/* Materials workspace */
.materials-shell > .workspace-page-header { min-height: 104px; align-items: flex-start; }
.materials-shell > .workspace-page-header .office-lede { max-width: 760px; line-height: 1.5; }
.materials-tabs { display:flex; gap:28px; min-height:58px; padding:0 18px; align-items:end; border:1px solid #cad8de; border-radius:8px; background:#fff; overflow-x:auto; }
.materials-tabs a { display:flex; gap:8px; align-items:center; min-height:58px; padding:0 0 14px; border-bottom:3px solid transparent; color:#52636c; font-weight:800; text-decoration:none; white-space:nowrap; }
.materials-tabs a:hover,.materials-tabs a:focus-visible,.materials-tabs a.active { color:#075f76; border-bottom-color:#0f718a; }
.materials-tabs a span { min-width:22px; padding:2px 7px; border-radius:999px; background:#e5f2f5; text-align:center; font-size:.75rem; }
.materials-kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.materials-kpi-grid article,.materials-kpi-grid>a { display:grid; gap:5px; min-height:112px; padding:16px 18px; border:1px solid #cad8de; border-radius:7px; background:#fff; color:#172026; text-decoration:none; }
.materials-kpi-grid span { color:#566a74; font-size:.8rem; font-weight:800; }
.materials-kpi-grid strong { font-size:1.65rem; line-height:1; }
.materials-kpi-grid small { color:#637780; }
.materials-kpi-grid>a:hover,.materials-kpi-grid>a:focus-visible { border-color:#458da1; box-shadow:inset 0 3px 0 #0f718a; }
.materials-directory,.materials-queue-panel { overflow:hidden; border:1px solid #cad8de; border-radius:8px; background:#fff; }
.materials-toolbar { display:grid; grid-template-columns:minmax(280px,2fr) minmax(180px,1fr) minmax(180px,1fr) auto; gap:12px; align-items:end; padding:16px 18px; border-bottom:1px solid #d6e1e5; background:#f8fbfc; }
.materials-toolbar label,.material-form label,.material-review-row label { display:grid; gap:7px; color:#273840; font-weight:800; }
.materials-toolbar label>span,.material-form label>span,.material-review-row label>span { font-size:.82rem; }
.materials-toolbar input,.materials-toolbar select,.material-form input,.material-form select,.material-form textarea,.material-review-row input,.material-review-row select { width:100%; min-height:46px; padding:10px 12px; border:1px solid #c8d8de; border-radius:7px; background:#fff; color:#172026; font:inherit; }
.materials-table-head,.materials-row { display:grid; grid-template-columns:minmax(260px,2.2fr) .55fr 1fr 1fr 1fr 88px; gap:16px; align-items:center; padding:14px 18px; }
.materials-table-head { color:#667a83; font-size:.75rem; font-weight:900; text-transform:uppercase; }
.materials-row { min-height:84px; border-top:1px solid #dbe4e8; }
.materials-row:hover { background:#f8fbfc; }
.materials-row>span,.materials-row>div { display:grid; gap:3px; }
.materials-row small,.material-identity small { color:#61747d; font-size:.78rem; font-weight:500; }
.material-identity { display:flex!important; gap:12px!important; align-items:center; min-width:0; }
.material-row-icon,.material-import-icon { display:grid; flex:0 0 38px; width:38px; height:38px; place-items:center; border-radius:7px; background:#e8f3f6; color:#00647b; font-weight:900; }
.material-source-badge,.material-status-badge { display:inline-flex; width:max-content; max-width:100%; padding:4px 8px; border-radius:999px; background:#e5f2f5; color:#075f76; font-size:.75rem; font-weight:800; }
.material-price-needed { display:inline-flex; width:max-content; max-width:100%; padding:4px 8px; border-left:3px solid #d69a16; background:#fff4d6; color:#684b0c; font-size:.78rem; font-weight:800; }
.material-icon-action,.material-remove-action { display:grid; width:36px; height:36px; place-items:center; border:0; border-radius:6px; background:transparent; color:#075f76; text-decoration:none; font-size:1.15rem; cursor:pointer; }
.material-icon-action:hover,.material-remove-action:hover { background:#edf5f7; }
.material-edit-action::before { width:18px; height:18px; background:currentColor; content:""; -webkit-mask:url('/icons/job-sections/pencil.svg') center/contain no-repeat; mask:url('/icons/job-sections/pencil.svg') center/contain no-repeat; }
.material-delete-shortcut { color:#9a2f27; }
.material-delete-shortcut::before { width:18px; height:18px; background:currentColor; content:""; -webkit-mask:url('/icons/job-sections/trash-2.svg') center/contain no-repeat; mask:url('/icons/job-sections/trash-2.svg') center/contain no-repeat; }
.material-delete-shortcut:hover,.material-delete-shortcut:focus-visible { background:#fff1ef; outline:none; }
.material-discard-action { color:#9a2f27; }
.material-discard-action::before { width:18px; height:18px; background:currentColor; content:""; -webkit-mask:url('/icons/job-sections/trash-2.svg') center/contain no-repeat; mask:url('/icons/job-sections/trash-2.svg') center/contain no-repeat; }
.material-discard-action:hover,.material-discard-action:focus-visible { background:#fff1ef; outline:none; }
.material-source-unavailable { display:inline-flex; align-items:center; min-height:32px; padding:5px 9px; border:1px solid #e2b8b3; border-radius:6px; background:#fff5f3; color:#8b2f29; font-size:.78rem; font-weight:800; }
.materials-import-discard-dialog .materials-import-discard-name { display:block; margin-top:14px; color:#17262d; overflow-wrap:anywhere; }
.material-form { display:grid; gap:18px; padding:20px; }
.material-drawer { width:min(720px,100%); }
.material-drawer .material-form { padding:24px 30px 20px; }
.material-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.material-form textarea { min-height:92px; resize:vertical; }
.material-form footer,.material-review-footer { display:flex; justify-content:flex-end; gap:10px; padding-top:8px; }
.material-drawer:has(.material-catalog-editor){display:flex;flex-direction:column;overflow:hidden}.material-drawer:has(.material-catalog-editor)>.drawer-heading{flex:0 0 auto}.material-drawer .material-catalog-editor{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;gap:0;padding:0}.material-editor-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:0 30px}.material-editor-section{display:grid;gap:16px;padding:24px 0;border-bottom:1px solid #dce6ea}.material-editor-section>header h3,.material-editor-section>header p{margin:0}.material-editor-section>header h3{font-size:1rem}.material-editor-section>header p{margin-top:4px;color:#60737c;font-size:.82rem;line-height:1.45}.material-editor-section label>small{color:#60737c;font-size:.76rem;font-weight:500}.material-editor-more{border-bottom:1px solid #dce6ea}.material-editor-more>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 0;color:#075f76;cursor:pointer;list-style:none}.material-editor-more>summary::-webkit-details-marker{display:none}.material-editor-more>summary::after{content:'⌄';font-size:1.2rem;font-weight:900}.material-editor-more[open]>summary::after{transform:rotate(180deg)}.material-editor-more>summary>span{display:grid;gap:3px}.material-editor-more>summary small{max-width:520px;color:#60737c;font-size:.76rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-editor-more>.material-form-grid{padding:0 0 24px}.material-value-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch}.material-value-input input{border-radius:7px 0 0 7px!important}.material-value-input b{display:grid;min-width:52px;place-items:center;padding:0 10px;border:1px solid #c8d8de;border-left:0;border-radius:0 7px 7px 0;background:#f5f8f9;color:#405761;font-size:.78rem}.material-catalog-editor input[type=number],.job-material-price-input input[type=number]{appearance:textfield}.material-catalog-editor input[type=number]::-webkit-inner-spin-button,.material-catalog-editor input[type=number]::-webkit-outer-spin-button,.job-material-price-input input[type=number]::-webkit-inner-spin-button,.job-material-price-input input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.material-basis-warning{margin:0;padding:11px 13px;border-left:3px solid #d69a16;background:#fff7df;color:#684b0c;font-size:.8rem;line-height:1.45}.material-price-metadata{display:grid;gap:8px;margin:0;padding:12px 14px;background:#f5f8f9}.material-price-metadata div{display:grid;grid-template-columns:120px 1fr;gap:12px}.material-price-metadata dt{color:#60737c;font-size:.76rem;font-weight:800}.material-price-metadata dd{margin:0;color:#253840;font-size:.8rem}.material-price-metadata a,.material-source-history a{margin-left:8px;color:#075f76;font-weight:800}.material-pricing-mode{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:0;padding:3px;border:1px solid #c9d9df;border-radius:8px;background:#edf4f6}.material-pricing-mode label{position:relative}.material-pricing-mode input{position:absolute;opacity:0;pointer-events:none}.material-pricing-mode span{display:block;padding:10px 12px;border-radius:6px;text-align:center;color:#526873;font-size:.82rem;font-weight:800;cursor:pointer}.material-pricing-mode input:checked+span{background:#fff;color:#075f76;box-shadow:0 1px 3px rgba(25,52,62,.16)}[data-material-fixed-panel],[data-material-markup-panel]{display:grid;gap:10px}.material-calculated-preview{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0;padding:10px 12px;background:#f5f8f9;color:#526873;font-size:.8rem}.material-calculated-preview strong{color:#17262d}.material-preview-unavailable{color:#8a6410}.material-editor-actions{flex:0 0 auto;margin:0!important;padding:14px 30px!important;border-top:1px solid #d6e2e7;background:#fff;box-shadow:0 -8px 18px rgba(28,56,66,.06)}.material-source-history{margin:0;padding:18px 0}.material-source-history ol{margin-top:12px}.material-source-history li>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.material-source-history li>a{margin-left:0;width:max-content}.job-material-drawer-form>footer{position:sticky;bottom:0;z-index:2;margin-inline:-28px;padding:14px 28px!important;border-top:1px solid #d6e2e7;background:#fff;box-shadow:0 -8px 18px rgba(28,56,66,.06)}
.material-drawer{width:min(680px,100%)}
.material-editor-body{padding-inline:26px}
.material-editor-section{gap:13px;padding-block:20px}
.material-editor-section>header p{margin-top:3px;max-width:560px;font-size:.8rem;line-height:1.4}
.material-editor-more>summary{padding-block:16px}
.material-editor-more>.material-form-grid{padding-bottom:20px}
.material-value-input b{min-width:48px;padding-inline:9px;font-size:.76rem}
.material-pricing-mode{width:100%;max-width:440px;gap:3px}
.material-pricing-mode span{padding:8px 11px;font-size:.8rem}
.material-pricing-mode input:focus-visible+span{outline:2px solid #08758e;outline-offset:1px}
.material-pricing-panel{display:grid;gap:8px;width:100%;max-width:440px}
.material-pricing-panel[hidden]{display:none}
.material-calculated-preview{padding:9px 11px;border-left:3px solid #bfd6dd;font-size:.78rem}
.material-preview-unavailable{max-width:440px}
.material-editor-actions{padding:13px 26px!important}
.material-validation-summary{margin:18px 0 0;padding:11px 13px;border-left:3px solid #b42318;background:#fff2f0;color:#8a281e;font-size:.8rem;font-weight:750;line-height:1.4}
.material-validation-summary.validation-summary-valid{display:none}
.material-validation-summary ul{margin:0;padding-left:18px}
.material-validation-summary li+li{margin-top:4px}
.material-catalog-editor .field-error:empty{display:none}
.material-catalog-editor .input-validation-error{border-color:#c84b43!important;box-shadow:0 0 0 3px rgba(200,75,67,.12)}
.material-delete-dialog .material-delete-name { display:block; margin-top:14px; color:#17262d; overflow-wrap:anywhere; }
.material-import-duplicate-warning { display:grid; gap:4px; margin-top:12px; padding:11px 12px; border-left:3px solid #d69a16; background:#fff7df; color:#684b0c; font-size:.8rem; line-height:1.4; }
.material-import-duplicate-warning strong { color:#563e0a; }
body:has(.material-intake-backdrop){overflow:hidden}
.material-intake-drawer{display:flex;flex-direction:column;overflow:hidden}
.material-intake-drawer>.drawer-heading{flex:0 0 auto}
.material-intake-drawer .drawer-close{flex:0 0 40px}
.material-intake-drawer .material-intake-form{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;gap:0;padding:0}
.material-intake-body{display:grid;align-content:start;gap:22px;padding-block:24px;overscroll-behavior:contain}
.material-intake-body label>small{color:#60737c;font-size:.78rem;font-weight:500;line-height:1.5}
.material-intake-body .customer-context-message{margin:0}
.material-intake-drawer .material-editor-actions{display:grid;grid-template-columns:1fr 1fr}
.material-intake-drawer .material-editor-actions>*{min-width:0;text-align:center}
.material-intake-form .material-file-drop{color:#075d73}
.material-intake-form .material-file-drop>span:first-child{font-size:1rem}
.material-intake-form .material-file-drop>.customer-file-button{font-size:.9rem}
.material-intake-form .material-file-drop>.customer-file-name{max-width:100%;font-size:13px}
.material-intake-form .material-file-drop>.customer-file-native{width:1px;height:1px;min-height:0;padding:0;border:0}
.materials-queue-panel>header { display:flex; justify-content:space-between; gap:18px; align-items:center; padding:18px; border-bottom:1px solid #d6e1e5; }
.materials-queue-panel>header h2 { margin:0; font-size:1.08rem; }
.materials-queue-panel>header p { margin:5px 0 0; color:#5e727b; }
.materials-document-count{color:#405963;font-size:.82rem;font-weight:800;white-space:nowrap}
.materials-intake-filters{display:grid;grid-template-columns:minmax(260px,2fr) minmax(170px,1fr) minmax(170px,1fr) auto auto;gap:12px;align-items:end;padding:14px 18px;border-bottom:1px solid #d6e1e5;background:#f8fbfc}
.materials-intake-filters label{display:grid;gap:6px;color:#334a54;font-size:.78rem;font-weight:800}
.materials-intake-filters input,.materials-intake-filters select{width:100%;min-height:40px;padding:8px 10px;border:1px solid #c6d6dc;border-radius:6px;background:#fff;color:#17262d;font:inherit}
.materials-intake-filter-actions{display:flex;gap:8px;align-items:center;min-height:40px}.materials-intake-filter-actions .button-link{white-space:nowrap}
.materials-intake-filter-result{align-self:center;color:#60737d;font-size:.8rem;white-space:nowrap}
.materials-intake-head,.materials-intake-row { display:grid; grid-template-columns:minmax(280px,2fr) 1fr minmax(220px,1.2fr) minmax(220px,auto); gap:16px; align-items:center; padding:14px 18px; }
.materials-intake-head { color:#667a83; font-size:.75rem; font-weight:900; text-transform:uppercase; }
.materials-intake-row { border-top:1px solid #dbe4e8; }
.materials-intake-row>span,.materials-intake-row .material-identity>span:last-child { display:grid; gap:6px; }
.materials-intake-row small { color:#60737d; }
.materials-incoming{border-bottom:1px solid #dbe4e8;background:#fbfdfe}
.materials-incoming>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border-top:1px solid #dbe4e8;border-bottom:1px solid #dbe4e8}
.materials-incoming>header h3,.materials-incoming>header p{margin:0}.materials-incoming>header p{margin-top:4px;color:#60737d;font-size:.82rem}
.materials-incoming>header>strong{display:inline-flex;min-width:28px;min-height:28px;align-items:center;justify-content:center;border-radius:999px;background:#dff3f7;color:#075f76}
.materials-incoming-row{display:grid;grid-template-columns:minmax(280px,1.5fr) minmax(260px,1fr) minmax(420px,auto);gap:18px;align-items:center;padding:16px 18px;border-bottom:1px solid #dbe4e8}
.materials-incoming-row:last-child{border-bottom:0}.materials-incoming-origin{display:grid;gap:5px}.materials-incoming-origin small{color:#60737d}.materials-incoming-origin a,.materials-intake-row a:not(.primary-action):not(.secondary-action){color:#075f76;font-weight:800;text-decoration-thickness:1px;text-underline-offset:2px}
.materials-incoming-row .materials-row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.materials-row-actions { display:flex; gap:8px; justify-content:flex-end; align-items:center; flex-wrap:wrap; }
.materials-clarification{position:relative}.materials-clarification>summary{list-style:none;cursor:pointer}.materials-clarification>summary::-webkit-details-marker{display:none}.materials-clarification[open]{flex-basis:100%;padding:10px;border:1px solid #cbdbe2;border-radius:8px;background:#f7fafb}.materials-clarification form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:8px;align-items:end}.materials-clarification label{display:grid;gap:4px;font-size:.78rem;font-weight:800;color:#324a56}.materials-clarification textarea{width:100%;min-height:58px;padding:8px 10px;border:1px solid #b9cbd4;border-radius:6px;resize:vertical;font:inherit;color:#142027;background:#fff}
.primary-action.compact,.secondary-action.compact { min-height:36px; padding:7px 11px; font-size:.82rem; }
.workspace-back-link { color:#075f76; font-weight:800; }
.materials-import-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.materials-import-grid article { display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto 1fr auto; gap:14px; align-items:start; min-height:220px; padding:20px; border:1px solid #cad8de; border-radius:8px; background:#fff; box-shadow:0 8px 22px rgba(18,54,65,.05); }
.materials-import-grid article:hover { border-color:#8eb3be; }
.materials-import-grid article>a { grid-column:1/-1; align-self:end; width:100%; text-align:center; }
.materials-import-grid h2 { margin:0 0 6px; font-size:1rem; }
.materials-import-grid p { margin:0; color:#5f727b; line-height:1.5; }
.materials-import-history article { display:grid; grid-template-columns:minmax(220px,1.5fr) 1fr auto; gap:18px; align-items:center; min-height:62px; padding:15px 18px; border-top:1px solid #dbe4e8; }
.materials-import-history article:hover { background:#f8fbfc; }
.materials-import-history time { color:#61747d; font-size:.86rem; }

@media (max-width:1100px){
  .materials-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .materials-toolbar{grid-template-columns:1fr 1fr}
  .materials-table-head{display:none}
  .materials-row{grid-template-columns:minmax(220px,2fr) repeat(4,1fr) 88px}
  .materials-intake-head{display:none}
  .materials-intake-row{grid-template-columns:minmax(240px,1.5fr) 1fr 1.2fr}.materials-intake-row .materials-row-actions{grid-column:1/-1}
  .materials-incoming-row{grid-template-columns:1fr 1fr}.materials-incoming-row .materials-row-actions{grid-column:1/-1;justify-content:flex-start}
  .materials-intake-filters{grid-template-columns:1fr 1fr}.materials-intake-search{grid-column:1/-1}.materials-intake-filter-result{justify-self:end}
  .material-review-table>header{display:none}.material-review-row{grid-template-columns:repeat(3,minmax(0,1fr))}.material-review-row>label:first-of-type{grid-column:span 2}.material-review-actions{grid-column:1/-1}.material-review-source{grid-template-columns:1fr 1fr}.material-review-source>.secondary-action{justify-self:start}
}
@media (max-width:760px){
  .materials-shell > .workspace-page-header { min-height:0; }
  .materials-kpi-grid,.materials-import-grid,.material-form-grid,.material-review-header,.material-review-source{grid-template-columns:1fr}
  .materials-toolbar{grid-template-columns:1fr}
  .materials-row{grid-template-columns:1fr 1fr;gap:12px}.materials-row>.material-identity{grid-column:1/-1}.materials-row>span:last-child{justify-self:end}
  .materials-intake-row{grid-template-columns:1fr}.materials-intake-row .materials-row-actions{grid-column:auto;justify-content:flex-start}
  .materials-incoming-row{grid-template-columns:1fr}.materials-incoming-row .materials-row-actions{grid-column:auto}
  .materials-intake-filters{grid-template-columns:1fr}.materials-intake-search{grid-column:auto}.materials-intake-filter-result{justify-self:start}
  .materials-clarification form{grid-template-columns:1fr}
  .material-review-row{grid-template-columns:1fr 1fr}.material-review-row>label:first-of-type{grid-column:1/-1}
  .material-editor-body{padding-inline:18px}.material-editor-actions{padding:12px 18px!important}.material-price-metadata div{grid-template-columns:1fr;gap:3px}
}
@media (max-width:480px){
  .materials-row,.material-review-row{grid-template-columns:1fr}.materials-row>.material-identity,.material-review-row>label:first-of-type{grid-column:auto}
  .materials-row-actions,.material-review-actions,.material-form footer,.material-review-footer{display:grid;grid-template-columns:1fr;width:100%}
}

/* Invoice release completion */
.invoice-kpis .workspace-kpi-card{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.workspace-page-frame .invoice-kpis{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.invoice-kpis .workspace-kpi-card>strong{margin-top:0}
.invoice-create-drawer select,.invoice-create-drawer input[type="text"],.invoice-create-drawer input[type="search"]{width:100%;min-height:46px;padding:10px 12px;border:1px solid #cad9e1;border-radius:7px;background:#fff;color:#17262d;font:inherit}
.invoice-create-drawer select:focus-visible,.invoice-create-drawer input:focus-visible{outline:3px solid rgba(8,117,142,.18);border-color:#08758e}
.invoice-job-option.is-unavailable{cursor:not-allowed;background:#f5f7f8;color:#64757d}.invoice-job-option.is-unavailable input{cursor:not-allowed}.invoice-preliminary-total{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:14px;padding:14px 16px;border-top:1px solid #d9e4e8;background:#f4f9fa}.invoice-preliminary-total strong{font-size:1.15rem}.invoice-detail-hero .workspace-page-actions form{margin:0}.icon-action.danger{color:#9a2f27}.icon-action.danger:hover{background:#fff1ef;border-color:#dca49e}
@media (max-width:760px){.invoice-preliminary-total{align-items:flex-start;flex-direction:column;gap:5px}.invoice-detail-hero .workspace-page-actions{width:100%;justify-content:flex-start}.invoice-detail-hero .workspace-page-actions form{margin-left:auto}}

/* Job detail workspaces share the same full-width, responsive structure as customer detail. */
.job-detail-mode .jobs-list-section,
.job-detail-mode .job-draft-list,
.job-detail-mode .job-draft-row,
.job-detail-mode .job-draft-row > .job-tab-content,
.job-detail-mode .job-draft-row > .job-planning-attention {
  width: 100%;
  min-width: 0;
  max-width: none;
  box-sizing: border-box;
}

.job-detail-mode .jobs-list-section {
  display: block;
  grid-template-columns: none;
}

.job-detail-mode .job-draft-row > .job-tab-content {
  display: grid;
}

.job-detail-mode .job-planning-attention {
  margin: 0 0 14px;
  padding: 15px 18px;
}

.job-detail-mode .job-planning-attention strong {
  display: block;
  margin-bottom: 5px;
}

.job-detail-mode .job-planning-attention ul {
  margin-bottom: 0;
}

.job-planning-tab-layout {
  grid-template-columns: minmax(320px, 0.85fr) minmax(480px, 1.15fr);
  gap: 16px;
  align-items: start;
}

.job-planning-tab-layout > .job-planning-form,
.job-planning-tab-layout > .job-checklist-planning-panel,
.job-planning-tab-layout > .field-team-panel,
.job-planning-tab-layout > .workflow-policy-impact {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.job-planning-tab-layout > .job-brief-form {
  grid-template-columns: 1fr;
}

.job-planning-tab-layout > .job-planning-form:not(.job-brief-form) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.job-planning-tab-layout > .job-planning-form:not(.job-brief-form) > :is(h3, p, fieldset, button) {
  grid-column: 1 / -1;
}

.job-planning-tab-layout > .job-planning-form > h3 {
  padding-bottom: 12px;
  border-bottom: 1px solid #dbe5e8;
}

.job-planning-tab-layout > .job-planning-form > button {
  width: auto;
  min-width: 180px;
  justify-self: start;
}

.job-planning-tab-layout > .job-checklist-planning-panel,
.job-planning-tab-layout > .field-team-panel,
.job-planning-tab-layout > .workflow-policy-impact {
  grid-column: 1 / -1;
}

.job-planning-tab-layout .inline-choice-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  min-width: 0;
  padding: 14px 16px;
}

.job-planning-tab-layout .inline-choice-list label {
  min-width: min(180px, 100%);
}

.job-planning-tab-layout .field-team-panel {
  padding: 0;
  overflow: hidden;
}

.job-planning-tab-layout .field-team-panel > strong,
.job-planning-tab-layout .field-team-panel > p {
  margin: 0;
  padding-inline: 20px;
}

.job-planning-tab-layout .field-team-panel > strong {
  padding-top: 18px;
}

.job-planning-tab-layout .field-team-panel > p {
  padding-top: 5px;
  padding-bottom: 17px;
  border-bottom: 1px solid #dbe5e8;
  color: #596c75;
}

.job-planning-tab-layout .field-lead-form,
.job-planning-tab-layout .field-readiness-row {
  margin: 0;
  padding: 18px 20px;
}

.job-planning-tab-layout .field-readiness-row {
  grid-template-columns: minmax(210px, 0.65fr) minmax(0, 1.35fr);
}

.job-field-work-layout,
.job-review-tab-layout,
.job-files-layout,
.job-history-layout {
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.job-field-work-layout > *,
.job-review-tab-layout > *,
.job-files-layout > *,
.job-history-layout > * {
  width: 100%;
  min-width: 0;
  max-width: none;
  box-sizing: border-box;
}

.job-field-work-layout .job-checklist-panel,
.job-field-work-layout .job-checklist-empty,
.job-review-tab-layout .job-review-panel,
.job-review-tab-layout .job-tab-empty-state,
.job-review-tab-layout .job-exception-actions,
.job-files-layout .job-attachment-panel,
.job-history-layout .job-history-panel,
.job-history-layout .job-tab-empty-state {
  margin: 0;
}

.job-field-work-layout .job-checklist-empty,
.job-review-tab-layout .job-tab-empty-state,
.job-history-layout .job-tab-empty-state {
  min-height: 144px;
  padding: 24px;
}

.job-review-tab-layout .job-exception-actions {
  padding: 0;
  overflow: hidden;
}

.job-review-tab-layout .job-exception-actions > summary {
  min-height: 56px;
  padding: 17px 20px;
  border-bottom: 0;
  background: #fff;
}

.job-review-tab-layout .job-exception-actions[open] > summary {
  margin: 0;
  border-bottom: 1px solid #dbe5e8;
}

.job-review-tab-layout .job-status-form {
  margin: 0;
  padding: 20px;
}

.job-review-panel .review-summary-grid {
  display: grid;
  gap: 0;
  margin: 0 0 18px;
  border: 1px solid #dbe5e8;
  border-radius: 7px;
  overflow: hidden;
}

.job-review-panel .review-summary-grid > span {
  min-width: 0;
  padding: 16px;
  border-right: 1px solid #dbe5e8;
  background: #f8fbfc;
  overflow-wrap: anywhere;
}

.job-review-panel .review-summary-grid > span:last-child {
  border-right: 0;
}

.job-attachment-panel {
  padding: 0;
}

.job-attachment-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 17px 20px;
  border-bottom: 1px solid #dbe5e8;
}

.job-attachment-panel-header strong,
.job-attachment-panel-header p {
  margin: 0;
}

.job-attachment-panel-header p {
  margin-top: 4px;
  color: #596c75;
  font-size: 0.88rem;
}

.job-attachment-panel > .job-attachment-form {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
  padding: 20px;
  border-bottom: 1px solid #dbe5e8;
  background: #fbfcfd;
}

.job-attachment-form .attachment-upload-field,
.job-attachment-form .attachment-title-field,
.job-attachment-form .attachment-description-field {
  grid-column: span 6;
}

.job-attachment-form .attachment-category-field,
.job-attachment-form .attachment-access-field {
  grid-column: span 6;
}

.job-attachment-panel > .job-attachment-form > button {
  grid-column: 1 / -1;
  justify-self: start;
  min-width: 180px;
}

.job-attachment-form :is(input, select, textarea) {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

.job-attachment-form input[type="file"] {
  min-height: 46px;
  padding: 8px;
  border: 1px dashed #85aeb9;
  border-radius: 7px;
  background: #fff;
}

.job-attachment-panel-actions { display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px }
.job-attachment-panel-actions .primary-action { display:inline-flex;align-items:center;gap:7px;text-decoration:none;white-space:nowrap }
.job-attachment-panel-actions .primary-action span { font-size:1.1rem;line-height:1 }
.job-attachment-drawer { width:min(620px,100%) }
.job-attachment-drawer>header { padding-right:44px }
.job-attachment-drawer-form { grid-template-columns:repeat(2,minmax(0,1fr));gap:18px }
.job-attachment-drawer-form>.field-group { display:grid;align-content:start;gap:7px;min-width:0;font-weight:800 }
.job-attachment-drawer-form>.field-group>span:first-child { color:#17262d;font-size:.88rem }
.job-attachment-drawer-form :is(input:not([type="radio"]):not([type="checkbox"]):not([type="file"]),select,textarea) { box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:46px;padding:10px 12px;border:1px solid #b9cbd3;border-radius:7px;background:#fff;color:#17262d;font:inherit }
.job-attachment-drawer-form input[type="file"] { min-height:92px;padding:18px;border-style:dashed;border-color:#7faeba;background:#f5fafb;cursor:pointer }
.job-attachment-drawer-form textarea { min-height:100px;resize:vertical }
.job-attachment-drawer-form :is(input:not([type="radio"]):not([type="checkbox"]):not([type="file"]),select,textarea):focus-visible { outline:3px solid rgba(8,117,142,.16);border-color:#08758e }
.job-attachment-drawer-form .field-error:empty { display:none }
.job-attachment-drawer-form footer { grid-column:1/-1 }
.job-document-source-switch { margin:0 }
.job-document-source-panel { display:grid;gap:16px }
.job-document-source-panel[hidden] { display:none }
.job-attachment-drawer-form [data-upload-metadata][hidden] { display:none }
.job-document-customer-copy { margin-top:2px }
.job-document-current-file,.job-document-no-existing { display:grid;gap:4px;padding:14px 16px;border:1px solid #cbdbe1;border-radius:7px;background:#f7fafb }
.job-document-current-file span,.job-document-no-existing p { margin:0;color:#5b6e77;font-size:.88rem }
.job-files-layout .job-tab-empty-state.compact {
  margin: 0;
  min-height: 112px;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid #dbe5e8;
}

.job-files-layout .job-attachment-row,
.job-files-layout .job-attachment-archive {
  margin: 0;
  padding-inline: 20px;
}

.job-files-layout .job-attachment-row { grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px }
.job-attachment-row-main,.job-attachment-copy { min-width:0 }
.job-attachment-title,.job-attachment-description,.job-attachment-meta,.job-attachment-error { margin:0 }
.job-attachment-title { font-size:1rem }
.job-attachment-title a { color:#075f75 }
.job-attachment-copy .file-original-name { margin:3px 0 0;color:#697a82;font-size:.84rem }
.job-attachment-description { max-width:760px;margin-top:7px;color:#3f535c;line-height:1.45 }
.job-attachment-meta { display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:10px;color:#667981;font-size:.82rem }
.job-attachment-meta .status-badge { min-height:24px;padding:3px 8px;background:#eef5f7;color:#365863 }
.job-attachment-error { margin-top:8px;color:#9b3737 }
.job-files-layout .job-attachment-panel { overflow:visible }
.job-file-filters{display:flex;align-items:center;gap:7px;padding:11px 20px;border-bottom:1px solid #dbe5e8;background:#f8fbfc;overflow-x:auto}
.job-file-filters a{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:7px 11px;border:1px solid #c7d8de;border-radius:6px;background:#fff;color:#47616c;font-size:.8rem;font-weight:800;text-decoration:none;white-space:nowrap}
.job-file-filters a span{display:inline-grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:#eaf3f5;color:#315965;font-size:.72rem}
.job-file-filters a:hover,.job-file-filters a:focus-visible{border-color:#0f718a;color:#075f76;outline:none}
.job-file-filters a.is-active{border-color:#0f718a;background:#e7f4f7;color:#075f76}
.job-attachment-actions { display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:72px }
.job-receipt-extract-form{margin-right:6px}.job-receipt-extract-form .secondary-link{white-space:nowrap}
.job-attachment-actions .icon-button { display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:7px;background:transparent;color:#075f75;font:inherit;font-size:20px;line-height:1;text-decoration:none;cursor:pointer }
.job-attachment-actions .icon-button:hover,.job-attachment-actions .icon-button:focus-visible { background:#e9f4f6;outline:none }
.job-attachment-actions .job-attachment-remove>.icon-button { color:#8c2e2e }
.job-attachment-actions .job-attachment-remove>.icon-button:hover,.job-attachment-actions .job-attachment-remove>.icon-button:focus-visible { background:#fff0f0 }
.job-attachment-remove>div { width:min(340px,calc(100vw - 48px)) }
.job-attachment-remove>div>strong { display:block;margin-bottom:5px;color:#271d1d;font-size:.94rem }
.job-attachment-remove .job-file-delete-form { display:grid;gap:11px }
.job-attachment-remove .job-file-delete-form label { display:grid;gap:6px;color:#473535;font-size:.8rem;font-weight:750 }
.job-attachment-remove .job-file-delete-form textarea { box-sizing:border-box;width:100%;min-height:72px;padding:9px 10px;border:1px solid #cbb7b7;border-radius:6px;background:#fff;color:#17262d;font:inherit;resize:vertical }
.job-attachment-remove .job-file-delete-form textarea:focus-visible { outline:3px solid rgba(155,55,55,.13);border-color:#9b3737 }
.job-file-delete-form { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end }
.job-file-delete-form .danger-action { grid-column:2;min-height:42px;padding:9px 15px;border:1px solid #9b3737;border-radius:7px;background:#9b3737;color:#fff;font:inherit;font-weight:800;cursor:pointer }
.job-file-delete-form .danger-action:hover { background:#842d2d }

@media(max-width:680px){
  .job-attachment-panel-header { align-items:flex-start }
  .job-attachment-panel-actions { width:100%;justify-content:space-between }
  .job-attachment-panel-actions .primary-action { flex:1;justify-content:center }
  .job-attachment-drawer { width:100%;padding:24px 18px }
  .job-attachment-drawer-form { grid-template-columns:1fr }
  .job-attachment-drawer-form>* { grid-column:1!important }
  .job-file-filters{padding-inline:16px}
  .job-files-layout .job-attachment-row { grid-template-columns:minmax(0,1fr) auto;padding-inline:16px }
  .job-attachment-actions{align-items:flex-end;flex-direction:column}
  .job-file-delete-form .danger-action { width:100% }
  .job-file-delete-form { grid-template-columns:1fr }
  .job-file-delete-form .danger-action { grid-column:1 }
}

.job-history-panel {
  padding: 0;
  overflow: hidden;
}

.job-history-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 58px;
  padding: 14px 20px;
  border-bottom: 1px solid #dbe5e8;
}

.job-history-count,
.job-history-type {
  display: inline-flex;
  align-items: center;
  width: max-content;
  max-width: 100%;
  min-height: 26px;
  padding: 4px 9px;
  border-radius: 999px;
  background: #e6f3f6;
  color: #075f76;
  font-size: 0.75rem;
  font-weight: 800;
}

.job-history-day {
  display: grid;
  grid-template-columns: minmax(150px, 0.22fr) minmax(0, 1fr);
  border-bottom: 1px solid #dbe5e8;
}

.job-history-day:last-child {
  border-bottom: 0;
}

.job-history-day > h3 {
  margin: 0;
  padding: 19px 20px;
  border-right: 1px solid #dbe5e8;
  background: #f7fafb;
  color: #52666f;
  font-size: 0.86rem;
}

.job-history-timeline {
  min-width: 0;
}

.job-history-event-heading,
.job-history-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 12px;
}

.job-history-event-heading {
  justify-content: space-between;
}

.job-history-meta {
  color: #6b7d85;
  font-size: 0.78rem;
}

.job-history-event-content,
.job-history-event-content p {
  min-width: 0;
  overflow-wrap: anywhere;
}

.job-history-event--fieldwork .job-history-marker { background: #16834f; }
.job-history-event--review .job-history-marker { background: #b57600; }
.job-history-event--lifecycle .job-history-marker { background: #6657a8; }

@media (max-width: 1080px) {
  .job-planning-tab-layout {
    grid-template-columns: 1fr;
  }

  .job-planning-tab-layout > * {
    grid-column: 1 !important;
  }

  .job-planning-tab-layout .field-readiness-row {
    grid-template-columns: 1fr;
  }

  .job-attachment-panel > .job-attachment-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .job-attachment-form .attachment-upload-field,
  .job-attachment-form .attachment-title-field,
  .job-attachment-form .attachment-description-field,
  .job-attachment-form .attachment-category-field,
  .job-attachment-form .attachment-access-field {
    grid-column: span 1;
  }
}

@media (max-width: 680px) {
  .job-planning-tab-layout > .job-planning-form:not(.job-brief-form),
  .job-attachment-panel > .job-attachment-form {
    grid-template-columns: 1fr;
  }

  .job-planning-tab-layout > .job-planning-form:not(.job-brief-form) > *,
  .job-attachment-form .attachment-upload-field,
  .job-attachment-form .attachment-title-field,
  .job-attachment-form .attachment-description-field,
  .job-attachment-form .attachment-category-field,
  .job-attachment-form .attachment-access-field {
    grid-column: 1;
  }

  .job-planning-tab-layout > .job-planning-form > button,
  .job-attachment-panel > .job-attachment-form > button {
    width: 100%;
    justify-self: stretch;
  }

  .job-field-work-layout .job-checklist-empty,
  .job-review-tab-layout .job-tab-empty-state,
  .job-history-layout .job-tab-empty-state {
    padding: 18px;
  }

  .job-review-panel .review-summary-grid {
    grid-template-columns: 1fr;
  }

  .job-review-panel .review-summary-grid > span {
    border-right: 0;
    border-bottom: 1px solid #dbe5e8;
  }

  .job-review-panel .review-summary-grid > span:last-child {
    border-bottom: 0;
  }

  .job-attachment-panel-header {
    align-items: flex-start;
  }

  .job-history-day {
    grid-template-columns: 1fr;
  }

  .job-history-day > h3 {
    padding: 12px 16px;
    border-right: 0;
    border-bottom: 1px solid #dbe5e8;
  }
}

/* Shared long-content resilience for every Web Admin header and record hero. */
.workspace-page-header,
.record-summary-hero,
.detail-hero,
.offer-detail-header,
.public-offer-header {
  min-width: 0;
  max-width: 100%;
}

.workspace-page-header > :first-child,
.record-summary-hero > :first-child,
.detail-hero > :first-child,
.offer-detail-header > :first-child,
.public-offer-header > :first-child,
.customer-title-line,
.detail-title-line {
  min-width: 0;
  max-width: 100%;
}

.workspace-page-header :is(h1, h2, p),
.record-summary-hero :is(h1, h2, p, a, dd),
.detail-hero :is(h1, h2, p, a),
.offer-detail-header :is(h1, h2, p, a),
.public-offer-header :is(h1, h2, p, a) {
  overflow-wrap: anywhere;
}

.checklist-template-drawer {
  width: min(760px, 100vw);
}

.checklist-response-options {
    min-width: 0;
    border: 0;
    padding: 0;
    margin: 12px 0;
}

.checklist-response-options[hidden] { display: none; }
.checklist-step-editor [data-response-unit-field][hidden] { display: none; }
.checklist-option-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) repeat(3, 36px);
    gap: 4px;
    align-items: center;
    margin-bottom: 6px;
}
.checklist-option-row input:not([type=hidden]) {
    box-sizing: border-box;
    min-width: 0;
    width: 100%;
    min-height: 40px;
    padding: 8px 10px;
    border: 1px solid #b9cbd3;
    border-radius: 6px;
    background: #fff;
    color: #17262d;
    font: inherit;
}
.checklist-option-row .icon-button {
    width: 36px;
    height: 40px;
    padding: 0;
    border: 1px solid #cddde2;
    border-radius: 6px;
    background: #fff;
    color: #075f76;
    font-size: 18px;
}
.checklist-option-row .icon-button:disabled { opacity: .4; }
.checklist-option-row .icon-button.danger { color: #b42318; }
.checklist-response-options legend { font-weight: 600; margin-bottom: 6px; }
.checklist-response-options .field-validation-error { display: block; overflow-wrap: anywhere; color: #b42318; }

.checklist-step-editor {
  display: grid;
  grid-column: 1 / -1;
  gap: 14px;
  min-width: 0;
  padding-top: 8px;
}

.checklist-step-editor-header,
.checklist-step-editor-row > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.checklist-step-editor-header h3,
.checklist-step-editor-header p,
.checklist-step-editor-row > header {
  margin: 0;
}

.checklist-step-editor-header p {
  margin-top: 4px;
  color: #52666f;
  font-size: 0.86rem;
}

.checklist-step-add {
  flex: 0 0 auto;
  gap: 7px;
  white-space: nowrap;
}

.checklist-step-add-icon {
  font-size: 1.15rem;
  font-weight: 900;
  line-height: 1;
}

.checklist-step-editor-list {
  display: grid;
  gap: 12px;
}

.checklist-step-editor-row {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid #cddde2;
  border-radius: 6px;
  background: #fff;
}

.checklist-step-primary-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.checklist-step-title-field {
  grid-column: 1 / -1;
}

.checklist-step-order-actions {
  display: flex;
  align-items: center;
  gap: 4px;
}

.checklist-step-order-actions .icon-button {
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid #cddde2;
  border-radius: 6px;
  background: #fff;
  color: #075f76;
  font-size: 1rem;
  line-height: 1;
}

.checklist-step-order-actions .icon-button:hover:not(:disabled) {
  border-color: #075f76;
  background: #eff8fa;
}

.checklist-step-order-actions .icon-button.danger {
  color: #a83232;
}

.checklist-step-order-actions .icon-button:disabled {
  opacity: 0.4;
}

.job-checklist-step-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 10px;
  margin-top: 4px;
  color: #52666f;
  font-size: 0.78rem;
}

.checklist-step-instructions,
.checklist-step-expectation {
  margin: 8px 0 0;
  color: #405860;
  line-height: 1.45;
}

.checklist-step-expectation {
  padding: 9px 11px;
  border-left: 3px solid #16839a;
  background: #f2f9fa;
}

.checklist-step-expectation a {
  margin-left: 8px;
  font-weight: 700;
}

.checklist-review-confirmation {
  align-items: flex-start;
  padding: 14px;
  border: 1px solid #e2c46f;
  border-radius: 6px;
  background: #fff8df;
  line-height: 1.45;
}

@media (max-width: 760px) {
  .checklist-step-primary-fields {
    grid-template-columns: 1fr 1fr;
  }

  .checklist-step-title-field {
    grid-column: 1 / -1;
  }
}

@media (max-width: 520px) {
  .checklist-step-editor-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .checklist-step-add {
    width: 100%;
  }

  .checklist-step-primary-fields {
    grid-template-columns: 1fr;
  }

  .checklist-step-title-field {
    grid-column: 1;
  }
}

/* Checklist template workspace: compact, company-facing, and consistent with record lists. */
.checklist-templates-page .checklist-template-section {
  gap: 14px;
}

.checklist-starter-list {
  display: grid;
  overflow: hidden;
  border: 1px solid #cad8de;
  border-radius: 8px;
  background: #fff;
}

.checklist-starter-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px 20px;
  align-items: start;
  min-width: 0;
  padding: 17px 18px 0;
  border-bottom: 1px solid #dbe5e8;
}

.checklist-starter-row:last-child {
  border-bottom: 0;
}

.checklist-starter-main {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.checklist-starter-main h3,
.checklist-starter-main p,
.checklist-starter-meta {
  margin: 0;
}

.checklist-starter-main h3 {
  font-size: 1rem;
}

.checklist-starter-main > p {
  color: #5b6e77;
  font-size: 0.86rem;
}

.checklist-starter-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 18px;
}

.checklist-starter-meta > div {
  display: flex;
  gap: 6px;
  align-items: baseline;
}

.checklist-starter-meta dt {
  color: #647781;
  font-size: 0.76rem;
  font-weight: 800;
}

.checklist-starter-meta dd {
  margin: 0;
  color: #263a43;
  font-size: 0.82rem;
}

.checklist-starter-action {
  align-self: center;
  min-width: 150px;
  text-align: center;
  text-decoration: none;
}

.checklist-starter-disclosures {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin: 0 -18px;
  border-top: 1px solid #e4ebee;
}

.checklist-starter-disclosures > details {
  min-width: 0;
  padding: 12px 18px;
  border: 0;
}

.checklist-starter-disclosures > details + details {
  border-left: 1px solid #e4ebee;
}

.checklist-starter-disclosures summary {
  cursor: pointer;
  color: #075f76;
  font-size: 0.84rem;
  font-weight: 800;
}

.checklist-starter-disclosures .checklist-source-preview ul,
.checklist-starter-disclosures .checklist-step-preview ol {
  margin-top: 12px;
}

.checklist-company-section-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.checklist-company-section-heading .users-invite-button {
  flex: 0 0 auto;
  min-height: 42px;
  text-decoration: none;
}

.checklist-source-policy {
  grid-template-columns: minmax(180px, 0.35fr) minmax(0, 1fr);
  align-items: start;
  gap: 18px;
  padding: 12px 14px;
  border: 0;
  border-left: 4px solid #16839a;
  border-radius: 4px;
  background: #f1f8fa;
}

.checklist-source-policy strong {
  color: #17333d;
}

.checklist-adoption-guidance {
  border-color: #dfc06a;
  border-left: 4px solid #c88b00;
  background: #fff8e6;
}

.checklist-copy-information {
  border-color: #b8d7df;
  border-left: 4px solid #16839a;
  background: #f2f9fa;
}

@media (max-width: 900px) {
  .checklist-source-policy {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

@media (max-width: 760px) {
  .checklist-starter-row {
    grid-template-columns: 1fr;
    padding-top: 16px;
  }

  .checklist-starter-action {
    width: 100%;
    box-sizing: border-box;
  }

  .checklist-starter-disclosures {
    grid-template-columns: 1fr;
  }

  .checklist-starter-disclosures > details + details {
    border-top: 1px solid #e4ebee;
    border-left: 0;
  }

  .checklist-company-section-heading {
    display: grid;
  }

  .checklist-company-section-heading .users-invite-button {
    width: 100%;
    box-sizing: border-box;
    justify-content: center;
  }
}

@media (max-width: 760px) {
  .checklist-template-row-actions {
    display: flex;
    align-items: center;
  }

  .checklist-template-row-actions > * {
    width: auto;
  }

  .checklist-template-row-actions > .secondary-action {
    flex: 1 1 190px;
    box-sizing: border-box;
    text-align: center;
  }
}

/* Checklist release hardening: usage clarity, edit guidance, and consequence confirmation. */
.checklist-usage-links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 14px;
  margin-top: 9px;
}

.checklist-usage-link {
  width: fit-content;
}

.checklist-availability-toggle {
  text-decoration: none;
}

.checklist-disable-guidance {
  border-color: #e0bd64;
  border-left: 4px solid #c48600;
  background: #fff8e5;
}

.checklist-disable-guidance .warning-copy {
  color: #6b4b06;
}

.checklist-disable-guidance a {
  color: #075f76;
  font-weight: 800;
}

.checklist-edit-guidance {
  grid-column: 1 / -1;
  padding: 13px 15px;
  border-left: 4px solid #16839a;
  border-radius: 4px;
  background: #f1f8fa;
  color: #405860;
  line-height: 1.5;
}

.checklist-template-drawer .job-drawer-footer .danger-action {
  min-width: 190px;
  min-height: 46px;
}

@media (max-width: 760px) {
  .checklist-usage-links {
    display: grid;
    gap: 5px;
  }

  .checklist-template-drawer .job-drawer-footer .danger-action {
    width: 100%;
    min-width: 0;
  }
}
.job-checklist-readonly-notice,
.job-checklist-closed-correction {
  grid-column: 1 / -1;
  margin: 0;
  padding: 13px 15px;
  border: 1px solid #e2be57;
  border-radius: 7px;
  background: #fff8dd;
  color: #5f4600;
}

.job-checklist-closed-correction {
  display: grid;
  gap: 10px;
}

.job-checklist-closed-correction p {
  margin: 0;
  color: #5f4600;
}

.job-checklist-closed-correction .field-group {
  max-width: 720px;
}

/* Job field progress: one status, one next action, detail on demand. */
.job-field-progress-panel{margin:0 0 18px;border:1px solid #cbdbe1;border-radius:7px;background:#fff;overflow:hidden}.job-field-progress-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:17px 20px;border-bottom:1px solid #dbe5e8}.job-field-progress-header h3,.job-field-progress-header p,.job-field-team-progress h4{margin:0}.job-field-progress-header p{margin-top:4px;color:#5b6e77;font-size:.88rem}.job-field-submission-context{display:grid;gap:4px;padding:12px 20px;border-bottom:1px solid #e3c46f;border-left:4px solid #d39a1d;background:#fff8e7}.job-field-submission-context p{margin:0;color:#5f512c;font-size:.82rem;line-height:1.45}.job-field-progress-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid #dbe5e8}.job-field-progress-grid article{display:grid;gap:5px;min-width:0;padding:15px 20px;border-right:1px solid #e1e8eb}.job-field-progress-grid article:last-child{border-right:0}.job-field-progress-grid span{color:#61757e;font-size:.76rem;font-weight:750}.job-field-progress-grid strong{color:#24333a;line-height:1.35}.job-field-team-progress>h4{padding:15px 20px 9px}.job-field-team-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 20px;border-top:1px solid #e7edef}.job-field-team-copy{display:flex;flex-wrap:wrap;align-items:center;gap:5px 10px;min-width:0}.job-field-team-copy>small{flex-basis:100%;color:#61757e}.job-field-team-status-label{color:#61757e;font-size:.72rem;font-weight:750}.job-field-readiness-editor{min-width:180px}.job-field-readiness-editor>summary{display:flex;align-items:center;gap:7px;color:#075f76;cursor:pointer;font-size:.82rem;font-weight:800;list-style:none}.job-field-readiness-editor>summary::-webkit-details-marker{display:none}.job-field-readiness-editor[open]{grid-column:1/-1}.job-field-readiness-editor .field-readiness-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;padding:15px;border:1px solid #dbe5e8;border-radius:7px;background:#f8fbfc}.job-field-readiness-editor .field-readiness-form>button{justify-self:start}.field-team-progress-link{margin:12px 0 0;color:#5b6e77}.empty-copy{padding:8px 20px 18px;color:#61757e}
.job-field-section-nav{position:sticky;top:0;z-index:8;display:flex;align-items:stretch;gap:4px;min-width:0;padding:0 8px;border-block:1px solid #d6e3e7;background:rgba(247,250,251,.97);overflow-x:auto;scrollbar-width:thin}
.job-field-section-nav a{display:inline-flex;flex:0 0 auto;align-items:center;gap:7px;min-height:46px;padding:0 11px;border-bottom:3px solid transparent;color:#425d67;text-decoration:none;font-size:.82rem;font-weight:800;white-space:nowrap}
.job-field-section-nav a:hover{background:#edf6f8;color:#075f76}.job-field-section-nav a:focus-visible{outline:3px solid rgba(8,117,142,.24);outline-offset:-3px}.job-field-section-nav a.is-current{border-bottom-color:#087b96;color:#075f76}.job-field-section-nav strong{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border:1px solid #c8dce3;border-radius:999px;background:#edf7f9;color:#075f76;font-size:.7rem}.job-field-section-nav strong.needs-attention{border-color:#e3c46f;background:#fff5d9;color:#7c5605}
.job-field-section{scroll-margin-top:64px}.job-field-work-layout :is(.job-field-progress-panel,.job-material-panel){margin-bottom:0}
.job-checklist-attention{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid #e3c46f;border-radius:999px;background:#fff5d9;color:#7c5605;font-size:.75rem;font-weight:800;white-space:nowrap}
@media(max-width:900px){.job-field-section-nav{top:69px}.job-field-section{scroll-margin-top:133px}}
@media(max-width:900px){.job-field-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.job-field-progress-grid article:nth-child(2){border-right:0}.job-field-progress-grid article:nth-child(-n+2){border-bottom:1px solid #e1e8eb}}
@media(max-width:620px){.job-field-section-nav{margin-inline:-2px;padding-inline:4px}.job-field-section-nav a{min-height:43px;padding-inline:9px}.job-field-progress-header,.job-field-team-row{display:grid}.job-field-progress-grid{grid-template-columns:1fr}.job-field-progress-grid article{border-right:0;border-bottom:1px solid #e1e8eb}.job-field-progress-grid article:last-child{border-bottom:0}.job-field-readiness-editor{min-width:0}.job-field-readiness-editor .field-readiness-form{grid-template-columns:1fr}.job-field-readiness-editor .field-readiness-form>button{width:100%}}
.checklist-step-attribution{margin:8px 0 0;color:#61757e;font-size:.76rem}
.readiness-chip,.checklist-requirement{display:inline-flex;align-items:center;width:max-content;min-height:24px;padding:3px 8px;border:1px solid #c9d8de;border-radius:9999px;background:#f3f7f8;color:#47606a;font-size:.75rem;font-weight:800;line-height:1.2}
.readiness-chip.readiness-ready,.checklist-status.status-completed{border-color:#a8d8b8;background:#eaf7ef;color:#087647}
.readiness-chip.readiness-blocked{border-color:#e3aaa5;background:#fdebea;color:#a12a21}
.readiness-chip.readiness-needshelp{border-color:#e5c371;background:#fff5d9;color:#835b05}
.readiness-chip.readiness-notset{border-color:#c9d8de;background:#f3f7f8;color:#526a74}
.checklist-requirement.requirement-required{border-color:#a9cfda;background:#e8f5f8;color:#075f76}
.checklist-requirement.requirement-recommended{border-color:#e4c574;background:#fff5d9;color:#7b5607}
.checklist-requirement.requirement-optional{border-color:#cbd6da;background:#f3f6f7;color:#566970}
.checklist-status.status-pending{border-color:#c5d8df;background:#edf6f8;color:#35616f}
.checklist-status.status-skipped{border-color:#cbd6da;background:#f2f5f6;color:#52636c}
.checklist-status.status-overridden{border-color:#e4c574;background:#fff5d9;color:#835b05}

.checklist-evidence-picker-help{margin:10px 0 0;color:#526a74;font-size:.82rem;line-height:1.45}
.checklist-evidence-option{display:grid!important;grid-template-columns:20px minmax(0,1fr) auto;align-items:center!important;gap:10px!important;min-height:48px;padding:8px 10px;border:1px solid #d5e1e5;border-radius:6px;background:#fff;cursor:pointer}
.checklist-evidence-option:has(input:checked){border-color:#acd8bd;background:#eef8f2}
.checklist-evidence-option-copy{display:grid;gap:2px;min-width:0}.checklist-evidence-option-copy strong{overflow-wrap:anywhere}.checklist-evidence-option-copy small{color:#60747d;font-size:.75rem}
.checklist-evidence-option-action{color:#075f76;font-size:.76rem;font-weight:800}.checklist-evidence-option-action .when-linked{display:none;color:#9b2f28}.checklist-evidence-option input:checked~.checklist-evidence-option-action .when-linked{display:inline}.checklist-evidence-option input:checked~.checklist-evidence-option-action .when-available{display:none}
.checklist-evidence-open-files{display:inline-flex;margin-top:12px;color:#075f76;font-size:.82rem;font-weight:800}
@media(max-width:640px){.checklist-evidence-option{grid-template-columns:20px minmax(0,1fr)}.checklist-evidence-option-action{grid-column:2}}
/* Job materials: shared field truth with Office pricing control. */
.job-material-panel{margin:0 0 18px;border:1px solid #cbdbe1;border-radius:7px;background:#fff;overflow:hidden}
.job-material-header,.job-material-review>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:17px 20px;border-bottom:1px solid #dbe5e8}
.job-material-header h3,.job-material-header p,.job-material-review h3,.job-material-review p{margin:0}
.job-material-header p,.job-material-review header p{margin-top:4px;color:#5b6e77;font-size:.86rem}
.job-material-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.job-material-badges>span{display:inline-flex;padding:4px 9px;border:1px solid #c7dce3;border-radius:999px;background:#edf7f9;color:#075f76;font-size:.75rem;font-weight:800}
.job-material-badges>.needs-attention,.material-price-missing{border-color:#e3c46f!important;background:#fff5d9!important;color:#7c5605!important}
.job-material-empty{padding:20px}.job-material-empty p{margin:4px 0 0;color:#60737c}.job-material-empty-compact{display:flex;align-items:baseline;gap:8px 18px;padding:11px 20px 13px}.job-material-empty-compact p{margin:0;font-size:.82rem}.job-material-panel.is-empty .job-material-header{padding-block:13px}.job-material-panel.is-empty .job-material-header p{font-size:.82rem}
.job-material-list,.job-material-review-list{display:grid}
.job-operational-columns{display:grid;align-items:center;gap:18px;padding:8px 20px;border-bottom:1px solid #dbe5e8;background:#f8fbfc;color:#59707a;font-size:.72rem;font-weight:800}.job-time-columns{grid-template-columns:minmax(260px,1.6fr) minmax(140px,.5fr) minmax(100px,.35fr)}.job-travel-columns{grid-template-columns:minmax(260px,1.5fr) minmax(110px,.45fr) minmax(130px,.5fr) minmax(100px,.4fr)}
.job-travel-summary{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:18px;padding:12px 20px;border-top:1px solid #dbe5e8;background:#f8fbfc;color:#536871;font-size:.8rem}
.job-material-columns,.job-material-row{display:grid;grid-template-columns:minmax(240px,1.6fr) minmax(110px,.6fr) minmax(165px,.85fr) minmax(120px,.65fr) minmax(100px,auto);gap:14px;align-items:center}
.job-material-columns{padding:9px 20px;border-top:1px solid #dbe5e8;border-bottom:1px solid #dbe5e8;background:#f4f8fa;color:#536b76;font-size:.7rem;font-weight:900;text-transform:uppercase}
.job-material-row{padding:15px 20px;border-top:1px solid #e1e8eb}
.job-operational-list .job-material-row{padding-block:11px}.job-material-row.job-time-row{grid-template-columns:minmax(260px,1.6fr) minmax(140px,.5fr) minmax(100px,.35fr)}.job-material-row.job-travel-row{grid-template-columns:minmax(260px,1.5fr) minmax(110px,.45fr) minmax(130px,.5fr) minmax(100px,.4fr)}.job-travel-row .job-material-amount{justify-items:start;text-align:left}.job-time-row .job-material-actions,.job-travel-row .job-material-actions{justify-self:end}
.job-material-row:first-child{border-top:0}
.job-material-identity,.job-material-amount{display:grid;gap:4px;min-width:0}.job-material-identity span,.job-material-identity small,.job-material-amount span{color:#60737c;font-size:.78rem}
.job-material-metric{display:grid;gap:4px;min-width:0}.job-material-metric strong{font-size:.84rem}.job-material-mobile-label{display:none;color:#60737c;font-size:.7rem;font-weight:800;text-transform:uppercase}
.job-material-receipts{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;border-top:1px solid #dbe5e8;background:#eef8fa}.job-material-receipts>div{display:grid;gap:3px}.job-material-receipts span{color:#536b76;font-size:.78rem}.job-material-receipts a{font-weight:800}
.job-material-row-action{justify-self:end}.job-material-row-action a{display:inline-flex;align-items:center;gap:7px;color:#075f76;font-size:.82rem;font-weight:800;text-decoration:none;white-space:nowrap}.job-material-row-action a:hover{text-decoration:underline}
.job-row-manage-action{display:inline-flex;align-items:center;gap:7px;justify-self:end;color:#075f76;font-size:.82rem;font-weight:800;text-decoration:none;white-space:nowrap}.job-row-manage-action:hover{text-decoration:underline}
.job-section-command{display:flex;align-items:center;padding:13px 20px;border-top:1px solid #dbe5e8}.job-section-command a{display:inline-flex;align-items:center;gap:8px;color:#075f76;font-weight:800;text-decoration:none}.job-section-command a:hover{text-decoration:underline}.job-section-command a span{font-size:1.1rem}
.job-section-feedback{margin:0;padding:11px 20px;border-top:1px solid;border-bottom:1px solid;font-size:.84rem;font-weight:750}.job-section-feedback.success{border-color:#a9d9bc;background:#edf9f2;color:#17643d}.job-section-feedback.warning{border-color:#ecd18e;background:#fff8e7;color:#7a4a00}.job-section-feedback.warning a{color:inherit;font-weight:800}.job-section-feedback.error{border-color:#e3b5b0;background:#fff3f1;color:#8a2e2a}
.job-drawer-feedback{margin:0 0 20px;padding:11px 13px;border:1px solid;border-radius:7px;font-size:.84rem;font-weight:750}.job-drawer-feedback:empty,.job-drawer-feedback.validation-summary-valid{display:none}.job-drawer-feedback.success{border-color:#a9d9bc;background:#edf9f2;color:#17643d}.job-drawer-feedback.error{border-color:#e3b5b0;background:#fff3f1;color:#8a2e2a}
.job-operation-drawer{width:min(620px,100%)}.job-operation-drawer-form{gap:18px}.job-operation-drawer-form>label,.job-operation-drawer-grid>label{display:grid;gap:6px;color:#3f535c;font-size:.8rem;font-weight:800}.job-operation-drawer-form :is(input,select,textarea){box-sizing:border-box;width:100%;min-height:44px;border:1px solid #b9cbd3;border-radius:7px;padding:9px 11px;background:#fff;color:#17262d;font:inherit}.job-operation-drawer-form textarea{resize:vertical}.job-operation-drawer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.job-operation-drawer-form.job-work-note-add-form{padding:0;border:0;background:transparent}.invite-drawer .job-operation-drawer-actions{position:static;grid-template-columns:1fr 1fr 1fr;padding-top:18px}.job-operation-drawer-actions .danger-action{min-height:48px;border:1px solid #9b3737;border-radius:7px;background:#fff;color:#8c2e2e;font:inherit;font-weight:800;cursor:pointer}.job-operation-drawer-actions .danger-action:hover{background:#fff0f0}
.job-material-drawer{width:min(620px,100%)}
.job-material-drawer [hidden]{display:none!important}
.job-material-drawer-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-bottom:24px;padding:15px 16px;border:1px solid #cbdbe1;border-radius:7px;background:#f7fafb}
.job-material-drawer-summary>div{display:grid;gap:4px}.job-material-drawer-summary span{color:#5b6f78;font-size:.76rem;font-weight:800}.job-material-drawer-summary>span{grid-column:1/-1;justify-self:start;padding:4px 8px;border:1px solid;border-radius:5px;font-size:.76rem;font-weight:800}
.job-material-drawer-form{gap:0}.job-material-drawer-form section{display:grid;gap:14px;padding:20px 0;border-top:1px solid #dbe5e8}.job-material-drawer-form h3,.job-material-remove-panel h3{margin:0;font-size:.96rem}
.job-material-drawer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.job-material-drawer-grid .full-row{grid-column:1/-1}.job-material-drawer-grid label,.job-material-remove-panel label{display:grid;gap:6px;color:#3f535c;font-size:.8rem;font-weight:800}.job-material-drawer-grid :is(input:not([type=checkbox]),select,textarea),.job-material-remove-panel textarea{box-sizing:border-box;width:100%;min-height:44px;border:1px solid #b9cbd3;border-radius:7px;padding:9px 11px;background:#fff;color:#17262d;font:inherit}.job-material-drawer.has-catalog-material .job-material-quantity-field{grid-column:1/-1}
.job-material-price-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.job-material-price-input span{color:#526a74;font-weight:750;white-space:nowrap}
.job-material-price-toggle{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:13px 14px;border:1px solid #d6e2e7;border-radius:7px;background:#f5f8fa;cursor:pointer}.job-material-price-toggle-copy{display:grid;gap:3px}.job-material-price-toggle-copy strong{color:#243940;font-size:.84rem}.job-material-price-toggle-copy small{color:#60737c;font-weight:500;line-height:1.35}
.job-material-drawer-form label small{color:#60737c;font-weight:500;line-height:1.45}.job-material-drawer .job-material-drawer-form footer{position:static;bottom:auto;padding:18px 0 4px}
.job-material-remove-panel{display:grid;gap:14px;margin-top:24px;padding:20px 0 0;border-top:1px solid #e1c8c8}.job-material-remove-panel>div{display:grid;gap:5px}.job-material-remove-panel p{margin:0;color:#6d5555;font-size:.84rem;line-height:1.45}.job-material-remove-panel form{display:grid;gap:12px}.job-material-remove-panel .danger-action{justify-self:start;min-height:42px;padding:9px 15px;border:1px solid #9b3737;border-radius:7px;background:#fff;color:#8c2e2e;font:inherit;font-weight:800;cursor:pointer}.job-material-remove-panel .danger-action:hover{background:#fff0f0}
.job-material-amount{justify-items:end;text-align:right}.job-material-amount strong{padding:3px 7px;border-radius:4px}
.job-material-actions{position:relative}.job-material-actions>summary{cursor:pointer;color:#075f76;font-size:.82rem;font-weight:800;list-style:none}.job-material-actions>summary::-webkit-details-marker{display:none}
.job-material-actions[open]{grid-column:1/-1}.job-material-actions form,.job-material-add form{display:grid;gap:13px;margin-top:12px;padding:16px;border-top:1px solid #dce6e9;background:#f8fbfc}
.job-material-actions label,.job-material-add label{display:grid;gap:6px;color:#3f535c;font-size:.8rem;font-weight:800}
.job-material-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.job-material-actions .job-material-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.job-material-form-actions{display:flex;justify-content:flex-end;gap:9px}
.job-material-add{border-top:1px solid #dbe5e8}.job-material-add>summary{display:flex;align-items:center;gap:8px;padding:14px 20px;color:#075f76;cursor:pointer;font-weight:800;list-style:none}.job-material-add>summary::-webkit-details-marker{display:none}.job-material-add>summary span{font-size:1.15rem}
.job-material-add form{margin:0}.job-material-add form>.primary-action{justify-self:start}
.job-material-add-section{display:grid;gap:10px;padding:14px;border:1px solid #dbe5e8;background:#fff}.job-material-add-section>div:first-child{display:grid;gap:3px}.job-material-add-section>div:first-child small{color:#60737c;font-size:.78rem}
.job-material-add-drawer{display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}
.job-material-add-drawer>header{flex:0 0 auto;margin:0 -38px;padding:0 38px 30px;border-bottom:1px solid #dbe5e8}
.job-material-add-drawer>.job-drawer-feedback{flex:0 0 auto;margin:14px 0 0}
.job-material-add-form{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;overflow:hidden}
.job-material-add-body{flex:1 1 auto;min-height:0;overflow-y:auto;margin-inline:-38px;padding-inline:38px}
.job-material-add-drawer .job-material-add-section{display:grid;gap:16px;padding:26px 0;border:0;border-bottom:1px solid #dbe5e8;background:transparent}
.job-material-add-drawer .job-material-add-section:last-child{border-bottom:0}
.job-material-add-drawer .job-material-add-section>div:first-child{gap:4px}
.job-material-add-drawer .job-material-drawer-grid{gap:18px 16px}
.job-material-add-form [data-job-material-price-field]{max-width:460px}
.job-material-add-form .job-material-price-input{grid-template-columns:minmax(220px,360px) auto;justify-content:start}
.job-material-add-drawer .job-material-add-form>footer{position:static;flex:0 0 auto;margin:auto -38px 0;padding:22px 38px 26px!important;border-top:1px solid #dbe5e8;background:#fff;box-shadow:0 -8px 18px rgba(28,56,66,.05)}
@media(max-width:760px){.job-material-add-drawer>header{margin-inline:-18px;padding:0 18px 24px}.job-material-add-body{margin-inline:-18px;padding-inline:18px}.job-material-add-drawer .job-material-add-form>footer{margin-inline:-18px;padding:18px 18px 24px!important}}
.job-work-note-add{border-top:1px solid #dbe5e8}.job-work-note-add>summary{display:flex;align-items:center;gap:8px;padding:12px 20px;color:#075f76;cursor:pointer;font-weight:800;list-style:none}.job-work-note-add>summary::-webkit-details-marker{display:none}.job-work-note-add>summary span{font-size:1.15rem}.job-work-note-add[open]>summary{background:#f3f8fa}.job-work-note-add-form{display:grid;gap:13px;padding:16px 20px;border-top:1px solid #dbe5e8;background:#f8fbfc}.job-work-note-add-form>label:first-of-type{display:grid;gap:6px;font-weight:700}.job-work-note-add-form textarea{box-sizing:border-box;width:100%;resize:vertical}.job-work-note-add-form>.secondary-action{justify-self:start}
.job-notification-toggle{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:14px 16px;border:1px solid #d6e2e7;border-radius:7px;background:#f5f8fa;cursor:pointer}.job-notification-toggle-copy{display:grid;gap:4px}.job-notification-toggle-copy small{color:#536a75;font-weight:400;line-height:1.35}.job-notification-switch{position:relative;display:block;width:44px;height:24px;flex:0 0 auto}.job-operation-drawer-form .job-notification-switch input,.job-notification-switch input{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;opacity:0;cursor:pointer}.job-notification-switch>span{display:block;width:44px;height:24px;border:1px solid #9eb3bd;border-radius:12px;background:#c9d5da;transition:background .15s,border-color .15s}.job-notification-switch>span::after{content:"";display:block;width:18px;height:18px;margin:2px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(17,42,52,.25);transition:transform .15s}.job-notification-switch input:checked+span{border-color:#08758e;background:#08758e}.job-notification-switch input:checked+span::after{transform:translateX(20px)}.job-notification-switch input:focus-visible+span{outline:3px solid rgba(8,117,142,.25);outline-offset:2px}
.job-material-review{margin:17px 0;border:1px solid #d7e2e6;border-radius:7px;overflow:hidden}.job-material-review>header{padding:14px 16px}.job-material-review>header a{color:#075f76;font-size:.82rem;font-weight:800;white-space:nowrap}
.job-material-review-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:13px 16px;border-top:1px solid #e2e9ec}.job-material-review-list article>div{display:grid;gap:3px}.job-material-review-list span{color:#60737c;font-size:.78rem}.job-material-review-meta{justify-items:end;text-align:right}.job-material-review-meta strong{padding:3px 7px;border-radius:4px}
.office-review-decision{margin-top:20px;border:1px solid #cbdbe1;border-radius:7px;background:#fff;overflow:hidden}.office-review-decision-header{padding:16px 18px;border-bottom:1px solid #dbe5e8;background:#f5f8fa}.office-review-decision-header strong{font-size:1rem}.office-review-decision-header p{margin:4px 0 0;color:#596d76;font-size:.86rem}.office-review-warning-summary{margin:0!important;border:0!important;border-bottom:1px solid #ecd18e!important;border-radius:0!important;padding:15px 18px!important;background:#fff8e5!important}.office-review-warning-summary p{margin:4px 0 8px;color:#6c5a2f;font-size:.84rem}.office-review-warning-summary ul{margin:0;padding-left:20px}.office-review-warning-summary li+li{margin-top:4px}.office-review-actions{display:grid;justify-items:end;gap:16px;margin:0;padding:20px}.office-review-approve{grid-template-columns:minmax(250px,.8fr) minmax(360px,1.2fr);align-items:end;width:min(100%,900px);padding:0;border:0;background:transparent}.office-review-warning-confirmation{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;box-sizing:border-box;min-height:72px;padding:13px 14px;border:1px solid #d7e3e7;border-radius:6px;background:#f8fbfc;color:#334d58;font-size:.9rem;font-weight:750;line-height:1.4}.office-review-warning-confirmation input{width:17px;height:17px;margin:2px 0 0}.office-review-approve .field-group{align-self:stretch}.office-review-approve textarea{box-sizing:border-box;width:100%;min-height:72px;resize:vertical}.office-review-command-bar{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;width:min(100%,900px)}.office-review-command-bar>.primary-action{width:auto;min-width:250px}.office-review-return{align-self:flex-start;border:0;border-radius:7px;background:transparent;overflow:hidden}.office-review-return>summary{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;padding:10px 14px;border:1px solid #b8cbd2;border-radius:7px;background:#fff;color:#075f76;cursor:pointer;font-weight:800;list-style:none}.office-review-return[open]{flex:1 1 100%;border:1px solid #cbdbe1;background:#fff}.office-review-return[open]>summary{display:flex;border:0;border-bottom:1px solid #dbe5e8;border-radius:0;background:#f8fbfc}.office-review-return .office-review-form{padding:16px}.office-review-approved{display:flex;align-items:center;gap:12px;margin:18px;padding:15px 17px;border:1px solid #b7dfc5;border-radius:7px;background:#f1fbf5;color:#195d33}.office-review-approved span{color:#49665a}.job-material-review-list article p{grid-column:1/-1;margin:4px 0 0;color:#304851}
@media(max-width:820px){.office-review-approve{grid-template-columns:1fr}.office-review-command-bar{display:grid;grid-template-columns:1fr}.office-review-command-bar>.primary-action,.office-review-return,.office-review-return>summary{width:100%}.office-review-approved{align-items:flex-start;flex-direction:column;gap:3px}}
.handover-response-form{display:grid;gap:16px;max-width:640px}.handover-response-form>label{display:grid;gap:6px;font-weight:700}.handover-response-form fieldset{display:flex;flex-wrap:wrap;gap:14px;padding:14px;border:1px solid #cedde2;border-radius:6px}.handover-response-form legend{padding:0 5px;font-weight:800}.handover-response-form button{justify-self:start}.public-document-section a{color:var(--company-brand-color,#0f5e7a);font-weight:800}.handover-delivery-form{display:flex;align-items:end;gap:10px;margin-top:14px}.handover-delivery-form label{display:grid;flex:1;gap:5px;font-weight:700}.handover-delivery-history,.handover-customer-responses{display:grid;gap:7px;margin-top:12px;padding-top:12px;border-top:1px solid #dbe5e8}.handover-delivery-history span{color:#526a74;font-size:.85rem}.handover-history{margin-top:14px;border-top:1px solid #dbe5e8;padding-top:12px}.handover-history summary{cursor:pointer;color:#075f76;font-weight:800}.handover-history p{display:grid;gap:3px;margin:10px 0}.handover-history p span{color:#60747e;font-size:.82rem}
@media(max-width:620px){.handover-delivery-form{align-items:stretch;flex-direction:column}.handover-response-form button,.handover-delivery-form button{width:100%}}
.office-review-note{margin:16px 0;border:1px solid #cbdbe1;border-radius:7px;background:#fff}.office-review-note>summary{cursor:pointer;padding:15px 17px;color:#075f76;font-weight:800;list-style:none}.office-review-note>summary::before,.office-review-reopen>summary::before{content:"+";display:inline-grid;place-items:center;width:20px;height:20px;margin-right:8px;border-radius:50%;background:#e5f4f7;color:#075f76}.office-review-note[open]>summary::before,.office-review-reopen[open]>summary::before{content:"−"}.office-review-note-form{display:grid;gap:14px;padding:17px;border-top:1px solid #dbe5e8}.office-review-note-form>label:first-of-type{display:grid;gap:6px;font-weight:700}.office-review-note-form .secondary-action{justify-self:start}.office-review-reopen{margin-top:16px}.office-review-reopen .office-review-form{padding:17px;border-top:1px solid #dbe5e8}
.public-handover-checklist{display:grid;gap:10px;margin-top:4px;padding:16px;border:1px solid #d6e2e7;border-radius:7px;background:#f8fbfc}.public-handover-checklist h4{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0}.public-handover-checklist h4 small{color:#61747d;font-weight:500}.public-handover-checklist>strong{margin-top:4px;color:var(--company-brand-color,#0f5e7a);font-size:.85rem}.public-handover-checklist ul{display:grid;gap:0;margin:0;padding:0;list-style:none}.public-handover-checklist li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;padding:10px 0;border-top:1px solid #dfe8ec}.public-handover-checklist li>strong{color:#1d6538}.public-handover-checklist li>p{grid-column:1/-1}.handover-access-form{display:flex;justify-content:flex-end;margin-top:10px}

/* Customer handover results use unframed, wrapping rows at every viewport. */
.public-document-shell.readable-handover { min-width: 0; }
.readable-handover .public-document-section { overflow-wrap: anywhere; }
.readable-handover .public-document-section p { white-space: pre-wrap; }
.readable-handover .public-handover-checklist { padding: 0; border: 0; border-radius: 0; background: none; }
.readable-handover .public-handover-checklist .handover-step { display: block; padding: 18px 0; }
.readable-handover h5, .readable-handover h6 { margin: 0 0 12px; font-size: 1rem; }
.readable-handover .handover-details { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 20px; margin: 12px 0; }
.readable-handover .handover-details > div { min-width: 0; }
.readable-handover .handover-details dt { color: #52636c; font-size: .8rem; }
.readable-handover .handover-details dd { margin: 3px 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.readable-handover .handover-measurement-row { padding: 14px 0 8px 14px; border-left: 3px solid #cbd8dd; margin: 14px 0; }
.readable-handover .handover-result-summary { border-block: 1px solid #cbd8dd; padding: 12px 0; font-weight: 600; }
.readable-handover .handover-manual-failure { color: #9f2923; font-weight: 600; }
.readable-handover [data-capture="returned"] h5, .readable-handover [data-capture="exception"] h5 { color: #9f2923; }
@media(max-width:620px) {
    .readable-handover .handover-details { grid-template-columns: minmax(0,1fr); }
    .readable-handover .public-document-meta { overflow-wrap: anywhere; }
}
@media(max-width:620px){.office-review-note-form .toggle-row{align-items:flex-start}.office-review-note-form .secondary-action,.office-review-reopen .secondary-action,.handover-access-form .secondary-action{width:100%}.public-handover-checklist{padding:13px}.public-handover-checklist h4{align-items:flex-start;flex-direction:column}.public-handover-checklist li{grid-template-columns:1fr}.public-handover-checklist li>p{grid-column:1}.handover-access-form{justify-content:stretch}}
.job-pricing-agreement{grid-column:1/-1;border:1px solid #cbdbe1;border-radius:7px;background:#fff}.job-pricing-agreement>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;cursor:pointer;list-style:none}.job-pricing-agreement>summary::-webkit-details-marker{display:none}.job-pricing-agreement>summary>span:first-child{display:grid;gap:3px}.job-pricing-agreement>summary small{color:#5b707a;font-weight:500}.job-pricing-summary{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.job-pricing-body{padding:19px;border-top:1px solid #dbe5e8}.job-pricing-body>p{margin:0;color:#536a75}.job-pricing-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.job-pricing-form>label{display:grid;align-content:start;gap:6px;font-weight:700}.job-pricing-form :is(input:not([type="checkbox"]),select,textarea){box-sizing:border-box;width:100%;min-height:46px;padding:10px 12px;border:1px solid #b9cbd4;border-radius:7px;background:#fff;color:#142027;font:inherit}.job-pricing-form textarea{min-height:78px;resize:vertical}.job-pricing-form input[type="checkbox"]{width:18px;height:18px;margin:1px 0 0;accent-color:#08758e}.job-pricing-form .inline-checkbox{display:flex;align-items:flex-start;gap:9px}.job-pricing-form .full-row{grid-column:1/-1}.job-pricing-form>.secondary-action,.job-pricing-form>.primary-action{grid-column:1/-1;justify-self:start}
@media(max-width:900px){.job-pricing-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.job-pricing-agreement>summary{align-items:flex-start;flex-direction:column}.job-pricing-summary{justify-content:flex-start}.job-pricing-form{grid-template-columns:1fr}.job-pricing-form .full-row,.job-pricing-form>.secondary-action,.job-pricing-form>.primary-action{grid-column:1}.job-pricing-form>.secondary-action,.job-pricing-form>.primary-action{width:100%}}
@media(max-width:860px){.job-operational-columns,.job-material-columns{display:none}.job-material-row,.job-material-row.job-time-row,.job-material-row.job-travel-row{grid-template-columns:repeat(2,minmax(0,1fr))}.job-material-identity{grid-column:1/-1}.job-material-mobile-label{display:block}.job-material-amount{justify-items:start;text-align:left}.job-travel-row .job-travel-distance,.job-travel-row .job-travel-invoiceable{grid-column:1}.job-material-actions,.job-travel-row .job-material-actions,.job-material-row-action{grid-column:2;justify-self:end}.job-material-actions[open],.job-travel-row .job-material-actions[open]{grid-column:1/-1;grid-row:auto;justify-self:stretch}.job-material-form-grid,.job-material-actions .job-material-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.job-material-header,.job-material-review>header{display:grid}.job-material-badges{justify-content:flex-start}.job-material-empty-compact{display:grid;gap:3px;padding-inline:16px}.job-material-row,.job-material-row.job-time-row,.job-material-row.job-travel-row,.job-material-review-list article{grid-template-columns:1fr;padding:13px 16px}.job-material-actions,.job-travel-row .job-material-actions,.job-material-row-action{grid-column:1;grid-row:auto;justify-self:start}.job-row-manage-action{justify-self:start}.job-material-form-grid,.job-material-actions .job-material-form-grid,.job-material-drawer-grid,.job-material-drawer-summary,.job-operation-drawer-grid{grid-template-columns:1fr}.job-material-drawer-grid .full-row,.job-material-drawer-summary>span{grid-column:1}.job-material-form-actions{display:grid;grid-template-columns:1fr}.job-material-form-actions>*{width:100%}.job-material-review-meta{justify-items:start;text-align:left}.job-material-add form>.primary-action,.job-work-note-add-form>.secondary-action,.job-material-remove-panel .danger-action{width:100%}.invite-drawer .job-operation-drawer-actions{grid-template-columns:1fr}.job-operation-drawer-actions>*{width:100%}}
/* Shared job section headers: compact toolbar density with locally bundled Lucide icons. */
.admin-section-toolbar{display:flex!important;align-items:center!important;gap:12px!important;box-sizing:border-box;width:100%;min-width:0;margin:0;padding:14px 16px!important;border-bottom:1px solid #d8e2e6!important;background:#f5f7f8!important}
.admin-section-toolbar-copy{display:grid;flex:1;gap:3px;min-width:0}
.admin-section-toolbar-copy :is(h2,h3,p,strong,small){margin:0}
.admin-section-toolbar-copy :is(h2,h3,strong){color:#1f3037;font-size:.96rem;font-weight:850;line-height:1.3}
.admin-section-toolbar-copy :is(p,small){color:#5b6e77;font-size:.84rem;font-weight:500;line-height:1.4}
.admin-section-toolbar>h2{flex:1;min-width:0;margin:0;color:#1f3037;font-size:.96rem;font-weight:850;line-height:1.3}
.admin-section-toolbar>h2+p{flex:0 0 100%;box-sizing:border-box;margin:-5px 0 0;padding-left:44px;color:#5b6e77;font-size:.84rem;font-weight:500;line-height:1.4}
.admin-section-icon{--admin-section-icon:url('/icons/job-sections/layout-dashboard.svg');display:grid;flex:0 0 32px;place-items:center;width:32px;height:32px;border-radius:50%;background:#08758e}
.admin-section-icon::before{width:16px;height:16px;background:#fff;content:"";-webkit-mask:var(--admin-section-icon) center/contain no-repeat;mask:var(--admin-section-icon) center/contain no-repeat}
.admin-section-icon-overview{--admin-section-icon:url('/icons/job-sections/layout-dashboard.svg')}
.admin-section-icon-contacts,.admin-section-icon-users,.admin-section-icon-access{--admin-section-icon:url('/icons/job-sections/users-round.svg')}
.admin-section-icon-sites,.admin-section-icon-projects,.admin-section-icon-files{--admin-section-icon:url('/icons/job-sections/folder-open.svg')}
.admin-section-icon-documents,.admin-section-icon-brief,.admin-section-icon-manifest{--admin-section-icon:url('/icons/job-sections/file-text.svg')}
.admin-section-icon-history,.admin-section-icon-archive,.admin-section-icon-activity{--admin-section-icon:url('/icons/job-sections/archive-restore.svg')}
.admin-section-icon-schedule{--admin-section-icon:url('/icons/job-sections/calendar-clock.svg')}
.admin-section-icon-pricing,.admin-section-icon-billing,.admin-section-icon-subscription{--admin-section-icon:url('/icons/job-sections/badge-dollar-sign.svg')}
.admin-section-icon-notes,.admin-section-icon-notices{--admin-section-icon:url('/icons/job-sections/message-square-text.svg')}
.admin-section-icon-materials,.admin-section-icon-integrations,.admin-section-icon-package{--admin-section-icon:url('/icons/job-sections/package.svg')}
.admin-section-icon-checklists,.admin-section-icon-rules,.admin-section-icon-filters{--admin-section-icon:url('/icons/job-sections/list-checks.svg')}
.admin-section-icon-review,.admin-section-icon-ready,.admin-section-icon-decision{--admin-section-icon:url('/icons/job-sections/clipboard-check.svg')}
.admin-section-icon-attention,.admin-section-icon-next,.admin-section-icon-privacy{--admin-section-icon:url('/icons/job-sections/triangle-alert.svg')}
.admin-section-toolbar>.admin-section-toolbar-actions,.admin-section-toolbar>.customer-card-actions,.admin-section-toolbar>.status-badge,.admin-section-toolbar>a,.admin-section-toolbar>strong:last-child{margin-left:auto}
.admin-section-panel{overflow:hidden}
.admin-section-panel>.admin-section-toolbar{grid-column:1/-1;margin:-20px -20px 0;width:calc(100% + 40px)}
.admin-section-panel>:not(.admin-section-toolbar){grid-column:1/-1}
.customer-detail-card>.admin-section-toolbar,.offer-content-section>.admin-section-toolbar,.offer-history-card>.admin-section-toolbar,.workspace-list-card>.admin-section-toolbar,.materials-queue-panel>.admin-section-toolbar{min-height:62px}
.customer-detail-card>.admin-section-toolbar h2 svg{display:none}
.admin-section-toolbar.admin-section-toolbar-inset{margin:0;width:100%;border:1px solid #d8e2e6!important;border-radius:7px}
@media(max-width:720px){.admin-section-toolbar{align-items:flex-start!important;flex-wrap:wrap}.admin-section-toolbar-copy{flex-basis:calc(100% - 44px)}.admin-section-toolbar>.admin-section-toolbar-actions,.admin-section-toolbar>.customer-card-actions,.admin-section-toolbar>a{margin-left:44px}.admin-section-panel>.admin-section-toolbar{margin:-17px -17px 0;width:calc(100% + 34px)}}
.jobs-page .job-section-toolbar{display:flex!important;align-items:center!important;gap:12px!important;box-sizing:border-box;width:100%;min-width:0;margin-top:0;padding:14px 16px!important;border-bottom:1px solid #d8e2e6!important;background:#f5f7f8!important}
.job-section-toolbar-copy,.job-section-disclosure-copy{display:grid;flex:1;gap:3px;min-width:0}
.job-section-toolbar-copy :is(h3,p,strong,small),.job-section-disclosure-copy>span{margin:0}
.job-section-toolbar-copy :is(h3,strong),.job-section-disclosure-title{color:#1f3037;font-size:.96rem;font-weight:850;line-height:1.3}
.job-section-toolbar-copy :is(p,small),.job-section-disclosure-description{color:#5b6e77;font-size:.84rem;font-weight:500;line-height:1.4}
.job-section-icon{--job-section-icon:url('/icons/job-sections/layout-dashboard.svg');display:grid;flex:0 0 32px;place-items:center;width:32px;height:32px;border-radius:50%;background:#08758e}
.job-section-icon::before{width:16px;height:16px;background:#fff;content:"";-webkit-mask:var(--job-section-icon) center/contain no-repeat;mask:var(--job-section-icon) center/contain no-repeat}
.job-section-icon-relationships{--job-section-icon:url('/icons/job-sections/users-round.svg')}
.job-section-icon-planning{--job-section-icon:url('/icons/job-sections/calendar-days.svg')}
.job-section-icon-captured{--job-section-icon:url('/icons/job-sections/clipboard-list.svg')}
.job-section-icon-attention{--job-section-icon:url('/icons/job-sections/triangle-alert.svg')}
.job-section-icon-history,.job-section-icon-archive{--job-section-icon:url('/icons/job-sections/archive-restore.svg')}
.job-section-icon-brief{--job-section-icon:url('/icons/job-sections/file-text.svg')}
.job-section-icon-schedule{--job-section-icon:url('/icons/job-sections/calendar-clock.svg')}
.job-section-icon-pricing{--job-section-icon:url('/icons/job-sections/badge-dollar-sign.svg')}
.job-section-icon-team{--job-section-icon:url('/icons/job-sections/users.svg')}
.job-section-icon-summary{--job-section-icon:url('/icons/job-sections/layout-dashboard.svg')}
.job-section-icon-notes{--job-section-icon:url('/icons/job-sections/message-square-text.svg')}
.job-section-icon-time{--job-section-icon:url('/icons/job-sections/clock.svg')}
.job-section-icon-travel{--job-section-icon:url('/icons/job-sections/car-front.svg')}
.job-section-icon-materials{--job-section-icon:url('/icons/job-sections/package.svg')}
.job-section-icon-checklists{--job-section-icon:url('/icons/job-sections/list-checks.svg')}
.job-section-icon-review{--job-section-icon:url('/icons/job-sections/clipboard-check.svg')}
.job-section-icon-files{--job-section-icon:url('/icons/job-sections/folder-open.svg')}
.job-section-toolbar-compact .job-section-icon{flex-basis:30px;width:30px;height:30px}
.job-section-toolbar-compact .job-section-icon::before{width:15px;height:15px}
.job-section-toolbar-compact>h3{flex:1;min-width:0}
.job-section-toolbar>a,.job-section-toolbar>.job-attachment-panel-actions,.job-section-toolbar>.job-checklist-heading-actions,.job-section-toolbar>.job-history-count{margin-left:auto}
.job-overview-card .job-section-toolbar{min-height:58px}
.job-planning-form>.job-section-toolbar{grid-column:1/-1;margin:-20px -20px 0;width:calc(100% + 40px)}
.job-planning-tab-layout .field-team-panel>.job-section-toolbar{margin:0}
.job-pricing-agreement>summary.job-section-toolbar{display:grid!important;grid-template-columns:32px minmax(0,1fr) auto 34px;cursor:pointer;list-style:none}
.job-pricing-agreement>summary.job-section-toolbar::-webkit-details-marker{display:none}
.job-pricing-agreement[open]>summary .job-section-disclosure-chevron{transform:rotate(90deg)}
.job-review-panel>.job-section-toolbar{margin:-20px -20px 18px;width:calc(100% + 40px)}
.job-material-review>.job-section-toolbar{padding:12px 14px!important}
.job-attachment-archive>.job-section-toolbar{margin-inline:-20px;width:calc(100% + 40px)}
.job-history-panel-header.job-section-toolbar>strong{flex:1}
.job-field-progress-header.job-section-toolbar{justify-content:flex-start}
.job-field-progress-header.job-section-toolbar>.status-badge{margin-left:auto}
.job-section-disclosure{display:block}
.job-section-disclosure>.job-section-disclosure-summary{display:grid!important;grid-template-columns:32px minmax(0,1fr) auto 34px;gap:12px;align-items:center;box-sizing:border-box;width:100%;margin:0!important;padding:14px 16px!important;border-bottom:1px solid #d8e2e6;background:#f5f7f8!important;cursor:pointer;list-style:none}
.job-section-disclosure>.job-section-disclosure-summary::-webkit-details-marker{display:none}
.job-section-disclosure>.job-section-disclosure-summary:hover{background:#eef3f5!important}
.job-section-disclosure>.job-section-disclosure-summary:focus-visible{outline:3px solid rgba(8,117,142,.2);outline-offset:-3px}
.job-section-disclosure:not([open])>.job-section-disclosure-summary{border-bottom-color:transparent!important}
.job-section-disclosure-chevron{display:grid;place-items:center;width:32px;height:32px;border:1px solid #c3d2d8;border-radius:5px;background:#fff;color:#08758e;font-size:1.25rem;font-weight:700;line-height:1;transform:rotate(0);transition:background 140ms ease,transform 140ms ease}
.job-section-disclosure-summary:hover .job-section-disclosure-chevron{background:#f7fbfc}
.job-section-disclosure[open]>.job-section-disclosure-summary .job-section-disclosure-chevron{transform:rotate(90deg)}
.job-field-work-layout details.job-checklist-empty{display:block;padding:0;overflow:hidden}
.job-checklist-empty-body{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px 20px}
.job-checklist-empty-body p{margin:4px 0 0;color:#5b6e77}
@media(max-width:760px){.jobs-page .job-section-toolbar{align-items:flex-start!important;flex-wrap:wrap}.job-section-toolbar-copy{flex-basis:calc(100% - 44px)}.job-section-toolbar>a,.job-section-toolbar>.job-attachment-panel-actions,.job-section-toolbar>.job-checklist-heading-actions{margin-left:44px}.job-planning-form>.job-section-toolbar{margin:-17px -17px 0;width:calc(100% + 34px)}.job-review-panel>.job-section-toolbar{margin:-20px -20px 18px;width:calc(100% + 40px)}.job-pricing-agreement>summary.job-section-toolbar,.job-section-disclosure>.job-section-disclosure-summary{grid-template-columns:32px minmax(0,1fr) 34px;gap:10px 12px}.job-pricing-agreement .job-pricing-summary,.job-section-disclosure-summary>.job-material-badges,.job-section-disclosure-summary>.job-checklist-summary-actions{grid-column:2/-1;grid-row:2;justify-content:flex-start}.job-pricing-agreement .job-section-disclosure-chevron,.job-section-disclosure-summary>.job-section-disclosure-chevron{grid-column:3;grid-row:1}.job-checklist-empty-body{grid-template-columns:38px minmax(0,1fr);padding:16px}.job-checklist-empty-body .button-secondary{grid-column:1/-1;text-align:center}}
/* Material catalog paging and financial review. */
.materials-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;border-top:1px solid #dbe4e8}.materials-pagination span{color:#5f727b;font-size:.82rem;font-weight:750}
.material-duplicate-confirm{display:flex!important;grid-template-columns:20px minmax(0,1fr)!important;align-items:start;gap:9px!important;padding:11px 12px;border:1px solid #d7e3e7;border-radius:6px;background:#f8fbfc}.material-duplicate-confirm input{margin-top:2px}
.material-source-history{border-top:1px solid #dce5e8;padding-top:12px}.material-source-history>summary{color:#075f76;cursor:pointer;font-weight:800}.material-source-history ol{display:grid;gap:0;margin:10px 0 0;padding:0;list-style:none}.material-source-history li{display:grid;gap:2px;padding:10px 0;border-top:1px solid #e3eaed}.material-source-history li span,.material-source-history li small{color:#60737c;font-size:.76rem}

.invoice-line-row small a{color:#075f76;font-weight:800}
@media(max-width:620px){.materials-pagination{display:grid;grid-template-columns:1fr 1fr}.materials-pagination span{grid-column:1/-1;grid-row:1;text-align:center}.materials-pagination a{justify-content:center}}
/* Material release states and duplicate review. */
.material-duplicate-warning{display:grid;gap:8px;padding:12px 14px;border:1px solid #e4ca80;border-radius:6px;background:#fff8e4}
.material-duplicate-warning .field-error{margin:0;color:#76520a}
.material-import-state{display:inline-flex;align-items:center;width:max-content;margin:3px 0 8px;padding:3px 8px;border-radius:999px;font-size:.72rem;font-weight:800}
.material-import-state.setup{background:#fff2cc;color:#76520a}.material-import-state.available{background:#e6f6ed;color:#17623a}
.job-material-actions .field-help{margin:0;color:#60737c;font-size:.78rem;line-height:1.45}

/* Checklist review: separate technician result, evidence compliance, Office decision, and row action. */
.job-checklist-review-table{min-width:0;border-top:1px solid #dbe5e8}
.job-checklist-table-head,.job-checklist-table-row{display:grid;grid-template-columns:minmax(260px,1.65fr) minmax(170px,.95fr) minmax(170px,.95fr) minmax(135px,.7fr) 36px;gap:14px;align-items:center}
.job-checklist-table-head{padding:9px 16px;background:#f5f8f9;color:#61747c;font-size:.72rem;font-weight:850;text-transform:uppercase}
.job-checklist-review-table .job-checklist-phase-group>h3{padding:9px 16px;background:#e9f5f7;border-top:1px solid #cbe0e5;border-bottom:1px solid #cbe0e5;color:#174b59}
.job-checklist-table-row{min-height:72px;padding:11px 16px;border-bottom:1px solid #dfe7ea;background:#fff}
.job-checklist-table-row[hidden],.job-checklist-phase-group[hidden],.job-checklist-review-group[hidden]{display:none!important}
.job-checklist-table-row.needs-attention{box-shadow:inset 3px 0 0 #d99914}
.job-checklist-table-step{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:center;min-width:0}
.job-checklist-table-step>span:last-child,.job-checklist-table-cell{display:grid;min-width:0;gap:4px}
.job-checklist-table-step strong,.job-checklist-table-cell strong{overflow-wrap:anywhere;color:#17262d;font-size:.86rem;line-height:1.35}
.job-checklist-table-step small,.job-checklist-table-cell small{color:#60737c;font-size:.74rem;line-height:1.35}
.job-checklist-table-cell.evidence-missing strong{color:#9a5f00}
.job-checklist-table-cell.evidence-complete strong{color:#207144}
.job-checklist-row-action{display:grid;place-items:center;width:34px;height:34px;border-radius:6px;color:#08718a;font-size:1.45rem;font-weight:900;text-decoration:none}
.job-checklist-row-action:hover,.job-checklist-row-action:focus-visible{background:#e7f4f7}
.status-badge.review-needsreview{border-color:#e4ba59;background:#fff2cf;color:#8a5800}
.status-badge.review-approved{border-color:#9ed3b1;background:#e8f7ed;color:#17683d}
.status-badge.review-returned{border-color:#e5aaa5;background:#fdeceb;color:#a2251b}
.status-badge.review-notrequired{border-color:#cddbe0;background:#f2f6f7;color:#536971}
.job-checklist-review-drawer{width:min(620px,100%);padding-bottom:0}
.job-checklist-review-drawer>header{padding-right:52px}
.job-checklist-review-drawer>header small{display:block;margin-bottom:7px;color:#49707c;font-weight:800}
.job-checklist-review-drawer-body{display:grid;gap:18px;padding:22px 28px 120px}
.job-checklist-review-context{margin:0;color:#5d717a;font-size:.82rem;font-weight:750}
.job-checklist-review-drawer-body>h3{margin:-8px 0 0;font-size:1.15rem;line-height:1.35}
.job-checklist-review-alert{padding:14px 16px;border:1px solid;border-radius:7px}
.job-checklist-review-alert strong,.job-checklist-review-alert p{margin:0}
.job-checklist-review-alert p{margin-top:4px;font-size:.86rem;line-height:1.45}
.job-checklist-review-alert.warning{border-color:#e4bd64;background:#fff6df;color:#795000}
.job-checklist-review-alert.returned{border-color:#e4aaa5;background:#fff0ef;color:#8e251d}
.job-checklist-review-alert.success{border-color:#9bcfaf;background:#ebf8ef;color:#195f38}
.job-checklist-review-summary{display:grid;grid-template-columns:1fr 1fr;margin:0;border-top:1px solid #dce6ea;border-bottom:1px solid #dce6ea}
.job-checklist-review-summary>div{display:grid;gap:7px;padding:13px 0}
.job-checklist-review-summary>div+div{padding-left:20px;border-left:1px solid #dce6ea}
.job-checklist-review-summary dt{color:#5e717a;font-size:.74rem;font-weight:800}
.job-checklist-review-summary dd{margin:0;color:#17262d;font-weight:750}
.job-checklist-review-evidence h4,.job-checklist-technician-comment h4{margin:0 0 9px;font-size:.86rem}
.job-checklist-review-evidence>a{display:grid;gap:4px;padding:13px 15px;border:1px solid #cbdbe1;border-radius:7px;color:#14313b;text-decoration:none}
.job-checklist-review-evidence>a:hover{border-color:#16839b;background:#f4fafb}
.job-checklist-review-evidence-list{display:grid;gap:8px;margin-top:10px}
.job-checklist-review-evidence-list>a{display:grid;gap:3px;padding:10px 12px;border:1px solid #d6e3e7;border-radius:6px;color:#14313b;text-decoration:none}
.job-checklist-review-evidence-list>a:hover{border-color:#16839b;background:#f4fafb}
.job-checklist-review-related{display:flex;justify-content:space-between;margin:10px 0 0;padding:10px 12px;background:#f3f7f8;color:#4d636c}
.job-checklist-closed-correction{display:grid;gap:8px;padding:12px;border:1px solid #e4bd64;border-radius:7px;background:#fff6df;color:#795000}
.job-checklist-closed-correction p{margin:0;font-size:.84rem;line-height:1.45}
.job-checklist-review-evidence small{color:#60737c}
.job-checklist-technician-comment blockquote{margin:0;padding:14px 16px;border-left:3px solid #9fcbd5;background:#f5f9fa;color:#293f48}
.job-checklist-technician-comment>small{display:block;margin-top:7px;color:#60737c}
.job-checklist-review-detail{border-top:1px solid #dce6ea}
.job-checklist-review-detail>summary{padding:14px 0;color:#174b59;font-weight:800;cursor:pointer}
.job-checklist-review-detail>p{margin:0 0 14px;color:#4e636d;line-height:1.5}
.job-checklist-review-detail ul{display:grid;gap:10px;margin:0 0 14px;padding:0;list-style:none}
.job-checklist-review-detail li{display:grid;gap:3px;padding-left:12px;border-left:3px solid #b8d4db}
.job-checklist-review-detail li span,.job-checklist-review-detail li small{color:#60737c;font-size:.8rem}
.job-checklist-review-actions{position:sticky;bottom:0;display:grid;gap:12px;padding:18px 28px;border-top:1px solid #d7e3e7;background:#fff}
.job-checklist-review-actions label{display:grid;gap:6px;font-weight:750}
.job-checklist-review-actions>form{display:grid;gap:18px;min-width:0}
.job-checklist-review-actions textarea{box-sizing:border-box;width:100%;min-width:0;min-height:112px;padding:12px 14px;border:1px solid #b9cbd3;border-radius:7px;background:#fff;color:#17262d;font:inherit;font-weight:400;line-height:1.5;resize:vertical}
.job-checklist-review-actions textarea::placeholder{color:#60737c;opacity:1}
.job-checklist-review-actions textarea:focus-visible{border-color:#08758e;outline:3px solid rgba(8,117,142,.16);outline-offset:1px}
.job-checklist-review-actions textarea.input-validation-error{border-color:#b42318}
.job-checklist-review-actions .field-validation-error{color:#b42318;font-size:.82rem;font-weight:600}
.job-checklist-review-actions.split{position:static;align-items:stretch}
.job-checklist-review-actions.split form{display:grid;gap:10px}
.job-checklist-review-actions .auth-submit,.job-checklist-review-actions .button-secondary{width:100%;justify-content:center}.job-checklist-review-decision-choice,.job-checklist-review-decision-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:center}.job-checklist-review-decision-button,.job-checklist-review-back,.job-checklist-review-decision-submit{display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:48px;border:1px solid;border-radius:7px;font:inherit;font-weight:800;text-align:center;text-decoration:none;cursor:pointer}.job-checklist-review-decision-button.approve,.job-checklist-review-decision-submit.approve{border-color:var(--primary);background:var(--primary);color:var(--white)}.job-checklist-review-decision-button.approve:hover,.job-checklist-review-decision-submit.approve:hover:not(:disabled){background:var(--primary-hover)}.job-checklist-review-decision-button.return,.job-checklist-review-decision-submit.return{border-color:#e4bd64;background:#fff6df;color:#795000}.job-checklist-review-decision-button.return:hover,.job-checklist-review-decision-submit.return:hover{border-color:#c9922f;background:#fff0c5}.job-checklist-review-back{border-color:#b9cbd3;background:#fff;color:#075f76}.job-checklist-review-back:hover{border-color:#16839b;background:#f2fafb}.job-checklist-review-decision-submit:disabled{border-color:#cbd6da;background:#e9eef0;color:#71838b;cursor:not-allowed}
@media(max-width:1280px){.job-checklist-table-head{display:none}.job-checklist-table-cell::before{display:block;margin-bottom:2px;color:#60737c;font-size:.68rem;font-weight:800;content:attr(data-label)}.job-checklist-table-row{grid-template-columns:minmax(220px,1.35fr) minmax(150px,.9fr) minmax(150px,.9fr) 34px}.job-checklist-table-row>.job-checklist-table-cell:nth-of-type(3){grid-column:2}.job-checklist-table-row>.job-checklist-table-cell:nth-of-type(4){grid-column:3}.job-checklist-row-action{grid-column:4;grid-row:1;align-self:start}}
@media(max-width:1050px){.job-checklist-table-row{grid-template-columns:minmax(0,1fr) 34px;gap:9px;padding:13px 14px}.job-checklist-table-step{grid-column:1}.job-checklist-table-row>.job-checklist-table-cell{grid-column:1;margin-left:45px}.job-checklist-table-row>.job-checklist-table-cell::before{display:block;margin-bottom:2px;color:#60737c;font-size:.68rem;font-weight:800;content:attr(data-label)}.job-checklist-table-row>.job-checklist-table-cell:nth-of-type(3),.job-checklist-table-row>.job-checklist-table-cell:nth-of-type(4){grid-column:1}.job-checklist-row-action{grid-column:2;grid-row:1}.job-checklist-review-drawer-body{padding:20px 18px 120px}.job-checklist-review-summary{grid-template-columns:1fr}.job-checklist-review-summary>div+div{padding-left:0;border-top:1px solid #dce6ea;border-left:0}.job-checklist-review-actions{padding:15px 18px}.job-checklist-review-actions.split{padding:15px 18px}}
/* Field work activity and comparison tables. */
.job-field-technician-filter{display:flex;align-items:center;justify-content:flex-end;gap:14px;min-height:52px;padding:8px 16px;border:1px solid #d6e3e7;border-radius:7px;background:#f8fbfc;color:#536a74}
.job-field-technician-filter label{display:flex;align-items:center;gap:10px;color:#28414b;font-size:.8rem;font-weight:800}.job-field-technician-filter select{min-width:220px;min-height:38px;padding:7px 34px 7px 10px;border:1px solid #b9cbd3;border-radius:6px;background:#fff;color:#1f3037;font:inherit}.job-field-technician-filter>span{font-size:.8rem}
.job-section-summary-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto}.job-note-add-action{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 11px;text-decoration:none}.job-note-add-action>span{font-size:1rem}
.job-work-note-list{display:grid}.job-work-note-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:12px 20px;border-top:1px solid #e1e8eb}.job-work-note-row:first-child{border-top:0}.job-entry-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#dff1f5;color:#075f76;font-size:.72rem;font-weight:900}.job-work-note-meta{display:flex;align-items:baseline;gap:10px;margin:0}.job-work-note-meta time{color:#60737c;font-size:.78rem}.job-work-note-body{margin:4px 0 0;color:#263940;font-size:.9rem;line-height:1.45;overflow-wrap:anywhere}
.job-review-panel>.job-material-review{margin:0 -20px;border-width:1px 0 0;border-radius:0}.job-review-panel>.job-material-review+.job-material-review{margin-top:0}.job-review-panel>.office-review-notes{border-bottom:1px solid #d7e2e6}.office-review-notes>.job-section-toolbar{display:flex}.office-review-notes .job-section-summary-actions{flex:0 0 auto}.office-review-notes .job-work-note-row{padding-block:11px}.office-review-notes .job-section-command{border-top:1px solid #e1e8eb}
.job-operational-table{overflow-x:auto}.job-operational-columns{box-sizing:border-box;width:100%;text-transform:none}.job-time-columns,.job-material-row.job-time-row{grid-template-columns:minmax(210px,1.1fr) minmax(125px,.65fr) minmax(120px,.65fr) minmax(100px,.5fr) minmax(78px,.35fr)}.job-travel-columns,.job-material-row.job-travel-row{grid-template-columns:minmax(190px,1fr) minmax(115px,.6fr) minmax(100px,.52fr) minmax(120px,.62fr) minmax(130px,.68fr) minmax(72px,.34fr)}
.job-operational-person{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;min-width:0}.job-operational-person>div{display:grid;gap:2px;min-width:0}.job-operational-person strong,.job-operational-person small{overflow-wrap:anywhere}.job-operational-person small{color:#60737c;font-size:.74rem;font-weight:500}.job-operational-cell{display:grid;align-content:center;gap:4px;min-width:0;color:#2d444d;font-size:.84rem}.job-operational-cell>small{width:max-content;max-width:100%}.job-operational-duration strong{font-size:.88rem}.job-operational-summary{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px 20px;padding:10px 20px;border-top:1px solid #dbe5e8;background:#f8fbfc;color:#425a64;font-size:.8rem}.job-travel-summary{justify-content:space-between}.job-operation-drawer-form input[readonly]{background:#f2f5f6;color:#435861;cursor:not-allowed}.job-operation-drawer-form label>small{color:#60737c;font-weight:500;line-height:1.4}
@media(max-width:1100px){.job-operational-columns{display:none}.job-material-row.job-time-row{grid-template-columns:minmax(190px,1.1fr) repeat(3,minmax(105px,.65fr)) minmax(72px,.35fr)}.job-material-row.job-travel-row{grid-template-columns:minmax(180px,1.05fr) repeat(4,minmax(90px,.58fr)) minmax(72px,.35fr)}.job-travel-row .job-operational-person{grid-column:1}.job-operational-cell::before{content:attr(data-label);color:#60737c;font-size:.68rem;font-weight:800;text-transform:uppercase}.job-travel-row .job-material-row-action{grid-column:auto}}
@media(max-width:760px){.job-field-technician-filter{align-items:stretch;display:grid;justify-content:stretch}.job-field-technician-filter label{display:grid}.job-field-technician-filter select{width:100%;min-width:0}.job-material-row.job-time-row,.job-material-row.job-travel-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.job-operational-person{grid-column:1/-1}.job-material-row.job-time-row .job-material-row-action,.job-material-row.job-travel-row .job-material-row-action{grid-column:2;justify-self:end}.job-section-disclosure-summary>.job-section-summary-actions{grid-column:2/-1;grid-row:2;margin-left:0;justify-content:flex-start}.job-material-header.job-section-disclosure-summary{flex-wrap:wrap}.job-work-note-row{padding-inline:16px}.job-travel-summary{justify-content:flex-start}}
@media(max-width:480px){.job-section-summary-actions{display:grid;grid-template-columns:1fr auto;width:100%}.job-note-add-action{justify-content:center}.job-material-row.job-time-row,.job-material-row.job-travel-row{grid-template-columns:1fr}.job-operational-person,.job-material-row.job-time-row .job-material-row-action,.job-material-row.job-travel-row .job-material-row-action{grid-column:1}.job-work-note-meta{display:grid;gap:1px}.job-operational-summary{display:grid}}

/* Office review attention: submission state is distinct from Office validation. */
.jobs-queue-row.needs-review-attention{box-shadow:inset 4px 0 #d99a16;background:#fffaf0}.jobs-queue-row.needs-review-attention:hover,.jobs-queue-row.needs-review-attention:focus-visible{background:#fff7e8}.jobs-queue-attention-badge{display:inline-flex!important;align-items:center;gap:6px;width:max-content;max-width:100%;margin-top:0!important;padding:3px 8px;border:1px solid #e6c66d;border-radius:999px;background:#fff4d8;color:#765205!important;font-size:.74rem!important;font-weight:800;line-height:1.3}.jobs-queue-attention-icon{flex:0 0 auto;font-size:.82rem;font-weight:900}.jobs-queue-attention-badge>span:last-child{min-width:0;overflow-wrap:anywhere}
.job-review-attention-summary{margin:0 -20px 18px;border-top:1px solid #e5c56f;border-bottom:1px solid #e5c56f;background:#fff8e5}
.job-review-attention-summary>header{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:12px;align-items:center;padding:15px 20px}
.job-review-attention-summary>header strong,.job-review-attention-summary>header p{margin:0}.job-review-attention-summary>header p{margin-top:3px;color:#6a592e;font-size:.84rem}
.job-review-attention-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#f4c451;color:#674700;font-weight:900}
.job-review-attention-list{display:grid;border-top:1px solid #ecd695;background:#fff}
.job-review-attention-list>a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;min-height:48px;padding:10px 20px;border-top:1px solid #e3e9eb;color:#243940;text-decoration:none}
.job-review-attention-list>a:first-child{border-top:0}.job-review-attention-list>a:hover,.job-review-attention-list>a:focus-visible{background:#f5fafb}.job-review-attention-list>a>strong{font-size:.86rem}.job-review-attention-list>a>span{color:#07657c;font-size:.8rem;font-weight:800;white-space:nowrap}
.job-review-attention-list>a.advisory{background:#f8fbfc}.job-review-attention-list>a.advisory>strong{color:#4d626b}.job-review-attention-list>a.advisory>span{color:#667982}
.job-review-attention-summary.advisory-only{border-color:#cfdee3;background:#f4f8fa}.job-review-attention-summary.advisory-only .job-review-attention-icon{background:#dcebf0;color:#315966}.job-review-attention-summary.advisory-only>header p{color:#5d7079}.job-review-attention-summary.advisory-only .job-review-attention-list{border-top-color:#d9e5e8}
.review-submission-exception{display:grid;gap:6px;margin:0 18px 18px}.review-submission-exception>p{margin:0;color:#425760}.review-submission-exception>p>strong{color:#263c45}.review-submission-exception-next{margin-top:4px!important;padding-top:9px;border-top:1px solid #ead39b;font-size:.82rem}.review-submission-exception-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:5px}.review-submission-exception-actions .secondary-action{width:auto;min-height:40px}.review-submission-exception-actions>a:not(.secondary-action){color:#075f76;font-size:.82rem;font-weight:800}
.job-review-panel .review-summary-grid>a{display:grid;align-content:center;gap:4px;min-width:0;padding:14px 16px;border-right:1px solid #dbe5e8;background:#f8fbfc;color:#17262d;text-decoration:none;overflow-wrap:anywhere}
.job-review-panel .review-summary-grid>a:last-child{border-right:0}.job-review-panel .review-summary-grid>a:hover,.job-review-panel .review-summary-grid>a:focus-visible{background:#f0f7f9}.job-review-panel .review-summary-grid>a small{color:#62747c;font-size:.74rem;font-weight:800}.job-review-panel .review-summary-grid>a strong{font-size:.9rem}.job-review-panel .review-summary-grid>a>span{color:#8a5a00;font-size:.76rem;font-weight:800}.job-review-panel .review-summary-grid>a.needs-attention{box-shadow:inset 0 3px #d99a16;background:#fffaf0}
@media(max-width:680px){.job-review-attention-summary{margin-inline:-20px}.job-review-attention-summary>header{grid-template-columns:34px minmax(0,1fr)}.job-review-attention-summary>header>.status-badge{grid-column:2;justify-self:start}.job-review-attention-list>a{grid-template-columns:1fr;gap:3px}.job-review-attention-list>a>span{white-space:normal}.job-review-panel .review-summary-grid>a{border-right:0;border-bottom:1px solid #dbe5e8}.job-review-panel .review-summary-grid>a:last-child{border-bottom:0}}

/* Office review decisions: compact page state with isolated action drawers. */
.review-return-scope-note{margin:0;padding:10px 12px;border-left:3px solid #1794ad;background:#f4f9fa;color:#425d67;font-size:.78rem;line-height:1.45}
.review-return-office-task{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;padding:12px 13px;border:1px solid #efd18b;border-radius:7px;background:#fff8e5;color:#604600}.review-return-office-task>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#f3b936;color:#624500;font-weight:900}.review-return-office-task>div{display:grid;gap:3px;min-width:0}.review-return-office-task strong,.review-return-office-task p{margin:0}.review-return-office-task strong{font-size:.82rem}.review-return-office-task p{color:#6d5d35;font-size:.76rem;line-height:1.4}.review-return-office-task a{justify-self:start;color:#075f76;font-size:.76rem;font-weight:800}
.review-action-drawer>header[hidden],.review-return-form-view[hidden],.review-item-picker[hidden]{display:none!important}.review-return-form-view{display:grid;gap:18px;min-height:100%}.review-linked-items{display:grid;gap:10px;padding-top:2px}.review-linked-items>header{display:flex;align-items:start;justify-content:space-between;gap:14px}.review-linked-items>header>div{display:grid;gap:3px}.review-linked-items>header strong,.review-linked-items>header p{margin:0}.review-linked-items>header strong{font-size:.84rem}.review-linked-items>header p,.review-linked-empty{color:#60737c;font-size:.76rem;line-height:1.4}.review-linked-items>header button{flex:0 0 auto}.review-linked-empty{margin:0;padding:11px 12px;border:1px dashed #bfd0d6;border-radius:6px;background:#f8fbfc}.review-linked-list{display:grid;gap:12px}.review-linked-technician{display:grid;gap:6px}.review-linked-technician>h4{margin:0;color:#405761;font-size:.74rem;text-transform:uppercase}.review-linked-item{display:grid;grid-template-columns:30px minmax(0,1fr) 32px;gap:10px;align-items:center;min-height:58px;padding:9px 8px 9px 11px;border:1px solid #cfdde2;border-radius:6px;background:#fff}.review-linked-item-copy{display:grid;gap:2px;min-width:0}.review-linked-item-copy strong{overflow-wrap:anywhere;font-size:.82rem}.review-linked-item-copy small{color:#60737c;font-size:.74rem}.review-linked-attention{justify-self:start;margin-top:2px;padding:2px 6px;border-radius:4px;background:#fff0c5;color:#755000;font-size:.69rem;font-weight:800}.review-linked-remove,.review-picker-back{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:transparent;color:#31515e;font-size:1.25rem;cursor:pointer}.review-linked-remove:hover,.review-linked-remove:focus-visible,.review-picker-back:hover,.review-picker-back:focus-visible{background:#e8f3f6;color:#075f76}.review-item-picker{display:grid;gap:14px;min-height:0}.review-item-picker>header{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:center;padding-bottom:13px;border-bottom:1px solid #d8e2e6}.review-item-picker>header h3,.review-item-picker>header p{margin:0}.review-item-picker>header h3{font-size:1rem}.review-item-picker>header p{margin-top:2px;color:#60737c;font-size:.76rem}.review-picker-intro{margin:0;color:#425a64;font-size:.8rem;line-height:1.45}.review-picker-search input{min-height:44px}.review-picker-filters{display:grid;grid-template-columns:1fr 1fr;gap:10px}.review-picker-filters select{width:100%;min-height:42px}.review-picker-results{display:grid;align-content:start;max-height:48vh;overflow-y:auto;border-block:1px solid #dbe5e8}.review-picker-results>section{display:grid}.review-picker-results h4{position:sticky;top:0;z-index:1;margin:0;padding:10px 2px 7px;background:#fff;color:#405761;font-size:.72rem;text-transform:uppercase}.review-picker-item{display:grid;grid-template-columns:22px 30px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:60px;padding:9px 8px;border-top:1px solid #e1e9ec;cursor:pointer}.review-picker-item:hover{background:#f4f9fa}.review-picker-item:has(input:checked){background:#ecf9f7;box-shadow:inset 3px 0 #159a8c}.review-picker-item.needs-attention{background:#fffaf0}.review-picker-item.needs-attention:has(input:checked){background:#eef9f4}.review-picker-item.is-unassigned{cursor:not-allowed;opacity:.58}.review-picker-item input{width:18px!important;min-height:18px!important;height:18px;margin:0}.review-picker-item-copy{display:grid;gap:2px;min-width:0}.review-picker-item-copy strong{overflow-wrap:anywhere;font-size:.82rem}.review-picker-item-copy small{color:#60737c;font-size:.73rem}.review-picker-attention{max-width:145px;padding:4px 7px;border:1px solid #efd18b;border-radius:4px;background:#fff2ce;color:#755000;font-size:.68rem;font-weight:800;line-height:1.25;text-align:center}.review-picker-type-icon{--review-picker-icon:url('/icons/job-sections/layout-dashboard.svg');display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e2f2f5}.review-picker-type-icon::before{width:15px;height:15px;background:#076b82;content:"";-webkit-mask:var(--review-picker-icon) center/contain no-repeat;mask:var(--review-picker-icon) center/contain no-repeat}.review-picker-type-icon.is-checklist{--review-picker-icon:url('/icons/job-sections/list-checks.svg')}.review-picker-type-icon.is-material{--review-picker-icon:url('/icons/job-sections/package.svg')}.review-picker-type-icon.is-time{--review-picker-icon:url('/icons/job-sections/clock.svg')}.review-picker-type-icon.is-travel{--review-picker-icon:url('/icons/job-sections/car-front.svg')}.review-picker-no-results{margin:0;padding:28px 12px;color:#60737c;text-align:center}.review-picker-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:center;padding:14px 0 18px;border-top:1px solid #d8e2e6;background:#fff}.review-picker-footer>p{display:grid;grid-column:1/-1;gap:2px;margin:0}.review-picker-footer>p strong{font-size:.8rem}.review-picker-footer>p span{color:#60737c;font-size:.73rem}.review-picker-footer :is(.invite-cancel,.auth-submit){width:100%;min-width:0}
.office-review-decision-header{padding:15px 18px}.review-decision-state{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:12px;align-items:center;margin:16px 18px 0;padding:13px 14px;border:1px solid #b8dec7;border-radius:7px;background:#effaf3;color:#185f36}.review-decision-state>div{display:grid;gap:2px}.review-decision-state strong,.review-decision-state p{margin:0}.review-decision-state p{color:#45665a;font-size:.8rem}.review-decision-state-icon,.review-decision-item-icon,.review-drawer-state>span{display:grid;place-items:center;flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:#11894d;color:#fff;font-weight:900}.review-decision-state-pending{border-color:#efd18b;background:#fff8e5;color:#6b4b00}.review-decision-state-pending .review-decision-state-icon{background:#f3b936;color:#624500}.review-decision-state-pending p{color:#6d5d35}.review-decision-items{display:grid}.review-decision-item{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:58px;padding:10px 18px;border-top:1px solid #dce5e8;color:#233940;text-decoration:none}.review-decision-items>.review-decision-item:first-child,.review-decision-state+.review-decision-item{margin-top:14px;border-top:1px solid #dce5e8}.review-decision-item>span:nth-child(2){display:grid;gap:2px}.review-decision-item strong{font-size:.86rem}.review-decision-item small{color:#60737c;font-size:.75rem}.review-decision-item-action{color:#07637a;font-size:.78rem;font-weight:800;white-space:nowrap}.review-decision-item:hover,.review-decision-item:focus-visible{background:#f4f9fa}.review-decision-item.is-warning{background:#fffaf0}.review-decision-item.is-warning:hover,.review-decision-item.is-warning:focus-visible{background:#fff5dc}.review-decision-item.is-warning .review-decision-item-icon{background:#f3b936;color:#624500}.review-decision-item.is-blocking{background:#fff2f1}.review-decision-item.is-blocking:hover,.review-decision-item.is-blocking:focus-visible{background:#ffe9e7}.review-decision-item.is-blocking .review-decision-item-icon{background:#cf3f38}.review-decision-item.is-advisory{background:#f7fafb}.review-decision-item.is-advisory .review-decision-item-icon{background:#dcebf0;color:#315966}.review-decision-item.is-complete .review-decision-item-icon{background:#11894d}.review-correction-team{display:grid;margin:14px 18px 0;border:1px solid #d7e2e6;border-radius:7px;overflow:hidden}.review-correction-team>div{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;padding:8px 12px}.review-correction-team>div+div{border-top:1px solid #dce5e8}.review-correction-team>div>span:first-child{font-weight:750}.review-correction-requests{display:grid;gap:10px;margin:16px 18px 0}.review-correction-requests>h3{margin:0;font-size:.88rem}.review-correction-request{display:grid;grid-template-columns:minmax(140px,22%) minmax(0,1fr);border:1px solid #d7e2e6;border-radius:7px;overflow:hidden}.review-correction-request>header{display:grid;align-content:start;gap:3px;padding:13px;background:#f4f8fa}.review-correction-request>header small{color:#60737c;font-size:.72rem;line-height:1.4}.review-correction-request>div{display:grid;gap:7px;padding:13px 14px}.review-correction-request p{margin:0;white-space:pre-line}.review-correction-request .secondary-link{justify-self:start;margin-top:3px}.review-correction-linked-items{display:grid;gap:4px;margin-top:3px;padding-top:8px;border-top:1px solid #dce5e8}.review-correction-linked-items>a{justify-self:start;color:#07637a;font-size:.78rem;font-weight:800}.review-decision-blocked-help{margin:0;padding:12px 18px;border-top:1px solid #e9b7b3;background:#fff3f1;color:#8a2e2a;font-size:.82rem;font-weight:750}.review-decision-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding:14px 18px;border-top:1px solid #d7e2e6;background:#f8fafb}.review-decision-footer>p{margin:0;color:#60737c;font-size:.78rem}.review-decision-footer>div{display:flex;align-items:center;justify-content:flex-end;gap:10px}.review-decision-footer :is(.primary-action,.secondary-action){width:auto;min-height:42px}.review-decision-footer .primary-action{min-width:230px}.review-decision-footer-approved{flex-wrap:wrap}.review-decision-tertiary{color:#075f76;font-size:.8rem;font-weight:800}.review-action-drawer{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(540px,100%);padding:30px 30px 0;overflow:hidden}.review-action-drawer>header{margin:0;padding:0 48px 20px 0;border-bottom:1px solid #d8e2e6}.review-action-drawer>header p{margin-top:5px}.review-action-form{grid-template-rows:auto;padding:22px 0 0;overflow-y:auto}.review-action-form[data-review-action-form="approve"]{display:flex;flex-direction:column;align-items:stretch}.review-return-targets{display:grid;gap:7px;margin:0;padding:0;border:0}.review-return-targets legend{padding:0;font-size:.82rem;font-weight:800}.review-return-targets>p{margin:0;color:#60737c;font-size:.76rem}.review-return-targets>div{display:grid;margin-top:3px;border:1px solid #cbdbe1;border-radius:7px;overflow:hidden}.review-return-targets label{display:flex;align-items:center;gap:10px;min-height:45px;padding:8px 12px;cursor:pointer}.review-return-targets label+label{border-top:1px solid #dce5e8}.review-return-targets input{width:17px!important;min-height:17px!important;height:17px;margin:0}.required-indicator{color:#c7352f}.review-drawer-state{display:flex;align-items:center;gap:11px;padding:13px 14px;border:1px solid #b8dec7;border-radius:7px;background:#effaf3;color:#185f36}.review-drawer-state>div{display:grid;gap:2px}.review-drawer-state>div small{color:#45665a;font-size:.78rem}.review-drawer-state.is-warning{border-color:#efd18b;background:#fff8e5;color:#6b4b00}.review-drawer-state.is-warning>span{background:#f3b936;color:#624500}.review-drawer-copy{margin:0;color:#354d57;line-height:1.45}.review-drawer-copy.subdued{color:#657780;font-size:.78rem}.review-approval-outcome{display:grid;gap:5px;padding:14px 0 16px;border-block:1px solid #d8e2e6}.review-approval-outcome h3,.review-approval-outcome p{margin:0}.review-approval-outcome h3{font-size:.9rem}.review-approval-outcome p{color:#354d57;line-height:1.45}.review-approval-outcome small{color:#657780;font-size:.78rem;line-height:1.4}.review-drawer-warning-list{display:grid;border:1px solid #ead39b;border-radius:7px;background:#fffaf0;overflow:hidden}.review-drawer-warning-list p{display:grid;gap:2px;margin:0;padding:10px 12px}.review-drawer-warning-list p+p{border-top:1px solid #eadfbf}.review-drawer-warning-list span{color:#6d5d35;font-size:.75rem}.invite-drawer .review-action-drawer-footer{position:sticky;bottom:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;margin-top:auto;padding:16px 0 18px;border-top:1px solid #d8e2e6}.review-action-drawer-footer>p{margin:0;color:#60737c;font-size:.76rem}.review-action-drawer-footer :is(.invite-cancel,.auth-submit){width:auto;min-width:118px}.review-action-drawer-footer .auth-submit{min-width:150px}.review-action-drawer-footer .auth-submit:disabled{border-color:#d3dde1;background:#e7ecef;color:#84959d;cursor:not-allowed;box-shadow:none}
.review-previous-correction-help{display:grid;gap:3px;margin:14px 18px 0;padding:11px 14px;border-left:3px solid #d99a16;background:#fff8e5;color:#624500}.review-previous-correction-help p,.review-previous-correction-help strong{margin:0}.review-previous-correction-help p{font-size:.78rem;line-height:1.45}
.review-picker-item[hidden],.review-picker-filters>[hidden],[data-review-picker-group][hidden],.review-picker-no-results[hidden]{display:none!important}.review-picker-filters:has(>[hidden]){grid-template-columns:1fr}.review-linked-items>header button:disabled{opacity:.55;cursor:not-allowed}.review-picker-item.is-office-only{cursor:not-allowed}
@media(max-width:760px){.review-decision-state{grid-template-columns:32px minmax(0,1fr)}.review-decision-state>.status-badge{grid-column:2;justify-self:start}.review-decision-item{grid-template-columns:28px minmax(0,1fr)}.review-decision-item-action{grid-column:2;white-space:normal}.review-correction-request{grid-template-columns:1fr}.review-decision-footer{align-items:stretch;display:grid}.review-decision-footer>div{display:grid}.review-decision-footer :is(.primary-action,.secondary-action){width:100%}.review-decision-footer .primary-action{min-width:0}.review-decision-tertiary{justify-self:start}.review-action-drawer{padding:24px 18px 0}.invite-drawer .review-action-drawer-footer{grid-template-columns:1fr 1fr}.review-action-drawer-footer>p{grid-column:1/-1}.review-action-drawer-footer :is(.invite-cancel,.auth-submit){width:100%;min-width:0}.review-linked-items>header{display:grid}.review-linked-items>header button{justify-self:start}.review-picker-filters{grid-template-columns:1fr}.review-picker-results{max-height:44vh}.review-picker-item{grid-template-columns:22px 30px minmax(0,1fr)}.review-picker-attention{grid-column:3;justify-self:start;max-width:100%;text-align:left}.review-picker-footer{grid-template-columns:1fr 1fr}.review-picker-footer>p{grid-column:1/-1}.review-picker-footer :is(.invite-cancel,.auth-submit){width:100%;min-width:0}}

/* Office review workspace: one ordered decision list followed by supporting work. */
.job-review-workspace{display:grid;border:1px solid #cbdbe1;border-radius:7px;background:#fff;overflow:visible}
.review-required-section,.submitted-work-review{min-width:0}
.review-required-header,.submitted-work-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid #d9e4e8}
.review-required-header h3,.review-required-header p,.submitted-work-header h3,.submitted-work-header p{margin:0}
.review-required-header h3,.submitted-work-header h3{font-size:1.05rem}
.review-required-header p,.submitted-work-header p{margin-top:3px;color:#5c7079;font-size:.84rem}
.review-required-header>span{flex:0 0 auto;color:#405761;font-size:.82rem;font-weight:800}
.review-items-table{display:grid}
.review-items-header{display:grid;grid-template-columns:minmax(0,1fr) 120px 120px 140px 190px;gap:14px;padding:9px 20px 9px 66px;border-bottom:1px solid #d9e4e8;background:#f6f9fa;color:#50656e;font-size:.72rem;font-weight:800;text-transform:uppercase}
.review-item-row{display:grid;grid-template-columns:32px minmax(0,1fr) 120px 120px 140px 190px;gap:14px;align-items:center;min-height:76px;padding:12px 20px;border-bottom:1px solid #e0e8eb}
.review-item-row:last-child{border-bottom:0}.review-item-row.is-decision{background:#fffaf0}.review-item-row.is-office-task{background:#f5f8f9}.review-item-row.is-waiting{background:#fbfcfc}.review-item-row.is-ready{background:#f2faf5}
.review-item-type-icon{--review-item-icon:url('/icons/job-sections/layout-dashboard.svg');display:grid;place-items:center;width:32px;height:32px;border-radius:6px;background:#e4f2f5}
.review-item-type-icon::before{width:17px;height:17px;background:#087087;content:"";-webkit-mask:var(--review-item-icon) center/contain no-repeat;mask:var(--review-item-icon) center/contain no-repeat}
.review-item-type-icon.is-correction,.review-item-type-icon.is-exception{--review-item-icon:url('/icons/job-sections/list-checks.svg');background:#fff0c8}.review-item-type-icon.is-correction::before,.review-item-type-icon.is-exception::before{background:#8b6000}
.review-item-type-icon.is-material-price,.review-item-type-icon.is-material{--review-item-icon:url('/icons/job-sections/package.svg')}.review-item-type-icon.is-time{--review-item-icon:url('/icons/job-sections/clock.svg')}.review-item-type-icon.is-travel{--review-item-icon:url('/icons/job-sections/car-front.svg')}.review-item-type-icon.is-checklist{--review-item-icon:url('/icons/job-sections/list-checks.svg')}.review-item-type-icon.is-document{--review-item-icon:url('/icons/job-sections/folder-open.svg')}
.review-item-issue{display:grid;gap:3px;min-width:0}.review-item-issue strong{color:#172a32;font-size:.88rem}.review-item-issue small{color:#5c7079;font-size:.77rem;line-height:1.4;overflow-wrap:anywhere}.review-item-affected,.review-item-responsible{font-size:.82rem;font-weight:750}
.review-item-status{display:inline-flex;align-items:center;min-height:27px;padding:4px 9px;border-radius:999px;background:#e7eef1;color:#3e5964;font-size:.72rem;font-weight:800}.review-item-status.is-decision{background:#ffedbd;color:#755000}.review-item-status.is-office-task{background:#e4eaed;color:#53656e}.review-item-status.is-ready{background:#dff3e7;color:#17633a}.review-item-status.is-advisory{background:#edf2f4;color:#52666f}
.review-item-action{display:grid;justify-items:start;gap:4px}.review-item-action a,.submitted-work-open,.review-expand-all{color:#07657c;font-size:.79rem;font-weight:800;text-decoration:none}.review-item-action a:hover,.submitted-work-open:hover,.review-expand-all:hover{text-decoration:underline}.review-item-action .review-item-secondary-action{color:#50666f;font-size:.72rem;font-weight:750}
.review-workspace-empty{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:center;padding:18px 20px}.review-workspace-empty>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#dff3e7;color:#17633a;font-weight:900}.review-workspace-empty strong,.review-workspace-empty p{margin:0}.review-workspace-empty p{margin-top:3px;color:#5c7079;font-size:.8rem}
.review-resolved-items{border-top:1px solid #dce6e9;background:#fafcfc}.review-resolved-items>summary{padding:11px 20px;color:#3f5b66;font-size:.78rem;font-weight:800;cursor:pointer}.review-resolved-items>div{display:grid;border-top:1px solid #e2e9eb}.review-resolved-items article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px}.review-resolved-items article+article{border-top:1px solid #e2e9eb}.review-resolved-items article>div{display:grid;gap:2px}.review-resolved-items article strong{font-size:.8rem}.review-resolved-items article small{color:#60737c;font-size:.74rem}
.submitted-work-review{border-top:10px solid #f2f5f6}.submitted-work-header{align-items:center}.review-technician-filter{display:flex;align-items:flex-end;gap:10px}.review-technician-filter label{display:grid;gap:4px}.review-technician-filter label>span{color:#50656e;font-size:.72rem;font-weight:800}.review-technician-filter select{min-width:180px;min-height:38px}.review-expand-all{min-height:38px;padding:0;border:0;background:transparent;cursor:pointer}
.submitted-work-sections{display:grid}.submitted-work-section{border-bottom:1px solid #dce6e9}.submitted-work-section:last-child{border-bottom:0}.submitted-work-section>summary{display:grid;grid-template-columns:32px minmax(150px,1fr) auto 20px;gap:12px;align-items:center;min-height:58px;padding:10px 20px;cursor:pointer;list-style:none}.submitted-work-section>summary::-webkit-details-marker{display:none}.submitted-work-section>summary::after{color:#46616c;content:"⌄";font-size:1.05rem;text-align:center}.submitted-work-section[open]>summary::after{transform:rotate(180deg)}.submitted-work-section>summary>strong{font-size:.88rem}.submitted-work-section>summary>span:last-of-type{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:#304a55;font-size:.8rem;font-weight:750}.submitted-work-section>summary em{padding:3px 7px;border-radius:999px;background:#ffedbd;color:#755000;font-size:.68rem;font-style:normal}
.submitted-work-section-body{display:grid;gap:12px;padding:0 20px 16px 64px;background:#fbfcfc}.submitted-work-open{justify-self:start}.review-checklist-list,.review-file-list{display:grid;border:1px solid #dbe5e8;border-radius:6px;background:#fff;overflow:hidden}.review-checklist-list>div,.review-file-list>div{display:flex;justify-content:space-between;gap:18px;padding:9px 11px;font-size:.78rem}.review-checklist-list>div+div,.review-file-list>div+div{border-top:1px solid #e2e9eb}.review-checklist-list strong{flex:0 0 auto;color:#536872}.review-file-list>div{display:grid;gap:2px}.review-file-list small{color:#60737c}
.review-workspace-footer{position:sticky;bottom:0;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 20px;border-top:1px solid #cddce1;background:#f8fafb;box-shadow:0 -4px 12px rgba(29,52,61,.06)}.review-workspace-footer>div{display:flex;align-items:center;gap:10px}.review-workspace-footer>div:first-child{display:grid;gap:2px}.review-workspace-footer strong,.review-workspace-footer p{margin:0}.review-workspace-footer p{color:#5c7079;font-size:.78rem}.review-workspace-footer :is(.primary-action,.secondary-action){width:auto;min-height:42px}
.field-work-review-context{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:12px;align-items:start;padding:15px 17px;border:1px solid #a9d3de;border-left:4px solid #13829a;border-radius:7px;background:#eef8fa}.field-work-review-context h3,.field-work-review-context p{margin:0}.field-work-review-context h3{font-size:.92rem}.field-work-review-context p{margin-top:4px;color:#3f5d68;font-size:.8rem;line-height:1.45}.field-work-review-context .secondary-action{width:auto;white-space:nowrap}.review-drawer-state.is-office-task{border-color:#cbd8dd;background:#f3f6f7;color:#415a64}.review-drawer-state.is-office-task>span{background:#637b84;color:#fff}
.review-drawer-correction-list{display:grid;border:1px solid #d8e2e6;border-radius:7px;background:#fff;overflow:hidden}.review-drawer-correction-list>article{display:grid;grid-template-columns:minmax(0,1fr) minmax(145px,190px);gap:16px;align-items:start;padding:13px 12px}.review-drawer-correction-list>article+article{border-top:1px solid #e2e9eb}.review-drawer-correction-copy,.review-drawer-correction-action{display:grid;gap:4px}.review-drawer-correction-list strong{font-size:.82rem}.review-drawer-correction-list small{color:#60737c;font-size:.73rem;line-height:1.4}.review-drawer-correction-reference{color:#354d57!important}.review-drawer-correction-action{justify-items:end}.review-drawer-correction-list em{color:#755000;font-size:.72rem;font-style:normal;font-weight:800;line-height:1.35;text-align:right}.review-drawer-correction-list a{color:#07637a;font-size:.73rem;font-weight:800;text-decoration:none}.review-drawer-correction-list a:hover,.review-drawer-correction-list a:focus-visible{text-decoration:underline}
@media(max-width:1050px){.review-items-header{grid-template-columns:minmax(0,1fr) 100px 110px 130px 160px}.review-item-row{grid-template-columns:32px minmax(0,1fr) 100px 110px 130px 160px}}
@media(max-width:800px){.review-drawer-correction-list>article{grid-template-columns:1fr}.review-drawer-correction-action{justify-items:start}.review-drawer-correction-list em{text-align:left}}
@media(max-width:800px){.review-items-header{display:none}.review-item-row{grid-template-columns:32px minmax(0,1fr);gap:7px 11px;padding:14px 16px}.review-item-type-icon{grid-row:1/6}.review-item-affected,.review-item-responsible,.review-item-status-cell,.review-item-action{grid-column:2}.review-item-affected::before,.review-item-responsible::before,.review-item-status-cell::before,.review-item-action::before{display:block;margin-bottom:2px;color:#6a7c84;content:attr(data-label);font-size:.65rem;font-weight:800;text-transform:uppercase}.review-item-action{padding-top:3px}.review-required-header,.submitted-work-header{display:grid;padding:16px}.review-required-header>span{white-space:normal}.review-technician-filter{display:grid;grid-template-columns:1fr auto;align-items:end}.review-technician-filter label{min-width:0}.review-technician-filter select{width:100%;min-width:0}.submitted-work-section>summary{grid-template-columns:30px minmax(0,1fr) 18px;padding:10px 16px}.submitted-work-section>summary>span:last-of-type{grid-column:2;justify-content:flex-start}.submitted-work-section>summary::after{grid-column:3;grid-row:1/3}.submitted-work-section-body{padding:0 16px 15px 57px}.review-checklist-list>div{display:grid;gap:3px}.review-resolved-items article,.review-drawer-correction-list>div{display:grid}.review-drawer-correction-list em{text-align:left}.review-workspace-footer{position:static;display:grid;padding:14px 16px}.review-workspace-footer>div{display:grid}.review-workspace-footer :is(.primary-action,.secondary-action){width:100%;text-align:center}.field-work-review-context{grid-template-columns:32px minmax(0,1fr)}.field-work-review-context .secondary-action{grid-column:1/-1;width:100%;text-align:center}}

/* Jobs workspace queues: stage navigation, focused filters, and contextual actions. */
.workspace-page-frame .jobs-workflow-cards{margin:8px 0 22px}
.jobs-workflow-cards .workspace-kpi-card>strong.warning{color:#8a5b00}
.jobs-queue-panel{overflow:visible;border:0;border-radius:0;background:transparent}
.jobs-queue-filters{display:grid;grid-template-columns:minmax(320px,1.7fr) minmax(180px,.5fr) minmax(180px,.5fr);gap:12px;align-items:center}
.jobs-search-control{position:relative;min-width:0}
.jobs-search-control input,.jobs-queue-filters select{box-sizing:border-box;width:100%;min-height:52px;border:1px solid #bfcfd6;border-radius:7px;background:#fff;color:#23343c;font:inherit}
.jobs-search-control input{padding:0 15px 0 54px}
.jobs-queue-filters select{padding:0 40px 0 14px}
.jobs-search-submit{position:absolute;z-index:2;left:7px;top:7px;display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:6px;background:transparent;cursor:pointer}
.jobs-search-submit:hover,.jobs-search-submit:focus-visible{background:#eaf4f7}
.jobs-search-submit>span{position:relative;display:block;width:15px;height:15px;border:2px solid #4e6873;border-radius:50%}
.jobs-search-submit>span::after{position:absolute;right:-6px;bottom:-4px;width:7px;height:2px;background:#4e6873;content:"";transform:rotate(45deg);transform-origin:left center}
.jobs-clear-filters{grid-column:1/-1;justify-self:end;margin-top:-3px;color:#075f76;font-size:.8rem;font-weight:800;text-decoration:none}
.jobs-clear-filters:hover,.jobs-clear-filters:focus-visible{text-decoration:underline}
.jobs-filter-context{margin-top:12px}
.jobs-queue-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0 14px;color:#5a6d76}
.jobs-queue-summary p,.jobs-queue-summary span{margin:0}
.jobs-queue-summary span{flex:0 0 auto}
.jobs-queue-table-card{overflow:hidden;border:1px solid #cbd9de;border-radius:7px;background:#fff}
.jobs-queue-table{display:grid}
.jobs-queue-head,.jobs-queue-row{display:grid;grid-template-columns:minmax(245px,1.35fr) minmax(190px,1.1fr) minmax(145px,.75fr) minmax(175px,.9fr) minmax(170px,.8fr) minmax(180px,.85fr);gap:18px;align-items:center}
.jobs-queue-head{padding:11px 20px;border:0;background:#f5f8f9;color:#61737c;font-size:.72rem;font-weight:850;text-transform:uppercase}
.jobs-queue-row{position:relative;min-height:104px;padding:15px 20px;border:0;border-top:1px solid #dfe7ea;background:#fff;color:inherit}
.jobs-queue-row:hover{background:#f9fbfc}
.jobs-queue-main{display:grid;grid-template-columns:1fr;align-content:center;gap:3px;min-width:0;color:inherit;text-decoration:none}
.jobs-queue-job-link::after{position:absolute;z-index:0;inset:0;content:""}
.jobs-queue-main>*{position:relative;z-index:1}
.jobs-queue-number{color:#07657c;font-size:.8rem;font-weight:850}
.jobs-queue-main strong,.jobs-queue-cell strong{display:block;color:#172026;font-size:.94rem;overflow-wrap:anywhere}
.jobs-queue-main small,.jobs-queue-cell small{display:block;margin-top:3px;color:#5b6d76;font-size:.82rem}
.jobs-queue-main:focus-visible{outline:2px solid #08758e;outline-offset:3px;border-radius:4px}
.jobs-queue-cell{display:grid;align-content:center;gap:2px;min-width:0}
.jobs-queue-status{gap:7px}
.jobs-queue-status .status-badge{justify-self:start}
.jobs-queue-action-cell{position:relative;z-index:2;display:flex;justify-content:flex-end}
.jobs-queue-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;max-width:100%;padding:0 14px;border:1px solid #08758e;border-radius:7px;background:#fff;color:#075f76;font-size:.82rem;font-weight:850;text-align:center;text-decoration:none}
.jobs-queue-action:hover,.jobs-queue-action:focus-visible{background:#eaf6f8}
.jobs-queue-action>span{font-size:1.05rem}
.jobs-queue-mobile-label{display:none;color:#60737c;font-size:.68rem;font-weight:800;text-transform:uppercase}
.jobs-secondary-views{display:flex;align-items:center;justify-content:flex-end;gap:13px;padding:14px 2px 0;color:#526670;font-size:.8rem}
.jobs-secondary-views a{color:#075f76;font-weight:800;text-decoration:none}
.jobs-secondary-views a:hover,.jobs-secondary-views a:focus-visible,.jobs-secondary-views a.active{text-decoration:underline}
.jobs-queue-empty{margin:0;padding:32px 20px}
.jobs-queue-row.needs-review-attention{box-shadow:inset 4px 0 #d99a16;background:#fffaf0}
.jobs-queue-row.needs-review-attention:hover{background:#fff7e8}
@media(max-width:1450px){.jobs-queue-head,.jobs-queue-row{grid-template-columns:minmax(180px,1.2fr) minmax(135px,.9fr) minmax(115px,.7fr) minmax(135px,.75fr) minmax(145px,.85fr);gap:12px}.jobs-queue-head>span:nth-child(4),.jobs-queue-row>.jobs-queue-cell:nth-of-type(3){display:none}.jobs-queue-row>.jobs-queue-cell:nth-of-type(4){display:grid}.jobs-queue-action-cell{display:flex}.jobs-queue-action{padding-inline:10px}}
@media(max-width:1150px){.jobs-queue-filters{grid-template-columns:1fr 1fr}.jobs-search-control{grid-column:1/-1}.jobs-queue-head{display:none}.jobs-queue-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;padding:18px}.jobs-queue-main{grid-column:1/-1;padding-bottom:10px;border-bottom:1px solid #e1e8eb}.jobs-queue-row>.jobs-queue-cell{display:grid!important;grid-template-columns:1fr;gap:3px}.jobs-queue-row>.jobs-queue-cell::before{display:none!important;content:none!important}.jobs-queue-mobile-label{display:block}.jobs-queue-action-cell{grid-column:1/-1;justify-content:stretch}.jobs-queue-action{width:100%}.jobs-queue-summary{padding-top:20px}}
@media(max-width:560px){.jobs-queue-filters{grid-template-columns:1fr}.jobs-search-control{grid-column:1}.jobs-clear-filters{grid-column:1}.jobs-queue-summary{align-items:flex-start;display:grid;gap:5px}.jobs-queue-row{grid-template-columns:1fr}.jobs-queue-main,.jobs-queue-action-cell{grid-column:1}.jobs-secondary-views{justify-content:flex-start;flex-wrap:wrap}}

/* Invoice-basis creation is one continuous drawer with a fixed decision frame. */
.invoice-create-flow{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(700px,100%);height:100dvh;overflow:hidden}
.invoice-create-flow [hidden]{display:none!important}
.invoice-create-heading{background:#fff;position:relative;z-index:2}
.invoice-create-form{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0;overflow:hidden}
.invoice-create-body{min-height:0;overflow-y:auto;padding:0 30px 28px;overscroll-behavior:contain}
.invoice-create-body .drawer-section:last-child{border-bottom:0}
.invoice-customer-stage h3{margin-bottom:8px}
.invoice-customer-picker{position:relative}
.invoice-customer-picker>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:0 14px;border:1px solid #b8cbd4;border-radius:7px;background:#fff;color:#17262d;font-weight:700;cursor:pointer;list-style:none}
.invoice-customer-picker>summary::-webkit-details-marker{display:none}
.invoice-customer-picker[open]>summary{border-color:#08758e;box-shadow:0 0 0 3px rgba(8,117,142,.15)}
.invoice-customer-menu{position:absolute;z-index:5;top:calc(100% + 6px);right:0;left:0;padding:12px;border:1px solid #c8d8df;border-radius:7px;background:#fff;box-shadow:0 12px 28px rgba(20,48,59,.16)}
.invoice-customer-search input{width:100%}
.invoice-customer-options{max-height:260px;margin-top:8px;overflow:auto}
.invoice-customer-option{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;padding:12px 8px;border:0;border-top:1px solid #e0e8ec;background:#fff;color:#17262d;font:inherit;text-align:left;cursor:pointer}
.invoice-customer-option:first-child{border-top:0}
.invoice-customer-option:hover,.invoice-customer-option:focus-visible,.invoice-customer-option[aria-selected=true]{background:#eef8fa;color:#075f74}
.invoice-customer-option small{color:#60737c}
.invoice-create-empty{display:grid;place-items:center;align-content:center;min-height:360px;padding:32px;color:#60737c;text-align:center}
.invoice-create-empty-icon{font-size:2.8rem;color:#71838c}
.invoice-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:24px}
.invoice-filter-grid label,.invoice-grouping-stage>label,.invoice-inline-correction-fields label,.invoice-issue-reason{display:grid;gap:7px;color:#344952;font-size:.84rem;font-weight:800}
.invoice-filter-grid select,.invoice-grouping-stage select,.invoice-inline-correction-fields input,.invoice-issue-reason textarea{box-sizing:border-box;width:100%;min-height:46px;border:1px solid #bdcfd7;border-radius:7px;padding:10px 12px;background:#fff;color:#17262d;font:inherit}
.invoice-stage-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:13px}
.invoice-stage-heading h3,.invoice-stage-heading p{margin:0}
.invoice-stage-heading p{margin-top:3px;color:#60737c;font-size:.86rem}
.invoice-selection-count{white-space:nowrap;color:#526a75;font-size:.84rem}
.invoice-job-picker{overflow:hidden;gap:0;border:1px solid #cbdbe2;border-radius:7px}
.invoice-job-option{border:0;border-top:1px solid #dce6ea;border-radius:0;padding:15px 14px}
.invoice-job-option:first-child{border-top:0}
.invoice-job-option[hidden]{display:none}
.invoice-job-option input[type=checkbox]{width:20px;height:20px;accent-color:#08758e}
.invoice-job-copy{min-width:0}
.invoice-job-copy strong,.invoice-job-copy small{overflow-wrap:anywhere}
.invoice-job-copy small:last-child{font-size:.76rem}
.invoice-job-estimate{align-items:flex-end!important;min-width:120px;text-align:right}
.invoice-job-estimate strong{font-size:.9rem}
.invoice-price-missing{color:#996000!important;font-weight:700!important}
.invoice-filter-empty{padding:22px;border:1px dashed #c8d7de;border-radius:7px;color:#60737c;text-align:center}
.invoice-selection-summary{display:grid;grid-template-columns:1fr auto;gap:4px 18px;margin-top:12px;padding:14px;background:#f1f6f8;border-radius:6px;color:#435a65}
.invoice-selection-summary>:nth-child(3){grid-column:2;text-align:right;font-weight:800;color:#17262d}
.invoice-selection-summary small{grid-column:1/-1;color:#996000}
.invoice-grouping-stage>label{margin-bottom:7px}
.invoice-grouping-stage>p{margin:7px 0 12px;color:#60737c;font-size:.82rem}
.invoice-grouping-preview{display:grid;gap:3px;padding:13px 14px;background:#f1f6f8;border-radius:6px;color:#435a65}
.invoice-grouping-preview>small{color:#60737c}
.invoice-grouping-preview-list,#invoice-grouping-preview-list{display:grid;margin-top:6px;border:1px solid #d5e1e6;border-radius:5px;background:#fff}
#invoice-grouping-preview-list span{padding:7px 10px;border-top:1px solid #e2eaed;color:#17262d;font-size:.84rem;font-weight:700}
#invoice-grouping-preview-list span:first-child{border-top:0}
.invoice-issues-stage{display:grid;gap:12px}
.invoice-issues-stage>.invoice-stage-heading{margin-bottom:0}
.invoice-issue-card{display:grid;gap:13px;padding:16px;border:1px solid #e6bd64;border-left:4px solid #d28b00;border-radius:7px;background:#fffaf0}
.invoice-issue-card.blocking{border-color:#e3aaa3;border-left-color:#c4372d;background:#fff6f4}
.invoice-issue-card[hidden]{display:none}
.invoice-issue-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px}
.invoice-issue-heading>div{display:grid;gap:3px}
.invoice-issue-heading small{color:#657780}
.invoice-issue-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#d88c00;color:#fff;font-weight:900}
.invoice-issue-card.blocking .invoice-issue-icon{background:#c4372d}
.invoice-issue-card>p{margin:0;color:#455d68;line-height:1.45}
.invoice-inline-prices{display:grid;gap:8px}
.invoice-inline-correction{border-top:1px solid #ead7ab;padding-top:8px}
.invoice-inline-correction summary{display:flex;justify-content:space-between;gap:14px;color:#17262d;font-weight:700;cursor:pointer}
.invoice-inline-correction summary span{color:#00677d}
.invoice-inline-correction-fields{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding-top:12px}
.invoice-issue-resolution{padding:10px 12px;background:#fff;border-radius:5px}
.invoice-issue-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}
.invoice-issue-actions a{color:#00677d;font-weight:800}
.invoice-issue-decision{display:flex;align-items:flex-start;gap:12px;padding-top:12px;border-top:1px solid #ead7ab;cursor:pointer}
.invoice-issue-decision input{width:20px;height:20px;accent-color:#08758e}
.invoice-issue-decision span{display:grid;gap:3px}
.invoice-issue-decision small{color:#60737c;font-weight:400}
.invoice-issue-reason textarea{resize:vertical}
.invoice-create-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;margin:0;padding:16px 30px;border-top:1px solid #d6e2e7;background:#fff;box-shadow:0 -8px 18px rgba(28,56,66,.06)}
.invoice-create-actions>*{margin:0}
.invoice-footer-status{display:grid;gap:3px;min-width:0}
.invoice-footer-status small{color:#60737c;overflow-wrap:anywhere}
.invoice-create-actions .secondary-action,.invoice-create-actions .primary-action{min-height:48px}
.invoice-create-actions .primary-action:disabled{border-color:#d3dde1;background:#e7ecef;color:#84959d;cursor:not-allowed;box-shadow:none}

@media(max-width:680px){
 .invoice-create-heading{padding:20px 18px 16px}
 .invoice-create-body{padding:0 18px 22px}
 .invoice-filter-grid{grid-template-columns:1fr}
 .invoice-stage-heading{display:grid;gap:8px}
 .invoice-selection-count{white-space:normal}
 .invoice-job-option{grid-template-columns:auto minmax(0,1fr)}
 .invoice-job-estimate{grid-column:2;align-items:flex-start!important;text-align:left}
 .invoice-selection-summary{grid-template-columns:1fr}
 .invoice-selection-summary>:nth-child(3){grid-column:1;text-align:left}
 .invoice-issue-heading{grid-template-columns:auto minmax(0,1fr)}
 .invoice-issue-heading>.status-badge{grid-column:2;justify-self:start}
 .invoice-inline-correction-fields{grid-template-columns:1fr}
 .invoice-issue-actions{align-items:stretch;display:grid}
 .invoice-create-actions{grid-template-columns:1fr 1fr;padding:13px 18px}
 .invoice-footer-status{grid-column:1/-1}
 .invoice-create-actions .secondary-action,.invoice-create-actions .primary-action{width:100%;text-align:center}
}

.invoice-created-drawer{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(660px,100%);height:100dvh;overflow:hidden}
.invoice-created-heading{background:#fff}
.invoice-created-body{min-height:0;overflow-y:auto;padding:24px 30px 30px;overscroll-behavior:contain}
.invoice-created-success{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid #9fd0ad;border-radius:7px;background:#edf8f0;color:#165c2c}
.invoice-created-success span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#16934a;color:#fff;font-weight:900}
.invoice-created-title{display:flex;align-items:center;gap:12px;padding:24px 0 18px;border-bottom:1px solid #d7e2e7}
.invoice-created-title h3{margin:0;font-size:1.6rem}
.invoice-created-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:18px 0;border-bottom:1px solid #d7e2e7}
.invoice-created-facts div{display:grid;gap:4px;padding:0 16px;border-left:1px solid #d7e2e7}
.invoice-created-facts div:first-child{padding-left:0;border-left:0}
.invoice-created-facts dt{color:#60737c;font-size:.82rem}
.invoice-created-facts dd{margin:0;color:#17262d;font-weight:800}
.invoice-created-work{padding:20px 0;border-bottom:1px solid #d7e2e7}
.invoice-created-work h3{margin:0 0 12px}
.invoice-created-job-list{overflow:hidden;border:1px solid #cbdbe2;border-radius:7px}
.invoice-created-job{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:13px 14px;border-top:1px solid #dce6ea}
.invoice-created-job:first-child{border-top:0}
.invoice-created-job>span:first-child{display:grid;gap:3px;min-width:0}
.invoice-created-job small{color:#60737c}
.invoice-created-incomplete{color:#966000;font-size:.82rem;font-weight:800}
.invoice-created-totals{margin:0;padding:16px 0;border-bottom:1px solid #d7e2e7}
.invoice-created-totals div{display:flex;justify-content:space-between;gap:20px;padding:6px 0}
.invoice-created-totals dd{margin:0}
.invoice-created-totals .total{margin-top:7px;padding-top:13px;border-top:2px solid #2d424c;font-size:1.05rem;font-weight:800}
.invoice-created-info{display:flex;align-items:flex-start;gap:12px;margin-top:20px;padding:14px 16px;border-radius:7px;background:#f0f5f7;color:#425a65}
.invoice-created-info>span{display:grid;place-items:center;flex:0 0 auto;width:26px;height:26px;border:2px solid #55717d;border-radius:50%;font-weight:900}
.invoice-created-info p{margin:0;line-height:1.45}
.invoice-created-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:16px 30px;border-top:1px solid #d6e2e7;background:#fff;box-shadow:0 -8px 18px rgba(28,56,66,.06)}
.invoice-created-actions a{min-height:48px;text-align:center}

@media(max-width:680px){
 .invoice-created-heading{padding:20px 18px 16px}
 .invoice-created-body{padding:20px 18px 24px}
 .invoice-created-facts{grid-template-columns:1fr}
 .invoice-created-facts div,.invoice-created-facts div:first-child{padding:9px 0;border:0;border-top:1px solid #e2eaed}
 .invoice-created-facts div:first-child{border-top:0}
 .invoice-created-job{grid-template-columns:1fr;gap:7px}
 .invoice-created-actions{padding:13px 18px}
}

/* Invoice basis workspace: scannable lines, contextual review, and shared summary. */
.invoice-detail-page{padding-bottom:48px}
.invoice-pricing-source{display:grid;grid-template-columns:44px minmax(260px,1fr) auto auto;align-items:center;gap:16px;margin-top:18px;padding:18px 20px;border:1px solid #cbdbe3;border-left:4px solid #16849d;border-radius:7px;background:#fff}
.invoice-pricing-copy{display:grid;gap:3px;min-width:0}
.invoice-pricing-copy>span,.invoice-pricing-copy>small{color:#60737c}
.invoice-pricing-copy>strong{font-size:1rem}
.invoice-pricing-link{padding:10px 18px;border-right:1px solid #d7e2e7;color:#00677d;text-decoration:none;font-weight:800;white-space:nowrap}
.invoice-pricing-total{display:grid;gap:2px;min-width:135px;text-align:right;font-size:1.2rem}
.invoice-pricing-total small{color:#60737c;font-size:.76rem;font-weight:500}
.invoice-estimate-variance{margin-top:12px;border:1px solid #cbdbe3;border-radius:7px;background:#fff}
.invoice-estimate-variance>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:14px 20px;border-bottom:1px solid #dce5e9}
.invoice-estimate-variance>header>div{display:grid;gap:3px}
.invoice-estimate-variance>header span,.invoice-estimate-variance>header small{color:#60737c}
.invoice-estimate-variance>div{display:grid}
.invoice-estimate-variance article{display:grid;grid-template-columns:minmax(240px,1fr) minmax(390px,.9fr);gap:18px;align-items:center;padding:14px 20px;border-top:1px solid #e1e9ed}
.invoice-estimate-variance article:first-child{border-top:0}
.invoice-estimate-variance article>span{display:grid;gap:3px}
.invoice-estimate-variance article small{color:#60737c}
.invoice-estimate-variance dl{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:12px;margin:0;text-align:right}
.invoice-estimate-variance dl div{display:grid;gap:3px}
.invoice-estimate-variance dt{color:#60737c;font-size:.72rem;font-weight:700}
.invoice-estimate-variance dd{margin:0;font-weight:800;white-space:nowrap}
.invoice-estimate-variance dd.has-variance{color:#8a5800}
.invoice-detail-grid,.invoice-tab-layout{grid-template-columns:minmax(0,1fr) 350px;gap:18px}
.invoice-lines-card{container-type:inline-size;container-name:invoice-lines;min-width:0}
.invoice-card-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px}
.invoice-card-heading>div{min-width:0}
.invoice-card-heading h2{display:flex;align-items:center;gap:9px;font-size:1.15rem}
.invoice-card-heading .secondary-action{flex:0 0 auto}
.count-pill{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 7px;border-radius:999px;background:#e6f2f5;color:#315967;font-size:.78rem}
.invoice-job-group-title{align-items:center;padding:14px 20px;background:#f5f8f9}
.invoice-lines-head,.invoice-line-row{box-sizing:border-box;width:100%;grid-template-columns:minmax(280px,1.6fr) minmax(90px,.55fr) minmax(115px,.68fr) minmax(60px,.35fr) minmax(120px,.62fr) 82px;gap:12px;padding-inline:20px}
.invoice-lines-head{padding-block:10px;border-bottom:1px solid #dce5e9;background:#fbfcfd}
.invoice-lines-head span:nth-child(n+2){text-align:right}
.invoice-line-row{min-height:92px;padding-block:15px;border-top:0;border-bottom:1px solid #e1e9ed}
.invoice-line-row:last-child{border-bottom:0}
.invoice-line-row.is-excluded{background:#f7f9fa;color:#657780}
.invoice-line-description{display:grid;gap:3px;min-width:0}
.invoice-line-title{display:flex;align-items:center;gap:8px;min-width:0}
.invoice-line-title>strong{overflow-wrap:anywhere}
.invoice-line-description>small{color:#60737c}
.invoice-line-source{width:max-content;max-width:100%;color:#00677d;font-size:.8rem;font-weight:750;text-decoration:none}
.line-inclusion-state{display:inline-flex;align-items:center;flex:0 0 auto;padding:3px 7px;border:1px solid;border-radius:999px;font-size:.68rem;font-weight:800}
.line-inclusion-state.is-included{border-color:#9ed3b1;background:#e9f7ee;color:#17683d}
.line-inclusion-state.is-excluded{border-color:#cbd9de;background:#f1f5f6;color:#536871}
.invoice-line-value,.invoice-line-amount{justify-self:end;text-align:right;white-space:nowrap}
.invoice-line-amount{font-size:.94rem}
.invoice-line-edit{justify-self:end;padding:8px 11px;border:1px solid #16849d;border-radius:6px;color:#00677d;text-decoration:none;font-weight:800}
.invoice-line-edit:hover,.invoice-line-edit:focus-visible{background:#edf7f9}
.invoice-price-change{width:max-content;max-width:100%;margin-top:4px;padding:4px 7px;border-radius:5px;background:#fff2cd;color:#805400;font-size:.72rem;font-weight:800}
.invoice-summary-card{display:grid;gap:18px;padding:20px}
.invoice-summary-heading{display:flex;align-items:center;gap:11px;padding-bottom:14px;border-bottom:1px solid #dce5e9}
.invoice-summary-heading h2{margin:0}
.invoice-summary-context{display:grid;gap:4px;padding:13px 0;border-bottom:1px solid #dce5e9}
.invoice-summary-context>span,.invoice-summary-context>small{color:#60737c}
.invoice-summary-context>strong{font-size:1.05rem}
.invoice-summary-context.needs-review>strong{color:#8a5800}
.invoice-summary-context.is-complete>strong{color:#17683d}
.invoice-summary-totals{margin:0!important}
.invoice-summary-totals div{align-items:baseline}
.invoice-summary-totals dd{margin:0;text-align:right;white-space:nowrap}
.invoice-summary-totals .total{font-size:1.06rem!important}
.invoice-checklist{display:grid;gap:10px;margin:0;padding:15px 0;border-top:1px solid #dce5e9;border-bottom:1px solid #dce5e9;border-radius:0;background:transparent}
.invoice-checklist h3{margin:0 0 2px}
.invoice-checklist p{display:flex;align-items:center;gap:8px;margin:0!important}
.invoice-checklist p>span{display:grid;place-items:center;flex:0 0 auto;width:20px;height:20px;border-radius:50%;color:#fff;font-size:.72rem;font-weight:900}
.invoice-checklist p.is-complete>span{background:#1d9b55}
.invoice-checklist p.needs-action>span{background:#d38a00}
.invoice-summary-card form{margin:0}
.invoice-summary-card .secondary-action+.primary-action,.invoice-summary-card .secondary-action+form{margin-top:-8px}
.invoice-summary-card .primary-action:disabled{border-color:#d3dde1;background:#e7ecef;color:#84959d;cursor:not-allowed;box-shadow:none}
.invoice-tab-card{overflow:hidden}
.invoice-tab-form{padding:22px}
.invoice-tab-form.compact{padding:20px 0 0}
.invoice-tab-form label>span:first-child{font-weight:750}
.invoice-tab-actions{display:flex;justify-content:flex-end;margin-top:20px;padding-top:18px;border-top:1px solid #dce5e9}
.invoice-comparison-body{padding:22px}
.invoice-review-status{display:grid;gap:5px;padding:14px 16px;border:1px solid;border-radius:7px}
.invoice-review-status.needs-review{border-color:#e2bf68;background:#fff7df;color:#74500b}
.invoice-review-status.is-complete{border-color:#9fd0ad;background:#edf8f0;color:#185b2b}
.invoice-review-status span{color:#536a75}
.invoice-difference-list{margin-top:16px;border:1px solid #d7e2e7;border-radius:7px;overflow:hidden}
.invoice-difference-row{display:grid;grid-template-columns:minmax(220px,1fr) 145px 145px 110px;gap:16px;align-items:center;padding:14px 16px;border-top:1px solid #dce5e9}
.invoice-difference-row:first-child{border-top:0}
.invoice-difference-row>span{display:grid;gap:3px}
.invoice-difference-row small{color:#60737c}
.invoice-difference-row>span:nth-child(n+2),.invoice-difference-amount{text-align:right}
.invoice-difference-amount{color:#8a5800;white-space:nowrap}
.invoice-offer-issue{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;align-items:start;margin-top:12px;padding:14px 16px;border:1px solid #e2bf68;border-radius:7px;background:#fff7df;color:#74500b}
.invoice-offer-issue>span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#d38a00;color:#fff;font-weight:900}
.invoice-offer-issue strong{display:block;margin-bottom:3px}
.invoice-offer-issue p{margin:0;color:#536a75;line-height:1.45}
.invoice-stage-guidance{display:grid;gap:5px;margin-top:16px;padding:14px 16px;border:1px solid #cbdbe3;border-radius:7px;background:#f5f8f9}
.invoice-stage-guidance.is-ready{border-color:#9fd0ad;background:#edf8f0;color:#185b2b}
.invoice-stage-guidance.is-error{border-color:#e3aaa2;background:#fff2f0;color:#8a281e}
.invoice-stage-guidance p{margin:0;color:#536a75;line-height:1.45}
.invoice-payment-panel{margin-top:22px;padding-top:20px;border-top:1px solid #dce5e9}
.invoice-payment-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.invoice-payment-heading p,.invoice-payment-panel>p{margin:4px 0 0;color:#536a75;line-height:1.45}
.status-badge.payment-paid{background:#e5f5e9;color:#17602c}
.status-badge.payment-overdue{background:#fff1cf;color:#825600}
@media(max-width:680px){.invoice-payment-heading{align-items:stretch;flex-direction:column}.invoice-payment-heading .status-badge{align-self:flex-start}}
.invoice-credit-list,.invoice-credit-panel{margin-top:22px;padding-top:20px;border-top:1px solid #dce5e9}
.invoice-credit-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 0;border-top:1px solid #e1e9ed}
.invoice-credit-row:first-of-type{margin-top:12px}
.invoice-credit-row span{display:grid;gap:3px}.invoice-credit-row small{color:#60747e}.invoice-credit-row a{color:#00677d;font-weight:750}
@media(max-width:680px){.invoice-credit-row{align-items:flex-start;flex-direction:column}}
.money-input{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0!important;padding:0!important;background:transparent!important}
.money-input input{border-radius:6px 0 0 6px}
.money-input>span:last-child{display:grid;place-items:center;align-self:stretch;padding:0 12px;border:1px solid #b8cbd4;border-left:0;border-radius:0 6px 6px 0;background:#f4f7f8;color:#536a75;font-weight:750}
.invoice-inline-history{margin-top:22px;padding-top:20px;border-top:1px solid #dce5e9}
.invoice-inline-history h3{margin:0 0 10px;font-size:1rem}
.history-list.invoice-tab-card{margin-top:0}

.invoice-line-drawer{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(650px,100%);height:100dvh;overflow:hidden}
.invoice-line-edit-form{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0}
.invoice-line-drawer-body{display:grid;align-content:start;gap:18px;min-height:0;padding:22px 30px 36px;overflow-y:auto;overscroll-behavior:contain}
.invoice-drawer-job{color:#00677d;text-decoration:none;font-weight:850}
.invoice-reference-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:14px 16px;border:1px solid #cbdbe3;border-radius:7px;background:#f5f9fa}
.invoice-reference-panel>span,.invoice-reference-panel>strong,.invoice-reference-panel>small{grid-column:1}
.invoice-reference-panel>span,.invoice-reference-panel>small{color:#60737c}
.invoice-reference-panel>a{grid-column:2;grid-row:1/4;align-self:center;color:#00677d;text-decoration:none;font-weight:800}
.invoice-switch-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid #dce5e9;border-bottom:1px solid #dce5e9}
.invoice-switch-row>span{display:grid;gap:3px}
.invoice-switch-row small{color:#60737c;font-weight:400}
.invoice-switch-row>input{width:42px;height:22px;accent-color:#08758e}
.invoice-field{display:grid;gap:7px;font-weight:750}
.invoice-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.invoice-line-drawer-body :is(input:not([type="checkbox"]),select,textarea),.invoice-tab-form :is(input:not([type="checkbox"]),select,textarea){box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:9px 11px;border:1px solid #b9cbd3;border-radius:7px;background:#fff;color:#17262d;font:inherit}
.invoice-line-drawer-body textarea,.invoice-tab-form textarea{resize:vertical}
.invoice-line-drawer-body :is(input:not([type="checkbox"]),select,textarea):focus-visible,.invoice-tab-form :is(input:not([type="checkbox"]),select,textarea):focus-visible{outline:3px solid rgba(8,117,142,.16);border-color:#08758e}
.invoice-edit-difference{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 16px;padding:13px 15px;border:1px solid #cbdbe3;border-radius:7px;background:#f5f8f9}
.invoice-edit-difference>strong{grid-column:2;grid-row:1/3;align-self:center}
.invoice-edit-difference>small{color:#60737c}
.invoice-edit-difference.has-change{border-color:#e2bf68;background:#fff7df;color:#74500b}
.invoice-drawer-note{margin:0;color:#60737c;font-size:.83rem;line-height:1.5}
.invoice-line-drawer-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;margin:0;padding:15px 30px;border-top:1px solid #d6e2e7;background:#fff;box-shadow:0 -8px 18px rgba(28,56,66,.06)}
.invoice-line-drawer-actions>span{color:#60737c;font-size:.82rem}
.field-validation:empty,.field-validation.validation-summary-valid{display:none}

@media(max-width:1350px){
 .invoice-detail-grid,.invoice-tab-layout{grid-template-columns:1fr}
 .invoice-summary-card{position:static}
}
@container invoice-lines (max-width:860px){
 .invoice-lines-head{display:none}
 .invoice-line-row{grid-template-columns:1fr 1fr;gap:12px 18px;min-width:0;padding:16px 18px}
 .invoice-line-row>*{grid-column:auto}
 .invoice-line-description{grid-column:1/-1}
 .invoice-line-value,.invoice-line-amount{display:flex;justify-content:space-between;gap:14px;justify-self:stretch;text-align:right}
 .invoice-line-value::before,.invoice-line-amount::before{content:attr(data-label);color:#60737c;font-size:.74rem;font-weight:700}
 .invoice-line-edit{grid-column:1/-1;justify-self:stretch;text-align:center}
}
@media(max-width:820px){
 .invoice-pricing-source{grid-template-columns:44px minmax(0,1fr) auto}
 .invoice-pricing-total{grid-column:2/-1;text-align:left}
 .invoice-difference-row{grid-template-columns:1fr 1fr}
 .invoice-difference-row>span:first-child{grid-column:1/-1}
 .invoice-difference-row>span:nth-child(n+2){text-align:left}
 .invoice-difference-amount{align-self:end;text-align:right}
 .invoice-estimate-variance article{grid-template-columns:1fr}
 .invoice-estimate-variance dl{text-align:left}
}
@media(max-width:620px){
 .invoice-pricing-source{grid-template-columns:38px minmax(0,1fr);gap:12px;padding:16px}
 .invoice-pricing-link,.invoice-pricing-total{grid-column:2;border:0;padding:0;text-align:left}
 .invoice-card-heading{align-items:stretch;flex-direction:column}
 .invoice-card-heading .secondary-action{text-align:center}
 .invoice-line-row{grid-template-columns:1fr}
 .invoice-line-description,.invoice-line-edit{grid-column:1}
 .invoice-line-title{align-items:flex-start;flex-direction:column}
 .invoice-field-grid,.invoice-difference-row{grid-template-columns:1fr}
 .invoice-difference-row>*{grid-column:1!important;text-align:left!important}
 .invoice-line-drawer-body{padding:20px 18px 28px}
 .invoice-reference-panel{grid-template-columns:1fr}
 .invoice-reference-panel>a{grid-column:1;grid-row:auto;margin-top:6px}
 .invoice-edit-difference{grid-template-columns:1fr}
 .invoice-edit-difference>strong{grid-column:1;grid-row:auto}
 .invoice-line-drawer-actions{grid-template-columns:1fr 1fr;padding:13px 18px}
 .invoice-line-drawer-actions>span{grid-column:1/-1}
 .invoice-line-drawer-actions .secondary-action,.invoice-line-drawer-actions .primary-action{text-align:center}
 .invoice-estimate-variance>header{flex-direction:column}
 .invoice-estimate-variance dl{grid-template-columns:1fr}
}

/* Invoice basis ROT preparation */
.invoice-rot-stack{display:grid;gap:16px;min-width:0}
.invoice-rot-decision-card .invoice-tab-form{padding:20px 22px 22px}
.invoice-rot-decision-form .invoice-tab-actions{margin-top:18px;padding:0;border:0}
.invoice-line-row .invoice-line-edit{display:inline-flex;align-items:center;justify-content:center;justify-self:end;flex:none;width:40px;height:40px;padding:0}
.invoice-rot-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;border:0}
.invoice-rot-choice label{position:relative;cursor:pointer}
.invoice-rot-choice input{position:absolute;opacity:0;pointer-events:none}
.invoice-rot-choice label>span{display:grid;gap:3px;min-height:72px;padding:14px 16px;border:1px solid #c5d6dd;border-radius:7px;background:#fff}
.invoice-rot-choice label>span small{color:#60737c;font-weight:400;line-height:1.4}
.invoice-rot-choice input:checked+span{border-color:#08758e;background:#eaf7f9;box-shadow:inset 0 0 0 1px #08758e;color:#075f74}
.invoice-rot-choice input:focus-visible+span{outline:3px solid rgba(8,117,142,.2);outline-offset:2px}
.invoice-rot-choice:disabled label{cursor:default;opacity:.72}
.invoice-rot-list{display:grid}
.invoice-rot-row{display:grid;grid-template-columns:minmax(240px,1fr) auto minmax(125px,auto) auto;gap:14px;align-items:center;padding:15px 20px;border-top:1px solid #dce5e9}
.invoice-rot-row>span:first-child{display:grid;gap:4px;min-width:0}
.invoice-rot-row small{color:#60737c}
.invoice-rot-amount{display:grid;gap:2px;text-align:right;white-space:nowrap}
.invoice-rot-amount small{font-size:.72rem;font-weight:500}
.invoice-rot-row .status-badge{white-space:nowrap}
.rot-status-review,.rot-status-incomplete{background:#fff2cd;color:#805400}
.rot-status-none{background:#edf2f4;color:#4d626b}
.rot-status-complete{background:#e8f6ed;color:#17683d}
.invoice-empty-inline{padding:28px 22px;text-align:center}
.invoice-empty-inline p{margin:5px 0 0;color:#60737c}
.invoice-rot-issues{border-color:#e2bf68}
.invoice-rot-issues>header{padding:18px 20px;border-bottom:1px solid #ead49b;background:#fff9e9}
.invoice-rot-issues h2,.invoice-rot-issues p{margin:0}
.invoice-rot-issues header p{margin-top:4px;color:#60737c}
.invoice-rot-issue{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;padding:13px 20px;border-top:1px solid #eee2c3}
.invoice-rot-issue:first-of-type{border-top:0}
.invoice-rot-issue>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#d38a00;color:#fff;font-weight:900}
.invoice-rot-issue p{margin:1px 0 0;line-height:1.45}
.invoice-ready-blocked{margin:0;color:#795307;font-size:.8rem;line-height:1.4}
.invoice-rot-drawer{width:min(720px,100%)}
.invoice-rot-drawer:has(.invoice-rot-remove-form){grid-template-rows:auto minmax(0,1fr) auto}
.invoice-drawer-section{display:grid;gap:16px;padding-top:20px;border-top:1px solid #dce5e9}
.invoice-drawer-section>header h3,.invoice-drawer-section>header p{margin:0}
.invoice-drawer-section>header p{margin-top:4px;color:#60737c;line-height:1.45}
.invoice-field>small{color:#60737c;font-weight:400;line-height:1.4}
.invoice-rot-amount-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 16px;align-items:end;padding:13px 15px;border:1px solid #c9dbe2;border-radius:7px;background:#f4f8f9}
.invoice-rot-amount-summary>span{color:#536a75;font-weight:700}
.invoice-rot-amount-summary>strong{font-size:1.05rem;white-space:nowrap}
.invoice-rot-amount-summary>small{grid-column:1/-1;color:#60737c;line-height:1.4}
.invoice-rot-labour-table{overflow:hidden;border:1px solid #d2dfe4;border-radius:7px}
.invoice-rot-labour-head,.invoice-rot-labour-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(170px,1.25fr) 86px minmax(145px,.9fr) 44px;gap:10px;align-items:center;padding:10px 12px}
.invoice-rot-labour-head{background:#f5f8f9;color:#60737c;font-size:.72rem;font-weight:800;text-transform:uppercase}
.invoice-rot-labour-row{border-top:1px solid #dce5e9}
.invoice-rot-labour-row label{display:grid;gap:5px}
.invoice-rot-labour-row label>span{display:none}
.invoice-rot-labour-row .icon-action{width:40px;height:40px;color:#8a281e}
.invoice-rot-participations{display:grid;gap:12px}
.invoice-rot-participation{display:grid;grid-template-columns:minmax(0,1fr) minmax(185px,.7fr);gap:12px 16px;padding:15px;border:1px solid #d2dfe4;border-radius:7px}
.invoice-rot-participation>header{display:grid;gap:3px;align-self:center}
.invoice-rot-participation>header small{color:#60737c}
.invoice-rot-participation>.invoice-field{grid-column:2;grid-row:1/4}
.invoice-check-row{display:flex;align-items:flex-start;gap:9px;grid-column:1}
.invoice-check-row input{flex:0 0 auto;width:19px;height:19px;margin-top:1px;accent-color:#08758e}
.invoice-privacy-note{margin:0;padding:12px 14px;border-left:3px solid #16849d;background:#f1f7f8;color:#4f6570;font-size:.82rem;line-height:1.45}
.invoice-rot-remove-form{padding:10px 30px 14px;border-top:1px solid #d6e2e7;background:#fff;text-align:right}
.invoice-rot-remove-form button{border:0;background:transparent;font:inherit;font-weight:750;cursor:pointer}

@media(max-width:760px){
 .invoice-rot-choice{grid-template-columns:1fr}
 .invoice-rot-row{grid-template-columns:1fr auto}
 .invoice-rot-row .status-badge{justify-self:end}
 .invoice-rot-amount{text-align:left}
 .invoice-rot-row .secondary-action{justify-self:end}
 .invoice-rot-labour-head{display:none}
 .invoice-rot-labour-row{grid-template-columns:1fr 1.25fr}
 .invoice-rot-labour-row label>span{display:block;color:#60737c;font-size:.72rem}
 .invoice-rot-labour-row .icon-action{grid-column:2;justify-self:end}
 .invoice-rot-participation{grid-template-columns:1fr}
 .invoice-rot-participation>.invoice-field{grid-column:1;grid-row:auto}
}
@media(max-width:520px){
 .invoice-rot-row{grid-template-columns:1fr}
 .invoice-rot-row .status-badge,.invoice-rot-row .secondary-action{justify-self:start}
 .invoice-rot-row .secondary-action{width:100%;text-align:center}
 .invoice-rot-labour-row{grid-template-columns:1fr}
 .invoice-rot-labour-row .icon-action{grid-column:1}
 .invoice-rot-labour-row .icon-action{justify-self:end}
 .invoice-rot-remove-form{padding-inline:18px}
}

.job-pricing-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0 0 18px;border:1px solid #dce6e9;border-radius:6px;overflow:hidden}
.job-pricing-facts>div{display:grid;gap:4px;padding:13px 15px;border-right:1px solid #e2eaed}
.job-pricing-facts>div:last-child{border-right:0}.job-pricing-facts dt{color:#667983;font-size:.74rem;font-weight:800;text-transform:uppercase}.job-pricing-facts dd{margin:0;color:#17262d;font-weight:800}
.job-pricing-provenance,.job-pricing-override-warning{margin:0 0 16px!important;padding:11px 13px;border-left:3px solid #08758e;background:#f1f8fa;color:#385763!important}
.job-pricing-override-warning{border-color:#d59500;background:#fff8e5;color:#694b08!important}.job-pricing-form [hidden]{display:none!important}
@media(max-width:900px){.job-pricing-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.job-pricing-facts{grid-template-columns:1fr}.job-pricing-facts>div{border-right:0;border-bottom:1px solid #e2eaed}.job-pricing-facts>div:last-child{border-bottom:0}}
.invoice-destination-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px;border:1px solid #cbdbe3;border-radius:7px;overflow:hidden}
.invoice-destination-card{display:flex;min-width:0;flex-direction:column;padding:20px;background:#fff}
.invoice-destination-card+.invoice-destination-card{border-left:1px solid #cbdbe3}
.invoice-destination-card.is-unavailable{background:#f7f9fa}
.invoice-destination-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.invoice-destination-card>header div{min-width:0}
.invoice-destination-card h3{margin:0 0 5px;font-size:1.05rem}
.invoice-destination-card header p,.invoice-destination-followup p,.invoice-destination-blocker p{margin:0;color:#536a75;line-height:1.45}
.invoice-capability-list{display:grid;gap:9px;margin:18px 0;padding:0;list-style:none}
.invoice-capability-list li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;align-items:start}
.invoice-capability-list li>span:first-child{color:#16814a;font-weight:800}
.invoice-capability-list small{display:inline-block;margin-left:6px;color:#8a5a00;font-weight:700}
.invoice-unsupported-capabilities{margin:0 0 14px;padding:12px 0;border-top:1px solid #e2eaed}
.invoice-unsupported-capabilities>strong{font-size:.8rem;color:#536a75;text-transform:uppercase}
.invoice-unsupported-capabilities .invoice-capability-list{margin:10px 0 0}
.invoice-capability-list li.is-unsupported{color:#667983}
.invoice-capability-list li.is-unsupported>span:first-child{color:#8b3c3c}
.invoice-destination-followup{margin-top:auto;padding:13px 0;border-top:1px solid #dce6ea}
.invoice-destination-blocker{display:grid;gap:12px;margin-top:12px;padding:13px;border-left:3px solid #c68100;background:#fff7e3}
.invoice-destination-blocker .secondary-action{justify-self:start}
.invoice-destination-card .invoice-tab-form{margin-top:auto}
@media(max-width:900px){.invoice-destination-grid{grid-template-columns:1fr}.invoice-destination-card+.invoice-destination-card{border-left:0;border-top:1px solid #cbdbe3}}


/* Material import from document */
.material-import-drawer{width:min(760px,100%);max-width:760px;padding:0;overflow:auto}
.material-import-batch{min-width:0;color:#17262d}
.material-import-batch--page{display:grid;gap:16px}
.material-import-batch--drawer{display:flex;flex-direction:column;gap:14px;min-height:100%;padding:24px 26px 0;background:#fff}
.material-import-batch-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.material-import-batch--drawer .material-import-batch-heading{margin:0!important;padding-right:32px}
.material-import-batch-heading p,.material-import-batch-heading h1,.material-import-batch-heading h2{margin:0}
.material-import-batch-heading p{margin-bottom:4px;color:#076b82;font-size:.76rem;font-weight:850}
.material-import-batch-heading h1{font-size:1.65rem}.material-import-batch-heading h2{font-size:1.35rem}
.material-import-batch-heading span{display:block;margin-top:5px;color:#60737c}
.material-import-feedback,.material-import-complete{display:grid;gap:3px;margin:0;padding:12px 14px;border-left:3px solid #08758e;background:#eef8fa}
.material-import-feedback--error{border-left-color:#b42318;background:#fff2f0;color:#912018}
.material-import-receipt-warning{display:grid;gap:10px;min-width:0;padding:16px;border-left:3px solid #a36b00;background:#fff8e7}
.material-import-receipt-warning h3,.material-import-receipt-warning p{margin:0}
.material-import-receipt-warning h3{font-size:16px}
.material-import-review-issues{margin:0;padding:12px 16px 12px 32px;border-left:3px solid #d19a17;background:#fff8e5;font-size:.8rem;color:#594c27;overflow-wrap:anywhere}
.material-import-review-issues li+li{margin-top:8px}
.material-import-document{min-width:0;padding:8px 0 20px;border-bottom:1px solid #d4e2e8}
.material-import-document h3{margin:0 0 14px;font-size:16px}
.material-import-document-fields{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1.2fr);gap:14px}
.material-import-document-fields label{display:grid;gap:6px;min-width:0;font-size:13px;font-weight:700}
.material-import-document-fields input{box-sizing:border-box;min-width:0;width:100%;height:42px;padding:8px 12px;border:1px solid #b8cdd6;border-radius:5px;background:#fff;color:#17262d;font:inherit;font-weight:500}
.material-import-document-totals{display:flex;flex-wrap:wrap;gap:10px 24px;margin:12px 0;font-size:13px;color:#526975}
[data-import-tax-discrepancy] .material-import-document-totals>div{display:flex;flex-direction:column;flex:1 1 160px;min-width:0}
[data-import-tax-discrepancy] dd{margin:auto 0 0;padding-top:4px;font-weight:700;overflow-wrap:anywhere}
.material-import-document-check{display:flex!important;align-items:flex-start;gap:10px!important;font-size:13px;font-weight:600}
.material-import-document-check input{flex:none;width:18px;height:18px;min-height:18px;margin:2px 0 0;accent-color:#08758e}
.material-import-document-check small{display:block;margin-top:3px;font-weight:400;color:#526975}
.material-import-document-warning{margin:12px 0 0;padding:10px 12px;border-left:3px solid #d19a17;background:#fff8e5;font-size:13px}
.material-import-document [aria-invalid=true]{outline:2px solid #b42318;outline-offset:2px}
.material-import-identity-history{font-size:13px;overflow-wrap:anywhere}
.material-import-identity-history li{margin:10px 0}
@media(max-width:700px){.material-import-document-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.material-import-document-fields label:first-child{grid-column:1/-1}}
@media(max-width:420px){.material-import-document-fields{grid-template-columns:minmax(0,1fr)}}
.material-import-receipt-warning ul{display:grid;gap:12px;margin:0;padding-left:20px}
.material-import-receipt-warning li{overflow-wrap:anywhere}
.material-import-receipt-warning li span,.material-import-receipt-warning li small{display:block}
.material-import-duplicate-check{display:flex;align-items:flex-start;gap:8px}
.material-import-duplicate-check input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:#08758e}
.material-import-receipt-warning>label[for]{font-size:.8rem;font-weight:700}
.material-import-receipt-warning textarea{box-sizing:border-box;width:100%;min-height:64px;padding:10px 12px;border:1px solid #b8cdd6;border-radius:5px;background:#fff;color:#17262d;font:inherit;resize:vertical}
.material-import-receipt-warning textarea:focus-visible{outline:2px solid #08758e;outline-offset:2px}
.material-import-receipt-warning textarea[aria-invalid=true]{border-color:#b42318}
.material-import-duplicate-error{color:#a22317;font-weight:600}
.material-import-duplicate-error[hidden]{display:none}
.material-import-duplicate-audit{margin-top:12px;overflow-wrap:anywhere}
.material-import-duplicate-audit a{display:block}
.material-import-batch-source{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px 14px;border:1px solid #cbdbe1;border-radius:7px;background:#fff}
.material-import-batch-source>span:nth-child(2){display:grid;gap:2px;min-width:0}.material-import-batch-source strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-import-batch-source small{color:#60737c}.material-import-batch-source a{color:#076b82;font-size:.8rem;font-weight:800}.material-import-source-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e5f3f6;color:#076b82}
.material-import-batch-form{display:flex;flex:1;flex-direction:column;gap:14px;min-height:0}.material-import-batch-items{display:grid;align-content:start;gap:10px}
.material-import-batch-item{overflow:hidden;border:1px solid #cbdbe1;border-radius:7px;background:#fff}.material-import-batch-item.is-excluded{border-style:dashed;background:#f5f7f8}
.material-import-batch-item-heading{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:stretch}.material-import-batch-toggle{display:grid;grid-template-columns:30px minmax(0,1fr) 18px;gap:10px;align-items:center;min-width:0;padding:14px 16px;border:0;background:transparent;color:#17262d;text-align:left;cursor:pointer}
.material-import-item-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e7f3f5;color:#076b82;font-size:.75rem;font-weight:900}
.material-import-batch-item-title{display:grid;gap:3px;min-width:0}.material-import-batch-item-title strong{overflow-wrap:anywhere;font-size:.9rem}.material-import-batch-item-title small{color:#60737c;font-size:.75rem}.material-import-batch-item.is-excluded .material-import-batch-item-title{opacity:.68}
.material-import-chevron{display:inline-block;width:8px;height:8px;border-right:2px solid #08758e;border-bottom:2px solid #08758e;transform:rotate(45deg);transition:transform .15s ease}.material-import-batch-toggle[aria-expanded=true] .material-import-chevron{transform:rotate(225deg)}
.material-import-exclude{display:grid;place-items:center;width:34px;height:34px;align-self:center;justify-self:center;padding:0;border:1px solid transparent;border-radius:5px;background:transparent;color:#b42318;font:inherit;font-size:1.35rem;line-height:1;cursor:pointer}.material-import-exclude:hover,.material-import-exclude:focus-visible{border-color:#efaaa4;background:#fff0ef}.material-import-exclude[aria-pressed=true]{color:#08758e}.material-import-exclude[aria-pressed=true]:hover,.material-import-exclude[aria-pressed=true]:focus-visible{border-color:#9cced9;background:#eef8fa}
.material-import-batch-item-panel{border-top:1px solid #dbe5e8}.material-import-batch-item-panel[hidden]{display:none}.material-import-batch-item fieldset{display:grid;gap:18px;margin:0;padding:20px 22px;border:0}.material-import-batch-item fieldset:disabled{opacity:.55}
.material-import-batch-section{display:grid;gap:12px}.material-import-batch-section h3{margin:0;font-size:.95rem}.material-import-batch-section p{margin:3px 0 0;color:#60737c;font-size:.78rem}
.material-import-batch-item label{display:grid;gap:6px;color:#314750;font-size:.78rem;font-weight:800}.material-import-batch-item label>span{color:#71828a;font-weight:600}.material-import-batch-item :is(input,select){box-sizing:border-box;width:100%;min-height:43px;padding:9px 11px;border:1px solid #bfcfd6;border-radius:7px;background:#fff;color:#17262d;font:inherit}.material-import-batch-item :is(input,select):focus-visible{outline:3px solid rgba(8,117,142,.15);border-color:#08758e}
.material-import-batch-item :is(input,select)[aria-invalid=true]{border-color:#b42318;box-shadow:0 0 0 3px rgba(180,35,24,.1)}.material-import-batch-item label:has(input[aria-invalid=true]){color:#8f1d16}
.material-import-batch-item label>.material-import-field-caption{display:flex;align-items:baseline;gap:6px;color:#314750;font-weight:800}.material-import-field-caption small{color:#71828a;font-size:.72rem;font-weight:600}
.material-import-batch-item .material-import-vat-field{align-content:start;justify-items:start}.material-import-batch-item .material-import-percent-input{display:grid;grid-template-columns:minmax(0,96px) 36px;width:132px;min-height:43px;border:1px solid #bfcfd6;border-radius:7px;background:#fff;overflow:hidden;color:#314750}.material-import-batch-item .material-import-percent-input:focus-within{border-color:#08758e;outline:3px solid rgba(8,117,142,.15)}.material-import-batch-item .material-import-percent-input input{width:100%;min-height:41px;padding:9px 8px 9px 11px;border:0;border-radius:0;background:transparent;outline:0;box-shadow:none}.material-import-batch-item .material-import-percent-input>span:last-child{display:grid;place-items:center;border-left:1px solid #d7e2e6;background:#f5f8fa;color:#526971;font-weight:800}.material-import-batch-item .material-import-vat-field:has(input[aria-invalid=true]) .material-import-percent-input{border-color:#b42318;box-shadow:0 0 0 3px rgba(180,35,24,.1)}
.material-import-batch-item .material-import-quantity-control{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:0;color:#17262d}.material-import-quantity-control button{display:grid;place-items:center;min-height:43px;padding:0;border:1px solid #bfcfd6;background:#f8fbfc;color:#076b82;font:inherit;font-size:1.15rem;font-weight:900;cursor:pointer}.material-import-quantity-control button:first-child{border-radius:7px 0 0 7px}.material-import-quantity-control button:last-child{border-radius:0 7px 7px 0}.material-import-quantity-control button:hover,.material-import-quantity-control button:focus-visible{z-index:1;border-color:#08758e;background:#eef8fa;outline:3px solid rgba(8,117,142,.15)}.material-import-batch-item .material-import-quantity-control input{position:relative;z-index:0;border-right:0;border-left:0;border-radius:0;text-align:center}.material-import-quantity-control input::-webkit-inner-spin-button,.material-import-quantity-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.material-import-quantity-control input[type=number]{appearance:textfield}
.material-import-field-wide{width:100%}.material-import-batch-primary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.material-import-batch-secondary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:2px 13px 13px}
.material-import-batch-item .material-import-price-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0;color:#17262d}.material-import-batch-item .material-import-price-control>span:last-child{display:grid;place-items:center;min-width:48px;padding:0 10px;border:1px solid #bfcfd6;border-left:0;border-radius:0 7px 7px 0;background:#f5f8fa;color:#526971;font-weight:800}.material-import-batch-item .material-import-price-control input{border-radius:7px 0 0 7px}.material-import-price-help{margin:0!important;color:#60737c!important;font-size:.76rem!important}
.material-import-warning{display:flex;gap:8px;padding:11px 13px;border-left:3px solid #c78900;background:#fff8e5;color:#654d13;font-size:.8rem}.material-import-warning span{color:#665829}.material-import-warning.is-hidden{display:none}
.material-import-batch-disclosure{border:1px solid #d7e2e6;border-radius:7px;background:#fbfdfe}.material-import-batch-disclosure>summary{display:flex;align-items:center;gap:10px;padding:12px 13px;color:#076b82;font-weight:850;cursor:pointer;list-style:none}.material-import-batch-disclosure>summary::-webkit-details-marker{display:none}.material-import-batch-disclosure[open]>summary .material-import-chevron{transform:rotate(225deg)}
.material-import-batch-destinations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.material-import-batch-destination{align-content:start;padding-top:17px;border-top:1px solid #dbe5e8}
.material-import-choice-row{display:flex;flex-wrap:wrap;gap:10px 20px}.material-import-choice-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.material-import-batch-item .material-import-choice-row label,.material-import-batch-item .material-import-choice-stack label{display:flex;align-items:center;gap:8px}.material-import-batch-item .material-import-choice-stack label{min-height:42px;padding:8px 11px;border:1px solid #d3dfe4;border-radius:7px;background:#fff;cursor:pointer}.material-import-batch-item .material-import-choice-stack label:has(input:checked){border-color:#16849d;background:#eef8fa}.material-import-batch-item :is(.material-import-choice-row,.material-import-choice-stack) input{width:18px;min-height:18px;height:18px;margin:0;padding:0;accent-color:#08758e}
.material-import-job-picker[hidden]{display:none}.material-import-job-picker{margin-top:2px}
.material-import-batch-item .material-import-confirm-check{display:grid!important;grid-template-columns:18px minmax(0,1fr);gap:10px!important;align-items:start;padding:12px 13px;border-left:3px solid #d19a17;background:#fff8e5}.material-import-batch-item .material-import-confirm-check input{width:18px;min-height:18px;height:18px;margin:1px 0 0;padding:0;accent-color:#08758e}.material-import-confirm-check>span{display:grid;gap:2px}.material-import-confirm-check small{color:#665829;font-size:.75rem;font-weight:500}.material-import-batch-validation{margin:0;padding:10px 12px;border-left:3px solid #b42318;background:#fff0ef;color:#8f1d16;font-size:.8rem}
.material-import-batch-footer{position:sticky;bottom:0;z-index:4;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin-top:2px;padding:13px 16px;border:1px solid #c4d5db;border-radius:7px;background:#fff;box-shadow:0 -8px 24px rgba(17,48,59,.08)}.material-import-batch-footer>div:first-child{display:grid;gap:2px;min-width:0}.material-import-batch-footer>div:first-child span{color:#60737c;font-size:.75rem}.material-import-batch-footer>div:last-child{display:flex;align-items:center;justify-content:flex-end;gap:10px}.material-import-batch-footer :is(.primary-action,.secondary-action){width:auto;min-width:112px;min-height:44px}.material-import-batch-footer .primary-action{min-width:150px}
.material-import-batch--drawer .material-import-batch-primary-grid,.material-import-batch--drawer .material-import-batch-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.material-import-batch--drawer .material-import-batch-destinations{grid-template-columns:1fr;gap:0}.material-import-batch--drawer .material-import-job-decision{order:1}.material-import-batch--drawer .material-import-catalog-decision{order:2}.material-import-batch--drawer .material-import-batch-footer{margin:auto -26px 0;padding:13px 26px 16px;border-right:0;border-bottom:0;border-left:0;border-radius:0}
@media(max-width:900px){.material-import-batch-primary-grid,.material-import-batch-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.material-import-batch-destinations{grid-template-columns:1fr;gap:0}}
@media(max-width:620px){.material-import-batch--drawer{padding:18px 14px 0}.material-import-batch-heading{display:grid}.material-import-batch-heading h1{font-size:1.35rem}.material-import-batch-heading>.secondary-action{width:100%}.material-import-batch-source{grid-template-columns:34px minmax(0,1fr)}.material-import-batch-source>a{grid-column:2;justify-self:start}.material-import-batch-primary-grid,.material-import-batch-secondary-grid,.material-import-batch--drawer .material-import-batch-primary-grid,.material-import-batch--drawer .material-import-batch-secondary-grid{grid-template-columns:1fr}.material-import-batch-item fieldset{padding:16px 14px}.material-import-choice-row,.material-import-choice-stack{display:grid;grid-template-columns:1fr;gap:8px}.material-import-batch-footer{position:static;grid-template-columns:1fr;padding:12px 14px 15px}.material-import-batch--drawer .material-import-batch-footer{margin:auto -14px 0}.material-import-batch-footer>div:last-child{display:grid;grid-template-columns:1fr 1fr}.material-import-batch-footer :is(.primary-action,.secondary-action){width:100%;min-width:0}}
/* Material review form: identity, pricing, and destination stay distinct. */
.material-import-identity-grid{display:grid;grid-template-columns:minmax(0,2.5fr) minmax(120px,1fr) minmax(160px,1fr);gap:16px}
.material-import-batch-item .material-import-identifiers{border:0;border-radius:0;background:transparent}
.material-import-identifiers>summary{padding:2px 0;font-size:.8rem}
.material-import-identifiers>summary small{margin-left:auto;color:#60737c;font-size:.75rem;font-weight:500;overflow-wrap:anywhere}
.material-import-identifiers .material-import-batch-secondary-grid{padding:16px 0 0}
.material-import-prices,.material-import-destination-section{padding-top:20px;border-top:1px solid #dbe5e8}
.material-import-prices-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}
.material-import-tax-grid{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:16px}
.material-import-destination-section .material-import-batch-destination{padding-top:0;border-top:0}
.material-import-destination-section .material-import-choice-row label{min-height:28px;font-size:.85rem;color:#17262d;cursor:pointer}
.material-import-batch-item input[data-number-stepper=off]{appearance:textfield}
.material-import-batch-item input[data-number-stepper=off]::-webkit-inner-spin-button,.material-import-batch-item input[data-number-stepper=off]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.material-import-batch-item .material-import-percent-input:has(input[aria-invalid=true]){border-color:#b42318;box-shadow:0 0 0 3px rgba(180,35,24,.1)}
.material-import-batch--drawer .material-import-identity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.material-import-batch--drawer .material-import-identity-grid>.material-import-field-wide{grid-column:1/-1}
.material-import-batch--drawer .material-import-tax-grid{grid-column:1/-1}
.material-import-batch--drawer .material-import-batch-destinations{gap:16px}
@media(max-width:900px){
 .material-import-identity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .material-import-identity-grid>.material-import-field-wide{grid-column:1/-1}
 .material-import-tax-grid{grid-column:1/-1;max-width:460px}
 .material-import-destination-section .material-import-batch-destinations{gap:16px}
}
@media(max-width:620px){
 .material-import-prices-grid{grid-template-columns:minmax(0,1fr)}
 .material-import-tax-grid{grid-template-columns:minmax(0,1fr) 110px;gap:12px}
 .material-import-tax-grid .material-import-percent-input{width:110px;grid-template-columns:minmax(0,1fr) 32px}
 .material-import-identifiers>summary{flex-wrap:wrap}
 .material-import-identifiers>summary small{flex-basis:100%;margin-left:18px}
 .material-import-batch-source>.material-source-unavailable{grid-column:2;justify-self:start}
 .material-import-batch .material-import-batch-footer{position:sticky;bottom:0;gap:10px;grid-template-columns:minmax(0,1fr);padding:12px 14px 15px}
 .material-import-batch-footer>div:first-child span{display:none}
 .material-import-batch-footer>div:first-child strong{font-size:.75rem}
 .material-import-warning{flex-direction:column;gap:4px}
}
/* Compact, read-first job planning workspace. */
.job-planning-editor-drawer[hidden]{display:none!important}
.job-planning-tab-layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
.job-planning-tab-layout>:is(.job-planning-progress,.job-checklist-planning-panel,.job-planning-field-status,.workflow-policy-impact){grid-column:1/-1;margin:0}
.job-planning-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid #cbdbe1;border-radius:7px;background:#fff;overflow:hidden}
.job-planning-progress article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;align-items:center;min-height:74px;padding:13px 16px}
.job-planning-progress article+article{border-left:1px solid #dbe5e8}
.job-planning-progress article>span:last-child{display:grid;gap:2px;min-width:0}
.job-planning-progress strong{font-size:.86rem}.job-planning-progress small{color:#60737c;font-size:.76rem}
.job-planning-progress .job-section-icon{width:36px;height:36px;background:#e5f3f6}.job-planning-progress .job-section-icon::before{background:#08718a}
.job-planning-progress .is-complete .job-section-icon{background:#e7f6ed}.job-planning-progress .is-complete .job-section-icon::before{background:#147948}
.job-planning-progress .needs-attention .job-section-icon{background:#fff2d8}.job-planning-progress .needs-attention .job-section-icon::before{background:#9a6600}
.job-planning-summary-card,.job-planning-field-status{min-width:0;border:1px solid #cbdbe1;border-radius:7px;background:#fff}
.job-planning-summary-card{min-height:244px;padding:18px 20px}
.job-planning-summary-card>header,.job-planning-field-status>header{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center}
.job-planning-summary-card>header{padding-bottom:14px;border-bottom:1px solid #dbe5e8}
.job-planning-summary-card h3,.job-planning-field-status h3{margin:0;font-size:1rem}
.job-planning-summary-card .job-section-icon,.job-planning-field-status .job-section-icon{width:36px;height:36px;background:#e5f3f6}
.job-planning-summary-card .job-section-icon::before,.job-planning-field-status .job-section-icon::before{background:#08718a}
.job-planning-summary-card .secondary-action.compact,.job-planning-field-status .secondary-action.compact{min-height:36px;padding:7px 12px}
.job-planning-facts{display:grid;gap:14px;margin:16px 0 0}.job-planning-facts.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}
.job-planning-facts div{min-width:0}.job-planning-facts dt{margin-bottom:3px;color:#61747d;font-size:.75rem;font-weight:800}
.job-planning-facts dd{margin:0;color:#17262d;overflow-wrap:anywhere;white-space:pre-line}
.job-planning-price-summary{display:grid;gap:5px;margin-top:16px}.job-planning-price-summary>strong{font-size:1.02rem}
.job-planning-price-summary>span{color:#243a43;font-weight:750}.job-planning-price-summary>small{color:#60737c;line-height:1.45}
.job-planning-editor-drawer{width:min(640px,100%)}.job-planning-drawer-form{display:grid;gap:18px}
.job-planning-drawer-form .field-group{display:grid;gap:6px}
.job-planning-drawer-form :is(input,select,textarea){box-sizing:border-box;width:100%;min-height:44px;border:1px solid #b9cbd3;border-radius:7px;padding:9px 11px;background:#fff;color:#17262d;font:inherit}
.job-planning-drawer-form textarea{resize:vertical}.job-planning-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.planning-technician-list{display:grid;margin:0;padding:0;border:1px solid #cbdbe1;border-radius:7px;overflow:hidden}
.planning-technician-list legend{width:100%;padding:0 0 8px;border:0;font-size:.82rem;font-weight:800}
.planning-technician-list label{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:center;min-height:44px;padding:8px 12px;cursor:pointer}
.planning-technician-list label+label{border-top:1px solid #dbe5e8}.planning-technician-list input{width:17px;min-height:17px;margin:0}
.planning-technician-list small{grid-column:2;color:#687a82;font-size:.73rem}
.job-checklist-planning-panel .review-panel-header{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center}
.job-checklist-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:nowrap}
.job-checklist-heading-actions .status-badge{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;white-space:nowrap}
.job-checklist-instance-row{grid-template-columns:minmax(0,1fr) auto;padding:16px 20px}.job-checklist-instance-copy{gap:4px}
.job-checklist-instance-copy>.status-badge{justify-self:start;margin-bottom:2px}.job-checklist-instance-state{display:flex;align-items:center;gap:8px}
.job-checklist-action-menu{position:relative}.job-checklist-action-menu>summary{display:flex;align-items:center;justify-content:center;gap:7px;min-width:38px;height:38px;padding:0 12px;border:1px solid #bfd0d7;border-radius:7px;color:#075f76;cursor:pointer;font-size:.82rem;font-weight:850;list-style:none;white-space:nowrap}
.job-checklist-action-menu>summary::-webkit-details-marker{display:none}
.job-checklist-action-menu>div{position:absolute;z-index:8;top:calc(100% + 6px);right:0;display:grid;min-width:220px;border:1px solid #cbdbe1;border-radius:7px;background:#fff;box-shadow:0 12px 28px rgba(20,42,50,.16);overflow:hidden}
.job-checklist-instance-row:last-child .job-checklist-action-menu>div{top:auto;bottom:calc(100% + 6px)}
.job-checklist-action-menu a{padding:11px 13px;color:#18323b;text-decoration:none;font-size:.82rem;font-weight:750}
.job-checklist-action-menu a+a{border-top:1px solid #e0e8eb}.job-checklist-action-menu a:hover{background:#f3f8f9}.job-checklist-action-menu a.danger{color:#a12f2f}
.job-checklist-add-switch{min-height:20px}.job-checklist-add-switch:empty{display:none}.job-checklist-add-switch a{color:#08647b;font-size:.82rem;font-weight:800;text-decoration:none}.job-checklist-add-switch a:hover{text-decoration:underline}
.job-checklist-empty-summary{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:16px;align-items:center;min-height:112px;padding:20px 22px;background:#fff}
.job-checklist-empty-summary .job-checklist-empty-icon{width:44px;height:44px;background:#08758e}
.job-checklist-empty-summary .job-checklist-empty-icon::before{background:#fff}
.job-checklist-empty-copy{display:grid;gap:4px;min-width:0}.job-checklist-empty-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.job-checklist-empty-title h3{margin:0;font-size:1rem}.job-checklist-empty-title .status-badge{background:#eef2f4;color:#53666f}
.job-checklist-empty-copy>strong{color:#17262d;font-size:1rem}.job-checklist-empty-copy>p{margin:0;color:#60737c;line-height:1.4}
.job-checklist-empty-summary>.secondary-action{min-height:44px;padding:10px 18px;white-space:nowrap}
.job-checklist-empty.compact{grid-template-columns:38px minmax(0,1fr) auto}.job-checklist-history-drawer{display:grid;gap:12px}
.checklist-static-confirmation,.checklist-outcome-list p{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:center}
.checklist-static-confirmation span,.checklist-outcome-list p span{display:grid;place-items:center;width:26px;height:26px;border-radius:6px;background:#e5f3f6;color:#08718a;font-weight:900}
.checklist-outcome-list{display:grid;gap:9px}.checklist-outcome-list h3,.checklist-outcome-list p{margin:0}.checklist-outcome-list h3{font-size:.92rem}
.job-planning-field-status{overflow:hidden}.job-planning-field-status>header{padding:16px 20px;border-bottom:1px solid #dbe5e8}
.job-planning-field-status>header p{margin:3px 0 0;color:#60737c;font-size:.82rem}.job-planning-readiness-list{display:grid}
.job-planning-readiness-list article{display:grid;grid-template-columns:minmax(180px,1fr) auto auto minmax(180px,.7fr);gap:12px;align-items:center;min-height:58px;padding:10px 20px}
.job-planning-readiness-list article+article{border-top:1px solid #e0e8eb}.job-planning-readiness-list article>div{display:flex;align-items:center;gap:8px}
.job-planning-readiness-list small{color:#647780;text-align:right}.job-planning-no-update{grid-column:2/-1;color:#657780}
.job-planning-empty-status{margin:0;padding:18px 20px;color:#657780}
@media(max-width:1100px){.job-planning-tab-layout{grid-template-columns:1fr 1fr}.job-planning-price-card{grid-column:1/-1;min-height:0}.job-planning-progress{grid-template-columns:repeat(3,minmax(0,1fr))}.job-planning-progress article+article{border-left:0}.job-planning-progress article{border-right:1px solid #dbe5e8;border-bottom:1px solid #dbe5e8}}
@media(max-width:760px){.job-planning-tab-layout{grid-template-columns:1fr}.job-planning-tab-layout>*{grid-column:1!important}.job-planning-progress{grid-template-columns:1fr 1fr}.job-planning-progress article{min-height:66px;padding:11px 12px}.job-planning-summary-card{min-height:0;padding:16px}.job-planning-facts.two-column,.job-planning-date-grid{grid-template-columns:1fr}.job-checklist-planning-panel .review-panel-header{grid-template-columns:34px minmax(0,1fr)}.job-checklist-heading-actions{grid-column:1/-1;width:100%;justify-content:space-between}.job-checklist-instance-row{grid-template-columns:1fr;padding:15px 16px}.job-checklist-instance-state{justify-content:flex-start;flex-wrap:wrap}.job-checklist-action-menu>div{right:auto;left:0}.job-checklist-empty.compact{grid-template-columns:34px minmax(0,1fr)}.job-checklist-empty.compact .secondary-action{grid-column:1/-1;width:100%;text-align:center}.job-checklist-empty-summary{grid-template-columns:38px minmax(0,1fr);gap:13px;min-height:0;padding:17px 16px}.job-checklist-empty-summary .job-checklist-empty-icon{width:38px;height:38px}.job-checklist-empty-summary>.secondary-action{grid-column:1/-1;width:100%;text-align:center}.job-planning-field-status>header{grid-template-columns:34px minmax(0,1fr);padding:15px 16px}.job-planning-field-status>header .secondary-action{grid-column:1/-1;width:100%;text-align:center}.job-planning-readiness-list article{grid-template-columns:1fr auto;padding:12px 16px}.job-planning-readiness-list small,.job-planning-no-update{grid-column:1/-1;text-align:left}}

/* Decimal values accept typed precision while shared controls step by whole units. */
.admin-number-stepper{position:relative;display:block;width:100%;min-width:0;color:inherit!important;font-weight:inherit!important}
.admin-number-stepper>input[type=number]{padding-right:38px!important}
.admin-number-stepper>input[type=number]::-webkit-inner-spin-button,.admin-number-stepper>input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.admin-number-stepper>input[type=number]{appearance:textfield}
.admin-number-stepper-controls{position:absolute;z-index:2;top:1px;right:1px;bottom:1px;display:grid!important;grid-template-rows:1fr 1fr;width:31px;overflow:hidden;border-left:1px solid #c9d7dc!important;background:#f6f9fa!important;color:#075f76!important}
.admin-number-stepper-controls button{display:grid;place-items:center;width:100%;min-width:0;min-height:0;margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-size:.88rem;font-weight:900;line-height:1;cursor:pointer}
.admin-number-stepper-controls button+button{border-top:1px solid #d8e2e6}
.admin-number-stepper-controls button:hover,.admin-number-stepper-controls button:focus-visible{background:#e7f3f6;color:#064f62;outline:0}
.admin-number-stepper-controls button:disabled{background:#f3f5f6;color:#98a6ac;cursor:not-allowed}
.money-input>.admin-number-stepper,.material-import-percent-input>.admin-number-stepper{align-self:stretch;padding:0!important;border:0!important;background:transparent!important}
.checklist-measurement-columns{min-width:0;border:1px solid #c9d7dc;border-radius:6px;padding:12px}
.measurement-column-editor{display:grid;grid-template-columns:minmax(0,2fr) minmax(70px,1fr) auto auto;gap:10px;align-items:end;padding:8px 0;border-bottom:1px solid #d8e2e6}
.measurement-column-editor .field-group,.measurement-column-editor label{min-width:0}.measurement-column-editor .field-group{margin:0}.measurement-column-editor input:not([type=checkbox]){width:100%;min-width:0;margin-top:6px}
.measurement-required{display:flex;align-items:center;gap:6px;align-self:center}
.measurement-table{min-width:0;width:100%}.measurement-row{padding:12px 0;border-bottom:1px solid #d8e2e6;min-width:0}
.measurement-row>header{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:.9rem}
.measurement-readings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0}
.measurement-readings>div{min-width:0}.measurement-readings dt{font-size:.75rem;color:#52636c}.measurement-readings dd{margin:2px 0;font-weight:600}
.measurement-note,.measurement-readings dd{overflow-wrap:anywhere;white-space:pre-wrap}
.measurement-row>header,.measurement-evidence{overflow-wrap:anywhere;white-space:normal}
.measurement-note,.measurement-evidence{font-size:.85rem}
.job-time-overlap-row{padding:0 18px 14px;border-bottom:1px solid #e1e4e6}
.job-time-overlaps{margin:8px 0 0;padding:0;list-style:none;text-align:left;white-space:normal;font-size:.85rem}
.job-time-overlaps>li{display:grid;gap:4px;margin:8px 0 0;padding:8px 12px;border-left:3px solid #ab6414;background:#fff9ee;overflow-wrap:anywhere;line-height:1.4}
.job-time-overlaps a{color:#185e49;text-decoration:underline;white-space:normal}
.job-time-overlaps strong{font-size:inherit;color:#714510}
.job-time-overlaps>li[data-review-state="accepted"]{border-left-color:#258258;background:#f0f8f3}
.job-time-overlaps .job-overlap-accepted{color:#246343}
.job-overlap-review{margin-top:6px}
.job-overlap-review>summary{cursor:pointer;font-weight:600;color:#006885;width:fit-content;padding:6px 0}
.job-overlap-review form{display:grid;gap:10px;max-width:560px;margin-top:8px}
.job-overlap-review label{display:grid;gap:6px;color:#213844}
.job-overlap-review textarea{width:100%;min-width:0;box-sizing:border-box;resize:vertical;padding:10px;border:1px solid #aac5d0;border-radius:6px;background:#fff;font:inherit}
.job-overlap-review .auth-submit{justify-self:start;width:auto;min-height:44px;padding:10px 16px;white-space:normal}
.job-overlap-review-note{white-space:pre-wrap}
.job-overlap-unavailable-note{display:grid;gap:6px;max-width:560px}
.job-overlap-unavailable-note textarea{width:100%;box-sizing:border-box;font:inherit}
.job-review-time-count{margin:4px 0 12px;color:#714510;font-size:.85rem}
.job-review-time-count[data-time-review-pending="0"]{color:#246343}
.submitted-work-section>summary>.job-time-summary-meta{flex-wrap:wrap;min-width:0}
.job-time-summary-meta>span,.job-time-summary-meta>em{overflow-wrap:anywhere}
.job-review-time-overlaps{min-width:0;padding:16px 0;border-bottom:1px solid #e1e4e6}
.job-review-time-overlaps>h3{margin:0 0 12px;font-size:1rem}
.measurement-table .measurement-evidence{display:grid;gap:5px;margin:8px 0 0;padding-left:18px;list-style:disc;line-height:1.4}
.measurement-table .measurement-evidence>li{display:list-item;margin:0;padding:0;border:0}
@media(max-width:600px){.measurement-column-editor{grid-template-columns:minmax(0,1fr) minmax(70px,1fr)}.measurement-column-editor>.field-group{grid-column:1/-1}.measurement-readings{grid-template-columns:minmax(0,1fr)}}

.job-pagination{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #dbe4e8}
.job-pagination-range{min-width:0;color:#425a64;font-size:.875rem;font-variant-numeric:tabular-nums;letter-spacing:0;overflow-wrap:anywhere}
.job-pagination-actions{display:grid;grid-template-columns:repeat(2,44px);gap:8px}
.job-pagination-button{display:grid;place-items:center;box-sizing:border-box;width:44px;height:44px;border:1px solid #c4d4db;border-radius:6px;color:#075d75;background:#fff;text-decoration:none}
a.job-pagination-button:hover{border-color:#075d75;background:#edf6f8}
a.job-pagination-button:focus-visible{outline:2px solid #075d75;outline-offset:3px}
.job-pagination-button[aria-disabled="true"]{color:#7c8d95;background:#f2f5f6;border-color:#dbe4e8}
.job-pagination-icon{width:20px;height:20px}
.job-pagination-icon.previous{transform:rotate(90deg)}
.job-pagination-icon.next{transform:rotate(-90deg)}

.workspace-page-frame .invoice-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.invoice-kpis .workspace-kpi-card{min-height:96px;padding:16px;box-shadow:none}
.invoice-kpis .invoice-ready-jobs.is-empty:hover{border-color:#cad8de;background:var(--surface-raised);box-shadow:none;cursor:default}
.invoice-directory-filters{padding:18px 20px 12px;border-bottom:1px solid #d7e2e8}
.invoice-filter-primary{display:grid;grid-template-columns:minmax(240px,1fr) minmax(170px,220px) minmax(140px,180px);gap:14px;align-items:end}
.invoice-directory-filters label{display:grid;gap:6px;min-width:0;color:#344952;font-size:.84rem;font-weight:700}
.invoice-directory-filters input,.invoice-directory-filters select{box-sizing:border-box;width:100%;min-width:0;min-height:44px;height:auto;padding:10px 12px;border:1px solid #b8ccd6;border-radius:6px;background:#fff;color:#17262d;font:inherit;letter-spacing:0}
.invoice-directory-filters input:focus-visible,.invoice-directory-filters select:focus-visible{outline:2px solid #08758e;outline-offset:2px}
.invoice-filter-submit{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px}
.invoice-filter-submit img,.invoice-filter-more summary img{width:18px;height:18px;flex:none}
.invoice-filter-submit img{filter:brightness(0) invert(1)}
.invoice-filter-more{margin-top:14px}
.invoice-filter-more summary{display:flex;align-items:center;gap:8px;width:fit-content;min-height:38px;cursor:pointer;font-weight:700;color:#075f74;list-style:none}
.invoice-filter-more summary::-webkit-details-marker{display:none}
.invoice-filter-more summary::after{content:'+';font-size:18px;width:18px;text-align:center}
.invoice-filter-more[open] summary::after{content:'-'}
.invoice-filter-more summary:focus-visible{outline:2px solid #08758e;outline-offset:2px}
.invoice-filter-secondary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:12px 0}
.invoice-filter-results{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid #d7e2e8;color:#536a75;font-size:.86rem}
.invoice-filter-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:16px;margin-left:auto}
@media(min-width:681px) and (max-width:1200px){.invoice-filter-primary .invoice-search-field{grid-column:1/-1}}
.invoice-filter-results a{font-weight:700;color:#075f74}
.invoice-directory .invoice-row-head,.invoice-directory .invoice-directory-row{grid-template-columns:minmax(160px,1fr) minmax(180px,1.3fr) minmax(150px,1fr) minmax(140px,.9fr) minmax(150px,1fr);gap:18px}
.invoice-directory-row .invoice-document-link{font-weight:800;color:#075f74;text-decoration:none}
.invoice-directory-row a:hover{text-decoration:underline}
.invoice-directory-row a:focus-visible{outline:2px solid #08758e;outline-offset:3px}
.invoice-directory-row .status-badge{align-self:flex-start;white-space:normal}
.invoice-directory-row .row-action{gap:10px;text-align:right;overflow-wrap:anywhere}
.invoice-directory-row .row-action a{color:#075f74;text-decoration:none}
.invoice-directory-row .invoice-related-link{font-size:.82rem;font-weight:600;color:#075f74}
.invoice-directory-row.is-credited{background:#f7f8f9;border-left:3px solid #a46a0b;padding-left:17px}
.status-badge.status-credited{background:#fff0cd;color:#744800;border:1px solid #e6ca89}
.status-badge.status-paid{background:#e7f6ed;color:#17683d;border:1px solid #a7d7b8;white-space:normal}
.invoice-detail-hero .detail-title-line{flex-wrap:wrap}
.invoice-payment-note{color:#536a75;font-size:.82rem;line-height:1.5;margin:12px 0}
.audit-history-copy{display:grid;gap:10px;min-width:0;width:100%}
.invoice-detail-hero>div:first-child{min-width:0}
.invoice-document-dates{display:flex;flex-wrap:wrap;gap:14px 32px;margin:18px 0 0}
.invoice-document-dates>div{min-width:0;max-width:100%}
.invoice-document-dates dt{font-size:.8rem;font-weight:400;color:#526a74;line-height:1.5;overflow-wrap:anywhere}
.invoice-document-dates dd{margin:4px 0 0;font-size:.9rem;font-weight:700;line-height:1.5}
@media(max-width:680px){.invoice-document-dates{display:grid;grid-template-columns:1fr;gap:12px}}
.reason-field{display:grid;gap:8px;min-width:0;box-sizing:border-box;margin:8px 0;padding:14px 16px;border-left:3px solid #7b9da8;background:#f0f6f8;color:#243b45;overflow-wrap:anywhere}
.reason-field[hidden]{display:none!important}
.reason-field>label,.reason-field>span:first-child{font-weight:750}
.reason-field>textarea,.reason-field>input:not([type=hidden]){width:100%;min-width:0;max-width:100%;box-sizing:border-box;background:#fff;font-weight:400}
.reason-field>textarea{min-height:88px;resize:vertical;font-family:inherit;font-size:.9rem;line-height:1.5;padding:10px 12px;border:1px solid #b9cbd3;border-radius:5px;color:#243b45}
.reason-field>small{font-weight:400;line-height:1.5;color:#526a74}
.reason-field:focus-within{border-left-color:#08758e}
.lifecycle-history-note{margin:14px 0;padding:16px 20px;border-block:1px solid #dce5e9}
.lifecycle-history-note>.audit-history-note{margin:0}
.customer-more-actions>div:has(.reason-field){width:min(340px,calc(100vw - 48px));box-sizing:border-box;padding:12px}
.customer-more-actions form:has(.reason-field){display:grid;gap:10px}
@media(max-width:680px){.reason-field{padding:12px}.lifecycle-history-note{padding:14px 12px}}
@media(max-width:680px){.record-summary-actions:has(.reason-field){position:relative}.record-summary-actions>.customer-more-actions:has(.reason-field){position:static}.record-summary-actions .customer-more-actions>div:has(.reason-field){top:calc(100% + 8px);left:0;right:auto;width:min(340px,100%);min-width:0}}
.audit-history-title{display:block;line-height:1.5;font-size:.92rem}
.audit-history-note{display:block;min-width:0;margin:8px 0;padding:12px 14px;border-left:3px solid #7b9da8;background:#f0f6f8;color:#243b45;overflow-wrap:anywhere}
.audit-history-note>.audit-history-note-label{display:block;margin:0 0 5px;font-size:.78rem;font-weight:750;color:#46616c;line-height:1.4}
.audit-history-note>.audit-history-note-text{display:block;margin:0;font-size:.9rem;font-weight:400;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;color:#243b45}
.audit-history-meta{display:block;color:#60747e;font-size:.78rem;font-weight:400;line-height:1.5;overflow-wrap:anywhere}
.invoice-tab-card .history-row{align-items:stretch}
.job-history-event-content>.audit-history-note{margin:10px 0}
.checklist-archive-item>.audit-history-note{display:block}
.offer-history-row:has(.audit-history-note){align-items:start}
.handover-history>.audit-history-copy,.handover-customer-responses>.audit-history-copy{padding:12px 0;border-top:1px solid #dce5e9}
@media(max-width:680px){.audit-history-note{padding:10px 12px}.audit-history-copy{gap:8px}}
.invoice-credit-panel{padding-top:0;border-top:1px solid #dfc5c5;border-bottom:1px solid #dfc5c5;border-left:3px solid #a54545}
.invoice-credit-panel>summary{display:flex;align-items:center;gap:12px;padding:16px;background:#fdf6f5;cursor:pointer;list-style:none;color:#4f3030}
.invoice-credit-panel>summary::-webkit-details-marker{display:none}
.invoice-credit-panel>summary>img{width:22px;height:22px;flex:none}
.invoice-credit-panel>summary>span{display:grid;gap:4px;min-width:0}
.invoice-credit-panel>summary strong{font-size:.95rem}
.invoice-credit-panel>summary small{font-size:.83rem;font-weight:400;color:#6d5555}
.invoice-credit-panel>summary::after{content:'';width:8px;height:8px;flex:none;margin:0 4px 4px auto;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}
.invoice-credit-panel[open]>summary::after{transform:rotate(225deg);margin-bottom:0}
.invoice-credit-panel>summary:hover{background:#f9edeb}
.invoice-credit-panel>summary:focus-visible{outline:2px solid #08758e;outline-offset:3px}
.invoice-credit-panel>.invoice-tab-form{padding:16px;margin:0}
.invoice-credit-help{margin:0;color:#6d5555;font-size:.86rem;line-height:1.5}
.invoice-credit-panel .danger-action{min-height:44px;padding:10px 16px;border:1px solid #9b3737;border-radius:6px;background:#9b3737;color:#fff;font:inherit;font-weight:750;cursor:pointer;white-space:normal}
.invoice-credit-panel .danger-action:hover{background:#842d2d}
.invoice-credit-panel .danger-action:focus-visible{outline:2px solid #9b3737;outline-offset:3px}
.invoice-credit-zero{font-weight:700;color:#4b5a62!important}
.invoice-payment-state.payment-overdue{color:#a12626;font-weight:700}
.invoice-payment-state.payment-paid{color:#17683d}
.invoice-credit-notice{display:flex;align-items:flex-start;gap:12px;margin-top:18px;padding:16px 18px;background:#fff7e4;border-left:4px solid #a46a0b;color:#533d15}
.invoice-credit-notice>img{width:22px;height:22px;flex:none;margin-top:1px}
.invoice-credit-notice strong{font-size:1rem}
.invoice-credit-notice p{margin:6px 0 8px}
.invoice-credit-notice a{font-weight:800;color:#075f74;overflow-wrap:anywhere}
.invoice-replacement-reference{margin:18px 0;line-height:1.6;overflow-wrap:anywhere}
@media(max-width:1200px){.workspace-page-frame .invoice-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.invoice-filter-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-directory .invoice-row-head{display:none}.invoice-directory .invoice-directory-row{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-directory-row .row-action{align-items:flex-start;text-align:left}}
@media(max-width:680px){.workspace-page-frame .invoice-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-directory-filters{padding:14px}.invoice-filter-primary,.invoice-filter-secondary{grid-template-columns:minmax(0,1fr)}.invoice-directory .invoice-directory-row{grid-template-columns:minmax(0,1fr)}.invoice-directory-row .row-action{align-items:flex-start;text-align:left}.invoice-credit-notice{padding:14px 12px}.invoice-credit-notice>div{min-width:0}}
/* Public product policies share the product typography without the signed-in shell. */
.product-policy { max-width: 800px; margin: 0 auto; padding: 24px 20px 48px; overflow-wrap: anywhere; }
.product-policy header { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
.product-policy header img { max-width: 100%; object-fit: contain; }
.product-policy nav, .product-policy footer { display: flex; gap: 16px; flex-wrap: wrap; }
.product-policy-links { display: flex; gap: 16px; flex-wrap: wrap; margin: 16px 0; }
.product-policy h1 { font-size: 28px; margin: 28px 0 12px; }
.product-policy h2 { font-size: 18px; margin: 24px 0 8px; }
.product-policy p { line-height: 1.65; }
.product-policy footer { border-top: 1px solid #cedde4; padding-top: 20px; margin-top: 32px; }
.product-policy input:not([type=checkbox]), .product-policy textarea { width: 100%; min-width: 0; box-sizing: border-box; }

/* Keep settings controls readable within the space left by both navigation columns. */
.settings-review-page .settings-detail-shell { container-type: inline-size; }
.settings-review-page .settings-detail-shell > .onboarding-section { grid-template-columns: minmax(0, 1fr); }
.settings-review-layout { grid-template-columns: minmax(0, 1fr) minmax(240px, 280px); gap: 24px; }
.settings-review-layout > *, .account-security-page form { min-width: 0; }
.settings-review-layout > .brand-preview-panel { position: static; }
.settings-side-summary .document-preview { border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.settings-side-summary .document-preview-body { padding: 0; }
.settings-review-page .admin-section-toolbar { align-items: flex-start !important; flex-wrap: nowrap; }
.settings-review-page .admin-section-toolbar-copy { flex-basis: auto; }
.settings-review-page .admin-section-toolbar h2 { overflow-wrap: normal; }
.settings-side-summary { min-width: 0; padding: 4px 0 4px 20px; border-left: 1px solid var(--border-subtle); overflow-wrap: anywhere; }
.settings-side-summary h2 { margin: 8px 0 16px; font-size: 18px; }
.settings-side-summary p { margin: 0 0 12px; }
.settings-summary-list { list-style: none; padding: 0; margin: 16px 0 0; }
.settings-summary-list li { padding: 9px 0; border-top: 1px solid var(--border-subtle); line-height: 1.5; }
.settings-review-page .attention-item { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 12px; padding: 14px 0; border: 0; border-bottom: 1px solid var(--border-subtle); border-radius: 0; background: transparent; }
.settings-review-page .attention-item:last-child { border-bottom: 0; }
.settings-review-page .attention-item > div { flex: 1 1 220px; min-width: 0; }
.settings-review-page .attention-item > .status-badge { flex: 0 1 auto; }
.settings-review-page .onboarding-fields > .auth-submit { justify-self: start; }
.settings-review-page .onboarding-footer { flex-wrap: wrap; gap: 12px; }
.settings-review-page .onboarding-footer > form { min-width: 0; }
.settings-review-page .storage-section > button[type=submit] { margin-left: auto; }
.settings-review-page :is(.primary-action, .secondary-action, .auth-submit, .button-secondary) { max-width: 100%; white-space: normal; text-align: center; }
.settings-review-page .branding-form { container-type: inline-size; }
.settings-review-page .inline-checkbox { align-items: flex-start; }
.settings-review-page .inline-checkbox input { flex-shrink: 0; margin-top: 4px; }
.settings-review-page .inline-checkbox > span { display: grid; gap: 4px; }
.account-security-page .onboarding-section { grid-template-columns: minmax(0, 1fr) minmax(240px, .8fr); align-items: start; }
.account-security-page .onboarding-section > .status-badge { justify-self: start; align-self: start; }
.account-security-page .onboarding-section h2 { margin: 0 0 10px; }
.account-preference-form { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-start; }
.account-preference-form .field-group { flex: 1 1 180px; }
.account-preference-form button { margin-top: 29px; }
.account-session-form { justify-self: start; }
.account-security-page .user-row { display: flex; flex-wrap: wrap; gap: 12px; border: 0; border-bottom: 1px solid var(--border-subtle); border-radius: 0; padding: 12px 0; background: transparent; }
.account-security-page .user-row:first-child { padding-top: 0; }
.account-security-page .user-row > div { flex: 1 1 200px; min-width: 0; }
@container (max-width: 1120px) {
  .settings-review-layout { grid-template-columns: minmax(0, 1fr); }
  .settings-side-summary { border-left: 0; border-top: 1px solid var(--border-subtle); padding: 20px 0 0; }
}
@container (max-width: 540px) {
  .settings-review-page .onboarding-fields.two-columns { grid-template-columns: minmax(0, 1fr); }
}
@media (min-width: 901px) and (max-width: 1200px) {
  .settings-review-page .settings-detail-shell { grid-template-columns: minmax(0, 1fr); }
  .settings-review-page .settings-detail-shell > * { grid-column: 1 !important; grid-row: auto !important; }
  .settings-review-page .settings-detail-shell > .settings-back-link { grid-row: 1 !important; }
  .settings-review-page .settings-detail-shell > .settings-detail-header { grid-row: 2 !important; }
  .settings-review-page .settings-detail-shell > .settings-section-menu { grid-row: 3 !important; }
  .settings-review-page .settings-section-map { display: none; }
  .settings-review-page .settings-section-menu { display: block; border: 1px solid var(--border-subtle); border-radius: 8px; background: var(--surface-raised); }
  .settings-review-page .settings-section-menu summary { min-height: 46px; padding: 10px 14px; color: var(--ink-primary); font-weight: 800; cursor: pointer; }
  .settings-review-page .settings-section-menu nav { display: grid; gap: 3px; padding: 0 8px 8px; border-top: 1px solid var(--border-subtle); }
  .settings-review-page .settings-section-menu a { min-height: 40px; display: flex; align-items: center; padding: 8px 10px; border-radius: 6px; color: var(--ink-secondary); font-weight: 750; text-decoration: none; }
  .settings-review-page .settings-section-menu a.active { color: var(--primary); background: var(--primary-soft); }
}
@media (max-width: 900px) {
  .account-security-page .onboarding-section { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
  .account-preference-form { display: grid; grid-template-columns: minmax(0, 1fr); }
  .account-preference-form button { margin-top: 0; justify-self: start; }
  .settings-review-page .onboarding-fields > .auth-submit { justify-self: stretch; }
}

/* Consistent action controls across Admin; retain native form semantics. */
.settings-directory-group > header { align-content: start; gap: 10px; }
.settings-directory-card > span { min-width: 0; }
.admin-action-icon { display: inline-block; width: 20px; height: 20px; flex: 0 0 20px; background: currentColor; mask: var(--action-icon) center / contain no-repeat; }
.admin-action-icon-edit { --action-icon: url('/icons/job-sections/pencil.svg'); }
.admin-action-icon-delete { --action-icon: url('/icons/job-sections/trash-2.svg'); }
:is(.settings-page, .users-access-page, .notification-page) input[type=checkbox]:not([role=switch]) { accent-color: var(--primary); }
.settings-review-page .inline-checkbox { min-height: 44px; cursor: pointer; }
.settings-review-page .inline-checkbox input[type=checkbox] { width: 18px; height: 18px; }
.settings-review-page .workflow-checkbox-grid label { min-height: 44px; align-items: center; cursor: pointer; }
.settings-review-page .workflow-checkbox-grid input[type=checkbox] { flex: 0 0 18px; width: 18px; height: 18px; }
.settings-review-page .checklist-template-row-actions .icon-button { display: inline-grid; place-items: center; width: 40px; height: 40px; flex: 0 0 40px; padding: 0; border: 1px solid var(--border-subtle); border-radius: 6px; background: #fff; color: var(--primary); text-decoration: none; cursor: pointer; }
.settings-review-page .checklist-template-row-actions .icon-button:hover { background: #edf7f9; }
:is(.users-access-page, [data-user-drawer]) .role-choice input[type=checkbox] { appearance: auto; width: 22px; height: 22px; padding: 0; margin: 0; accent-color: var(--primary); }
:is(.users-access-page, [data-user-drawer]) .role-choice:has(input:checked)::after { display: none; }
:is(.users-access-page, [data-user-drawer]) .role-choice:focus-within { outline: 2px solid var(--primary); outline-offset: 2px; }
:is(.settings-page, .users-access-page, .notification-page, [data-user-drawer], [data-checklist-drawer]) :is(button, summary, a, input, select):focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }
.access-confirmation form > div { flex-wrap: wrap; }
.access-confirmation :is(.secondary-action, .secondary-link, .danger-action) { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 16px; border: 1px solid var(--border-subtle); border-radius: 6px; background: #fff; font: inherit; font-weight: 750; cursor: pointer; }
.access-confirmation .danger-action, .access-confirmation form[action*='handler=Deactivate'] .auth-submit { background: #a52a24; color: #fff; border: 1px solid #a52a24; box-shadow: none; }
.access-confirmation .danger-action:hover, .access-confirmation form[action*='handler=Deactivate'] .auth-submit:hover { background: #85211d; border-color: #85211d; }
.users-access-page .users-panel { overflow: visible; }
.users-access-page .users-panel > header { border-radius: 8px 8px 0 0; }
.user-actions:not([open]) > .user-actions-menu { display: none; }
.user-actions > summary { width: 44px; height: 44px; }
.user-actions-menu { max-width: calc(100vw - 40px); overflow-y: auto; }
.user-actions-menu.user-actions-positioned { position: fixed; right: auto; bottom: auto; z-index: 20; }
.user-actions-menu .secondary-link { min-height: 44px; white-space: normal; }
.user-actions-menu .danger-action { color: #a52a24; }
.user-actions-menu .danger-action:hover { color: #85211d; background: #fff0ef; }
.edit-user-identity > span:last-child { display: grid; gap: 4px; min-width: 0; overflow-wrap: anywhere; }
.settings-review-page .checklist-company-section-heading { flex-wrap: wrap !important; }
.settings-review-page .checklist-company-section-heading .users-invite-button { min-width: 0; max-width: 100%; white-space: normal; }
:is(.settings-review-page, [data-checklist-drawer]) :is(.checklist-step-order-actions, .checklist-row-icon-actions) .icon-button { display: inline-grid; place-items: center; width: 40px; height: 40px; min-width: 40px; padding: 0; line-height: 1; border: 1px solid var(--border-subtle); border-radius: 6px; background: #fff; color: var(--primary); text-decoration: none; cursor: pointer; }
:is(.settings-review-page, [data-checklist-drawer]) :is(.checklist-step-order-actions, .checklist-row-icon-actions) .icon-button.danger { color: #a52a24; }
:is(.settings-review-page, [data-checklist-drawer]) :is(.checklist-step-order-actions, .checklist-row-icon-actions) .icon-button:disabled { opacity: .4; cursor: not-allowed; }
:is(.settings-review-page, [data-checklist-drawer]) :is(.checklist-step-order-actions, .checklist-row-icon-actions) .icon-button:hover:not(:disabled) { background: #edf7f9; }
:is(.settings-review-page, [data-checklist-drawer]) :is(.checklist-step-order-actions, .checklist-row-icon-actions) .icon-button.danger:hover { background: #fff0ef; }
:is(.integrations-settings-page, .workflow-packs-page) .integration-readiness-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); }
:is(.integrations-settings-page, .workflow-packs-page) .integration-readiness-card__header { flex-wrap: wrap; }
:is(.integrations-settings-page, .workflow-packs-page) .integration-readiness-card { min-width: 0; overflow-wrap: anywhere; }
.workflow-packs-page .integration-readiness-card__header .status-badge { overflow-wrap: normal; word-break: normal; }
.customer-filter-menu:not([open]) > div { display: none; }
.customer-filter-menu > div { min-width: 0; width: 260px; max-width: calc(100vw - 32px); }
.customer-filter-menu input { box-sizing: border-box; width: 100%; min-width: 0; }
@media (max-width: 1200px) {
  .settings-directory-group { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .settings-directory-group > header { padding: 16px; }
  .settings-directory-list { border-left: 0; border-top: 1px solid var(--border-subtle); }
  .settings-directory-card { grid-template-columns: 38px minmax(0, 1fr) 22px; }
  .settings-directory-summary { display: none; }
  .users-access-page .users-table-heading { display: none; }
  .users-access-page .users-table-row { grid-template-columns: minmax(0, 1fr) auto; gap: 10px 16px; }
  .users-access-page .users-table-row > [role=cell] { grid-column: 1; min-width: 0; overflow-wrap: anywhere; }
  .users-access-page .users-table-row > [role=cell]:last-child { grid-column: 2; grid-row: 1; }
  .users-access-page .pending-invitation-row > [role=cell]:last-child { grid-column: 1 / -1; grid-row: auto; justify-self: start; }
}
@media (max-width: 600px) {
  .settings-review-page .checklist-company-section-heading .users-invite-button { flex: 1 1 100%; margin-left: 0; }
  .settings-review-page .checklist-template-row-actions .icon-button { width: 44px; height: 44px; }
  :is(.settings-review-page, [data-checklist-drawer]) :is(.checklist-step-order-actions, .checklist-row-icon-actions) .icon-button { width: 44px; height: 44px; min-width: 44px; }
  [data-user-drawer] .edit-name-fields { grid-template-columns: minmax(0, 1fr); }
  [data-user-drawer] .invite-form footer { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 12px; }
  [data-user-drawer] .invite-form footer > * { min-width: 0; max-width: 100%; }
  .customer-filter-menu > div { right: auto; left: 0; }
}
