/* ============================================================
   R36S WooCommerce styling — demo port :8010 only
   Scoped under .r36 ; relies on tokens from r36s.css (loaded first)
   Restyles native WooCommerce markup for shop/product/cart/checkout/account
   ============================================================ */

.r36 .woo-main{padding:40px 0 96px}
.r36 .woo-main.is-single{padding-top:64px}
.r36 .woo-main a{color:var(--accent-ink)}
.r36 .woo-main h1,.r36 .woo-main h2,.r36 .woo-main h3,.r36 .woo-main .product_title{color:var(--text);letter-spacing:-.02em;font-family:var(--sans)}

/* ---- notices ---- */
.r36 .woocommerce-message,.r36 .woocommerce-info,.r36 .woocommerce-error,.r36 .woocommerce-noreviews,.r36 .wc-block-components-notice-banner{
  background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent);
  border-radius:10px;padding:16px 18px;color:var(--text);font-size:15px;list-style:none;margin:0 0 22px}
.r36 .woocommerce-error{border-left-color:var(--c-red)}
.r36 .woocommerce-message .button,.r36 .woocommerce-info .button{float:right}
/* hide WooCommerce's default notice icon (we use the colored left border instead) */
.r36 .woocommerce-message::before,.r36 .woocommerce-info::before,.r36 .woocommerce-error::before,.r36 .woocommerce-noreviews::before,.r36 .wc-block-components-notice-banner::before{display:none!important;content:none!important}

/* ---- generic WooCommerce buttons -> design buttons ---- */
.r36 .woocommerce #respond input#submit,
.r36 .woo-main .button,
.r36 .woo-main button.button,
.r36 .woo-main input.button,
.r36 .woo-main a.button,
.r36 .woo-main .wp-element-button{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:var(--btn-bg);color:var(--btn-ink)!important;border:none;border-radius:10px;
  font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;
  padding:12px 22px;cursor:pointer;transition:.2s;line-height:1.2;text-decoration:none}
.r36 .woo-main .button:hover,.r36 .woo-main button.button:hover,.r36 .woo-main a.button:hover,.r36 .woo-main input.button:hover{
  transform:translateY(-2px);box-shadow:0 12px 30px -8px var(--btn-shadow)}
/* secondary / ghost buttons (update cart, apply coupon) */
.r36 .woo-main .button[name="update_cart"],
.r36 .woo-main .button[name="apply_coupon"],
.r36 .woo-main .added_to_cart,
.r36 .woo-main .button.wc-backward{
  background:transparent;color:var(--text)!important;border:1px solid var(--line)}
.r36 .woo-main .button[name="update_cart"]:hover,
.r36 .woo-main .button[name="apply_coupon"]:hover,
.r36 .woo-main .button.wc-backward:hover{border-color:var(--muted);box-shadow:none}
.r36 .woo-main .button[disabled],.r36 .woo-main .button:disabled{opacity:.5;cursor:not-allowed}

/* ---- prices ---- */
.r36 .woo-main .price,.r36 .woo-main .amount{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--text)}
.r36 .woo-main .price{color:var(--accent-ink);font-weight:600}
.r36 .woo-main del{color:var(--muted-2);opacity:.8;font-weight:400;margin-right:6px}
.r36 .woo-main ins{text-decoration:none}
.r36 .onsale{background:var(--accent);color:#1a1204;font-family:var(--mono);font-size:11px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;border:none;border-radius:20px;padding:5px 11px;min-height:0;min-width:0;line-height:1}

/* ---- shop toolbar ---- */
.r36 .woocommerce-result-count{color:var(--muted);font-family:var(--mono);font-size:12.5px;letter-spacing:.04em}
.r36 .woocommerce-ordering select{background:var(--surface);border:1px solid var(--line);border-radius:8px;
  color:var(--text);padding:9px 12px;font-family:var(--sans);font-size:14px}

/* ---- shop product grid ---- */
.r36 .woo-main ul.products{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:18px;margin:24px 0 0!important;padding:0!important;list-style:none}
.r36 .woo-main ul.products::before,.r36 .woo-main ul.products::after{display:none!important}
.r36 .woo-main ul.products li.product{width:auto!important;margin:0!important;padding:18px!important;float:none!important;clear:none!important;
  border:1px solid var(--line);border-radius:16px;background:var(--surface);transition:.25s;display:flex;flex-direction:column;text-align:left}
.r36 .woo-main ul.products li.product:hover{transform:translateY(-4px);border-color:var(--accent-dim)}
.r36 .woo-main ul.products li.product a img{border-radius:10px;margin:0 0 16px;background:var(--surface-2)}
.r36 .woo-main ul.products li.product .woocommerce-loop-product__title{font-size:17px;font-weight:650;padding:0;margin:0 0 8px;color:var(--text);line-height:1.25}
.r36 .woo-main ul.products li.product .price{font-size:16px;margin-bottom:16px;display:block}
.r36 .woo-main ul.products li.product .star-rating{margin-bottom:12px;color:var(--accent)}
.r36 .woo-main ul.products li.product .button,
.r36 .woo-main ul.products li.product .added_to_cart{margin-top:auto;width:100%}

/* ---- single product layout (Blocksy wraps gallery+summary in .product-entry-wrapper) ---- */
.r36 .woo-main.is-single div.product{display:block}
.r36 .woo-main.is-single .product-entry-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:48px 56px;align-items:start}
@media(max-width:820px){.r36 .woo-main.is-single .product-entry-wrapper{grid-template-columns:1fr;gap:28px}}
.r36 .woo-main.is-single .summary{margin:0!important;width:auto!important;float:none!important;position:static!important}
.r36 .woo-main.is-single .woocommerce-tabs,
.r36 .woo-main.is-single .related,
.r36 .woo-main.is-single .up-sells{margin-top:44px}

/* self-contained product gallery (replaces theme's JS gallery on :8010) */
.r36 .woo-main .r36-gallery{display:flex;flex-direction:column;gap:12px}
.r36 .woo-main .r36-gallery-main{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;
  aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}
.r36 .woo-main .r36-gallery-main img{width:100%;height:100%;object-fit:contain;display:block}
.r36 .woo-main .r36-gallery-thumbs{display:flex;gap:10px;flex-wrap:wrap}
.r36 .woo-main .r36-thumb{padding:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;
  cursor:pointer;width:72px;height:72px;flex:0 0 auto;transition:.15s}
.r36 .woo-main .r36-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.r36 .woo-main .r36-thumb:hover{border-color:var(--muted)}
.r36 .woo-main .r36-thumb.is-active{border-color:var(--accent-ink);box-shadow:0 0 0 1px var(--accent-ink) inset}
.r36 .woo-main div.product .summary{margin:0;float:none;width:auto!important}
.r36 .woo-main div.product .product_title{font-size:clamp(28px,3.4vw,40px);font-weight:800;line-height:1.05;margin:0 0 16px}
.r36 .woo-main div.product .summary > .price{font-size:26px;margin:0 0 20px}
.r36 .woo-main div.product .woocommerce-product-details__short-description{color:var(--muted);font-size:16px;line-height:1.65;margin-bottom:24px}
.r36 .woo-main div.product .woocommerce-product-details__short-description ul{padding-left:20px}
.r36 .woo-main div.product form.cart{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0 24px}
.r36 .woo-main div.product form.cart .quantity input.qty{width:72px;background:var(--ground);border:1px solid var(--line);
  border-radius:10px;color:var(--text);padding:13px 10px;font-family:var(--mono);font-size:15px;text-align:center}
.r36 .woo-main div.product form.cart .single_add_to_cart_button{padding:14px 30px;font-size:15px}
.r36 .woo-main div.product .product_meta{font-family:var(--mono);font-size:12px;color:var(--muted-2);letter-spacing:.03em;border-top:1px solid var(--line);padding-top:18px}
.r36 .woo-main div.product .product_meta a{color:var(--accent-ink)}

/* product tabs */
.r36 .woo-main .woocommerce-tabs{margin-top:64px}
.r36 .woo-main .woocommerce-tabs ul.tabs{display:flex;gap:8px;flex-wrap:wrap;padding:0;margin:0 0 24px;border:none}
.r36 .woo-main .woocommerce-tabs ul.tabs::before,.r36 .woo-main .woocommerce-tabs ul.tabs li::before,.r36 .woo-main .woocommerce-tabs ul.tabs li::after{display:none!important}
.r36 .woo-main .woocommerce-tabs ul.tabs li{background:transparent;border:1px solid var(--line);border-radius:20px;margin:0;padding:0}
.r36 .woo-main .woocommerce-tabs ul.tabs li.active{background:var(--text);border-color:var(--text)}
.r36 .woo-main .woocommerce-tabs ul.tabs li a{color:var(--muted);font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:9px 16px;display:block}
.r36 .woo-main .woocommerce-tabs ul.tabs li.active a{color:var(--ground)!important}
.r36 .woo-main .woocommerce-Tabs-panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;
  padding:32px 34px;color:var(--muted);line-height:1.7}
.r36 .woo-main .woocommerce-Tabs-panel h2{font-size:23px;margin:0 0 16px;color:var(--text)}
.r36 .woo-main .woocommerce-Tabs-panel h3{color:var(--text);margin:22px 0 10px}
.r36 .woo-main .woocommerce-Tabs-panel ul,.r36 .woo-main .woocommerce-Tabs-panel ol{padding-left:20px;margin:0}
.r36 .woo-main .woocommerce-Tabs-panel li{margin:7px 0}
.r36 .woo-main .woocommerce-Tabs-panel table.shop_attributes{width:100%;border:none}
.r36 .woo-main .woocommerce-Tabs-panel table.shop_attributes th,
.r36 .woo-main .woocommerce-Tabs-panel table.shop_attributes td{border-top:1px solid var(--line);padding:12px 0;color:var(--text);background:transparent;text-align:left}

/* related / upsells */
.r36 .woo-main .related.products,.r36 .woo-main .up-sells{margin-top:72px;border-top:1px solid var(--line);padding-top:48px}
.r36 .woo-main .related.products > h2,.r36 .woo-main .up-sells > h2{font-size:26px;margin-bottom:24px}

/* ---- cart ---- */
.r36 .woo-main .woocommerce-cart-form table.shop_table{border:1px solid var(--line);border-radius:16px;border-collapse:separate;border-spacing:0;overflow:hidden;background:var(--surface);width:100%}
.r36 .woo-main table.shop_table th{background:var(--surface-2);color:var(--muted-2);font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;padding:16px 18px;text-align:left;border:none}
.r36 .woo-main table.shop_table td{border-top:1px solid var(--line);padding:18px;vertical-align:middle;color:var(--text);background:transparent}
.r36 .woo-main table.shop_table td.product-thumbnail img{width:64px;height:auto;border-radius:8px}
.r36 .woo-main table.shop_table td.product-name a{color:var(--text);font-weight:600}
.r36 .woo-main .product-remove a.remove{color:var(--c-red)!important;font-size:20px;border:1px solid var(--line);border-radius:50%;width:26px;height:26px;line-height:24px;text-align:center;background:var(--surface)!important}
.r36 .woo-main .quantity input.qty{width:70px;background:var(--ground);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:11px 8px;font-family:var(--mono);text-align:center}
.r36 .woo-main .cart .actions{padding:18px 0 0}
.r36 .woo-main .cart .actions .coupon{display:flex;gap:10px;align-items:center}
.r36 .woo-main .cart .actions .coupon input#coupon_code{background:var(--surface);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:12px 14px;min-width:180px}
.r36 .woo-main .cart-collaterals{margin-top:36px;display:flex;justify-content:flex-end}
.r36 .woo-main .cart-collaterals .cart_totals{width:100%;max-width:420px;border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:26px}
.r36 .woo-main .cart_totals h2{font-size:20px;margin:0 0 16px}
.r36 .woo-main .cart_totals table{width:100%;border:none}
.r36 .woo-main .cart_totals table th,.r36 .woo-main .cart_totals table td{border-top:1px solid var(--line);padding:14px 0;color:var(--text);background:transparent}
.r36 .woo-main .cart_totals .order-total .amount{font-size:20px;color:var(--accent-ink)}
.r36 .woo-main .cart_totals .checkout-button{width:100%;margin-top:18px;padding:15px;font-size:15px}
@media(max-width:680px){.r36 .woo-main .cart-collaterals .cart_totals{max-width:none}}

/* ---- checkout ---- */
.r36 .woo-main form.checkout{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:start}
@media(max-width:900px){.r36 .woo-main form.checkout{grid-template-columns:1fr;gap:28px}}
.r36 .woo-main #customer_details .col-1,.r36 .woo-main #customer_details .col-2{width:auto;float:none}
.r36 .woo-main .woocommerce-billing-fields h3,.r36 .woo-main #order_review_heading{font-size:20px;margin:0 0 18px}
.r36 .woo-main .form-row label{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);display:block;margin-bottom:7px}
.r36 .woo-main .form-row input.input-text,
.r36 .woo-main .form-row textarea,
.r36 .woo-main .form-row select{background:var(--ground);border:1px solid var(--line)!important;border-radius:10px;color:var(--text);padding:12px 14px;font-family:var(--sans);font-size:15px;width:100%}
/* native selects: enough height so the selected text isn't clipped */
.r36 .woo-main .form-row select{min-height:50px;line-height:1.4}
/* select2 country/state dropdowns — fix vertical clipping of the selected value */
.r36 .woo-main .select2-container--default .select2-selection--single{
  height:auto;min-height:50px;display:flex;align-items:center;padding:0 14px;
  background:var(--ground);border:1px solid var(--line)!important;border-radius:10px}
.r36 .woo-main .select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:1.4;padding:0;color:var(--text)}
.r36 .woo-main .select2-container--default .select2-selection--single .select2-selection__arrow{height:48px;right:10px}
/* select2 popup (rendered at body level; this stylesheet only loads on our pages) */
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--accent-ink)}
.r36 .woo-main .form-row input.input-text:focus,.r36 .woo-main .form-row textarea:focus{outline:none;border-color:var(--accent-ink)!important}
.r36 .woo-main .woocommerce-checkout-review-order{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:26px}
.r36 .woo-main .woocommerce-checkout-review-order table.shop_table{border:none;border-radius:0}
.r36 .woo-main #payment{background:transparent;border-radius:0}
.r36 .woo-main #payment ul.payment_methods{background:var(--ground);border:1px solid var(--line);border-radius:12px;padding:16px;list-style:none}
.r36 .woo-main #payment div.payment_box{background:var(--surface-2);color:var(--muted);border-radius:8px}
.r36 .woo-main #payment #place_order{width:100%;padding:16px;font-size:16px;margin-top:8px}

/* ---- account ---- */
.r36 .woo-main .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:10px}
.r36 .woo-main .woocommerce-MyAccount-navigation li a{display:block;padding:11px 14px;border-radius:9px;color:var(--muted);text-decoration:none}
.r36 .woo-main .woocommerce-MyAccount-navigation li.is-active a{background:var(--text);color:var(--ground)}
.r36 .woo-main .col2-set .col-1,.r36 .woo-main .col2-set .col-2{width:auto;float:none}
.r36 .woo-main .woocommerce-form{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:28px}
.r36 .woo-main .woocommerce-form input.input-text,.r36 .woo-main .woocommerce-form input[type="password"]{background:var(--ground);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:12px 14px;width:100%}

/* pagination */
.r36 .woo-main .woocommerce-pagination ul{border:none;display:flex;gap:8px;justify-content:center;margin-top:36px}
.r36 .woo-main .woocommerce-pagination ul li{border:none}
.r36 .woo-main .woocommerce-pagination ul li a,.r36 .woo-main .woocommerce-pagination ul li span{
  border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);padding:9px 14px;font-family:var(--mono);font-size:14px}
.r36 .woo-main .woocommerce-pagination ul li span.current{background:var(--text);color:var(--ground)}

/* ---- product reviews ---- */
.r36 .woo-main #reviews #comments > h2{font-size:23px;margin:0 0 22px;color:var(--text)}
.r36 .woo-main #reviews ol.commentlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.r36 .woo-main #reviews ol.commentlist li{margin:0}
.r36 .woo-main #reviews ol.commentlist li .comment_container{display:flex;gap:16px;align-items:flex-start;
  background:var(--ground);border:1px solid var(--line);border-radius:14px;padding:20px 22px}
.r36 .woo-main #reviews .comment_container img.avatar{width:44px;height:44px;border-radius:50%;position:static;margin:0;border:1px solid var(--line)}
.r36 .woo-main #reviews .comment-text{flex:1;margin:0}
.r36 .woo-main #reviews .comment-text .star-rating{margin:0 0 8px;font-size:14px}
.r36 .woo-main #reviews .comment-text p.meta{font-family:var(--mono);font-size:12px;color:var(--muted-2);letter-spacing:.03em;margin:0 0 8px}
.r36 .woo-main #reviews .comment-text .meta strong{color:var(--text)}
.r36 .woo-main #reviews .comment-text .description{color:var(--muted);line-height:1.6}
.r36 .woo-main #reviews .comment-text .description p{margin:0}
.r36 .woo-main #review_form_wrapper{margin-top:26px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:28px}
.r36 .woo-main #review_form_wrapper h2,.r36 .woo-main #review_form_wrapper #reply-title{font-size:20px;color:var(--text);margin:0 0 14px}
.r36 .woo-main #review_form .comment-form-rating label{display:block;margin-bottom:6px;color:var(--muted-2);font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.r36 .woo-main #review_form textarea,.r36 .woo-main #review_form input[type="text"],.r36 .woo-main #review_form input[type="email"]{
  background:var(--ground);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:12px 14px;width:100%;font-family:var(--sans)}
.r36 .woo-main #reviews p.woocommerce-noreviews{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;color:var(--muted)}

/* variable product (R36S standard / premium) */
.r36 .woo-main table.variations{width:100%;border:none;margin:0 0 18px}
.r36 .woo-main table.variations td,.r36 .woo-main table.variations th{border:none!important;padding:8px 0;background:transparent}
.r36 .woo-main table.variations th.label label{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2)}
.r36 .woo-main table.variations select{background:var(--ground);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:12px 14px;min-height:52px;line-height:1.5;box-sizing:border-box;font-family:var(--sans);font-size:15px;width:100%;-webkit-appearance:menulist}
.r36 .woo-main .woocommerce-variation-price .price{font-size:24px}
.r36 .woo-main .single_variation_wrap .woocommerce-variation-add-to-cart{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:14px}
.r36 .woo-main .reset_variations{color:var(--accent-ink);font-family:var(--mono);font-size:12px;margin-left:4px}

/* star ratings */
.r36 .woo-main .star-rating span::before,.r36 .woo-main .star-rating::before{color:var(--accent)}
