/* Maintenance: fleet → aircraft status → work order. Scoped to the maintenance surfaces. */
[data-maintenance-surface] {
  --mx-ink: #122330;
  --mx-muted: #526977;
  --mx-line: #d6e0e5;
  --mx-teal: #087e85;
  --mx-soft: #f4f7f9;
  color: var(--mx-ink);
  min-width: 0;
}
[data-maintenance-surface] button:focus-visible,
[data-maintenance-surface] summary:focus-visible,
.maintenance-status-table-wrap:focus-visible {
  outline: 2px solid #087e85;
  outline-offset: 3px;
}
.maintenance-fleet-workspace { display: grid; grid-template-columns: minmax(0, 1fr) minmax(270px, 32%); align-items: start; gap: 24px; padding: 20px; }
.maintenance-fleet-registry { min-width: 0; }
.maintenance-fleet-priorities { border: 1px solid var(--mx-line); border-radius: 8px; background: white; overflow: hidden; }
.maintenance-fleet-priorities header { padding: 16px; border-bottom: 1px solid var(--mx-line); background: var(--mx-soft); }
.maintenance-fleet-priorities h3 { font-size: 16px; margin: 4px 0 8px; }
.maintenance-fleet-priorities header p:last-child { color: var(--mx-muted); font-size: 12px; line-height: 1.5; margin: 0; }
.maintenance-fleet-priorities > button { margin: 12px 16px; max-width: calc(100% - 32px); }
.maintenance-fleet-priority { display: grid; gap: 8px; width: 100%; padding: 16px; text-align: left; border: 0; border-bottom: 1px solid var(--mx-line); border-radius: 0; background: white; color: var(--mx-ink); font: inherit; font-size: 13px; cursor: pointer; transition: background-color 160ms; }
.maintenance-fleet-priority:hover { background: #f0f7f7; }
.maintenance-fleet-priority small { color: var(--mx-muted); line-height: 1.5; }
.maintenance-fleet-priority-top { display: flex; justify-content: space-between; gap: 8px; align-items: start; }
.maintenance-fleet-priority-top strong { color: #056a73; font-size: 14px; }
.maintenance-fleet-priority-top > span { font-size: 11px; color: #596d78; }
.maintenance-fleet-priority.is-overdue .maintenance-fleet-priority-top > span { color: #a93630; }
.maintenance-fleet-registration { padding: 5px 0; border: 0; background: none; color: #056a73; font: inherit; font-size: 17px; font-weight: 750; cursor: pointer; min-height: 36px; text-align: left; }
.maintenance-fleet-counter { display: block; margin: 5px 0; }
.maintenance-fleet-counter strong { font-size: 15px; font-variant-numeric: tabular-nums; }
#maintenanceAircraftTableWrap { border: 1px solid var(--mx-line); border-radius: 8px; overflow-x: auto; }
#maintenanceAircraftTableWrap table { width: 100%; table-layout: fixed; min-width: 0; }
#maintenanceAircraftTableWrap th { font-size: 11px; padding: 12px; }
#maintenanceAircraftTableWrap td { padding: 12px; vertical-align: middle; overflow-wrap: anywhere; }
#maintenanceAircraftTableWrap td small { display: block; margin-top: 4px; font-size: 12px; color: var(--mx-muted); font-weight: 400; line-height: 1.4; }
#maintenanceAircraftTableWrap th:nth-child(1) { width: 31%; }
#maintenanceAircraftTableWrap th:nth-child(2) { width: 24%; }
#maintenanceAircraftTableWrap th:nth-child(3) { width: 35%; }
#maintenanceAircraftTableWrap th:nth-child(4) { width: 10%; }
.maintenance-workspace-status { display: inline-block; font-size: 11px; line-height: 1.4; font-weight: 700; padding: 4px 7px; border: 1px solid #c8d6e0; border-radius: 4px; background: #f2f6f8; color: #405d70; }
.maintenance-workspace-status.is-overdue { color: #a32f2b; background: #fff2f0; border-color: #efc2bd; }
.maintenance-workspace-status.is-baseline_required,
.maintenance-workspace-status.is-due_soon { color: #865615; background: #fff7e9; border-color: #ead2a9; }
.maintenance-workspace-status.is-upcoming { color: #236547; background: #eef7f2; border-color: #bad9c8; }
.maintenance-workspace-empty { padding: 24px; color: var(--mx-muted); font-size: 14px; line-height: 1.6; text-align: center; }
.maintenance-aircraft-options { position: relative; }
.maintenance-aircraft-options > summary { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 40px; padding: 8px 12px; background: white; border: 1px solid #bacdd8; border-radius: 5px; font-size: 12px; font-weight: 700; cursor: pointer; list-style: none; }
.maintenance-aircraft-options > summary::-webkit-details-marker { display: none; }
.maintenance-aircraft-options > summary img { width: 14px; height: 14px; transform: rotate(90deg); }
.maintenance-aircraft-options > div { position: absolute; z-index: 20; right: 0; top: calc(100% + 6px); min-width: 230px; display: grid; gap: 6px; padding: 10px; background: white; border: 1px solid var(--mx-line); border-radius: 6px; box-shadow: 0 8px 20px #12233020; }
.maintenance-aircraft-options > div > button { width: 100%; min-height: 40px; justify-content: flex-start; }

/* A stable aircraft header and document-style navigation, inspired by the pilot's workflow. */
.maintenance-aircraft-dossier .maintenance-aircraft-hero { padding: 20px 24px; gap: 20px; background: #102733; color: white; }
.maintenance-aircraft-dossier .maintenance-aircraft-hero .eyebrow,
.maintenance-aircraft-dossier .maintenance-aircraft-hero p,
.maintenance-aircraft-dossier .maintenance-aircraft-hero dt { color: #bcd2dc; }
.maintenance-aircraft-dossier .maintenance-aircraft-hero h2,
.maintenance-aircraft-dossier .maintenance-aircraft-hero dd { color: #fff; }
.maintenance-aircraft-dossier .maintenance-aircraft-hero-facts { background: transparent; border-color: #3a5260; }
.maintenance-aircraft-dossier .maintenance-aircraft-hero-facts > div { border-color: #3a5260; }
.maintenance-aircraft-dossier .maintenance-aircraft-mark { background: #dceff0; }
#maintenanceAircraftDetailTabs { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 8px; padding: 16px; overflow: visible; background: #f4f7f9; border-bottom: 1px solid var(--mx-line); }
#maintenanceAircraftDetailTabs .maintenance-detail-tab { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 7px; padding: 12px 6px; min-width: 0; min-height: 80px; border: 1px solid #c7dde0; border-radius: 7px; background: #e4f0f2; color: #294855; white-space: normal; text-align: center; font-size: 12px; line-height: 1.3; }
#maintenanceAircraftDetailTabs .maintenance-detail-tab[hidden] { display: none; }
#maintenanceAircraftDetailTabs .maintenance-detail-tab::after { content: none; }
#maintenanceAircraftDetailTabs .maintenance-detail-tab > img { width: 18px; height: 18px; }
#maintenanceAircraftDetailTabs .maintenance-detail-tab:hover { background: #d2e9eb; }
#maintenanceAircraftDetailTabs .maintenance-detail-tab.is-active { background: #087e85; border-color: #087e85; color: white; box-shadow: 0 0 0 2px white, 0 0 0 3px #69b3b8; }
#maintenanceAircraftDetailTabs .maintenance-detail-tab.is-active > img { filter: brightness(0) invert(1); }
#maintenanceAircraftDetailTabs .maintenance-tab-count { display: none; } /* Counts remain in their section, not in eight navigation tiles. */
.maintenance-aircraft-dossier .maintenance-detail-body { padding: 20px; min-width: 0; }
.maintenance-aircraft-dossier .maintenance-detail-section { padding: 0; }
.maintenance-aircraft-dossier .maintenance-aircraft-hero { min-height: 100px; }
#maintenanceAircraftDetailTabs .maintenance-detail-tab { min-height: 72px; padding-top: 10px; padding-bottom: 10px; }
#maintenanceAircraftOverviewSection > .maintenance-current-counters { padding: 0 0 18px; border: 0; }
#maintenanceAircraftOverviewSection .maintenance-current-counters .eyebrow { display: none; }
#maintenanceAircraftOverviewSection .maintenance-current-counters .maintenance-detail-block-heading { margin-bottom: 12px; }
#maintenanceAircraftCounterCards { display: flex; gap: 12px; flex-wrap: wrap; }
#maintenanceAircraftCounterCards .maintenance-counter-card { display: grid; grid-template-columns: 1fr auto; gap: 6px 14px; min-width: 230px; max-width: 100%; flex: 0 1 320px; padding: 12px 16px; background: #f6f9fa; border: 1px solid var(--mx-line); border-left: 3px solid #087e85; border-radius: 6px; }
#maintenanceAircraftCounterCards .maintenance-counter-card > span,
#maintenanceAircraftCounterCards .maintenance-counter-card > strong { grid-column: 1; }
#maintenanceAircraftCounterCards .maintenance-counter-card > strong { font-size: 22px; margin: 0; }
#maintenanceAircraftCounterCards .maintenance-counter-card > small { grid-column: 1 / -1; font-size: 11px; }
#maintenanceAircraftCounterCards .maintenance-counter-card > button { grid-column: 2; grid-row: 1 / 3; align-self: center; min-height: 36px; }
.maintenance-status-toolbar { display: flex; flex-wrap: wrap; align-items: end; gap: 12px; padding: 16px 0; border-top: 1px solid var(--mx-line); }
.maintenance-status-toolbar label { display: grid; gap: 6px; color: var(--mx-muted); font-size: 12px; font-weight: 650; }
.maintenance-status-toolbar .search-control { flex: 1; min-width: 200px; }
.maintenance-status-toolbar input, .maintenance-status-toolbar select { min-height: 40px; background: white; border: 1px solid #bacdd8; border-radius: 5px; padding: 8px 12px; color: var(--mx-ink); font: inherit; font-size: 14px; width: 100%; }
.maintenance-status-toolbar output { padding: 10px 0; color: var(--mx-muted); font-size: 12px; }
.maintenance-status-group { margin-bottom: 20px; min-width: 0; }
.maintenance-status-group h3 { display: flex; gap: 10px; align-items: center; font-size: 15px; margin: 0; padding: 12px 0; }
.maintenance-status-group h3 > span { color: var(--mx-muted); font-size: 12px; font-weight: 500; }
.maintenance-status-table-wrap { overflow: auto; max-width: 100%; border: 1px solid var(--mx-line); border-radius: 6px; }
.maintenance-status-table { width: 100%; min-width: 780px; border-collapse: collapse; text-align: left; font-size: 13px; line-height: 1.5; background: white; }
.maintenance-status-table th, .maintenance-status-table td { padding: 12px; vertical-align: top; border-bottom: 1px solid var(--mx-line); }
.maintenance-status-table thead th { background: #f1f6f8; color: #526977; font-size: 11px; font-weight: 700; text-transform: uppercase; white-space: nowrap; }
.maintenance-status-table tbody th { font-weight: 500; width: 28%; min-width: 210px; background: transparent; text-transform: none; color: var(--mx-ink); font-size: 13px; letter-spacing: 0; }
.maintenance-status-table small { display: block; color: var(--mx-muted); font-size: 11px; font-weight: 400; margin-top: 5px; }
.maintenance-status-table tbody tr:last-child > * { border-bottom: 0; }
.maintenance-status-table tbody tr:hover { background: #f8fbfc; }
.maintenance-status-table tbody tr.is-overdue > th { border-left: 3px solid #c74b43; }
.maintenance-status-table td:not(:first-child) { font-variant-numeric: tabular-nums; }
.maintenance-status-table .maintenance-remaining { font-weight: 750; white-space: nowrap; }
.maintenance-status-table .is-overdue .maintenance-remaining { color: #a32f2b; }
.maintenance-status-actions { min-width: 135px; }
.maintenance-status-actions button { display: block; min-height: 36px; text-align: left; font-size: 12px; }
.maintenance-limit-explanation { margin-top: 8px; min-width: 110px; }
.maintenance-limit-explanation summary { cursor: pointer; font-size: 11px; color: var(--mx-muted); }
.maintenance-limit-explanation[open] { min-width: 160px; }
.maintenance-alert-disclosure { border-top: 1px solid var(--mx-line); margin-top: 12px; padding-top: 8px; }
.maintenance-alert-disclosure > summary { padding: 12px 0; cursor: pointer; font-size: 13px; color: var(--mx-muted); }
.maintenance-alert-disclosure .maintenance-due-overview { margin: 0; padding: 16px 0; }
.maintenance-aircraft-orders-footer { display: flex; justify-content: space-between; gap: 12px; margin-top: 16px; }
.maintenance-alert-card { padding: 20px; background: white; border: 1px solid var(--mx-line); border-radius: 6px; }
.maintenance-alert-card > header { display: flex; justify-content: space-between; gap: 16px; border-bottom: 2px solid #087e85; padding-bottom: 12px; }
.maintenance-alert-card h2 { font-size: 24px; margin: 8px 0; }
.maintenance-alert-card p { color: var(--mx-muted); font-size: 13px; }
.maintenance-alert-card-note { margin-top: 20px; }

/* Work order: persistent document header, section rail and compact task rows. */
#maintenanceWorkOrderDetailContent { display: grid; grid-template-columns: 155px minmax(0,1fr); align-items: start; }
#maintenanceWorkOrderDetailContent[hidden] { display: none; }
#maintenanceWorkOrderDetailContent > :not(.maintenance-work-order-tabs):not(.maintenance-work-order-detail-body) { grid-column: 1 / -1; }
#maintenanceWorkOrderDetailContent .maintenance-work-order-hero { background: #102733; color: white; padding: 20px 24px; }
#maintenanceWorkOrderDetailContent .maintenance-work-order-hero-facts { background: transparent; border-color: #3a5260; }
#maintenanceWorkOrderDetailContent .maintenance-work-order-hero-facts > div { border-color: #3a5260; }
#maintenanceWorkOrderDetailContent .maintenance-work-order-hero h2,
#maintenanceWorkOrderDetailContent .maintenance-work-order-hero h3,
#maintenanceWorkOrderDetailContent .maintenance-work-order-hero dd { color: white; }
#maintenanceWorkOrderDetailContent .maintenance-work-order-hero p,
#maintenanceWorkOrderDetailContent .maintenance-work-order-hero dt { color: #bcd2dc; }
#maintenanceWorkOrderTabs { display: flex; flex-direction: column; padding: 16px 10px; gap: 6px; background: #f4f7f9; border: 0; position: sticky; top: 12px; align-self: stretch; }
#maintenanceWorkOrderTabs button { min-height: 44px; padding: 10px; border: 1px solid var(--mx-line); border-radius: 5px; color: #304f5c; background: white; text-align: left; white-space: normal; font-size: 12px; }
#maintenanceWorkOrderTabs button::after { content: none; }
#maintenanceWorkOrderTabs button.is-active { background: #d7edef; border-color: #087e85; color: #056a73; }
#maintenanceWorkOrderDetailContent .maintenance-work-order-detail-body { padding: 18px; min-width: 0; }
#maintenanceWorkOrderTaskList { gap: 0; border: 1px solid var(--mx-line); border-radius: 6px; overflow: hidden; }
#maintenanceWorkOrderTaskList .maintenance-work-order-task-card { border: 0; border-bottom: 1px solid var(--mx-line); border-radius: 0; box-shadow: none; margin: 0; }
#maintenanceWorkOrderTaskList .maintenance-work-order-task-toggle { grid-template-columns: 28px minmax(140px,1.5fr) minmax(130px,1fr) 70px auto 16px; padding: 14px 12px; gap: 12px; min-height: 80px; }
#maintenanceWorkOrderTaskList .maintenance-work-order-task-summary-copy strong { font-size: 13px; }
#maintenanceWorkOrderTaskList .maintenance-work-order-task-panel { padding: 18px; background: #f9fbfc; border-top: 1px solid var(--mx-line); }
.maintenance-task-observation { font-size: 12px; color: #344a58; line-height: 1.5; font-weight: 400; min-width: 0; }
.maintenance-task-observation > span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.maintenance-task-observation small { display: block; margin-top: 4px; color: #526977; font-size: 11px; }
@media (max-width: 1200px) {
  .maintenance-detail-topbar { flex-wrap: wrap; }
  .maintenance-detail-actions { flex-wrap: wrap; }
  .maintenance-fleet-workspace { grid-template-columns: minmax(0,1fr); }
  #maintenanceFleetPriorityList { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  #maintenanceWorkOrderDetailContent { grid-template-columns: minmax(0,1fr); }
  #maintenanceWorkOrderTabs { position: static; flex-direction: row; flex-wrap: wrap; }
  #maintenanceWorkOrderTabs button { flex: 1 1 110px; }
  #maintenanceAircraftDetailTabs { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
@media (max-width: 768px) {
  .maintenance-fleet-workspace { padding: 12px; gap: 16px; }
  #maintenanceAircraftTableWrap table { display: table; }
  #maintenanceAircraftTableWrap thead { display: table-header-group; }
  #maintenanceAircraftTableWrap tbody { display: table-row-group; }
  #maintenanceAircraftTableWrap tbody tr { display: table-row; border: 0; }
  #maintenanceAircraftTableWrap tbody td { display: table-cell; width: auto; padding: 10px; border-bottom: 1px solid var(--mx-line); }
  #maintenanceAircraftTableWrap td::before { content: none; }
  #maintenanceAircraftTableWrap .maintenance-row-open-button { position: static; transform: none; }
  #maintenanceAircraftTableWrap th:last-child, #maintenanceAircraftTableWrap td:last-child { display: none; }
  #maintenanceAircraftTableWrap th:nth-child(1) { width: 34%; }
  #maintenanceAircraftTableWrap th:nth-child(2) { width: 27%; }
  #maintenanceAircraftTableWrap th:nth-child(3) { width: 39%; }
  #maintenanceAircraftDetailTabs { padding: 12px; gap: 8px; }
  #maintenanceAircraftDetailTabs .maintenance-detail-tab { min-height: 74px; font-size: 11px; }
  .maintenance-aircraft-dossier .maintenance-aircraft-hero { padding: 18px; flex-wrap: wrap; }
  .maintenance-aircraft-dossier .maintenance-aircraft-hero-facts { width: 100%; }
  .maintenance-aircraft-dossier .maintenance-detail-body { padding: 12px; }
  #maintenanceWorkOrderTaskList .maintenance-work-order-task-toggle { grid-template-columns: 26px minmax(0,1fr) auto 14px; }
  #maintenanceWorkOrderTaskList .maintenance-task-observation { grid-column: 2 / -1; grid-row: 2; }
  #maintenanceWorkOrderTaskList .maintenance-work-order-task-time { grid-column: 2; grid-row: 3; text-align: left; }
  #maintenanceWorkOrderTaskList .maintenance-work-order-status { grid-column: 3; grid-row: 1; }
  #maintenanceWorkOrderTaskList .maintenance-work-order-task-chevron { grid-column: 4; grid-row: 1; }
  #maintenanceWorkOrderDetailContent .maintenance-work-order-detail-body { padding: 12px; }
  .maintenance-alert-card { padding: 12px; }
}
@media (max-width: 480px) {
  #maintenanceAircraftDetailPanel > .maintenance-detail-topbar .maintenance-detail-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; gap: 8px; }
  #maintenanceAircraftDetailPanel > .maintenance-detail-topbar .maintenance-detail-actions > * { width: 100%; min-width: 0; }
  .maintenance-aircraft-options > summary { font-size: 11px; }
  .maintenance-aircraft-options > div { left: 0; right: auto; }
  .maintenance-aircraft-dossier .maintenance-aircraft-hero-facts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
  .maintenance-aircraft-dossier .maintenance-aircraft-hero-facts > div { padding: 8px; border-top: 0; }
  .maintenance-aircraft-dossier .maintenance-aircraft-hero-facts dt { font-size: 9px; }
  .maintenance-aircraft-dossier .maintenance-aircraft-hero-facts dd { font-size: 11px; overflow-wrap: anywhere; }
  #maintenanceWorkOrderDetailContent .maintenance-work-order-hero-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #maintenanceFleetPriorityList { grid-template-columns: 1fr; }
  #maintenanceAircraftTableWrap .maintenance-fleet-registration { font-size: 14px; }
  #maintenanceAircraftTableWrap td small { font-size: 11px; }
  #maintenanceAircraftTableWrap .maintenance-fleet-counter strong { font-size: 13px; }
  #maintenanceAircraftTableWrap td, #maintenanceAircraftTableWrap th { padding: 8px 6px; }
  .maintenance-status-toolbar label, .maintenance-status-toolbar .search-control { width: 100%; min-width: 0; }
  #maintenanceAircraftCounterCards .maintenance-counter-card { flex-basis: 100%; min-width: 0; }
}
@media (prefers-reduced-motion: reduce) {
  [data-maintenance-surface] *, [data-maintenance-surface] *::before, [data-maintenance-surface] *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
@media print {
  body.maintenance-alert-card-printing .maintenance-detail-section { animation: none !important; opacity: 1 !important; transform: none !important; }
  body.maintenance-alert-card-printing .side-rail,
  body.maintenance-alert-card-printing .workspace-header,
  body.maintenance-alert-card-printing .nav-scrim,
  body.maintenance-alert-card-printing .maintenance-detail-topbar,
  body.maintenance-alert-card-printing .maintenance-aircraft-hero,
  body.maintenance-alert-card-printing #maintenanceAircraftDetailTabs,
  body.maintenance-alert-card-printing .maintenance-detail-section:not(#maintenanceAircraftAlertCardSection),
  body.maintenance-alert-card-printing #maintenanceAircraftAlertCardSection > .maintenance-detail-block-heading { display: none !important; }
  body.maintenance-alert-card-printing .product-shell,
  body.maintenance-alert-card-printing .workspace { display: block !important; margin: 0 !important; padding: 0 !important; width: 100% !important; }
  body.maintenance-alert-card-printing .maintenance-aircraft-dossier,
  body.maintenance-alert-card-printing .maintenance-detail-body,
  body.maintenance-alert-card-printing .maintenance-alert-card { margin: 0; padding: 0; border: 0; box-shadow: none; }
  body.maintenance-alert-card-printing .maintenance-status-table-wrap { overflow: visible; border: 0; }
  body.maintenance-alert-card-printing .maintenance-status-table { min-width: 0; font-size: 11px; }
  body.maintenance-alert-card-printing .maintenance-status-table th,
  body.maintenance-alert-card-printing .maintenance-status-table td { padding: 6px; min-width: 0; }
  body.maintenance-alert-card-printing .maintenance-status-table thead th { white-space: normal; font-size: 9px; }
  body.maintenance-alert-card-printing .maintenance-status-table tr { break-inside: avoid; }
  body.maintenance-alert-card-printing .maintenance-limit-explanation { display: none; }
  body.maintenance-work-order-printing #maintenanceWorkOrderDetailContent { display: block; }
  body.maintenance-work-order-printing #maintenanceWorkOrderTabs { display: none; }
}
/* Task parts: quantities remain readable alongside their stock history. */
#maintenanceWorkOrderPartsContent, .maintenance-part-record, .maintenance-inventory-passport { scroll-margin-top:100px; }
.maintenance-part-task-link { padding:4px 0; background:none; border:0; color:#087e84; text-align:left; font:inherit; font-size:13px; cursor:pointer; }
.maintenance-part-task-link:hover { text-decoration:underline; }
.maintenance-parts-form [role="status"]:empty { display:none; }
.maintenance-parts-heading, .maintenance-part-record > header, .maintenance-part-allocation,
.maintenance-parts-dialog-head, .maintenance-parts-form footer { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.maintenance-parts-heading { align-items:flex-start; margin-bottom:22px; }
.maintenance-parts-heading h3 { margin:4px 0 8px; font-size:20px; }
.maintenance-parts-heading p, .maintenance-parts-form > p { margin:6px 0; color:#526777; line-height:1.6; }
.maintenance-parts-heading > button { flex-shrink:0; }
.maintenance-part-record { margin:0 0 22px; border:1px solid #d7e2e8; border-radius:8px; padding:18px; background:#fff; }
.maintenance-part-record > header { align-items:flex-start; }
.maintenance-part-record > header > div { display:grid; gap:5px; }
.maintenance-part-record small, .maintenance-part-history span { display:block; color:#526777; margin-top:4px; }
.maintenance-part-record :is(strong,span,small,p) { overflow-wrap:anywhere; }
.maintenance-part-quantities { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); margin:18px 0; padding:12px 0; border-block:1px solid #e3eaef; gap:12px; }
.maintenance-part-quantities dt { font-size:12px; color:#526777; }
.maintenance-part-quantities dd { font-size:17px; font-weight:700; font-variant-numeric:tabular-nums; margin:5px 0 0; }
.maintenance-part-availability { display:grid; gap:4px; margin:0 0 16px; padding-left:12px; border-left:3px solid #8297a4; color:#526777; font-size:13px; line-height:1.5; }
.maintenance-part-availability strong { color:#122330; }
.maintenance-part-availability.is-available { border-left-color:#087e84; }
.maintenance-part-availability.is-attention { border-left-color:#a76a10; }
.maintenance-part-coverage.is-available { color:#075d61; background:#e4f4f3; }
.maintenance-part-coverage.is-attention { color:#80500b; background:#fff4dd; }
.maintenance-parts-actions { display:flex; flex-wrap:wrap; gap:8px; }
.maintenance-part-allocation { padding:12px 0; border-bottom:1px solid #e3eaef; }
.maintenance-part-history { margin-top:14px; }
.maintenance-part-history summary { cursor:pointer; font-weight:600; padding:8px 0; }
.maintenance-part-history ol { margin:8px 0; padding-left:22px; }
.maintenance-part-history li { padding:8px 0; }
.maintenance-part-history p { margin:5px 0; }
.maintenance-parts-notice { padding:12px; background:#f3f7fa; color:#526777; border-left:3px solid #078b91; }
.maintenance-parts-dialog { color:#122330; width:min(600px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); box-sizing:border-box; padding:24px; border:1px solid #d7e2e8; border-radius:12px; box-shadow:0 20px 70px #12233030; overflow:auto; }
.maintenance-parts-dialog::backdrop { background:#12233077; }
.maintenance-parts-dialog h3 { margin:0; font-size:21px; }
.maintenance-parts-form { display:grid; gap:16px; }
.maintenance-parts-form fieldset { display:grid; gap:14px; padding:0; margin:0; border:0; min-width:0; }
.maintenance-parts-form label { display:grid; gap:7px; font-size:13px; font-weight:600; min-width:0; }
.maintenance-parts-form :is(input,select,textarea) { width:100%; min-width:0; box-sizing:border-box; padding:10px; border:1px solid #b7cbd5; border-radius:6px; font:inherit; background:white; color:#122330; }
.maintenance-parts-form footer { justify-content:flex-end; flex-wrap:wrap; }
.maintenance-parts-form [role="status"] { margin:0; }
:is(.maintenance-part-use-recovery,.maintenance-part-return-recovery,.maintenance-part-allocation-recovery) { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:12px 0; padding:14px 16px; background:#fff8ea; border:1px solid #e5d6b5; border-left:3px solid #9b640d; border-radius:8px; color:#344a58; }
:is(.maintenance-part-use-recovery,.maintenance-part-return-recovery,.maintenance-part-allocation-recovery) > div { display:grid; gap:4px; min-width:0; overflow-wrap:anywhere; }
:is(.maintenance-part-use-recovery,.maintenance-part-return-recovery,.maintenance-part-allocation-recovery) strong { color:#754b09; }
:is(.maintenance-part-use-recovery,.maintenance-part-return-recovery,.maintenance-part-allocation-recovery) button { min-height:40px; min-width:40px; flex:0 0 auto; }
:is(.maintenance-workshop-use-form,.maintenance-workshop-return-form,.maintenance-workshop-allocation-form) .maintenance-parts-dialog-head { align-items:flex-start; }
:is(.maintenance-workshop-use-form,.maintenance-workshop-return-form,.maintenance-workshop-allocation-form) .section-kicker { margin:0 0 6px; color:#056a73; }
:is(.maintenance-workshop-use-summary,.maintenance-workshop-return-summary,.maintenance-workshop-allocation-summary) { display:grid; gap:12px; margin:0; padding:16px; background:#f4f7f9; border-radius:8px; }
:is(.maintenance-workshop-use-summary,.maintenance-workshop-return-summary,.maintenance-workshop-allocation-summary) > div { display:grid; gap:4px; min-width:0; }
:is(.maintenance-workshop-use-summary,.maintenance-workshop-return-summary,.maintenance-workshop-allocation-summary) dt { color:#526777; font-size:12px; font-weight:600; }
:is(.maintenance-workshop-use-summary,.maintenance-workshop-return-summary,.maintenance-workshop-allocation-summary) dd { margin:0; color:#122330; overflow-wrap:anywhere; }
:is(.maintenance-workshop-use-form,.maintenance-workshop-return-form,.maintenance-workshop-allocation-form) :is(button,input,select,textarea) { min-height:40px; min-width:40px; }
:is(.maintenance-workshop-use-form,.maintenance-workshop-return-form,.maintenance-workshop-allocation-form) :is(input,select,textarea):disabled { color:#344a58; background:#f4f7f9; opacity:1; }
:is(.maintenance-workshop-use-form,.maintenance-workshop-return-form,.maintenance-workshop-allocation-form) [role="status"] { color:#344a58; line-height:1.55; overflow-wrap:anywhere; }
:is(.maintenance-workshop-use-form,.maintenance-workshop-return-form,.maintenance-workshop-allocation-form) [role="status"].is-error { color:#8b312c; }
body[data-active-view="maintenanceWorkOrderDetail"] #refreshButton { min-height:40px; min-width:40px; }
body[data-active-view="maintenanceWorkOrderDetail"] #maintenanceWorkOrderDetailStatus.error { color:#8b312c; background:#fff3f1; border-color:#eac8c2; }
#maintenanceWorkOrderPartsContent :is([data-part-action="use"],[data-part-action="return"],[data-part-action="reserve"],[data-part-action="release"]) { min-height:40px; min-width:40px; }
.maintenance-return-source { display:grid; gap:4px; min-width:0; overflow-wrap:anywhere; }
.maintenance-return-source small { color:#526777; line-height:1.5; }
@media (max-width:600px) {
  :is(.maintenance-part-use-recovery,.maintenance-part-return-recovery,.maintenance-part-allocation-recovery) { flex-direction:column; align-items:stretch; gap:12px; }
  :is(.maintenance-part-use-recovery,.maintenance-part-return-recovery,.maintenance-part-allocation-recovery) button { width:100%; }
  :is(.maintenance-workshop-use-form,.maintenance-workshop-return-form,.maintenance-workshop-allocation-form) footer > button { flex:1 1 100%; }
}
.maintenance-parts-dialog :focus-visible, #maintenanceWorkOrderPartsContent :focus-visible { outline:3px solid #078b91; outline-offset:3px; }
.maintenance-part-purchasing-trigger { margin-top:14px; }
.maintenance-part-purchasing-trigger > button, .purchase-part-return > button { min-height:40px; }
.maintenance-part-purchasing-dialog { width:min(760px,calc(100vw - 32px)); }
.maintenance-part-purchasing-dialog :is(p,span,dt,dd,strong,button) { overflow-wrap:anywhere; }
.maintenance-part-purchasing-dialog button { min-height:40px; }
.maintenance-part-purchasing-context { margin:18px 0 8px; color:#122330; }
.maintenance-part-purchasing-guidance, .maintenance-part-purchasing-date, .maintenance-part-purchasing-count, .maintenance-part-purchasing-note { color:#526777; font-size:13px; line-height:1.6; }
.maintenance-part-purchasing-list { list-style:none; padding:0; margin:8px 0; }
.maintenance-part-purchasing-list > li { padding:18px 0; border-top:1px solid #d7e2e8; }
.maintenance-part-purchasing-list li > header { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:10px; }
.maintenance-part-purchasing-list dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:12px 0 0; }
.maintenance-part-purchasing-list dt { color:#526777; font-size:12px; line-height:1.5; }
.maintenance-part-purchasing-list dd { margin:5px 0 0; font-weight:700; font-variant-numeric:tabular-nums; }
.maintenance-part-purchasing-pages { display:flex; align-items:center; justify-content:space-between; gap:8px; padding-top:14px; border-top:1px solid #d7e2e8; }
.maintenance-part-purchasing-pages span { font-size:13px; font-variant-numeric:tabular-nums; }
.purchase-part-return { margin-bottom:14px; }
@media(max-width:480px) {
  .maintenance-part-purchasing-dialog { padding:18px; }
  .maintenance-part-purchasing-list dl { gap:8px; }
  .maintenance-part-purchasing-pages button { padding-inline:8px; }
}

/* Full-width catalogue and passport, with an intentional mobile list. */
.maintenance-inventory-view .maintenance-inventory-workbench,
.maintenance-inventory-view .maintenance-inventory-workbench.is-action-open { grid-template-columns:minmax(0,1fr); min-height:0; }
.maintenance-inventory-view .maintenance-inventory-registry,
.maintenance-inventory-view .is-action-open .maintenance-inventory-registry { grid-column:1; grid-row:1; border-right:0; padding:16px; }
.maintenance-inventory-view .maintenance-inventory-passport,
.maintenance-inventory-view .is-action-open .maintenance-inventory-passport { grid-column:1; grid-row:3; border-top:1px solid #d7e2e8; }
.maintenance-inventory-view .is-action-open .maintenance-inventory-action-panel { grid-column:1; grid-row:2; border-left:0; border-block:1px solid #d7e2e8; }
.maintenance-inventory-view .maintenance-inventory-column-head,
.maintenance-inventory-view .maintenance-inventory-part-option { display:grid; grid-template-columns:minmax(120px,1.2fr) minmax(140px,2fr) minmax(80px,.7fr) minmax(65px,.6fr) minmax(75px,.7fr) minmax(120px,1.2fr); gap:14px; align-items:center; }
.maintenance-inventory-view .maintenance-inventory-column-head { padding:12px 16px; color:#526777; font-size:11px; font-weight:700; border-bottom:1px solid #d7e2e8; }
.maintenance-inventory-view .maintenance-inventory-part-list { gap:0; max-height:430px; padding:0; }
.maintenance-inventory-view .maintenance-inventory-part-option { border-width:0 0 1px; border-color:#d7e2e8; border-radius:0; padding:14px 16px; min-height:78px; transform:none; }
.maintenance-inventory-view .maintenance-inventory-part-option > span { min-width:0; overflow-wrap:anywhere; }
.maintenance-inventory-view .maintenance-inventory-part-option-head { display:grid; gap:5px; }
.maintenance-inventory-view .maintenance-inventory-part-description { display:block; overflow:visible; font-size:13px; }
.maintenance-inventory-view :is(.maintenance-inventory-part-quantity,.maintenance-inventory-part-total,.maintenance-inventory-part-locations) { display:grid; gap:4px; font-variant-numeric:tabular-nums; }
.maintenance-inventory-view :is(.maintenance-inventory-part-quantity,.maintenance-inventory-part-total) > small { display:none; }
.maintenance-inventory-part-alerts { display:grid; gap:5px; justify-items:start; }
.maintenance-inventory-part-open { color:#087e84; font-size:12px; }
.maintenance-inventory-registry > header p { margin:6px 0 0; color:#526777; font-size:13px; }
.maintenance-inventory-view .maintenance-inventory-toolbar > label { display:grid; gap:7px; min-width:0; }
.maintenance-inventory-view .maintenance-inventory-toolbar :is(input,select) { width:100%; min-width:0; box-sizing:border-box; }
.maintenance-inventory-back { margin-bottom:16px; }
.maintenance-inventory-view button.maintenance-inventory-metric { appearance:none; border:0; border-left:1px solid var(--inventory-line); border-radius:0; background:transparent; color:inherit; font:inherit; text-align:left; cursor:pointer; transition:background-color 160ms ease; }
.maintenance-inventory-view button.maintenance-inventory-metric:hover,
.maintenance-inventory-view button.maintenance-inventory-metric[aria-pressed="true"] { background:#fff7e8; }
.maintenance-inventory-view button.maintenance-inventory-metric:focus-visible,
.maintenance-stock-alerts :focus-visible { outline:3px solid #078b91; outline-offset:-3px; }
.maintenance-stock-alerts { padding:20px 16px; border-bottom:1px solid #d7e2e8; color:#122330; }
.maintenance-stock-alerts[hidden] { display:none; }
.maintenance-stock-alerts-head { display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.maintenance-stock-alerts-head h3 { margin:4px 0 8px; font-size:18px; }
.maintenance-stock-alerts-head p { margin:0; color:#526777; font-size:13px; max-width:75ch; }
.maintenance-stock-alerts-summary { margin:14px 0 8px; font-size:13px; font-weight:600; }
.maintenance-stock-alert-list { list-style:none; padding:0; margin:0; }
.maintenance-stock-alert-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,.8fr) auto; align-items:center; gap:20px; padding:14px 0; border-bottom:1px solid #e3eaef; }
.maintenance-stock-alert-row:last-child { border-bottom:0; }
.maintenance-stock-alert-identity { display:grid; gap:4px; min-width:0; overflow-wrap:anywhere; }
.maintenance-stock-alert-identity > span { font-size:13px; color:#344a58; }
.maintenance-stock-alert-identity > small { font-size:12px; }
.maintenance-stock-alert-identity .is-out-of-stock { color:#b53d36; }
.maintenance-stock-alert-identity .is-low-stock { color:#915500; }
.maintenance-stock-alert-quantities { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:0; }
.maintenance-stock-alert-quantities dt { color:#526777; font-size:12px; }
.maintenance-stock-alert-quantities dd { margin:5px 0 0; font-variant-numeric:tabular-nums; font-weight:700; overflow-wrap:anywhere; }
.maintenance-stock-alert-quantities dd small { font-weight:400; font-size:12px; }
.maintenance-stock-alert-empty,.maintenance-stock-alerts-note { color:#526777; font-size:12px; line-height:1.6; margin:12px 0 0; }
@media (max-width:850px) { .maintenance-stock-alert-row { grid-template-columns:minmax(0,1fr) auto; gap:14px; }.maintenance-stock-alert-quantities { grid-row:2; grid-column:1/-1; } }
@media (max-width:550px) { .maintenance-stock-alerts { padding:16px; }.maintenance-stock-alert-row { grid-template-columns:minmax(0,1fr); }.maintenance-stock-alert-quantities { grid-column:1; }.maintenance-stock-alert-row > button { justify-self:start; }.maintenance-inventory-view button.maintenance-inventory-metric { border-top:1px solid var(--inventory-line); } }
@media (prefers-reduced-motion:reduce) { .maintenance-inventory-view button.maintenance-inventory-metric { transition:none; } }
@media (max-width:850px) {
  .maintenance-inventory-view .maintenance-inventory-column-head { display:none; }
  .maintenance-inventory-view .maintenance-inventory-part-option { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .maintenance-inventory-view .maintenance-inventory-part-description { grid-column:2; }
  .maintenance-inventory-view :is(.maintenance-inventory-part-quantity,.maintenance-inventory-part-total) > small { display:block; color:#526777; }
  .maintenance-part-quantities { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:550px) {
  .maintenance-parts-heading, .maintenance-part-record > header, .maintenance-part-allocation { align-items:stretch; flex-direction:column; gap:12px; }
  .maintenance-part-record { padding:13px; }
  .maintenance-part-quantities { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .maintenance-parts-dialog { padding:16px; }
  .maintenance-parts-dialog-head { align-items:flex-start; }
  .maintenance-parts-dialog h3 { font-size:18px; }
  .maintenance-parts-actions button { flex:1 1 auto; }
}
