/* =========================================================
   Nestory — доповнення для WordPress / WooCommerce
   (основний дизайн — main.css, перенесений з прототипу)
========================================================= */
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden;}
.admin-bar header.site{top:32px;}
@media(max-width:782px){.admin-bar header.site{top:46px;}}
.admin-bar .filters,.admin-bar .summary-card{top:136px;}
input,select,textarea,button{font-family:inherit;}
.logo{text-decoration:none;}
a.btn{text-decoration:none;}
a.icon-btn{text-decoration:none;}
.mobile-tabbar .mt-item{text-decoration:none;}
.entry-content{font-size:14.5px;line-height:1.65;max-width:820px;}
.entry-content a{color:var(--brand);}
.entry-content h2,.entry-content h3{margin:24px 0 10px;}
.woocommerce-cart .entry-content,.woocommerce-checkout .entry-content,.woocommerce-account .entry-content{max-width:none;font-size:inherit;}
.hide{display:none!important;}
.cd-panel[hidden]{display:none;}
.tab-pane[hidden]{display:none;}
.search-box input[type=search]{-webkit-appearance:none;appearance:none;}
.search-drop{display:none;}
.badge.nestory-cart-count{position:absolute;top:0;right:6px;}
.mobile-tabbar .badge{top:0;right:6px;}
.cw h3 a{color:inherit;}

/* --- Ціни WooCommerce --- */
.pprice-row{flex-wrap:wrap;}
.pprice-row .price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;}
.pprice-row .price ins,.pprice-row .price>.amount,.pprice-row .price>span.woocommerce-Price-amount{font-size:16.5px;font-weight:800;font-family:'Space Grotesk',sans-serif;text-decoration:none;background:none;order:1;}
.pprice-row .price del{font-size:12.5px;color:var(--faint);order:2;}
.price .screen-reader-text{display:none;}
.pd-price-line .price{display:inline-flex;align-items:baseline;gap:8px;flex-wrap:wrap;}
.pd-price-line .price ins,.pd-price-line .price>.amount{font-size:29px;font-weight:800;font-family:'Space Grotesk',sans-serif;text-decoration:none;background:none;order:1;}
.pd-price-line .price del{font-size:15px;color:var(--faint);order:2;}
.pd-price-line .price del .amount{font-size:15px;}
.pd-price-line .pd-save{margin-left:0;}
.pd-brand{text-decoration:none;display:inline-block;}
.pd-brand:hover{text-decoration:underline;}
.sticky-buy .p .amount{font-weight:800;}

/* --- Кількість (+/−) --- */
.qty-ctrl{display:flex;align-items:center;border:1px solid var(--border);border-radius:999px;width:fit-content;background:#fff;}
.qty-ctrl button{width:32px;height:32px;background:none;border:none;font-size:16px;font-weight:700;color:var(--ink);}
.qty-ctrl input.qty{width:44px;text-align:center;font-size:14px;border:none;background:transparent;padding:0;-moz-appearance:textfield;appearance:textfield;color:var(--ink);}
.qty-ctrl input.qty::-webkit-outer-spin-button,.qty-ctrl input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
form.cart .qty-ctrl{margin:14px 0 4px;}
.quantity.hidden{display:none;}
.cart-item .qty-ctrl{margin-bottom:6px;}
.cart-item .remove{display:inline-block;text-decoration:none;}
.cart-item .img img{width:100%;height:100%;object-fit:cover;}
.cart-item .name{color:var(--ink);}
button[name=update_cart][disabled]{display:none;}

/* --- Пагінація --- */
.pagination{flex-wrap:wrap;}
.pagination .page-numbers{min-width:36px;height:36px;padding:0 10px;border-radius:10px;border:1px solid var(--border);background:#fff;font-weight:600;font-size:13.5px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;}
.pagination .page-numbers.current{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;border-color:transparent;}
.pagination .page-numbers.dots{border:none;background:none;}
.pagination a.page-numbers:hover{border-color:var(--brand);color:var(--brand);}
.nav-links{display:flex;gap:6px;justify-content:center;margin-top:20px;}

/* --- Фільтри --- */
.filters{background:transparent;}
.filters .btn{width:100%;}
.sub-list a{text-decoration:none;}
.filter-row{cursor:pointer;}

/* --- Бренд-чіпи --- */
.brand-chip{text-decoration:none;display:block;}

/* --- Повідомлення WooCommerce --- */
.woocommerce-notices-wrapper{margin:16px 0 0;}
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;margin:0 0 14px;padding:12px 16px;border-radius:var(--radius-sm);font-size:13.5px;border:1px solid var(--border);background:var(--brand-tint);color:var(--ink);display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:space-between;}
.woocommerce-error{background:var(--sale-tint);border-color:#E4BDB7;color:var(--sale);}
.woocommerce-message .button,.woocommerce-info .button{background:var(--ink);color:#fff;border-radius:999px;padding:7px 16px;font-size:13px;font-weight:700;text-decoration:none;order:2;}
.woocommerce-error li{list-style:none;}

/* --- Поля форм WooCommerce --- */
.woocommerce form .form-row,.woocommerce-page form .form-row{margin:0 0 12px;padding:0;}
form.checkout .form-row,.woocommerce-account .form-row,.woocommerce-address-fields .form-row{margin:0 0 12px;}
.woocommerce-billing-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper,.woocommerce-address-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;}
.form-row-wide,.form-row.notes,#order_comments_field{grid-column:1/-1;}
.form-row label{display:block;font-size:12.5px;color:var(--muted);margin-bottom:5px;font-weight:600;}
.form-row .required{color:var(--sale);text-decoration:none;border:0;}
.form-row input.input-text,.form-row select,.form-row textarea,.select2-container--default .select2-selection--single,.woocommerce-input-wrapper input,.woocommerce form .input-text{width:100%;border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:14px;background:#fff;color:var(--ink);}
.form-row textarea{min-height:90px;}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 4px var(--brand-tint);}
.form-row.woocommerce-invalid input.input-text,.form-row.woocommerce-invalid select{border-color:var(--sale);}
.form-row.woocommerce-invalid label{color:var(--sale);}
.woocommerce-input-wrapper{display:block;}
.form-row .optional{display:none;}
@media(max-width:600px){.woocommerce-billing-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper,.woocommerce-address-fields__field-wrapper{grid-template-columns:1fr;}}
.woocommerce-form-login,.woocommerce-form-register,.woocommerce-form-coupon,form.login,form.register{border:1px solid var(--border);border-radius:var(--radius);padding:22px;background:#fff;margin:0 0 16px;}
.woocommerce-form__label-for-checkbox{display:flex!important;align-items:center;gap:8px;font-size:13.5px!important;color:var(--ink)!important;}
input[type=checkbox],input[type=radio]{accent-color:var(--brand);}

/* --- Кнопки WooCommerce приводимо до стилю прототипу --- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,#place_order,.checkout-button,.woocommerce-Button,button.single_add_to_cart_button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:14.5px;border-radius:999px;padding:12px 22px;border:1.5px solid var(--border);background:#fff;color:var(--ink);cursor:pointer;transition:.18s;text-decoration:none;}
#place_order,.checkout-button,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce-form-login__submit,.woocommerce-form-register__submit{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;border-color:transparent;box-shadow:var(--shadow-brand);width:100%;}
#place_order:hover,.checkout-button:hover{filter:brightness(1.06);transform:translateY(-1px);}
.woocommerce a.button:hover{border-color:var(--brand);color:var(--brand);}
.woocommerce a.button.alt:hover,.checkout-button:hover{color:#fff;}
.wc-proceed-to-checkout{padding:14px 0 0;}

/* --- Підсумок кошика / замовлення --- */
.cart_totals h2{display:none;}
.cart_totals table,.woocommerce-checkout-review-order-table{width:100%;border-collapse:collapse;font-size:13.5px;}
.cart_totals th,.cart_totals td,.woocommerce-checkout-review-order-table th,.woocommerce-checkout-review-order-table td{padding:8px 0;color:var(--muted);text-align:left;font-weight:400;border:0;vertical-align:top;}
.cart_totals td,.woocommerce-checkout-review-order-table td:last-child{text-align:right;}
.woocommerce-checkout-review-order-table thead{display:none;}
.woocommerce-checkout-review-order-table .product-name{color:var(--ink);}
.woocommerce-checkout-review-order-table .product-quantity{color:var(--muted);}
.cart_totals .order-total th,.cart_totals .order-total td,.woocommerce-checkout-review-order-table .order-total th,.woocommerce-checkout-review-order-table .order-total td{font-size:18px;font-weight:800;color:var(--ink);border-top:1px solid var(--border);padding-top:12px;font-family:'Space Grotesk',sans-serif;}
.woocommerce-shipping-methods{list-style:none;margin:0;padding:0;text-align:left;}
.woocommerce-shipping-methods li{display:flex;align-items:center;gap:8px;padding:6px 0;color:var(--ink);font-weight:600;}
.woocommerce-shipping-methods label{display:inline;margin:0;color:var(--ink);font-size:13.5px;}
tr.shipping td{text-align:left!important;}
tr.shipping th{padding-bottom:0!important;}
.woocommerce-shipping-destination,.shipping-calculator-button{font-size:12px;color:var(--faint);}
.woocommerce-remove-coupon{color:var(--sale);font-size:12px;}
.cart_totals .cart-discount td,.cart_totals .cart-discount th{color:var(--sale);}

/* --- Оплата --- */
#payment{margin-top:14px;}
#payment ul.payment_methods{list-style:none;margin:0 0 12px;padding:0;}
#payment ul.payment_methods li{border:1.5px solid var(--border);border-radius:12px;padding:12px 14px;margin-bottom:8px;font-size:14px;font-weight:600;}
#payment ul.payment_methods li label{display:inline;margin-left:6px;font-size:14px;color:var(--ink);}
#payment ul.payment_methods li img{display:inline;max-height:22px;margin-left:8px;vertical-align:middle;}
#payment .payment_box{background:var(--brand-tint);border-radius:8px;padding:10px 12px;margin-top:10px;font-weight:400;font-size:13px;color:var(--muted);}
#payment .payment_box p{margin:0;}
.woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-wrapper{font-size:11.5px;color:var(--faint);margin:10px 0;}
.woocommerce-terms-and-conditions-wrapper a{color:var(--brand);}
.checkout-layout .summary-card{position:sticky;top:104px;}

/* --- Order received --- */
.woocommerce-order{max-width:640px;margin:0 auto;}
.woocommerce-order .woocommerce-notice--success{display:none;}
.woocommerce-order-overview{list-style:none;margin:20px 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;}
.woocommerce-order-overview li{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;font-size:12px;color:var(--muted);background:#fff;}
.woocommerce-order-overview li strong{display:block;color:var(--ink);font-size:14px;}
.woocommerce-order-details table,.woocommerce-customer-details address{font-size:13.5px;}
.woocommerce-order-details table{width:100%;border-collapse:collapse;}
.woocommerce-order-details th,.woocommerce-order-details td{padding:8px 0;border-bottom:1px solid var(--border);text-align:left;}
.woocommerce-order-details h2,.woocommerce-customer-details h2{font-size:16px;margin:24px 0 10px;}
.woocommerce-customer-details address{border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;background:#fff;font-style:normal;}

/* --- Особистий кабінет --- */
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0 0 20px;padding:0;display:flex;gap:6px;flex-wrap:wrap;}
.woocommerce-MyAccount-navigation a{display:block;padding:8px 16px;border-radius:999px;border:1px solid var(--border);background:#fff;font-size:13.5px;font-weight:600;text-decoration:none;}
.woocommerce-MyAccount-navigation .is-active a{background:var(--brand-tint);color:var(--brand);border-color:var(--brand);}
.woocommerce-account .u-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;}
.woocommerce-account h2{font-size:18px;margin:0 0 12px;}
table.shop_table{width:100%;border-collapse:collapse;font-size:13.5px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;}
table.shop_table th,table.shop_table td{padding:10px 14px;border-bottom:1px solid var(--border);text-align:left;}
.woocommerce-account .woocommerce{max-width:900px;margin:0 auto;}

/* --- Відгуки --- */
#reviews .woocommerce-Reviews-title{font-size:16px;}
#reviews ol.commentlist{list-style:none;margin:0;padding:0;}
#reviews ol.commentlist li{border-bottom:1px solid var(--border);padding:16px 0;}
#reviews .comment_container{display:block;}
#reviews img.avatar{display:none;}
#reviews .comment-text .meta{font-size:13.5px;color:var(--muted);margin:4px 0;}
.star-rating{color:var(--gold);font-size:12px;letter-spacing:1px;display:inline-block;position:relative;height:1.2em;width:5.4em;overflow:hidden;line-height:1;font-family:inherit;}
.star-rating::before{content:'☆☆☆☆☆';position:absolute;left:0;top:0;}
.star-rating span{overflow:hidden;position:absolute;left:0;top:0;padding-top:1.5em;height:0;}
.star-rating span::before{content:'★★★★★';position:absolute;left:0;top:0;}
p.stars a{color:var(--gold);text-decoration:none;font-size:20px;margin-right:4px;}
p.stars a::before{content:'☆';}
p.stars.selected a::before{content:'★';}
p.stars.selected a.active~a::before{content:'☆';}
#review_form .comment-form-comment textarea,#review_form input[type=text],#review_form input[type=email]{width:100%;border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:14px;}
#review_form .submit{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;border:0;border-radius:999px;padding:11px 22px;font-weight:700;}
#reply-title{font-size:15px;font-weight:700;display:block;margin-bottom:8px;}

/* --- Модальне «1 клік», кнопки на мобільному --- */
.modal .field input,.modal .field select{width:100%;border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:14px;}
.pd-oneclick{background:var(--ink)!important;color:var(--lime)!important;border:none!important;}
.pd-actions .btn{white-space:nowrap;}
.pd-actions .btn-primary{flex:1;}
.fav-btn.active{color:var(--sale);border-color:var(--sale);background:var(--sale-tint);}
.faq{margin:0;}
.faq-q{cursor:pointer;}
.search-drop .row{cursor:pointer;color:inherit;text-decoration:none;}
.search-drop a.row{text-decoration:none;color:inherit;}
.search-drop .cat-chip{text-decoration:none;color:inherit;}
.wishlist-box .prod-grid{margin-top:8px;}
.sticky-buy .p{white-space:nowrap;}
@media(max-width:720px){
  .sticky-buy{display:flex;bottom:56px;}
  body.single-product{padding-bottom:120px;}
}
body .qty-ctrl input.input-text.qty{border:0;padding:0;width:44px;background:transparent;box-shadow:none;border-radius:0;}
body .qty-ctrl input.input-text.qty:focus{box-shadow:none;}
.entry-content a.btn-primary,.entry-content a.btn-primary:hover{color:#fff;}
.entry-content a.btn-outline{color:var(--ink);}
.promo-row input{min-width:0;}
.promo-row .btn{flex-shrink:0;}
.woocommerce-checkout-review-order-table tr.shipping th,.woocommerce-checkout-review-order-table tr.shipping td,
.cart_totals tr.shipping th,.cart_totals tr.shipping td,.cart_totals tr.woocommerce-shipping-totals th,.cart_totals tr.woocommerce-shipping-totals td,
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals th,.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals td{display:block;width:100%;text-align:left;}
.form-section>h3:first-child,.woocommerce-billing-fields>h3{margin-top:0;}
#customer_details .form-section{margin-bottom:16px;}
.search-wrap{min-width:0;}
.search-box{min-width:0;}
.search-box input{min-width:0;width:100%;flex:1;}
.header-main .logo{flex-shrink:0;}
html,body{overflow-x:hidden;}
@media(max-width:720px){
  .header-main{flex-wrap:wrap;}
  .header-main .search-wrap{order:3;flex:1 1 100%;max-width:none;}
  .header-actions{margin-left:auto;}
  .header-actions .icon-btn{padding:6px 8px;}
  .checkout-layout .summary-card{position:static;}
}
@media(max-width:720px){
  .header-main{padding-left:16px;padding-right:16px;}
  .prod-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .pcard .pname{font-size:12.5px;}
  .pcard .pbody{padding:10px;}
  .pcard .btn-sm{padding:8px 10px;font-size:12.5px;}
  .catalog-head{flex-direction:column;align-items:flex-start;gap:10px;}
}
