/* Store integration for the main Black Moth design system. */
:root {
  --bm-text: var(--text); --bm-muted: var(--muted); --bm-neon: var(--text);
  --bm-hover: #007d76; --bm-border: var(--line);
  --bm-panel: var(--surface); --bm-panel-soft: var(--surface);
  --rtcl-primary-color: #007d76; --rtcl-primary-rgb: 0,125,118;
  --rtcl-primary-dark: #006b65; --rtcl-secondary-color: #006b65;
  --rtcl-link-color: var(--text); --rtcl-link-hover-color: var(--bm-hover);
  --rtcl-button-bg-color: var(--acid); --rtcl-button-color: var(--ink);
  --rtcl-button-hover-bg-color: var(--teal);
}
:root[data-theme=dark] { --bm-hover: var(--teal); --rtcl-primary-color: var(--teal); --rtcl-primary-rgb: 8,201,192; }
body.bm-matching-theme, body.bm-matching-theme.rtcl { background: var(--bg); color: var(--text); font-family: 'Roboto Condensed', Arial, sans-serif; line-height: 1.5; }
.bm-site { overflow: visible; }
.bm-background { display: none; }
.bm-matching-theme a { text-shadow: none; }
.bm-matching-theme a:hover { color: var(--bm-hover); }
.bm-matching-theme .header { z-index: 30; }
.header .store-action svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.bm-site .header .store-action { color: var(--text); }
.header .search-form input { min-height: 0; }
.header .search-form button { min-height: 0; color: var(--cream); background: var(--ink); border: 0; border-radius: 0; }
.header button.icon-button { background: transparent; color: var(--text); border: 0; border-radius: 0; }
.header button.theme-toggle { border: 1px solid var(--line); border-radius: 24px; padding: 7px 9px; }
.header .brand { overflow: visible; }
.header .brand>.native-moth { object-fit: contain; }
.bm-main { padding: 48px 32px 60px; min-height: 55vh; z-index: auto; max-width: 1480px; margin: auto; }
.bm-content-wrap { width: 100%; max-width: none; margin: 0; }
.bm-front { min-height: 0; align-content: start; gap: 24px; }
.bm-front>section:first-child { position: relative; padding: 0 0 30px; border-bottom: 1px solid var(--line); }
.bm-front>section:first-child::after { content: '✳'; position: absolute; right: 22px; top: 3px; color: var(--teal); font-size: 90px; line-height: 1; transform: rotate(-13deg); opacity: .6; }
.bm-kicker { color: var(--bm-hover); text-shadow: none; font: 700 13px 'Barlow Condensed', sans-serif; letter-spacing: 2px; margin: 0 0 12px; }
.bm-title, .entry-title, .page-title { color: var(--text); font: 400 clamp(32px, 4.2vw, 58px)/1.15 'Permanent Marker', cursive; letter-spacing: -1px; text-shadow: none; text-transform: uppercase; }
.bm-title { display: inline-block; padding: 1px 13px 6px; position: relative; isolation: isolate; color: var(--ink); transform: rotate(-2deg); }
.bm-title::before { content: ''; position: absolute; inset: 0 -4px; z-index: -1; background: var(--acid); clip-path: polygon(1% 8%,99% 0,98% 89%,0 100%); }
.bm-script { color: var(--text); font: 400 22px Georgia, serif; letter-spacing: 7px; margin: 12px 0 20px; text-shadow: none; transform: none; }
.bm-lead { font-size: 17px; color: var(--muted); text-shadow: none; line-height: 1.5; max-width: 680px; }
.bm-main .rtcl { margin-top: 0; padding: 0; border: 0; background: transparent; box-shadow: none; color: var(--text); font-family: 'Roboto Condensed', Arial, sans-serif; }
.bm-main .rtcl .rtcl-listings-actions { margin-bottom: 24px; gap: 16px; padding-bottom: 16px; border-bottom: 1px solid var(--line); align-items: center; }
.bm-main .rtcl .rtcl-result-count { color: var(--muted); font-size: 16px; }
.bm-main .rtcl .listing-item, .bm-main .rtcl .rtcl-listing, .bm-main .rtcl .rtcl-listings .listing-item { background: var(--surface); color: var(--text); border: 1px solid var(--line); border-radius: 3px; overflow: hidden; box-shadow: none; transition: border-color .18s; }
.bm-main .rtcl .rtcl-listings .listing-item:hover { border-color: var(--teal); }
.bm-main .rtcl .listing-item:nth-child(3n+1) { border-top: 3px solid var(--acid); }
.bm-main .rtcl .listing-item:nth-child(3n+2) { border-top: 3px solid var(--pink); }
.bm-main .rtcl .listing-item:nth-child(3n) { border-top: 3px solid var(--teal); }
.bm-main .rtcl .listing-title a, .bm-main .rtcl .rtcl-price, .bm-main .rtcl .item-price { color: var(--text); }
.bm-main .rtcl .rtcl-listings .listing-item h3.listing-title a { color: var(--text); }
.bm-main .rtcl .listing-title { font: 600 24px/1.2 'Barlow Condensed', sans-serif; margin-bottom: 12px; }
.bm-main .rtcl .listing-title a:hover { color: var(--bm-hover); }
.bm-main .rtcl .rtcl-price { font: 700 23px 'Barlow Condensed', sans-serif; }
.bm-main .rtcl .item-content { padding: 20px; }
.bm-main .rtcl .rtcl-listing-meta-data, .bm-main .rtcl .rtcl-listing-meta-data a { color: var(--muted); font-size: 14px; line-height: 1.6; }
.bm-main .rtcl .rtcl-listings .rtcl-listing-meta-data li, .bm-main .rtcl .rtcl-listings .rtcl-listing-meta-data li a { color: var(--muted); }
.bm-main .rtcl a { color: var(--bm-hover); }
.bm-main .rtcl .listing-thumb img { display: block; width: 100%; height: auto; aspect-ratio: 4/3; object-fit: cover; }
.bm-main .rtcl .listing-thumb .rtcl-media { display: block; width: 100%; }
.bm-main .rtcl .form-control, .bm-main .rtcl input, .bm-main .rtcl textarea, .bm-main .rtcl select,
.bm-main input, .bm-main textarea, .bm-main select { background: var(--surface); color: var(--text); border: 1px solid var(--line); border-radius: 3px; }
.bm-main .rtcl select { padding: 10px 36px 10px 14px; }
.bm-site .bm-main .rtcl .rtcl-listings-actions .rtcl-ordering select { background-color: var(--surface); color: var(--text); border-color: var(--line); }
.bm-main .rtcl .rtcl-meta-buttons .rtcl-btn { background: var(--surface); color: var(--text); border-color: var(--line); }
.bm-main .rtcl .rtcl-listing-user-info, .bm-main .rtcl .rtcl-listing-description { background: var(--surface); color: var(--text); border-color: var(--line); }
.bm-main .rtcl-single-listing-details, .bm-main .rtcl-listing-sidebar-info-wrap,
.bm-main .rtcl-listing-user-info, .bm-main .rtcl-widget, .bm-main .rtcl-MyAccount-wrap .rtcl-MyAccount-navigation,
.bm-main .rtcl-MyAccount-mobile-navbar, .bm-main .rtcl .rtcl-popup-content { background: var(--surface); color: var(--text); border-color: var(--line); box-shadow: none; }
.bm-main .rtcl-single-listing-details .rtcl-listing-title .entry-title { color: var(--text); font: 400 28px/1.2 'Permanent Marker', cursive; }
.bm-main .rtcl-breadcrumb, .bm-main .rtcl-breadcrumb a,
.bm-main .rtcl-single-listing-details .rtcl-listing-meta-data li,
.bm-main .rtcl-single-listing-details .rtcl-listing-meta-data li a { color: var(--muted); border-color: var(--line); }
.bm-main .rtcl-listing-description p, .bm-main .rtcl-listing-user-info p,
.bm-main .rtcl-single-listing-details .rtcl-listing-description { color: var(--text); }
.bm-main .rtcl-single-listing-details .rtcl-listing-title { border-color: var(--line); }
.bm-main .rtcl-widget .wp-block-heading { font: 700 20px 'Barlow Condensed', sans-serif; }
.bm-main .rtcl-single-listing-details .rtcl-price { color: var(--text); font: 700 26px 'Barlow Condensed', sans-serif; }
.bm-site .bm-main .rtcl .have-registration-form, .bm-site .bm-main .rtcl .rtcl-intl-phone-panel { background: var(--surface); color: var(--text); border-color: var(--line); }
.bm-site .bm-main .rtcl .have-registration-form h2 { color: var(--text); font: 700 28px 'Barlow Condensed', sans-serif; }
.bm-main #rtcl-user-login-wrapper, .bm-main .rtcl-user-registration-wrapper { background: var(--surface); color: var(--text); border: 1px solid var(--line); border-radius: 3px; }
.bm-main #rtcl-user-login-wrapper h2, .bm-main .rtcl-user-registration-wrapper h2 { color: var(--text); font: 700 28px 'Barlow Condensed', sans-serif; }
.bm-site .bm-main .rtcl .have-registration-form label,
.bm-site .bm-main .rtcl .have-registration-form .rtcl-check,
.bm-site .bm-main .rtcl .have-registration-form .rtcl-field-description { color: var(--muted); }
/* The events plugin uses its own palette and the old theme had fixed white text. */
.bm-main .tribe-common {
  --tec-color-text-primary: var(--text); --tec-color-text-secondary: var(--muted);
  --tec-color-text-events-title: var(--text); --tec-color-link-primary: var(--text);
  --tec-color-link-accent: var(--bm-hover); --tec-color-accent-primary: var(--bm-hover);
  --tec-color-background: var(--surface); --tec-color-border-default: var(--line);
  color: var(--text);
}
.bm-main .tribe-events { background: var(--surface); border: 1px solid var(--line); box-shadow: none; }
.bm-site .bm-main .tribe-common :is(h2,h3,p,time,label),
.bm-main .tribe-common :is(.tribe-common-b1,.tribe-common-b2,.tribe-common-b3,.tribe-common-h3,.tribe-common-h4,.tribe-common-h5,.tribe-common-h6,.tribe-common-h7) { color: var(--text); }
.bm-main .tribe-events-calendar-list__event-description,
.bm-main .tribe-events-calendar-list__event-datetime,
.bm-main .tribe-events-calendar-list__event-date-tag-weekday,
.bm-main .tribe-events-calendar-list__event-date-tag-daynum { color: var(--text); }
.bm-site .bm-main .tribe-common a { color: var(--text); }
.bm-site .bm-main .tribe-common a:hover { color: var(--bm-hover); }
.bm-main .tribe-events-header, .bm-main .tribe-events-c-view-selector__content,
.bm-main .tribe-events-c-top-bar__datepicker-container .datepicker { background: var(--surface); color: var(--text); border-color: var(--line); }
.bm-main .tribe-events-calendar-list__event-row { background: var(--surface); border-color: var(--line); }
.bm-main .tribe-events-c-events-bar, .bm-main .tribe-events-c-events-bar--border,
.bm-main .tribe-events-c-events-bar__search-container, .bm-main .tribe-events-c-events-bar__search,
.bm-main .tribe-events-c-search, .bm-main .tribe-events-c-events-bar__views,
.bm-main .tribe-events-c-view-selector, .bm-main .tribe-events-c-view-selector__content { background: var(--surface) !important; color: var(--text) !important; border-color: var(--line) !important; }
.bm-main .tribe-events .tribe-events-c-search__input,
.bm-main .tribe-common .tribe-common-form-control-text__input { color: var(--text) !important; }
.bm-main .tribe-events .tribe-events-c-search__input::placeholder,
.bm-main .tribe-common .tribe-common-form-control-text__input::placeholder { color: var(--muted); }
.bm-main .tribe-events-c-view-selector__button, .bm-main .tribe-events-c-view-selector__button-text,
.bm-main .tribe-events-c-view-selector__list-item-text, .bm-main .tribe-events-c-events-bar__search-button,
.bm-main .tribe-events-c-events-bar__search-button-text { color: var(--text) !important; }
.bm-panel, .entry-content, .entry-summary, .comments-area { background: var(--surface); border: 1px solid var(--line); box-shadow: none; color: var(--text); }
.bm-card-title { color: var(--text); font-family: 'Barlow Condensed', sans-serif; }
.bm-main .bm-button, .bm-main input[type=submit], .bm-main button, #store-search-dialog .acid-button { background: var(--acid); border-color: var(--acid); color: var(--ink); }
.store-footer { border-top: 1px solid var(--line); background: var(--bg); }
.store-footer .footer-brand .native-moth { height: auto; }
.store-footer .footer-brand:hover { color: var(--text); }
#store-search-dialog { font-family: 'Roboto Condensed', Arial, sans-serif; }
#store-search-dialog .icon-button { color: var(--text); background: transparent; border: 0; }
#store-search-dialog .dialog-search input { background: var(--surface); color: var(--text); }
@media (max-width: 1100px) and (min-width: 651px) { .header-inner { flex-wrap: wrap; } .header nav { flex-basis: 100%; order: 3; padding-block: 8px; } .header-actions { margin-left: auto; } }
@media (max-width: 650px) {
  .header .brand, .header .brand>.native-moth { width: 64px; height: 42px; }
  .header .header-inner { padding-inline: 10px; }
  .header-actions .store-action { min-width: 28px; padding: 4px; }
  .header-actions .store-action svg { width: 21px; height: 21px; }
  .header nav.open { display: flex; }
  .bm-main { padding: 30px 16px 40px; }
  .bm-front { text-align: left; gap: 20px; }
  .bm-front>section:first-child { padding-bottom: 22px; }
  .bm-front>section:first-child::after { right: 0; top: 30px; font-size: 48px; opacity: .35; }
  .bm-title { font-size: 36px; }
  .bm-script { font-size: 18px; letter-spacing: 5px; }
  .bm-lead { font-size: 15px; }
  .bm-main .rtcl .rtcl-listings-actions { flex-wrap: wrap; align-items: stretch; gap: 12px; }
  .bm-main .rtcl .rtcl-ordering, .bm-main .rtcl .rtcl-ordering select { width: 100%; }
  .bm-main .rtcl .item-content { padding: 18px; }
}
@media (prefers-reduced-motion: reduce) { .bm-main .rtcl .listing-item { transition: none; } }

/* Preserve the complete artwork on the Rooted in Rebellion sticker card. */
.bm-main .rtcl .listing-thumb img[src*="rooted-in-rebellion-sticker"] { object-fit: contain; background: #ffffff; }

/* Black Moth cart and the sticker's native WooCommerce purchase form. */
.bm-sticker-purchase { margin: 0 0 28px; padding: 22px 0; border-bottom: 1px solid var(--line, #dedede); }
.bm-sticker-purchase form.cart { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin: 0 0 12px; }
.bm-sticker-purchase .quantity { display: flex; align-items: center; }
.bm-sticker-purchase .qty { width: 76px; height: 48px; padding: 8px; border: 1px solid #777; border-radius: 0; background: var(--surface, #ffffff); color: var(--text, #151615); font: inherit; }
.bm-sticker-purchase .single_add_to_cart_button,
.bm-main .woocommerce a.button,
.bm-main .woocommerce button.button,
.bm-checkout-pending .button { background: #deff00 !important; color: #151615 !important; border: 1px solid #151615; border-radius: 0 !important; padding: 14px 22px !important; font-weight: 800; text-transform: uppercase; line-height: 1.2; text-decoration: none; }
.bm-sticker-purchase .single_add_to_cart_button:hover,
.bm-main .woocommerce .button:hover { background: #c7e600 !important; }
.bm-view-cart { display: inline-block; text-underline-offset: 4px; font-weight: 700; }
.bm-main .woocommerce { color: inherit; }
.bm-main .woocommerce table.shop_table { border-color: var(--line, #dedede); border-radius: 0; }
.bm-main .woocommerce table.shop_table td, .bm-main .woocommerce table.shop_table th { border-color: var(--line, #dedede); }
.bm-main .woocommerce .product-thumbnail img { width: 92px; height: auto; object-fit: contain; }
.bm-main .woocommerce .quantity .qty { min-height: 42px; color: inherit; background: transparent; border: 1px solid #777; }
.bm-main .woocommerce .woocommerce-info,
.bm-main .woocommerce .woocommerce-message,
.bm-sticker-purchase .woocommerce-message { background: var(--surface, #ffffff); color: inherit; border-top-color: #deff00; }
.bm-main .woocommerce .woocommerce-message::before,
.bm-sticker-purchase .woocommerce-message::before { color: #327446; }
.bm-main .woocommerce .coupon { display: none; }
.bm-main .woocommerce .cart_totals { float: none; width: 100%; max-width: 520px; margin-left: auto; }
.bm-main .woocommerce .wc-proceed-to-checkout a.checkout-button { font-size: 18px; }
.bm-checkout-pending { padding: 24px 0; }
@media (max-width: 600px) { .bm-main .woocommerce .cart_totals { max-width: none; } .bm-main .woocommerce table.shop_table_responsive tr td { background: transparent !important; } .bm-sticker-purchase .woocommerce-message a.button { float: none; display: block; margin-bottom: 10px; } }
