/* ── PRAETORIAN SHOP PAGE OVERRIDE CSS ─────────────────────────────────────
   Paste this into Appearance → Customize → Additional CSS
   This styles the default WooCommerce shop layout to match the tactical theme.
────────────────────────────────────────────────────────────────────────────── */

@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Source+Sans+3:wght@300;400;500;600&display=swap');

:root {
  --black:   #0A0A0A;
  --dark:    #111111;
  --panel:   #1E1E1E;
  --border:  #2A2A2A;
  --mid:     #888888;
  --light:   #C0C0C0;
  --white:   #EEEEEE;
  --accent:  #8B9E5A;
  --olive:   #4A5240;
  --danger:  #C0392B;
}

/* ── BODY & GLOBAL ── */
body {
  background: var(--black) !important;
  color: var(--light) !important;
  font-family: 'Source Sans 3', sans-serif !important;
}

/* ── WOOCOMMERCE SHOP PAGE ── */
.woocommerce-page .site-main,
.woocommerce-shop .site-main,
body.woocommerce .site-main {
  background: var(--black) !important;
  padding: 0 !important;
  max-width: 100% !important;
}

/* Shop page title area */
.woocommerce-products-header {
  background: #111 !important;
  padding: 40px 40px 32px !important;
  border-bottom: 1px solid var(--border) !important;
  margin: 0 !important;
}
.woocommerce-products-header__title {
  font-family: 'Oswald', sans-serif !important;
  font-size: 2rem !important;
  font-weight: 700 !important;
  color: var(--white) !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
}

/* Breadcrumb */
.woocommerce-breadcrumb {
  font-family: 'Oswald', sans-serif !important;
  font-size: .7rem !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: #555 !important;
  background: #111 !important;
  padding: 12px 40px !important;
  margin: 0 !important;
}
.woocommerce-breadcrumb a { color: #888 !important; }
.woocommerce-breadcrumb a:hover { color: var(--accent) !important; }

/* Results count + ordering bar */
.woocommerce-result-count,
.woocommerce-ordering {
  font-family: 'Source Sans 3', sans-serif !important;
  font-size: .8rem !important;
  color: var(--mid) !important;
}
.woocommerce-ordering select {
  background: #1E1E1E !important;
  border: 1px solid var(--border) !important;
  color: var(--light) !important;
  font-family: 'Source Sans 3', sans-serif !important;
  padding: 6px 12px !important;
  border-radius: 0 !important;
}

/* ── PRODUCT GRID ── */
ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
  gap: 16px !important;
  margin: 24px 40px !important;
  padding: 0 !important;
  list-style: none !important;
}

ul.products li.product {
  background: #1E1E1E !important;
  border: 1px solid var(--border) !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: auto !important;
  transition: border-color .2s, transform .2s !important;
}
ul.products li.product:hover {
  border-color: var(--accent) !important;
  transform: translateY(-3px) !important;
}

/* Product image */
ul.products li.product a img {
  width: 100% !important;
  height: 200px !important;
  object-fit: contain !important;
  background: #141410 !important;
  padding: 12px !important;
  margin: 0 !important;
  display: block !important;
}

/* Product title */
ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Source Sans 3', sans-serif !important;
  font-size: .85rem !important;
  font-weight: 400 !important;
  color: var(--light) !important;
  padding: 10px 14px 4px !important;
  margin: 0 !important;
  line-height: 1.4 !important;
  text-transform: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 2.8em !important;
}
ul.products li.product .woocommerce-loop-product__title:hover {
  color: var(--white) !important;
}

/* Product price */
ul.products li.product .price {
  font-family: 'Oswald', sans-serif !important;
  font-size: 1.05rem !important;
  font-weight: 600 !important;
  color: var(--white) !important;
  padding: 4px 14px 10px !important;
  display: block !important;
}
ul.products li.product .price del {
  color: #555 !important;
  font-size: .8rem !important;
  margin-right: 6px !important;
}
ul.products li.product .price ins {
  text-decoration: none !important;
  color: var(--accent) !important;
}

/* Add to cart button */
ul.products li.product .button,
ul.products li.product .add_to_cart_button {
  display: block !important;
  width: calc(100% - 28px) !important;
  margin: 0 14px 14px !important;
  padding: 9px 0 !important;
  background: var(--olive) !important;
  border: 1px solid #5C6650 !important;
  color: var(--white) !important;
  font-family: 'Oswald', sans-serif !important;
  font-size: .7rem !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  border-radius: 0 !important;
  transition: background .15s, border-color .15s !important;
}
ul.products li.product .button:hover,
ul.products li.product .add_to_cart_button:hover {
  background: var(--accent) !important;
  border-color: var(--accent) !important;
  color: #000 !important;
}
ul.products li.product .added_to_cart { display: none !important; }

/* Sale badge */
ul.products li.product .onsale {
  background: var(--danger) !important;
  color: white !important;
  font-family: 'Oswald', sans-serif !important;
  font-size: .6rem !important;
  font-weight: 700 !important;
  letter-spacing: .1em !important;
  padding: 3px 10px !important;
  border-radius: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  margin: 0 !important;
}

/* ── PAGINATION ── */
.woocommerce-pagination {
  margin: 24px 40px 48px !important;
  text-align: center !important;
}
.woocommerce-pagination ul {
  display: inline-flex !important;
  gap: 4px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
}
.woocommerce-pagination ul li {
  border: none !important;
  padding: 0 !important;
}
.woocommerce-pagination ul li a,
.woocommerce-pagination ul li span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  background: #1E1E1E !important;
  border: 1px solid var(--border) !important;
  color: var(--mid) !important;
  font-family: 'Oswald', sans-serif !important;
  font-size: .8rem !important;
  text-decoration: none !important;
  transition: all .15s !important;
}
.woocommerce-pagination ul li a:hover {
  border-color: var(--accent) !important;
  color: var(--accent) !important;
}
.woocommerce-pagination ul li span.current {
  background: var(--accent) !important;
  border-color: var(--accent) !important;
  color: #000 !important;
  font-weight: 700 !important;
}

/* ── RESPONSIVE ── */
@media (max-width: 768px) {
  ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    margin: 16px 16px !important;
    gap: 10px !important;
  }
  .woocommerce-breadcrumb { padding: 10px 16px !important; }
  .woocommerce-products-header { padding: 28px 16px !important; }
  .woocommerce-pagination { margin: 16px !important; }
}
@media (max-width: 400px) {
  ul.products { grid-template-columns: 1fr !important; }
}
/* Remove grey side margins and full-width the shop */
.site, .site-content, .content-area, .site-main,
#page, #content, #primary, #main, main {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

body {
  background: #0A0A0A !important;
}

/* Fix nav account dropdown */
.prae-nav__links {
  position: relative !important;
  z-index: 600 !important;
}
html,
body {
  background-color: #0A0A0A !important;
  background: #0A0A0A !important;
  margin: 0 !important;
  padding: 0 !important;
}

.wp-site-blocks,
.is-layout-flow,
.entry-content,
.wp-block-group,
.wp-block-group__inner-container,
.site-content,
.site-inner,
#page,
#content,
#genesis-content,
.content-sidebar-wrap {
  background: #0A0A0A !important;
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
/* Fix shop content width */
.prae-sc-wrap,
.prae-shop-layout,
.prae-shop-hero,
.prae-shop-hero__inner {
  max-width: 100% !important;
  width: 100% !important;
}

.prae-shop-main {
  min-width: 0 !important;
  flex: 1 !important;
}

/* Fix the overall page container constraining width */
.entry-content > *,
.page-content > *,
.post-content > * {
  max-width: 100% !important;
}

/* WordPress block editor wraps content in this */
.wp-block-group,
.wp-block-post-content,
.has-global-padding {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
/* Fix nav dropdown overlap */
.prae-nav {
  position: relative !important;
  z-index: 9999 !important;
}
.prae-nav__links {
  position: static !important;
}
body#error-page {
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #0A0A0A !important;
}

body#error-page > * {
  max-width: 100% !important;
}