/*
 * Test-only sky + mint colour direction.
 * Layout, typography and behaviour intentionally stay unchanged.
 */

body.ember-page{
  --sky-700:#087fc5;
  --sky-800:#0568a5;
  --sky-100:#dff3ff;
  --sky-050:#f3fbff;
  --mint-500:#0aae83;
  --mint-400:#7ce5b0;
  --mint-200:#bdf3d5;
  --mint-100:#e9fbf2;
  --mint-ink:#0f583e;
  --accent-a:#118fe7;
  --accent-b:#08aa82;
  --accent-hover-a:#087bc8;
  --accent-hover-b:#078f70;
  --accent-gradient:linear-gradient(118deg,var(--accent-a) 0%,#0c98cb 48%,var(--accent-b) 100%);
  --accent-gradient-hover:linear-gradient(118deg,var(--accent-hover-a) 0%,#087fb0 48%,var(--accent-hover-b) 100%);
  --ui-blue:var(--sky-700);
  --signal-blue:var(--sky-700);
  --green:var(--sky-700);
  --lime:var(--mint-100);
  --planner-blue:var(--sky-700);
  --planner-coral:var(--sky-700);
  --ui-amber:var(--mint-400);
  --amber-alert:var(--mint-400);
  accent-color:var(--sky-700);
}
body.ember-page :is(form,dialog,.traveller-party-picker,.quick-builder,.smart-result-modal){
  --ui-blue:var(--sky-700);
  --signal-blue:var(--sky-700);
  --planner-blue:var(--sky-700);
  --planner-coral:var(--sky-700);
  --green:var(--sky-700);
  --lime:var(--mint-100);
}

/* Brand and editorial accents. */
body.ember-page .e-nav .e-brand{
  gap:10px;
}
body.ember-page .e-nav .e-brand-mark{
  display:block;
  width:44px;
  height:34px;
  flex:0 0 44px;
  object-fit:contain;
}
body.ember-page .e-nav .e-brand-word{
  display:inline-flex;
  align-items:baseline;
  gap:7px;
  min-width:0;
}
body.ember-page .e-nav .e-brand,
body.ember-page .e-brand-travel,
body.ember-page .e-hero h1 span,
body.ember-page :is(.e-heading,.e-walk-copy,.walking-builder-copy) h2 em{
  color:var(--sky-700);
}
body.ember-page .e-brand .e-brand-step{
  background:linear-gradient(110deg,#087fc5 4%,#1198d1 48%,#08a77f 96%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:var(--sky-700);
  box-shadow:none;
}
body.ember-page .e-hero h1 span,
body.ember-page :is(.e-heading,.e-walk-copy,.walking-builder-copy) h2 em{
  color:var(--sky-700);
  background:linear-gradient(110deg,#087fc5 4%,#1198d1 48%,#08a77f 96%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
body.ember-page .e-brand .e-brand-step::after,
body.ember-page .e-hero h1 span::after,
body.ember-page :is(.e-heading,.e-walk-copy,.walking-builder-copy) h2 em::after{
  background:linear-gradient(110deg,#087fc5 4%,#1198d1 48%,#08a77f 96%);
}
@media(max-width:650px){
  body.ember-page .e-nav .e-brand{gap:8px}
  body.ember-page .e-nav .e-brand-mark{width:37px;height:29px;flex-basis:37px}
  body.ember-page .e-nav .e-brand-word{gap:6px}
}

/* Primary controls keep a clear, accessible action colour. */
body.ember-page :is(.e-btn.primary,.trip-launcher-submit,.back-to-top),
body.ember-page .smart-budget-adjustment button:first-child,
body.ember-page .smart-package-action,
body.ember-page .traveller-party-picker .traveller-party-done,
body.ember-page :is(#trip-walk-form,#standalone-walk) #generate-route{
  background:var(--accent-gradient)!important;
  background-size:135% 135%!important;
  background-position:0 50%!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 10px 25px rgba(17,143,231,.24),0 0 0 4px rgba(124,229,176,.10)!important;
}
/* Match the deliberately high-specificity shared button rule in the base skin. */
body.ember-page :is(.e-btn,.trip-launcher-submit,#trip-build-walk,#trip-nearby-map,#retry-flight-location,.walk-bot-link,#open-google-route,#route-trial-bot,#route-error-close,.cookie-accept,.cookie-reject,.cookie-settings):not(.e-walking-button),
body.ember-page :is(#trip-walk-form,#standalone-walk) #generate-route,
body.ember-page .e-shell #trip-launcher .trip-launcher-submit{
  background:var(--accent-gradient)!important;
  background-size:135% 135%!important;
  background-position:0 50%!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 10px 25px rgba(17,143,231,.24),0 0 0 4px rgba(124,229,176,.10)!important;
  transition:background-position .24s ease,box-shadow .24s ease,filter .24s ease!important;
}
body.ember-page :is(.e-btn.primary,.trip-launcher-submit,.back-to-top):hover,
body.ember-page .traveller-party-picker .traveller-party-done:hover,
body.ember-page :is(#trip-walk-form,#standalone-walk) #generate-route:hover{
  background:var(--accent-gradient-hover)!important;
  background-position:100% 50%!important;
  border-color:transparent!important;
  box-shadow:0 12px 30px rgba(8,127,197,.28),0 0 0 6px rgba(124,229,176,.12)!important;
}
body.ember-page :is(.e-btn,.trip-launcher-submit,#trip-build-walk,#trip-nearby-map,#retry-flight-location,.walk-bot-link,#open-google-route,#route-trial-bot,#route-error-close,.cookie-accept,.cookie-reject,.cookie-settings):not(.e-walking-button):hover,
body.ember-page .e-shell #trip-launcher .trip-launcher-submit:hover{
  background:var(--accent-gradient-hover)!important;
  background-position:100% 50%!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 12px 30px rgba(8,127,197,.28),0 0 0 6px rgba(124,229,176,.12)!important;
}
body.ember-page #trip-launcher .trip-launcher-submit[aria-busy="true"]{
  background:var(--accent-gradient-hover)!important;
}

/* Secondary actions and active states. */
body.ember-page :is(.back-to-smart-results,.smart-result-again,.smart-budget-adjustment button),
body.ember-page .e-nav .e-header-actions a.e-walking-button{
  border-color:transparent!important;
  background:linear-gradient(#fff,#fff) padding-box,var(--accent-gradient) border-box!important;
  color:var(--sky-700)!important;
  box-shadow:0 8px 24px rgba(8,127,197,.10),0 0 20px rgba(124,229,176,.08)!important;
}
body.ember-page :is(.back-to-smart-results,.smart-result-again):is(:hover,:focus-visible),
body.ember-page .e-nav .e-header-actions a.e-walking-button:is(:hover,:active,:focus-visible){
  background:var(--accent-gradient)!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 12px 30px rgba(8,127,197,.25),0 0 0 6px rgba(124,229,176,.11)!important;
}

/* Text links, small indicators and focus rings. */
body.ember-page :is(.e-nav nav a,.e-footer a,.e-footer button,.e-footer nav .privacy-open):hover,
body.ember-page .e-smart-peek button:hover,
body.ember-page .e-smart-peek i,
body.ember-page .e-example-links i,
body.ember-page .smart-result-head span,
body.ember-page .smart-package-index,
body.ember-page .smart-package summary::after,
body.ember-page #route-result #route-trial-bot>span{
  color:var(--sky-700)!important;
}
body.ember-page :is(.e-brand,.e-btn,.privacy-close,.back-to-top,.hotel-preferences-toggle,.smart-result-close,.smart-budget-adjustment button,.e-smart-peek button,.e-smart-back,.e-faq-list summary):focus-visible,
body.ember-page :is(.e-nav,.e-footer) nav :is(a,button):focus-visible,
body.ember-page .traveller-party-picker :is(button,select):focus-visible{
  outline-color:var(--sky-700)!important;
}

/* Mint is deliberately used as a soft signal, not as a competing CTA. */
body.ember-page .e-tag i,
body.ember-page .e-path:before,
body.ember-page .smart-package-index i,
body.ember-page .smart-package-detail li::before,
body.ember-page .e-example-links>div:after{
  background:var(--mint-400);
}
body.ember-page .e-example-links>div:after{
  box-shadow:12px -12px 0 rgba(158,223,184,.36),-12px 12px 0 rgba(93,173,226,.24);
}
body.ember-page .smart-package-index i{
  box-shadow:0 0 0 5px rgba(158,223,184,.20);
}
body.ember-page .e-step>span,
body.ember-page .trip-preference-options input:checked+span,
body.ember-page :is(#trip-walk-form,#standalone-walk) .free-route-badge,
body.ember-page :is(#trip-walk-form,#standalone-walk) :is(.builder-options input:checked+span,.builder-places input:checked+span,.start-method.active){
  background:var(--mint-100)!important;
  border-color:var(--mint-400)!important;
  color:var(--mint-ink)!important;
}
body.ember-page .date-picker-head button,
body.ember-page .date-picker-days button:hover:not(:disabled){
  background:var(--mint-100)!important;
}

/* Search halo and content surfaces. */
body.ember-page .e-form{
  border:1px solid transparent;
  background:linear-gradient(#fff,#fff) padding-box,linear-gradient(112deg,rgba(17,143,231,.48),rgba(124,229,176,.62),rgba(17,143,231,.18)) border-box;
  box-shadow:0 20px 52px rgba(38,38,38,.085),0 8px 30px rgba(17,143,231,.10),0 0 34px rgba(124,229,176,.08);
}
body.ember-page .e-form:before{
  content:none;
}
body.ember-page .quick-builder{
  border:1px solid transparent!important;
  background:linear-gradient(#fff,#fff) padding-box,linear-gradient(118deg,rgba(17,143,231,.30),rgba(124,229,176,.44),rgba(17,143,231,.12)) border-box!important;
  box-shadow:0 22px 58px rgba(38,38,38,.08),0 8px 30px rgba(17,143,231,.08),0 0 28px rgba(124,229,176,.07)!important;
}
body.ember-page .quick-builder:before{background:linear-gradient(105deg,rgba(17,143,231,.08),rgba(124,229,176,.15))}
body.ember-page .e-example-links:after{
  background:radial-gradient(ellipse at 85% 50%,rgba(93,173,226,.16),transparent 38%);
}

/* Interactive panels, pickers and smart results. */
body.ember-page .e-smart-peek #open-smart-trip{
  color:var(--sky-700)!important;
  background:transparent!important;
  -webkit-background-clip:border-box;
  background-clip:border-box;
  -webkit-text-fill-color:currentColor;
  box-shadow:inset 0 -1px 0 rgba(8,127,197,.48)!important;
}
body.ember-page .e-smart-peek #open-smart-trip>span{
  color:var(--sky-700);
  background:linear-gradient(100deg,var(--sky-700),var(--mint-500));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
body.ember-page .e-smart-peek #open-smart-trip>i{
  color:var(--mint-500)!important;
  -webkit-text-fill-color:var(--mint-500);
}
body.ember-page .e-smart-peek #open-smart-trip[aria-expanded="true"]{
  color:var(--sky-700)!important;
  background:transparent!important;
  box-shadow:inset 0 -1px 0 rgba(8,127,197,.48)!important;
}
body.ember-page .e-smart-peek #open-smart-trip:is(:hover,:focus-visible),
body.ember-page .e-smart-peek #open-smart-trip[aria-expanded="true"]:is(:hover,:focus-visible){
  color:var(--sky-800)!important;
  background:transparent!important;
  box-shadow:inset 0 -2px 0 var(--mint-400)!important;
}
body.ember-page .e-smart-peek #open-smart-trip:is(:hover,:focus-visible)>span,
body.ember-page .e-smart-peek #open-smart-trip[aria-expanded="true"]:is(:hover,:focus-visible)>span{
  background:linear-gradient(100deg,var(--sky-800),#0788b3 48%,var(--mint-500));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}
body.ember-page #smart-trip-form textarea:focus{box-shadow:0 1px var(--sky-700)}
body.ember-page .e-smart-form textarea:focus{outline-color:var(--sky-700)}
body.ember-page #smart-trip-status{
  background:var(--sky-050);
  border-left-color:var(--sky-700);
  color:var(--sky-700);
}
body.ember-page .smart-package.is-primary-match{
  background:linear-gradient(180deg,var(--sky-050),#fff 34%);
  box-shadow:inset 0 3px 0 var(--sky-700);
}
body.ember-page .smart-package:hover{background:var(--sky-050)}
body.ember-page .smart-package-fare{
  background:linear-gradient(100deg,rgba(223,243,255,.72),rgba(233,251,242,.82));
}
body.ember-page .smart-package-fare span,
body.ember-page .smart-budget-adjustment>span,
body.ember-page .e-smart-heading span,
body.ember-page .e-smart-back,
body.ember-page .hotel-preferences-toggle>span,
body.ember-page .hotel-preferences-toggle>i{
  color:var(--sky-700);
}
body.ember-page .smart-budget-adjustment{
  border-color:rgba(124,229,176,.72);
  background:linear-gradient(105deg,var(--sky-050),var(--mint-100));
}
body.ember-page :is(.trip-result-close,#route-result .route-result-close,.privacy-close):is(:hover,:focus-visible),
body.ember-page :is(#trip-build-walk,#trip-nearby-map,#retry-flight-location,.walk-bot-link,#open-google-route):is(:hover,:focus-visible),
body.ember-page :is(#trip-walk-form,#standalone-walk) #generate-route:is(:hover,:focus-visible){
  background:var(--mint-100)!important;
  border-color:var(--mint-400)!important;
  color:var(--mint-ink)!important;
}
body.ember-page #trip-result .trip-result-actions>a:not([aria-disabled="true"]):is(:hover,:focus-visible,[aria-expanded="true"]){
  background:var(--sky-050)!important;
  border-left-color:var(--sky-700);
  color:var(--sky-700)!important;
}
body.ember-page #trip-result .trip-result-actions>a:not([aria-disabled="true"]):is(:hover,:focus-visible,[aria-expanded="true"])>.e-service-icon{
  color:var(--sky-700);
}
body.ember-page #trip-result .trip-result-actions>a:focus-visible{
  outline-color:var(--sky-700);
}

/* Traveller controls. */
body.ember-page .traveller-party-picker .traveller-counter button{color:var(--sky-700)}
body.ember-page .traveller-party-picker .traveller-counter button:hover:not(:disabled){
  border-color:var(--sky-700);
  background:var(--sky-050);
  color:var(--sky-700);
}
body.ember-page .traveller-party-picker{
  border:1px solid transparent;
  background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,rgba(17,143,231,.48),rgba(124,229,176,.62)) border-box;
  box-shadow:0 28px 78px rgba(23,74,105,.20),0 8px 28px rgba(17,143,231,.10),0 0 34px rgba(124,229,176,.10);
}

/* No legacy coral/orange remains in interactive form states. */
body.ember-page :is(.hotel-preferences-toggle,.hotel-preference-grid select):is(:hover,:focus){
  border-color:var(--sky-700)!important;
  background-color:var(--sky-050)!important;
}
body.ember-page .e-smart-note{border-left-color:var(--mint-400)}
body.ember-page .hotel-preference-grid select:focus-visible{
  box-shadow:0 0 0 3px rgba(17,143,231,.16)!important;
}
body.ember-page .smart-result-close:is(:hover,:focus-visible){
  border-color:var(--mint-400)!important;
  background:var(--mint-100)!important;
  color:var(--mint-ink)!important;
}
body.ember-page :is(.trip-launcher-field,input,select,textarea):focus-visible{
  outline-color:var(--sky-700);
}
body.ember-page .trip-launcher-field :is(input,select):focus{
  box-shadow:0 2px 0 var(--sky-700)!important;
}

/* Diagram and supporting modules. */
body.ember-page .e-step:not(:last-child):after{
  background:linear-gradient(90deg,var(--sky-700),var(--mint-200),#e5e7eb);
}
body.ember-page .e-route path{stroke:var(--sky-700)}
body.ember-page .e-route circle{stroke:var(--mint-400)}
body.ember-page :is(.e-affiliate-note,.e-trip-extra){border-left-color:var(--sky-700)}
body.ember-page .e-trip-extra-copy>span{color:var(--sky-700)}
body.ember-page .e-faq-list summary:hover,
body.ember-page .e-faq-list details[open] summary{
  background:var(--sky-050);
  color:var(--sky-700);
}
body.ember-page .e-faq-list summary i:before,
body.ember-page .e-faq-list summary i:after{background:var(--sky-700)}
body.ember-page .e-faq-list details[open] summary i{border-color:var(--sky-700)}

body.ember-page dialog{
  --planner-blue:var(--sky-700);
  --planner-coral:var(--sky-700);
  --signal-blue:var(--sky-700);
  --ui-blue:var(--sky-700);
  --green:var(--sky-700);
  --lime:var(--mint-100);
}
body.ember-page :is(#trip-walk-form,#standalone-walk) #route-builder{
  --green:var(--sky-700);
  --lime:var(--mint-100);
  --ui-blue:var(--sky-700);
}

body.ember-page :is(.e-affiliate-note,.e-trip-extra){
  background:linear-gradient(100deg,rgba(243,251,255,.72),rgba(233,251,242,.46),#fff 72%);
}

@media(max-width:650px){
  body.ember-page .e-form{
    box-shadow:0 16px 40px rgba(38,38,38,.09),0 7px 24px rgba(17,143,231,.10),0 0 24px rgba(124,229,176,.08);
  }
}

/* Keep glow exclusive to the main search form until a pointer actually hovers a button. */
body.ember-page #smart-trip-status{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.ember-page button:not(#open-smart-trip),
body.ember-page a.e-btn,
body.ember-page a.header-button,
body.ember-page a.primary-button,
body.ember-page a.maps-link,
body.ember-page a.footer-bot,
body.ember-page a.back-to-top,
body.ember-page a.walk-bot-link,
body.ember-page a.smart-package-action,
body.ember-page #trip-result .trip-result-actions>a,
body.ember-page .e-shell #trip-launcher .trip-launcher-submit,
body.ember-page .e-shell #trip-launcher .trip-launcher-submit[aria-busy="true"],
body.ember-page .e-nav .e-header-actions a.e-walking-button,
body.ember-page .traveller-party-picker .traveller-party-done,
body.ember-page :is(#trip-walk-form,#standalone-walk) #generate-route{
  box-shadow:none!important;
  filter:none!important;
  text-shadow:none!important;
}
@media(hover:hover) and (pointer:fine){
  body.ember-page button:not(#open-smart-trip):not(.privacy-open):not(.date-picker-trigger):not(.traveller-picker-trigger):hover,
  body.ember-page a.e-btn:hover,
  body.ember-page a.header-button:hover,
  body.ember-page a.primary-button:hover,
  body.ember-page a.maps-link:hover,
  body.ember-page a.footer-bot:hover,
  body.ember-page a.back-to-top:hover,
  body.ember-page a.walk-bot-link:hover,
  body.ember-page a.smart-package-action:hover,
  body.ember-page #trip-result .trip-result-actions>a:hover,
  body.ember-page .e-shell #trip-launcher .trip-launcher-submit:hover,
  body.ember-page .e-nav .e-header-actions a.e-walking-button:hover,
  body.ember-page .traveller-party-picker .traveller-party-done:hover,
  body.ember-page :is(#trip-walk-form,#standalone-walk) #generate-route:hover{
    box-shadow:0 9px 24px rgba(8,127,197,.20),0 0 0 4px rgba(124,229,176,.10)!important;
  }
  body.ember-page .e-shell #trip-launcher button:is(.date-picker-trigger,.traveller-picker-trigger):hover{
    background:transparent!important;
    box-shadow:none!important;
    filter:none!important;
    text-shadow:none!important;
  }
  body.ember-page :is(#trip-walk-form,#standalone-walk) #generate-route:hover{
    background:var(--accent-gradient-hover)!important;
    background-size:135% 135%!important;
    background-position:100% 50%!important;
    border-color:transparent!important;
    color:#fff!important;
  }
}
/* Footer navigation stays a text link: no button surface or glow on hover. */
body.ember-page .e-footer nav .privacy-open,
body.ember-page .e-footer nav .privacy-open:is(:hover,:active,:focus-visible){
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:none!important;
  text-shadow:none!important;
  transform:none!important;
}
body.ember-page .quick-builder{
  box-shadow:0 18px 48px rgba(38,38,38,.08)!important;
}
