/* Match the published mobile card typography, including nested bold text. */
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j :is([data-vg-person-name],[data-vg-person-birth],[data-vg-person-transport]),
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j :is([data-vg-person-name],[data-vg-person-birth],[data-vg-person-transport]) *{font-size:13px!important;line-height:19px!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j [data-vg-person-name]{font-weight:600!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j :is([data-vg-card-street],[data-vg-card-city]),
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j :is([data-vg-card-street],[data-vg-card-city]) *{font-size:12px!important;line-height:19px!important}

/* Keep mobile rides within the same inset white card as the published pages. */
body.device-mobile-optimized main[data-vg-customer-view="rides"]:has([data-vg-ionos-rides]){width:calc(100% - 20px)!important;max-width:300px!important;margin:12px 10px 0!important;border-radius:20px;background:#fff}
body.device-mobile-optimized main[data-vg-customer-view="rides"]:has([data-vg-ionos-rides]) :is(#SITE_PAGES,#comp-lgknr4yj2,#TPAMultiSection_lcx3lsa4,[role="tablist"],[role="tabpanel"]){width:100%!important;max-width:100%!important;box-sizing:border-box!important}
body.device-mobile-optimized [data-vg-ionos-rides]{box-sizing:border-box;padding:0 10px}
body.device-mobile-optimized [data-vg-ionos-rides] [dir="auto"]{font-size:13px!important;line-height:19px!important}
body.device-mobile-optimized [data-vg-ionos-rides] [role="button"]{max-width:100%;box-sizing:border-box}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j [data-vg-person-heading-wrap]{position:relative!important;inset:auto!important;transform:none!important;translate:none!important;width:100%!important;max-width:none!important;padding:0!important;margin:0 0 8px!important;text-align:center!important;min-height:32px!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j [data-vg-person-heading-wrap] [data-hook="header-title"]{width:100%!important;max-width:none!important;margin:0!important;text-align:center!important;white-space:nowrap!important;font-size:24px!important;line-height:32px!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j [data-vg-booking-stage-layout]{margin-top:0!important;padding-top:0!important}
html body #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j [data-vg-review-stack] :is([data-hook="accordion-item-header"],#vg-mobile-region-divider){display:none!important}
html body #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j [data-vg-review-stack] [id^="service-details-item-content"]{display:block!important;height:auto!important;max-height:none!important;opacity:1!important;padding-top:0!important;margin-top:0!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j#TPAMultiSection_lcx3lr1j [data-vg-person-heading-wrap] [data-hook="header-title"]{padding:0!important;box-sizing:border-box!important}
body.device-mobile-optimized [data-vg-ride-card]>div{padding:12px!important;border-radius:14px!important;margin-bottom:0!important}
body.device-mobile-optimized [data-vg-ride-card] [aria-label^="Transportart:"]{width:64px!important;height:64px!important;min-width:64px!important;max-width:64px!important;max-height:64px!important}
body.device-mobile-optimized [data-vg-ride-card] :is([aria-label="Rückfahrt buchen"],[aria-label="Fahrt auf einen neuen Termin kopieren"],[aria-label="Fahrtverlauf anzeigen"],[aria-label="Rechnung öffnen"]){height:58px!important;min-height:58px!important}
body.device-mobile-optimized [data-vg-ride-card] :is([aria-label="Rückfahrt buchen"],[aria-label="Fahrt auf einen neuen Termin kopieren"],[aria-label="Fahrtverlauf anzeigen"],[aria-label="Rechnung öffnen"])>div{height:100%!important;min-height:0!important;padding:5px!important;gap:2px!important}
body.device-mobile-optimized [data-vg-ride-card] svg{max-width:23px;max-height:23px}
main[data-vg-account-protected]{overflow-anchor:none}
html[data-vg-account-route] #BACKGROUND_GROUP{position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;pointer-events:none!important;z-index:0!important}
html[data-vg-account-route] #site-root{position:relative!important;z-index:1!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #PAGES_CONTAINER[data-vg-customer-view="rides"]:has([data-vg-ionos-rides]) :is(#SITE_PAGES,#comp-lgknr4yj2,#TPAMultiSection_lcx3lsa4,[role="tablist"],[role="tabpanel"],[data-vg-ionos-rides],[data-vg-ride-card]){width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #PAGES_CONTAINER[data-vg-customer-view="rides"] [role="tab"]{width:50%!important;max-width:50%!important;min-width:0!important;box-sizing:border-box!important;flex:1 1 50%!important;padding:0 3px!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #PAGES_CONTAINER[data-vg-customer-view="rides"] [role="tab"] span{font-size:13px!important;white-space:nowrap!important}
/* The profile and its form share the same white card, within the header inset. */
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #PAGES_CONTAINER[data-vg-account-protected]:not([data-vg-customer-view="booking"]){width:calc(100% - 20px)!important;max-width:300px!important;min-width:0!important;margin:0 10px!important;box-sizing:border-box!important;background:#fff!important;border-radius:0 0 20px 20px!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #PAGES_CONTAINER[data-vg-account-protected]:not([data-vg-customer-view="booking"]) :is(#SITE_PAGES,[data-vg-member-page],#Containeru6gzy,#comp-lgknr4ye1,#TPASection_k29afisf){width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;background:transparent!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #SOSP_CONTAINER_CUSTOM_ID{border-radius:20px 20px 0 0!important;overflow:hidden!important;background:#fff!important;margin-top:0!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #PAGES_CONTAINER #TPASection_k29afisf{margin-left:0!important;margin-right:0!important;left:0!important;right:auto!important}
/* Captured background wrappers have their own height; trimming only the
   header leaves the white background overlapping the following card. */
html body.device-mobile-optimized #SITE_HEADER .CmHRsG{height:var(--vg-header-card-height,100%)!important;min-height:0!important;bottom:auto!important}
html body.device-mobile-optimized #SITE_HEADER #comp-k29afirx{width:150px!important;left:calc((100% - 150px)/2)!important}
html body.device-mobile-optimized #SITE_HEADER #comp-k29afirx [data-testid="handle-button"]{width:150px!important;justify-content:center!important}
html body.device-mobile-optimized #SITE_HEADER #comp-k29afirx .HuH6Ex{width:auto!important;max-width:none!important;min-width:0!important;overflow:visible!important;text-overflow:clip!important;flex-shrink:0!important}
html body.device-mobile-optimized #vg-original-view-loading{margin-bottom:0!important}
html body.device-mobile-optimized #SOSP_CONTAINER_CUSTOM_ID:not([hidden])~#vg-original-view-loading{border-radius:0 0 20px 20px!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #PAGES_CONTAINER[data-vg-customer-view="rides"] #TPAMultiSection_lcx3lsa4{margin-left:0!important;margin-right:0!important;left:0!important}
html body.device-mobile-optimized #PAGES_CONTAINER[data-vg-account-protected]:not([data-vg-customer-view="booking"]) [data-testid="page-bg"]{background:transparent!important}
/* One shared compact size for the name and ride actions, in both ride tabs. */
html body.device-mobile-optimized [data-vg-ride-card] [data-vg-ride-name],
html body.device-mobile-optimized [data-vg-ride-card] [data-vg-ride-details-action] [dir="auto"],
html body.device-mobile-optimized [data-vg-ride-card] :is([aria-label="Rückfahrt buchen"],[aria-label="Fahrt auf einen neuen Termin kopieren"],[aria-label="Fahrtverlauf anzeigen"],[aria-label="Live-Fahrt verfolgen"],[aria-label="Live-Fahrt und Status anzeigen"],[role="button"][aria-expanded]) [dir="auto"]{font-size:12px!important;line-height:18px!important}
html body.device-mobile-optimized [data-vg-ride-card] :is([aria-label="Rückfahrt buchen"],[aria-label="Fahrt auf einen neuen Termin kopieren"],[aria-label="Fahrtverlauf anzeigen"],[aria-label="Live-Fahrt verfolgen"],[aria-label="Live-Fahrt und Status anzeigen"])>div{padding-left:2px!important;padding-right:2px!important}
html body.device-mobile-optimized [data-vg-ionos-rides]{margin-bottom:0!important}
html body.device-mobile-optimized [data-vg-has-rides="true"] [data-hook="empty-state-main"]{min-height:0!important;height:auto!important;padding:0 10px 12px!important}
html body.device-mobile-optimized [data-vg-has-rides="true"] :is([data-hook="upcoming-empty-state-main"],[data-hook="button-adapter-main"]){margin-top:0!important;margin-bottom:0!important;min-height:0!important}
html body.device-mobile-optimized [data-vg-has-rides="true"] [data-hook="empty-state-button"]{margin-top:0!important;margin-bottom:0!important}
html body.device-mobile-optimized [data-vg-ride-card] [aria-label^="Live-Fahrt"]{height:58px!important;min-height:58px!important}
html body.device-mobile-optimized [data-vg-ride-card] [aria-label^="Live-Fahrt"]>div{height:100%!important;min-height:0!important;padding:5px 2px!important;gap:2px!important}
html body.device-mobile-optimized [data-vg-more-rides]{display:block;box-sizing:border-box;width:calc(100% - 20px);margin:0 10px 12px!important;min-height:44px;padding:10px 12px!important;border:1px solid #9baa64!important;border-radius:12px!important;background:linear-gradient(135deg,#fffffa,#d2e0a7)!important;color:#24301b!important;font:600 13px/20px Arial,sans-serif!important;text-align:center;box-shadow:0 2px 3px #0002;cursor:pointer}
/* The captured booking main is mounted once, within the same inset card. */
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #PAGES_CONTAINER[data-vg-customer-view="booking"]{width:calc(100% - 20px)!important;max-width:300px!important;min-width:0!important;margin:0 10px!important;box-sizing:border-box!important;background:#fff!important;border-radius:20px!important}
html body.device-mobile-optimized #SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER#SITE_CONTAINER #PAGES_CONTAINER[data-vg-customer-view="booking"] :is(#SITE_PAGES,[data-vg-member-page],[id^="Container"],.wixui-section,[id^="TPAMultiSection_"]){width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important;left:0!important}
html body.device-mobile-optimized #PAGES_CONTAINER[data-vg-customer-view="booking"] [data-testid="page-bg"]{background:transparent!important}
html[data-vg-account-route] body.device-mobile-optimized{background:#d0e2b0!important}
/* Confirmed bookings keep the original three repeat-booking actions. */
html body #PAGES_CONTAINER[data-vg-customer-view="booking"] [data-vg-confirmed-actions]{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;width:100%!important;margin:16px 0 12px!important;box-sizing:border-box!important}
html body #PAGES_CONTAINER[data-vg-customer-view="booking"] [data-vg-confirmed-action]{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-width:0!important;min-height:70px!important;margin:0!important;padding:8px 3px!important;border:1px solid #94a65d!important;border-radius:12px!important;background:linear-gradient(115deg,#fffffa,#d2e0a7)!important;box-shadow:0 2px 4px #0002!important;color:#80952d!important;cursor:pointer!important}
html body #PAGES_CONTAINER[data-vg-customer-view="booking"] [data-vg-confirmed-action] span{font:600 12px/18px Arial,sans-serif!important;color:#202515!important;white-space:nowrap!important}
html body #PAGES_CONTAINER[data-vg-customer-view="booking"] [data-vg-confirmed-action]:disabled{opacity:.5!important;cursor:default!important}
/* Cancellation and the invoice placeholder must not enlarge upcoming cards. */
html body.device-mobile-optimized [data-vg-ride-card] [data-vg-ride-heading]{position:relative!important}
html body.device-mobile-optimized [data-vg-ride-card] [data-vg-ride-heading]:has([aria-label="Fahrt absagen"]){padding-right:32px!important}
html body.device-mobile-optimized [data-vg-ride-card] [aria-label="Fahrt absagen"]{position:absolute!important;top:50%!important;right:0!important;transform:translateY(-50%)!important}
html body.device-mobile-optimized [data-vg-ride-card] [data-vg-customer-card-actions]>div{height:58px!important;min-height:0!important}
html body.device-mobile-optimized [data-vg-ride-card] [data-vg-customer-card-actions]{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(32px,.65fr)!important;gap:8px!important;margin-top:12px!important;margin-bottom:10px!important}
html body.device-mobile-optimized [data-vg-ride-card] [data-vg-customer-card-actions]>div{width:100%!important;max-width:100%!important;min-width:0!important}

html body.device-mobile-optimized [data-vg-ride-card]:has([aria-label="Fahrt absagen"]) [aria-label^="Transportart:"]:not(img){margin-top:8px!important}
/* Put the active underline directly below the labels, clear of ride cards. */
html body.device-mobile-optimized #PAGES_CONTAINER[data-vg-customer-view="rides"] div:has(>[role="tablist"]){position:relative!important;height:auto!important;min-height:0!important;padding:0!important;margin:0 0 12px!important}
html body.device-mobile-optimized #PAGES_CONTAINER[data-vg-customer-view="rides"] [role="tablist"]{height:auto!important;min-height:0!important;padding:0!important;margin:0!important}
html body.device-mobile-optimized #PAGES_CONTAINER[data-vg-customer-view="rides"] [role="tab"]{height:auto!important;min-height:0!important;padding:8px 3px 4px!important}
html body.device-mobile-optimized #PAGES_CONTAINER[data-vg-customer-view="rides"] [role="tablist"]+div{position:absolute!important;top:auto!important;bottom:0!important;height:3px!important;margin:0!important}
