/* Targeted controls loaded after the preserved hosting-only premium theme.
   This is a direct-served source asset; Laravel Mix does not build it. */
.custom-header .custom-nav > a.custom-btn,
.custom-header .custom-nav > a.custom-btn.is-active,
.city-page .city-btn.city-btn-primary {
    color: #ffffff !important;
    background: linear-gradient(135deg, #c21868, #6d28d9) !important;
    filter: none !important;
}

.custom-header .custom-nav > a.custom-btn:hover,
.custom-header .custom-nav > a.custom-btn:active,
.custom-header .custom-nav > a.custom-btn:focus-visible,
.city-page .city-btn.city-btn-primary:hover,
.city-page .city-btn.city-btn-primary:active,
.city-page .city-btn.city-btn-primary:focus-visible {
    color: #ffffff !important;
    background: linear-gradient(135deg, #a81359, #5b21b6) !important;
    filter: none !important;
}

.custom-header .custom-header-call,
.custom-header .custom-menu-toggle {
    color: #4b1761 !important;
    background: #fff6fb !important;
}

.custom-header .custom-header-call:hover,
.custom-header .custom-header-call:active,
.custom-header .custom-menu-toggle:hover,
.custom-header .custom-menu-toggle:active {
    color: #24102f !important;
    background: #f7f1ff !important;
}

.custom-header .custom-nav > a:focus-visible,
.custom-header .custom-header-call:focus-visible,
.custom-header .custom-menu-toggle:focus-visible {
    outline: 3px solid #24102f !important;
    outline-offset: 3px;
}

/* The theme's :where() foreground loses to city-btn-ghost's !important white. */
.city-page .city-btn.city-btn-ghost,
.city-page .city-btn.city-btn-ghost:active {
    color: #4b1761 !important;
    background: #f8f1ff !important;
    border-color: #6d28d9 !important;
}

.city-page .city-btn.city-btn-ghost:hover,
.city-page .city-btn.city-btn-ghost:focus-visible {
    color: #24102f !important;
    background: #eadcf3 !important;
}

.city-page .city-btn.city-btn-ghost:focus-visible,
.city-page .city-btn.city-btn-primary:focus-visible {
    outline: 3px solid #24102f !important;
    outline-offset: 3px;
    box-shadow: 0 0 0 6px #ffffff;
}

/* Keep the vehicle detail link readable on the existing dark fare card. */
.price-page .hero-price-note > a,
.price-page .hero-price-note > a:hover,
.price-page .hero-price-note > a:active,
.price-page .hero-price-note > a:focus-visible {
    color: #ffffff !important;
    text-decoration: underline;
    text-underline-offset: .15em;
}

.price-page .hero-price-note > a:focus-visible {
    outline: 3px solid #ffffff !important;
    outline-offset: 3px;
}

@media (forced-colors: active) {
    .custom-header .custom-nav > a.custom-btn,
    .city-page .city-btn.city-btn-primary,
    .city-page .city-btn.city-btn-ghost {
        border: 2px solid ButtonText !important;
    }
}
