/* ============================================================
   GAMES MART — WooCommerce dark theme overrides
   Loaded after WooCommerce core styles on Woo pages.
   ============================================================ */

/* Page title band */
.woo-hero{background:radial-gradient(120% 140% at 85% 0%,#ffe9e7,#fff5f4 45%,var(--bg));border-bottom:1px solid var(--line);padding:48px 0 40px}
.woo-hero h1{margin:.15em 0 0}
.woo-hero .eyebrow{display:block}

.gm-woo .wc-shell{max-width:var(--wrap);margin:0 auto}
.woocommerce .wrap.section{padding-top:48px}

/* ---- Notices ---- */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-noreviews,
.woocommerce-store-notice{
  background:var(--surface)!important;border:1px solid var(--line)!important;border-left:4px solid var(--gm-red)!important;
  color:var(--text)!important;border-radius:var(--radius-sm);
}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{color:var(--gm-red)!important}
.woocommerce a.button,.woocommerce-message a.button{background:var(--gm-red)!important;color:#fff!important}

/* ---- Result count / ordering ---- */
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{color:var(--muted);margin-bottom:20px}
.woocommerce .woocommerce-ordering select,
.woocommerce select,.woocommerce input,.woocommerce textarea{
  background:var(--surface)!important;color:var(--text)!important;border:1px solid var(--line-strong)!important;
  border-radius:var(--radius-sm);padding:12px 14px;
}
.woocommerce input:focus,.woocommerce select:focus,.woocommerce textarea:focus{border-color:var(--gm-red)!important;outline:none}
.select2-container--default .select2-selection--single{background:var(--surface)!important;border:1px solid var(--line-strong)!important;color:var(--text)!important;height:46px}
.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--text)!important;line-height:44px}
.select2-dropdown{background:var(--surface)!important;border:1px solid var(--line-strong)!important;color:var(--text)!important}
.select2-results__option--highlighted{background:var(--gm-red)!important}

/* ---- Product grid (shop / archive) ---- */
.woocommerce .woocommerce-result-count{float:left;line-height:46px}
.woocommerce .woocommerce-ordering{float:right}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:0 0 40px;clear:both}
@media (max-width:1024px){.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
/* Each <li> just holds the theme's .pcard (see woocommerce/content-product.php) */
.woocommerce ul.products li.product{
  width:auto!important;float:none!important;margin:0!important;padding:0!important;
  background:none;border:0;display:flex;list-style:none;
}
.woocommerce ul.products li.product .pcard{width:100%}
.woocommerce ul.products li.product .pcard .thumb img{width:100%;height:100%;margin:0;object-fit:cover}
.woocommerce ul.products li.product .pcard h3{padding:0;margin:0;font-size:1rem}
.woocommerce ul.products li.product .pcard .price{padding:0;margin:0;color:var(--text)!important;font-family:var(--font-head);font-weight:700;font-size:1.35rem}
.woocommerce ul.products li.product .pcard .price del{color:var(--muted-2)!important;font-size:.95rem;font-weight:500;opacity:1}
.woocommerce ul.products li.product .pcard .price ins{text-decoration:none}
.woocommerce ul.products li.product .pcard .added_to_cart{display:block;text-align:center;margin-top:8px;font-size:.85rem;color:var(--gm-red)}

/* Sale flash (single product page) */
.woocommerce span.onsale{
  position:absolute;top:12px;left:12px;right:auto;margin:0;z-index:2;
  background:var(--gm-red)!important;color:#fff!important;font-family:var(--font-head);font-weight:700;
  font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;line-height:1;
  border-radius:6px;min-height:0;min-width:0;padding:6px 10px;box-shadow:0 4px 12px -2px rgba(230,51,41,.45);
}

/* ---- Single product ---- */
.woocommerce div.product{padding:44px 0}
.woocommerce div.product .product_title{font-family:var(--font-head);text-transform:uppercase;font-size:2.2rem}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--text);font-family:var(--font-head);font-size:2rem;font-weight:700}
.woocommerce div.product p.price del{color:var(--muted-2);font-size:1.2rem}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--muted)}
.woocommerce div.product form.cart .quantity input{width:70px;text-align:center}
.woocommerce div.product form.cart .button,
.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
  background:var(--gm-red)!important;color:#fff!important;border-radius:var(--radius-sm)!important;
  font-family:var(--font-head);text-transform:uppercase;letter-spacing:1px;font-weight:700;padding:14px 30px!important;
  transition:transform .2s var(--ease),background .2s;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #respond input#submit:hover{background:var(--gm-red-600)!important;transform:translateY(-2px)}
.woocommerce div.product .woocommerce-tabs ul.tabs{border:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm) var(--radius-sm) 0 0}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--surface-2);border-bottom-color:var(--surface-2)}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:var(--text)!important}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-color:var(--line)}
.woocommerce div.product .woocommerce-tabs .panel{background:var(--surface-2);border:1px solid var(--line);border-radius:0 var(--radius-sm) var(--radius-sm);padding:24px;color:var(--muted)}
.woocommerce .star-rating span{color:var(--gold)}

/* Breadcrumb */
.woocommerce .woocommerce-breadcrumb{color:var(--muted-2);margin:0 0 24px;font-size:.85rem}
.woocommerce .woocommerce-breadcrumb a{color:var(--muted)}

/* ---- Cart & checkout tables ---- */
.woocommerce table.shop_table{background:var(--surface);border:1px solid var(--line)!important;border-radius:var(--radius);border-collapse:separate;color:var(--text)}
.woocommerce table.shop_table th{color:var(--text);font-family:var(--font-head);text-transform:uppercase;letter-spacing:.5px}
.woocommerce table.shop_table td{border-top:1px solid var(--line)!important;color:var(--text)}
.woocommerce table.cart td.actions .coupon .input-text{width:180px}
.cart_totals h2,.woocommerce-checkout h3,.woocommerce-column__title{font-family:var(--font-head);text-transform:uppercase}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout #order_review,.woocommerce form.checkout_coupon,
.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-billing-fields,.woocommerce-additional-fields{color:var(--text)}
.woocommerce-checkout #payment{background:var(--surface)!important;border:1px solid var(--line);border-radius:var(--radius)}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--line)}
.woocommerce-checkout #payment div.payment_box{background:var(--surface-2)!important;color:var(--muted)}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--surface-2)!important}
.woocommerce-info a,.woocommerce-message a{color:var(--gm-red)!important}

/* My account */
.woocommerce-account .woocommerce-MyAccount-navigation ul li{border:1px solid var(--line);border-radius:var(--radius-sm);margin-bottom:8px}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a{display:block;padding:12px 16px;color:var(--text)}
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active{background:var(--gm-red);border-color:var(--gm-red)}
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a{color:#fff}
.woocommerce form .form-row label{color:var(--muted)}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul{border:0;gap:6px;display:flex}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{
  background:var(--surface);border:1px solid var(--line)!important;color:var(--text);border-radius:8px;padding:.6em 1em;
}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--gm-red);border-color:var(--gm-red)!important;color:#fff}

/* Related products heading */
.woocommerce div.product .related h2,.woocommerce div.product .upsells h2{font-family:var(--font-head);text-transform:uppercase}

/* Quantity input dark */
.woocommerce .quantity .qty{background:var(--surface)!important;color:var(--text)!important;border:1px solid var(--line-strong)!important}

/* ---- Mobile / form polish ---- */
/* Sale price: no underline on the new price */
.pcard .price ins,.woocommerce div.product p.price ins,.woocommerce div.product span.price ins{text-decoration:none}
/* Sale badge sits on the product image (div.product has 44px top padding) */
.woocommerce div.product > span.onsale{top:56px;left:12px}
/* Uniform field height; 16px text stops iOS from zooming into inputs */
.woocommerce form .form-row .input-text,.woocommerce form .form-row select,
.woocommerce .quantity .qty,.woocommerce table.cart td.actions .coupon .input-text{
  min-height:46px;padding:12px 14px!important;font-size:16px;line-height:1.3;box-sizing:border-box;
}
.woocommerce form .form-row textarea.input-text{min-height:96px}
.select2-container--default .select2-selection--single .select2-selection__rendered{padding-left:14px}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:44px}
@media (max-width:760px){
  .woocommerce table.cart td.actions .coupon{display:flex;flex-direction:column;gap:10px;float:none;width:100%}
  .woocommerce table.cart td.actions .coupon .input-text,
  .woocommerce table.cart td.actions .coupon .button{width:100%!important;margin:0!important}
  .woocommerce table.cart td.actions > .button{width:100%;margin-top:10px}
}
.select2-container--default .select2-selection--single{display:flex!important;align-items:center}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.3!important;padding-top:0;padding-bottom:0}
