/* v691: one customer-branding system for every customer/public surface. */
html,body.shop-page,body.public-page-v667,body.reserve-v49,body.customer-page-v115,body.compliance-page-v228,body.track-v42,body.confirmation-page-v20{font-family:var(--tt-font)!important}
body.shop-page,body.public-page-v667,body.reserve-v49,body.customer-page-v115,body.compliance-page-v228,body.track-v42,body.confirmation-page-v20{background:var(--tt-page-bg)!important;color:var(--tt-body-text)!important}
body :is(h1,h2,h3,h4,h5,h6){color:var(--tt-heading)}
body :is(a:not(.staff-nav-link-v266),.text-link){color:var(--tt-link)}

/* Header is explicit, never derived differently page-to-page. */
body.shop-page .shop-header,body.public-page-v667 .public-header-v662,.customer-page-v115 .customer-top-v115{
  background:var(--tt-header-bg)!important;color:var(--tt-header-text)!important;border-color:color-mix(in srgb,var(--tt-header-text),transparent 86%)!important
}
body.shop-page .shop-header :is(a,strong,span),body.public-page-v667 .public-header-v662 :is(a,strong,span),.customer-page-v115 .customer-top-v115 :is(a,strong,span){color:var(--tt-header-text)!important}
html[data-tt-header-style="brand"] body.shop-page .shop-header,html[data-tt-header-style="brand"] body.public-page-v667 .public-header-v662{background:var(--tt-primary)!important}
html[data-tt-header-style="brand"] body.shop-page .shop-header :is(a,strong,span),html[data-tt-header-style="brand"] body.public-page-v667 .public-header-v662 :is(a,strong,span){color:var(--tt-on-primary)!important}
html[data-tt-header-style="glass"] body.shop-page .shop-header,html[data-tt-header-style="glass"] body.public-page-v667 .public-header-v662{background:color-mix(in srgb,var(--tt-header-bg),transparent 10%)!important;backdrop-filter:blur(18px)}

/* Primary and secondary controls. Explicit tokens also fix category cards/button drift. */
body.shop-page :is(.btn.primary,.checkout-btn,.customer-category-open-v494,.customer-primary-action-v568,.customer-cart-checkout-v568),
body.public-page-v667 :is(.button,.order),body.reserve-v49 #reserve-form-v49 button,
body.customer-page-v115 :is(.btn-v115,.customer-account-pill-v115.orange,.coupon-row-v121 button),
body.compliance-page-v228 .primary-action-v228{
  background:var(--tt-primary)!important;color:var(--tt-on-primary)!important;border-color:var(--tt-primary)!important;border-radius:var(--tt-button-radius)!important
}
body.shop-page :is(.btn.secondary,.customer-category-count-v494),body.customer-page-v115 :is(.btn-soft-v115,.customer-account-pill-v115.light){background:var(--tt-secondary)!important;color:var(--tt-on-secondary)!important;border-color:color-mix(in srgb,var(--tt-on-secondary),transparent 75%)!important;border-radius:var(--tt-button-radius)!important}
body.shop-page .customer-category-card-v494{background:var(--tt-card-bg)!important;color:var(--tt-body-text)!important;border-radius:var(--tt-card-radius)!important}
body.shop-page .customer-category-card-v494 :is(h2,h3,strong){color:var(--tt-heading)!important}
body.shop-page .customer-category-open-v494{display:inline-flex;align-items:center;justify-content:center;padding:.72rem 1rem}

/* Card/surface consistency. */
body.shop-page :is(.category-card,.menu-card,.item-card,.checkout-card,.cart-card),body.public-page-v667 :is(.category-grid-v662>a,.menu-grid-v662 article,.item-detail-v662,.information-grid-v662>article,.information-grid-v662>aside),body.reserve-v49 .reserve-card-v49,body.customer-page-v115 :is(.customer-card-v115,.metric-v115,.item-v115){background:var(--tt-card-bg)!important;color:var(--tt-body-text)!important;border-radius:var(--tt-card-radius)!important}

/* Footer: one explicit color on every state/view. No color-mix from primary. */
body.shop-page .customer-public-footer-v662,body.public-page-v667 .public-footer-v662{background:var(--tt-footer-bg)!important;color:var(--tt-footer-text)!important}
body.shop-page .customer-public-footer-v662 *,body.public-page-v667 .public-footer-v662 *{color:var(--tt-footer-text)!important}
body.shop-page .customer-public-footer-v662 .footer-ownership-v672,body.public-page-v667 .public-footer-v662 .footer-ownership-v672{border-top-color:color-mix(in srgb,var(--tt-footer-text),transparent 78%)!important}
html[data-tt-footer-style="soft"] body.shop-page .customer-public-footer-v662,html[data-tt-footer-style="soft"] body.public-page-v667 .public-footer-v662{background:color-mix(in srgb,var(--tt-footer-bg),var(--tt-page-bg) 18%)!important}
html[data-tt-footer-style="bordered"] body.shop-page .customer-public-footer-v662,html[data-tt-footer-style="bordered"] body.public-page-v667 .public-footer-v662{box-shadow:inset 0 4px 0 var(--tt-primary)}
.customer-public-footer-v662 .technology-credit-v672,.public-footer-v662 .technology-credit-v672{border-color:color-mix(in srgb,var(--tt-footer-text),transparent 75%)!important;background:color-mix(in srgb,var(--tt-footer-text),transparent 92%)!important;color:var(--tt-footer-text)!important;border-radius:var(--tt-button-radius)!important}
.customer-public-footer-v662 .technology-credit-v672 strong,.public-footer-v662 .technology-credit-v672 strong{color:var(--tt-footer-text)!important}

/* Mobile customer nav belongs to customer branding too. */
body.shop-page .mobile-bottom-nav-v132,body.public-page-v667 .mobile-bottom-nav-v132{background:var(--tt-card-bg)!important;border-color:color-mix(in srgb,var(--tt-body-text),transparent 88%)!important}
body.shop-page .mobile-bottom-nav-v132 a,body.public-page-v667 .mobile-bottom-nav-v132 a{color:color-mix(in srgb,var(--tt-body-text),transparent 35%)!important}
body.shop-page .mobile-bottom-nav-v132 .active-v132,body.public-page-v667 .mobile-bottom-nav-v132 .active-v132{background:color-mix(in srgb,var(--tt-primary),var(--tt-card-bg) 88%)!important;color:var(--tt-primary)!important;border-radius:var(--tt-button-radius)!important}

/* Reservation/footer uses the same system while keeping its light ownership strip. */
body.reserve-v49 .reserve-brand-v49>div{background:var(--tt-primary)!important;color:var(--tt-on-primary)!important}
.reservation-ownership-v672{color:var(--tt-body-text)!important}.reservation-ownership-v672>a,.reservation-ownership-v672 strong{color:var(--tt-link)!important}
.reservation-ownership-v672 .technology-credit-v672{background:var(--tt-card-bg)!important;color:var(--tt-body-text)!important;border-color:color-mix(in srgb,var(--tt-body-text),transparent 85%)!important;border-radius:var(--tt-button-radius)!important}.reservation-ownership-v672 .technology-credit-v672 strong{color:var(--tt-body-text)!important}

@media(max-width:620px){body.shop-page .customer-public-footer-v662,body.public-page-v667 .public-footer-v662{padding-left:24px!important;padding-right:24px!important}}
