/* Customer desktop shell; mobile and staff layouts keep their existing rules. */
.customer-travel-header { display: none; }
@media (min-width: 1024px) {
  .customer-desktop {
    --primary: #0b2850;
    --accent: #ed641c;
    background: #f5f6f8;
    height: auto;
    min-height: 100vh;
    overflow: auto;
    display: block;
    padding-bottom: 0;
  }
  .customer-travel-header { display: block; background: #fff; }
  .customer-travel-header .icon { width: 20px; height: 20px; }
  .customer-travel-header a[aria-current="page"] { border-bottom-color: #ed641c; }
  .customer-desktop > .site-header, .customer-desktop > .mobile-nav { display: none; }
  .customer-desktop:not(.home-screen) .main-shell {
    width: min(1280px, calc(100% - 80px));
    max-width: 1280px;
    margin: 0 auto;
    padding: 36px 0 56px;
    overflow: visible;
    display: block;
    min-height: calc(100vh - 240px);
  }
  .customer-desktop .page-heading {
    --muted: #e1e7ef;
    padding: 28px 32px;
    margin-bottom: 28px;
    border-radius: 6px;
    background: linear-gradient(110deg, #133d61, #071d38);
    color: #fff;
  }
  .customer-desktop .page-heading h1 { color: #fff; font-size: 32px; }
  .customer-desktop .page-heading p, .customer-desktop .booking-heading-copy .booking-description { color: #e1e7ef; }
  .customer-desktop .page-heading .eyebrow { color: #ffbf91; }
  .customer-desktop .surface { border-radius: 6px; border-color: #e1e6ec; box-shadow: 0 4px 20px #112d5008; }
  .customer-desktop .button:not(.button-secondary):not(.button-ghost) {
    background: #c7470a; color: #fff; border-radius: 4px;
  }
  .customer-desktop .button:not(.button-secondary):not(.button-ghost):hover { background: #a73808; }
  .customer-desktop .form-field input:not([type="checkbox"]):not([type="file"]),
  .customer-desktop .form-field select,
  .customer-desktop .airport-trigger { border-radius: 4px; border-color: #ccd5e0; background-color: #fff; }
  .customer-desktop .booking-screen { height: auto; overflow: visible; }
  .customer-desktop .booking-surface { padding: 28px; }
  .customer-desktop .request-step-progress li { border-radius: 4px; }
  .customer-desktop .request-step-progress li[aria-current="step"] { background: #0b2850; box-shadow: inset 0 -3px #ed641c; }
  .customer-desktop .orders-filters { padding: 20px 24px; margin-bottom: 24px; }
  .customer-desktop .order-list { display: grid; gap: 18px; }
  .customer-desktop .order-card { padding: 24px; border-inline-start: 4px solid #ed641c; }
  .customer-desktop .order-card:hover { border-color: #a7b8ce; border-inline-start-color: #ed641c; box-shadow: 0 8px 24px #112d5012; }
  .customer-desktop.app-page .app-content-screen { display: block; }
  .customer-desktop.app-page .app-content-screen .commerce-scroll { flex: none; overflow: visible; max-height: none; height: auto; }
  .customer-desktop.wallet-page .wallet-screen { display: block; }
  .customer-desktop.wallet-page .wallet-screen .page-heading { margin-bottom: 28px; }
  .customer-desktop.wallet-page .wallet-screen .page-heading h1 { color: #fff; font-size: 32px; }
  .customer-desktop.wallet-page .wallet-screen .wallet-balance-card {
    background: linear-gradient(120deg, #133d61, #071d38);
    border-radius: 6px; padding: 30px; min-height: 220px;
    border-bottom: 4px solid #ed641c; box-shadow: none;
  }
  .customer-desktop .wallet-overview { margin-bottom: 30px; }
  .customer-desktop .wallet-actions { background: #fff; border: 1px solid #e1e6ec; border-radius: 6px; }
  .customer-desktop .wallet-actions a { border-radius: 4px; }
  .customer-desktop .wallet-history-scroll { max-height: none; overflow: visible; }
  /* Order, payment and clearance share the same desktop surfaces and spacing. */
  .customer-desktop .customer-order-detail { --order-gap: 24px; }
  .customer-desktop .customer-order-detail .order-hero {
    border-radius: 6px; padding: 32px;
    background: linear-gradient(110deg, #133d61, #071d38);
    border-bottom: 4px solid #ed641c; box-shadow: none;
  }
  .customer-desktop .customer-order-detail .order-hero .order-airport-code { font-size: 40px; }
  .customer-desktop .customer-order-detail .order-hero-facts { gap: 28px; padding-top: 20px; }
  .customer-desktop .customer-order-detail .detail-card,
  .customer-desktop .customer-order-detail .bank-transfer-status,
  .customer-desktop .customer-order-detail .order-payment,
  .customer-desktop .customer-order-detail .order-service-help { border-radius: 6px; padding: 24px; }
  .customer-desktop .customer-order-detail .detail-grid { gap: 24px; }
  .customer-desktop .back-link { margin-bottom: 18px; }
  .customer-desktop .payment-methods { background: #edf0f5; border: 1px solid #e1e6ec; border-radius: 6px; padding: 0; margin-block: 24px; }
  .customer-desktop .payment-methods a { border-radius: 4px 4px 0 0; padding: 20px; border-bottom: 3px solid transparent; }
  .customer-desktop .payment-methods a[aria-current] { border-bottom-color: #ed641c; color: #0b2850; }
  .customer-desktop .bank-payment-grid { gap: 24px; }
  .customer-desktop .bank-payment-grid .detail-card { padding: 30px; }
  .customer-desktop .bank-account-heading { padding-bottom: 20px; border-bottom: 1px solid #e1e6ec; }
  .customer-desktop .bank-account-number { font-size: 26px; color: #0b2850; }
  .customer-desktop .bank-receipt-upload input[type="file"] { padding: 24px; border: 1px dashed #9eafc3; background: #f7f9fc; border-radius: 4px; width: 100%; }
  .customer-desktop .bank-submit-actions { padding-block: 24px; }
  .customer-desktop .bank-submit-actions .button { max-width: 420px; margin-inline-start: auto; }
  .customer-desktop .clearance-intro { max-width: none; grid-template-columns: 1fr; gap: 24px; }
  .customer-desktop .clearance-hero { grid-row: auto; min-height: 360px; border-radius: 6px; }
  .customer-desktop .clearance-hero-copy { padding: 36px; }
  .customer-desktop .clearance-hero h1 { font-size: 36px; max-width: 640px; }
  .customer-desktop .clearance-guide { border-radius: 6px; padding: 30px; }
  .customer-desktop .clearance-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
  .customer-desktop .clearance-step-number { background: #0b2850; color: #fff; border-bottom: 3px solid #ed641c; }
  .customer-desktop .clearance-action { grid-column: auto; justify-self: end; min-width: 260px; }
  .customer-desktop > .site-footer { display: flex; width: 100%; max-width: none; box-sizing: border-box; margin: 0; padding: 26px 40px; background: #071d38; color: #fff; justify-content: center; }
  .customer-desktop > .site-footer .footer-caption { color: #fff; }
  .customer-desktop a:focus-visible, .customer-desktop button:focus-visible { outline: 3px solid #ed641c; outline-offset: 3px; }
}
