/* Final Ridey pages: align legacy functional pages to the approved Home design system. */
.booking-page,.confirmation-page,.details-page,.dashboard-page,.coming-page,.error-page{background:var(--bg)!important;color:var(--fg)!important;overflow-x:hidden}
.booking-page main,.confirmation-page main,.details-page main,.dashboard-page main,.coming-page main,.error-page main{background:var(--bg)!important;color:var(--fg)!important}
.booking-page main *, .confirmation-page main *, .details-page main *, .dashboard-page main *, .coming-page main *, .error-page main *{box-sizing:border-box}
.booking-page main small,.confirmation-page main small,.details-page main small,.dashboard-page main span,.coming-page main>section>span,.error-page main>section>span{letter-spacing:.12em;font-weight:700}
.booking-page main h1,.confirmation-page main h1,.details-page main h1,.dashboard-page main h1,.coming-page main h1,.error-page main h1{font-style:normal;color:var(--fg)}
.booking-page main h1 em,.confirmation-page main h1 em,.details-page main h1 em,.confirmation-page main h2 em,.details-page main h2 em,.coming-page main h1 em{font-style:normal;color:inherit}
.booking-page main h2,.confirmation-page main h2,.details-page main h2,.dashboard-page main h2{color:var(--fg)}
.booking-page main p,.confirmation-page main p,.details-page main p,.dashboard-page main p,.coming-page main p,.error-page main p{color:var(--muted)}
.booking-page main button,.confirmation-page main button,.details-page main button,.dashboard-page main button,.coming-page main button{font:inherit}
.booking-page main section,.confirmation-page main section,.details-page main section{width:min(1240px,calc(100% - 80px));margin-inline:auto;padding:80px 0;min-height:0!important}
.booking-page main section+section,.confirmation-page main section+section,.details-page main section+section{border-top:1px solid var(--line)}

/* Booking page */
.booking-page .book-hero{display:grid!important;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;grid-template-rows:auto auto!important;gap:36px 64px!important;align-items:center!important;background:transparent!important;color:var(--fg)!important}
.booking-page .book-hero .hero-copy{padding:0!important;max-width:520px!important;position:static!important;transform:none!important;opacity:1!important}
.booking-page .book-hero .hero-copy small{display:block;margin-bottom:18px;color:var(--fg)!important}
.booking-page .book-hero .hero-copy h1{font-size:clamp(3rem,5.1vw,4.8rem)!important;line-height:1.04!important;letter-spacing:-.055em!important;text-transform:none!important;margin:0!important}
.booking-page .book-hero .hero-copy p{font-size:1.08rem!important;line-height:1.65!important;margin:24px 0 28px!important;max-width:500px!important}
.booking-page .book-hero .hero-copy>a{display:inline-flex!important;min-height:48px!important;align-items:center!important;justify-content:center!important;padding:12px 22px!important;border-radius:7px!important;background:var(--primary)!important;color:#111!important;font-weight:700!important;border:0!important}
.booking-page .hero-route{position:relative!important;inset:auto!important;width:100%!important;height:520px!important;min-height:0!important;border-radius:12px!important;overflow:hidden!important;background:url('../images/home-hero.jpg') center/cover no-repeat!important;border:1px solid var(--line)!important;transform:none!important}
.booking-page .hero-route:after{content:'Choose the pickup. Pick the ride. Set the time.';position:absolute;inset-inline:20px;bottom:20px;padding:18px 20px;border-radius:7px;background:#111;color:#fff;font-weight:700;font-size:1rem}
.booking-page .hero-route svg,.booking-page .hero-route>.ride-marker,.booking-page .hero-route>span,.booking-page .hero-route>.route-dot{display:none!important}
.booking-page .step-rail{grid-column:1/-1!important;position:static!important;width:100%!important;display:grid!important;grid-template-columns:repeat(8,1fr)!important;gap:8px!important;padding:0!important;background:none!important;transform:none!important}
.booking-page .step-rail b{display:flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;border:1px solid var(--line)!important;border-radius:7px!important;background:var(--card)!important;color:var(--muted)!important;font-size:.8rem!important}
.booking-page .step-rail b.active{background:var(--primary)!important;color:#111!important;border-color:var(--primary)!important}
.booking-page .location-stage,.booking-page .time-lab,.booking-page .rider-check,.booking-page .review-ticket{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:64px!important;align-items:center!important;background:transparent!important;color:var(--fg)!important}
.booking-page .section-copy,.booking-page .time-copy,.booking-page .rider-form,.booking-page .review-copy{position:static!important;transform:none!important;opacity:1!important;padding:0!important;max-width:none!important}
.booking-page .section-copy small,.booking-page .runway-head small,.booking-page .time-copy>small,.booking-page .belt-head small,.booking-page .rider-form>small,.booking-page .review-copy>small{display:block;margin-bottom:16px!important;color:var(--fg)!important}
.booking-page .section-copy h2,.booking-page .runway-head h2,.booking-page .time-copy h2,.booking-page .belt-head h2,.booking-page .rider-form h2,.booking-page .review-copy h2{font-size:clamp(2rem,3.3vw,3rem)!important;line-height:1.13!important;letter-spacing:-.045em!important;text-transform:none!important;margin:0!important}
.booking-page .section-copy p,.booking-page .runway-head p,.booking-page .belt-head p,.booking-page .review-copy p{margin-top:15px!important;line-height:1.65!important;max-width:560px!important}
.booking-page .section-copy label,.booking-page .rider-form label,.booking-page .time-copy label{display:grid!important;gap:7px!important;margin-top:25px!important;color:var(--fg)!important;font-size:.88rem!important;font-weight:700!important}
.booking-page select,.booking-page input[type=date],.booking-page input[type=time],.booking-page input[type=text],.booking-page input[type=email],.booking-page input[type=tel]{width:100%!important;min-height:50px!important;border:1px solid var(--line)!important;border-radius:7px!important;background:var(--card)!important;color:var(--fg)!important;padding:11px 14px!important}
.booking-page .booking-map{height:460px!important;min-height:0!important;border:1px solid var(--line)!important;border-radius:10px!important;background:var(--surface)!important;overflow:hidden!important;position:relative!important;transform:none!important}
.booking-page .booking-map .map-grid{opacity:.22!important}
.booking-page .booking-map svg{stroke:var(--primary)!important;opacity:.8!important}
.booking-page .booking-map .hub{background:var(--card)!important;color:var(--fg)!important;border:1px solid var(--line)!important;border-radius:6px!important;box-shadow:none!important}
.booking-page .booking-map .hub.active{border-color:var(--primary)!important;background:var(--primary)!important;color:#111!important}
.booking-page .booking-map .hub i{background:currentColor!important}
.booking-page .map-status{background:#111!important;color:#fff!important;border-radius:7px!important}
.booking-page .scooter-runway,.booking-page .addon-belt{display:block!important;background:transparent!important;color:var(--fg)!important}
.booking-page .runway-head,.booking-page .belt-head{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:30px!important;margin-bottom:32px!important;max-width:none!important;position:static!important;transform:none!important;opacity:1!important}
.booking-page .runway-head>p,.booking-page .belt-head>p{max-width:420px!important;margin:0!important}
.booking-page .runway{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important;margin:0!important;transform:none!important}
.booking-page .machine{min-width:0!important;width:100%!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;text-align:start!important;padding:20px!important;border:1px solid var(--line)!important;border-radius:10px!important;background:var(--card)!important;color:var(--fg)!important;box-shadow:none!important;transform:none!important;overflow:hidden!important}
.booking-page .machine.active{border:2px solid var(--primary)!important;padding:19px!important}
.booking-page .machine>span{font-size:.75rem!important;color:var(--muted)!important}
.booking-page .scooter-art{width:100%!important;height:220px!important;margin:14px 0 18px!important;border-radius:8px!important;background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;transform:none!important}
.booking-page .machine:nth-child(1) .scooter-art{background-image:url('../images/city-classic.jpg')!important}
.booking-page .machine:nth-child(2) .scooter-art{background-image:url('../images/urban-comfort.jpg')!important}
.booking-page .machine:nth-child(3) .scooter-art{background-image:url('../images/weekend-bike.jpg')!important}
.booking-page .scooter-art>*{display:none!important}
.booking-page .machine strong{font-size:1.35rem!important;margin-bottom:5px!important}
.booking-page .machine small{font-size:.85rem!important;color:var(--muted)!important;letter-spacing:0!important;font-weight:400!important}
.booking-page .machine em{font-style:normal!important;font-size:1.2rem!important;font-weight:700!important;margin-top:16px!important;color:var(--fg)!important}
.booking-page .runway-read{display:flex!important;align-items:center!important;gap:16px!important;margin-top:20px!important;padding-top:20px!important;border-top:1px solid var(--line)!important;color:var(--fg)!important}
.booking-page .runway-read small{letter-spacing:.1em!important}.booking-page .runway-read span{color:var(--muted)!important;margin-inline-start:auto!important}
.booking-page .clock-visual,.booking-page .identity-visual{height:460px!important;border-radius:10px!important;border:1px solid var(--line)!important;background-position:center!important;background-size:cover!important;overflow:hidden!important;position:relative!important;transform:none!important}
.booking-page .clock-visual{background-image:url('../images/pickup-check.jpg')!important}.booking-page .identity-visual{background-image:url('../images/rider-preparation.jpg')!important}
.booking-page .clock-visual>*,.booking-page .identity-visual>*{display:none!important}
.booking-page .time-fields,.booking-page .form-line{display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px!important}
.booking-page .duration-label{margin-top:22px!important}.booking-page input[type=range]{accent-color:var(--primary)!important;width:100%!important}
.booking-page .return-read,.booking-page .deposit-line{margin-top:22px!important;padding:18px!important;border:1px solid var(--line)!important;border-radius:8px!important;background:var(--surface)!important;display:flex!important;justify-content:space-between!important;gap:16px!important;align-items:center!important}
.booking-page .belt-track{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;transform:none!important}
.booking-page .addon{min-height:130px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:var(--card)!important;color:var(--fg)!important;padding:20px!important;display:grid!important;align-content:start!important;gap:10px!important;position:relative!important;transform:none!important}
.booking-page .addon input{position:absolute!important;opacity:0!important}.booking-page .addon:has(input:checked){border-color:var(--primary)!important;box-shadow:inset 0 0 0 1px var(--primary)!important}.booking-page .addon i{color:#111!important;background:var(--primary)!important;border-radius:50%!important;width:28px!important;height:28px!important;display:grid!important;place-items:center!important;font-style:normal!important}.booking-page .addon span{color:var(--muted)!important}.booking-page .belt-line{display:none!important}
.booking-page .rider-form .agree{display:flex!important;align-items:flex-start!important;gap:10px!important;font-weight:400!important;color:var(--muted)!important}.booking-page .rider-form .agree input{margin-top:4px!important;accent-color:var(--primary)!important}.booking-page .rider-form label em{font-size:.78rem!important;color:#c33!important;font-style:normal!important;display:none}.booking-page .rider-form label.invalid em{display:block!important}
.booking-page .review-actions{display:flex!important;gap:14px!important;align-items:center!important;flex-wrap:wrap!important;margin-top:26px!important}.booking-page #reviewBtn{min-height:48px!important;padding:12px 22px!important;border:0!important;border-radius:7px!important;background:var(--primary)!important;color:#111!important;font-weight:700!important}.booking-page .review-actions a{text-decoration:underline!important;text-underline-offset:5px!important;font-weight:700!important}.booking-page .ticket{position:static!important;transform:none!important;width:100%!important;background:var(--card)!important;color:var(--fg)!important;border:1px solid var(--line)!important;border-radius:10px!important;padding:28px!important;box-shadow:none!important}.booking-page .ticket-top,.booking-page .ticket dl div,.booking-page .ticket-total{border-color:var(--line)!important}.booking-page .ticket dl{margin:20px 0!important}.booking-page .ticket small{color:var(--muted)!important;letter-spacing:0!important;font-weight:400!important}.booking-page #continueBtn{display:flex!important;min-height:48px!important;margin-top:20px!important;align-items:center!important;justify-content:center!important;border-radius:7px!important;background:#111!important;color:#fff!important;font-weight:700!important}.booking-page #continueBtn.disabled{opacity:.45!important;pointer-events:none!important}.booking-page .review-road{display:none!important}

/* Confirmation */
.confirmation-page .confirm-hero{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:64px!important;align-items:center!important;background:transparent!important;color:var(--fg)!important}
.confirmation-page .confirm-copy,.confirmation-page .receipt-intro,.confirmation-page .deadline-copy,.confirmation-page .payment-copy,.confirmation-page .sequence-head,.confirmation-page .agreement-copy,.confirmation-page .calendar-copy,.confirmation-page .confirmation-cta-copy{position:static!important;transform:none!important;opacity:1!important;padding:0!important;max-width:none!important}
.confirmation-page .confirm-copy h1{font-size:clamp(3rem,5.1vw,4.8rem)!important;line-height:1.04!important;letter-spacing:-.055em!important;margin:0!important}.confirmation-page .confirm-copy p{font-size:1.08rem!important;line-height:1.65!important;margin:24px 0 28px!important;max-width:500px!important}.confirmation-page .confirm-copy>a{display:inline-flex!important;min-height:48px!important;align-items:center!important;padding:12px 22px!important;border-radius:7px!important;background:var(--primary)!important;color:#111!important;font-weight:700!important}
.confirmation-page .hero-ticket{width:100%!important;min-height:420px!important;position:relative!important;inset:auto!important;transform:none!important;border:1px solid var(--line)!important;border-radius:12px!important;background:linear-gradient(180deg,#111 0 58%,var(--primary) 58% 100%)!important;color:#fff!important;padding:34px!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important}.confirmation-page .hero-ticket strong{font-size:clamp(2rem,4vw,3.4rem)!important;letter-spacing:-.04em!important}.confirmation-page .hero-ticket b{width:58px!important;height:58px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:var(--primary)!important;color:#111!important;font-size:1.6rem!important}.confirmation-page .hero-ticket small{color:#111!important}.confirmation-page .scan-line,.confirmation-page .hero-road{display:none!important}
.confirmation-page .receipt-stage,.confirmation-page .deadline-stage,.confirmation-page .agreement-stage,.confirmation-page .calendar-stage{display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important;gap:64px!important;align-items:center!important;background:transparent!important;color:var(--fg)!important}
.confirmation-page .receipt-intro small,.confirmation-page .deadline-copy small,.confirmation-page .payment-copy small,.confirmation-page .sequence-head small,.confirmation-page .agreement-copy>small:first-child,.confirmation-page .calendar-copy>small:first-child,.confirmation-page .confirmation-cta-copy>small{display:block!important;margin-bottom:16px!important;color:var(--fg)!important}.confirmation-page main h2{font-size:clamp(2rem,3.3vw,3rem)!important;line-height:1.13!important;letter-spacing:-.045em!important;text-transform:none!important;margin:0!important}.confirmation-page .receipt-intro p,.confirmation-page .deadline-copy p,.confirmation-page .agreement-copy p,.confirmation-page .calendar-copy p{margin-top:15px!important;line-height:1.65!important}.confirmation-page .mobility-receipt{width:100%!important;transform:none!important;background:var(--card)!important;color:var(--fg)!important;border:1px solid var(--line)!important;border-radius:10px!important;box-shadow:none!important;overflow:hidden!important}.confirmation-page .mobility-receipt header,.confirmation-page .mobility-receipt footer{background:#111!important;color:#fff!important}.confirmation-page .mobility-receipt dl div{border-color:var(--line)!important}.confirmation-page .receipt-route{background:var(--surface)!important;color:var(--fg)!important}.confirmation-page .receipt-route i{background:var(--primary)!important}
.confirmation-page .deadline-orbit{height:390px!important;border-radius:10px!important;background:url('../images/weekly-ride.jpg') center/cover no-repeat!important;border:1px solid var(--line)!important;display:flex!important;align-items:flex-end!important;padding:20px!important;transform:none!important}.confirmation-page .orbit-ring{width:auto!important;height:auto!important;border:0!important;border-radius:7px!important;background:#111!important;color:#fff!important;padding:18px 20px!important;display:flex!important;gap:14px!important;align-items:center!important;transform:none!important}.confirmation-page .orbit-ring i{display:none!important}.confirmation-page .orbit-ring b{font-size:1.6rem!important}.confirmation-page .deadline-line{margin-top:24px!important;border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important;padding:18px 0!important;display:grid!important;grid-template-columns:auto 1fr auto 1fr auto auto!important;gap:12px!important;align-items:center!important}.confirmation-page .deadline-line i{height:1px!important;background:var(--line)!important}
.confirmation-page .payment-strip{display:grid!important;grid-template-columns:.8fr 1.2fr!important;gap:64px!important;align-items:start!important;background:var(--surface)!important;padding-inline:32px!important;border:0!important;border-radius:10px!important}.confirmation-page .amount-track{display:grid!important;grid-template-columns:repeat(7,auto)!important;align-items:center!important;gap:14px!important;color:var(--fg)!important}.confirmation-page .amount-track>div{padding:18px!important;border:1px solid var(--line)!important;border-radius:8px!important;background:var(--card)!important}.confirmation-page .amount-track small{display:block!important;color:var(--muted)!important;margin-bottom:6px!important}.confirmation-page .amount-total{border-color:var(--primary)!important}.confirmation-page .payment-strip>p{grid-column:2!important;font-size:.85rem!important}
.confirmation-page .pickup-sequence{background:transparent!important;color:var(--fg)!important}.confirmation-page .sequence-head{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:30px!important;margin-bottom:30px!important}.confirmation-page .sequence-road{display:none!important}.confirmation-page .pickup-sequence ol{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;padding:0!important;margin:0!important;list-style:none!important}.confirmation-page .pickup-sequence li{min-height:180px!important;padding:24px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:var(--card)!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;text-align:start!important}.confirmation-page .pickup-sequence li>b{width:36px!important;height:36px!important;border-radius:50%!important;background:var(--primary)!important;color:#111!important;display:grid!important;place-items:center!important;margin-bottom:22px!important}.confirmation-page .pickup-sequence li strong{font-size:1.12rem!important;margin-bottom:8px!important}.confirmation-page .pickup-sequence li span{color:var(--muted)!important}
.confirmation-page .agreement-paper,.confirmation-page .calendar-visual{width:100%!important;min-height:380px!important;transform:none!important;border:1px solid var(--line)!important;border-radius:10px!important;background:var(--surface)!important;color:var(--fg)!important;padding:28px!important;box-shadow:none!important}.confirmation-page .agreement-paper header,.confirmation-page .agreement-paper footer{border-color:var(--line)!important}.confirmation-page .paper-lines i{background:var(--line)!important}.confirmation-page .agreement-copy button,.confirmation-page .calendar-copy button{margin-top:24px!important;min-height:48px!important;border:0!important;border-radius:7px!important;background:var(--primary)!important;color:#111!important;padding:12px 22px!important;font-weight:700!important}.confirmation-page .calendar-visual>span{color:var(--muted)!important}.confirmation-page .calendar-visual>strong{font-size:5rem!important;line-height:1!important}.confirmation-page .calendar-visual>div{border-color:var(--line)!important}.confirmation-page .calendar-visual i{background:var(--primary)!important}
.confirmation-page .confirmation-cta{width:100%!important;max-width:none!important;margin:0!important;padding:62px max(40px,calc((100vw - 1240px)/2))!important;background:var(--primary)!important;color:#111!important;border:0!important}.confirmation-page .confirmation-cta-copy{display:grid!important;grid-template-columns:1.2fr 1fr!important;gap:48px!important;align-items:center!important}.confirmation-page .confirmation-cta-copy small,.confirmation-page .confirmation-cta-copy h2,.confirmation-page .confirmation-cta-copy p{color:#111!important}.confirmation-page .confirmation-cta-copy p{margin:0 0 22px!important}.confirmation-page .confirmation-cta-copy>div:last-child{grid-column:2!important}.confirmation-page .confirmation-cta-copy>div:last-child a{margin-inline-end:16px!important}.confirmation-page .primary-action{display:inline-flex!important;min-height:48px!important;align-items:center!important;padding:12px 22px!important;border-radius:7px!important;background:#111!important;color:#fff!important;font-weight:700!important}.confirmation-page .cta-route{display:none!important}

/* Scooter details */
.details-page .sd-hero{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:64px!important;align-items:center!important;background:transparent!important;color:var(--fg)!important}.details-page .sd-hero .hero-copy{padding:0!important;position:static!important;transform:none!important;opacity:1!important;max-width:520px!important}.details-page .sd-hero h1{font-size:clamp(3rem,5.1vw,4.8rem)!important;line-height:1.04!important;letter-spacing:-.055em!important;margin:0!important}.details-page .sd-hero p{font-size:1.08rem!important;line-height:1.65!important;margin:24px 0 28px!important}.details-page .hero-actions{display:flex!important;gap:12px!important;flex-wrap:wrap!important}.details-page .hero-actions a:first-child{background:var(--primary)!important;color:#111!important;border-radius:7px!important;padding:12px 22px!important;font-weight:700!important}.details-page .hero-actions a:last-child{border:1px solid var(--fg)!important;border-radius:7px!important;padding:12px 22px!important;font-weight:700!important}.details-page .hero-product{position:relative!important;inset:auto!important;width:100%!important;height:520px!important;transform:none!important;border:1px solid var(--line)!important;border-radius:12px!important;background:url('../images/city-classic.jpg') center/cover no-repeat!important;overflow:hidden!important}.details-page .hero-product .product-ring,.details-page .hero-product .sd-scooter{display:none!important}.details-page .hero-tag{position:absolute!important;top:auto!important;bottom:20px!important;transform:none!important;background:#111!important;color:#fff!important;border-radius:7px!important;padding:14px 18px!important}.details-page .hero-tag.t1{inset-inline-start:20px!important}.details-page .hero-tag.t2{inset-inline-end:20px!important}.details-page .hero-tag span{color:#bbb!important}.details-page .hero-scroll{display:none!important}
.details-page .spec-theatre,.details-page .instrument,.details-page .included,.details-page .deposit{display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important;gap:64px!important;align-items:center!important;background:transparent!important;color:var(--fg)!important}.details-page .spec-copy,.details-page .instrument-copy,.details-page .included-copy,.details-page .deposit-copy,.details-page .doc-head,.details-page .booking-copy{position:static!important;transform:none!important;opacity:1!important;padding:0!important;max-width:none!important}.details-page main small{display:block!important;margin-bottom:16px!important;color:var(--fg)!important}.details-page main h2{font-size:clamp(2rem,3.3vw,3rem)!important;line-height:1.13!important;letter-spacing:-.045em!important;text-transform:none!important;margin:0!important}.details-page .spec-copy p,.details-page .instrument-copy p,.details-page .deposit-copy p{margin-top:15px!important;line-height:1.65!important}.details-page .sticky-machine{position:relative!important;top:auto!important;width:100%!important;height:480px!important;transform:none!important;border:1px solid var(--line)!important;border-radius:10px!important;background:url('../images/city-classic.jpg') center/cover no-repeat!important;overflow:hidden!important}.details-page .machine-core{display:none!important}.details-page .spec-note{position:absolute!important;transform:none!important;background:#111!important;color:#fff!important;border:0!important;border-radius:7px!important;padding:12px 14px!important;min-width:120px!important}.details-page .spec-note strong{color:var(--primary)!important}.details-page .spec-note span{color:#ddd!important}.details-page .n1{top:20px!important;inset-inline-start:20px!important}.details-page .n2{top:20px!important;inset-inline-end:20px!important}.details-page .n3{bottom:20px!important;inset-inline-start:20px!important}.details-page .n4{bottom:20px!important;inset-inline-end:20px!important}
.details-page .cluster{width:100%!important;min-height:410px!important;position:relative!important;transform:none!important;border:1px solid var(--line)!important;border-radius:10px!important;background:var(--surface)!important;color:var(--fg)!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:28px!important;align-items:center!important;padding:34px!important}.details-page .speedometer{width:220px!important;height:220px!important;margin:auto!important;border-color:var(--line)!important}.details-page .speed-read b{color:var(--fg)!important}.details-page .range-gauge{color:var(--fg)!important}.details-page .range-gauge i{background:var(--line)!important}.details-page .range-gauge em{background:var(--primary)!important}
.details-page .availability{background:var(--surface)!important;color:var(--fg)!important;border:0!important;border-radius:10px!important;padding-inline:32px!important}.details-page .availability-head{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:32px!important;position:static!important;transform:none!important;opacity:1!important}.details-page .availability-head p{max-width:420px!important}.details-page .date-strip{display:grid!important;grid-template-columns:repeat(5,1fr)!important;gap:10px!important;margin:28px 0!important}.details-page .date-strip button{border:1px solid var(--line)!important;border-radius:7px!important;background:var(--card)!important;color:var(--fg)!important;min-height:76px!important;transform:none!important}.details-page .date-strip button.active{background:var(--primary)!important;color:#111!important;border-color:var(--primary)!important}.details-page .time-road{border-color:var(--line)!important;color:var(--muted)!important}.details-page .time-road i{background:var(--line)!important}.details-page .time-road i.free{background:var(--primary)!important}.details-page .availability-marker{background:#111!important;color:#fff!important;border-radius:7px!important}
.details-page .included-visual{height:430px!important;border:1px solid var(--line)!important;border-radius:10px!important;background:url('../images/rider-preparation.jpg') center/cover no-repeat!important;position:relative!important;overflow:hidden!important}.details-page .included-visual>*{display:none!important}.details-page .included-copy ul{list-style:none!important;padding:0!important;margin:24px 0 0!important;border-top:1px solid var(--line)!important}.details-page .included-copy li{padding:17px 0!important;border-bottom:1px solid var(--line)!important;color:var(--fg)!important}.details-page .included-copy li b{color:#0f766e!important;margin-inline-end:14px!important}
.details-page .receipt{width:100%!important;transform:none!important;background:var(--card)!important;color:var(--fg)!important;border:1px solid var(--line)!important;border-radius:10px!important;padding:28px!important;box-shadow:none!important}.details-page .receipt-top,.details-page .receipt-line{border-color:var(--line)!important}.details-page .receipt-value strong{color:var(--fg)!important}.details-page .receipt-stamp{border-color:var(--primary)!important;color:var(--fg)!important}
.details-page .documents{background:transparent!important;color:var(--fg)!important}.details-page .doc-head{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:30px!important;margin-bottom:30px!important}.details-page .doc-track{display:grid!important;grid-template-columns:1fr auto 1fr auto 1fr!important;gap:16px!important;align-items:center!important}.details-page .doc-step{min-height:190px!important;padding:24px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:var(--card)!important;color:var(--fg)!important;transform:none!important}.details-page .doc-step>span{display:grid!important;place-items:center!important;width:36px!important;height:36px!important;border-radius:50%!important;background:var(--primary)!important;color:#111!important;margin-bottom:20px!important}.details-page .doc-step p{margin-top:8px!important}.details-page .doc-arrow{color:var(--muted)!important}
.details-page .sd-book{width:100%!important;max-width:none!important;margin:0!important;padding:62px max(40px,calc((100vw - 1240px)/2))!important;background:var(--primary)!important;color:#111!important;border:0!important}.details-page .booking-copy small,.details-page .booking-copy h2,.details-page .booking-copy p{color:#111!important}.details-page .booking-copy{display:grid!important;grid-template-columns:1.1fr 1fr!important;gap:30px!important;align-items:center!important}.details-page .booking-copy p{margin:0!important}.details-page .booking-copy a{justify-self:start!important;display:inline-flex!important;min-height:48px!important;align-items:center!important;padding:12px 22px!important;border-radius:7px!important;background:#111!important;color:#fff!important;font-weight:700!important}.details-page .booking-road{display:none!important}

/* Dashboards */
.dashboard-page .dash-shell{width:min(1240px,calc(100% - 80px))!important;margin:0 auto!important;padding:56px 0 80px!important;display:grid!important;grid-template-columns:250px minmax(0,1fr)!important;gap:34px!important;min-height:0!important;background:transparent!important;color:var(--fg)!important}.dashboard-page .dash-shell>aside{position:sticky!important;top:105px!important;align-self:start!important;height:auto!important;min-height:620px!important;border:1px solid var(--line)!important;border-radius:10px!important;background:var(--surface)!important;color:var(--fg)!important;padding:24px!important;display:flex!important;flex-direction:column!important}.dashboard-page .dash-shell>aside>b{font-size:.78rem!important;letter-spacing:.12em!important;margin-bottom:20px!important}.dashboard-page .dash-nav{display:grid!important;gap:5px!important;margin:0!important;font-size:.9rem!important}.dashboard-page .dash-nav a{padding:10px 12px!important;border-radius:6px!important;color:var(--muted)!important}.dashboard-page .dash-nav a:hover,.dashboard-page .dash-nav a.active{background:var(--card)!important;color:var(--fg)!important;text-decoration:none!important}.dashboard-page .dash-shell>aside>a:last-child{margin-top:auto!important;padding-top:20px!important;font-weight:700!important}.dashboard-page .dash-main{min-width:0!important;background:transparent!important;color:var(--fg)!important}.dashboard-page .dash-main>header{padding:12px 0 30px!important;border-bottom:1px solid var(--line)!important;background:transparent!important;color:var(--fg)!important}.dashboard-page .dash-main>header span,.dashboard-page .dash-reveal>span{display:block!important;font-size:.76rem!important;letter-spacing:.12em!important;font-weight:700!important;color:var(--fg)!important;margin-bottom:12px!important}.dashboard-page .dash-main>header h1{font-size:clamp(2.7rem,5vw,4.2rem)!important;line-height:1.04!important;letter-spacing:-.055em!important;margin:0!important}.dashboard-page .dash-main>section{margin:0!important;padding:30px 0!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;color:var(--fg)!important;transform:none!important;opacity:1!important;min-height:0!important}.dashboard-page .active-rental{display:grid!important;grid-template-columns:1fr auto auto!important;gap:24px!important;align-items:center!important}.dashboard-page .active-rental h2{font-size:2rem!important;margin:0 0 5px!important}.dashboard-page .active-rental .countdown{font-size:clamp(1.7rem,3vw,2.6rem)!important;font-weight:700!important;letter-spacing:-.04em!important;color:var(--fg)!important}.dashboard-page .active-rental>a,.dashboard-page .extend-panel button,.dashboard-page .dash-tools button,.dashboard-page .admin-actions button{min-height:44px!important;padding:10px 16px!important;border:0!important;border-radius:7px!important;background:var(--primary)!important;color:#111!important;font-weight:700!important}.dashboard-page .dash-metrics,.dashboard-page .ops-gauges{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}.dashboard-page .dash-metrics>div,.dashboard-page .ops-gauges>div{min-height:135px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:var(--card)!important;padding:20px!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important;color:var(--fg)!important}.dashboard-page .dash-metrics b,.dashboard-page .ops-gauges b{font-size:2rem!important;letter-spacing:-.04em!important}.dashboard-page .dash-metrics span,.dashboard-page .ops-gauges span{letter-spacing:0!important;font-weight:400!important;color:var(--muted)!important}.dashboard-page .ops-gauges i{height:6px!important;background:linear-gradient(90deg,var(--primary) var(--v),var(--line) var(--v))!important;border-radius:10px!important;margin-top:15px!important}.dashboard-page .dash-route,.dashboard-page .ops-route{display:grid!important;grid-template-columns:1fr auto!important;gap:20px!important;align-items:center!important}.dashboard-page .dash-route h2{font-size:2rem!important}.dashboard-page .dash-route>div,.dashboard-page .ops-route>div{display:flex!important;align-items:center!important;gap:12px!important}.dashboard-page .dash-route i,.dashboard-page .ops-route i{width:80px!important;height:2px!important;background:var(--primary)!important}.dashboard-page .extend-panel{display:grid!important;grid-template-columns:1fr 1.3fr auto!important;gap:18px!important;align-items:center!important}.dashboard-page .extend-panel>span{grid-column:1/-1!important}.dashboard-page .extend-panel input{width:100%!important;accent-color:var(--primary)!important}.dashboard-page .extend-panel strong{font-size:1.15rem!important}.dashboard-page .dash-feedback{grid-column:1/-1!important}.dashboard-page .history-line p,.dashboard-page .fleet-line p{padding:14px 0!important;border-top:1px solid var(--line)!important;display:flex!important;justify-content:space-between!important;gap:15px!important}.dashboard-page .history-line a{text-decoration:underline!important;text-underline-offset:4px!important}.dashboard-page .dash-tools,.dashboard-page .admin-actions{display:grid!important;grid-template-columns:180px 1fr auto!important;gap:24px!important;align-items:center!important}.dashboard-page .dash-tools>span,.dashboard-page .admin-actions>span{margin:0!important}.dashboard-page .dash-tools h2,.dashboard-page .admin-actions h2{font-size:1.45rem!important;margin:0!important}.dashboard-page .analytics-road .bars{height:170px!important;display:flex!important;align-items:end!important;gap:12px!important;border-bottom:1px solid var(--line)!important;padding:10px 10px 0!important}.dashboard-page .analytics-road .bars i{flex:1!important;max-width:70px!important;background:var(--primary)!important;border-radius:5px 5px 0 0!important}.dashboard-page .analytics-road small{display:flex!important;justify-content:space-around!important;margin-top:10px!important;color:var(--muted)!important}.dashboard-page .dash-toast{position:fixed!important;right:24px!important;bottom:24px!important;background:#111!important;color:#fff!important;border-radius:7px!important;padding:12px 18px!important;z-index:30!important}.dashboard-page.admin-page .dash-shell>aside{border-top:4px solid var(--primary)!important}

/* Coming soon + 404 */
.coming-page main,.error-page main{min-height:calc(100vh - 100px)!important;display:flex!important;align-items:center!important}.coming-page .coming-stage,.error-page .error-stage{width:min(1240px,calc(100% - 80px))!important;margin:0 auto!important;padding:80px 0!important;min-height:0!important;background:transparent!important;color:var(--fg)!important;text-align:start!important;position:relative!important;transform:none!important}.coming-page .coming-stage{display:grid!important;grid-template-columns:1.05fr .95fr!important;gap:64px!important;align-items:center!important}.coming-page .coming-stage:after{content:'';display:block;grid-column:2!important;grid-row:1/7!important;height:520px!important;border-radius:12px!important;border:1px solid var(--line)!important;background:url('../images/open-road-bike.jpg') center/cover no-repeat!important}.coming-page .coming-stage>span{grid-column:1!important;align-self:end!important}.coming-page .coming-stage h1{grid-column:1!important;font-size:clamp(3rem,5.1vw,4.8rem)!important;line-height:1.04!important;letter-spacing:-.055em!important;margin:0!important;text-transform:none!important}.coming-page .coming-stage p{grid-column:1!important;font-size:1.08rem!important;line-height:1.65!important;max-width:520px!important}.coming-page .coming-meter{grid-column:1!important;width:100%!important;height:12px!important;border-radius:10px!important;background:var(--line)!important;position:relative!important;overflow:visible!important;margin:10px 0!important}.coming-page .coming-meter i{display:block!important;width:78%!important;height:100%!important;background:var(--primary)!important;border-radius:10px!important}.coming-page .coming-meter b{position:absolute!important;right:0!important;top:18px!important;color:var(--fg)!important}.coming-page .coming-stage form{grid-column:1!important;display:grid!important;grid-template-columns:1fr auto!important;gap:10px!important;margin-top:18px!important}.coming-page .coming-stage input{height:50px!important;border:1px solid var(--line)!important;border-radius:7px!important;background:var(--card)!important;color:var(--fg)!important;padding:10px 14px!important}.coming-page .coming-stage button{border:0!important;border-radius:7px!important;background:#111!important;color:#fff!important;padding:10px 22px!important;font-weight:700!important}.coming-page .coming-stage>a{grid-column:1!important;font-weight:700!important;text-decoration:underline!important;text-underline-offset:5px!important;margin-top:8px!important}
.error-page .error-stage{display:grid!important;grid-template-columns:.85fr 1.15fr!important;gap:20px 64px!important;align-items:center!important}.error-page .error-stage>span,.error-page .error-stage h1,.error-page .error-stage p,.error-page .error-stage>a{grid-column:1!important}.error-page .error-no{grid-column:2!important;grid-row:1/6!important;width:100%!important;height:470px!important;border-radius:12px!important;border:1px solid var(--line)!important;background:var(--surface)!important;color:var(--fg)!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;font-size:clamp(7rem,14vw,13rem)!important;font-weight:800!important;letter-spacing:-.1em!important;line-height:1!important;position:static!important;transform:none!important}.error-page .error-no i{font-style:normal!important;color:#111!important;background:var(--primary)!important;border-radius:50%!important;width:.82em!important;height:.82em!important;display:grid!important;place-items:center!important}.error-page .error-stage h1{font-size:clamp(2.8rem,4.5vw,4.3rem)!important;line-height:1.02!important;letter-spacing:-.055em!important;text-transform:none!important;margin:0!important}.error-page .error-stage p{font-size:1.08rem!important;line-height:1.65!important;max-width:500px!important}.error-page .broken-road{display:none!important}.error-page .error-stage>a{justify-self:start!important;display:inline-flex!important;min-height:48px!important;align-items:center!important;padding:12px 22px!important;border-radius:7px!important;background:var(--primary)!important;color:#111!important;font-weight:700!important}

/* RTL support for remaining functional pages. */
[dir=rtl] .booking-page .hero-route:after,[dir=rtl] .details-page .hero-tag,[dir=rtl] .dashboard-page .dash-main{text-align:right}
[dir=rtl] .dashboard-page .dash-toast{right:auto!important;left:24px!important}

/* Tablet */
@media(max-width:980px){
 .booking-page main section,.confirmation-page main section,.details-page main section,.coming-page .coming-stage,.error-page .error-stage,.dashboard-page .dash-shell{width:calc(100% - 50px)!important;padding-block:60px!important}
 .booking-page .book-hero,.confirmation-page .confirm-hero,.details-page .sd-hero{gap:36px!important;grid-template-columns:1fr 1fr!important}.booking-page .hero-route,.details-page .hero-product{height:430px!important}.confirmation-page .hero-ticket{min-height:360px!important}
 .booking-page .location-stage,.booking-page .time-lab,.booking-page .rider-check,.booking-page .review-ticket,.confirmation-page .receipt-stage,.confirmation-page .deadline-stage,.confirmation-page .agreement-stage,.confirmation-page .calendar-stage,.details-page .spec-theatre,.details-page .instrument,.details-page .included,.details-page .deposit{gap:36px!important;grid-template-columns:1fr 1fr!important}
 .booking-page .booking-map,.booking-page .clock-visual,.booking-page .identity-visual,.details-page .sticky-machine,.details-page .included-visual{height:380px!important}.details-page .cluster{min-height:370px!important;padding:24px!important}.details-page .speedometer{width:170px!important;height:170px!important}
 .booking-page .runway{grid-template-columns:repeat(2,1fr)!important}.booking-page .machine:last-child{grid-column:1/-1!important;width:calc(50% - 12px)!important;justify-self:center!important}.booking-page .belt-track{grid-template-columns:repeat(2,1fr)!important}
 .confirmation-page .payment-strip{grid-template-columns:1fr!important;gap:28px!important}.confirmation-page .payment-strip>p{grid-column:1!important}.confirmation-page .amount-track{grid-template-columns:1fr auto 1fr!important}.confirmation-page .amount-track>i:nth-of-type(3){display:none!important}.confirmation-page .amount-total{grid-column:1/-1!important}.confirmation-page .pickup-sequence ol{grid-template-columns:repeat(2,1fr)!important}.confirmation-page .pickup-sequence li:last-child{grid-column:1/-1!important;width:calc(50% - 10px)!important;justify-self:center!important}
 .details-page .date-strip{grid-template-columns:repeat(5,1fr)!important}.details-page .doc-track{grid-template-columns:1fr 1fr!important}.details-page .doc-arrow{display:none!important}.details-page .doc-step:last-child{grid-column:1/-1!important;width:calc(50% - 8px)!important;justify-self:center!important}
 .dashboard-page .dash-shell{grid-template-columns:210px minmax(0,1fr)!important;gap:24px!important}.dashboard-page .dash-shell>aside{top:100px!important;padding:18px!important}.dashboard-page .dash-metrics,.dashboard-page .ops-gauges{grid-template-columns:repeat(2,1fr)!important}.dashboard-page .dash-tools,.dashboard-page .admin-actions{grid-template-columns:140px 1fr!important}.dashboard-page .dash-tools button,.dashboard-page .admin-actions button{grid-column:2!important;justify-self:start!important}.dashboard-page .extend-panel{grid-template-columns:1fr!important}.dashboard-page .active-rental{grid-template-columns:1fr auto!important}.dashboard-page .active-rental>a{grid-column:1/-1!important;justify-self:start!important}
 .coming-page .coming-stage,.error-page .error-stage{gap:36px!important;grid-template-columns:1fr 1fr!important}.coming-page .coming-stage:after{height:430px!important}.error-page .error-no{height:400px!important}
}

/* Mobile */
@media(max-width:700px){
 .booking-page main section,.confirmation-page main section,.details-page main section,.coming-page .coming-stage,.error-page .error-stage,.dashboard-page .dash-shell{width:calc(100% - 36px)!important;padding-block:48px!important}
 .booking-page .book-hero,.booking-page .location-stage,.booking-page .time-lab,.booking-page .rider-check,.booking-page .review-ticket,.confirmation-page .confirm-hero,.confirmation-page .receipt-stage,.confirmation-page .deadline-stage,.confirmation-page .agreement-stage,.confirmation-page .calendar-stage,.details-page .sd-hero,.details-page .spec-theatre,.details-page .instrument,.details-page .included,.details-page .deposit{grid-template-columns:1fr!important;gap:28px!important}
 .booking-page .book-hero .hero-copy h1,.confirmation-page .confirm-copy h1,.details-page .sd-hero h1,.coming-page .coming-stage h1{font-size:3.15rem!important}.booking-page .hero-route,.details-page .hero-product{height:350px!important}.confirmation-page .hero-ticket{min-height:330px!important}.booking-page .step-rail{grid-template-columns:repeat(4,1fr)!important}
 .booking-page .booking-map,.booking-page .clock-visual,.booking-page .identity-visual,.details-page .sticky-machine,.details-page .included-visual{height:340px!important}.booking-page .runway-head,.booking-page .belt-head,.details-page .availability-head,.details-page .doc-head,.confirmation-page .sequence-head{display:block!important}.booking-page .runway-head>p,.booking-page .belt-head>p,.details-page .availability-head p{margin-top:14px!important}.booking-page .runway{grid-template-columns:1fr!important}.booking-page .machine:last-child{grid-column:auto!important;width:100%!important}.booking-page .scooter-art{height:240px!important}.booking-page .time-fields,.booking-page .form-line{grid-template-columns:1fr!important}.booking-page .belt-track{grid-template-columns:1fr 1fr!important}.booking-page .ticket{padding:22px!important}
 .confirmation-page .deadline-orbit{height:320px!important}.confirmation-page .deadline-line{grid-template-columns:auto 1fr auto!important}.confirmation-page .deadline-line i:nth-of-type(2),.confirmation-page .deadline-line span:last-of-type{display:none!important}.confirmation-page .amount-track{grid-template-columns:1fr!important}.confirmation-page .amount-track>i{display:none!important}.confirmation-page .pickup-sequence ol{grid-template-columns:1fr!important}.confirmation-page .pickup-sequence li:last-child{grid-column:auto!important;width:100%!important}.confirmation-page .confirmation-cta{padding:44px 18px!important}.confirmation-page .confirmation-cta-copy{grid-template-columns:1fr!important;gap:24px!important}.confirmation-page .confirmation-cta-copy>div:last-child{grid-column:1!important}.confirmation-page .agreement-paper,.confirmation-page .calendar-visual{min-height:320px!important}
 .details-page .cluster{grid-template-columns:1fr!important;min-height:500px!important}.details-page .date-strip{grid-template-columns:repeat(5,minmax(54px,1fr))!important;overflow-x:auto!important}.details-page .time-road{overflow-x:auto!important;min-width:620px!important}.details-page .availability{overflow:hidden!important;padding-inline:18px!important}.details-page .doc-track{grid-template-columns:1fr!important}.details-page .doc-step:last-child{grid-column:auto!important;width:100%!important}.details-page .sd-book{padding:44px 18px!important}.details-page .booking-copy{grid-template-columns:1fr!important;gap:18px!important}
 .dashboard-page .dash-shell{grid-template-columns:1fr!important;gap:20px!important}.dashboard-page .dash-shell>aside{position:static!important;min-height:0!important;padding:18px!important}.dashboard-page .dash-nav{display:grid!important;grid-template-columns:repeat(2,1fr)!important}.dashboard-page .dash-shell>aside>a:last-child{margin-top:16px!important}.dashboard-page .active-rental,.dashboard-page .dash-route,.dashboard-page .ops-route,.dashboard-page .dash-tools,.dashboard-page .admin-actions{grid-template-columns:1fr!important}.dashboard-page .active-rental>a,.dashboard-page .dash-tools button,.dashboard-page .admin-actions button{grid-column:auto!important}.dashboard-page .dash-metrics,.dashboard-page .ops-gauges{grid-template-columns:1fr 1fr!important}.dashboard-page .dash-route>div,.dashboard-page .ops-route>div{flex-wrap:wrap!important}.dashboard-page .dash-route i,.dashboard-page .ops-route i{width:35px!important}.dashboard-page .history-line p,.dashboard-page .fleet-line p{display:block!important}.dashboard-page .history-line p a{display:inline-block!important;margin-top:7px!important}.dashboard-page .dash-main>header h1{font-size:3rem!important}
 .coming-page main,.error-page main{min-height:0!important}.coming-page .coming-stage,.error-page .error-stage{grid-template-columns:1fr!important;gap:24px!important}.coming-page .coming-stage:after{grid-column:1!important;grid-row:auto!important;height:340px!important}.coming-page .coming-stage form{grid-template-columns:1fr!important}.error-page .error-stage>span,.error-page .error-stage h1,.error-page .error-stage p,.error-page .error-stage>a,.error-page .error-no{grid-column:1!important}.error-page .error-no{grid-row:auto!important;height:300px!important;font-size:8rem!important;order:-1!important}.error-page .error-stage h1{font-size:3rem!important}
}

@media(max-width:430px){
 .booking-page .belt-track{grid-template-columns:1fr!important}.dashboard-page .dash-metrics,.dashboard-page .ops-gauges{grid-template-columns:1fr!important}.dashboard-page .dash-nav{grid-template-columns:1fr!important}.details-page .hero-tag{padding:10px 12px!important}.details-page .hero-tag b{font-size:.95rem!important}.details-page .hero-tag span{font-size:.65rem!important}
}

@media(prefers-reduced-motion:reduce){.booking-page *,.confirmation-page *,.details-page *,.dashboard-page *,.coming-page *,.error-page *{animation:none!important;transition:none!important}}
/* Mobile dashboard compaction: keep navigation useful without consuming the whole first screen. */
@media(max-width:700px){
 .dashboard-page .dash-shell>aside>b{order:1!important}
 .dashboard-page .dash-shell>aside .dash-nav{order:2!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
 .dashboard-page .dash-shell>aside>a:last-child{order:3!important;margin-top:14px!important;padding-top:14px!important;border-top:1px solid var(--line)!important}
 .dashboard-page .dash-shell>aside .dash-nav a{padding:9px 10px!important;font-size:.86rem!important}
}
@media(max-width:430px){
 .dashboard-page .dash-shell>aside .dash-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
/* Explicit CTA grid placement keeps desktop/tablet hierarchy stable. */
@media(min-width:701px){
 .confirmation-page .confirmation-cta-copy>small,.confirmation-page .confirmation-cta-copy>h2{grid-column:1!important}
 .confirmation-page .confirmation-cta-copy>p,.confirmation-page .confirmation-cta-copy>div:last-child{grid-column:2!important}
 .details-page .sd-book .booking-copy>small,.details-page .sd-book .booking-copy>h2{grid-column:1!important}
 .details-page .sd-book .booking-copy>p,.details-page .sd-book .booking-copy>a{grid-column:2!important}
}
.details-page .hero-product,.details-page .sticky-machine,.details-page .spec-note,.details-page .included-visual{opacity:1!important;visibility:visible!important}
/* Keep the approved Ridey yellow as the single accent in both themes. */
html[data-theme=dark]{--primary:#14b8a6!important}
.booking-page .map-status small,.booking-page .runway-read small,.booking-page .ticket-top b,.booking-page .ticket-total strong,.booking-page .deposit-line strong{color:var(--primary)!important}
.confirmation-page .mobility-receipt footer strong{color:var(--primary)!important}
.details-page{--sd-accent:var(--primary)!important}
.dashboard-page .dash-main a{color:var(--fg)!important}
.dashboard-page .active-rental>a{color:#111!important}
html[data-theme=dark] .booking-page [class*="primary"],html[data-theme=dark] .confirmation-page [class*="primary"],html[data-theme=dark] .details-page [class*="primary"],html[data-theme=dark] .dashboard-page [class*="primary"],html[data-theme=dark] .coming-page [class*="primary"],html[data-theme=dark] .error-page [class*="primary"],html[data-theme=dark] .header .primary{--primary:#14b8a6!important}

/* Dashboard-only layout repairs; existing content and behaviour are retained. */
body.dashboard-page::before,body.dashboard-page::after{content:none!important;display:none!important;background:none!important;animation:none!important}
.dashboard-page main,.dashboard-page .dash-shell,.dashboard-page .dash-main{background-image:none!important}
.dashboard-page .dash-shell{padding-block:32px 56px!important;align-items:start!important;gap:28px!important}
.dashboard-page .dash-shell>aside{position:static!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;background:transparent!important;padding:20px!important}
.dashboard-page .dash-shell>aside>a:last-child{margin-top:20px!important;padding-top:16px!important;border-top:1px solid var(--line)!important}
.dashboard-page .dash-main{padding:0!important;width:100%;min-width:0!important}
.dashboard-page .dash-main>header{padding:4px 0 24px!important}
.dashboard-page .dash-main>header h1{font-size:clamp(2.3rem,4vw,3.2rem)!important;line-height:1.12!important}
.dashboard-page .dash-main>section{padding:24px 0!important}
.dashboard-page .dash-main>section>*{min-width:0;max-width:100%}
.dashboard-page .dash-nav{grid-template-columns:minmax(0,1fr)!important;columns:auto!important}
.dashboard-page .dash-nav a{border-left:0!important;border-bottom:0!important;border-inline-start:3px solid transparent!important;transform:none!important;overflow-wrap:anywhere;line-height:1.4!important;padding:9px 10px!important}
.dashboard-page .dash-nav a.active,.dashboard-page .dash-nav a:hover,.dashboard-page .dash-nav a:focus-visible{border-inline-start-color:var(--primary)!important}
.dashboard-page .dash-main section div>span{color:var(--muted)!important;letter-spacing:0!important}
.dashboard-page .dash-main h2{line-height:1.2!important}
.dashboard-page .active-rental{grid-template-columns:minmax(0,1fr) auto auto!important;gap:20px!important}
.dashboard-page .active-rental>a{grid-column:auto!important;justify-self:start!important;white-space:nowrap!important}
.dashboard-page .active-rental h2,.dashboard-page .dash-route h2{font-size:1.6rem!important}
.dashboard-page .active-rental .countdown{font-size:clamp(1.8rem,2.8vw,2.4rem)!important;animation:none!important;white-space:nowrap}
.dashboard-page .dash-metrics,.dashboard-page .ops-gauges{gap:12px!important}
.dashboard-page .dash-metrics>div,.dashboard-page .ops-gauges>div{padding:16px!important;background:transparent!important;min-width:0;min-height:110px!important;gap:12px!important}
.dashboard-page .dash-metrics b,.dashboard-page .ops-gauges b{font-size:clamp(1.5rem,2.3vw,1.9rem)!important;white-space:nowrap}
.dashboard-page .dash-metrics span,.dashboard-page .ops-gauges span{font-size:.85rem!important;line-height:1.45!important}
.dashboard-page .dash-route,.dashboard-page .ops-route{grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
.dashboard-page .dash-route>span,.dashboard-page .ops-route>span{margin:0!important}
.dashboard-page .dash-route h2{margin:0!important}
.dashboard-page .dash-route>div,.dashboard-page .ops-route>div{width:100%;max-width:520px!important;min-width:0;flex-wrap:nowrap!important;gap:12px!important}
.dashboard-page .dash-route i,.dashboard-page .ops-route i{min-width:16px!important;flex:1!important;width:auto!important}
.dashboard-page .dash-route b,.dashboard-page .ops-route b{font-size:.95rem!important}
.dashboard-page .extend-panel{grid-template-columns:minmax(100px,1fr) auto auto!important;gap:16px!important}
.dashboard-page .extend-panel>span{margin:0!important}
.dashboard-page .extend-panel strong{font-size:1rem!important;white-space:nowrap}
.dashboard-page .extend-panel input{min-width:0!important;margin:0!important}
.dashboard-page .extend-panel button{grid-column:auto!important;justify-self:start!important}
.dashboard-page .dash-feedback:empty{display:none!important}
.dashboard-page .dash-feedback{color:var(--fg)!important;font-size:.9rem;letter-spacing:0}
.dashboard-page .dash-tools,.dashboard-page .admin-actions{grid-template-columns:115px minmax(0,1fr) auto!important;gap:16px!important}
.dashboard-page .dash-tools h2,.dashboard-page .admin-actions h2{font-size:1.25rem!important}
.dashboard-page .dash-tools button,.dashboard-page .admin-actions button{grid-column:auto!important;justify-self:start!important;white-space:normal!important;text-align:start!important;max-width:100%!important}
.dashboard-page .dash-tools button,.dashboard-page .admin-actions button,.dashboard-page .extend-panel button,.dashboard-page .active-rental>a{font-size:.9rem!important;line-height:1.4!important;display:inline-flex!important;align-items:center!important}
.dashboard-page .history-line p,.dashboard-page .fleet-line p{border-bottom:0!important;line-height:1.6!important;align-items:center!important;flex-wrap:wrap!important}
.dashboard-page .history-line p:last-child,.dashboard-page .fleet-line p:last-child{padding-bottom:0!important}
.dashboard-page .dash-toast{max-width:calc(100vw - 36px)!important;inset-inline-end:18px!important;inset-inline-start:auto!important}
@media(max-width:1150px){
 .dashboard-page .dash-metrics,.dashboard-page .ops-gauges{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .dashboard-page .dash-tools,.dashboard-page .admin-actions{grid-template-columns:minmax(0,1fr) auto!important}
 .dashboard-page .dash-tools>span,.dashboard-page .admin-actions>span{grid-column:1/-1!important}
 .dashboard-page .extend-panel{grid-template-columns:minmax(0,1fr) auto!important}
 .dashboard-page .extend-panel button{grid-column:1/-1!important}
 .dashboard-page .active-rental{grid-template-columns:minmax(0,1fr) auto!important}
 .dashboard-page .active-rental>a{grid-column:1/-1!important}
}
@media(max-width:980px){
 .dashboard-page .dash-shell{grid-template-columns:minmax(0,1fr)!important;gap:28px!important;padding-block:28px 40px!important}
 .dashboard-page .dash-shell>aside .dash-nav{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
 .dashboard-page .dash-main>header{padding-top:0!important}
}
@media(max-width:700px){
 .dashboard-page .dash-shell>aside{padding:16px!important}
 .dashboard-page .dash-shell>aside .dash-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .dashboard-page .dash-shell>aside .dash-nav a{font-size:.82rem!important}
 .dashboard-page .active-rental,.dashboard-page .extend-panel,.dashboard-page .dash-tools,.dashboard-page .admin-actions{grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
 .dashboard-page .active-rental>a,.dashboard-page .extend-panel button,.dashboard-page .dash-tools button,.dashboard-page .admin-actions button{grid-column:1!important}
 .dashboard-page .dash-main>header h1{font-size:clamp(2rem,7.5vw,2.8rem)!important}
 .dashboard-page .dash-main>section{padding-block:20px!important}
 .dashboard-page .dash-metrics,.dashboard-page .ops-gauges{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
 .dashboard-page .dash-metrics>div,.dashboard-page .ops-gauges>div{padding:14px!important}
 .dashboard-page .ops-route>div{gap:8px!important}
 .dashboard-page .ops-route b{font-size:.78rem!important}
 .dashboard-page .history-line p,.dashboard-page .fleet-line p{display:flex!important;gap:8px 16px!important}
 .dashboard-page .history-line p a{margin:0!important}
}
/* Keep navigation order and labels consistent at every breakpoint. */
.dashboard-page .dash-shell>aside>b{order:0!important}
.dashboard-page .dash-shell>aside .dash-nav{order:1!important}
.dashboard-page .dash-shell>aside>a:last-child{order:2!important}
.dashboard-page .dash-tools,.dashboard-page .admin-actions{grid-template-columns:150px minmax(0,1fr) auto!important}
.dashboard-page .dash-tools>span,.dashboard-page .admin-actions>span{overflow-wrap:normal!important;word-break:normal!important}
.dashboard-page .analytics-road .bars{padding-inline:0!important;gap:12px!important}
.dashboard-page .analytics-road .bars i{max-width:none!important;width:0!important}
.dashboard-page .analytics-road small{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important;text-align:center!important}
@media(max-width:1150px){.dashboard-page .dash-tools,.dashboard-page .admin-actions{grid-template-columns:minmax(0,1fr) auto!important}}
@media(max-width:700px){.dashboard-page .dash-tools,.dashboard-page .admin-actions{grid-template-columns:minmax(0,1fr)!important}}
/* Keep the dashboard sidebar in view while the main content scrolls. */
body.dashboard-page{overflow-x:clip!important}
@media(min-width:981px){
 .dashboard-page .dash-shell>aside{position:sticky!important;top:100px!important;align-self:start!important;max-height:calc(100dvh - 120px)!important;overflow-y:auto!important;scrollbar-width:thin}
}
