
/*
 * Towing Marketplace final brand palette.
 *
 * Primary:       #FF7A00
 * Primary hover: #FF8F26
 * Secondary:     #081521
 */
:root {
    --tm-primary: #FF7A00;
    --tm-primary-hover: #FF8F26;
    --tm-primary-soft: rgba(255,122,0,0.12);
    --tm-primary-light: rgba(255,122,0,0.12);
    --tm-primary-border: rgba(255,122,0,0.22);
    --tm-primary-glow: rgba(255,122,0,0.14);
    --tm-accent: #FF7A00;
    --tm-dark: #081521;
    --tm-secondary: #081521;
    --tm-slate: rgba(255,255,255,0.72);
    --tm-background: #081521;
    --tm-surface: rgba(255,255,255,0.05);
    --tm-card-background: rgba(255,255,255,0.05);
    --tm-active-card-background: rgba(255,255,255,0.07);
    --tm-text: #FFFFFF;
    --tm-main-text: #FFFFFF;
    --tm-secondary-text: rgba(255,255,255,0.72);
    --tm-muted: rgba(255,255,255,0.62);
    --tm-border: rgba(255,255,255,0.08);
    --tm-strong-border: rgba(255,255,255,0.12);
    --tm-success: #22C55E;
    --tm-warning: #F59E0B;
    --tm-danger: #EF4444;
    --tm-shadow-sm: 0 8px 22px rgba(255,122,0,0.08);
    --tm-shadow-md: 0 18px 45px rgba(255,122,0,0.14);
}

/* Public marketplace page shells */
:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page
) {
    background: #081521 !important;
    color: #FFFFFF !important;
}

/* Main headings and important labels */
:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page,
    .tm-billing-provider,
    .tm-fleet,
    .tm-driver-dashboard,
    .tm-chat-center,
    .tm-notification-center,
    .tm-performance-provider,
    .tm-provider-marketplace-payments,
    .tm-marketplace-payment-card,
    .tm-ops-overview,
    .tm-ops-jobs
) :where(h1, h2, h3, h4, h5, h6, strong, b, legend, summary) {
    color: #FFFFFF !important;
}

/* Secondary and muted copy */
:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page,
    .tm-billing-provider,
    .tm-fleet,
    .tm-driver-dashboard,
    .tm-chat-center,
    .tm-notification-center,
    .tm-performance-provider,
    .tm-provider-marketplace-payments,
    .tm-marketplace-payment-card,
    .tm-ops-overview,
    .tm-ops-jobs
) :where(p, small, dt, label, .description, [class*="-subtitle"], [class*="-meta"], [class*="-muted"]) {
    color: rgba(255,255,255,0.72) !important;
}

/* Transparent dark-theme cards, sections, panels and list items */
:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page,
    .tm-billing-provider,
    .tm-fleet,
    .tm-driver-dashboard,
    .tm-chat-center,
    .tm-notification-center,
    .tm-performance-provider,
    .tm-provider-marketplace-payments,
    .tm-marketplace-payment-card,
    .tm-ops-overview,
    .tm-ops-jobs
) :where(
    [class*="-card"],
    [class*="-panel"],
    [class*="-section"],
    [class*="-item"],
    [class*="-sidebar"],
    [class*="-summary"],
    [class*="-detail"],
    [class*="-current"],
    [class*="-list"],
    article,
    details
) {
    border-color: rgba(255,255,255,0.08) !important;
    background: rgba(255,255,255,0.05) !important;
    color: #FFFFFF !important;
    box-shadow: 0 18px 45px rgba(255,122,0,0.08) !important;
}

/* Active / selected marketplace cards */
:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page,
    .tm-billing-provider,
    .tm-fleet,
    .tm-driver-dashboard
) :where(.is-active, .is-current, .is-selected, [aria-current="page"]) {
    border-color: rgba(255,122,0,0.22) !important;
    background: rgba(255,255,255,0.07) !important;
    box-shadow: 0 0 0 1px rgba(255,122,0,0.14) !important;
}

/* Inputs and controls */
:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page,
    .tm-billing-provider,
    .tm-fleet,
    .tm-driver-dashboard,
    .tm-chat-center,
    .tm-provider-marketplace-payments,
    .tm-marketplace-payment-card
) :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
    border-color: rgba(255,255,255,0.12) !important;
    background: rgba(255,255,255,0.07) !important;
    color: #FFFFFF !important;
    box-shadow: none !important;
}

:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page
) input::placeholder,
:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page
) textarea::placeholder {
    color: rgba(255,255,255,0.62) !important;
}

:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page
) option {
    color: #081521;
    background: #FFFFFF;
}

/* Primary actions */
:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page,
    .tm-billing-provider,
    .tm-fleet,
    .tm-driver-dashboard,
    .tm-chat-center,
    .tm-notification-center,
    .tm-performance-provider,
    .tm-provider-marketplace-payments,
    .tm-marketplace-payment-card,
    .tm-ops-overview,
    .tm-ops-jobs
) :where(
    button:not(.tm-expandable-text-toggle),
    input[type="submit"],
    .button-primary,
    [class*="-button"],
    [class*="-primary"],
    [class*="-cta"] > a
) {
    border-color: #FF7A00 !important;
    background: #FF7A00 !important;
    color: #FFFFFF !important;
    box-shadow: 0 10px 28px rgba(255,122,0,0.14) !important;
}

:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page,
    .tm-billing-provider,
    .tm-fleet,
    .tm-driver-dashboard
) :where(
    button:not(.tm-expandable-text-toggle),
    input[type="submit"],
    .button-primary,
    [class*="-button"],
    [class*="-primary"],
    [class*="-cta"] > a
):hover {
    border-color: #FF8F26 !important;
    background: #FF8F26 !important;
    color: #FFFFFF !important;
}

/* Links, active tabs and brand accents */
:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page
) :where(a:not([class*="-button"]):not(.button), .tm-expandable-text-toggle, [class*="-kicker"]) {
    color: #FF7A00 !important;
}

:where(
    .tm-theme-renderer,
    .tm-profile-page,
    .tm-results-page,
    .tm-seo-page,
    .tm-seo-combined,
    .tm-registration-page,
    .tm-customer-portal,
    .tm-provider-dashboard,
    .tm-rd,
    .tm-dispatch-page,
    .tm-dispatch-customer,
    .tm-dispatch-offers,
    .tm-tracking-share-page,
    .tm-tracking-driver-control,
    .tm-tracking-customer-card,
    .tm-provider-tracking,
    .tm-pricing-page
) :where(.badge, [class*="-badge"], [class*="-chip"], [class*="-pill"]) {
    border: 1px solid rgba(255,122,0,0.22) !important;
    background: rgba(255,122,0,0.12) !important;
    color: #FF8F26 !important;
}

/* Marketplace builder frontend */
.tm-theme-renderer {
    background: #081521 !important;
    color: #FFFFFF !important;
}

.tm-theme-element-container {
    color: #FFFFFF;
}

.tm-theme-element-provider_hero,
.tm-theme-element-location_hero,
.tm-theme-element-service_hero,
.tm-theme-element-search_hero {
    background:
        radial-gradient(circle at 85% 10%, rgba(255,122,0,0.14), transparent 32%),
        linear-gradient(135deg, #081521, #081521) !important;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.tm-theme-element-provider_about,
.tm-theme-element-provider_meta,
.tm-theme-element-provider_services,
.tm-theme-element-provider_locations,
.tm-theme-element-provider_gallery,
.tm-theme-element-provider_hours,
.tm-theme-element-provider_contact,
.tm-theme-element-provider_map,
.tm-theme-element-provider_booking_form,
.tm-theme-element-location_description,
.tm-theme-element-service_description,
.tm-theme-element-search_filters,
.tm-theme-element-icon_box,
.tm-theme-term-grid a,
.tm-theme-element-faq details {
    border-color: rgba(255,255,255,0.08) !important;
    background: rgba(255,255,255,0.05) !important;
    color: #FFFFFF !important;
    box-shadow: 0 18px 45px rgba(255,122,0,0.08) !important;
}

.tm-theme-search-form {
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(255,255,255,0.05) !important;
    box-shadow: 0 18px 45px rgba(255,122,0,0.14) !important;
}

.tm-theme-chip-list a,
.tm-theme-chip-list span,
.tm-provider-hero-badges span {
    border: 1px solid rgba(255,122,0,0.22);
    background: rgba(255,122,0,0.12) !important;
    color: #FF8F26 !important;
}

.tm-theme-element-cta {
    border: 1px solid rgba(255,122,0,0.22);
    background:
        radial-gradient(circle at 85% 20%, rgba(255,122,0,0.14), transparent 38%),
        rgba(255,255,255,0.05) !important;
    color: #FFFFFF !important;
}

.tm-provider-hero-actions a,
.tm-theme-element-cta > a {
    border-color: #FF7A00 !important;
    background: #FF7A00 !important;
    color: #FFFFFF !important;
}

.tm-provider-hero-actions a:hover,
.tm-theme-element-cta > a:hover {
    background: #FF8F26 !important;
}

.tm-theme-preview-bar {
    background: #081521 !important;
    border-bottom: 1px solid rgba(255,122,0,0.22);
}

.tm-theme-preview-bar a {
    background: #FF7A00 !important;
    color: #FFFFFF !important;
}

/* Keep functional notices readable */
.tm-billing-success,
.tm-fleet-notice-success,
.tm-marketplace-payment-success,
.tm-ops-success,
.tm-rd-notice,
.notice-success {
    color: #FFFFFF !important;
    border-color: rgba(34,197,94,0.55) !important;
    background: rgba(34,197,94,0.16) !important;
}

.tm-billing-warning,
.tm-marketplace-payment-error,
.tm-fleet-notice-error,
.notice-warning {
    color: #FFFFFF !important;
    border-color: rgba(245,158,11,0.55) !important;
    background: rgba(245,158,11,0.16) !important;
}

@media (max-width: 767px) {
    :where(
        .tm-theme-renderer,
        .tm-profile-page,
        .tm-results-page,
        .tm-seo-page,
        .tm-seo-combined,
        .tm-registration-page,
        .tm-customer-portal,
        .tm-provider-dashboard,
        .tm-rd,
        .tm-dispatch-page,
        .tm-dispatch-customer,
        .tm-dispatch-offers,
        .tm-tracking-share-page
    ) {
        background: #081521 !important;
    }
}
