/* RoosPlus full-site presets.
 * Every visual rule requires the exact template key on the storefront document.
 * No owner settings, global theme colors, checkout logic, images or visibility rules are mutated.
 * Important declarations are layered to outrank legacy unlayered theme styles.
 */
@layer rp-site-preset {
html[data-rp-site-template="bold-dark"] {
  --rp-site-bg:#121212; --rp-site-band:#161616; --rp-site-surface:#1a1a1a; --rp-site-raised:#242424;
  --rp-site-text:#f7f2ec; --rp-site-muted:#bbb7b1; --rp-site-line:#ffffff26;
  --rp-site-action:#ce2028; --rp-site-on-action:#fff; --rp-site-link:#ff8287; --rp-site-action-shadow:none;
  --rp-site-display:"Bebas Neue","Arial Narrow",Impact,sans-serif;
  --rp-site-body:"DM Sans",Inter,system-ui,sans-serif;
  background:var(--rp-site-bg)!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-accent="brand"] {
  --rp-site-action:var(--theme-button-color,#ce2028);
  --rp-site-on-action:var(--theme-button-text-color,#fff);
  --rp-site-link:#f7f2ec;
}
html[data-rp-site-template="bold-dark"] body,
html[data-rp-site-template="bold-dark"] body > main,
html[data-rp-site-template="bold-dark"] body > main > .rp-shell,
html[data-rp-site-template="bold-dark"] :is(#rp-content-wrapper,.rp-topbar-spacer) {
  background-color:var(--rp-site-bg)!important;
}
/* Topbar and search: preserve icons, links, hide-on-scroll behavior and geometry. */
html[data-rp-site-template="bold-dark"] .rp-topbar {
  background:var(--rp-site-band)!important;border-color:var(--rp-site-line)!important;
  color:var(--rp-site-text)!important;box-shadow:0 1px 0 var(--rp-site-line)!important;
}
html[data-rp-site-template="bold-dark"] .rp-topbar :is(.rp-search,.rp-search-expanded,.rp-icon-btn,.rp-cauth-topbar-btn) {
  background:var(--rp-site-raised)!important;border-color:var(--rp-site-line)!important;
  color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"] .rp-topbar :is(.rp-search-input,.rp-search > span,.rp-search-input::placeholder) {
  color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important;background:transparent!important;
}
html[data-rp-site-template="bold-dark"] .rp-topbar :is(.rp-search,.rp-search-input,.rp-icon-btn) {font-family:var(--rp-site-body)!important}
html[data-rp-site-template="bold-dark"] .rp-topbar :is(.rp-icon-btn,.rp-cauth-topbar-btn):hover {background:#303030!important}
/* Header band and identity, not the restaurant's uploaded cover or logo. */
html[data-rp-site-template="bold-dark"] :is(#rp-ph-section,.rp-header-band,.rp-header-band-inline) {
  background-color:var(--rp-site-band)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"] :is(.rp-header-container,.rp-header,.rp-actions,.rp-cart-row,.rp-cta,.rp-title) {
  background-color:transparent!important;color:var(--rp-site-text)!important;
}
html[data-rp-site-template="bold-dark"] .rp-title :is(h1,[data-rp-business-name-text]) {
  font-family:var(--rp-site-display)!important;font-weight:400!important;line-height:1.12!important;
  letter-spacing:.025em!important;color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"] :is(.rp-tagline,.rp-public-rating__score,.rp-public-rating__count,.rp-public-rating__separator,.rp-public-rating__meta-type) {
  color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important;font-family:var(--rp-site-body)!important;
}
html[data-rp-site-template="bold-dark"] :is(.rp-public-rating__write,.rp-discovery-return-link) {
  color:var(--rp-site-link)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"] .rp-ph :is(.rp-see-menu-btn,.rp-see-menu-cta,.rp-reserve-table-btn,.rp-shop-products-btn,.rp-book-now-btn) {
  background:var(--rp-site-action)!important;border-color:var(--rp-site-action)!important;color:var(--rp-site-on-action)!important;
  -webkit-text-fill-color:var(--rp-site-on-action)!important;box-shadow:none!important;text-shadow:none!important;
  font-family:var(--rp-site-body)!important;border-radius:12px!important;
}
html[data-rp-site-template="bold-dark"] .rp-ph :is(.rp-see-menu-btn,.rp-see-menu-cta,.rp-reserve-table-btn,.rp-shop-products-btn,.rp-book-now-btn) * {
  color:var(--rp-site-on-action)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"] .rp-ph .rp-cart {background-color:var(--rp-site-raised)!important;box-shadow:none!important;border-radius:12px!important}
/* The cover's backdrop is a surface, not the uploaded banner image. */
html[data-rp-site-template="bold-dark"] :is(#header-backdrop-card,.rp-cover-background-card) {background:var(--rp-site-bg)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important}
html[data-rp-site-template="bold-dark"] .rp-topbar .rp-search > img {filter:brightness(0) invert(1);opacity:.7}
/* Tabs: leave the radio selection, underline animation, order and hidden items intact. */
html[data-rp-site-template="bold-dark"] :is(#public-tabs-strip,#owner-tabs-strip,.rp-tabs-row) {
  background-color:var(--rp-site-bg)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"] :is(.animated-tabs-container,.animated-tabs-wrap) {
  background:var(--rp-site-surface)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"] .animated-tabs-label,
html[data-rp-site-template="bold-dark"] .animated-tabs-label span {
  color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important;font-family:var(--rp-site-body)!important;
  background:transparent!important;text-shadow:none!important;
}
html[data-rp-site-template="bold-dark"] .animated-tabs-label:hover,
html[data-rp-site-template="bold-dark"] .animated-tabs-label:hover span {color:var(--rp-site-text)!important}
html[data-rp-site-template="bold-dark"] .animated-tabs-radio:checked + .animated-tabs-label {
  background:var(--rp-site-action)!important;color:var(--rp-site-on-action)!important;border-color:var(--rp-site-action)!important;
}
html[data-rp-site-template="bold-dark"] .animated-tabs-radio:checked + .animated-tabs-label span {color:var(--rp-site-on-action)!important}
html[data-rp-site-template="bold-dark"] :is(.animated-tabs-bar,.animated-tabs-slidebar) {
  --indicator-color:var(--rp-site-action)!important;background-color:var(--rp-site-action)!important;border-color:var(--rp-site-action)!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"] .animated-tabs-filter-btn {background:var(--rp-site-raised)!important;color:var(--rp-site-text)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important}
/* Business identity / quick signals. Status meaning stays distinct from brand color. */
html[data-rp-site-template="bold-dark"] .rp-public-business-wrapper {
  background:var(--rp-site-surface)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;
  color:var(--rp-site-text)!important;font-family:var(--rp-site-body)!important;
}
html[data-rp-site-template="bold-dark"] .rp-public-header-main h2 {
  font-family:var(--rp-site-display)!important;font-weight:400!important;letter-spacing:.02em!important;
  color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"] :is(.rp-public-header-meta,.rp-public-header-meta > span,.rp-public-header-detail,.rp-public-signal-kicker,.rp-public-signal-support) {
  color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"] :is(.rp-public-signals,.rp-public-signals-strip,.rp-public-signals-track,.rp-public-signal-item) {
  background-color:transparent!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"] :is(.rp-public-signal-value,.rp-public-signal-value-row strong,.rp-public-signal-distance-row strong,.rp-public-accept-cash-text,.rp-public-accept-none) {
  color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"] :is(.rp-public-signal-value,.rp-public-rating__meta-status).is-open {color:#70df9a!important}
html[data-rp-site-template="bold-dark"] :is(.rp-public-signal-value,.rp-public-rating__meta-status).is-closed {color:#ff9195!important}
html[data-rp-site-template="bold-dark"] .rp-public-business-action {
  background:var(--rp-site-action)!important;border-color:var(--rp-site-action)!important;box-shadow:none!important;
  color:var(--rp-site-on-action)!important;-webkit-text-fill-color:var(--rp-site-on-action)!important;
}
html[data-rp-site-template="bold-dark"] .rp-public-signals-nav {
  background:var(--rp-site-raised)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;color:var(--rp-site-text)!important;
}
html[data-rp-site-template="bold-dark"] .rp-public-signals-nav-icon {border-color:var(--rp-site-text)!important}
html[data-rp-site-template="bold-dark"] .rp-public-signal-item + .rp-public-signal-item::before {background:var(--rp-site-line)!important}
html[data-rp-site-template="bold-dark"] .animated-tabs-label {border-radius:9px!important}
/* The storefront foreground on other tabs. Never target owner form/editor portals. */
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-content-wrapper {
  color:var(--rp-site-text)!important;font-family:var(--rp-site-body)!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-content-wrapper :is(.bg-white,.bg-slate-50,.bg-gray-50,.rp-info-panel,.rp-business-card,.rp-business-info-block,.rp-business-profile-overview,.rp-business-contact-item) {
  background-color:var(--rp-site-surface)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-content-wrapper :is(.text-slate-900,.text-gray-900,.text-slate-800,.text-gray-800,.text-slate-700,.text-gray-700) {
  color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-content-wrapper :is(.text-slate-600,.text-gray-600,.text-slate-500,.text-gray-500,.text-slate-400,.text-gray-400) {
  color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-public-info-tab :is(h1,h2,h3,h4,.rp-business-contact-head-copy,.rp-business-contact-item,.rp-business-rating-row,.rp-hours-lines,.rp-hours-exceptions-list) {
  color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-public-info-tab :is(.rp-info-panel-head,.rp-info-panel-body,.rp-business-map-action-row) {background-color:var(--rp-site-surface)!important;border-color:var(--rp-site-line)!important}
/* Site footer and mobile navigation. Restaurant artwork is not recolored. */
html[data-rp-site-template="bold-dark"] .rp-business-footer {background:var(--rp-site-band)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;font-family:var(--rp-site-body)!important}
html[data-rp-site-template="bold-dark"] .rp-business-footer :is(.rp-business-footer__discover-panel,.rp-business-footer__panel-row) {background-color:var(--rp-site-surface)!important;border-color:var(--rp-site-line)!important}
html[data-rp-site-template="bold-dark"] .rp-business-footer :is(a,h2,h3,strong) {color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] .rp-business-footer :is(p,small) {color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] .rp-bottom-nav {background:var(--rp-site-band)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important}
html[data-rp-site-template="bold-dark"] .rp-bottom-nav__item {color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] .rp-bottom-nav__item.active {color:var(--rp-site-link)!important}
/* Keyboard focus remains visible, without exposing hidden controls. */
html[data-rp-site-template="bold-dark"] :is(.rp-topbar,.rp-cart-row,.rp-cta,.rp-public-business-actions,.animated-tabs-wrap) :is(a,button,label,input):focus-visible {
  outline:2px solid var(--rp-site-link)!important;outline-offset:3px!important;
}
}

@layer rp-site-preset {
/* Customer-facing launcher only. No chat actions or security forms are changed. */
html[data-rp-site-template="bold-dark"] .rp-chat-toggle {background:var(--rp-site-raised)!important;border-color:var(--rp-site-line)!important;box-shadow:0 4px 20px #0004!important}
html[data-rp-site-template="bold-dark"] :is(.rp-chat-toggle-text,.rp-chat-toggle-text span,.rp-chat-toggle-dismiss) {color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] .rp-chat-bubble-primary {background:var(--rp-site-action)!important}
html[data-rp-site-template="bold-dark"] .rp-chat-bubble-secondary {background:#535353!important}
}

@layer rp-site-preset {
/* Public content adapters. Tokens are local to the storefront, never the owner settings drawer. */
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-content-wrapper {
  --rp-text:var(--rp-site-text);--rp-muted:var(--rp-site-muted);--rp-bg:var(--rp-site-bg);
  --rp-card-bg:var(--rp-site-surface);--rp-card-border:var(--rp-site-line);--rp-card-divider:var(--rp-site-line);--rp-soft-shadow:none;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-content-wrapper [data-sidebar-source] :is(h1,h2,h3,h4,p,.rp-sidebar-menu-category-subtitle) {
  color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .public-about-tab-content :is(h1,h2,h3,h4,p) {color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-public-info-tab :is(.rp-info-panel,.rp-info-panel-header,.rp-info-panel-body,.rp-business-card,.rp-business-info-block,.rp-business-profile-overview,.location-card,.rp-loc-content) {
  background:var(--rp-site-surface)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;color:var(--rp-site-text)!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-public-info-tab :is(.rp-business-contact-head-subtitle,.rp-business-contact-label,.rp-business-address-label,.rp-business-contact-value,.rp-business-contact-link,.rp-business-contact-item>span,.rp-business-highlight-label,.rp-business-highlight-value,.rp-business-highlight-support,.rp-hours-main,.rp-hours-sub) {
  color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-public-info-tab .rp-business-info-block :is(span,p,a,strong,li) {color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-public-info-tab :is(.rp-business-rating-row,.rp-business-contact-list,.rp-business-contact-item) {border-color:var(--rp-site-line)!important}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-public-info-tab :is(.rp-business-icon,.rp-business-contact-head-icon,.rp-business-map-action-chip,.rp-hours-pill,.rp-hours-exception-item) {
  background:var(--rp-site-raised)!important;color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-public-info-tab .rp-business-map-action-chip.is-primary {
  background:var(--rp-site-action)!important;color:var(--rp-site-on-action)!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-public-info-tab .rp-business-map-action-chip :is(span,svg) {color:inherit!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] .rp-chat-toggle-text * {color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important}
}

@layer rp-site-preset {
/* Public item modal is appended to body, outside the menu's presentation root.
 * Only visual properties: keep its handlers, dimensions, hidden states and payload intact. */
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal {
  --theme-button-color:var(--rp-site-action);--theme-button-border-color:var(--rp-site-action);
  --theme-button-overlay-color:var(--rp-site-action);--theme-button-text-color:var(--rp-site-on-action);
  color:var(--rp-site-text)!important;font-family:var(--rp-site-body)!important;color-scheme:dark;
}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal :is(.panel,.rp-vanilla-panel-footer,.rp-addons-in-panel,.rp-addon-rows,.rp-addon-row,.rp-vanilla-combo-section,.rp-vanilla-combo-choice) {
  background:var(--rp-site-surface)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal .panel {box-shadow:0 16px 48px #0007!important;border:1px solid var(--rp-site-line)}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal :is(.rp-addon-option-block,.rp-addon-option-block-pizza,.rp-pizza-addon-config,.qty-row,.qty-input,textarea,.close-btn,.rp-pizza-control-btn,.rp-pizza-control-chip) {
  background:var(--rp-site-raised)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;
  color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal :is(.rp-addon-group-title,.rp-addon-row-label,.rp-addon-row-price,.rp-addon-row-qty,.rp-vanilla-item-name,.section-label,.rp-pizza-step-title,.rp-vanilla-combo-title,.rp-vanilla-combo-choice-text,.rp-vanilla-combo-name) {
  color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;font-family:var(--rp-site-body)!important;
}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal .rp-vanilla-item-name {
  font-family:var(--rp-site-display)!important;font-weight:400!important;letter-spacing:.02em;line-height:1.15;
}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal :is(.rp-vanilla-item-desc,.rp-vanilla-combo-hint,.rp-vanilla-combo-note,.rp-pizza-control-summary,.rp-pizza-control-label,.optional-tag) {
  color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal :is(.rp-vanilla-combo-price,.required-tag) {color:var(--rp-site-link)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal :is(.rp-addon-qty-btn,.qty-btn,.add-btn,.rp-pizza-control-btn-active) {
  background:var(--rp-site-action)!important;border-color:var(--rp-site-action)!important;color:var(--rp-site-on-action)!important;
  -webkit-text-fill-color:var(--rp-site-on-action)!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal .add-btn :is(.price-part,.text-part) {color:var(--rp-site-on-action)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal .add-btn .price-part {background:#0002!important}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal :is(input[type="checkbox"],input[type="radio"]) {accent-color:var(--rp-site-action)}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal textarea::placeholder {color:var(--rp-site-muted)!important;opacity:1;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal .rp-badge {background:var(--rp-site-raised)!important;color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;border-color:var(--rp-site-line)!important}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal :is(button,input,textarea):focus-visible {outline:2px solid var(--rp-site-link)!important;outline-offset:2px;box-shadow:none!important}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal :is(.qty-btn,.rp-addon-qty-btn,.add-btn):hover:not(:disabled) {filter:brightness(1.12)}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal :is(.close-btn,.rp-pizza-control-btn,.rp-pizza-control-chip):hover:not(:disabled) {border-color:var(--rp-site-link)!important}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal .rp-vanilla-panel-scroll {scrollbar-color:#616161 transparent}
html[data-rp-site-template="bold-dark"] #rp-vanilla-menu-modal .rp-vanilla-panel-scroll::-webkit-scrollbar-thumb {background:#616161!important}
/* Menu index: background (not just background-color) clears the legacy white gradient. */
html[data-rp-site-template="bold-dark"] .rp-item-index-panel {
  --rp-text:var(--rp-site-text);--rp-muted:var(--rp-site-muted);
  background:var(--rp-site-surface)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"] .rp-item-index-panel :is(summary,summary span,.rp-item-index-link) {color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] .rp-item-index-panel p {color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] .rp-item-index-panel details details {background:var(--rp-site-bg)!important;border-color:var(--rp-site-line)!important}
html[data-rp-site-template="bold-dark"] .rp-item-index-panel details details > summary > span:last-child {background:var(--rp-site-raised)!important;color:var(--rp-site-muted)!important;border-color:var(--rp-site-line)!important}
html[data-rp-site-template="bold-dark"] .rp-item-index-panel .rp-item-index-link {background:var(--rp-site-surface)!important;border-color:var(--rp-site-line)!important}
html[data-rp-site-template="bold-dark"] .rp-item-index-panel .rp-item-index-link:hover {background:var(--rp-site-raised)!important;border-color:var(--rp-site-link)!important}
html[data-rp-site-template="bold-dark"] .rp-item-index-panel :is(a,summary):focus-visible {outline:2px solid var(--rp-site-link)!important;outline-offset:2px}
}

@layer rp-site-preset {
/* Reservation page and its public modal share the same explicitly scoped adapter.
 * Never recolor actual floor-plan artwork/tables or change booking/status logic. */
html[data-rp-site-template="bold-dark"] #table-booking-modal,
html[data-rp-site-template="bold-dark"][data-rp-site-page="reservations"] body > main > div {
  color:var(--rp-site-text)!important;font-family:var(--rp-site-body)!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-page="reservations"] body > main > div > :is(h1,h2),
html[data-rp-site-template="bold-dark"][data-rp-site-page="reservations"] body > main > div > section :is(h1,h2,h3) {color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"][data-rp-site-page="reservations"] body > main > div > h1 {font-family:var(--rp-site-display)!important;font-weight:400!important;letter-spacing:.02em}
html[data-rp-site-template="bold-dark"][data-rp-site-page="reservations"] body > main > div > section {background:var(--rp-site-surface)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;font-family:var(--rp-site-body)!important}
html[data-rp-site-template="bold-dark"][data-rp-site-page="reservations"] body > main > div > section p {color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal {
  --rp-form-button-color:var(--rp-site-action);--rp-form-button-text-color:var(--rp-site-on-action);color-scheme:dark;
}
html[data-rp-site-template="bold-dark"] #table-booking-modal :is(.tbm-paper,.tbm-booking-pane,.tbm-booking-panel,.tbm-contact-panel,.tbm-floor-empty,.tbm-selected-chip) {
  background:var(--rp-site-surface)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important;color:var(--rp-site-text)!important;
}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-paper {border:1px solid var(--rp-site-line)}
html[data-rp-site-template="bold-dark"] #table-booking-modal :is(.tbm-title,.tbm-pane-title,.tbm-pane-eyebrow,.tbm-rail-title,.tbm-booking-panel__title,.tbm-side-title,.tbm-contact-panel__title,.tbm-summary-row__value,.tbm-hours-row__day,.tbm-business-meta__value,.tbm-reason-heading,.tbm-success-title,.tbm-field label,.tbm-choice-title,.tbm-control-icon,.tbm-control-trailing) {
  color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;font-family:var(--rp-site-body)!important;
}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-title {font-family:var(--rp-site-display)!important;font-weight:400!important;letter-spacing:.02em}
html[data-rp-site-template="bold-dark"] #table-booking-modal :is(.tbm-subtitle,.tbm-pane-copy,.tbm-rail-copy,.tbm-business-meta__label,.tbm-booking-list,.tbm-booking-panel__subtitle,.tbm-contact-panel__hint,.tbm-rail-meta__icon,.tbm-rail-meta__value,.tbm-hours-row__time,.tbm-hours-status,.tbm-summary-row__label,.tbm-summary-row__sep,.tbm-summary-hints,.tbm-notes-counter,.tbm-optional,.tbm-time-axis,.tbm-reason-text,.tbm-selected-chip__meta,.tbm-success-message) {
  color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-rail-meta__value.is-link {color:var(--rp-site-link)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal :is(.tbm-control-display,.tbm-choice-btn,.tbm-tab,.tbm-times-select,.tbm-close,.tbm-field input:not([type="hidden"]),.tbm-field select,.tbm-field textarea) {
  background-color:var(--rp-site-raised)!important;color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;
  border-color:var(--rp-site-line)!important;box-shadow:none!important;font-family:var(--rp-site-body)!important;
}
html[data-rp-site-template="bold-dark"] #table-booking-modal :is(.tbm-times-select,.tbm-field select):not(.tbm-control-native) {
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23bbb7b1' d='M6 8L1 3h10z'/%3E%3C/svg%3E")!important;
}
html[data-rp-site-template="bold-dark"] #table-booking-modal :is(input,textarea)::placeholder {color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important;opacity:1}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-control-display.is-placeholder {color:var(--rp-site-muted)!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal :is(input,select,textarea,button):focus-visible {outline:2px solid var(--rp-site-link)!important;outline-offset:2px;box-shadow:none!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-control-shell:focus-within .tbm-control-display {outline:2px solid var(--rp-site-link)!important;outline-offset:2px;box-shadow:none!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal :is(.tbm-submit,.tbm-tab.is-active,.tbm-tab[aria-selected="true"]) {
  background:var(--rp-site-action)!important;border-color:var(--rp-site-action)!important;color:var(--rp-site-on-action)!important;-webkit-text-fill-color:var(--rp-site-on-action)!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-submit :is(span,svg) {color:var(--rp-site-on-action)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-submit:hover:not(:disabled) {filter:brightness(1.12)}
html[data-rp-site-template="bold-dark"] #table-booking-modal :is(.tbm-tab,.tbm-choice-btn,.tbm-close):hover:not(:disabled) {border-color:var(--rp-site-link)!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-rail-divider {background:var(--rp-site-line)!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-accent-line {background:var(--rp-site-action)!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal :is(.tbm-floor-shell,.tbm-floor-board) {background:var(--rp-site-bg)!important;border-color:var(--rp-site-line)!important;box-shadow:none!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-status-pill {color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-selected-chip__code {background:var(--rp-site-raised)!important;color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-time-plot span {background:#484848!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-time-plot span.is-peak {background:var(--rp-site-action)!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-time-plot span.is-peak-soft {background:color-mix(in srgb,var(--rp-site-action) 55%,var(--rp-site-raised))!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-hours-status.is-open {color:#70df9a!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-hours-status.is-closed {color:#ff9195!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal :is(.tbm-errors,[aria-invalid="true"]) {color:#ff9195!important;-webkit-text-fill-color:currentColor!important;border-color:#ff9195!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-success-icon {background:var(--rp-site-raised)!important;color:var(--rp-site-link)!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-success[data-tbm-success-state="accepted"] .tbm-success-icon {color:#70df9a!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-success[data-tbm-success-state="declined"] .tbm-success-icon {color:#ff9195!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-success-icon__spinner {border-top-color:var(--rp-site-link)!important}
}

@layer rp-site-preset {
/* Explicit public-only Info adapters; never recolor maps, uploaded media or owner editors. */
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .rp-sidebar-locations-preview :is(.rp-sidebar-info-preview-row,.rp-sidebar-info-preview-text,.rp-sidebar-info-preview-icon) {
  color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .rp-sidebar-info-preview-icon svg {color:var(--rp-site-muted)!important}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .rp-sidebar-info-preview-icon svg [fill]:not([fill="none"]) {fill:var(--rp-site-muted)!important}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .rp-sidebar-info-preview-icon svg [stroke]:not([stroke="none"]) {stroke:var(--rp-site-muted)!important}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-public-info-tab .rp-business-amenity-icon {
  color:var(--rp-site-text)!important;width:18px;min-width:18px;height:18px;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] #rp-public-info-tab .rp-business-amenity-icon svg {color:var(--rp-site-text)!important;width:100%;height:100%}
/* Replace only hard-coded dark ink; keep none, cutouts and multicolor artwork intact. */
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .rp-business-amenity-icon :is([fill="#000"],[fill="#000000"],[fill="#020202"]) {fill:var(--rp-site-text)!important}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .rp-business-amenity-icon :is([stroke="#000"],[stroke="#000000"],[stroke="#020202"]) {stroke:var(--rp-site-text)!important}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .rp-business-amenity-icon [fill="#0c6fff"] {fill:var(--rp-site-link)!important}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .location-card .rp-loc-address {
  color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important;opacity:1;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .location-card :is(.rp-loc-city,.rp-loc-city span) {color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .location-card .rp-loc-city span:first-child {color:var(--rp-site-muted)!important;opacity:1}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .location-card .rp-loc-current-badge {
  background:var(--rp-site-raised)!important;border-color:var(--rp-site-line)!important;color:var(--rp-site-text)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .location-card .rp-loc-contact-row :is(a[href^="tel:"],a[href^="mailto:"]) {
  background:var(--rp-site-action)!important;border-color:var(--rp-site-action)!important;color:var(--rp-site-on-action)!important;-webkit-text-fill-color:currentColor!important;box-shadow:none!important;
}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .location-card .rp-loc-contact-row a svg {color:var(--rp-site-on-action)!important}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .location-card .rp-loc-link-row a {color:var(--rp-site-link)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"][data-rp-site-context="public"] .location-card :is(.rp-loc-contact-row,.rp-loc-link-row) a:focus-visible {outline:2px solid var(--rp-site-link)!important;outline-offset:3px}
}

@layer rp-site-preset {
/* Active-state specificity must exceed the neutral input/field adapter above. */
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-tabs .tbm-tab:is(.is-active,[aria-selected="true"]) {
  background:var(--rp-site-action)!important;border-color:var(--rp-site-action)!important;
  color:var(--rp-site-on-action)!important;-webkit-text-fill-color:var(--rp-site-on-action)!important;
}
/* Legacy global type rules set colors on leaf nodes; declare these leaves explicitly. */
html[data-rp-site-template="bold-dark"] #table-booking-modal :is(.tbm-summary-hints li,.tbm-time-axis span,.tbm-notes-counter span,.tbm-booking-list li,.tbm-success-message span) {
  color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-hours-status span {color:var(--rp-site-muted)!important;-webkit-text-fill-color:currentColor!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-hours-status.is-open span:not(.tbm-hours-status__dot) {color:#70df9a!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-hours-status.is-closed span:not(.tbm-hours-status__dot) {color:#ff9195!important}
html[data-rp-site-template="bold-dark"] #table-booking-modal .tbm-hours-status {border-color:var(--rp-site-line)!important}
}
