/* Operate refinement of the existing EasyVisa Ocean identity. */
:root{--ev-safe-top:0px;--ev-safe-bottom:0px;--ev-keyboard:0px}
body{padding-top:max(env(safe-area-inset-top),var(--ev-safe-top))}.topbar{top:max(env(safe-area-inset-top),var(--ev-safe-top))}
.client-next{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;background:var(--ocean-soft);border:1px solid var(--line);border-radius:var(--radius);margin:0 0 20px}
.client-next h2{font-size:19px;margin:0 0 6px}.client-next p{font-size:14px;margin:0;color:var(--ink)}
.client-next.success{background:var(--emerald-soft)}.client-next.attention{background:var(--coral-soft)}
.home-heading h1{font-size:32px}.home-heading{margin-bottom:20px}.service-launchers{margin-bottom:24px}.service-launchers>a{min-height:70px}
.home-secondary{margin-top:40px}.home-secondary .travel-overview{margin-bottom:18px}
.flow-heading h1{font-size:30px;margin-bottom:8px}.flow-heading p{color:var(--muted);font-size:14px}
.booking-trip-strip{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding:0 0 20px;margin:0 0 24px}
.booking-trip-strip>div{display:grid;gap:4px}.booking-trip-strip strong{font-size:16px}.booking-trip-strip span{font-size:14px}.booking-trip-strip small{font-size:12px;color:var(--muted)}
.booking-trip-strip details{max-width:46%}.booking-trip-strip summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--ocean);font-size:13px;font-weight:700}.booking-trip-strip details p{font-size:13px}.booking-trip-strip .vehicle-gallery{margin-top:12px}
.wizard-progress{margin-bottom:25px}.wizard-progress p{font-size:13px;color:var(--muted);margin-bottom:10px}.wizard-track{height:4px;border-radius:8px;background:var(--line);overflow:hidden}.wizard-track span{display:block;height:100%;background:var(--ocean);transition:width .18s ease-out}
.wizard-question{margin:26px 0}.wizard-question h2{font-size:24px;margin:0 0 10px;outline-offset:8px}.wizard-question>p{font-size:15px;color:var(--muted);line-height:1.6;max-width:48ch}.wizard-question .wizard-person-label{font-size:13px;color:var(--ocean);font-weight:700;margin-bottom:12px}
.booking-wizard.is-wizard .quick-people{padding:0;margin:0;border:0;background:none;box-shadow:none}.is-wizard .quick-person{padding:0;border:0;margin:0;min-width:0}.is-wizard .quick-person>legend,.is-wizard .quick-seat-summary{display:none}.is-wizard .booking-seat-picker{border:0;background:none;box-shadow:none;padding:0;margin:26px 0}
.is-wizard .wizard-question{min-height:240px}.booking-wizard [hidden],.journey-dock [hidden]{display:none!important}
.traveller-counter{display:flex;align-items:center;gap:26px;margin:30px 0}.traveller-counter strong{font-size:36px;min-width:90px;text-align:center;font-variant-numeric:tabular-nums}.traveller-counter .button{width:52px;height:52px;padding:0}
.is-wizard .quick-issues{display:flex;gap:8px;align-items:flex-start;min-height:44px;padding:12px 0;margin-top:20px}.quick-issues input{margin-top:3px}.wizard-risk-help{color:var(--ink);font-size:14px}
.journey-dock{margin-top:32px;padding:20px 0;border-top:1px solid var(--line);background:var(--surface)}.journey-total{display:grid;gap:3px}.journey-total>span,.journey-total>small{font-size:12px;color:var(--muted)}.journey-total strong{font-size:23px;font-variant-numeric:tabular-nums}.journey-actions{display:flex;gap:10px;margin-top:14px}.journey-actions>.button{flex:1;margin:0;min-height:50px}.dock-note{font-size:11px!important;color:var(--muted);margin:9px 0 0!important}
.checkout-seat-change{border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:18px}.checkout-seat-change>summary{display:flex;align-items:center;gap:12px;min-height:48px;font-weight:650;cursor:pointer;font-size:14px}.checkout-seat-change>summary span{margin-left:auto;color:var(--ocean)}.checkout-seat-change .booking-seat-picker{margin-top:16px}
.checkout-dock{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px}.checkout-dock>span{display:grid;gap:2px}.checkout-dock small{font-size:12px;color:var(--muted)}.checkout-dock strong{font-size:18px;font-variant-numeric:tabular-nums}
.payment-state{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;margin:0 0 20px;background:var(--ocean-soft);border:1px solid var(--line);border-radius:16px}.payment-state h2{font-size:18px;margin:0 0 5px}.payment-state p{font-size:14px;margin:0}.payment-state small{display:block;margin-top:7px;font-size:12px;color:var(--ink)}.payment-state .countdown{font-size:25px;white-space:nowrap;margin:0;font-variant-numeric:tabular-nums}
.network-notice{padding:16px;background:var(--coral-soft);border-radius:12px;margin:15px 0}.network-notice strong{font-size:18px}.network-notice p{margin:6px 0 0;font-size:13px}.payment-detail .copy-button,.copy-button{min-height:44px}.payment-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.payment-report-dock{display:flex;justify-content:flex-end;margin:20px 0}.payment-layout .payment-detail strong{font-size:16px}
.transport-start{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.transport-active{border-bottom:1px solid var(--line);padding:20px 0}.transport-active h3{margin-bottom:8px}.transport-active p{margin:4px 0;font-size:14px}.transport-active .action-bar{margin-bottom:0}.transport-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:20px 0;border-block:1px solid var(--line);margin:20px 0}.transport-stats p{margin:0;font-size:13px;color:var(--muted)}.transport-stats strong{display:block;font-size:26px;color:var(--ink)}.trip-stat-row{padding:20px 0;border-bottom:1px solid var(--line)}.trip-stat-row>div{display:flex;justify-content:space-between;gap:14px}.trip-stat-row h3{font-size:16px;margin:0 0 7px}.trip-stat-row p{font-size:13px;margin:6px 0;color:var(--muted)}.trip-stat-row strong{font-variant-numeric:tabular-nums}.trip-stat-row .badge{margin-left:8px}
@media(max-width:700px){
  .home-heading h1{font-size:28px}.home-heading .greeting{display:none}.home-heading{margin-bottom:16px}.service-launchers{margin-bottom:20px}.service-launchers>a{min-height:66px;padding:12px}.service-launchers small{display:none}.client-next{display:block;padding:18px;margin-bottom:18px}.client-next .button{margin-top:14px;width:100%}.client-next h2{font-size:18px}
  .flow-heading h1{font-size:26px}.booking-trip-strip{display:block;margin-bottom:18px;padding-bottom:12px}.booking-trip-strip details{max-width:none}.booking-trip-strip summary{min-height:40px}.booking-trip-strip .vehicle-gallery img{max-height:160px}
  .wizard-progress{margin-bottom:18px}.is-wizard .wizard-question{margin-top:18px;min-height:240px}.wizard-question h2{font-size:23px}.wizard-question>p{font-size:15px}.is-wizard input:not([type=checkbox]):not([type=hidden]),.is-wizard select,.is-wizard textarea{font-size:16px;min-height:52px}.is-wizard .booking-seat-picker{padding:0}
  body.has-journey-dock main{padding-bottom:230px}.has-journey-dock .mobile-nav,body:has([data-auto-quote]) .mobile-nav,body:has(.payment-state) .mobile-nav{display:none}
  .has-journey-dock .journey-dock{position:fixed;z-index:40;bottom:var(--ev-keyboard);left:0;right:0;padding:14px 20px calc(12px + max(env(safe-area-inset-bottom),var(--ev-safe-bottom)));margin:0;border-radius:0;box-shadow:0 -5px 22px rgb(20 34 56 / .06)}.journey-total strong{font-size:22px}.journey-total>small{display:none}.journey-actions{margin-top:10px}.journey-actions .secondary{flex:0 0 auto;padding-inline:18px}.dock-note{font-size:10px!important}
  body:has([data-auto-quote]) main{padding-bottom:160px}.checkout-dock{position:fixed;bottom:var(--ev-keyboard);left:0;right:0;z-index:40;padding:14px 20px calc(14px + max(env(safe-area-inset-bottom),var(--ev-safe-bottom)));margin:0;background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -5px 22px rgb(20 34 56 / .06)}.checkout-dock>span{min-width:110px}.checkout-dock .button{font-size:13px;min-height:50px;max-width:210px}.checkout-dock strong{font-size:16px}
  body:has(.payment-state) .topbar{position:static}.payment-state{position:sticky;top:max(env(safe-area-inset-top),var(--ev-safe-top));z-index:20;padding:13px 16px;gap:12px}.payment-state h2{font-size:16px}.payment-state p{font-size:12px}.payment-state .countdown{font-size:21px}.payment-layout{display:block}.payment-layout .surface{padding:20px}.payment-report-dock{position:sticky;bottom:var(--ev-keyboard);z-index:25;padding:12px 0 calc(12px + max(env(safe-area-inset-bottom),var(--ev-safe-bottom)));background:var(--paper)}.payment-report-dock .button{width:100%;min-height:52px}.payment-amount{font-size:31px}
  .has-native-action .journey-actions,.has-native-action .checkout-dock>.button,.has-native-action .payment-report-dock{display:none}.has-native-action .journey-dock{padding-bottom:12px}.has-native-action .dock-note{display:none}.transport-stats{gap:12px}.transport-stats strong{font-size:23px}.trip-stat-row>div{flex-wrap:wrap}.transport-start>.button{flex:1}.transport-active .action-bar>.button{flex:1}
  .mobile-nav{bottom:calc(14px + max(env(safe-area-inset-bottom),var(--ev-safe-bottom)))}.has-native-action [data-primary-action]{display:none}
}
@media(prefers-reduced-motion:reduce){.wizard-track span{transition:none}}
.express-count{display:flex;align-items:center;justify-content:space-between;gap:16px}.express-count h2{margin:0;font-size:20px}.express-count .traveller-counter{margin:8px 0;gap:14px}.express-count .traveller-counter strong{font-size:24px;min-width:60px}.express-count .traveller-counter .button{width:44px;height:44px}.express-person{border:0;background:none;padding:0;margin:8px 0;min-width:0}.express-person .quick-seat-summary{font-size:13px}.express-booking .booking-seat-picker{margin-top:14px}.express-booking .journey-total strong{font-size:22px}
.payout-summary{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0}.payout-summary>div{padding:20px 0;border-block:1px solid var(--line)}.payout-summary strong{display:block;font-size:18px;margin-bottom:10px}.payout-summary p{font-size:14px;margin:10px 0 0}.payout-compact{font-size:13px;line-height:1.9}.payout-compact a{display:inline-flex;align-items:center;min-height:44px}.payout-entry{padding:22px 0;border-bottom:1px solid var(--line)}.payout-entry>div{display:flex;justify-content:space-between;align-items:center;gap:16px}.payout-entry p{font-size:14px;margin:9px 0}.payout-form summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center}.payout-form[open] summary{margin-bottom:14px}.payout-form .form-field{min-width:0}.payout-form input,.payout-form select,.payout-form textarea{max-width:100%}
@media(max-width:700px){body:has(.express-booking) main{padding-bottom:180px}body:has(.express-booking) .mobile-nav{display:none}.express-booking .booking-seat-picker{padding:18px 10px}.express-booking .booking-trip-strip{display:block}.express-booking .journey-dock{display:flex;align-items:center;justify-content:space-between;gap:12px}.express-booking .journey-actions{margin:0}.express-booking .journey-actions>.button{min-width:152px;padding-inline:14px}.express-booking .journey-total>small{max-width:18ch}.payout-summary{grid-template-columns:1fr;gap:0}.payout-summary>div+div{border-top:0}.payout-form input,.payout-form select,.payout-form textarea{font-size:16px}}

@media(max-width:700px){
  .checkout-pay{padding:20px}.checkout-pay h2{margin-bottom:12px}.checkout-pay .price-total{padding:14px 0;margin-bottom:16px}.checkout-pay .price-line{padding-top:0}.checkout-pay .payment-methods{margin-top:12px}
  body:has(.payment-state) main{padding-bottom:170px}.payment-report-dock{position:fixed;left:0;right:0;margin:0;padding-inline:20px;border-top:1px solid var(--line)}
}
