/* RAVEN VAULT — OVERRIDE (EasyOrders "ab-" class system) */
:root{
  --rv-black:#050505;
  --rv-surface:#0d0d0d;
  --rv-white:#f4f4f4;
  --rv-muted:#929292;
  --rv-border:#252525;
  --rv-font-heading: Arial, Helvetica, sans-serif;
  /* Override the theme's own brand/"skin" color variables (best guess at
     the variable names) so any element still using them site-wide,
     including icons, also switches from blue to white automatically */
  --color-skin-primary: 244 244 244;
  --color-primary: #f4f4f4;
  --skin-primary: #f4f4f4;

  /* Official theme palette variables (discovered in the page's __NEXT_DATA__
     theme_config.palette — these are the theme's intended customization
     hooks, so defining them directly is the most reliable fix) */
  --ft-bg: #050505;
  --ft-text: #f4f4f4;
  --hd-bg: #050505;
  --hd-text: #f4f4f4;
  --ann-bg: #050505;
  --ann-text: #f4f4f4;
  --input-bg: #0d0d0d;
  --input-text: #f4f4f4;
  --input-border: #252525;
  --body-bg: #050505;
  --body-text: #f4f4f4;
  --buy-btn-bg: #050505;
  --buy-btn-text: #f4f4f4;
  --buy-btn-border: #f4f4f4;
  --crt-btn-bg: #f4f4f4;
  --crt-btn-text: #050505;
  --crt-btn-border: #f4f4f4;
  --checkout-form-bg: #050505;
  --checkout-heading-text: #f4f4f4;
  --product-name-text: #f4f4f4;
  --product-price-text: #f4f4f4;
  --product-sale-price-text: #f4f4f4;
}

html, body {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  overflow-x: hidden !important;
  min-height: 100%;
}
body { margin: 0; }

/* Dark scrollbar so it blends with the theme instead of showing as a
   light-grey strip */
html { scrollbar-color: var(--rv-white) var(--rv-black); scrollbar-width: thin; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--rv-black); }
::-webkit-scrollbar-thumb { background: var(--rv-white); border: 2px solid var(--rv-black); }
::-webkit-scrollbar-thumb:hover { background: #cccccc; }

h1, h2, h3, h4, h5, h6 {
  font-family: var(--rv-font-heading) !important;
  letter-spacing: .03em;
}

/* Generic page wrappers — catches any gap between sections that still
   has the theme's default white background */
html body #__next,
html body main,
html body .app_container,
html body .napp_container,
html body .content_container,
html body .ncontent_container,
html body [class*="wrapper"],
html body [class*="layout"],
html body [class*="outer"],
html body [id*="__next"] {
  background: var(--rv-black) !important;
  border: none !important;
  box-shadow: none !important;
}

/* SAFETY NET — auto-darkens any section/banner/card/grid/slider we
   haven't explicitly styled yet (covers new sections added later).
   Placed early so the more specific rules further down (e.g. the
   surface color on .ab-cat-card) still win over this default. */
html body [class*="banner"],
html body [class*="section"],
html body [class*="grid"],
html body [class*="slider"],
html body [class*="track"],
html body [class*="carousel"],
html body [class*="hero"] {
  background-color: var(--rv-black) !important;
  border-color: var(--rv-border) !important;
  box-shadow: none !important;
}
html body [class*="card"] {
  background-color: var(--rv-surface) !important;
  border-color: var(--rv-border) !important;
  box-shadow: none !important;
}

/* ===== Header / top nav ===== */
.ab-header,
.ab-header-inner,
.ab-preloader,
.ab-preloader--logo-fade,
.ab-preloader--logo_fade,
.ab-inner-announce,
.ab-no-announce {
  background-color: var(--rv-black) !important;
  color: var(--rv-white) !important;
}
@keyframes rv-preloader-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: .55; transform: scale(.92); }
}
.ab-preloader-logo {
  animation: rv-preloader-pulse 1.4s ease-in-out infinite;
}
.ab-header {
  background-color: rgba(5,5,5,.96) !important;
  border-bottom: 1px solid var(--rv-border) !important;
  box-shadow: none !important;
  position: fixed !important;
  top: 38px !important; /* pushes header down to make room for the free-shipping banner above it */
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
}
.header-col-left,
.header-col-center,
.header-col-right,
.ab-header-col-left,
.ab-header-col-center,
.ab-header-col-right {
  color: var(--rv-white) !important;
}
.ab-header a,
.ab-header-col-left a,
.ab-header-col-center a,
.ab-header-col-right a {
  color: var(--rv-white) !important;
  text-decoration: none;
}
.ab-hamburger,
.ab-icon-btn,
.search-btn,
.ab-nav,
.ab-nav-ready {
  color: var(--rv-white) !important;
}

/* Logo */
.ab-logo {
  letter-spacing: .12em !important;
  filter: grayscale(1) brightness(1.8);
}
@media (max-width: 768px) {
  .ab-logo,
  .ab-mobile-logo,
  .ab-footer-logo {
    transform: scale(1.35);
    transform-origin: center;
  }
}

/* Cart */
.cart-btn { color: var(--rv-white) !important; }
.ab-cart-count {
  background: var(--rv-white) !important;
  color: var(--rv-black) !important;
}

/* Mobile menu */
.ab-mobile-menu,
.ab-mobile-menu-header {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
  border-left: 1px solid var(--rv-border) !important;
}
.ab-mobile-menu {
  padding-top: 38px !important;
}
.ab-mobile-overlay {
  background: rgba(0,0,0,.7) !important;
}
.ab-mobile-close,
#eo-mobile-close {
  color: var(--rv-white) !important;
  position: relative !important;
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: var(--rv-surface) !important;
  border: 1px solid var(--rv-border) !important;
  border-radius: 50% !important;
}
.ab-mobile-close::before,
#eo-mobile-close::before {
  content: "\2715" !important; /* ✕ */
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  font-size: 20px !important;
  line-height: 1 !important;
  color: var(--rv-white) !important;
}
.ab-mobile-nav a {
  color: var(--rv-white) !important;
  border-bottom: 1px solid var(--rv-border) !important;
}
.ab-mobile-logo { filter: grayscale(1) brightness(1.8); }

/* ===== Home categories section ===== */
.ab-categories {
  background: var(--rv-black) !important;
  border: none !important;
  box-shadow: none !important;
  padding-top: 24px !important;
}
.ab-categories-header,
.ab-categories-title {
  color: var(--rv-white) !important;
  text-transform: uppercase !important;
  letter-spacing: .18em !important;
  font-weight: 700 !important;
  font-size: 12px !important;
}
.ab-cat-slider,
.ab-categories-track {
  background: transparent !important;
}
.ab-cat-card {
  background: var(--rv-surface) !important;
  border: none !important;
  border-radius: 0 !important;
  overflow: hidden;
  transition: transform .25s;
}
.ab-cat-card:hover {
  transform: translateY(-3px);
}
.ab-cat-image-wrapper {
  background: var(--rv-black) !important;
  overflow: hidden;
}
.ab-cat-image-wrapper img {
  transition: transform .35s ease;
}
.ab-cat-card:hover .ab-cat-image-wrapper img {
  transform: scale(1.06);
}
.ab-cat-label {
  background: var(--rv-surface) !important;
  color: var(--rv-white) !important;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 11px !important;
}

/* ===== Featured hero banner (e.g. "Raven Originals / View All") ===== */
.ab-featured-hero {
  background: var(--rv-surface) !important;
  position: relative;
  overflow: hidden;
  margin-top: 90px !important;
}
.ab-featured-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(5,5,5,.55);
  pointer-events: none;
}
.ab-featured-hero-content,
.ab-featured-hero-overlay,
.ab-featured-hero-subtitle,
.ab-featured-hero-cta {
  position: relative;
  z-index: 1;
}
.ab-featured-hero-overlay {
  background: transparent !important;
}
.ab-featured-hero-content {
  color: var(--rv-white) !important;
}
.ab-featured-hero-subtitle {
  color: var(--rv-muted) !important;
}
.ab-featured-hero-cta {
  color: var(--rv-white) !important;
  border-color: var(--rv-border) !important;
  text-decoration: none;
}
.ab-featured-layout,
.ab-featured-products {
  background: var(--rv-black) !important;
}

/* ===== Cart drawer (side panel) ===== */
.ab-cart-drawer,
.ab-cart-drawer * {
  background-color: var(--rv-black) !important;
  color: var(--rv-white) !important;
}
.ab-cart-drawer .text-gray-400,
.ab-cart-drawer .text-gray-500 {
  color: var(--rv-muted) !important;
}
.ab-cart-drawer [class*="f3f3f3"] {
  background-color: var(--rv-white) !important;
  color: var(--rv-black) !important;
}
.ab-cart-drawer .divide-gray-200 > * {
  border-color: var(--rv-border) !important;
}

/* Fallback for EasyOrders' cart drawer when the component does not expose
   the Raven class above: keep only the drawer surface itself dark. */
.qty-box-wrapper {
  background: var(--rv-surface) !important;
  border: 1px solid var(--rv-border) !important;
}
.custom-trash-btn { color: var(--rv-muted) !important; }

/* ===== Collection / category listing page ===== */
.text-heading { color: var(--rv-white) !important; }
.collection_container { background: var(--rv-black) !important; }
.category_section_header {
  background: transparent !important;
  border-color: var(--rv-border) !important;
}
.category_section_header_title {
  color: var(--rv-white) !important;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.ab-pgrid,
.ab-pgrid-wrap,
.ab-pgrid-media {
  background: var(--rv-black) !important;
}
.ab-pgrid-card {
  background: var(--rv-surface) !important;
  border: none !important;
  border-radius: 0 !important;
  overflow: hidden;
  transition: transform .25s;
}
.ab-pgrid-card:hover {
  transform: translateY(-3px);
}
.ab-pgrid-info { background: var(--rv-surface) !important; }
.ab-pgrid-name {
  color: var(--rv-white) !important;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 12px !important;
}
.ab-pgrid-price { color: var(--rv-muted) !important; }
.ab-pgrid-add-btn {
  background: var(--rv-white) !important;
  color: var(--rv-black) !important;
  border: 1px solid var(--rv-white) !important;
  border-radius: 0 !important;
}
.ab-pgrid-add-btn:hover {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
}
.ab-pgrid-swatches { background: transparent !important; }

/* ===== Product page ===== */
.text-skin-primary.text-skin-primary.text-skin-primary,
.cart-btn.cart-btn.cart-btn,
.ab-cart-count.ab-cart-count.ab-cart-count,
.custom-trash-btn.custom-trash-btn.custom-trash-btn,
.ab-icon-btn.ab-icon-btn.ab-icon-btn,
.ab-gallery-zoom.ab-gallery-zoom.ab-gallery-zoom { color: var(--rv-white) !important; }
.bg-skin-primary.bg-skin-primary.bg-skin-primary.bg-skin-primary,
.hover\:bg-skin-primary:hover { background-color: var(--rv-black) !important; color: var(--rv-white) !important; border: 1px solid var(--rv-white) !important; }
.border-skin-primary.border-skin-primary.border-skin-primary { border-color: var(--rv-border) !important; }

.product_container,
.p_content_container,
.p_details_container,
.p_gallery_container {
  background: var(--rv-black) !important;
}

.ab-breadcrumbs,
.ab-breadcrumbs-item,
.ab-breadcrumbs-sep { color: var(--rv-muted) !important; }
.ab-breadcrumbs-current { color: var(--rv-white) !important; }

.ab-gallery,
.ab-gallery-main-media,
.ab-gallery-slide,
.ab-gallery-track { background: var(--rv-black) !important; }
.ab-gallery-zoom { color: var(--rv-white) !important; }
.ab-lightbox-backdrop { background: rgba(0,0,0,.9) !important; }
.ab-lightbox-close { color: var(--rv-white) !important; }

.ab-pd-name {
  color: var(--rv-white) !important;
  font-size: clamp(28px,5vw,54px) !important;
  font-weight: 800 !important;
  letter-spacing: -.02em !important;
}
.ab-pd-price {
  color: var(--rv-white) !important;
  font-weight: 600 !important;
}
.ab-pd-divider { border-color: var(--rv-border) !important; }

.quantity_btn_container {
  background: var(--rv-surface) !important;
  border: 1px solid var(--rv-border) !important;
  color: var(--rv-white) !important;
}
.checkout_btn.checkout_btn.checkout_btn,
.add_to_cart_btn.add_to_cart_btn.add_to_cart_btn,
.form_checkout_btn.form_checkout_btn.form_checkout_btn {
  background: var(--rv-white) !important;
  color: var(--rv-black) !important;
  border: 1px solid var(--rv-white) !important;
  border-radius: 0 !important;
  text-transform: uppercase !important;
  letter-spacing: .1em !important;
  font-weight: 800 !important;
}
.checkout_btn.checkout_btn.checkout_btn *,
.add_to_cart_btn.add_to_cart_btn.add_to_cart_btn *,
.form_checkout_btn.form_checkout_btn.form_checkout_btn * {
  color: inherit !important;
}
.checkout_btn.checkout_btn.checkout_btn:hover,
.add_to_cart_btn.add_to_cart_btn.add_to_cart_btn:hover,
.form_checkout_btn.form_checkout_btn.form_checkout_btn:hover {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
}

.lq-desc-accordion {
  background: var(--rv-black) !important;
  border-color: var(--rv-border) !important;
  color: var(--rv-muted) !important;
}
.lq-desc-accordion * { color: inherit !important; }

/* Related products ("You may also like") */
.ab-plist,
.ab-plist-track { background: var(--rv-black) !important; }
.ab-plist-title,
.ab-plist-header {
  color: var(--rv-white) !important;
  text-transform: uppercase !important;
  letter-spacing: .14em !important;
  font-weight: 700 !important;
}
.ab-plist-arrow,
.ab-plist-prev,
.ab-plist-next {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
  border: 1px solid var(--rv-border) !important;
}

/* ===== Footer ===== */
.ab-footer {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
  border-top: 1px solid var(--rv-border) !important;
}
.ab-footer-columns { gap: 22px !important; }
.ab-footer-col { color: var(--rv-muted) !important; }
.ab-footer-heading {
  color: var(--rv-white) !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}
.ab-footer-links a {
  color: var(--rv-muted) !important;
  font-size: 11px !important;
  letter-spacing: .08em;
}
.ab-footer-links a:hover { color: var(--rv-white) !important; }
.ab-footer-brand-section { color: var(--rv-muted) !important; }
.ab-footer-bottom {
  border-top: 1px solid var(--rv-border) !important;
  color: var(--rv-muted) !important;
}
.ab-footer-copy { color: var(--rv-muted) !important; font-size: 10px !important; }
/* payment icons keep their natural brand colors — no filter applied */
.ab-footer-powered { display: none !important; }

/* ===== Inputs (kept for future product/checkout pages) ===== */
.global_input,
.global_textarea,
.gov_select {
  background: var(--rv-surface) !important;
  color: var(--rv-white) !important;
  border: 1px solid var(--rv-border) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.global_input:focus,
.global_textarea:focus,
.gov_select:focus {
  border-color: var(--rv-white) !important;
  outline: none !important;
}

button[type="submit"][type="submit"][type="submit"],
button[type="submit"][type="submit"][type="submit"] * {
  background: var(--rv-white) !important;
  color: var(--rv-black) !important;
  border: 1.5px solid var(--rv-white) !important;
  border-radius: 3px !important;
}
button[type="submit"][type="submit"][type="submit"]:hover,
button[type="submit"][type="submit"][type="submit"]:hover * {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
}

.fixed.bottom-0.left-0.right-0.z-50.mt-2.flex.items-center.justify-center.border-t.border-gray-200.py-2.max-md\:p-4.max-md\:bg-white.lg\:static.lg\:border-t-0 {
  background: var(--rv-black) !important;
  border-top: 1px solid var(--rv-border) !important;
  position: fixed !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9998 !important;
  padding: 14px 20px !important;
}

/* Buy Now bottom wrapper — robust selector plus legacy fallback */
html body div:has(> .checkout_buy_now),
html body div:has(> form .checkout_buy_now),
html body div:has(.checkout_buy_now) {
  background: var(--rv-black) !important;
  border-color: var(--rv-border) !important;
}

/* ===== Checkout page ===== */
.checkout_container,
.checkout_bg_left,
.checkout_bg_right,
[class*="split-layout"] {
  background: var(--rv-black) !important;
  border: none !important;
  box-shadow: none !important;
  padding-top: 104px !important; /* clears the fixed banner (38px) + header (66px) */
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}
.checkout_form,
.checkout_order_summary,
.checkout_cart_items_container {
  background: var(--rv-black) !important;
  border: none !important;
  box-shadow: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}
.checkout_order_summary input,
.checkout_order_summary input[type="text"] {
  background: var(--rv-surface) !important;
  color: var(--rv-white) !important;
  border: 1px solid var(--rv-border) !important;
  border-radius: 3px !important;
}
.checkout_order_summary input::placeholder {
  color: var(--rv-muted) !important;
  opacity: 1 !important;
}
.checkout_order_summary [class*="bg-white"] {
  background: var(--rv-surface) !important;
  color: var(--rv-white) !important;
  border-color: var(--rv-border) !important;
}
.checkout_order_summary [class*="bg-white"] * {
  color: var(--rv-white) !important;
}
.checkout_buy_now.checkout_buy_now.checkout_buy_now,
.checkout_buy_now.checkout_buy_now.checkout_buy_now * {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
  border: 1px solid var(--rv-white) !important;
  transition: background .2s ease, color .2s ease, transform .2s ease;
}
.checkout_buy_now.checkout_buy_now.checkout_buy_now:hover {
  background: var(--rv-white) !important;
  color: var(--rv-black) !important;
  transform: translateY(-2px) scale(1.01);
}
.checkout_buy_now.checkout_buy_now.checkout_buy_now:hover * {
  color: var(--rv-black) !important;
}
.checkout_form.checkout_form.checkout_form button[type="submit"],
.checkout_form.checkout_form.checkout_form button[type="submit"] *,
.form_checkout_btn.form_checkout_btn.form_checkout_btn,
.form_checkout_btn.form_checkout_btn.form_checkout_btn * {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
  border: 1.5px solid var(--rv-white) !important;
  border-radius: 3px !important;
  transition: background .2s ease, color .2s ease, transform .2s ease;
}
.checkout_form.checkout_form.checkout_form button[type="submit"]:hover,
.checkout_form.checkout_form.checkout_form button[type="submit"]:hover *,
.form_checkout_btn.form_checkout_btn.form_checkout_btn:hover,
.form_checkout_btn.form_checkout_btn.form_checkout_btn:hover * {
  background: var(--rv-white) !important;
  color: var(--rv-black) !important;
}
.checkout_form.checkout_form.checkout_form button[type="submit"]:hover,
.form_checkout_btn.form_checkout_btn.form_checkout_btn:hover {
  transform: translateY(-2px) scale(1.01);
}
/* Force every descendant of the form/summary to black too — text
   color rules further below still apply on top of this */
.checkout_container.checkout_container.checkout_container *:not(input):not(textarea):not(select):not(button),
.checkout_form.checkout_form.checkout_form *:not(input):not(textarea):not(select):not(button),
.checkout_order_summary.checkout_order_summary.checkout_order_summary *:not(input):not(textarea):not(select):not(button),
.checkout_cart_items_container.checkout_cart_items_container.checkout_cart_items_container *:not(input):not(textarea):not(select):not(button) {
  background-color: var(--rv-black) !important;
}
#contact-info-heading {
  color: var(--rv-white) !important;
  background-color: var(--rv-black) !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  margin-bottom: 22px !important;
}
.global_input,
.global_textarea,
.select__control {
  background-color: var(--rv-surface) !important; /* keep inputs one shade lighter so they're visible as fields */
}
.checkout_form {
  padding: 28px 24px !important;
  padding-bottom: 100px !important;
}
.checkout_form [class*="bg-gray"],
.checkout_form [class*="bg-white"],
.checkout_form .max-md\:bg-white {
  background: transparent !important;
}
.checkout_form label,
.checkout_form p,
.checkout_form span {
  color: var(--rv-muted) !important;
}
.contact-info-heading {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
  font-size: 19px !important;
  font-weight: 700 !important;
  margin-bottom: 22px !important;
}
.select__control.select__control.select__control,
.select__control.select__control.select__control:hover,
.select__control.select__control.select__control:focus,
.select__control--is-focused.select__control--is-focused.select__control--is-focused,
.select__control--menu-is-open.select__control--menu-is-open.select__control--menu-is-open,
.checkout_form [class*="-control"][class*="-control"][class*="-control"] {
  background-color: var(--rv-surface) !important;
  outline: none !important;
  box-shadow: none !important;
  border: 1px solid var(--rv-border) !important;
  border-radius: 3px !important;
  min-height: 46px !important;
  margin-top: 4px !important;
  margin-bottom: 16px !important;
  transition: border-color .2s ease, transform .2s ease;
}
.checkout_form [class*="-control"][class*="-control"][class*="-control"]:hover,
.checkout_form .select__control.select__control.select__control:hover,
.checkout_form .select__control--is-focused.select__control--is-focused.select__control--is-focused,
.checkout_form .select__control--menu-is-open.select__control--menu-is-open.select__control--menu-is-open {
  background-color: var(--rv-surface) !important;
  border-color: var(--rv-white) !important;
  transform: translateY(-1px);
}
.global_input,
.global_textarea {
  border-radius: 3px !important;
  padding: 13px 14px !important;
  margin-top: 4px !important;
  margin-bottom: 16px !important;
}
.checkout_order_summary, .checkout_order_summary *,
.checkout_cart_items_container, .checkout_cart_items_container *,
.shipping_cost_container, .shipping_cost_container *,
.cart-item, .cart-item * {
  color: var(--rv-white) !important;
}
.contact-info-heading { color: var(--rv-white) !important; }
.qty-box-wrapper {
  background: var(--rv-black) !important;
  border: 1px solid var(--rv-border) !important;
}
.custom-trash-btn { color: var(--rv-muted) !important; }

/* React-select dropdown (e.g. "المحافظة") */
.select__single-value,
.select_single_value,
.select__value-container,
[class*="-singleValue"] {
  color: var(--rv-white) !important;
}
.checkout_form [class*="-menu"] {
  background-color: var(--rv-black) !important;
}
.checkout_form [class*="-menu-list"] {
  padding: 6px !important;
  background-color: var(--rv-black) !important;
}
.checkout_form [class*="-option"][class*="-option"][class*="-option"] {
  color: var(--rv-white) !important;
  background-color: var(--rv-black) !important;
  border-radius: 3px !important;
  padding: 12px 14px !important;
  margin-bottom: 2px !important;
  font-size: 14px !important;
  transition: background-color .15s ease;
}
.checkout_form [class*="-option"][class*="-option"][class*="-option"]:hover,
.checkout_form [class*="-option"][class*="isFocused"],
.checkout_form [class*="-option"][class*="is-focused"] {
  background-color: var(--rv-surface) !important;
  color: var(--rv-white) !important;
}
.checkout_form [class*="-option"][class*="isSelected"],
.checkout_form [class*="-option"][class*="is-selected"],
.checkout_form [class*="--is-selected"][class*="--is-selected"][class*="--is-selected"] {
  background-color: var(--rv-white) !important;
  color: var(--rv-black) !important;
}
.select__indicator,
.select__dropdown-indicator,
.select__indicators,
[class*="-indicatorContainer"] {
  color: var(--rv-muted) !important;
}
.gov_select hr,
.gov_select [class*="divider"],
.gov_select [class*="Divider"] {
  display: none !important;
}
.gov_select { border-color: transparent !important; }

/* Native form control accent color (radio buttons, checkboxes) */
input[type="radio"],
input[type="checkbox"] {
  accent-color: var(--rv-white);
}
.border-blue-600.border-blue-600.border-blue-600,
.border-blue-300.border-blue-300.border-blue-300,
[class*="border-blue"] {
  border-color: var(--rv-white) !important;
}

/* Payment method cards */
.payments_container { background: transparent !important; }
.payment_card {
  background: var(--rv-surface) !important;
  border: 1px solid var(--rv-border) !important;
  border-radius: 0 !important;
}
.payment_card:hover { border-color: #666 !important; }
.payment_card_content,
.payment_card_name { color: var(--rv-white) !important; }
.payment_card_description { color: var(--rv-muted) !important; }
.radio_container { background: transparent !important; }
.radio_circle { border-color: #777 !important; }

@media (max-width: 768px) {
  .ab-footer-columns { gap: 14px !important; }
  .ab-categories { padding-top: 20px !important; }
  .ab-featured-hero { margin-top: 75px !important; }
}

/* ===== Order confirmation ("Thanks for your order") ===== */
.ab-thanks,
.ab-thanks-content,
.ab-thanks-default {
  background: var(--rv-black) !important;
}
.ab-thanks-title {
  color: var(--rv-white) !important;
  font-weight: 700 !important;
}
.ab-thanks-message,
.ab-thanks-phone-msg {
  color: var(--rv-muted) !important;
}
.ab-thanks-offers { color: var(--rv-white) !important; }
.ab-thanks-home-btn.ab-thanks-home-btn.ab-thanks-home-btn {
  background: var(--rv-white) !important;
  color: var(--rv-black) !important;
  border: 1px solid var(--rv-white) !important;
  border-radius: 0 !important;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 700;
}
.ab-thanks-home-btn.ab-thanks-home-btn.ab-thanks-home-btn:hover {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
}

/* Order invoice / tracking */
.ab-invoice,
.ab-invoice-body,
.ab-invoice-main,
.ab-invoice-header {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
  border-color: var(--rv-border) !important;
}
.ab-invoice-section-title {
  color: var(--rv-white) !important;
  text-transform: uppercase;
  letter-spacing: .1em;
  font-weight: 700;
}
.ab-invoice-item,
.ab-invoice-items {
  background: var(--rv-black) !important;
  border-color: var(--rv-border) !important;
}
.ab-invoice-item-img { background: var(--rv-surface) !important; }
.ab-invoice-item-name,
.ab-invoice-item-total,
.ab-invoice-item-unit-price,
.ab-invoice-item-qty { color: var(--rv-white) !important; }
.ab-invoice-dl.ab-invoice-dl.ab-invoice-dl,
.ab-invoice-dl-row.ab-invoice-dl-row.ab-invoice-dl-row,
.ab-invoice-totals.ab-invoice-totals.ab-invoice-totals,
.ab-invoice-total-row.ab-invoice-total-row.ab-invoice-total-row {
  border-color: var(--rv-border) !important;
  color: var(--rv-white) !important;
}
.ab-invoice-dl-row.ab-invoice-dl-row.ab-invoice-dl-row *,
.ab-invoice-totals.ab-invoice-totals.ab-invoice-totals *,
.ab-invoice-total-row.ab-invoice-total-row.ab-invoice-total-row * {
  color: var(--rv-white) !important;
}
[class*="bg-blue"] {
  background-color: var(--rv-white) !important;
  color: var(--rv-black) !important;
}
[class*="text-blue"] {
  color: var(--rv-white) !important;
}
.ab-invoice-status-label { color: var(--rv-muted) !important; }
.ab-invoice-status-value { color: var(--rv-white) !important; }
.ab-invoice-status-row,
.ab-invoice-timeline,
.ab-invoice-shipping,
.ab-invoice-notes-list,
.ab-invoice-note-date {
  background: var(--rv-black) !important;
  color: var(--rv-muted) !important;
  border-color: var(--rv-border) !important;
}
.ab-invoice-track-btn.ab-invoice-track-btn.ab-invoice-track-btn {
  background: var(--rv-white) !important;
  color: var(--rv-black) !important;
  border: 1px solid var(--rv-white) !important;
  border-radius: 0 !important;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 700;
}
.ab-invoice-track-btn.ab-invoice-track-btn.ab-invoice-track-btn:hover {
  background: var(--rv-black) !important;
  color: var(--rv-white) !important;
}

/* ===== Extra polish: hover animations ===== */
.ab-logo {
  transition: transform .25s ease, filter .25s ease;
}
.ab-header .ab-logo:hover {
  transform: scale(1.06);
  filter: grayscale(1) brightness(2.1);
}
.ab-cat-card:hover,
.ab-pgrid-card:hover {
  box-shadow: 0 14px 32px rgba(0,0,0,.55) !important;
}
.checkout_btn.checkout_btn.checkout_btn,
.add_to_cart_btn.add_to_cart_btn.add_to_cart_btn,
.form_checkout_btn.form_checkout_btn.form_checkout_btn {
  transition: background .2s ease, color .2s ease, transform .2s ease;
}
.checkout_btn.checkout_btn.checkout_btn:hover,
.add_to_cart_btn.add_to_cart_btn.add_to_cart_btn:hover,
.form_checkout_btn.form_checkout_btn.form_checkout_btn:hover {
  transform: translateY(-2px);
}

/* ===== Extra polish: subtle background texture / depth ===== */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: .045;
  background-image: radial-gradient(rgba(255,255,255,.9) 1px, transparent 1px);
  background-size: 4px 4px;
}
body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at 50% 0%, rgba(255,255,255,.05), transparent 60%);
}
#__next, .app_container, main {
  position: relative;
  z-index: 1;
}


/* ===== BUY NOW / PAYMENT METHODS — V54.1 =====
   Reserve space after payment methods only. This prevents the fixed Buy Now
   bar from covering them without changing the order/position of form fields. */
.payments_container {
  margin-bottom: 90px !important;
}

@media (max-width: 768px) {
  .payments_container {
    margin-bottom: 110px !important;
  }
}

/* Keep the Buy Now wrapper above the checkout content. */
html body div:has(> .checkout_buy_now),
html body div:has(> form .checkout_buy_now),
html body div:has(.checkout_buy_now) {
  z-index: 1000 !important;
}
