:root { --y2kqd-accent: #ed3158; --y2kqd-ink: #1d1d1f; }
/* Homepage product cards: hide category labels and WooCommerce's variable-product CTA. */
body.home .products .product .ast-woo-product-category,
body.front-page .products .product .ast-woo-product-category,
body.home .products .product .woocommerce-loop-product__category,
body.front-page .products .product .woocommerce-loop-product__category,
body.home .products .product .product-category,
body.front-page .products .product .product-category,
body.home .products .product .product-cat,
body.front-page .products .product .product-cat { display:none !important; }
body.home .products .product a.product_type_variable,
body.front-page .products .product a.product_type_variable { display:none !important; }
.y2kqd-trigger { position:absolute !important; z-index:3; right:12px; bottom:12px; width:48px; height:48px; padding:0 !important; border:0 !important; border-radius:50% !important; background:var(--y2kqd-accent) !important; color:#fff !important; font-size:32px !important; line-height:1 !important; font-weight:400 !important; box-shadow:0 3px 12px rgba(0,0,0,.2); cursor:pointer; display:flex; align-items:center; justify-content:center; }
.y2kqd-trigger:hover,.y2kqd-trigger:focus { background:#c91f45 !important; color:#fff !important; transform:scale(1.04); }
.y2kqd-product-stats { margin:5px 0 3px; display:grid; gap:2px; text-align:center; line-height:1.25; }
.y2kqd-sold-count { color:#353535; font-size:13px; font-weight:600; }
.y2kqd-rating { display:flex; align-items:center; justify-content:center; gap:5px; color:#252525; font-size:13px; }
.y2kqd-rating-value { font-weight:600; }
.y2kqd-stars { display:inline-block; white-space:nowrap; letter-spacing:1px; font-size:16px; line-height:1; color:transparent; -webkit-text-stroke:.65px #222; background:linear-gradient(90deg,#f2bd32 var(--y2kqd-star-fill),transparent var(--y2kqd-star-fill)); -webkit-background-clip:text; background-clip:text; }
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link { position:relative; }
.y2kqd-overlay[hidden],.y2kqd-drawer[hidden],.y2kqd-product[hidden],.y2kqd-error[hidden] { display:none !important; }
.y2kqd-overlay { position:fixed; inset:0; z-index:99998; background:rgba(0,0,0,.52); opacity:0; transition:opacity .22s ease; }
.y2kqd-overlay.is-open { opacity:1; }
.y2kqd-drawer { position:fixed; z-index:99999; left:50%; bottom:0; width:min(620px,100%); max-height:min(88vh,850px); overflow:auto; transform:translate(-50%,105%); transition:transform .28s cubic-bezier(.2,.75,.25,1); background:#fff; color:var(--y2kqd-ink); border-radius:20px 20px 0 0; box-shadow:0 -10px 40px rgba(0,0,0,.18); padding:10px 22px max(22px,env(safe-area-inset-bottom)); box-sizing:border-box; font-family:inherit; }
.y2kqd-drawer.is-open { transform:translate(-50%,0); }
.y2kqd-handle { display:flex; justify-content:center; height:18px; }
.y2kqd-handle span { width:42px; height:4px; border-radius:5px; background:#d3d3d3; }
.y2kqd-close { position:absolute; top:14px; right:16px; border:0; background:#f1f1f1; color:#333; border-radius:50%; width:34px; height:34px; font-size:25px; line-height:1; cursor:pointer; }
.y2kqd-content { padding-top:9px; }
.y2kqd-loading,.y2kqd-error { padding:28px 8px; text-align:center; }
.y2kqd-error { color:#a61b32; }
.y2kqd-product-main { display:grid; grid-template-columns:112px 1fr; gap:16px; align-items:center; padding:3px 30px 18px 0; }
.y2kqd-image-wrap { width:112px; height:112px; background:#f6f6f6; border-radius:12px; overflow:hidden; }
.y2kqd-image { width:100%; height:100%; object-fit:contain; display:block; }
.y2kqd-title { font-size:18px; line-height:1.3; margin:0 0 8px; color:inherit; }
.y2kqd-price { font-size:19px; font-weight:700; color:var(--y2kqd-accent); }
.y2kqd-price del { color:#999; font-size:14px; font-weight:400; }
.y2kqd-price ins { text-decoration:none; }
.y2kqd-stock { margin-top:5px; color:#39804d; font-size:13px; }
.y2kqd-options { display:grid; gap:12px; padding:0 0 15px; }
.y2kqd-option label,.y2kqd-quantity label { display:block; font-size:14px; font-weight:600; margin:0 0 6px; }
.y2kqd-option select { display:block; width:100%; min-height:44px; border:1px solid #d5d5d5; border-radius:9px; padding:8px 12px; background:#fff; color:#222; font:inherit; }
.y2kqd-quantity { display:flex; align-items:center; justify-content:space-between; padding:4px 0 17px; }
.y2kqd-quantity label { margin:0; }
.y2kqd-qty-control { display:flex; align-items:center; border:1px solid #ddd; border-radius:8px; overflow:hidden; height:38px; }
.y2kqd-qty-control button { width:38px; height:38px; border:0; background:#f4f4f4; color:#222; font-size:20px; cursor:pointer; }
.y2kqd-qty-control input { width:48px; height:38px; padding:0; border:0; text-align:center; font:inherit; appearance:textfield; }
.y2kqd-qty-control input::-webkit-inner-spin-button,.y2kqd-qty-control input::-webkit-outer-spin-button { appearance:none; margin:0; }
.y2kqd-message { min-height:0; color:#39804d; font-size:13px; padding:0; }
.y2kqd-message:not(:empty) { padding:0 0 10px; }
.y2kqd-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.y2kqd-actions .button { min-height:48px; padding:10px 14px !important; border:0 !important; border-radius:9px !important; font-size:15px !important; font-weight:700 !important; cursor:pointer; }
.y2kqd-add { background:#222 !important; color:#fff !important; }
.y2kqd-buy { background:var(--y2kqd-accent) !important; color:#fff !important; }
.y2kqd-actions .button:disabled { opacity:.5; cursor:not-allowed; }
body.y2kqd-lock { overflow:hidden; }
@media (min-width:700px) {
	.y2kqd-drawer { bottom:auto; top:50%; transform:translate(-50%,-45%); border-radius:18px; max-height:85vh; padding-bottom:22px; }
	.y2kqd-drawer.is-open { transform:translate(-50%,-50%); }
}
@media (max-width:480px) {
	.y2kqd-drawer { padding-left:17px; padding-right:17px; max-height:88dvh; }
	.y2kqd-product-main { grid-template-columns:88px 1fr; gap:12px; }
	.y2kqd-image-wrap { width:88px; height:88px; }
	.y2kqd-title { font-size:16px; }
	.y2kqd-actions .button { font-size:14px !important; }
	.y2kqd-trigger { width:44px; height:44px; font-size:30px !important; right:9px; bottom:9px; }
}
