:root {
  color-scheme: light;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #18313d;
  background: #f2f6f7;
}

* { box-sizing: border-box; }

body {
  min-width: 320px;
  min-height: 100vh;
  margin: 0;
  background: linear-gradient(145deg, #f4f7f6 0%, #e9f0f2 100%);
}

body.platform-host:not([data-admin-state="platform_ready"]) {
  color: #eaf5fb;
  background: radial-gradient(ellipse at 12% 8%, rgb(30 117 150 / 32%), transparent 38%),
    linear-gradient(145deg, #061626 0%, #0a263b 54%, #071b2b 100%);
}
body.platform-host:not([data-admin-state="platform_ready"]) .admin-brand { color: #f2f9fd; }
body.platform-host:not([data-admin-state="platform_ready"]) .admin-label,
body.platform-host:not([data-admin-state="platform_ready"]) .admin-eyebrow { color: #8fd6ed; }
body.platform-host:not([data-admin-state="platform_ready"]) .admin-card {
  border-color: rgb(169 213 235 / 18%);
  background: linear-gradient(145deg, rgb(12 42 64 / 96%), rgb(8 31 49 / 96%));
  color: #eaf5fb;
  box-shadow: 0 24px 65px rgb(0 9 20 / 34%);
  backdrop-filter: blur(16px);
}
body.platform-host:not([data-admin-state="platform_ready"]) .admin-status { color: #b9d1df; }

button, input, select { font: inherit; }
button, a, input, select { -webkit-tap-highlight-color: transparent; }
button:disabled { cursor: wait; opacity: .65; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible {
  outline: 3px solid #94c8d2;
  outline-offset: 2px;
}

.admin-shell {
  display: flex;
  flex-direction: column;
  width: min(100% - 32px, 520px);
  min-height: 100vh;
  margin: 0 auto;
  padding: 28px 0 20px;
}

body[data-admin-state="dashboard_loading"] .admin-shell,
body[data-admin-state="ready"] .admin-shell,
body[data-admin-state="dashboard_error"] .admin-shell {
  width: min(100% - 48px, 1240px);
}

.admin-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 32px;
}

.admin-brand {
  color: #15323e;
  font-size: 1.25rem;
  font-weight: 850;
  letter-spacing: .14em;
  text-decoration: none;
}

.admin-label, .admin-eyebrow {
  color: #56727b;
  font-size: .78rem;
  font-weight: 750;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.admin-card {
  width: 100%;
  padding: clamp(24px, 4vw, 42px);
  border: 1px solid #d8e3e5;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 50px rgb(24 49 61 / 8%);
}

.admin-card h1 { margin: 8px 0 12px; font-size: clamp(1.65rem, 4vw, 2.2rem); }
.admin-status { min-height: 1.5em; color: #526b75; line-height: 1.55; }
.admin-card h2 { margin: 22px 0 4px; font-size: 1.2rem; }
.admin-hint { margin: 0; color: #526b75; font-size: .88rem; line-height: 1.5; }
.admin-error { color: #9b2c2c; line-height: 1.5; }

.admin-form, .admin-membership { display: grid; gap: 12px; margin-top: 26px; }
.admin-form label, .admin-membership label { font-size: .9rem; font-weight: 700; }

.admin-form input, .admin-membership select, .dashboard-switch select {
  width: 100%;
  min-height: 48px;
  padding: 10px 12px;
  border: 1px solid #bacbd0;
  border-radius: 8px;
  background: #fff;
  color: inherit;
}

.admin-form button, .admin-membership button, .admin-action {
  min-height: 44px;
  padding: 10px 18px;
  border: 1px solid #173a48;
  border-radius: 8px;
  background: #173a48;
  color: #fff;
  font-weight: 750;
  cursor: pointer;
}

.admin-form button, .admin-membership button { min-height: 48px; margin-top: 8px; }
.admin-secondary { margin-top: 20px; padding: 10px 0; border: 0; background: transparent; color: #315b69; font-weight: 700; text-decoration: underline; cursor: pointer; }
.admin-footer { margin-top: auto; padding-top: 32px; text-align: center; }
.admin-footer a { color: #45636d; font-size: .9rem; }

.dashboard-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 28px;
  border-bottom: 1px solid #e0e9eb;
}

.dashboard-header h1 { margin: 6px 0; }
.admin-organisation-name { margin: 0; color: #315b69; font-size: .9rem; font-weight: 750; letter-spacing: .025em; }
.dashboard-updated { margin: 4px 0 0; color: #5a717a; font-size: .82rem; }
.dashboard-controls { display: flex; align-items: end; justify-content: flex-end; flex-wrap: wrap; gap: 10px; }
.dashboard-switch { min-width: 180px; }
.dashboard-switch label { display: block; margin-bottom: 5px; color: #526b75; font-size: .8rem; font-weight: 700; }
.dashboard-switch select { min-height: 44px; }
.admin-action-secondary { border-color: #c7d7dc; background: #fff; color: #315b69; }
.admin-action:hover { background: #245061; }
.admin-action-secondary:hover { background: #f0f6f7; }
.dashboard-feedback { margin: 28px 0 4px; padding: 16px 18px; border-radius: 10px; background: #edf4f6; color: #315b69; line-height: 1.5; }
.dashboard-feedback-error { background: #fff3f1; color: #8f342f; }
.admin-route-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 24px; }
.admin-route-nav a { display: inline-flex; align-items: center; min-height: 42px; padding: 8px 14px; border: 1px solid #d7e3e6; border-radius: 999px; color: #315b69; background: #fff; font-size: .9rem; font-weight: 700; text-decoration: none; }
.admin-route-nav a:hover, .admin-route-nav a:focus-visible { border-color: #7aa7b4; background: #f1f7f8; }
#admin-route-nav[data-current="dashboard"] a[href="#dashboard"],
#admin-route-nav[data-current="deliveries"] a[href="#deliveries"],
#admin-route-nav[data-current="reservations"] a[href="#reservations"],
#admin-route-nav[data-current="reservation"] a[href^="#reservation="],
#admin-route-nav[data-current="fleet"] a[href="#fleet"],
#admin-route-nav[data-current="payments"] a[href="#payments"] { border-color: #173a48; background: #173a48; color: #fff; }
#admin-route-nav[data-current="platform-access"] a[data-admin-route="platform-access"] { border-color: #173a48; background: #173a48; color: #fff; }
.platform-access-form { display: grid; gap: 10px; margin-top: 22px; padding: 18px; border: 1px solid #dce7e9; border-radius: 12px; background: #f8fbfb; }
.platform-access-form h3 { margin-top: 0; }
.platform-access-permissions { margin: 0; padding-left: 22px; }
.platform-access-confirm { display: flex; align-items: flex-start; gap: 9px; color: #315b69; font-size: .9rem; line-height: 1.5; }
.platform-access-confirm input { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; accent-color: #245f73; }
.platform-access-feedback { margin: 0; color: #526b75; }
.dashboard-route-content { display: grid; gap: 12px; margin-top: 8px; }
.dashboard-route-title { margin: 8px 0 2px; color: #18313d; font-size: 1.35rem; }
.dashboard-detail-group { display: grid; gap: 6px; margin-top: 12px; padding: 16px; border: 1px solid #dce7e9; border-radius: 12px; background: #f8fbfb; }
.dashboard-detail-group h3 { margin: 0; color: #18313d; font-size: 1rem; }
.dashboard-detail-link { display: inline-flex; width: fit-content; margin-top: 8px; color: #245f73; font-size: .88rem; font-weight: 700; text-underline-offset: 3px; }
.dashboard-detail-link:focus-visible { outline: 3px solid #7aa7b4; outline-offset: 2px; }
.dashboard-job-item { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 14px; padding: 10px 0; border-top: 1px solid #e8eff0; }
.dashboard-job-item:first-of-type { border-top: 0; }
.dashboard-job-item .dashboard-item-detail { margin: 0; }
.reservation-item-returns { flex: 1 0 100%; display: grid; gap: 8px; margin-top: 8px; padding: 12px; border: 1px solid #dce7e9; border-radius: 10px; background: #fff; }
.reservation-item-returns h4 { margin: 0; color: #18313d; font-size: .92rem; }
.reservation-return-item { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 6px 12px; padding: 10px 0; border-top: 1px solid #e8eff0; }
.reservation-return-item:first-of-type { border-top: 0; }
.reservation-return-item .dashboard-item-detail, .reservation-return-item .dashboard-feedback { margin: 0; }
.reservation-return-state { margin: 0; color: #315b69; font-size: .86rem; font-weight: 700; }
.return-finalize-action { flex: 0 0 auto; }
.service-job-action { min-height: 40px; padding: 8px 14px; }
.service-job-feedback { margin-top: 12px; }
.delivery-dispatch-list { display: grid; gap: 14px; margin-top: 12px; }
.delivery-card { display: grid; gap: 10px; min-width: 0; padding: 16px; border: 1px solid #dce7e9; border-radius: 12px; background: #fff; }
.delivery-card-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.delivery-card-heading h3 { margin: 0; color: #18313d; font-size: 1.05rem; line-height: 1.35; }
.delivery-status { flex: 0 0 auto; padding: 6px 10px; border-radius: 999px; background: #eaf2f4; color: #234b59; font-size: .82rem; font-weight: 800; }
.delivery-status-completed { background: #e8f4ed; color: #286044; }
.delivery-status-failed, .delivery-status-cancelled { background: #fff0ee; color: #903b34; }
.delivery-detail { margin: 0; color: #526b75; font-size: .9rem; line-height: 1.45; overflow-wrap: anywhere; }
.delivery-address { color: #263f49; font-weight: 650; }
.delivery-provenance { display: grid; gap: 5px; padding-top: 8px; border-top: 1px solid #edf2f3; }
.delivery-assignment { display: grid; gap: 8px; padding-top: 8px; border-top: 1px solid #edf2f3; }
.delivery-assignment label { color: #315b69; font-size: .86rem; font-weight: 700; }
.delivery-assignment select { width: 100%; min-height: 46px; padding: 9px 11px; border: 1px solid #c7d7dc; border-radius: 8px; color: #263f49; background: #fff; }
.delivery-card-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.delivery-card-actions .admin-action { min-height: 48px; }
.delivery-primary-action { width: 100%; }
.delivery-refresh-message { margin: 0; color: #8a5a14; font-weight: 700; }
.delivery-assignment-message { margin: 0; color: #526b75; font-size: .86rem; }
.machine-assignment-item { min-width: 0; padding: 12px 0; border-top: 1px solid #e8eff0; }
.machine-assignment-item:first-of-type { border-top: 0; }
.machine-assignment-heading { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 10px; }
.machine-assignment-picker { display: grid; gap: 10px; margin-top: 12px; padding: 12px; border: 1px solid #dce7e9; border-radius: 10px; background: #fff; }
.machine-assignment-option { display: flex; align-items: flex-start; gap: 10px; padding: 10px; border: 1px solid #e1eaec; border-radius: 8px; color: #263f49; overflow-wrap: anywhere; }
.machine-assignment-option input { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; accent-color: #245f73; }
.machine-assignment-controls { display: flex; flex-wrap: wrap; gap: 8px; }
.machine-assignment-controls .admin-action { min-height: 44px; }
.machine-assignment-status { margin: 6px 0; color: #506973; font-size: .86rem; line-height: 1.45; overflow-wrap: anywhere; }
.reservation-notes { min-width: 0; }
.reservation-customer-instructions { border-inline-start: 3px solid var(--admin-accent, #4ecfbd); }
.reservation-instructions-body { white-space: pre-wrap; overflow-wrap: anywhere; }
.reservation-note-list { display: grid; gap: 10px; }
.reservation-note-item { min-width: 0; padding: 12px 0; border-top: 1px solid #e8eff0; }
.reservation-note-meta { margin: 0 0 6px; color: #627982; font-size: .78rem; line-height: 1.45; overflow-wrap: anywhere; }
.reservation-note-body { margin: 0; color: #263f49; font-size: .9rem; line-height: 1.55; white-space: pre-wrap; overflow-wrap: anywhere; }
.reservation-note-label { display: grid; gap: 6px; margin-top: 8px; color: #315b69; font-size: .88rem; font-weight: 700; }
.reservation-note-input { width: 100%; min-height: 110px; padding: 10px 12px; border: 1px solid #c7d7dc; border-radius: 8px; color: #263f49; font: inherit; font-weight: 400; resize: vertical; }
.reservation-note-input:focus-visible { outline: 3px solid #7aa7b4; outline-offset: 2px; }
.reservation-note-count { margin: 0; color: #627982; font-size: .78rem; text-align: right; font-variant-numeric: tabular-nums; }
.reservation-note-submit { justify-self: start; }
.reservation-communications { min-width: 0; }
.reservation-communication-note { margin: 0; color: #526d77; font-size: .86rem; line-height: 1.5; }
.reservation-recipient-row { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 10px 0; border-top: 1px solid #e8eff0; }
.reservation-recipient-row.is-inactive { color: #74868d; }
.reservation-recipient-select { display: flex; align-items: center; gap: 10px; min-width: 0; flex: 1; }
.reservation-recipient-checkbox { width: 18px; height: 18px; flex: 0 0 auto; accent-color: #168bd2; }
.reservation-recipient-details { display: grid; gap: 3px; min-width: 0; overflow-wrap: anywhere; }
.reservation-recipient-email { color: #18313d; font-size: .9rem; }
.reservation-recipient-role { color: #627982; font-size: .78rem; }
.reservation-recipient-remove { flex: 0 0 auto; }
.reservation-notification-contact-form { display: grid; gap: 10px; width: 100%; }
.reservation-status-send { justify-self: start; margin-top: 4px; }
.delivery-inspection-entry { flex: 1 0 100%; display: flex; align-items: center; flex-wrap: wrap; gap: 6px 12px; margin-top: 8px; padding: 12px; border: 1px solid #dce7e9; border-radius: 10px; background: #f8fbfb; }
.delivery-inspection-entry h4, .delivery-inspection-entry p { margin: 0; }
.inspection-policy { color: #526b75; font-size: .82rem; font-weight: 700; }
.inspection-policy-required { color: #8f342f; }
.inspection-anomaly-summary { color: #8f342f; font-size: .82rem; font-weight: 700; }
.inspection-meta { margin: 0; color: #627982; font-size: .82rem; line-height: 1.5; overflow-wrap: anywhere; }
.inspection-subject-card { display: grid; gap: 10px; min-width: 0; padding: 16px; border: 1px solid #dce7e9; border-radius: 12px; background: #f8fbfb; }
.inspection-subject-card h3, .inspection-subject-card h4 { margin: 0; color: #18313d; }
.inspection-checklist-card { display: grid; gap: 8px; min-width: 0; padding: 12px; border: 1px solid #e1eaec; border-radius: 9px; background: #fff; }
.inspection-checklist-label { margin: 0; color: #263f49; font-weight: 700; overflow-wrap: anywhere; }
.inspection-field-label { display: grid; gap: 5px; color: #315b69; font-size: .86rem; font-weight: 700; }
.inspection-select, .inspection-note, .inspection-summary { width: 100%; min-width: 0; min-height: 44px; padding: 9px 10px; border: 1px solid #c7d7dc; border-radius: 8px; background: #fff; color: #263f49; font: inherit; font-weight: 400; }
.inspection-note { min-height: 72px; resize: vertical; }
.inspection-summary { min-height: 110px; resize: vertical; }
.inspection-select:focus-visible, .inspection-note:focus-visible, .inspection-summary:focus-visible { outline: 3px solid #7aa7b4; outline-offset: 2px; }
.inspection-controls { display: flex; flex-wrap: wrap; gap: 10px; }
.inspection-controls .admin-action { min-height: 44px; }
.inspection-acknowledgement { display: grid; gap: 10px; padding: 14px; border: 1px solid #d8e5e8; border-radius: 10px; background: #f2f8f8; }
.inspection-acknowledgement-status { margin: 0; color: #245b4a; font-weight: 700; }
.inspection-signature-canvas { display: block; width: 100%; max-width: 480px; height: 140px; border: 1px solid #9eb4ba; border-radius: 8px; background: #fff; touch-action: none; }
.inspection-signature-readonly { touch-action: auto; }

.dashboard-section { min-width: 0; }
.dashboard-section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin: 30px 0 14px; }
.dashboard-section-heading h2 { margin: 0; color: #18313d; font-size: 1.2rem; }
.dashboard-section-note { color: #6a8189; font-size: .78rem; }
.reservation-workspace-filters, .reservation-workspace-pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.reservation-workspace-filters .admin-secondary, .reservation-workspace-pagination .admin-secondary { margin: 0; padding: 8px 10px; border: 1px solid currentColor; border-radius: 8px; text-decoration: none; }
.reservation-workspace-filters [aria-pressed="true"] { background: #173a48; color: #fff; }
.reservation-workspace-search { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.reservation-workspace-search label { width: 100%; font-weight: 700; }
.reservation-workspace-search input { flex: 1 1 18rem; min-width: 0; }
.reservation-workspace-search .admin-action { margin: 0; }
.reservation-workspace-results { display: grid; gap: 10px; min-width: 0; }
.reservation-workspace-results .dashboard-item-title { overflow-wrap: anywhere; }
.reservation-workspace-pagination { justify-content: space-between; }
.dashboard-summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.dashboard-summary-card { display: flex; flex-direction: column; justify-content: space-between; min-height: 116px; padding: 18px; border: 1px solid #dce7e9; border-radius: 12px; background: #f8fbfb; }
.dashboard-summary-label { color: #4d6771; font-size: .88rem; line-height: 1.35; }
.dashboard-summary-value { margin-top: 12px; color: #173a48; font-size: clamp(1.6rem, 3vw, 2rem); line-height: 1; }

.dashboard-primary-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 24px; }
.dashboard-secondary-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.dashboard-list { display: grid; align-content: start; gap: 10px; }
.dashboard-list-item { min-width: 0; padding: 14px 16px; border: 1px solid #dce7e9; border-left: 4px solid #7aa7b4; border-radius: 10px; background: #fff; }
.dashboard-action-overdue { border-left-color: #b84138; background: #fff8f7; }
.dashboard-action-delivery { border-left-color: #267399; }
.dashboard-action-collection { border-left-color: #4d8470; }
.dashboard-action-payment { border-left-color: #b27d20; background: #fffdf7; }
.dashboard-item-title { margin: 0 0 5px; color: #173a48; font-size: .96rem; line-height: 1.4; }
.dashboard-item-name { margin: 4px 0; color: #263f49; font-size: .9rem; font-weight: 700; }
.dashboard-item-detail { margin: 4px 0 0; color: #506973; font-size: .86rem; line-height: 1.45; overflow-wrap: anywhere; }
.dashboard-empty { margin: 0; padding: 20px; border: 1px dashed #ccdadd; border-radius: 10px; color: #526b75; line-height: 1.5; }
.dashboard-count-list { overflow: hidden; border: 1px solid #dce7e9; border-radius: 12px; }
.dashboard-count-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 11px 16px; }
.dashboard-count-row + .dashboard-count-row { border-top: 1px solid #edf2f3; }
.dashboard-count-label { color: #4d6771; font-size: .9rem; }
.dashboard-count-value { color: #173a48; font-variant-numeric: tabular-nums; }
.operational-incident-list { display: grid; gap: 8px; }
.operational-incident-review { display: grid; gap: 10px; margin-top: 12px; padding: 12px; border: 1px solid var(--admin-border, #d9dee8); border-radius: 10px; background: var(--admin-surface-muted, #f7f8fa); }
.operational-incident-financial-review { display: grid; gap: 10px; padding: 14px; border: 1px solid #d8e5e8; border-radius: 10px; background: #f7f9fb; }
.operational-incident-financial-review .operational-incident-input { max-width: 520px; }
.operational-incident-financial-save { justify-self: start; }
.operational-incident-field { display: grid; gap: 5px; font-weight: 600; }
.operational-incident-input { width: 100%; min-width: 0; padding: 9px 10px; border: 1px solid var(--admin-border, #cbd2dc); border-radius: 6px; font: inherit; }
.operational-incident-help, .operational-incident-message { margin: 0; color: var(--admin-text-muted, #596273); font-size: .9rem; }
.operational-incident-save { justify-self: start; }
.operational-incident-item { padding: 12px 14px; border: 1px solid #dce7e9; border-radius: 9px; background: #fbfdfd; }
.operational-incident-classification { margin: 6px 0 0; color: #6b5520; font-size: .82rem; font-weight: 700; }
[hidden] { display: none !important; }

@media (max-width: 900px) {
  .dashboard-primary-grid { grid-template-columns: 1fr; gap: 0; }
}

@media (max-width: 680px) {
  .dashboard-header { flex-direction: column; }
  .dashboard-controls { width: 100%; justify-content: flex-start; }
  .dashboard-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-secondary-grid { grid-template-columns: 1fr; gap: 0; }
  .delivery-card { padding: 15px; }
  .delivery-card-heading { flex-direction: column-reverse; align-items: flex-start; }
  .delivery-card-actions { display: grid; grid-template-columns: 1fr; }
  .delivery-card-actions .admin-action { width: 100%; min-height: 52px; }
}

@media (max-width: 480px) {
  .admin-shell, body[data-admin-state="dashboard_loading"] .admin-shell,
  body[data-admin-state="ready"] .admin-shell,
  body[data-admin-state="dashboard_error"] .admin-shell { width: min(100% - 24px, 520px); padding-top: 18px; }
  .admin-header { padding-bottom: 20px; }
  .admin-card { padding: 20px; }
  .dashboard-controls { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-switch { grid-column: 1 / -1; min-width: 0; }
  .dashboard-controls .admin-action { padding-inline: 8px; }
  .dashboard-summary-grid { grid-template-columns: 1fr; }
  .dashboard-summary-card { min-height: 92px; }
  .dashboard-section-heading { display: block; }
  .dashboard-section-note { display: block; margin-top: 5px; }
}
.operational-incident-recovery { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--admin-border, #dfe3e8); }
.admin-mfa-shell { display: grid; gap: 16px; padding: clamp(18px, 4vw, 32px); border: 1px solid #dce7e9; border-radius: 14px; background: #fff; }
.admin-mfa-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.admin-mfa-header h1 { margin: 0; color: #173a48; font-size: clamp(1.5rem, 4vw, 2rem); }
.admin-mfa-assurance { margin: 0; padding: 12px 14px; border-radius: 8px; background: #f2f8f8; color: #245b4a; font-weight: 700; }
.admin-mfa-factors { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 12px; }
.admin-mfa-factor, .admin-mfa-enrollment, .admin-mfa-challenge { display: grid; gap: 10px; padding: 16px; border: 1px solid #dce7e9; border-radius: 10px; background: #fbfdfd; }
.admin-mfa-factor h2, .admin-mfa-enrollment h2, .admin-mfa-challenge h2 { margin: 0; color: #173a48; font-size: 1.05rem; }
.admin-mfa-factor p, .admin-mfa-enrollment p, .admin-mfa-challenge p, .admin-mfa-empty { margin: 0; color: #526b75; line-height: 1.5; overflow-wrap: anywhere; }
.admin-mfa-enrollment img { width: min(100%, 260px); min-height: 180px; padding: 8px; border: 1px solid #dce7e9; background: #fff; }
.admin-mfa-secret { display: block; padding: 12px; border: 1px dashed #9eb4ba; border-radius: 8px; background: #fff; font-size: 1rem; overflow-wrap: anywhere; user-select: all; }
.admin-mfa-enrollment label, .admin-mfa-challenge label { font-weight: 700; }
.admin-mfa-enrollment input, .admin-mfa-challenge input { width: min(100%, 320px); min-height: 44px; padding: 8px 10px; border: 1px solid #9eb4ba; border-radius: 7px; font: inherit; font-variant-numeric: tabular-nums; letter-spacing: .15em; }
.admin-mfa-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.admin-mfa-shell button { min-height: 44px; }
@media (max-width: 560px) { .admin-mfa-header { flex-direction: column; } .admin-mfa-actions { display: grid; } .admin-mfa-actions button { width: 100%; } }
.recovery-case { margin-top: .75rem; padding: .75rem; border: 1px solid var(--admin-border, #dfe3e8); border-radius: .5rem; }
.recovery-amount, .recovery-reason, .recovery-cancellation-reason { width: 100%; box-sizing: border-box; }
.recovery-payment-request { margin-top: .75rem; padding-top: .75rem; border-top: 1px solid var(--admin-border, #dfe3e8); }
.payment-request-cancellation-reason { width: 100%; box-sizing: border-box; }
.privacy-request-form {
  display: grid;
  gap: 0.75rem;
  max-width: 42rem;
  margin: 1rem 0 1.5rem;
  padding: 1rem;
  border: 1px solid var(--border, #d9dee5);
  border-radius: 0.75rem;
}
.privacy-request-form input,
.privacy-request-form select,
.privacy-request-card select,
.privacy-request-card input {
  min-height: 2.5rem;
  max-width: 100%;
  margin: 0.25rem;
}
.privacy-request-card {
  display: grid;
  gap: 0.5rem;
}

/* Tenant application shell rebuilt to follow the approved dusk dashboard reference. */
body[data-admin-state="ready"] {
  --tenant-ink: #f3f7fb;
  --tenant-muted: #b7c9d9;
  --tenant-subtle: #8ea6bb;
  --tenant-cyan: #83dafa;
  --tenant-glass: rgb(9 31 52 / 74%);
  --tenant-glass-strong: rgb(7 25 44 / 91%);
  --tenant-line: rgb(185 218 242 / 17%);
  color-scheme: dark;
  color: var(--tenant-ink);
  background: linear-gradient(110deg, rgb(2 17 34 / 79%), rgb(4 35 57 / 50%) 52%, rgb(4 24 43 / 67%)), url("/assets/images/tenant/Dreamy%20Twilight%20Daisy%20Meadow.png") center / cover fixed;
}
body[data-admin-state="ready"]::before {
  position: fixed; z-index: -1; inset: 0; content: "";
  background: linear-gradient(110deg, rgb(2 17 34 / 79%), rgb(4 35 57 / 50%) 52%, rgb(4 24 43 / 67%));
  pointer-events: none;
}
body[data-admin-state="ready"] .admin-shell { display: block; width: 100%; min-height: 100vh; margin: 0; padding: 0; }
body[data-admin-state="ready"] .admin-header,
body[data-admin-state="ready"] #admin-access-intro,
body[data-admin-state="ready"] .admin-footer { display: none; }
body[data-admin-state="ready"] .admin-card { width: auto; min-height: 100vh; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body[data-admin-state="ready"] .admin-authorized.tenant-app-shell { display: grid; grid-template-columns: 252px minmax(0, 1fr); gap: 0; width: 100%; min-height: 100vh; margin: 0; }
body[data-admin-state="ready"] .tenant-sidebar {
  position: sticky; top: 0; display: flex; height: 100vh; min-height: 650px; flex-direction: column; padding: 27px 17px 20px;
  border-right: 1px solid rgb(179 218 242 / 16%); background: linear-gradient(180deg, rgb(4 23 41 / 94%), rgb(5 28 48 / 89%));
  box-shadow: 16px 0 45px rgb(0 12 26 / 18%); backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px);
}
body[data-admin-state="ready"] .tenant-brand { display: flex; align-items: center; gap: 11px; padding: 4px 11px 25px; color: #f6fbff; font-size: 1.34rem; font-weight: 850; letter-spacing: .19em; text-decoration: none; text-shadow: 0 2px 22px rgb(88 197 255 / 22%); }
body[data-admin-state="ready"] .tenant-brand-mark { display: grid; width: 35px; height: 35px; place-items: center; border: 1px solid rgb(122 218 255 / 52%); border-radius: 12px 12px 12px 4px; background: linear-gradient(145deg, #46b9dc, #0c6189); color: white; font-family: Georgia, serif; font-size: 1.5rem; font-style: italic; letter-spacing: 0; box-shadow: 0 6px 22px rgb(42 173 222 / 30%); }
body[data-admin-state="ready"] .tenant-sidebar-caption, body[data-admin-state="ready"] .admin-label { color: #7896ad; font-size: .64rem; font-weight: 800; letter-spacing: .17em; }
body[data-admin-state="ready"] .tenant-sidebar-caption { margin: 6px 12px 12px; }
body[data-admin-state="ready"] .admin-route-nav { display: flex; flex-direction: column; gap: 7px; margin: 0; padding: 0; }
body[data-admin-state="ready"] .admin-route-nav a { display: flex; align-items: center; gap: 13px; min-height: 49px; padding: 9px 12px; border: 1px solid transparent; border-radius: 12px; background: transparent; color: #b9cada; font-size: .89rem; font-weight: 620; text-decoration: none; transition: .18s ease; }
body[data-admin-state="ready"] .tenant-nav-icon { display: grid; width: 28px; height: 28px; flex: 0 0 28px; place-items: center; border: 1px solid rgb(169 206 230 / 13%); border-radius: 9px; color: #a9c5d9; font-size: 1.15rem; }
body[data-admin-state="ready"] .admin-route-nav a:hover, body[data-admin-state="ready"] .admin-route-nav a:focus-visible,
body[data-admin-state="ready"] #admin-route-nav[data-current="dashboard"] a[href="#dashboard"],
body[data-admin-state="ready"] #admin-route-nav[data-current="deliveries"] a[href="#deliveries"],
body[data-admin-state="ready"] #admin-route-nav[data-current="reservations"] a[href="#reservations"],
body[data-admin-state="ready"] #admin-route-nav[data-current="reservation"] a[href^="#reservation="],
body[data-admin-state="ready"] #admin-route-nav[data-current="fleet"] a[href="#fleet"],
body[data-admin-state="ready"] #admin-route-nav[data-current="payments"] a[href="#payments"],
body[data-admin-state="ready"] #admin-route-nav[data-current="platform-access"] a[data-admin-route="platform-access"] { border-color: rgb(109 198 237 / 20%); background: linear-gradient(105deg, rgb(23 112 149 / 37%), rgb(14 53 78 / 42%)); color: #f5fbff; box-shadow: inset 3px 0 #6bd1f3, 0 7px 22px rgb(0 15 31 / 17%); }
body[data-admin-state="ready"] .admin-route-nav a:hover .tenant-nav-icon, body[data-admin-state="ready"] .admin-route-nav a:focus-visible .tenant-nav-icon { color: #c8f1ff; border-color: rgb(123 217 255 / 30%); }
body[data-admin-state="ready"] .tenant-sidebar-help { display: flex; align-items: center; gap: 12px; margin: auto 7px 15px; padding: 12px 8px; border-top: 1px solid var(--tenant-line); color: #b9cbd9; font-size: .83rem; text-decoration: none; }
body[data-admin-state="ready"] .tenant-sidebar-help > span:first-child { display: grid; width: 25px; height: 25px; place-items: center; border: 1px solid var(--tenant-line); border-radius: 50%; color: var(--tenant-cyan); }
body[data-admin-state="ready"] .tenant-sidebar-footer { display: flex; align-items: center; gap: 8px; padding: 12px 9px 0; border-top: 1px solid var(--tenant-line); color: #7f9ab0; font-size: .69rem; }
body[data-admin-state="ready"] .tenant-status-dot, body[data-admin-state="ready"] .tenant-alert-dot { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: #61d3ac; box-shadow: 0 0 12px rgb(97 211 172 / 65%); }
body[data-admin-state="ready"] .tenant-main { min-width: 0; padding: 22px clamp(24px, 3.1vw, 52px) 42px; }
body[data-admin-state="ready"] .tenant-topbar { display: flex; align-items: center; justify-content: space-between; gap: 22px; min-height: 55px; margin-bottom: 18px; }
body[data-admin-state="ready"] .tenant-search { display: flex; width: min(430px, 47vw); height: 43px; align-items: center; gap: 11px; padding: 0 12px; border: 1px solid var(--tenant-line); border-radius: 12px; background: rgb(9 31 51 / 55%); color: #92aec2; box-shadow: inset 0 1px rgb(255 255 255 / 4%); backdrop-filter: blur(14px); }
body[data-admin-state="ready"] .tenant-search > span:first-child { color: #a9d6e9; font-size: 1.35rem; }
body[data-admin-state="ready"] .tenant-search input { width: 100%; min-width: 0; padding: 0; border: 0; outline: 0; background: transparent; color: #edf7ff; font-size: .84rem; }
body[data-admin-state="ready"] .tenant-search input::placeholder { color: #91a9bb; }
body[data-admin-state="ready"] .tenant-search small { flex: 0 0 auto; color: #7f9bb0; font-size: .64rem; }
body[data-admin-state="ready"] .tenant-topbar-tools { display: flex; align-items: center; gap: clamp(14px, 2vw, 28px); }
body[data-admin-state="ready"] .tenant-alert-indicator { display: flex; align-items: center; gap: 8px; color: #aec1d1; font-size: .76rem; white-space: nowrap; }
body[data-admin-state="ready"] .tenant-alert-indicator.has-alerts .tenant-alert-dot { background: #ffb46e; box-shadow: 0 0 13px rgb(255 154 93 / 60%); }
body[data-admin-state="ready"] .tenant-profile { display: flex; align-items: center; gap: 10px; padding-left: 17px; border-left: 1px solid var(--tenant-line); }
body[data-admin-state="ready"] .tenant-profile-avatar { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid rgb(135 205 236 / 32%); border-radius: 50%; background: linear-gradient(145deg, #287796, #17465f); color: white; font-weight: 800; }
body[data-admin-state="ready"] .tenant-profile-copy { display: grid; gap: 3px; max-width: 190px; }
body[data-admin-state="ready"] .tenant-profile-copy strong { overflow: hidden; color: #edf6fc; font-size: .78rem; text-overflow: ellipsis; white-space: nowrap; }
body[data-admin-state="ready"] .tenant-profile-copy small { color: #8da8bb; font-size: .68rem; }
body[data-admin-state="ready"] .dashboard-header { align-items: end; min-height: 74px; padding: 4px 0 17px; border-bottom: 1px solid var(--tenant-line); }
body[data-admin-state="ready"] .admin-organisation-name { color: #96c4d8; font-size: .77rem; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
body[data-admin-state="ready"] .dashboard-header h1 { margin: 5px 0 2px; color: #f7fbff; font-size: clamp(1.7rem, 2.6vw, 2.15rem); font-weight: 720; letter-spacing: -.04em; text-shadow: 0 3px 22px rgb(0 13 26 / 35%); }
body[data-admin-state="ready"] .dashboard-updated, body[data-admin-state="ready"] .dashboard-section-note { color: var(--tenant-muted); }
body[data-admin-state="ready"] .dashboard-updated { margin: 2px 0 0; font-size: .74rem; }
body[data-admin-state="ready"] .dashboard-controls { align-items: center; }
body[data-admin-state="ready"] .dashboard-switch label { color: var(--tenant-muted); }
body[data-admin-state="ready"] .dashboard-switch select { border-color: var(--tenant-line); background: var(--tenant-glass-strong); color: var(--tenant-ink); }
body[data-admin-state="ready"] .admin-action { min-height: 39px; padding: 8px 13px; border-color: rgb(108 207 243 / 33%); border-radius: 10px; background: linear-gradient(135deg, #14799b, #10536f); color: #f5fcff; font-size: .78rem; box-shadow: 0 7px 19px rgb(0 12 26 / 24%); }
body[data-admin-state="ready"] #admin-sign-out { border-color: var(--tenant-line); background: rgb(8 32 51 / 65%); color: #d6e5ef; }
body[data-admin-state="ready"] .dashboard-feedback { border: 1px solid var(--tenant-line); background: var(--tenant-glass); color: var(--tenant-ink); box-shadow: 0 14px 40px rgb(0 16 31 / 16%); backdrop-filter: blur(18px); }
body[data-admin-state="ready"] .dashboard-feedback-error { border-color: rgb(255 140 131 / 42%); background: rgb(85 29 37 / 70%); color: #ffe9e7; }
body[data-admin-state="ready"] .dashboard-section { min-width: 0; }
body[data-admin-state="ready"] .dashboard-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 14px; }
body[data-admin-state="ready"] .dashboard-section-heading h2 { margin: 3px 0 0; color: #f4f8fc; font-size: 1rem; font-weight: 700; letter-spacing: -.015em; }
body[data-admin-state="ready"] .tenant-kicker { margin: 0; color: #80b9d0; font-size: .62rem; font-weight: 800; letter-spacing: .15em; }
body[data-admin-state="ready"] .dashboard-section-note { font-size: .7rem; }
body[data-admin-state="ready"] .dashboard-summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; }
body[data-admin-state="ready"] .dashboard-summary-card, body[data-admin-state="ready"] .tenant-panel, body[data-admin-state="ready"] .dashboard-detail-group, body[data-admin-state="ready"] .dashboard-list-item, body[data-admin-state="ready"] .delivery-card, body[data-admin-state="ready"] .inspection-subject-card, body[data-admin-state="ready"] .operational-incident-review, body[data-admin-state="ready"] .operational-incident-financial-review, body[data-admin-state="ready"] .recovery-case, body[data-admin-state="ready"] .platform-access-form { border: 1px solid var(--tenant-line); border-radius: 16px; background: linear-gradient(145deg, rgb(18 52 76 / 77%), rgb(7 30 50 / 76%)); color: var(--tenant-ink); box-shadow: 0 17px 42px rgb(0 11 24 / 25%), inset 0 1px rgb(235 248 255 / 7%); backdrop-filter: blur(19px); -webkit-backdrop-filter: blur(19px); }
body[data-admin-state="ready"] .dashboard-summary-card { display: flex; min-height: 105px; flex-direction: column; justify-content: space-between; padding: 17px 18px; }
body[data-admin-state="ready"] .dashboard-summary-label, body[data-admin-state="ready"] .dashboard-item-detail, body[data-admin-state="ready"] .dashboard-count-label, body[data-admin-state="ready"] .delivery-detail, body[data-admin-state="ready"] .inspection-meta, body[data-admin-state="ready"] .operational-incident-help, body[data-admin-state="ready"] .operational-incident-message { color: var(--tenant-muted); }
body[data-admin-state="ready"] .dashboard-summary-label { font-size: .74rem; }
body[data-admin-state="ready"] .dashboard-summary-value { color: #fff; font-size: clamp(1.8rem, 2.7vw, 2.3rem); line-height: 1; }
body[data-admin-state="ready"] .tenant-alert-strip { display: flex; align-items: stretch; gap: 11px; margin-top: 12px; }
body[data-admin-state="ready"] .tenant-alert-card { display: flex; min-width: 175px; align-items: center; gap: 10px; padding: 10px 14px; border: 1px solid rgb(255 187 125 / 25%); border-radius: 12px; background: linear-gradient(110deg, rgb(99 52 43 / 58%), rgb(50 37 48 / 68%)); }
body[data-admin-state="ready"] .tenant-alert-card-review { border-color: rgb(241 207 137 / 22%); background: linear-gradient(110deg, rgb(93 73 39 / 53%), rgb(45 42 40 / 65%)); }
body[data-admin-state="ready"] .tenant-alert-symbol { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 9px; background: rgb(255 163 111 / 17%); color: #ffc197; font-weight: 900; }
body[data-admin-state="ready"] .tenant-alert-card > span:last-child { display: grid; gap: 1px; }
body[data-admin-state="ready"] .tenant-alert-card strong { color: #fff3ea; font-size: 1rem; }
body[data-admin-state="ready"] .tenant-alert-card small { color: #d6b9ae; font-size: .68rem; }
body[data-admin-state="ready"] .tenant-alert-context { align-self: center; margin: 0 0 0 auto; color: #a9bfce; font-size: .68rem; }
body[data-admin-state="ready"] .tenant-dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.42fr) minmax(320px, .92fr); align-items: start; gap: 16px; margin-top: 17px; }
body[data-admin-state="ready"] .tenant-dashboard-column { display: grid; align-content: start; gap: 15px; min-width: 0; }
body[data-admin-state="ready"] .tenant-panel { min-width: 0; padding: 17px 18px; }
body[data-admin-state="ready"] .tenant-panel-link { flex: 0 0 auto; color: #89d6f1; font-size: .72rem; font-weight: 700; text-decoration: none; }
body[data-admin-state="ready"] .tenant-panel-link:hover { color: white; text-decoration: underline; text-underline-offset: 3px; }
body[data-admin-state="ready"] .tenant-live-label { display: flex; align-items: center; gap: 7px; color: #9bcab9; font-size: .67rem; }
body[data-admin-state="ready"] .tenant-live-label .tenant-status-dot { width: 6px; height: 6px; flex-basis: 6px; }
body[data-admin-state="ready"] .tenant-panel-lock { color: #82bed4; font-size: 1.1rem; }
body[data-admin-state="ready"] .dashboard-list { display: grid; gap: 9px; }
body[data-admin-state="ready"] .dashboard-list-item { position: relative; min-width: 0; padding: 13px 14px; }
body[data-admin-state="ready"] .dashboard-item-title, body[data-admin-state="ready"] .dashboard-item-name, body[data-admin-state="ready"] .delivery-card-heading h3, body[data-admin-state="ready"] .delivery-address, body[data-admin-state="ready"] .inspection-subject-card h3, body[data-admin-state="ready"] .inspection-subject-card h4, body[data-admin-state="ready"] .inspection-checklist-label { color: #f4f8ff; }
body[data-admin-state="ready"] .dashboard-item-title { margin: 0 0 4px; font-size: .82rem; }
body[data-admin-state="ready"] .dashboard-item-name { margin: 3px 0; font-size: .76rem; font-weight: 650; }
body[data-admin-state="ready"] .dashboard-item-detail { margin: 4px 0 0; font-size: .7rem; line-height: 1.4; }
body[data-admin-state="ready"] .tenant-reservation-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
body[data-admin-state="ready"] .tenant-reservation-date { color: #dbeaf3; font-size: .75rem; font-weight: 720; }
body[data-admin-state="ready"] .tenant-reservation-status { display: inline-flex; margin-top: 7px; padding: 4px 8px; border: 1px solid rgb(112 204 169 / 25%); border-radius: 99px; background: rgb(50 130 99 / 20%); color: #a5e3c8; font-size: .63rem; font-weight: 750; }
body[data-admin-state="ready"] .tenant-reservation-status.status-pending { border-color: rgb(245 201 133 / 26%); background: rgb(137 96 34 / 20%); color: #f0d59e; }
body[data-admin-state="ready"] .tenant-reservation-status.status-cancelled, body[data-admin-state="ready"] .tenant-reservation-status.status-failed { border-color: rgb(250 145 137 / 28%); background: rgb(128 51 49 / 24%); color: #ffc1b8; }
body[data-admin-state="ready"] #admin-route-nav[data-current="platform-home"] a[data-admin-route="platform-home"],
body[data-admin-state="platform_ready"] #admin-route-nav[data-current="platform-home"] a[data-admin-route="platform-home"] { border-color: rgb(109 198 237 / 20%); background: linear-gradient(105deg, rgb(23 112 149 / 37%), rgb(14 53 78 / 42%)); color: #f5fbff; box-shadow: inset 3px 0 #6bd1f3, 0 7px 22px rgb(0 15 31 / 17%); }
body[data-admin-state="ready"] .tenant-reservation-job { display: inline-block; margin-right: 10px; }
body[data-admin-state="ready"] .dashboard-action-overdue, body[data-admin-state="ready"] .dashboard-action-payment { border-color: rgb(248 151 126 / 29%); background: linear-gradient(140deg, rgb(82 44 48 / 79%), rgb(42 32 46 / 80%)); }
body[data-admin-state="ready"] .dashboard-action-delivery, body[data-admin-state="ready"] .dashboard-action-collection { background: linear-gradient(140deg, rgb(14 53 72 / 83%), rgb(8 35 53 / 82%)); }
body[data-admin-state="ready"] .tenant-action-marker { position: absolute; top: 14px; left: 13px; display: grid; width: 23px; height: 23px; place-items: center; border: 1px solid rgb(255 181 142 / 29%); border-radius: 8px; background: rgb(255 157 116 / 13%); color: #ffc09c; font-weight: 900; }
body[data-admin-state="ready"] .tenant-action-content { min-width: 0; padding-left: 32px; }
body[data-admin-state="ready"] .dashboard-detail-link { display: inline-flex; width: fit-content; margin-top: 5px; color: var(--tenant-cyan); font-size: .7rem; font-weight: 750; text-underline-offset: 3px; }
body[data-admin-state="ready"] .dashboard-count-list { border: 1px solid var(--tenant-line); border-radius: 12px; background: rgb(7 26 44 / 42%); backdrop-filter: blur(14px); }
body[data-admin-state="ready"] .dashboard-count-row { padding: 8px 10px; }
body[data-admin-state="ready"] .dashboard-count-row + .dashboard-count-row, body[data-admin-state="ready"] .dashboard-job-item, body[data-admin-state="ready"] .reservation-note-item, body[data-admin-state="ready"] .machine-assignment-item { border-color: var(--tenant-line); }
body[data-admin-state="ready"] .dashboard-count-label, body[data-admin-state="ready"] .dashboard-count-value { font-size: .68rem; }
body[data-admin-state="ready"] .dashboard-count-value { color: #fff; }
body[data-admin-state="ready"] .dashboard-empty { margin: 0; padding: 15px; border: 1px dashed var(--tenant-line); border-radius: 11px; color: var(--tenant-muted); font-size: .77rem; text-align: center; }
body[data-admin-state="ready"] .tenant-unavailable { display: flex; align-items: flex-start; gap: 9px; margin: 0; padding: 13px; border: 1px dashed rgb(155 197 220 / 25%); border-radius: 11px; background: rgb(5 27 46 / 44%); color: #aabfce; font-size: .73rem; line-height: 1.5; }
body[data-admin-state="ready"] .tenant-unavailable > span { color: #8fd9ed; font-weight: 800; }
body[data-admin-state="ready"] .tenant-search-empty { margin: 0 0 12px; padding: 12px; border: 1px solid var(--tenant-line); border-radius: 11px; background: var(--tenant-glass); color: var(--tenant-muted); }
body[data-admin-state="ready"] .dashboard-route-content { gap: 15px; margin-top: 20px; }
body[data-admin-state="ready"] .dashboard-detail-group { padding: 20px; }
body[data-admin-state="ready"] .admin-action, body[data-admin-state="ready"] .admin-form button, body[data-admin-state="ready"] .delivery-card-actions .admin-action, body[data-admin-state="ready"] .machine-assignment-controls .admin-action, body[data-admin-state="ready"] .inspection-controls .admin-action { border-radius: 10px; }
body[data-admin-state="ready"] .delivery-status { border: 1px solid var(--tenant-line); background: rgb(76 132 167 / 28%); color: #e4f4ff; }
body[data-admin-state="ready"] .delivery-status-completed { background: rgb(37 128 91 / 36%); color: #d9ffec; }
body[data-admin-state="ready"] .delivery-status-failed, body[data-admin-state="ready"] .delivery-status-cancelled { background: rgb(148 50 48 / 46%); color: #ffe5e2; }
body[data-admin-state="ready"] .delivery-assignment select, body[data-admin-state="ready"] .machine-assignment-picker, body[data-admin-state="ready"] .machine-assignment-option, body[data-admin-state="ready"] .reservation-item-returns, body[data-admin-state="ready"] .delivery-inspection-entry, body[data-admin-state="ready"] .inspection-checklist-card, body[data-admin-state="ready"] .inspection-acknowledgement, body[data-admin-state="ready"] .reservation-note-input, body[data-admin-state="ready"] .operational-incident-input, body[data-admin-state="ready"] .inspection-select, body[data-admin-state="ready"] .inspection-note, body[data-admin-state="ready"] .inspection-summary, body[data-admin-state="ready"] .operational-incident-item { border-color: var(--tenant-line); background: rgb(3 27 48 / 78%); color: #f3f8ff; }
body[data-admin-state="ready"] .reservation-note-body, body[data-admin-state="ready"] .reservation-note-meta, body[data-admin-state="ready"] .reservation-communication-note, body[data-admin-state="ready"] .reservation-recipient-email, body[data-admin-state="ready"] .reservation-recipient-role, body[data-admin-state="ready"] .reservation-note-label, body[data-admin-state="ready"] .inspection-policy { color: var(--tenant-muted); }
body[data-admin-state="ready"] .platform-access-form { padding: 20px; }
.visually-hidden { 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: 1120px) {
  body[data-admin-state="ready"] .admin-authorized.tenant-app-shell { grid-template-columns: 218px minmax(0, 1fr); }
  body[data-admin-state="ready"] .tenant-main { padding-inline: 24px; }
  body[data-admin-state="ready"] .tenant-dashboard-grid { grid-template-columns: minmax(0, 1.1fr) minmax(290px, .9fr); gap: 12px; }
  body[data-admin-state="ready"] .tenant-dashboard-subpanels { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
}
@media (max-width: 820px) {
  body[data-admin-state="ready"] { background-attachment: scroll; }
  body[data-admin-state="ready"] .admin-authorized.tenant-app-shell { grid-template-columns: 1fr; }
  body[data-admin-state="ready"] .tenant-sidebar { position: sticky; z-index: 30; top: 0; width: 100%; min-width: 0; height: auto; min-height: 0; overflow: hidden; padding: 9px 14px 8px; border-right: 0; border-bottom: 1px solid var(--tenant-line); }
  body[data-admin-state="ready"] .tenant-brand { padding: 0 3px 8px; font-size: 1rem; }
  body[data-admin-state="ready"] .tenant-brand-mark { width: 29px; height: 29px; border-radius: 9px 9px 9px 3px; font-size: 1.15rem; }
  body[data-admin-state="ready"] .tenant-sidebar-caption, body[data-admin-state="ready"] .tenant-sidebar-help, body[data-admin-state="ready"] .tenant-sidebar-footer { display: none; }
  body[data-admin-state="ready"] .admin-route-nav { width: 100%; min-width: 0; flex-direction: row; flex-wrap: nowrap; gap: 5px; overflow-x: auto; padding: 0 0 2px; scrollbar-width: thin; }
  body[data-admin-state="ready"] .admin-route-nav a { min-height: 41px; flex: 0 0 auto; gap: 7px; padding: 6px 9px; font-size: .72rem; white-space: nowrap; }
  body[data-admin-state="ready"] .tenant-nav-icon { width: 22px; height: 22px; flex-basis: 22px; font-size: .94rem; }
  body[data-admin-state="ready"] .tenant-main { width: 100%; max-width: 100vw; min-width: 0; padding: 13px 16px 28px; }
  body[data-admin-state="ready"] .tenant-topbar { min-height: 42px; margin-bottom: 11px; }
  body[data-admin-state="ready"] .tenant-search { width: min(52vw, 360px); height: 39px; }
  body[data-admin-state="ready"] .tenant-search small { display: none; }
  body[data-admin-state="ready"] .tenant-alert-indicator { font-size: .68rem; }
  body[data-admin-state="ready"] .tenant-profile { padding-left: 10px; }
  body[data-admin-state="ready"] .tenant-profile-copy { display: none; }
  body[data-admin-state="ready"] .dashboard-header { align-items: flex-start; flex-direction: column; gap: 10px; }
  body[data-admin-state="ready"] .tenant-dashboard-grid { grid-template-columns: 1fr; }
  body[data-admin-state="ready"] .tenant-dashboard-secondary { grid-row: 1; }
  body[data-admin-state="ready"] .tenant-dashboard-subpanels { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 520px) {
  body[data-admin-state="ready"] .tenant-main { padding-inline: 12px; }
  body[data-admin-state="ready"] .tenant-topbar { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 8px; }
  body[data-admin-state="ready"] .tenant-search { width: 100%; }
  body[data-admin-state="ready"] .tenant-topbar-tools { width: 100%; justify-content: flex-end; gap: 9px; }
  body[data-admin-state="ready"] .tenant-alert-indicator { max-width: 112px; white-space: normal; }
  body[data-admin-state="ready"] .tenant-profile { padding-left: 8px; }
  body[data-admin-state="ready"] .dashboard-controls { justify-content: flex-start; }
  body[data-admin-state="ready"] .dashboard-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  body[data-admin-state="ready"] .dashboard-summary-card { min-height: 83px; padding: 12px; }
  body[data-admin-state="ready"] .dashboard-summary-label { font-size: .65rem; }
  body[data-admin-state="ready"] .dashboard-summary-value { font-size: 1.65rem; }
  body[data-admin-state="ready"] .tenant-alert-strip { flex-wrap: wrap; }
  body[data-admin-state="ready"] .tenant-alert-card { min-width: 0; flex: 1 1 calc(50% - 7px); padding: 9px; }
  body[data-admin-state="ready"] .tenant-alert-context { flex: 1 0 100%; margin-left: 2px; }
  body[data-admin-state="ready"] .tenant-dashboard-subpanels { grid-template-columns: 1fr; }
  body[data-admin-state="ready"] .tenant-panel { padding: 14px 12px; }
  body[data-admin-state="ready"] .tenant-reservation-heading { flex-direction: column; }
}

body[data-admin-state="platform_ready"] {
  --tenant-ink: #eaf3fb; --tenant-muted: #a3b7c8; --tenant-cyan: #83dafa;
  --tenant-line: rgb(185 218 242 / 17%); color-scheme: dark; color: var(--tenant-ink);
  background: linear-gradient(110deg, rgb(2 17 34 / 82%), rgb(4 35 57 / 56%) 52%, rgb(4 24 43 / 72%)), url("/assets/images/tenant/Dreamy%20Twilight%20Daisy%20Meadow.png") center / cover fixed;
}
body[data-admin-state="platform_ready"] .admin-shell { display: block; width: 100%; min-height: 100vh; margin: 0; padding: 0; }
body[data-admin-state="platform_ready"] .admin-header, body[data-admin-state="platform_ready"] #admin-access-intro, body[data-admin-state="platform_ready"] .admin-footer { display: none; }
body[data-admin-state="platform_ready"] .admin-card { width: auto; min-height: 100vh; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body[data-admin-state="platform_ready"] .admin-authorized.tenant-app-shell { display: grid; grid-template-columns: 244px minmax(0, 1fr); gap: 0; width: 100%; min-height: 100vh; margin: 0; }
body[data-admin-state="platform_ready"] .tenant-sidebar { position: sticky; top: 0; display: flex; height: 100vh; min-height: 620px; flex-direction: column; padding: 25px 15px 18px; border-right: 1px solid var(--tenant-line); background: linear-gradient(180deg, rgb(4 23 41 / 96%), rgb(5 28 48 / 91%)); box-shadow: 16px 0 45px rgb(0 12 26 / 18%); backdrop-filter: blur(24px); }
body[data-admin-state="platform_ready"] .tenant-brand { display: flex; align-items: center; gap: 11px; padding: 4px 11px 24px; color: #f6fbff; font-size: 1.3rem; font-weight: 850; letter-spacing: .18em; text-decoration: none; }
body[data-admin-state="platform_ready"] .tenant-brand-mark { display: grid; width: 35px; height: 35px; place-items: center; border: 1px solid rgb(122 218 255 / 52%); border-radius: 12px 12px 12px 4px; background: linear-gradient(145deg, #46b9dc, #0c6189); color: #fff; font: italic 1.5rem Georgia, serif; }
body[data-admin-state="platform_ready"] .tenant-sidebar-caption { margin: 6px 12px 12px; color: #7896ad; font-size: .64rem; font-weight: 800; letter-spacing: .17em; }
body[data-admin-state="platform_ready"] .admin-route-nav { display: flex; flex-direction: column; gap: 7px; margin: 0; padding: 0; }
body[data-admin-state="platform_ready"] .admin-route-nav a { display: flex; align-items: center; gap: 12px; min-height: 46px; padding: 8px 11px; border: 1px solid transparent; border-radius: 12px; color: #b9cada; font-size: .87rem; font-weight: 650; text-decoration: none; }
body[data-admin-state="platform_ready"] .tenant-nav-icon { display: grid; width: 27px; height: 27px; flex: 0 0 27px; place-items: center; border: 1px solid var(--tenant-line); border-radius: 9px; color: var(--tenant-cyan); }
body[data-admin-state="platform_ready"] .admin-route-nav a:hover, body[data-admin-state="platform_ready"] .admin-route-nav a:focus-visible { border-color: rgb(109 198 237 / 20%); background: rgb(23 112 149 / 28%); color: #fff; }
body[data-admin-state="platform_ready"] .tenant-sidebar-help, body[data-admin-state="platform_ready"] .tenant-sidebar-footer { display: flex; align-items: center; gap: 10px; margin-top: auto; padding: 12px 8px; border-top: 1px solid var(--tenant-line); color: #b9cbd9; font-size: .78rem; text-decoration: none; }
body[data-admin-state="platform_ready"] .tenant-sidebar-footer { margin-top: 0; color: #7f9ab0; font-size: .68rem; }
body[data-admin-state="platform_ready"] .tenant-status-dot { width: 7px; height: 7px; border-radius: 50%; background: #61d3ac; }
body[data-admin-state="platform_ready"] .tenant-main { min-width: 0; padding: 22px clamp(20px, 3vw, 48px) 42px; }
body[data-admin-state="platform_ready"] .tenant-topbar { display: flex; align-items: center; justify-content: flex-end; gap: 20px; min-height: 48px; margin-bottom: 16px; }
body[data-admin-state="platform_ready"] .tenant-search { display: none; }
body[data-admin-state="platform_ready"] .tenant-topbar-tools { display: flex; align-items: center; gap: 16px; }
body[data-admin-state="platform_ready"] .tenant-profile { padding-left: 12px; border-left: 1px solid var(--tenant-line); color: #dbeaf3; }
body[data-admin-state="platform_ready"] .dashboard-header { align-items: flex-start; margin-bottom: 18px; border-bottom: 1px solid var(--tenant-line); }
body[data-admin-state="platform_ready"] .dashboard-header h1 { color: #f7fbff; }
body[data-admin-state="platform_ready"] .dashboard-route-content { display: grid; gap: 14px; color: #dbeaf3; }
body[data-admin-state="platform_ready"] .dashboard-route-title { color: #f2f8fc; }
body[data-admin-state="platform_ready"] .dashboard-item-detail, body[data-admin-state="platform_ready"] .dashboard-section-note { color: #a7bfd1; }
body[data-admin-state="platform_ready"] .dashboard-empty { padding: 14px; border: 1px dashed var(--tenant-line); border-radius: 12px; color: #bdd2e1; }
body[data-admin-state="platform_ready"] .admin-action { min-height: 44px; }
body[data-admin-state="platform_ready"] .platform-centre-eyebrow { margin: 0; color: #83dafa; font-size: .74rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
body[data-admin-state="platform_ready"] .platform-centre-panel { display: grid; gap: 10px; min-width: 0; padding: clamp(15px, 2vw, 22px); border: 1px solid rgb(185 218 242 / 18%); border-radius: 17px; background: linear-gradient(145deg, rgb(13 39 61 / 78%), rgb(8 28 49 / 76%)); box-shadow: 0 15px 40px rgb(0 13 31 / 19%); backdrop-filter: blur(12px); }
body[data-admin-state="platform_ready"] .platform-centre-panel h3 { margin: 0; }
body[data-admin-state="platform_ready"] .platform-centre-tenant-picker { display: grid; grid-template-columns: minmax(0, 1fr) minmax(230px, 1.5fr) auto; align-items: end; gap: 12px; }
body[data-admin-state="platform_ready"] .platform-centre-tenant-picker label, body[data-admin-state="platform_ready"] .platform-centre-filters label { display: grid; gap: 6px; color: #c4d8e7; font-size: .8rem; font-weight: 700; }
body[data-admin-state="platform_ready"] .platform-centre-select { min-width: 0; min-height: 44px; padding: 8px 11px; border: 1px solid rgb(180 212 234 / 30%); border-radius: 10px; background: #102d46; color: #f1f7fc; }
body[data-admin-state="platform_ready"] .platform-centre-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap: 12px; }
body[data-admin-state="platform_ready"] .platform-centre-metric { display: grid; min-height: 95px; align-content: center; gap: 7px; padding: 15px; border: 1px solid rgb(140 204 231 / 20%); border-radius: 15px; background: linear-gradient(140deg, rgb(15 62 88 / 78%), rgb(11 35 58 / 88%)); box-shadow: inset 0 1px rgb(255 255 255 / 4%), 0 9px 25px rgb(0 14 29 / 15%); }
body[data-admin-state="platform_ready"] .platform-centre-metric-value { color: #f4fbff; font-size: clamp(1.4rem, 2vw, 2rem); line-height: 1; }
body[data-admin-state="platform_ready"] .platform-centre-metric-label { color: #aac2d3; font-size: .75rem; line-height: 1.35; }
body[data-admin-state="platform_ready"] .platform-centre-quick-links, body[data-admin-state="platform_ready"] .platform-centre-filters { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; }
body[data-admin-state="platform_ready"] .platform-centre-quick-links a { display: inline-flex; min-height: 42px; align-items: center; padding: 8px 12px; border: 1px solid rgb(129 201 229 / 25%); border-radius: 10px; color: #b8eaff; font-weight: 700; text-decoration: none; }
body[data-admin-state="platform_ready"] .platform-centre-health { margin: 0; padding: 10px 12px; border-radius: 10px; background: rgb(81 157 128 / 16%); color: #b5eed0; font-weight: 750; }
body[data-admin-state="platform_ready"] .platform-centre-health.status-attention { background: rgb(170 124 47 / 19%); color: #ffe0a3; }
body[data-admin-state="platform_ready"] .platform-centre-health.status-critical { background: rgb(155 61 58 / 22%); color: #ffc2ba; }
body[data-admin-state="platform_ready"] .platform-centre-health-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
body[data-admin-state="platform_ready"] .platform-centre-health-list li, body[data-admin-state="platform_ready"] .platform-centre-incident { display: grid; gap: 6px; padding: 11px 13px; border: 1px solid var(--tenant-line); border-radius: 11px; background: rgb(5 23 41 / 40%); overflow-wrap: anywhere; }
body[data-admin-state="platform_ready"] .platform-centre-incident span { color: #aac2d3; font-size: .78rem; }
body[data-admin-state="platform_ready"] .platform-centre-tenant-picker .admin-action { grid-column: 3; }
body[data-admin-state="platform_ready"] .platform-tenant-health { margin-top: 8px; }
body[data-admin-state="platform_ready"] .platform-tenant-health-row { grid-template-columns: minmax(0, 1fr); }
body[data-admin-state="platform_ready"] .platform-tenant-health-row > strong { color: #f1f7fc; }
body[data-admin-state="platform_ready"] .platform-tenant-health-row > a { justify-self: start; }
body[data-admin-state="platform_ready"] .platform-tenant-health-pagination { justify-content: space-between; }
body[data-admin-state="platform_ready"] .platform-tenant-health-pagination .admin-secondary { min-height: 44px; }
@media (max-width: 850px) {
  body[data-admin-state="platform_ready"] .admin-authorized.tenant-app-shell { grid-template-columns: 1fr; }
  body[data-admin-state="platform_ready"] .tenant-sidebar { position: sticky; z-index: 30; top: 0; width: 100%; height: auto; min-height: 0; padding: 9px 14px; border-right: 0; border-bottom: 1px solid var(--tenant-line); }
  body[data-admin-state="platform_ready"] .tenant-brand { padding: 0 3px 8px; font-size: 1rem; }
  body[data-admin-state="platform_ready"] .tenant-brand-mark { width: 29px; height: 29px; font-size: 1.15rem; }
  body[data-admin-state="platform_ready"] .tenant-sidebar-caption, body[data-admin-state="platform_ready"] .tenant-sidebar-help, body[data-admin-state="platform_ready"] .tenant-sidebar-footer { display: none; }
  body[data-admin-state="platform_ready"] .admin-route-nav { flex-direction: row; gap: 5px; overflow-x: auto; padding-bottom: 2px; }
  body[data-admin-state="platform_ready"] .admin-route-nav a { min-height: 40px; flex: 0 0 auto; gap: 7px; padding: 6px 9px; font-size: .72rem; white-space: nowrap; }
  body[data-admin-state="platform_ready"] .tenant-main { padding: 15px 16px 28px; }
  body[data-admin-state="platform_ready"] .platform-centre-tenant-picker { grid-template-columns: 1fr; }
  body[data-admin-state="platform_ready"] .platform-centre-tenant-picker .admin-action { grid-column: auto; }
}
@media (max-width: 520px) {
  body[data-admin-state="platform_ready"] .tenant-main { padding-inline: 12px; }
  body[data-admin-state="platform_ready"] .tenant-topbar { margin-bottom: 9px; }
  body[data-admin-state="platform_ready"] .dashboard-controls { justify-content: flex-start; flex-wrap: wrap; }
  body[data-admin-state="platform_ready"] .platform-centre-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  body[data-admin-state="platform_ready"] .platform-centre-metric { min-height: 80px; padding: 11px; }
  body[data-admin-state="platform_ready"] .platform-centre-filters { align-items: stretch; flex-direction: column; }
  body[data-admin-state="platform_ready"] .platform-centre-filters label, body[data-admin-state="platform_ready"] .platform-centre-filters select { width: 100%; }
}
