/* Watly rental experience. Presentation only; no flow-state or provider overrides. */
@media screen {
  body.mobile-compact-page {
    --compact-turquoise: #60cad6;
    --compact-ink: #102c36;
    --compact-link: #0b6773;
    min-width: 0;
    padding-bottom: env(safe-area-inset-bottom, 0px);
    background: #f4fafb;
    color: var(--compact-ink);
    font-size: 16px;
    line-height: 1.45;
  }
  body.mobile-compact-page :is(.wrap,.container,.checkout-shell,.pay-shell) {
    width: calc(100% - 28px);
    max-width: 520px;
    margin-inline: auto;
    padding: max(8px,env(safe-area-inset-top,0px)) 0 20px;
  }
  body.mobile-compact-page .container.auth { max-width: 440px; }
  body.mobile-compact-page :is(.top-row,.checkout-topbar,.pay-head) {
    position: static;
    min-height: 48px;
    margin: 0 0 12px;
    padding: 0;
    gap: 10px;
    border: 0;
    background: transparent;
  }
  body.mobile-compact-page :is(.top-row,.checkout-topbar,.pay-head) a {
    min-height: 44px;
    font-size: 14px;
  }
  body.mobile-compact-page .brand-link { font-size: 30px; letter-spacing: -.07em; font-weight: 800; }
  body.mobile-compact-page .brand-dot { color: #0b6773; }
  body.mobile-compact-page :is(.hero,.checkout-hero) {
    margin: 0 0 14px;
    padding: 6px 0 14px;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  body.mobile-compact-page :is(.hero h1,.hero h2,.checkout-hero h1,.rental-heading h1) {
    max-width: 15ch;
    margin: 0;
    color: var(--compact-ink);
    font-size: clamp(30px,8.5vw,36px);
    line-height: 1.06;
    font-weight: 800;
    letter-spacing: -.055em;
  }
  body.mobile-compact-page :is(.hero p,.checkout-hero p,.rental-heading p) {
    margin-top: 8px;
    color: #405e66;
    font-size: 14px;
    line-height: 1.45;
  }
  body.mobile-compact-page .product-hero {
    min-height: 132px;
    padding: 20px 88px 20px 18px;
    border-radius: 22px 22px 7px 22px;
    background: var(--compact-turquoise);
  }
  body.mobile-compact-page .product-hero h1 { max-width: 13ch; font-size: clamp(28px,8vw,34px); }
  body.mobile-compact-page .product-hero p { color: #183f49; font-size: 13px; }
  .energy-spark { position: absolute; right: 15px; top: 23px; width: 64px; height: 96px; fill: #e6f8fa; transform: rotate(8deg); pointer-events: none; }
  body.mobile-compact-page :is(.card,.checkout-card,.pay-card) {
    padding: 16px;
    margin-block: 0 12px;
    border: 1px solid #d2e4e7;
    border-radius: 18px;
    background: #fff;
    box-shadow: none;
  }
  body.mobile-compact-page :is(.card h2,.checkout-card h2,.pay-card h2) { font-size: 20px; line-height: 1.2; letter-spacing: -.035em; }
  body.mobile-compact-page :is(button,.btn) {
    min-height: 48px;
    padding: 12px 16px;
    font-size: 16px;
    line-height: 1.35;
    border-radius: 13px;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  body.mobile-compact-page :is(.btn.btn-primary,button.btn-primary):not(:disabled):not([aria-disabled="true"]):not(.danger):not(.btn-danger) {
    background: var(--compact-turquoise);
    color: var(--compact-ink);
    border: 1px solid #24818d;
    font-weight: 800;
    box-shadow: 0 3px 0 #0b6773;
  }
  body.mobile-compact-page :is(.btn.btn-secondary,.small-link) { border-width: 1px; }
  body.mobile-compact-page :is(input[type=email],input[type=password],input[type=text],select) {
    min-height: 48px;
    padding: 11px 12px;
    border-radius: 11px;
    font-size: 16px;
  }
  body.mobile-compact-page :is(.stack,.form,.form-grid) { gap: 12px; }
  body.mobile-compact-page :is(label,.tiny) { font-size: 14px; line-height: 1.45; }
  body.mobile-compact-page :is(.notice,.checkout-notice) { padding: 10px; font-size: 14px; line-height: 1.45; overflow-wrap: anywhere; }
  body.mobile-compact-page :is(.footer,.checkout-footer) { margin: 18px 0 0; padding-top: 12px; border-top: 1px solid #d2e4e7; font-size: 12px; line-height: 1.4; }
  body.mobile-compact-page :is(.footer,.checkout-footer) a { min-height: 44px; display: inline-flex; align-items: center; padding-inline: 3px; margin-inline: 2px; font-size: 12px; }
  body.mobile-compact-page :is(.compact-details,.rental-details,.compact-disclosure) { padding: 0; }
  body.mobile-compact-page :is(.compact-details,.compact-disclosure) > summary { min-height: 52px; padding: 14px 16px; font-size: 16px; line-height: 1.4; }
  body.mobile-compact-page :is(.compact-disclosure-body,.rental-details-content) { padding: 0 16px 16px; }
  body.mobile-compact-page summary { cursor: pointer; }
  body.mobile-compact-page .dropdown-chevron { font-size: 12px; color: #46636b; }
  body.mobile-compact-page [id] { scroll-margin-top: 12px; }

  /* QR entry: availability in compact rows, the start price and next action lead. */
  body.mobile-compact-page #stationCard { padding: 16px; }
  body.mobile-compact-page .station-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
  body.mobile-compact-page .station-head > div { min-width: 0; }
  body.mobile-compact-page .station-head .pill { flex: 0 0 36px; width: 36px; height: 36px; padding: 8px; }
  body.mobile-compact-page .station-name { margin-block: 3px; font-size: 23px; font-weight: 800; letter-spacing: -.035em; }
  body.mobile-compact-page .station-address { font-size: 13px; line-height: 1.4; }
  body.mobile-compact-page #stationLabel { font-size: 12px; }
  body.mobile-compact-page .customer-logo { display: inline-flex; align-items: center; min-height: 48px; }
  body.mobile-compact-page :is(.customer-logo,.checkout-brand) img { display: block; width: 112px; height: 48px; object-fit: contain; }
  body.mobile-compact-page .station-info { margin-bottom: 12px; }
  body.mobile-compact-page .station-head { list-style: none; cursor: pointer; min-height: 58px; }
  body.mobile-compact-page .station-head::-webkit-details-marker { display: none; }
  body.mobile-compact-page .station-info-trigger { display: grid; justify-items: center; gap: 3px; color: #0b6773; font-size: 11px; }
  body.mobile-compact-page .station-info-trigger .pill { display: grid; place-content: center; padding: 0; font-family: Georgia,serif; font-weight: 700; font-size: 20px; }
  body.mobile-compact-page .station-info-body { padding: 12px 0 0; border-top: 1px solid #e3edef; }
  body.mobile-compact-page .station-info-body .location-card { margin-top: 8px; border-top: 0; }
  body.mobile-compact-page .station-info-body:has(.location-card__address) > .station-address { display: none; }
  body.mobile-compact-page #stationTruth:empty { display: none; }
  body.mobile-compact-page .rental-howto > summary { min-height: 44px; margin-top: 8px; font-size: 14px; color: #0b6773; }
  body.mobile-compact-page .rental-howto ol { padding-left: 20px; font-size: 14px; line-height: 1.6; }
  body.mobile-compact-page .rental-howto li { margin-bottom: 8px; }
  body.mobile-compact-page #stationTruth { display: grid; grid-template-columns: minmax(0,1fr); gap: 0; padding-block: 8px; border-block: 1px solid #e3edef; }
  body.mobile-compact-page #stationTruth .box { display: grid; grid-template-columns: 70px minmax(0,1fr); gap: 0 8px; padding: 5px 0; border: 0; border-radius: 0; background: transparent; }
  body.mobile-compact-page #stationTruth .box-label { font-size: 12px; line-height: 1.5; letter-spacing: 0; text-transform: none; }
  body.mobile-compact-page #stationTruth .box-value { font-size: 13px; line-height: 1.4; font-weight: 750; }
  body.mobile-compact-page #stationTruth .tiny { grid-column: 2; font-size: 12px; line-height: 1.4; }
  body.mobile-compact-page .station-live-details > summary { min-height: 32px; padding: 4px 0; font-size: 12px; color: #0b6773; }
  body.mobile-compact-page .station-live-details p { font-size: 13px; margin: 4px 0; }
  body.mobile-compact-page .rental-start-price { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; justify-content: space-between; padding-block: 4px; }
  body.mobile-compact-page .rental-start-price .box-label { font-size: 13px; text-transform: none; letter-spacing: 0; }
  body.mobile-compact-page .rental-start-price > strong { color: #102c36; font-size: 28px; font-weight: 800; letter-spacing: -.04em; }
  body.mobile-compact-page :is(.price-disclosure,.rental-facts-disclosure) > summary { min-height: 44px; padding: 8px 0; font-size: 13px; color: #0b6773; }
  body.mobile-compact-page .price-disclosure-body .box { padding: 9px 0; border: 0; border-radius: 0; border-top: 1px solid #e3edef; background: transparent; }
  body.mobile-compact-page .price-disclosure-body :is(.box-label,.box-value) { text-transform: none; letter-spacing: 0; font-size: 14px; }
  body.mobile-compact-page #preStartPricingNote.ok { display: none; }
  body.mobile-compact-page .station-route { border: 0; background: transparent; min-height: 44px; justify-self: center; box-shadow: none; }
  body.mobile-compact-page .watly-entry-copy > p { font-size: 14px; margin-top: 6px; }
  body.mobile-compact-page .watly-entry-copy .stack { grid-template-columns: minmax(0,1fr); }

  /* Login and account creation: form first, no giant introduction panel. */
  body.customer-auth.mobile-compact-page .hero { padding-block: 10px 6px; margin-bottom: 14px; }
  body.customer-auth.mobile-compact-page .hero p { font-size: 13px; }
  body.customer-auth.mobile-compact-page .form label { font-weight: 650; }
  body.customer-auth.mobile-compact-page .form small { font-size: 12px; font-weight: 500; line-height: 1.5; }
  body.customer-auth.mobile-compact-page .auth-next-step { font-size: 13px; margin-bottom: 12px; }
  body.customer-auth.mobile-compact-page .legal-check { padding: 8px 0; border: 0; background: transparent; gap: 10px; }
  body.customer-auth.mobile-compact-page .legal-check span { font-size: 13px; line-height: 1.5; }
  body.customer-auth.mobile-compact-page .registration-legal-list { font-size: 12px; line-height: 1.5; }

  /* Checkout: complete prices and consents stay visible, without oversized panels. */
  body.mobile-compact-page .checkout-hero h1 { font-size: 30px; }
  body.mobile-compact-page .checkout-progress { margin-top: 14px; gap: 4px; grid-template-columns: repeat(4,minmax(0,1fr)); }
  body.mobile-compact-page .checkout-progress li { border-radius: 0; border: 0; border-top: 3px solid #d2e4e7; background: transparent; padding: 7px 0 0; font-size: 11px; color: #405e66; }
  body.mobile-compact-page .checkout-progress .is-active { border-top-color: #0b6773; color: #102c36; font-weight: 800; }
  body.mobile-compact-page .checkout-progress .is-complete { border-top-color: #26bcc7; }
  body.mobile-compact-page .checkout-card-header { margin-bottom: 8px; gap: 10px; }
  body.mobile-compact-page .checkout-step { font-size: 12px; letter-spacing: 0; text-transform: none; }
  body.mobile-compact-page .checkout-station-address { margin: 6px 0; font-size: 13px; }
  body.mobile-compact-page .checkout-status-pill { padding: 5px 9px; font-size: 12px; }
  body.mobile-compact-page .checkout-tariff-brief { display: block; margin-block: 10px; border: 0; border-radius: 0; background: transparent; overflow: visible; }
  body.mobile-compact-page .checkout-tariff-brief > p:not([hidden]):not(.hidden) { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.4fr); gap: 6px 12px; padding: 8px 0; margin: 0; border: 0; border-bottom: 1px solid #e3edef; background: transparent; align-items: baseline; }
  body.mobile-compact-page .checkout-tariff-brief span { min-height: 0; font-size: 13px; line-height: 1.45; }
  body.mobile-compact-page .checkout-tariff-brief strong { margin: 0; font-size: 15px; line-height: 1.45; overflow-wrap: anywhere; }
  body.mobile-compact-page .checkout-hold { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 5px 10px; padding: 10px 12px; margin-top: 10px; border-radius: 12px; background: #e8f7f9; }
  body.mobile-compact-page .checkout-hold > span { font-size: 13px; }
  body.mobile-compact-page .checkout-hold strong { position: static; font-size: 21px; }
  body.mobile-compact-page .checkout-hold small { grid-column: 1/-1; margin: 0; font-size: 12px; line-height: 1.45; }
  body.mobile-compact-page :is(.checkout-details,.customer-terms) > summary { min-height: 44px; font-size: 14px; line-height: 1.45; }
  body.mobile-compact-page .customer-terms > summary { display: block; font-size: 17px; }
  body.mobile-compact-page .customer-terms > summary small { font-size: 12px; padding-top: 3px; }
  body.mobile-compact-page .customer-terms[open] > summary { margin-bottom: 8px; }
  body.mobile-compact-page .checkout-consents { margin: 0; padding: 0; border: 0; min-width: 0; }
  body.mobile-compact-page .checkout-check { min-height: 44px; padding: 9px 0; margin: 0; border: 0; border-bottom: 1px solid #e3edef; border-radius: 0; background: transparent; gap: 10px; }
  body.mobile-compact-page .checkout-check > span { font-size: 14px; line-height: 1.5; font-weight: 450; }
  body.mobile-compact-page .checkout-contract-party { margin: 0 0 10px; padding: 0 0 10px; border: 0; border-bottom: 1px solid #e3edef; border-radius: 0; background: transparent; color: #405e66; font-size: 12px; line-height: 1.5; }
  body.mobile-compact-page .checkout-contract-party strong { color: #405e66; font-size: 12px; font-weight: 600; }
  body.mobile-compact-page #contractPartySummary { font-weight: 450; }
  body.mobile-compact-page .customer-terms > summary small:empty { display: none; }
  body.mobile-compact-page .checkout-security-note { font-size: 12px; line-height: 1.5; }
  body.mobile-compact-page #performanceExplanation { margin: 0 0 6px; padding: 8px; font-size: 12px; }
  body.mobile-compact-page #entryDescription { margin-block: 6px; font-size: 13px; }
  body.mobile-compact-page .checkout-account-link { min-height: 44px; padding: 10px 12px; }
  body.mobile-compact-page .checkout-account-link small { font-size: 12px; }
  body.mobile-compact-page #orderConfirmationShell .checkout-provider-heading > strong { font-size: 20px; }
  body.mobile-compact-page #orderConfirmationShell .checkout-provider-heading > span { font-size: 13px; }
  body.mobile-compact-page #orderConfirmationShell .checkout-tariff-brief > p:not([hidden]):not(.hidden) { padding: 9px 0; }
  body.mobile-compact-page #orderConfirmationShell .checkout-tariff-brief strong { font-size: 15px; }
  body.mobile-compact-page #orderConfirmationButton { min-height: 52px; }

  /* The bound final order replaces, rather than extends, the collection screen. */
  body.mobile-compact-page:has(#orderConfirmationShell:not(.hidden)) :is(.checkout-hero,#stationSection,#pricingSection,#entrySection,#termsSection,#benefitSection,#contactSection,#receiptOption,#paymentMethods) { display: none; }
  body.mobile-compact-page:has(#orderConfirmationShell:not(.hidden)) #paymentSection > :is(.checkout-card-header,.payment-reservation,.payment-security-details) { display: none; }
  body.mobile-compact-page:has(#orderConfirmationShell:not(.hidden)) #paymentSection { margin-top: 0; }
  body.mobile-compact-page #orderConfirmationShell { padding: 0; border: 0; background: transparent; scroll-margin-top: 8px; }
  body.mobile-compact-page #orderConfirmationShell .checkout-provider-heading { margin: 0 0 8px; gap: 4px; }
  body.mobile-compact-page #orderConfirmationShell #orderConfirmationTitle { font-size: 24px; line-height: 1.1; letter-spacing: -.04em; }
  body.mobile-compact-page #orderConfirmationShell .checkout-provider-heading > span { font-size: 13px; line-height: 1.35; }
  body.mobile-compact-page #orderConfirmationShell .checkout-tariff-brief { margin: 8px 0; }
  body.mobile-compact-page #orderConfirmationShell .checkout-tariff-brief > p:not([hidden]):not(.hidden) { grid-template-columns: minmax(0,1fr) minmax(0,1.55fr); gap: 4px 10px; padding: 6px 0; }
  body.mobile-compact-page #orderConfirmationShell .checkout-tariff-brief span { font-size: 13px; font-weight: 450; line-height: 1.3; }
  body.mobile-compact-page #orderConfirmationShell .checkout-tariff-brief strong { font-size: 14px; line-height: 1.3; }
  body.mobile-compact-page #orderConfirmationShell > p { margin: 8px 0; font-size: 12px; line-height: 1.4; }
  body.mobile-compact-page #orderConfirmationShell .checkout-actions { margin-top: 10px; }
  body.mobile-compact-page #orderConfirmationButton { min-height: 52px; padding: 12px 10px; font-size: 16px; line-height: 1.3; }

  /* Payment choice: one reservation explanation, followed by the existing controls. */
  body.mobile-compact-page[data-checkout-step="payment"] .checkout-hero > :is(h1,p) { display: none; }
  body.mobile-compact-page .payment-reservation { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 5px 12px; align-items: baseline; margin: 12px 0 16px; padding: 12px 0; border-block: 1px solid #d2e4e7; }
  body.mobile-compact-page .payment-reservation > span { font-size: 13px; }
  body.mobile-compact-page .payment-reservation > strong { color: #102c36; font-size: 23px; font-weight: 800; white-space: nowrap; letter-spacing: -.04em; }
  body.mobile-compact-page .payment-reservation > small { grid-column: 1/-1; color: #405e66; font-size: 12px; line-height: 1.5; }
  body.mobile-compact-page #paymentSection .checkout-payment-grid { gap: 12px; }
  body.mobile-compact-page #receiptOption { padding: 0; border: 0; background: transparent; }
  body.mobile-compact-page #receiptEmailForm { padding: 16px; border: 2px solid #0b6773; border-radius: 14px; background: #e8f7f9; }
  body.mobile-compact-page #receiptEmailHint { margin: 0 0 12px; color: #405e66; font-size: 14px; line-height: 1.5; }
  body.mobile-compact-page #receiptEmailWrap { display: block; color: #102c36; font-size: 17px; font-weight: 750; }
  body.mobile-compact-page .receipt-required { display: inline-block; margin-left: 6px; color: #405e66; font-size: 12px; font-weight: 550; }
  body.mobile-compact-page #receiptEmail { display: block; width: 100%; min-height: 54px; margin-top: 8px; padding: 13px 12px; border: 2px solid #0b6773; background: #fff; color: #102c36; font-size: 17px; font-weight: 550; box-sizing: border-box; }
  body.mobile-compact-page #receiptEmail::placeholder { color: #526b73; opacity: 1; }
  body.mobile-compact-page #receiptEmail[aria-invalid="true"] { border-color: #b91c1c; }
  body.mobile-compact-page #receiptEmailError { margin: 10px 0 0; color: #8f1717; background: #fff2f2; font-size: 14px; }
  body.mobile-compact-page #receiptEmailContinue { margin-top: 14px; }
  body.mobile-compact-page .receipt-email-summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-bottom: 12px; border-bottom: 1px solid #d2e4e7; }
  body.mobile-compact-page .receipt-email-summary > div { flex: 1 1 auto; min-width: 0; }
  body.mobile-compact-page .receipt-email-summary span { display: block; color: #405e66; font-size: 12px; }
  body.mobile-compact-page .receipt-email-summary strong { display: block; color: #102c36; font-size: 14px; overflow-wrap: anywhere; }
  body.mobile-compact-page #receiptEmailEdit { flex: 0 0 auto; width: auto; min-height: 44px; padding: 8px; border: 0; background: transparent; color: #0b6773; font-size: 14px; text-decoration: underline; text-underline-offset: 3px; }
  body.mobile-compact-page #paymentSection :is(.checkout-paypal-shell,.checkout-wallet-shell,.checkout-stripe-box):not(#orderConfirmationShell) { padding: 0; border: 0; background: transparent; }
  body.mobile-compact-page #paymentSection .checkout-provider-heading { margin-bottom: 8px; }
  body.mobile-compact-page #paymentSection .checkout-provider-heading > strong { font-size: 16px; }
  body.mobile-compact-page :is(#walletStatus,#paypalExpressStatus):empty { display: none; }
  body.mobile-compact-page #accountCheckoutNote { padding: 0; border: 0; background: transparent; color: #405e66; font-size: 12px; }
  body.mobile-compact-page .payment-security-details { display: block; margin: 10px 0 0; padding: 0; border: 0; background: transparent; }
  body.mobile-compact-page .payment-security-details > summary { min-height: 44px; display: list-item; padding: 12px 0; color: #0b6773; font-size: 13px; }
  body.mobile-compact-page .payment-security-details p { margin: 0 0 8px; font-size: 13px; line-height: 1.5; }
  body.mobile-compact-page #savedPayPalMethods { margin-bottom: 20px; }
  body.mobile-compact-page #savedPayPalMethods h3 { margin-block: 0 8px; font-size: 16px; }
  body.mobile-compact-page #savedPayPalMethods > .btn { width: 100%; margin-top: 8px; }

  /* After issue, the primary action comes before optional receipt facts. */
  body.mobile-compact-page #successState { min-height: 0; padding: 22px 16px; text-align: left; }
  body.mobile-compact-page #successState > .checkout-state-icon { margin: 0 0 12px; width: 44px; height: 44px; font-size: 24px; }
  body.mobile-compact-page #successState h1 { margin-block: 0 8px; font-size: 28px; line-height: 1.1; letter-spacing: -.045em; }
  body.mobile-compact-page #successMessage { margin: 0 0 14px; font-size: 14px; }
  body.mobile-compact-page #successState .checkout-receipt { display: grid; grid-template-columns: minmax(0,1fr); gap: 10px; margin: 0 0 16px; padding: 18px; border: 0; border-radius: 17px 17px 5px 17px; background: #102c36; color: #e6f8fa; }
  body.mobile-compact-page #successState .checkout-receipt .checkout-rent-fact { padding: 0; border: 0; background: transparent; }
  body.mobile-compact-page #successState .checkout-receipt .checkout-fact-label { color: #c3e4e8; font-size: 12px; }
  body.mobile-compact-page #successState .checkout-receipt strong { color: #e6f8fa; font-size: 14px; }
  body.mobile-compact-page #successState .checkout-receipt-price strong { color: #60cad6; font-size: 34px; font-weight: 800; line-height: 1.2; font-variant-numeric: tabular-nums; }
  body.mobile-compact-page #successState > .checkout-actions { width: 100%; margin-block: 12px; }
  body.mobile-compact-page #successState .checkout-receipt-details { margin-top: 12px; }
  body.mobile-compact-page #successState .checkout-receipt-details .checkout-rent-grid { margin-top: 8px; }

  /* The instrument panel is the one distinctive moment; no animated decoration. */
  body.mobile-compact-page #openRentCard { border: 0; padding: 0; background: transparent; }
  body.mobile-compact-page .open-rent-head { margin-bottom: 10px; font-size: 16px; font-weight: 750; }
  body.mobile-compact-page .rent-box { padding: 0; border: 0; background: transparent; }
  body.mobile-compact-page .rent-row { display: block; }
  body.mobile-compact-page .rental-monitor { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; padding: 22px 18px; margin: 0 0 12px; border: 1px solid #0b6773; border-radius: 22px 22px 7px 22px; background: #102c36; color: #e6f8fa; box-shadow: 0 5px 0 #60cad6; }
  body.mobile-compact-page .rental-monitor :is(.runtime-label,.runtime-sub,.pricing-label) { color: #c3e4e8; font-size: 12px; line-height: 1.45; text-transform: none; letter-spacing: 0; font-weight: 500; }
  body.mobile-compact-page .rental-monitor :is(.runtime-value,.pricing-value) { margin-block: 6px; color: #60cad6; font-size: clamp(24px,7vw,34px); font-weight: 800; line-height: 1.15; font-variant-numeric: tabular-nums; letter-spacing: -.055em; overflow-wrap: anywhere; }
  body.mobile-compact-page .rental-monitor-meta { display: flex; flex-wrap: wrap; gap: 10px 20px; padding-block: 10px; }
  body.mobile-compact-page .rental-monitor-meta .battery-box { padding: 0; border: 0; background: transparent; }
  body.mobile-compact-page .choose-rent-value { font-size: 14px; }
  body.mobile-compact-page .rent-subdetails { border: 1px solid #d2e4e7; border-radius: 13px; background: #fff; }
  body.mobile-compact-page .rent-subdetails summary { min-height: 48px; padding: 12px; font-size: 15px; }
  body.mobile-compact-page .rent-subdetails-body { padding: 0 12px 12px; }
  body.mobile-compact-page .pricing-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  body.mobile-compact-page .pricing-item { min-width: 0; padding: 10px; }
  body.mobile-compact-page .pricing-value { font-size: 18px; overflow-wrap: anywhere; }

  /* Receipt: status and amount lead; supporting facts and tariff are on demand. */
  body.mobile-compact-page .rental-overview { padding: 0 16px 10px; border: 1px solid #bfdce1; border-top: 0; }
  body.mobile-compact-page .rental-overview-top { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin: 0 -16px 10px; padding: 20px 16px; border-radius: 18px 18px 0 0; background: #102c36; color: #e6f8fa; }
  body.mobile-compact-page .rental-overview-top :is(h2,.checkout-reference) { color: #e6f8fa; }
  body.mobile-compact-page .rental-overview-top h2 { font-size: 21px; }
  body.mobile-compact-page .rental-overview-top .checkout-reference { padding: 0; margin-top: 5px; border: 0; background: transparent; font-size: 12px; }
  body.mobile-compact-page .rental-overview-top .rental-amount > strong { color: #60cad6; font-size: 32px; letter-spacing: -.05em; }
  body.mobile-compact-page .rental-amount > span { font-size: 12px; }
  body.mobile-compact-page .rental-payment { font-size: 13px; margin-block: 10px 0; }
  body.mobile-compact-page #rentalLead:empty { display: none; }
  body.mobile-compact-page .rental-overview-top .rental-start { display: grid; gap: 3px; margin: 10px 0 0; font-size: 12px; line-height: 1.45; color: #c3e4e8; }
  body.mobile-compact-page .rental-overview-top .rental-start strong { font-size: 13px; font-weight: 550; color: #e6f8fa; }
  body.mobile-compact-page .rental-overview .checkout-rent-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 0; padding: 8px 0; }
  body.mobile-compact-page .checkout-rent-fact { min-width: 0; }
  body.mobile-compact-page .checkout-rent-fact strong { font-size: 14px; overflow-wrap: anywhere; }
  body.mobile-compact-page .rental-tariff p,.rental-return p { font-size: 13px; line-height: 1.5; }
  body.mobile-compact-page .rental-tariff .checkout-summary li { font-size: 14px; }
  body.mobile-compact-page .rental-return { border-color: #7acbd6; background: #e8f7f9; }
  body.mobile-compact-page .rental-withdrawal { padding: 12px 16px; }
  body.mobile-compact-page .rental-withdrawal h2 { font-size: 15px; }
  body.mobile-compact-page .rental-withdrawal p { font-size: 12px; }
  body.mobile-compact-page .pay-shell > h1 { font-size: 30px; line-height: 1.1; letter-spacing: -.045em; margin-block: 12px 6px; }
  body.mobile-compact-page .pay-shell > .lead { font-size: 14px; margin-block: 6px 16px; }
  body.mobile-compact-page :is(.saved-methods > p,.method-meta) { font-size: 14px; line-height: 1.5; }
}
@media screen and (max-width: 360px) {
  body.mobile-compact-page .customer-toplinks { gap: 10px; }
  body.mobile-compact-page .rental-monitor { gap: 10px; padding: 18px 14px; }
  body.mobile-compact-page .rental-monitor .runtime-value { font-size: 24px; }
  body.mobile-compact-page .rental-amount { text-align: left; }
  body.mobile-compact-page .product-hero { padding-right: 82px; }
  body.mobile-compact-page .energy-spark { right: 12px; width: 56px; }
}
@media (prefers-reduced-motion: reduce) {
  body.mobile-compact-page *, html:has(body.mobile-compact-page) { scroll-behavior: auto !important; }
}
