/*
  Part "fleet-pages" (phase 2): fleet, maintenance, customer, jobs and ELD pages rebuilt to the canvas-gaps boards.
  Prefixes: pui-fp-. Page scope: .pui-fp.
*/
.pui-tolls-hos-card.cn-card { max-width: none; }
.pui-tolls-hos-card .pui-tolls-empty { padding: 48px 32px; }
.pui-fp-hos-connect { align-items: center; gap: 8px; margin-top: 8px; }
.pui-fp-state-card.cn-card { padding: 0; gap: 0; border-radius: 12px; }
.pui-fp-state-card .pui-tolls-empty { padding: 48px 32px; }
.pui-fp-state-card-narrow.cn-card { max-width: 760px; }
.pui-fp-state-action { margin-top: 8px; }

/* Menus (board MenusCatalog): the unit name heads the menu, small and muted. */
.cn-dropdown-label.pui-fp-menu-label, .pui-fp-menu-label { font-size: 12px; font-weight: 400; color: var(--muted-foreground); }
.cn-button.pui-fp-danger-text { color: var(--tone-danger-fg); }
.cn-button.pui-fp-danger-text:hover { color: var(--tone-danger-fg); background: var(--tone-danger-bg); }

/* List filter bars with labelled controls (boards InspectionsList, PMSchedulesList). */
.pui-eq-list .pui-fp-filters { align-items: flex-end; flex-wrap: wrap; gap: 12px; }
.pui-eq-list .pui-fp-filters > .pui-fp-grow { flex: 1 1 320px; min-width: 200px; }
.pui-eq-list .pui-fp-filters > .cn-field:not(.pui-fp-grow) { flex: 0 0 190px; }
.pui-eq-list .pui-fp-filters .pui-eq-search { max-width: none; }
.pui-eq-list .pui-fp-filters .cn-label { font-size: 13px; font-weight: 500; }
.pui-eq-list .pui-fp-filters .pui-eq-search { position: relative; display: block; }
.pui-eq-list .pui-fp-filters .pui-eq-search > .cn-input { height: 36px; width: 100%; padding-left: 34px; border-radius: 8px; font-size: 14px; }
.pui-eq-list .pui-fp-filters .cn-select-trigger, .pui-eq-list .pui-fp-filters select { height: 36px; border-radius: 8px; font-size: 14px; }

/* ── Detail pages (boards WorkOrderDetail, InspectionDetail, TrailerDetail): header, banner, section, kv ── */
.pui-fp-title-plain { font-family: inherit; }
.pui-fp-banner-icon { flex: none; }
.pui-eq-banner.pui-fp-banner-warn { background: var(--tone-warning-bg); border-color: oklch(0.88 0.08 80); color: var(--tone-warning-fg); }
.pui-eq-banner.pui-fp-banner-warn .pui-fp-banner-icon { color: var(--tone-warning-fg); }
.pui-eq-banner.pui-fp-banner-danger { background: var(--tone-danger-bg); border-color: oklch(0.88 0.06 25); color: var(--tone-danger-fg); }
.pui-eq-banner.pui-fp-banner-danger .pui-fp-banner-icon { color: var(--tone-danger-fg); }
.pui-fp-section.cn-card { padding: 0; gap: 0; border-radius: 12px; }
.pui-fp-section-head { padding: 16px 20px 0; }
.pui-fp-section-title { font-size: 15px; font-weight: 600; }
.pui-fp-section-body { padding: 16px 20px; min-width: 0; }
.pui-fp-section-body table { width: 100%; border-collapse: collapse; font-size: 13px; }
.pui-fp-section-body thead th {
    text-align: left; font-weight: 500; font-size: 12px; color: var(--muted-foreground); padding: 0 12px; height: 38px;
    border-bottom: 1px solid var(--border); white-space: nowrap;
}
.pui-fp-section-body tbody td { padding: 10px 12px; border-bottom: 1px solid var(--border); vertical-align: middle; }
.pui-fp-section-body tbody tr:last-child td { border-bottom: 0; }
.pui-fp-section-body tbody tr.pui-fp-row-defect td { background: oklch(0.985 0.02 85); }
.pui-fp-kv-row { padding: 9px 0; border-bottom: 1px solid var(--border); font-size: 13px; align-items: baseline; }
.pui-fp-kv-row:last-child { border-bottom: 0; }
.pui-fp-kv-label { color: var(--muted-foreground); flex: none; }
.pui-fp-kv-value { font-weight: 500; text-align: right; min-width: 0; align-items: flex-end; }
.pui-eq .pui-detail-main { flex: 999 1 560px; }

/* Work order progress bar, cost split, wide action buttons (board WorkOrderDetail). */
.pui-fp-steps-card.cn-card { padding: 16px 20px; gap: 0; border-radius: 12px; }
.pui-fp-step-bar { height: 3px; border-radius: 999px; display: block; }
.pui-fp-step-done { background: var(--primary); }
.pui-fp-step-todo { background: var(--muted); }
.pui-fp-step-label { font-size: 12px; color: var(--muted-foreground); }
.pui-fp-step-label.pui-fp-step-current { color: var(--foreground); font-weight: 600; }
.pui-fp-big-money { font-family: var(--font-mono); font-size: 28px; font-weight: 600; letter-spacing: -0.01em; line-height: 1.1; }
.pui-fp-split { display: flex; height: 6px; border-radius: 999px; background: var(--muted); overflow: hidden; }
.pui-fp-split-labor { background: var(--tone-info-fg); display: block; }
.pui-fp-split-parts { background: var(--primary); display: block; }
.cn-button.pui-fp-wide { width: 100%; justify-content: center; }
.cn-button.pui-fp-danger-outline { color: var(--tone-danger-fg); border-color: oklch(0.88 0.06 25); }
.cn-button.pui-fp-danger-outline:hover { color: var(--tone-danger-fg); background: var(--tone-danger-bg); }
.pui-fp-hooked { font-size: 16px; font-weight: 600; text-decoration: none; color: var(--foreground); }

/* Customer detail strip (board CustomerDetail). */
.pui-fp-metrics-card.cn-card { padding: 0; gap: 0; border-radius: 12px; }
.pui-fp-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.pui-fp-metric { padding: 16px 20px; border-right: 1px solid var(--border); }
.pui-fp-metric:last-child { border-right: 0; }
.pui-fp-metric-value { font-size: 17px; font-weight: 600; }
@media (max-width: 900px) { .pui-fp-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pui-fp-metric:nth-child(2) { border-right: 0; } .pui-fp-metric:nth-child(-n+2) { border-bottom: 1px solid var(--border); } }

/* Paperwork sheet (board DialogsFleetConfirms): dashed add zone and file rows. */
.cn-button.pui-fp-dropzone {
    width: 100%; height: auto; padding: 22px; border: 1.5px dashed var(--input); border-radius: 10px;
    background: var(--muted); justify-content: center; white-space: normal; box-shadow: none;
}
.cn-button.pui-fp-dropzone:hover { background: var(--accent); }
.cn-button.pui-fp-file-link { padding-left: 0; height: auto; justify-content: flex-start; font-weight: 400; white-space: normal; text-align: left; }
.pui-eq-sheet .pui-sheet-section table { width: 100%; border-collapse: collapse; font-size: 13px; }
.pui-eq-sheet .pui-sheet-section thead th { text-align: left; font-weight: 500; font-size: 12px; color: var(--muted-foreground); height: 38px; padding: 0 12px; border-bottom: 1px solid var(--border); }
.pui-eq-sheet .pui-sheet-section tbody td { padding: 10px 12px; border-bottom: 1px solid var(--border); vertical-align: middle; }
.pui-eq-sheet .pui-sheet-section tbody tr:last-child td { border-bottom: 0; }
