:root {
  --site-header-h: 3.25rem;
}
@media (min-width: 768px) {
  :root { --site-header-h: 10rem; }
}
@media (min-width: 1024px) {
  :root { --site-header-h: 10.25rem; }
}
#site-header {
  max-width: 100%;
  z-index: 200;
}
#site-header .header-top-bar {
  min-height: 2.25rem;
}
#site-header .header-main-row {
  min-height: 3.25rem;
  min-width: 0;
  max-width: 100%;
}
#site-header .header-nav {
  display: none;
}
@media (min-width: 768px) {
  #site-header .header-main-row { min-height: 4.5rem; }
  #site-header .header-nav {
    display: block;
    min-height: 3.25rem;
  }
}
body { font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
.scrollbar-hide::-webkit-scrollbar { display: none; }
.scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; }

.custom-focus-ring:focus-visible {
  outline: none;
  border-color: #0f172a;
  box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.1);
}

@media (min-width: 1024px) {
  .product-sticky-panel {
    position: sticky;
    top: calc(var(--site-header-h, 7.5rem) + 0.75rem);
    z-index: 0;
  }
}

#filterModal,
#filter-tires > div,
#filter-wheels > div,
#filter-car > div,
#filter-tpms > div {
  overflow: visible !important;
}

#filterModal.scale-100,
#filterModal.scale-95 {
  transform: none !important;
}

.custom-scrollbar::-webkit-scrollbar { width: 6px; height: 6px; }
.custom-scrollbar::-webkit-scrollbar-track { background: #f1f5f9; }
.custom-scrollbar::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }
.custom-scrollbar::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

#cart-drawer-container {
  z-index: 2147483647;
}
#cart-drawer-backdrop {
  opacity: 0;
  transition: opacity 0.3s ease;
}
#cart-drawer-container.is-open #cart-drawer-backdrop {
  opacity: 1;
}
#cart-drawer-panel {
  position: fixed;
  background: white;
  display: flex;
  flex-direction: column;
  box-shadow: 0 -10px 40px rgba(0,0,0,0.1);
  transition: transform 0.4s cubic-bezier(0.32,0.72,0,1);
  overflow: hidden;
}
@media (max-width: 1023px) {
  #cart-drawer-panel {
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    max-height: 85vh;
    border-radius: 24px 24px 0 0;
    transform: translateY(100%);
  }
  #cart-drawer-container.is-open #cart-drawer-panel {
    transform: translateY(0);
  }
}
@media (min-width: 1024px) {
  #cart-drawer-panel {
    top: 0;
    right: 0;
    bottom: 0;
    width: 460px;
    height: 100vh;
    border-radius: 24px 0 0 24px;
    transform: translateX(100%);
  }
  #cart-drawer-container.is-open #cart-drawer-panel {
    transform: translateX(0);
  }
}

#fastBuyModalWrapper {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  pointer-events: none;
}
#fastBuyModalWrapper.is-open {
  pointer-events: auto;
}
@media (min-width: 768px) {
  #fastBuyModalWrapper {
    justify-content: center;
    padding: 1rem;
  }
}
#fastBuyModalBackdrop {
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(4px);
  opacity: 0;
  transition: opacity 0.3s ease;
  cursor: pointer;
}
#fastBuyModalWrapper.is-open #fastBuyModalBackdrop {
  opacity: 1;
}
#fastBuyModalContainer {
  position: relative;
  background-color: white;
  width: 100%;
  height: auto;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
  border-radius: 28px 28px 0 0;
  box-shadow: 0 -10px 40px rgba(0,0,0,0.1);
  transform: translateY(100%);
  opacity: 0;
  transition: transform 0.4s cubic-bezier(0.32,0.72,0,1), opacity 0.3s ease;
}
@media (min-width: 768px) {
  #fastBuyModalContainer {
    width: 500px;
    border-radius: 24px;
    max-height: 85vh;
    transform: translateY(20px) scale(0.95);
    box-shadow: 0 20px 60px rgba(0,0,0,0.15);
  }
}
#fastBuyModalWrapper.is-open #fastBuyModalContainer {
  transform: translateY(0) scale(1);
  opacity: 1;
}
