/*
Theme Name: BoxFit
Theme URI: https://boxfit.shop
Author: BoxFit
Description: Custom minimalist fashion storefront theme for BoxFit. Clean white WooCommerce design with dual EUR/BGN pricing.
Version: 1.2.0
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
Text Domain: boxfit
WC requires at least: 6.0
WC tested up to: 11.0
*/

:root{
  --bx-bg:#ffffff;
  --bx-ink:#111111;
  --bx-muted:#8a8a8a;
  --bx-line:#ececec;
  --bx-soft:#f6f6f6;
  --bx-accent:#111111;
  --bx-sale:#e2342f;
  --bx-sand:#f3ede3;
  --bx-sea:#dCEFEF;
  --bx-max:1400px;
  --bx-radius:10px;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  color:var(--bx-ink);
  background:var(--bx-bg);
  font-size:15px;
  line-height:1.5;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
button{font-family:inherit;cursor:pointer}

.bx-container{max-width:var(--bx-max);margin:0 auto;padding:0 24px}

/* ---------- Header ---------- */
.bx-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--bx-line)}
.bx-header__bar{
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;
  max-width:var(--bx-max);margin:0 auto;padding:18px 24px;
}
.bx-logo{
  grid-column:2;justify-self:center;
  font-weight:800;font-size:42px;letter-spacing:-1.5px;text-transform:lowercase;
}
.bx-logo span{color:var(--bx-muted)}
.bx-header__left{display:flex;align-items:center;gap:10px}
.bx-header__actions{grid-column:3;display:flex;align-items:center;justify-content:flex-end;gap:14px}
.bx-search{
  display:flex;align-items:center;gap:8px;background:var(--bx-soft);
  border-radius:40px;padding:9px 16px;width:min(360px,38vw);border:1px solid transparent;
}
.bx-search:focus-within{border-color:var(--bx-line);background:#fff}
.bx-search input{border:0;background:transparent;outline:none;width:100%;font-size:14px}
.bx-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:transparent;border:0;color:var(--bx-ink);position:relative}
.bx-icon-btn:hover{background:var(--bx-soft)}
.bx-icon-btn svg{width:22px;height:22px}
.bx-cart-count{
  position:absolute;top:2px;right:2px;background:var(--bx-ink);color:#fff;
  font-size:10px;line-height:1;min-width:16px;height:16px;border-radius:9px;
  display:flex;align-items:center;justify-content:center;padding:0 4px;font-weight:700;
}
.bx-burger{display:none;background:transparent;border:0;width:40px;height:40px;border-radius:50%}
.bx-burger:hover{background:var(--bx-soft)}
.bx-burger svg{width:24px;height:24px}

/* nav */
.bx-nav{border-top:1px solid var(--bx-line)}
.bx-menu{
  list-style:none;margin:0;padding:0;display:flex;justify-content:center;gap:38px;
  max-width:var(--bx-max);margin:0 auto;padding:14px 24px;flex-wrap:wrap;
}
.bx-menu a{font-size:15px;font-weight:500;padding:4px 0;border-bottom:2px solid transparent;transition:border-color .15s}
.bx-menu li:hover>a,.bx-menu .current-menu-item>a{border-color:var(--bx-ink)}

/* ---------- Hero ---------- */
.bx-hero{
  position:relative;max-width:var(--bx-max);margin:0 auto;padding:0 24px;
}
.bx-hero__inner{
  margin-top:14px;border-radius:var(--bx-radius);overflow:hidden;
  min-height:340px;display:flex;align-items:center;
  background:
    radial-gradient(120% 140% at 80% 10%, #e7d9ff 0%, rgba(231,217,255,0) 55%),
    radial-gradient(120% 140% at 10% 90%, #d7ecff 0%, rgba(215,236,255,0) 50%),
    linear-gradient(120deg,#efe7ff 0%,#e6f0ff 100%);
  padding:48px;
}
.bx-hero__copy{max-width:520px}
.bx-hero__eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;color:#6a5acd;font-weight:700;margin-bottom:14px}
.bx-hero h1{font-size:clamp(30px,4vw,52px);line-height:1.05;margin:0 0 16px;font-weight:800;letter-spacing:-1px}
.bx-hero p{font-size:17px;color:#444;margin:0 0 26px}
.bx-dots{position:absolute;left:0;right:0;bottom:22px;display:flex;gap:8px;justify-content:center}
.bx-dot{width:8px;height:8px;border-radius:50%;background:#ffffffaa;border:1px solid #00000022}
.bx-dot.is-active{background:var(--bx-ink)}

/* ---------- Buttons ---------- */
.bx-btn{
  display:inline-flex;align-items:center;gap:8px;background:var(--bx-ink);color:#fff;
  padding:14px 28px;border-radius:40px;font-weight:600;font-size:15px;border:0;transition:opacity .15s;
}
.bx-btn:hover{opacity:.85}
.bx-btn--ghost{background:#fff;color:var(--bx-ink);border:1px solid var(--bx-ink)}

/* ---------- Category tabs ---------- */
.bx-cattabs{display:flex;gap:30px;justify-content:center;flex-wrap:wrap;padding:34px 24px 10px}
.bx-cattabs a{font-size:17px;font-weight:600;color:var(--bx-muted);padding-bottom:6px;border-bottom:2px solid transparent}
.bx-cattabs a:hover,.bx-cattabs a.is-active{color:var(--bx-ink);border-color:var(--bx-ink)}

/* ---------- Section heads ---------- */
.bx-section{max-width:var(--bx-max);margin:0 auto;padding:18px 24px 40px}
.bx-section__head{display:flex;align-items:baseline;justify-content:space-between;margin:18px 0 22px}
.bx-section__head h2{font-size:22px;font-weight:700;margin:0}
.bx-section__head a{font-size:14px;color:var(--bx-muted)}
.bx-section__head a:hover{color:var(--bx-ink)}

/* ---------- Product grid ---------- */
.bx-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:start}
.bx-card{position:relative;display:flex;flex-direction:column}
.bx-card__media{position:relative;display:block;width:100%;background:var(--bx-soft);border-radius:var(--bx-radius);overflow:hidden;aspect-ratio:3/4}
.bx-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.bx-card:hover .bx-card__media img{transform:scale(1.04)}
.bx-card__media .bx-ph{display:flex;align-items:center;justify-content:center;height:100%;color:#c9c9c9;font-size:13px;letter-spacing:1px;text-transform:uppercase}
.bx-card__media-link{position:absolute;inset:0;z-index:1}
.bx-wish{
  position:absolute;top:12px;right:12px;z-index:2;width:38px;height:38px;border-radius:50%;
  background:#fff;border:0;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #0001;color:var(--bx-ink);
}
.bx-wish svg{width:20px;height:20px}
.bx-addbag{
  position:absolute;bottom:12px;right:12px;z-index:2;width:42px;height:42px;border-radius:50%;
  background:#fff;border:1px solid var(--bx-line);display:flex;align-items:center;justify-content:center;
  box-shadow:0 1px 4px #0001;color:var(--bx-ink);
}
.bx-addbag:hover{background:var(--bx-ink);color:#fff}
.bx-addbag svg{width:20px;height:20px}
.bx-card__title{margin:12px 0 4px;font-size:14px;font-weight:500;color:var(--bx-ink)}
.bx-card__sub{font-size:12px;color:var(--bx-muted);margin-bottom:6px}
.bx-card__price{font-size:15px;font-weight:700;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.bx-card__price ins{order:0;text-decoration:none;color:var(--bx-sale);font-weight:800;font-size:16px}
.bx-card__price del{order:1;color:var(--bx-muted);font-weight:500;font-size:13px}
.bx-card__price del .woocommerce-Price-amount{text-decoration:line-through}
.bx-badge{position:absolute;top:12px;left:12px;z-index:2;background:#fff;border:1px solid var(--bx-line);font-size:11px;font-weight:600;padding:4px 10px;border-radius:20px}
.bx-badge--sale{background:var(--bx-sale);border-color:var(--bx-sale);color:#fff;border-radius:4px;letter-spacing:.02em}

/* ---------- WooCommerce sale styling (shop / category / single) ---------- */
.bx-woo span.onsale.bx-sale{background:var(--bx-sale);color:#fff;font-weight:700;border-radius:4px;min-height:0;line-height:1;padding:6px 9px}
.bx-woo ul.products li.product .price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.bx-woo ul.products li.product .price ins,.bx-woo .product .summary .price ins{order:0;text-decoration:none;color:var(--bx-sale);font-weight:800}
.bx-woo ul.products li.product .price del,.bx-woo .product .summary .price del{order:1;color:var(--bx-muted);font-weight:500;opacity:1}
.bx-woo .price del .woocommerce-Price-amount{text-decoration:line-through}

/* ---------- Single product page ---------- */
.bx-woo div.product .product_title.entry-title{font-size:26px;font-weight:700;letter-spacing:-.3px;margin:0 0 10px}
/* bestseller label */
.bx-bestseller{color:#e8821a;font-weight:800;font-size:13px;letter-spacing:.08em;margin:0 0 8px}
/* star rating */
.bx-rating{display:flex;align-items:center;gap:7px;margin:0 0 14px;font-size:14px}
.bx-stars{position:relative;display:inline-block;font-size:17px;line-height:1;color:#dcdcdc;font-family:Arial,sans-serif}
.bx-stars:before{content:"\2605\2605\2605\2605\2605"}
.bx-stars__fill{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#f5a623}
.bx-stars__fill:before{content:"\2605\2605\2605\2605\2605"}
.bx-rating__val{font-weight:700;color:var(--bx-ink)}
.bx-rating__count{color:var(--bx-muted)}
.bx-woo div.product .summary.entry-summary{margin-bottom:0}
/* price + inline discount badge */
.bx-single-price{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 18px;font-size:23px;font-weight:800}
.bx-single-price del{order:1;color:var(--bx-muted);font-weight:500;font-size:16px}
.bx-single-price ins{order:0;text-decoration:none;color:var(--bx-sale);font-weight:800}
.bx-single-price>.woocommerce-Price-amount{order:0;color:var(--bx-ink)}
.bx-single-price del .woocommerce-Price-amount{text-decoration:line-through}
.bx-inline-sale{order:2;position:static;font-size:13px;padding:5px 8px;align-self:center}
/* volume offer note */
.bx-offer{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 20px;padding:12px 14px;background:#fff5f4;border:1px solid #f3c5c2;border-radius:10px;font-size:14px;color:#8a2a26}
.bx-offer b{color:var(--bx-sale);font-weight:800}
.bx-offer__tag{background:var(--bx-sale);color:#fff;font-weight:700;font-size:12px;padding:3px 8px;border-radius:4px;letter-spacing:.02em}
/* short description */
.bx-woo div.product .woocommerce-product-details__short-description{color:#444;font-size:15px;line-height:1.6;margin:0 0 22px}
.bx-woo div.product .woocommerce-product-details__short-description ul{padding-left:18px;margin:8px 0}
/* size pills + variations layout */
.bx-woo div.product form.cart.variations_form{display:block}
.bx-woo div.product .variations{margin:0 0 18px}
.bx-woo div.product .variations,.bx-woo div.product .variations tbody,.bx-woo div.product .variations tr,.bx-woo div.product .variations td.value,.bx-woo div.product .variations th.label{display:block;width:auto;padding:0;border:0;background:none}
.bx-woo div.product .variations th.label{font-size:15px;font-weight:700;margin:0 0 10px}
.bx-woo div.product .variations th.label label{font-weight:700}
.bx-woo div.product .variations select{display:none}
.bx-woo div.product .reset_variations{display:inline-block;margin-top:8px;font-size:13px;color:var(--bx-muted)}
.bx-sizes{display:flex;flex-wrap:wrap;gap:10px}
.bx-size{min-width:62px;padding:13px 20px;border:1px solid var(--bx-line);border-radius:30px;background:#fff;font-size:15px;font-weight:600;color:var(--bx-ink);cursor:pointer;line-height:1;transition:border-color .15s}
.bx-size:hover{border-color:var(--bx-ink)}
.bx-size.is-active{border-color:var(--bx-ink);box-shadow:inset 0 0 0 1px var(--bx-ink)}
.bx-size.is-disabled{color:var(--bx-muted);text-decoration:line-through;cursor:not-allowed;opacity:.55}
.bx-woo div.product .single_variation .woocommerce-variation-price,.bx-woo div.product .single_variation .woocommerce-variation-availability{display:none}
.bx-woo div.product .woocommerce-variation-add-to-cart{display:flex;align-items:stretch;gap:12px;flex-wrap:wrap;margin:0}
/* in-stock text */
.bx-instock{flex-basis:100%;display:flex;align-items:center;gap:8px;color:#1f8b4c;font-weight:600;font-size:14px;margin:0 0 14px}
.bx-instock:before{content:"";width:9px;height:9px;border-radius:50%;background:#1f8b4c}
/* trust / info rows */
.bx-trust-list{list-style:none;margin:20px 0 0;padding:18px 0 0;border-top:1px solid var(--bx-line);display:flex;flex-direction:column;gap:14px}
.bx-trust-list li{display:flex;align-items:center;gap:11px;font-size:14px;color:#333}
.bx-trust-list svg{width:22px;height:22px;color:var(--bx-ink);flex:0 0 auto}
/* add-to-cart row */
.bx-woo div.product form.cart{display:flex;align-items:stretch;gap:12px;flex-wrap:wrap;margin:0 0 24px}
.bx-woo div.product form.cart .quantity input.qty{width:68px;height:56px;border:1px solid var(--bx-line);border-radius:30px;text-align:center;font-size:16px;font-weight:600;background:#fff}
.bx-woo div.product .single_add_to_cart_button.button.alt{
  flex:1 1 auto;min-width:240px;background:var(--bx-ink);color:#fff;border:0;border-radius:32px;
  min-height:56px;padding:8px 28px;font-size:16px;font-weight:700;letter-spacing:.2px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.15;transition:opacity .15s;
}
.bx-woo div.product .single_add_to_cart_button.button.alt:hover{background:var(--bx-ink);opacity:.88}
.bx-btn-price{font-size:14px;font-weight:600;opacity:.92;margin-top:2px}
/* meta + tabs */
.bx-woo div.product .product_meta{font-size:13px;color:var(--bx-muted);border-top:1px solid var(--bx-line);padding-top:16px;margin-top:8px}
.bx-woo div.product .product_meta>span{display:block;margin-bottom:4px}
.bx-woo div.product .woocommerce-tabs{clear:both;width:100%;margin-top:36px}
.bx-woo div.product .woocommerce-tabs ul.tabs{display:none}
.bx-woo div.product .woocommerce-tabs .panel{margin:0;padding:0}
@media(max-width:760px){
  .bx-woo div.product .single_add_to_cart_button.button.alt{min-width:0;width:100%}
  .bx-woo div.product form.cart{gap:10px}
}

/* ---------- Promo banner ---------- */
.bx-promo{max-width:var(--bx-max);margin:10px auto 50px;padding:0 24px}
.bx-promo__inner{
  border-radius:var(--bx-radius);overflow:hidden;min-height:300px;display:flex;align-items:center;
  padding:48px;
  background:
    radial-gradient(140% 120% at 85% 80%, #bfe3df 0%, rgba(191,227,223,0) 55%),
    linear-gradient(120deg,#eef6f3 0%,#f4 efe6 60%,#f7f1e7 100%);
}
.bx-promo h2{font-size:clamp(26px,3.4vw,42px);font-weight:800;margin:0 0 10px;letter-spacing:-1px}
.bx-promo p{font-size:17px;color:#3c4a47;margin:0 0 22px}
.bx-promo .bx-price-from{font-size:15px;color:#3c4a47;margin-bottom:18px}
.bx-promo .bx-price-from b{font-size:22px}

/* ---------- Footer ---------- */
.bx-footer{border-top:1px solid var(--bx-line);background:#fafafa;margin-top:30px}
.bx-footer__cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;max-width:var(--bx-max);margin:0 auto;padding:50px 24px}
.bx-footer h4{font-size:13px;text-transform:uppercase;letter-spacing:1px;margin:0 0 16px}
.bx-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.bx-footer a{color:#555;font-size:14px}
.bx-footer a:hover{color:var(--bx-ink)}
.bx-footer__brand .bx-logo{font-size:26px;justify-self:start}
.bx-news{display:flex;gap:8px;margin-top:14px}
.bx-news input{flex:1;border:1px solid var(--bx-line);border-radius:40px;padding:11px 16px;font-size:14px;outline:none}
.bx-footer__bottom{border-top:1px solid var(--bx-line);text-align:center;padding:20px;color:var(--bx-muted);font-size:13px}

/* ---------- Mobile drawer ---------- */
.bx-drawer{position:fixed;inset:0 30% 0 0;background:#fff;z-index:100;transform:translateX(-105%);transition:transform .25s ease;box-shadow:2px 0 20px #0002;padding:24px;overflow:auto}
.bx-drawer.is-open{transform:none}
.bx-overlay{position:fixed;inset:0;background:#0006;z-index:99;opacity:0;visibility:hidden;transition:.2s}
.bx-overlay.is-open{opacity:1;visibility:visible}
.bx-drawer ul{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:4px}
.bx-drawer a{display:block;padding:12px 6px;border-bottom:1px solid var(--bx-line);font-size:17px;font-weight:500}
.bx-drawer__close{background:transparent;border:0;font-size:26px;line-height:1}

/* ---------- WooCommerce wrapper ---------- */
.bx-woo{max-width:var(--bx-max);margin:0 auto;padding:30px 24px 60px}
.woocommerce-breadcrumb{color:var(--bx-muted);font-size:13px;margin-bottom:18px}
.bx-page-title{font-size:28px;font-weight:800;margin:0 0 24px}

/* ---------- Top trust strip ---------- */
.bx-topbar{background:var(--bx-ink);color:#fff;font-size:13px;overflow:hidden}
.bx-topbar__track{display:flex;justify-content:center;gap:42px;flex-wrap:wrap;max-width:var(--bx-max);margin:0 auto;padding:9px 24px}
.bx-topbar__track span{white-space:nowrap}

/* ---------- Footer trust / payments ---------- */
.bx-trust{
  max-width:var(--bx-max);margin:0 auto;padding:20px 24px;
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  border-top:1px solid var(--bx-line);
}
.bx-trust__item{display:flex;align-items:center;gap:8px;color:#444;font-size:14px;font-weight:500}
.bx-trust__item svg{width:22px;height:22px;color:#1f8b4c}
.bx-trust__pays{display:flex;gap:8px;flex-wrap:wrap}
.bx-pay{font-size:12px;color:#555;border:1px solid var(--bx-line);background:#fff;border-radius:6px;padding:6px 10px}
.bx-pay--logo{font-weight:800;letter-spacing:.5px;color:#1a1a5e}

/* ---------- Cookie banner ---------- */
.bx-cookie{
  position:fixed;left:16px;right:16px;bottom:16px;z-index:200;
  background:#fff;border:1px solid var(--bx-line);border-radius:14px;
  box-shadow:0 10px 40px #0002;padding:18px 20px;
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  max-width:var(--bx-max);margin:0 auto;
}
.bx-cookie[hidden]{display:none}
.bx-cookie__text{font-size:14px;color:#333;max-width:760px}
.bx-cookie__text a{text-decoration:underline}
.bx-cookie__actions{display:flex;gap:10px;flex-shrink:0}
.bx-cookie .bx-btn{padding:11px 20px;font-size:14px}

/* ---------- Responsive ---------- */
@media(max-width:1024px){
  .bx-grid{grid-template-columns:repeat(3,1fr)}
  .bx-footer__cols{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .bx-header__bar{grid-template-columns:1fr auto;padding:14px 16px}
  .bx-logo{grid-column:1;justify-self:start;font-size:32px}
  .bx-header__actions{grid-column:2}
  .bx-container,.bx-section,.bx-hero,.bx-promo,.bx-woo{padding-left:16px;padding-right:16px}
  .bx-hero__inner,.bx-promo__inner{padding:30px 24px;min-height:260px}
  .bx-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .bx-cattabs{gap:20px}
}

/* ---------- Custom checkout ---------- */
.bx-hidden{display:none!important}
.bx-page .entry-content{margin:0}
.bx-checkout__grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:36px;align-items:start;max-width:1120px;margin:0 auto;padding:8px 0 10px}
/* steps */
.bx-cstep{margin:0 0 30px}
.bx-checkout__main #customer_details .bx-cstep+.bx-cstep,.bx-checkout__main .bx-cstep--pay{border-top:1px solid var(--bx-line);padding-top:30px}
.bx-step{display:flex;align-items:center;gap:13px;font-size:20px;font-weight:700;letter-spacing:-.2px;margin:0 0 20px}
.bx-step span{width:28px;height:28px;border-radius:50%;background:var(--bx-ink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex:0 0 auto}
/* fields */
.bx-checkout .form-row{margin:0 0 18px;padding:0;float:none;width:auto}
.bx-checkout .bx-row2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}
.bx-checkout .bx-row2 .form-row{margin:0}
.bx-checkout .form-row>label,.bx-dm-label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#3a3a3a;margin:0 0 9px}
.bx-checkout .required{color:var(--bx-sale);border:0;text-decoration:none}
.bx-checkout .input-text,.bx-checkout select,.bx-checkout textarea{width:100%;min-height:54px;border:1px solid #e2e2e2;border-radius:12px;padding:15px 16px;font-size:15px;line-height:1.3;background:#fff;color:var(--bx-ink);transition:border-color .15s,box-shadow .15s;font-family:inherit}
.bx-checkout .input-text::placeholder,.bx-checkout textarea::placeholder{color:#9a9a9a}
.bx-checkout .input-text:focus,.bx-checkout select:focus,.bx-checkout textarea:focus{outline:none;border-color:var(--bx-ink);box-shadow:0 0 0 1px var(--bx-ink)}
.bx-checkout textarea{min-height:104px;resize:vertical}
/* city + office look like a picker */
.bx-checkout #billing_city,.bx-checkout #billing_econt_office{padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239a9a9a' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;background-size:20px}
/* delivery method toggle */
.bx-dm{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:0 0 18px}
.bx-dm__opt{display:flex;align-items:center;gap:10px;border:1px solid #e2e2e2;border-radius:12px;padding:17px 18px;cursor:pointer;font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.02em;margin:0;color:#555;transition:border-color .15s,color .15s}
.bx-dm__opt input{display:none}
.bx-dm__ic{width:20px;height:20px;flex:0 0 auto}
.bx-dm__opt.is-active{border-color:var(--bx-ink);box-shadow:inset 0 0 0 1px var(--bx-ink);color:var(--bx-ink)}
.bx-dm__opt.is-active::after{content:"\2713";margin-left:auto;font-size:15px;font-weight:800}
.bx-ship-note{background:#eaf7ee;border:1px solid #bfe6cb;color:#1f6b3a;border-radius:10px;padding:13px 15px;font-size:14px;margin:12px 0 0;font-weight:500}
.bx-office-wrap,.bx-addr-wrap{margin:0 0 18px}
/* payment */
.bx-cstep--pay #payment{background:none;border:0;padding:0}
.bx-checkout .wc_payment_methods{list-style:none;margin:0 0 18px;padding:0;border:1px solid #e2e2e2;border-radius:12px;overflow:visible}
.bx-checkout .wc_payment_method{position:relative;padding:18px;border-bottom:1px solid var(--bx-line);list-style:none}
.bx-checkout .wc_payment_method:last-child{border-bottom:0}
.bx-checkout .wc_payment_method>input{display:none}
.bx-checkout .wc_payment_method>label{display:inline-flex;align-items:center;gap:9px;text-transform:none;font-size:15px;font-weight:700;margin:0;color:var(--bx-ink)}
.bx-checkout .wc_payment_method>label::before{content:"";width:22px;height:22px;flex:0 0 auto;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23c2703a'%3E%3Cpath d='M12 2l8 3v6c0 5-3.4 8.5-8 11-4.6-2.5-8-6-8-11V5z'/%3E%3C/svg%3E") no-repeat center/contain}
.bx-checkout .wc_payment_method::after{content:"Единствен метод";position:absolute;top:20px;right:18px;color:#1f8b4c;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.bx-checkout .payment_box{position:relative;background:#eceaf6;border-radius:10px;padding:13px 15px;margin:12px 0 0;font-size:14px;line-height:1.5;color:#444}
.bx-checkout .payment_box::before{content:"";display:block;position:absolute;top:-7px;left:22px;width:0;height:0;border:7px solid transparent;border-top:0;border-bottom-color:#eceaf6}
/* place order */
.bx-checkout #place_order{width:100%;background:var(--bx-ink);color:#fff;border:0;border-radius:12px;padding:18px;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;margin-top:6px;display:flex;align-items:center;justify-content:center;gap:9px}
.bx-checkout #place_order::before{content:"";width:18px;height:18px;flex:0 0 auto;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 2l8 3v6c0 5-3.4 8.5-8 11-4.6-2.5-8-6-8-11V5z'/%3E%3C/svg%3E") no-repeat center/contain}
.bx-checkout #place_order:hover{opacity:.9}
.bx-checkout .woocommerce-terms-and-conditions-wrapper,.bx-checkout .woocommerce-privacy-policy-text{font-size:13px;color:var(--bx-muted);margin:16px 0 0;text-align:center;line-height:1.6}
.bx-checkout .woocommerce-terms-and-conditions-wrapper a,.bx-checkout .woocommerce-privacy-policy-text a{color:#6a5acd;text-decoration:underline}
.bx-checkout-trust{border-top:1px solid var(--bx-line);margin-top:20px;padding-top:18px;flex-direction:row;justify-content:center;gap:22px;flex-wrap:wrap}
.bx-checkout-trust li{font-size:12.5px;color:#555;gap:7px}
.bx-checkout-trust svg{width:18px;height:18px}
/* order summary sidebar */
.bx-checkout__side{position:sticky;top:90px;background:var(--bx-soft);border:1px solid var(--bx-line);border-radius:18px;padding:24px}
.bx-side__title{font-size:18px;font-weight:700;margin:0 0 18px}
.bx-checkout__side .shop_table{width:100%;font-size:14px;border:0;background:none}
.bx-checkout__side .shop_table td,.bx-checkout__side .shop_table th{padding:11px 0;border:0;border-bottom:1px solid var(--bx-line);text-align:right;vertical-align:top}
.bx-checkout__side thead{display:none}
.bx-checkout__side .shop_table th{text-align:left;font-weight:500;color:#555}
.bx-checkout__side td.product-name{text-align:left;font-weight:500;color:var(--bx-ink)}
.bx-checkout__side td.product-total{white-space:nowrap;font-weight:600}
.bx-checkout__side .cart-subtotal th,.bx-checkout__side .woocommerce-shipping-totals th{font-weight:500;color:#555}
.bx-checkout__side .order-total th,.bx-checkout__side .order-total .amount{font-size:18px;font-weight:800}
.bx-checkout__side .order-total td,.bx-checkout__side .order-total th{border-bottom:0;padding-top:14px}
.bx-side-line{display:flex;align-items:flex-start;gap:11px}
.bx-side-thumb{width:52px;height:64px;object-fit:cover;border-radius:8px;flex:0 0 auto}
.bx-side-name{font-weight:600;font-size:14px;line-height:1.35}
.bx-checkout__side .variation,.bx-checkout__side dl.variation{margin:5px 0 0;font-size:12px;color:var(--bx-muted)}
.bx-checkout__side .variation p,.bx-checkout__side .variation dd,.bx-checkout__side .variation dt{margin:0;display:inline}
.bx-checkout__side .product-quantity{color:var(--bx-muted)}
.bx-ship-econt{color:var(--bx-muted);font-weight:500}
.bx-side-codrow td{border-bottom:0!important;padding-top:16px!important}
.bx-side-cod{background:#fff;border:1px solid var(--bx-line);border-radius:12px;padding:14px;text-align:left}
.bx-side-cod__h{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--bx-ink);margin-bottom:5px}
.bx-side-cod__h svg{width:20px;height:20px}
.bx-side-cod span{display:block;font-size:13px;color:var(--bx-muted);line-height:1.5}
/* responsive */
@media(max-width:980px){.bx-checkout__grid{grid-template-columns:1fr;gap:24px}.bx-checkout__side{position:static;order:-1}}
@media(max-width:560px){
  .bx-checkout .bx-row2{grid-template-columns:1fr;gap:0}
  .bx-checkout .bx-row2 .form-row{margin-bottom:18px}
  .bx-dm{grid-template-columns:1fr}
  .bx-step{font-size:18px}
  .bx-checkout__side{padding:18px}
}

/* ---------- Added-to-cart upsell modal ---------- */
.bx-modal[hidden]{display:none}
.bx-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:24px 16px;overflow:auto}
.bx-modal__overlay{position:fixed;inset:0;background:rgba(20,18,30,.55)}
.bx-modal__box{position:relative;z-index:1;background:#fff;width:100%;max-width:480px;border-radius:20px;padding:30px 26px;margin:auto;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.bx-modal__close{position:absolute;top:14px;right:16px;background:none;border:0;font-size:28px;line-height:1;color:#aaa;cursor:pointer}
.bx-modal__close:hover{color:#555}
.bx-m-tick{width:82px;height:82px;border-radius:50%;background:#7c3aed;color:#fff;display:flex;align-items:center;justify-content:center;font-size:40px;margin:4px auto 16px}
.bx-m-head{text-align:center;font-size:23px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;margin:0 0 20px}
.bx-m-item{display:flex;gap:14px;align-items:center;background:var(--bx-soft);border-radius:14px;padding:14px;margin:0 0 18px}
.bx-m-item img{width:74px;height:90px;object-fit:cover;border-radius:8px;flex:0 0 auto}
.bx-m-item__name{font-weight:700;font-size:16px;margin-bottom:4px}
.bx-m-item__meta{color:var(--bx-muted);font-size:14px}
.bx-m-ship{background:#f4f0ff;border-radius:14px;padding:14px 16px;margin:0 0 22px;text-align:center}
.bx-m-ship__txt{font-size:14px;color:#3a3a3a;margin-bottom:10px}
.bx-m-ship__txt b{color:#7c3aed}
.bx-m-ship__bar{height:9px;background:#e4dcff;border-radius:6px;overflow:hidden}
.bx-m-ship__bar span{display:block;height:100%;background:linear-gradient(90deg,#7c3aed,#a855f7);border-radius:6px;transition:width .4s}
.bx-m-cs-title{text-align:center;text-transform:uppercase;letter-spacing:.04em;color:var(--bx-muted);font-weight:700;font-size:13px;margin:0 0 14px}
.bx-m-cs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 18px}
.bx-m-cs__item img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;margin-bottom:8px}
.bx-m-cs__name{font-size:13px;font-weight:500;margin-bottom:4px}
.bx-m-cs__price{font-size:14px;margin-bottom:8px}
.bx-m-cs__price del{color:var(--bx-muted);font-size:12px;margin-right:4px}
.bx-m-cs__price ins{color:#7c3aed;font-weight:800;text-decoration:none}
.bx-m-cs__add{width:100%;padding:11px;border:1px solid #7c3aed;color:#7c3aed;background:#fff;border-radius:8px;font-weight:700;font-size:13px;cursor:pointer;text-transform:uppercase;letter-spacing:.03em;transition:background .15s,color .15s}
.bx-m-cs__add:hover{background:#7c3aed;color:#fff}
.bx-m-cs__add:disabled{opacity:.6;cursor:default}
.bx-m-actions{display:flex;flex-direction:column;gap:12px}
.bx-m-continue{text-align:center;padding:14px;border:1px solid var(--bx-ink);border-radius:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:14px;color:var(--bx-ink)}
.bx-m-continue:hover{background:var(--bx-soft)}
.bx-m-checkout{text-align:center;padding:16px;background:#7c3aed;color:#fff;border-radius:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-size:15px}
.bx-m-checkout:hover{opacity:.92}
@media(max-width:520px){.bx-modal__box{padding:24px 18px}.bx-m-head{font-size:20px}}
