/*
Theme Name: Đặc Sản Làm Quà App Commerce
Theme URI: https://dacsanlamqua.com/
Author: OpenAI
Description: Custom WooCommerce app-style classic theme for Đặc Sản Làm Quà. Built with server-rendered HTML, progressive enhancement, AJAX cart drawer and SEO-safe WordPress/WooCommerce hooks.
Version: 2.0.17
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: dslq-app
License: GPL-2.0-or-later
*/

:root{--dslq-orange:#f4511e;--dslq-orange-2:#ff6a00;--dslq-cream:#fff7ed;--dslq-bg:#f7f7f5;--dslq-text:#202124;--dslq-muted:#70757a;--dslq-border:#ece9e5;--dslq-radius:18px;--dslq-shadow:0 8px 28px rgba(25,25,25,.07);--dslq-max:1280px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--dslq-bg);color:var(--dslq-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer}.dslq-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dslq-container{width:min(calc(100% - 32px),var(--dslq-max));margin-inline:auto}.dslq-section{padding:34px 0}.dslq-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.dslq-section-head h2{font-size:24px;line-height:1.15;margin:0;font-weight:800}.dslq-section-head a{color:var(--dslq-orange);font-weight:700;font-size:14px}

/* Header */
.dslq-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(236,233,229,.85)}.dslq-header-main{min-height:76px;display:grid;grid-template-columns:auto minmax(280px,1fr) auto;align-items:center;gap:26px}.dslq-brand{display:flex;align-items:center;gap:10px;font-weight:900;font-size:20px;letter-spacing:-.4px}.dslq-brand-mark{width:40px;height:40px;border-radius:13px;background:linear-gradient(135deg,var(--dslq-orange),#ff8a00);display:grid;place-items:center;color:#fff;box-shadow:0 8px 18px rgba(244,81,30,.24)}.dslq-search{position:relative}.dslq-search form{margin:0}.dslq-search input{width:100%;height:46px;border:1px solid var(--dslq-border);background:#f7f7f7;border-radius:14px;padding:0 46px 0 44px;outline:none;transition:.2s}.dslq-search input:focus{border-color:#ff9c72;background:#fff;box-shadow:0 0 0 4px rgba(244,81,30,.08)}.dslq-search button{position:absolute;left:5px;top:5px;width:36px;height:36px;border:0;background:transparent;color:#6f7378}.dslq-header-actions{display:flex;align-items:center;gap:8px}.dslq-icon-btn{width:44px;height:44px;border:1px solid var(--dslq-border);background:#fff;border-radius:14px;display:grid;place-items:center;position:relative;color:#292929}.dslq-cart-count{position:absolute;right:-2px;top:-4px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--dslq-orange);color:#fff;font-size:11px;display:grid;place-items:center;font-weight:800}.dslq-desktop-nav{border-top:1px solid #f0efed}.dslq-desktop-nav .dslq-container{display:flex;align-items:center;gap:28px;min-height:46px}.dslq-desktop-nav a{font-size:14px;font-weight:700;color:#51545a}.dslq-desktop-nav a:hover{color:var(--dslq-orange)}

/* Hero */
.dslq-hero{padding:28px 0 10px}.dslq-hero-card{position:relative;overflow:hidden;border-radius:28px;background:linear-gradient(110deg,#fff1df,#fffaf3 60%,#ffe8c6);min-height:360px;padding:52px 48% 48px 48px;display:flex;flex-direction:column;justify-content:center}.dslq-hero-card:after{content:"";position:absolute;right:-80px;bottom:-100px;width:470px;height:470px;border-radius:50%;background:rgba(244,81,30,.08)}.dslq-hero-content{position:relative;z-index:2}.dslq-eyebrow{font-size:13px;font-weight:800;color:#bd461b;margin-bottom:10px}.dslq-hero h1{font-size:clamp(34px,4.5vw,60px);line-height:.98;letter-spacing:-2px;margin:0 0 18px;max-width:600px}.dslq-hero p{font-size:17px;color:#5e5149;max-width:520px;margin:0 0 24px}.dslq-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--dslq-orange),var(--dslq-orange-2));color:#fff;font-weight:800;box-shadow:0 12px 24px rgba(244,81,30,.22)}.dslq-hero-media{position:absolute;z-index:1;right:5%;top:50%;transform:translateY(-50%);width:43%;height:82%;border-radius:24px;overflow:hidden;background:#f4d7b5;box-shadow:var(--dslq-shadow)}.dslq-hero-media img{width:100%;height:100%;object-fit:cover}.dslq-hero-fallback{height:100%;display:grid;place-items:center;color:#9b6b4e;font-size:60px}

/* Categories */
.dslq-cat-row{display:flex;gap:12px;overflow:auto;padding:3px 1px 8px;scrollbar-width:none}.dslq-cat-row::-webkit-scrollbar{display:none}.dslq-cat{flex:0 0 112px;background:#fff;border:1px solid var(--dslq-border);border-radius:18px;padding:12px 8px;text-align:center;box-shadow:0 4px 16px rgba(25,25,25,.035);transition:.2s}.dslq-cat:hover{transform:translateY(-2px);border-color:#ffd0bf}.dslq-cat-thumb{width:64px;height:64px;border-radius:50%;overflow:hidden;background:#f5eee8;margin:0 auto 8px}.dslq-cat-thumb img{width:100%;height:100%;object-fit:cover}.dslq-cat span{display:block;font-size:12px;font-weight:800;line-height:1.25}

/* Product grid/cards */
.dslq-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.dslq-product{background:#fff;border:1px solid var(--dslq-border);border-radius:18px;overflow:hidden;box-shadow:0 5px 18px rgba(25,25,25,.045);position:relative;min-width:0}.dslq-product-image{position:relative;aspect-ratio:1/1;background:#f2eee9;overflow:hidden}.dslq-product-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.dslq-product:hover .dslq-product-image img{transform:scale(1.035)}.dslq-fav{position:absolute;right:9px;top:9px;width:34px;height:34px;border-radius:50%;border:0;background:rgba(255,255,255,.94);display:grid;place-items:center;box-shadow:0 4px 12px rgba(0,0,0,.1)}.dslq-fav.is-active{color:#e53935}.dslq-product-body{padding:13px}.dslq-product-title{font-size:15px;font-weight:750;line-height:1.28;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:38px}.dslq-rating{margin-top:6px;font-size:12px;color:#f59e0b;font-weight:700}.dslq-rating span{color:#777;font-weight:500}.dslq-product-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:10px}.dslq-price-wrap{min-width:0;display:flex;align-items:baseline;flex-wrap:wrap;column-gap:6px;row-gap:1px;line-height:1.05}.dslq-price-current{font-weight:900;color:#d9471c;font-size:17px;letter-spacing:-.2px;white-space:nowrap}.dslq-price-current .woocommerce-Price-currencySymbol{font-size:.82em;margin-left:1px}.dslq-price-old{font-size:11px;color:#969696;text-decoration:line-through;white-space:nowrap;font-weight:600}.dslq-price-discount{font-size:10px;font-weight:800;color:#d9471c;background:#fff0eb;border-radius:6px;padding:3px 5px;white-space:nowrap}.dslq-price-native{font-weight:900;color:#d9471c;font-size:17px}.dslq-price-native del{font-size:11px;color:#969696;font-weight:600}.dslq-price-native ins{text-decoration:none;color:#d9471c}.dslq-add{width:36px;height:36px;border:0;border-radius:12px;background:var(--dslq-orange);color:#fff;font-size:22px;line-height:1;display:grid;place-items:center;box-shadow:0 6px 12px rgba(244,81,30,.2)}.dslq-card-control{flex:0 0 auto}.dslq-card-qty{width:78px;height:36px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;overflow:hidden;border-radius:12px;background:var(--dslq-orange);box-shadow:0 6px 12px rgba(244,81,30,.2)}.dslq-card-qty button{width:100%;height:100%;padding:0;border:0;background:transparent;color:#fff;font-size:20px;font-weight:800;line-height:1;display:grid;place-items:center;cursor:pointer}.dslq-card-qty span{display:grid;place-items:center;width:100%;height:100%;color:#fff;font-size:14px;font-weight:800}.dslq-card-qty button:active{background:rgba(0,0,0,.08)}.dslq-card-control.loading{opacity:.65;pointer-events:none}.dslq-add.loading{opacity:.6;pointer-events:none}.dslq-add:disabled{background:#bbb}.dslq-shelf-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(180px,1fr);grid-template-rows:1fr;gap:14px;overflow:auto;scrollbar-width:none;padding-bottom:4px}.dslq-shelf-scroll::-webkit-scrollbar{display:none}.dslq-shelf-scroll .dslq-product{width:100%}

/* Promo */
.dslq-promo{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dslq-promo-card{min-height:180px;border-radius:22px;padding:24px;position:relative;overflow:hidden;background:#fff0df;border:1px solid #ffe0c5}.dslq-promo-card.dark{background:#2b201a;color:#fff;border-color:#2b201a}.dslq-promo-card h3{margin:0 0 8px;font-size:24px;max-width:55%}.dslq-promo-card p{margin:0 0 18px;color:#7d6659;max-width:55%}.dslq-promo-card.dark p{color:#d9c9bf}.dslq-promo-card img{position:absolute;right:0;bottom:0;width:45%;height:100%;object-fit:cover;opacity:.95}

/* Archive */
.dslq-archive-head{padding:32px 0 18px}.dslq-archive-head h1{margin:0;font-size:34px;letter-spacing:-1px}.dslq-archive-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 18px}.dslq-chips{display:flex;gap:8px;overflow:auto;scrollbar-width:none}.dslq-chip{border:1px solid var(--dslq-border);background:#fff;border-radius:999px;min-height:38px;padding:0 15px;font-weight:750;font-size:13px;white-space:nowrap}.dslq-chip.is-active{background:var(--dslq-orange);color:#fff;border-color:var(--dslq-orange)}.dslq-sort{height:40px;border:1px solid var(--dslq-border);border-radius:12px;background:#fff;padding:0 12px;font-weight:700}.dslq-load-more{display:flex;justify-content:center;padding:24px}.dslq-load-more button{min-width:170px;height:44px;border:1px solid var(--dslq-border);background:#fff;border-radius:13px;font-weight:800}.dslq-loader{display:none;text-align:center;padding:16px;color:#777}.dslq-loader.is-visible{display:block}

/* Single */
.dslq-single{padding:28px 0 60px}.dslq-product-single{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:42px}.dslq-gallery-main{border-radius:24px;overflow:hidden;background:#f2eee9;aspect-ratio:1/1}.dslq-gallery-main img{width:100%;height:100%;object-fit:cover}.dslq-gallery-thumbs{display:flex;gap:10px;margin-top:12px;overflow:auto}.dslq-gallery-thumb{flex:0 0 72px;height:72px;border:2px solid transparent;border-radius:12px;overflow:hidden;background:#f2eee9}.dslq-gallery-thumb.active{border-color:var(--dslq-orange)}.dslq-gallery-thumb img{width:100%;height:100%;object-fit:cover}.dslq-single-info h1{font-size:clamp(30px,4vw,48px);line-height:1.04;letter-spacing:-1.4px;margin:8px 0 12px}.dslq-single-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;color:#777}.dslq-single-price{font-size:30px;font-weight:900;color:#d9471c;margin:20px 0}.dslq-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:#fff5e9;border-radius:14px;padding:12px;margin:18px 0}.dslq-benefits div{font-size:12px;font-weight:700;text-align:center}.dslq-option-label{font-weight:800;margin:20px 0 8px}.dslq-qty-row{display:flex;align-items:center;gap:10px}.dslq-qty{display:inline-flex;align-items:center;border:1px solid var(--dslq-border);border-radius:12px;overflow:hidden}.dslq-qty button{width:40px;height:42px;border:0;background:#fff}.dslq-qty input{width:45px;height:42px;border:0;text-align:center;outline:none}.dslq-single-add{flex:1;min-height:44px}.dslq-content-box{margin-top:28px;padding-top:24px;border-top:1px solid var(--dslq-border)}

/* Cart drawer */
.dslq-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);opacity:0;visibility:hidden;transition:.25s;z-index:90}.dslq-overlay.is-open{opacity:1;visibility:visible}.dslq-cart-drawer{position:fixed;left:50%;bottom:0;transform:translate(-50%,110%);width:min(100%,560px);max-height:min(86vh,760px);background:#fff;border-radius:24px 24px 0 0;z-index:100;transition:transform .3s;box-shadow:0 -20px 60px rgba(0,0,0,.18);display:flex;flex-direction:column}.dslq-cart-drawer.is-open{transform:translate(-50%,0)}.dslq-drawer-handle{width:42px;height:5px;border-radius:99px;background:#d8d8d8;margin:9px auto}.dslq-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:8px 18px 14px;border-bottom:1px solid var(--dslq-border)}.dslq-drawer-head h2{margin:0;font-size:19px}.dslq-drawer-close{border:0;background:#f5f5f5;width:34px;height:34px;border-radius:50%}.dslq-cart-items{overflow:auto;padding:12px 18px}.dslq-cart-item{display:grid;grid-template-columns:62px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #f0efed}.dslq-cart-item img{width:62px;height:62px;border-radius:12px;object-fit:cover;background:#f2eee9}.dslq-cart-item-title{font-weight:750;font-size:14px;line-height:1.3}.dslq-cart-item-price{color:#d9471c;font-weight:800;font-size:13px;margin-top:4px}.dslq-cart-qty{display:flex;align-items:center;border:1px solid var(--dslq-border);border-radius:10px;overflow:hidden;margin-top:7px;width:max-content}.dslq-cart-qty button{border:0;background:#fff;width:28px;height:28px}.dslq-cart-qty span{min-width:28px;text-align:center;font-size:12px}.dslq-cart-line-total{font-weight:800;font-size:14px}.dslq-cart-summary{padding:14px 18px;border-top:1px solid var(--dslq-border);background:#fff}.dslq-cart-summary-row{display:flex;justify-content:space-between;margin-bottom:8px}.dslq-cart-summary-row.total{font-size:19px;font-weight:900}.dslq-cart-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.dslq-secondary{min-height:46px;border:1px solid var(--dslq-border);border-radius:13px;background:#fff;font-weight:800}.dslq-cart-actions .dslq-primary{min-height:46px}.dslq-empty-cart{text-align:center;padding:45px 20px;color:#777}

/* Bottom nav */
.dslq-bottom-nav{display:none}.dslq-bottom-nav a{flex:1;min-width:0;text-align:center;font-size:11px;color:#6d7075;font-weight:700;padding:7px 2px 6px;line-height:1.1}.dslq-bottom-nav a.active{color:var(--dslq-orange)}.dslq-bottom-nav .dslq-nav-icon{width:26px;height:26px;margin:0 auto 3px;display:grid;place-items:center;position:relative;line-height:1}.dslq-bottom-nav .dslq-nav-icon svg{width:23px;height:23px;display:block}.dslq-bottom-nav .dslq-nav-label{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dslq-bottom-cart-count{position:absolute;right:-7px;top:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--dslq-orange);color:#fff;font-size:10px;line-height:13px;text-align:center;font-weight:900;box-shadow:0 2px 6px rgba(244,81,30,.22);border:2px solid #fff}.dslq-bottom-cart-count.is-empty{display:none}

/* WP/Woo */
.woocommerce .site-main,.woocommerce-page .site-main{min-height:60vh}.woocommerce-breadcrumb{font-size:13px;color:#777;margin:12px 0 20px!important}.woocommerce-notices-wrapper{margin-top:18px}.woocommerce-message,.woocommerce-info,.woocommerce-error{border:0!important;border-radius:14px!important;background:#fff!important;box-shadow:var(--dslq-shadow);padding:14px 18px!important}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{min-height:46px;border:1px solid var(--dslq-border);border-radius:12px;background:#fff;padding:0 13px}.woocommerce form .form-row textarea{padding:12px}.woocommerce button.button,.woocommerce a.button,.woocommerce input.button{border-radius:12px!important;background:var(--dslq-orange)!important;color:#fff!important;min-height:44px;font-weight:800!important}.woocommerce table.shop_table{border:1px solid var(--dslq-border);border-radius:18px;overflow:hidden;background:#fff}.woocommerce .cart-collaterals .cart_totals{background:#fff;border:1px solid var(--dslq-border);border-radius:18px;padding:18px}.woocommerce-checkout #payment{background:#fff;border:1px solid var(--dslq-border);border-radius:18px}.woocommerce-checkout .col2-set,.woocommerce-checkout #order_review{background:#fff;border-radius:18px;padding:20px;border:1px solid var(--dslq-border)}

/* Blog */
.dslq-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.dslq-post-card{background:#fff;border:1px solid var(--dslq-border);border-radius:18px;overflow:hidden}.dslq-post-card img{aspect-ratio:16/10;width:100%;object-fit:cover}.dslq-post-card-body{padding:16px}.dslq-post-card h2{font-size:18px;line-height:1.25;margin:0 0 8px}.dslq-post-meta{font-size:12px;color:#777}

/* Footer */
.dslq-footer{margin-top:50px;background:#221b17;color:#eee;padding:48px 0 88px}.dslq-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}.dslq-footer h3{font-size:15px;margin:0 0 12px}.dslq-footer p,.dslq-footer li{color:#cfc4bd;font-size:13px}.dslq-footer ul{padding:0;margin:0;list-style:none;display:grid;gap:7px}.dslq-copyright{margin-top:30px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;color:#a99c95}

@media(max-width:1024px){.dslq-header-main{grid-template-columns:auto 1fr auto}.dslq-desktop-nav{display:none}.dslq-products{grid-template-columns:repeat(3,1fr)}.dslq-product-single{gap:26px}.dslq-footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){body{font-size:15px;padding-bottom:64px}.dslq-container{width:min(calc(100% - 20px),var(--dslq-max))}.dslq-header{position:sticky}.dslq-header-main{min-height:62px;grid-template-columns:auto 1fr auto;gap:8px}.dslq-brand{font-size:0}.dslq-brand-mark{width:38px;height:38px}.dslq-header-actions .dslq-icon-btn:first-child{display:none}.dslq-search input{height:40px;padding-left:38px;padding-right:10px;font-size:13px}.dslq-search button{width:32px;height:32px}.dslq-header-actions .dslq-icon-btn{width:40px;height:40px}.dslq-hero{padding-top:12px}.dslq-hero-card{min-height:430px;padding:28px 24px 220px;border-radius:22px}.dslq-hero h1{font-size:36px;letter-spacing:-1.5px}.dslq-hero p{font-size:14px}.dslq-hero-media{right:8%;bottom:18px;top:auto;transform:none;width:84%;height:180px;border-radius:18px}.dslq-section{padding:24px 0}.dslq-section-head h2{font-size:20px}.dslq-cat{flex-basis:92px;padding:10px 6px}.dslq-cat-thumb{width:54px;height:54px}.dslq-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dslq-product-body{padding:10px}.dslq-product-title{font-size:13px;min-height:34px}.dslq-price-current{font-size:15px}.dslq-price-native{font-size:15px}.dslq-price-old{font-size:10px}.dslq-price-discount{font-size:9px;padding:3px 4px}.dslq-add{width:34px;height:34px}.dslq-card-qty{width:78px;height:34px}.dslq-promo{grid-template-columns:1fr}.dslq-promo-card{min-height:160px}.dslq-archive-head{padding-top:20px}.dslq-archive-head h1{font-size:27px}.dslq-archive-tools{display:block}.dslq-sort{margin-top:10px}.dslq-product-single{grid-template-columns:1fr;gap:20px}.dslq-gallery-main{border-radius:20px}.dslq-single-info h1{font-size:31px}.dslq-benefits{grid-template-columns:repeat(3,1fr)}.dslq-bottom-nav{display:flex;position:fixed;z-index:70;left:0;right:0;bottom:0;height:62px;background:rgba(255,255,255,.97);backdrop-filter:blur(16px);border-top:1px solid var(--dslq-border);box-shadow:0 -8px 25px rgba(0,0,0,.06)}.dslq-footer{padding-bottom:30px}.dslq-footer-grid{grid-template-columns:1fr}.dslq-post-grid{grid-template-columns:1fr}.dslq-shelf-scroll{grid-auto-columns:calc(48vw - 5px)}.woocommerce table.shop_table{font-size:13px}}

.dslq-post-placeholder{aspect-ratio:16/10;width:100%;display:grid;place-items:center;background:#f4eee7;font-size:48px}

/* v1.0.3: Homepage-only horizontal product shelves for the Bán chạy / Được yêu thích sections. */
.dslq-products-home-shelf{
    display:flex;
    gap:16px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    padding:2px 2px 8px;
    -webkit-overflow-scrolling:touch;
}
.dslq-products-home-shelf::-webkit-scrollbar{display:none}
.dslq-products-home-shelf .dslq-product{
    flex:0 0 210px;
    width:210px;
    scroll-snap-align:start;
}
@media(max-width:767px){
    .dslq-products-home-shelf{
        gap:10px;
        margin-right:-10px;
        padding-right:10px;
    }
    .dslq-products-home-shelf .dslq-product{
        flex-basis:calc(48vw - 5px);
        width:calc(48vw - 5px);
    }
}

/* v1.0.7: Shop/category navigation uses the homepage category visual language. */
.dslq-archive-intro{color:#777;margin:6px 0 0}
.dslq-category-description{max-width:860px;margin-top:10px;color:#666;font-size:14px;line-height:1.7}
.dslq-category-description p{margin:0 0 8px}.dslq-category-description p:last-child{margin-bottom:0}
.dslq-shop-categories{display:flex;gap:12px;overflow-x:auto;padding:3px 1px 10px;margin:4px 0 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
.dslq-shop-categories::-webkit-scrollbar{display:none}
.dslq-shop-cat{position:relative;scroll-snap-align:start}
.dslq-shop-cat.is-active{border-color:var(--dslq-orange);background:var(--dslq-cream);box-shadow:0 7px 20px rgba(244,81,30,.10)}
.dslq-shop-cat.is-active .dslq-cat-thumb{box-shadow:0 0 0 2px rgba(244,81,30,.12)}
.dslq-cat-placeholder{width:100%;height:100%;display:grid;place-items:center;color:var(--dslq-orange);font-size:23px}
.dslq-archive-filter-label{font-weight:800;font-size:17px}
@media(max-width:767px){.dslq-category-description{font-size:13px}.dslq-archive-filter-label{font-size:15px}.dslq-shop-categories{margin-right:-10px;padding-right:10px}.dslq-shop-cat{flex-basis:92px;padding:10px 6px}.dslq-shop-cat .dslq-cat-thumb{width:54px;height:54px}}

/* v1.0.8 — Shop toolbar: category/product context + sorting on one row. */
.dslq-shop-controls{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	width:100%;
	margin:0 0 16px;
	flex-wrap:nowrap;
}
.dslq-shop-controls-count{
	flex:1 1 auto;
	min-width:0;
	font-weight:700;
}
.dslq-shop-controls-count .woocommerce-result-count{float:none;margin:0;}
.dslq-shop-controls-sort{flex:0 0 auto;}
.dslq-shop-controls-sort .woocommerce-ordering{float:none;margin:0;}
.dslq-shop-controls-sort select{
	min-height:40px;
	border:1px solid #e5e7eb;
	border-radius:12px;
	background:#fff;
	padding:0 32px 0 12px;
	font-size:14px;
}
@media (max-width:767px){
	.dslq-shop-controls{gap:8px;margin-bottom:14px;}
	.dslq-shop-controls-count{font-size:14px;}
	.dslq-shop-controls-sort select{min-height:38px;max-width:150px;font-size:13px;}
}
/* v1.0.8 — Wishlist icon: modern circular SVG container. */
.dslq-wishlist-button,
.dslq-product-wishlist,
.dslq-wishlist{
	width:40px;height:40px;min-width:40px;min-height:40px;
	display:inline-flex;align-items:center;justify-content:center;
	border-radius:50%;border:1px solid rgba(17,24,39,.08);
	background:rgba(255,255,255,.97);box-shadow:0 4px 14px rgba(17,24,39,.08);
	color:#4b5563;line-height:1;padding:0;
	-webkit-tap-highlight-color:transparent;
}
.dslq-wishlist-button svg,.dslq-product-wishlist svg,.dslq-wishlist svg{width:20px;height:20px;display:block;}
.dslq-wishlist-button.is-active,.dslq-product-wishlist.is-active,.dslq-wishlist.is-active{
	color:#e85d04;border-color:rgba(232,93,4,.18);background:#fff7ed;
}
@media (max-width:767px){
	.dslq-wishlist-button,.dslq-product-wishlist,.dslq-wishlist{
		width:38px;height:38px;min-width:38px;min-height:38px;
	}
}

/* v1.0.9 — Shop toolbar final fix: same row on desktop + mobile. */
.dslq-archive-tools{
	display:flex !important;
	flex-direction:row !important;
	align-items:center !important;
	justify-content:space-between !important;
	flex-wrap:nowrap !important;
	gap:10px !important;
	width:100%;
}
.dslq-archive-filter-label{
	flex:1 1 auto;
	min-width:0;
	margin:0 !important;
	font-weight:800;
	line-height:1.25;
}
.dslq-archive-tools form{
	flex:0 0 auto;
	margin:0 !important;
}
.dslq-archive-tools .dslq-sort{
	margin:0 !important;
	height:40px;
	min-height:40px;
}
@media (max-width:767px){
	.dslq-archive-tools{
		display:flex !important;
		flex-direction:row !important;
		align-items:center !important;
	}
	.dslq-archive-filter-label{
		font-size:14px;
		white-space:nowrap;
		overflow:hidden;
		text-overflow:ellipsis;
	}
	.dslq-archive-tools .dslq-sort{
		height:38px;
		min-height:38px;
		max-width:145px;
		font-size:13px;
	}
}

/* v1.0.9 — Product-card wishlist icon: use the actual .dslq-fav button. */
.dslq-product-image{position:relative;}
.dslq-fav{
	position:absolute;
	top:10px;
	right:10px;
	width:40px;
	height:40px;
	min-width:40px;
	min-height:40px;
	padding:0;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	border:1px solid rgba(17,24,39,.08);
	border-radius:50%;
	background:rgba(255,255,255,.96);
	color:#4b5563;
	box-shadow:0 4px 14px rgba(17,24,39,.10);
	font-size:0;
	line-height:1;
	cursor:pointer;
	-webkit-tap-highlight-color:transparent;
}
.dslq-fav svg{width:20px;height:20px;display:block;stroke:currentColor;}
.dslq-fav.is-active{
	color:#e85d04;
	background:#fff7ed;
	border-color:rgba(232,93,4,.20);
}
@media (max-width:767px){
	.dslq-fav{width:38px;height:38px;min-width:38px;min-height:38px;top:8px;right:8px;}
	.dslq-fav svg{width:19px;height:19px;}
}

/* v1.1.0 — Single Product app layout. Scoped to .dslq-single-page only. */
.dslq-single-page .dslq-single{padding:18px 0 70px;}
.dslq-breadcrumb{display:flex;align-items:center;gap:9px;font-size:13px;color:#8a817b;margin:6px 0 18px;white-space:nowrap;overflow:hidden;}
.dslq-breadcrumb a{color:#6f6761;text-decoration:none;}
.dslq-breadcrumb span:last-child{color:#26221f;overflow:hidden;text-overflow:ellipsis;}
.dslq-product-detail{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr);gap:42px;align-items:start;}
.dslq-gallery-layout{display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px;align-items:start;}
.dslq-gallery-thumbs-vertical{display:flex;flex-direction:column;gap:12px;margin:0;overflow:visible;}
.dslq-gallery-thumbs-vertical .dslq-gallery-thumb{flex:0 0 72px;width:72px;height:72px;}
.dslq-product-media .dslq-gallery-main{position:relative;aspect-ratio:1/1;border-radius:24px;background:#f1ece7;overflow:hidden;}
.dslq-product-media .dslq-gallery-main img{width:100%;height:100%;object-fit:cover;display:block;}
.dslq-gallery-count{position:absolute;right:14px;bottom:14px;background:rgba(0,0,0,.55);color:#fff;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700;}
.dslq-gallery-thumbs-mobile{display:none;}
.dslq-single-topline{display:flex;align-items:center;justify-content:space-between;min-height:42px;}
.dslq-product-badge{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#fff1e8;color:#e94f17;font-size:12px;font-weight:800;}
.dslq-single-fav{position:static!important;}
.dslq-single-info h1{font-size:clamp(30px,3.5vw,46px);line-height:1.05;letter-spacing:-1.4px;margin:8px 0 14px;color:#171513;}
.dslq-single-meta{align-items:center;gap:12px;font-size:13px;}
.dslq-single-meta a{color:#555;text-decoration:underline;text-underline-offset:3px;}
.dslq-meta-rating{font-weight:800;color:#e59b00;}
.dslq-single-price{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:31px!important;font-weight:900!important;color:#df4d1a!important;margin:18px 0!important;}
.dslq-single-price ins{text-decoration:none;color:#df4d1a;}
.dslq-single-price del{font-size:16px;font-weight:600;color:#999;}
.dslq-single-discount{font-size:12px;font-weight:800;color:#df4d1a;background:#fff0eb;padding:5px 7px;border-radius:7px;}
.dslq-single-short{font-size:14px;color:#665f59;line-height:1.65;margin:-4px 0 16px;}
.dslq-benefits{grid-template-columns:repeat(3,1fr)!important;background:#fff7ee!important;border:1px solid #f6e5d5;padding:12px!important;margin:16px 0 22px!important;}
.dslq-benefits div{display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px!important;line-height:1.35;}
.dslq-benefits strong{color:#ed551d;font-size:19px;font-weight:800;}
.dslq-option-label{font-weight:850;margin:18px 0 8px;}
.dslq-option-group{margin:0 0 14px;}
.dslq-option-group label{display:block;font-weight:800;font-size:14px;margin-bottom:8px;}
.dslq-variation-select{width:100%;min-height:46px;border:1px solid #e4dfda;border-radius:12px;background:#fff;padding:0 12px;font-size:14px;}
.dslq-buy-row{display:grid;grid-template-columns:auto 1fr 1fr;gap:10px;align-items:center;}
.dslq-buy-row .dslq-qty{height:48px;border-radius:13px;}
.dslq-buy-row .dslq-qty button{width:42px;height:46px;font-size:18px;}
.dslq-buy-row .dslq-qty input{width:44px;height:46px;font-weight:700;}
.dslq-buy-cart,.dslq-buy-now{min-height:48px;border-radius:13px;padding:0 14px;font-weight:850;font-size:14px;cursor:pointer;}
.dslq-buy-cart{border:1px solid var(--dslq-orange);background:#fff;color:var(--dslq-orange);}
.dslq-buy-now{border:0;background:linear-gradient(135deg,var(--dslq-orange),var(--dslq-orange-2));color:#fff;box-shadow:0 10px 20px rgba(244,81,30,.18);}
.dslq-buy-cart.loading,.dslq-buy-now.loading{opacity:.65;pointer-events:none;}
.dslq-variable-form .single_variation{margin:8px 0;}
.dslq-variable-form .woocommerce-variation-price{font-size:22px;font-weight:900;color:#df4d1a;}
.dslq-trust-strip{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;}
.dslq-trust-strip span{padding:7px 9px;background:#faf8f5;border-radius:9px;color:#666;font-size:11px;}
.dslq-description-area{display:grid;grid-template-columns:minmax(240px,.55fr) minmax(0,1.45fr);gap:18px;margin-top:36px;}
.dslq-feature-box,.dslq-description-area .dslq-content-box{border:1px solid #eee8e2;border-radius:18px;background:#fff;padding:22px;}
.dslq-feature-box h2,.dslq-description-area .dslq-content-box h2{font-size:18px;margin:0 0 14px;}
.dslq-feature-box ul{padding:0;margin:0;list-style:none;}
.dslq-feature-box li{position:relative;padding:7px 0 7px 20px;color:#57514c;font-size:13px;line-height:1.45;}
.dslq-feature-box li:before{content:"✓";position:absolute;left:0;color:#ed551d;font-weight:900;}
.dslq-product-description{font-size:14px;line-height:1.8;color:#4f4944;}
.dslq-product-description img{max-width:100%;height:auto;}
.dslq-related-section{margin-top:38px;}
.dslq-related-section .dslq-products-home-shelf .dslq-product{flex-basis:210px;width:210px;}
.dslq-reviews-area{margin-top:34px;}
.dslq-reviews-area #comments{border-top:1px solid var(--dslq-border);padding-top:26px;}
@media(max-width:900px){
 .dslq-product-detail{grid-template-columns:1fr;gap:22px;}
 .dslq-single-info h1{font-size:34px;}
 .dslq-description-area{grid-template-columns:1fr;}
}
@media(max-width:767px){
 .dslq-single-page .dslq-single{width:100%;padding:0 0 72px;}
 .dslq-single-page .dslq-breadcrumb{padding:12px 10px 6px;margin:0;font-size:12px;}
 .dslq-product-detail{display:flex;flex-direction:column;gap:0;}
 .dslq-product-media{width:100%;}
 .dslq-gallery-layout{display:block;}
 .dslq-product-media .dslq-gallery-main{border-radius:0;aspect-ratio:1/1;width:100%;}
 .dslq-gallery-thumbs-vertical{display:none;}
 .dslq-gallery-thumbs-mobile{display:flex;gap:8px;padding:10px;overflow-x:auto;scrollbar-width:none;}
 .dslq-gallery-thumbs-mobile::-webkit-scrollbar{display:none;}
 .dslq-gallery-thumbs-mobile .dslq-gallery-thumb{flex:0 0 58px;width:58px;height:58px;border-radius:10px;}
 .dslq-gallery-count{right:12px;bottom:12px;}
 .dslq-single-info{padding:16px 14px 0;}
 .dslq-single-topline{min-height:38px;}
 .dslq-single-info h1{font-size:28px;letter-spacing:-.8px;margin:8px 0 10px;}
 .dslq-single-price{font-size:27px!important;margin:14px 0!important;}
 .dslq-single-short{font-size:13px;}
 .dslq-benefits{margin:14px 0 18px!important;padding:10px 7px!important;}
 .dslq-benefits div{font-size:10px!important;}
 .dslq-benefits strong{font-size:16px;}
 .dslq-buy-row{grid-template-columns:92px 1fr 1fr;gap:7px;}
 .dslq-buy-row .dslq-qty{width:92px;}
 .dslq-buy-cart,.dslq-buy-now{font-size:12px;min-height:46px;padding:0 7px;}
 .dslq-trust-strip{margin-bottom:2px;}
 .dslq-description-area{padding:0 14px;margin-top:24px;gap:10px;}
 .dslq-feature-box,.dslq-description-area .dslq-content-box{padding:18px;border-radius:15px;}
 .dslq-related-section{padding:0 14px;margin-top:28px;}
 .dslq-reviews-area{padding:0 14px;}
 .dslq-related-section .dslq-products-home-shelf .dslq-product{flex-basis:calc(48vw - 5px);width:calc(48vw - 5px);}
}

/* v1.1.1 — Premium SVG icons for Single Product benefits only. */
.dslq-single-page .dslq-benefits .dslq-benefit-item{
	display:flex;
	align-items:center;
	justify-content:flex-start;
	gap:9px;
	text-align:left;
}
.dslq-single-page .dslq-benefit-icon{
	width:34px;
	height:34px;
	min-width:34px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	border-radius:11px;
	background:#fff;
	color:#e9551c;
	border:1px solid #f4dccd;
	box-shadow:0 3px 10px rgba(76,45,25,.06);
}
.dslq-single-page .dslq-benefit-icon svg{
	width:18px;
	height:18px;
	display:block;
}
.dslq-single-page .dslq-benefits .dslq-benefit-item > span:last-child{
	display:flex;
	flex-direction:column;
	gap:2px;
	min-width:0;
}
.dslq-single-page .dslq-benefits .dslq-benefit-item b{
	font-size:11px;
	line-height:1.2;
	color:#2a2623;
	font-weight:850;
}
.dslq-single-page .dslq-benefits .dslq-benefit-item small{
	font-size:9.5px;
	line-height:1.25;
	color:#756d67;
	white-space:nowrap;
}
@media(max-width:767px){
	.dslq-single-page .dslq-benefits{
		grid-template-columns:repeat(3,1fr)!important;
		gap:6px!important;
	}
	.dslq-single-page .dslq-benefits .dslq-benefit-item{
		gap:6px;
		align-items:center;
	}
	.dslq-single-page .dslq-benefit-icon{
		width:30px;height:30px;min-width:30px;border-radius:9px;
	}
	.dslq-single-page .dslq-benefit-icon svg{width:16px;height:16px;}
	.dslq-single-page .dslq-benefits .dslq-benefit-item b{font-size:10px;}
	.dslq-single-page .dslq-benefits .dslq-benefit-item small{font-size:8.5px;white-space:normal;}
}

/* v1.1.2 — Mobile sticky purchase bar. Only affects Single Product. */
.dslq-mobile-sticky-buy{display:none;}
@media(max-width:767px){
 .dslq-mobile-sticky-buy{
   position:fixed;
   left:0;right:0;bottom:0;
   z-index:9998;
   display:block;
   padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px));
   background:rgba(255,255,255,.97);
   border-top:1px solid #ece7e2;
   box-shadow:0 -8px 24px rgba(28,22,18,.10);
   transform:translateY(110%);
   opacity:0;
   pointer-events:none;
   transition:transform .22s ease,opacity .22s ease;
   backdrop-filter:saturate(1.1) blur(10px);
 }
 .dslq-mobile-sticky-buy.is-visible{
   transform:translateY(0);
   opacity:1;
   pointer-events:auto;
 }
 .dslq-sticky-buy-inner{
   max-width:760px;margin:0 auto;
   display:flex;align-items:center;gap:9px;
 }
 .dslq-sticky-product{min-width:0;flex:1 1 auto;display:flex;flex-direction:column;gap:2px;}
 .dslq-sticky-product-name{font-size:11px;color:#6e6660;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
 .dslq-sticky-product-price{font-size:15px;font-weight:900;color:#df4d1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
 .dslq-sticky-product-price del{font-size:10px;color:#999;font-weight:600;margin-left:4px;}
 .dslq-sticky-product-price ins{text-decoration:none;}
 .dslq-sticky-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;flex:0 0 260px;}
 .dslq-mobile-sticky-buy .dslq-buy-cart,.dslq-mobile-sticky-buy .dslq-buy-now{
   min-height:44px;height:44px;border-radius:12px;font-size:12px;padding:0 9px;white-space:nowrap;
 }
 .dslq-mobile-sticky-buy .loading{opacity:.6;pointer-events:none;}
}
@media(max-width:390px){
 .dslq-sticky-product{display:none;}
 .dslq-sticky-actions{flex:1 1 auto;grid-template-columns:1fr 1fr;}
}
@media(prefers-reduced-motion:reduce){
 .dslq-mobile-sticky-buy{transition:none;}
}

/* v1.2.0 — Integrated Cart + Checkout. Scoped to the cart page only. */
.dslq-integrated-cart-page .dslq-integrated-cart{padding:22px 0 80px;}
.dslq-page-heading{margin-bottom:20px;}
.dslq-page-heading h1{margin:7px 0 5px;font-size:32px;letter-spacing:-.8px;}
.dslq-page-heading p{margin:0;color:#77716c;font-size:13px;}
.dslq-back-link{font-size:13px;color:#e9551c;text-decoration:none;font-weight:750;}
.dslq-integrated-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:18px;align-items:start;}
.dslq-cart-card{background:#fff;border:1px solid #eee7e1;border-radius:20px;overflow:hidden;box-shadow:0 7px 28px rgba(55,39,25,.04);}
.dslq-cart-card-head{padding:18px 20px;border-bottom:1px solid #f0ebe7;background:#fff;}
.dslq-cart-card-head>div{display:flex;align-items:end;justify-content:space-between;gap:12px;}
.dslq-cart-card-head h2{margin:0;font-size:18px;letter-spacing:-.2px;}
.dslq-cart-card-head span{font-size:12px;color:#837a74;}
.dslq-page-cart-items{padding:5px 20px;}
.dslq-page-cart-item{display:grid;grid-template-columns:76px minmax(0,1fr) auto 26px;gap:13px;align-items:center;padding:15px 0;border-bottom:1px solid #f0ebe7;}
.dslq-page-cart-item:last-child{border-bottom:0;}
.dslq-page-cart-image{width:76px;height:76px;border-radius:14px;overflow:hidden;background:#f4eee8;display:block;}
.dslq-page-cart-image img{width:100%;height:100%;object-fit:cover;display:block;}
.dslq-page-cart-title{font-size:14px;font-weight:800;color:#272320;text-decoration:none;line-height:1.35;}
.dslq-page-cart-variation{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px;}
.dslq-page-cart-variation span{font-size:10px;color:#756d67;background:#f7f4f1;border-radius:6px;padding:3px 5px;}
.dslq-page-cart-price{font-size:12px;color:#e9551c;font-weight:750;margin-top:5px;}
.dslq-page-cart-qty{display:inline-flex;align-items:center;border:1px solid #e5dfda;border-radius:10px;overflow:hidden;margin-top:7px;}
.dslq-page-cart-qty button{width:29px;height:29px;border:0;background:#fff;font-size:17px;color:#37312d;cursor:pointer;}
.dslq-page-cart-qty span{width:29px;text-align:center;font-size:12px;font-weight:800;}
.dslq-page-cart-line-total{font-size:14px;font-weight:850;white-space:nowrap;}
.dslq-page-cart-remove{width:26px;height:26px;border:0;border-radius:50%;background:#f7f5f3;color:#777;cursor:pointer;font-size:18px;line-height:1;}
.dslq-page-cart-summary{border-top:1px solid #f0ebe7;padding:15px 20px;background:#fffdfa;}
.dslq-page-cart-summary>div{display:flex;justify-content:space-between;gap:10px;font-size:13px;margin:6px 0;}
.dslq-page-cart-summary strong{font-size:18px;color:#df4d1a;}
.dslq-muted{color:#817a74;}
.dslq-integrated-checkout{position:sticky;top:15px;}
.dslq-checkout-content{padding:16px 20px 20px;}
.dslq-checkout-content .woocommerce{margin:0;}
.dslq-checkout-content form.checkout{margin:0;}
.dslq-checkout-content #customer_details{float:none!important;width:100%!important;}
.dslq-checkout-content #order_review_heading{font-size:17px;margin:24px 0 10px;}
.dslq-checkout-content #order_review{float:none!important;width:100%!important;background:#faf8f5;border:1px solid #eee7e1;border-radius:15px;padding:14px;}
.dslq-checkout-content #payment{background:#faf8f5!important;border-radius:15px!important;padding:14px!important;margin-top:12px;}
.dslq-checkout-content .form-row{margin-bottom:12px;}
.dslq-checkout-content .form-row label{font-size:12px;font-weight:750;margin-bottom:5px;}
.dslq-checkout-content .form-row input.input-text,
.dslq-checkout-content .form-row textarea,
.dslq-checkout-content .form-row select{min-height:45px!important;border-radius:11px!important;background:#fff!important;}
.dslq-checkout-content .woocommerce-checkout-review-order-table{font-size:13px;}
.dslq-checkout-content #place_order{width:100%;min-height:52px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--dslq-orange),var(--dslq-orange-2));color:#fff;font-weight:850;font-size:15px;}
.dslq-checkout-content .woocommerce-privacy-policy-text{font-size:11px;line-height:1.45;color:#777;}
.dslq-cart-empty-page{text-align:center;background:#fff;border:1px solid #eee7e1;border-radius:20px;padding:55px 20px;}
.dslq-empty-cart-icon{font-size:42px;margin-bottom:10px;}
.dslq-cart-empty-page h2{margin:0 0 7px;font-size:21px;}
.dslq-cart-empty-page p{margin:0 auto 18px;max-width:420px;color:#77716c;font-size:13px;line-height:1.6;}
.dslq-cart-shop-button{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:0 18px;border-radius:12px;background:var(--dslq-orange);color:#fff;text-decoration:none;font-weight:800;font-size:13px;}
@media(max-width:900px){
 .dslq-integrated-grid{grid-template-columns:1fr;}
 .dslq-integrated-checkout{position:static;}
}
@media(max-width:767px){
 .dslq-integrated-cart-page .dslq-integrated-cart{padding:14px 0 80px;}
 .dslq-page-heading{padding:0 12px;margin-bottom:14px;}
 .dslq-page-heading h1{font-size:27px;}
 .dslq-cart-card{border-radius:16px;}
 .dslq-cart-card-head{padding:15px;}
 .dslq-page-cart-items{padding:4px 12px;}
 .dslq-page-cart-item{grid-template-columns:58px minmax(0,1fr) auto;gap:9px;padding:13px 0;}
 .dslq-page-cart-image{width:58px;height:58px;border-radius:11px;}
 .dslq-page-cart-line-total{grid-column:2;font-size:13px;}
 .dslq-page-cart-remove{grid-column:3;grid-row:1;align-self:start;}
 .dslq-page-cart-main{min-width:0;}
 .dslq-page-cart-title{font-size:13px;}
 .dslq-page-cart-summary{padding:13px 15px;}
 .dslq-checkout-content{padding:12px 13px 16px;}
 .dslq-checkout-content .col2-set .col-1,.dslq-checkout-content .col2-set .col-2{float:none;width:100%;}
}

/* v1.3.0 — Integrated Cart + Checkout inside the existing bottom drawer. */
.dslq-integrated-drawer{width:min(1180px,calc(100vw - 24px))!important;max-width:1180px!important;height:min(88vh,820px);left:50%!important;right:auto!important;bottom:12px!important;transform:translate(-50%,110%)!important;border-radius:24px!important;overflow:hidden!important;display:flex;flex-direction:column;}
.dslq-integrated-drawer.is-open{transform:translate(-50%,0)!important;}
.dslq-integrated-drawer .dslq-drawer-head{flex:0 0 auto;}
.dslq-drawer-subtitle{display:block;font-size:11px;color:#817a74;margin-top:2px;}
.dslq-integrated-drawer-body{display:grid;grid-template-columns:1.05fr .95fr;min-height:0;flex:1;overflow:hidden;}
.dslq-drawer-products,.dslq-drawer-checkout{min-width:0;min-height:0;overflow:auto;padding:0 18px 18px;}
.dslq-drawer-products{border-right:1px solid #eee8e3;}
.dslq-drawer-section-head{position:sticky;top:0;z-index:2;background:#fff;padding:15px 2px 12px;border-bottom:1px solid #f0ebe7;}
.dslq-drawer-section-head h3{margin:0;font-size:16px;}
.dslq-drawer-section-head span{display:block;color:#817a74;font-size:11px;margin-top:3px;}
.dslq-drawer-checkout-content{padding-top:14px;}
.dslq-drawer-checkout-content .woocommerce{margin:0;}
.dslq-drawer-checkout-content form.checkout{margin:0;}
.dslq-drawer-checkout-content #customer_details{width:100%!important;float:none!important;}
.dslq-drawer-checkout-content .col2-set .col-1,.dslq-drawer-checkout-content .col2-set .col-2{float:none;width:100%;}
.dslq-drawer-checkout-content .form-row{margin-bottom:10px;}
.dslq-drawer-checkout-content .form-row label{font-size:11px;font-weight:750;margin-bottom:4px;}
.dslq-drawer-checkout-content .form-row input.input-text,.dslq-drawer-checkout-content .form-row textarea,.dslq-drawer-checkout-content .form-row select{min-height:42px!important;border-radius:10px!important;}
.dslq-drawer-checkout-content #order_review_heading{font-size:15px;margin:18px 0 8px;}
.dslq-drawer-checkout-content #order_review{width:100%!important;float:none!important;background:#faf8f5;border:1px solid #eee7e1;border-radius:13px;padding:10px;}
.dslq-drawer-checkout-content #payment{background:#faf8f5!important;border-radius:13px!important;padding:10px!important;margin-top:9px;}
.dslq-drawer-checkout-content #place_order{width:100%;min-height:50px;border:0;border-radius:13px;background:linear-gradient(135deg,var(--dslq-orange),var(--dslq-orange-2));color:#fff;font-weight:850;font-size:14px;}
.dslq-integrated-drawer-bottom{flex:0 0 auto;background:#fff;border-top:1px solid #eee8e3;padding:12px 18px calc(12px + env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;}
.dslq-integrated-drawer-bottom .dslq-cart-summary{padding:0;background:none;}
.dslq-integrated-drawer-bottom .dslq-cart-summary-row{display:flex;gap:12px;align-items:center;}
.dslq-integrated-drawer-bottom .dslq-cart-summary-row.total strong{font-size:19px;color:#df4d1a;}
.dslq-integrated-drawer-bottom .dslq-cart-actions{display:flex;gap:8px;}
.dslq-integrated-drawer-bottom .dslq-cart-actions button{min-height:42px;border-radius:11px;padding:0 15px;font-weight:800;cursor:pointer;}
.dslq-integrated-drawer-bottom .dslq-secondary{background:#fff;border:1px solid #e5dfda;color:#403a35;}
.dslq-integrated-drawer-bottom .dslq-primary{background:var(--dslq-orange);border:0;color:#fff;}
.dslq-drawer-checkout-placeholder{text-align:center;padding:45px 18px;color:#817a74;font-size:13px;}
@media(max-width:767px){
 .dslq-integrated-drawer{width:100%!important;max-width:none!important;height:min(92vh,900px);left:0!important;bottom:0!important;border-radius:22px 22px 0 0!important;transform:translateY(110%)!important;}
 .dslq-integrated-drawer.is-open{transform:translateY(0)!important;}
 .dslq-integrated-drawer-body{display:flex;flex-direction:column;overflow:hidden;}
 .dslq-drawer-products,.dslq-drawer-checkout{border-right:0;overflow:auto;padding:0 14px 14px;}
 .dslq-drawer-products{flex:0 0 39%;border-bottom:1px solid #eee8e3;}
 .dslq-drawer-checkout{flex:1 1 61%;}
 .dslq-drawer-section-head{padding:12px 2px 9px;}
 .dslq-page-cart-item,.dslq-cart-item{margin-bottom:7px;}
 .dslq-integrated-drawer-bottom{grid-template-columns:1fr;gap:8px;padding:9px 13px calc(9px + env(safe-area-inset-bottom));}
 .dslq-integrated-drawer-bottom .dslq-cart-summary-row{justify-content:space-between;}
 .dslq-integrated-drawer-bottom .dslq-cart-actions{display:grid;grid-template-columns:1fr 1fr;}
 .dslq-integrated-drawer-bottom .dslq-cart-actions button{width:100%;}
}

/* v1.4.0 — Single scrolling checkout surface; only bottom action bar is sticky. */
.dslq-integrated-drawer-body{
	display:grid!important;
	grid-template-columns:1.05fr .95fr!important;
	min-height:0!important;
	flex:1 1 auto!important;
	overflow-y:auto!important;
	overflow-x:hidden!important;
	-webkit-overflow-scrolling:touch;
}
.dslq-drawer-products,
.dslq-drawer-checkout{
	min-height:auto!important;
	height:auto!important;
	overflow:visible!important;
}
.dslq-drawer-section-head{
	position:static!important;
}
.dslq-integrated-drawer-bottom{
	position:sticky!important;
	bottom:0!important;
	z-index:20;
}
.dslq-integrated-drawer-bottom .dslq-secondary,
.dslq-integrated-drawer-bottom .dslq-primary{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	text-decoration:none;
}
.dslq-drawer-checkout-content .woocommerce-form-login-toggle,
.dslq-drawer-checkout-content .woocommerce-form-coupon-toggle{
	display:none!important;
}
.dslq-drawer-checkout-content .woocommerce-shipping-fields,
.dslq-drawer-checkout-content .woocommerce-additional-fields h3{
	display:none!important;
}
.dslq-drawer-checkout-content .woocommerce-additional-fields{
	margin-top:0;
}
.dslq-drawer-checkout-content .woocommerce-billing-fields h3{
	display:none!important;
}
.dslq-drawer-checkout-content #billing_first_name_field,
.dslq-drawer-checkout-content #billing_phone_field,
.dslq-drawer-checkout-content #billing_address_1_field,
.dslq-drawer-checkout-content #order_comments_field,
.dslq-drawer-checkout-content #dslq_delivery_time_field{
	width:100%!important;
	float:none!important;
}
.dslq-drawer-checkout-content #order_comments_field textarea{
	min-height:78px!important;
}
.dslq-drawer-checkout-content .form-row label{
	display:block!important;
}
.dslq-drawer-checkout-content #payment .payment_methods{
	margin-bottom:8px!important;
}
@media(max-width:767px){
 .dslq-integrated-drawer-body{
   display:block!important;
   overflow-y:auto!important;
   padding-bottom:4px;
 }
 .dslq-drawer-products,
 .dslq-drawer-checkout{
   overflow:visible!important;
   height:auto!important;
 }
 .dslq-drawer-products{
   border-bottom:1px solid #eee8e3;
 }
 .dslq-integrated-drawer-bottom{
   position:sticky!important;
   bottom:0!important;
 }
}

/* v1.5.0 — Cart popup layout refined from supplied reference screenshots.
 * Layout only: existing theme colors/branding are intentionally preserved.
 */
.dslq-integrated-drawer{
  width:min(720px,100vw)!important;
  max-width:720px!important;
  height:min(92vh,900px)!important;
  left:50%!important;
  bottom:0!important;
  border-radius:24px 24px 0 0!important;
  overflow:hidden!important;
}
.dslq-integrated-drawer-body{
  display:block!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  flex:1 1 auto!important;
  min-height:0!important;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
}
.dslq-drawer-products,
.dslq-drawer-checkout{
  padding:0 22px!important;
  overflow:visible!important;
  height:auto!important;
  min-height:auto!important;
  border:0!important;
}
.dslq-cart-items{
  overflow:visible!important;
  padding:0!important;
}
.dslq-cart-item{
  grid-template-columns:64px minmax(0,1fr) auto!important;
  gap:12px!important;
  padding:12px 0!important;
  min-height:82px;
}
.dslq-cart-item img{width:64px!important;height:64px!important;border-radius:12px!important;}
.dslq-cart-item-title{font-size:15px!important;font-weight:800!important;}
.dslq-cart-item-price{font-size:12px!important;color:#8b969f!important;font-weight:600!important;}
.dslq-cart-line-total{align-self:start;padding-top:2px;font-size:14px!important;font-weight:850!important;}
.dslq-cart-qty{margin-top:6px!important;border-radius:99px!important;border:1.5px solid currentColor!important;color:#8a939d!important;}
.dslq-cart-qty button{width:30px!important;height:29px!important;font-size:19px!important;color:inherit!important;}
.dslq-cart-qty span{min-width:29px!important;font-size:13px!important;font-weight:800!important;color:#37404a!important;}
.dslq-customer-heading{
  display:flex;
  align-items:center;
  gap:12px;
  padding:15px 0 13px;
  margin-top:3px;
  border-top:1px solid #eceff1;
  border-bottom:1px solid #eceff1;
}
.dslq-customer-heading-icon{
  width:44px;height:44px;min-width:44px;border-radius:14px;
  display:grid;place-items:center;background:#eef6ff;
}
.dslq-customer-heading-icon svg{width:25px;height:25px;}
.dslq-customer-heading h3{margin:0;font-size:22px;line-height:1.15;letter-spacing:-.3px;}
.dslq-customer-heading small{display:block;margin-top:4px;font-size:13px;color:#7c8791;line-height:1.25;}
.dslq-drawer-checkout-content{padding:14px 0 20px!important;}
.dslq-drawer-checkout-content .woocommerce{margin:0!important;}
.dslq-drawer-checkout-content form.checkout{
  display:flex!important;
  flex-direction:column!important;
  margin:0!important;
}
.dslq-drawer-checkout-content #customer_details{
  order:1;
  width:100%!important;
  float:none!important;
}
.dslq-drawer-checkout-content #order_review_heading,
.dslq-drawer-checkout-content #order_review{
  display:none!important;
}
.dslq-drawer-checkout-content #payment{
  order:3;
  width:100%!important;
  float:none!important;
  margin:0 0 10px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
.dslq-drawer-checkout-content #customer_details .col-1,
.dslq-drawer-checkout-content #customer_details .col-2{
  width:100%!important;
  float:none!important;
}
.dslq-drawer-checkout-content .woocommerce-billing-fields h3,
.dslq-drawer-checkout-content .woocommerce-additional-fields h3{
  display:none!important;
}
.dslq-drawer-checkout-content .form-row{
  width:100%!important;
  float:none!important;
  margin:0 0 12px!important;
  padding:0!important;
}
.dslq-drawer-checkout-content .form-row label{
  display:block!important;
  margin:0 0 6px!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:800!important;
}
.dslq-drawer-checkout-content .form-row input.input-text,
.dslq-drawer-checkout-content .form-row textarea,
.dslq-drawer-checkout-content .form-row select{
  width:100%!important;
  min-height:48px!important;
  height:48px!important;
  padding:0 14px!important;
  border-radius:13px!important;
  box-shadow:none!important;
  font-size:15px!important;
  background:#fff!important;
}
.dslq-drawer-checkout-content .form-row textarea{
  min-height:82px!important;height:82px!important;padding-top:12px!important;resize:vertical;
}
.dslq-drawer-checkout-content #billing_address_1_field{margin-bottom:12px!important;}
.dslq-drawer-checkout-content #order_comments_field textarea{min-height:82px!important;}
.dslq-drawer-checkout-content #dslq_delivery_time_field select{
  appearance:auto!important;-webkit-appearance:auto!important;
}
.dslq-drawer-checkout-content #payment .wc_payment_methods{
  margin:0!important;padding:0!important;border:1px solid #dce1e5!important;border-radius:13px!important;background:#fff!important;
}
.dslq-drawer-checkout-content #payment .wc_payment_method{
  padding:0!important;margin:0!important;border:0!important;
}
.dslq-drawer-checkout-content #payment .wc_payment_method>label{
  display:flex!important;align-items:center!important;min-height:48px!important;padding:0 14px!important;font-size:15px!important;font-weight:600!important;
}
.dslq-drawer-checkout-content #payment .wc_payment_method>div.payment_box{
  margin:0!important;padding:8px 14px!important;background:#f7f8f9!important;
}
.dslq-drawer-checkout-content #payment .payment_method_cod label{cursor:default;}
.dslq-drawer-checkout-content #payment .payment_methods>li:not(.woocommerce-notice){border:0!important;}
.dslq-drawer-checkout-content .woocommerce-terms-and-conditions-wrapper{font-size:11px!important;line-height:1.4!important;}
.dslq-drawer-checkout-content #place_order{
  display:none!important;
}
.dslq-drawer-checkout-content .woocommerce-privacy-policy-text{display:none!important;}
.dslq-integrated-drawer-bottom{
  position:sticky!important;
  bottom:0!important;
  z-index:30;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:16px!important;
  min-height:76px;
  padding:10px 22px calc(10px + env(safe-area-inset-bottom))!important;
  background:#fff!important;
  border-top:1px solid #e7eaed!important;
  box-shadow:0 -8px 24px rgba(20,30,40,.06);
}
.dslq-cart-summary{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  min-width:120px;
}
.dslq-cart-total-label{display:block;font-size:11px;color:#7c8791;font-weight:650;line-height:1.1;}
.dslq-cart-summary-row{display:none!important;}
.dslq-cart-summary #dslq-cart-total,
.dslq-cart-summary>strong{display:block;font-size:21px!important;line-height:1.15!important;font-weight:900!important;color:var(--dslq-orange)!important;margin-top:3px;}
.dslq-integrated-drawer-bottom .dslq-cart-actions{
  display:grid!important;
  grid-template-columns:minmax(110px,.75fr) minmax(130px,1.25fr)!important;
  gap:8px!important;
  margin:0!important;
}
.dslq-integrated-drawer-bottom .dslq-cart-actions button{
  min-height:48px!important;
  border-radius:14px!important;
  font-size:14px!important;
  padding:0 13px!important;
}
.dslq-integrated-drawer-bottom .dslq-primary.loading{opacity:.7;}
@media(max-width:767px){
  .dslq-integrated-drawer{
    width:100%!important;max-width:none!important;height:min(92vh,900px)!important;
    border-radius:22px 22px 0 0!important;
  }
  .dslq-drawer-head{padding:8px 23px 13px!important;}
  .dslq-drawer-head h2{font-size:27px!important;}
  .dslq-drawer-subtitle{font-size:12px!important;}
  .dslq-drawer-products,.dslq-drawer-checkout{padding-left:23px!important;padding-right:23px!important;}
  .dslq-cart-item{grid-template-columns:64px minmax(0,1fr) auto!important;gap:10px!important;padding:12px 0!important;}
  .dslq-cart-item-title{font-size:15px!important;}
  .dslq-cart-line-total{font-size:14px!important;}
  .dslq-customer-heading{padding:14px 0 13px;margin-top:2px;}
  .dslq-customer-heading h3{font-size:22px!important;}
  .dslq-customer-heading small{font-size:13px!important;}
  .dslq-drawer-checkout-content{padding-top:15px!important;}
  .dslq-drawer-checkout-content .form-row label{font-size:14px!important;}
  .dslq-drawer-checkout-content .form-row input.input-text,
  .dslq-drawer-checkout-content .form-row textarea,
  .dslq-drawer-checkout-content .form-row select{min-height:48px!important;height:48px!important;font-size:16px!important;}
  .dslq-integrated-drawer-bottom{
    grid-template-columns:1fr!important;
    gap:7px!important;
    padding:8px 23px calc(8px + env(safe-area-inset-bottom))!important;
    min-height:auto!important;
  }
  .dslq-cart-summary{display:flex;align-items:end;justify-content:space-between;min-width:0;}
  .dslq-cart-summary #dslq-cart-total,.dslq-cart-summary>strong{font-size:21px!important;}
  .dslq-integrated-drawer-bottom .dslq-cart-actions{
    grid-template-columns:1fr 1.2fr!important;
  }
}

/* v1.5.1 — Final cart drawer positioning + action reliability. */
.dslq-integrated-drawer{left:50%!important;right:auto!important;transform:translate(-50%,110%)!important;}
.dslq-integrated-drawer.is-open{transform:translate(-50%,0)!important;}
.dslq-integrated-drawer .dslq-integrated-drawer-bottom{pointer-events:auto!important;}
.dslq-integrated-drawer .dslq-integrated-drawer-bottom button{position:relative;z-index:5;pointer-events:auto!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
@media(max-width:767px){
 .dslq-integrated-drawer{left:0!important;right:0!important;width:100%!important;max-width:none!important;transform:translateY(110%)!important;}
 .dslq-integrated-drawer.is-open{left:0!important;right:0!important;transform:translateY(0)!important;}
}

/* v1.5.2 — Compact cart popup + reliable bottom actions. */
.dslq-drawer-products,.dslq-drawer-checkout{padding-left:18px!important;padding-right:18px!important;}
.dslq-cart-items{padding:0!important;}
.dslq-cart-item{display:grid!important;grid-template-columns:54px minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;min-height:0!important;padding:8px 0!important;}
.dslq-cart-item-image{display:block!important;width:54px!important;height:54px!important;}
.dslq-cart-item img{width:54px!important;height:54px!important;border-radius:10px!important;}
.dslq-cart-item-info{min-width:0!important;}
.dslq-cart-item-title{font-size:13px!important;line-height:1.25!important;font-weight:750!important;}
.dslq-cart-item-price{font-size:11px!important;line-height:1.25!important;margin-top:3px!important;color:#8b969f!important;font-weight:600!important;}
.dslq-cart-item-right{min-width:78px!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:center!important;gap:5px!important;}
.dslq-cart-line-total{padding:0!important;font-size:13px!important;line-height:1.15!important;font-weight:850!important;white-space:nowrap!important;}
.dslq-cart-qty{margin:0!important;height:27px!important;border-radius:999px!important;}
.dslq-cart-qty button{width:27px!important;height:27px!important;font-size:16px!important;line-height:27px!important;}
.dslq-cart-qty span{min-width:25px!important;font-size:12px!important;}
.dslq-customer-heading{gap:9px!important;padding:10px 0 9px!important;margin-top:0!important;}
.dslq-customer-heading-icon{width:36px!important;height:36px!important;min-width:36px!important;border-radius:10px!important;}
.dslq-customer-heading-icon svg{width:20px!important;height:20px!important;}
.dslq-customer-heading h3{font-size:18px!important;line-height:1.1!important;}
.dslq-customer-heading small{font-size:11px!important;margin-top:3px!important;}
.dslq-drawer-checkout-content{padding:9px 0 12px!important;}
.dslq-drawer-checkout-content .form-row{margin-bottom:7px!important;}
.dslq-drawer-checkout-content .form-row label{font-size:12px!important;margin-bottom:4px!important;}
.dslq-drawer-checkout-content .form-row input.input-text,.dslq-drawer-checkout-content .form-row textarea,.dslq-drawer-checkout-content .form-row select{min-height:42px!important;height:42px!important;padding:0 11px!important;border-radius:10px!important;font-size:14px!important;}
.dslq-drawer-checkout-content .form-row textarea,.dslq-drawer-checkout-content #order_comments_field textarea{height:64px!important;min-height:64px!important;padding-top:9px!important;}
.dslq-drawer-checkout-content #payment .wc_payment_method>label{min-height:42px!important;padding:0 11px!important;font-size:13px!important;}
.dslq-integrated-drawer-bottom{min-height:64px!important;padding:7px 18px calc(7px + env(safe-area-inset-bottom))!important;gap:9px!important;}
.dslq-cart-summary{min-width:95px!important;}
.dslq-cart-total-label{font-size:10px!important;}
.dslq-cart-summary #dslq-cart-total,.dslq-cart-summary>strong{font-size:18px!important;margin-top:2px!important;}
.dslq-integrated-drawer-bottom .dslq-cart-actions{grid-template-columns:minmax(90px,.8fr) minmax(115px,1.2fr)!important;gap:6px!important;}
.dslq-integrated-drawer-bottom .dslq-cart-actions button{min-height:42px!important;border-radius:11px!important;font-size:13px!important;padding:0 9px!important;pointer-events:auto!important;touch-action:manipulation!important;}
@media(max-width:767px){
 .dslq-drawer-head{padding:7px 18px 10px!important;}
 .dslq-drawer-head h2{font-size:22px!important;}
 .dslq-drawer-subtitle{font-size:10px!important;}
 .dslq-drawer-products,.dslq-drawer-checkout{padding-left:18px!important;padding-right:18px!important;}
 .dslq-cart-item{grid-template-columns:52px minmax(0,1fr) auto!important;gap:9px!important;padding:7px 0!important;}
 .dslq-cart-item-image,.dslq-cart-item img{width:52px!important;height:52px!important;}
 .dslq-cart-item-title{font-size:13px!important;}
 .dslq-cart-item-right{min-width:76px!important;}
 .dslq-customer-heading h3{font-size:18px!important;}
 .dslq-integrated-drawer-bottom{grid-template-columns:1fr!important;gap:5px!important;min-height:auto!important;padding:6px 18px calc(6px + env(safe-area-inset-bottom))!important;}
 .dslq-cart-summary{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;}
 .dslq-integrated-drawer-bottom .dslq-cart-actions{grid-template-columns:1fr 1.2fr!important;gap:6px!important;}
}

/* v1.6.0 — Server-backed drawer order button. */
.dslq-integrated-drawer-bottom .dslq-drawer-place-order.loading{opacity:.65!important;cursor:wait!important;}
.dslq-drawer-checkout-content .woocommerce-NoticeGroup-checkout{margin:8px 0!important;}
.dslq-drawer-checkout-content .woocommerce-error{margin:0!important;padding:9px 12px!important;font-size:12px!important;}
.dslq-drawer-checkout-content .woocommerce-error li{margin:0 0 3px!important;}
.dslq-drawer-checkout-content .woocommerce-error li:last-child{margin-bottom:0!important;}

/* v1.8.0: Native WooCommerce form-associated submit; preserve checkout DOM. */
.dslq-drawer-place-order{pointer-events:auto!important;cursor:pointer!important;}

.dslq-popup-checkout-notice{margin:0 0 10px!important;padding:10px 12px!important;border-radius:10px!important;font-size:13px!important;line-height:1.45!important;}.dslq-popup-checkout-success{padding:34px 18px;text-align:center;}.dslq-popup-checkout-success .dslq-success-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:0 auto 12px;font-size:30px;font-weight:800;background:#eef8f0;}.dslq-popup-checkout-success h3{margin:0 0 7px;font-size:20px;}.dslq-popup-checkout-success p{margin:0;font-size:13px;opacity:.75;}.dslq-drawer-place-order.loading{opacity:.6;pointer-events:none;}

.dslq-payment-dropdown-wrap{margin:12px 0 14px!important;}
.dslq-payment-dropdown-label{display:block!important;margin:0 0 6px!important;font-size:13px!important;font-weight:700!important;}
.dslq-payment-select-shell{position:relative!important;width:100%!important;}
.dslq-payment-select{display:block!important;width:100%!important;min-height:44px!important;padding:0 38px 0 12px!important;border:1px solid rgba(0,0,0,.12)!important;border-radius:11px!important;background:#fff!important;font:inherit!important;font-size:13px!important;appearance:none!important;-webkit-appearance:none!important;cursor:pointer!important;}
.dslq-payment-select-chevron{position:absolute!important;right:13px!important;top:50%!important;transform:translateY(-58%)!important;pointer-events:none!important;font-size:19px!important;}
.dslq-payment-description{margin-top:6px!important;font-size:11px!important;line-height:1.4!important;opacity:.68!important;}
.dslq-payment-description p{margin:0!important;}
.dslq-payment-empty{padding:10px 12px!important;border-radius:10px!important;background:#fff7ed!important;font-size:12px!important;}

.dslq-cart-only-body,.dslq-checkout-popup-body{overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1;min-height:0;}
.dslq-cart-only-bottom{padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid rgba(0,0,0,.06);}
.dslq-checkout-drawer{position:fixed;z-index:100001;left:50%;bottom:0;width:min(560px,100vw);height:min(92vh,820px);transform:translate(-50%,110%);visibility:hidden;opacity:0;background:#fff;border-radius:20px 20px 0 0;display:flex;flex-direction:column;overflow:hidden;transition:transform .25s ease,opacity .2s ease;box-shadow:0 -10px 40px rgba(0,0,0,.16);}
.dslq-checkout-drawer.is-open{transform:translate(-50%,0);visibility:visible;opacity:1;}
.dslq-checkout-popup-body{padding:0 14px 20px;display:flex;flex-direction:column;min-height:0;flex:1;}
.dslq-checkout-popup-content{min-height:0;}
.dslq-checkout-popup-content form.checkout{margin:0!important;}
.dslq-checkout-back{margin-left:auto;border:0;background:none;font-size:22px;width:38px;height:38px;cursor:pointer;}
.dslq-checkout-close{border:0;background:none;font-size:27px;width:38px;height:38px;cursor:pointer;}
.dslq-checkout-drawer #payment{display:block!important;visibility:visible!important;opacity:1!important;}
@media(max-width:767px){.dslq-checkout-drawer{width:100vw;height:94vh;border-radius:18px 18px 0 0;}.dslq-checkout-popup-body{padding:0 12px 18px;}}

/* v1.9.3 — compact checkout popup + native WooCommerce gateways presented as dropdown. */
.dslq-checkout-drawer{
  top:72px!important;
  bottom:12px!important;
  height:auto!important;
  max-height:none!important;
  transform:translate(-50%,110%)!important;
}
.dslq-checkout-drawer.is-open{transform:translate(-50%,0)!important;}
.dslq-checkout-popup-body{padding:0 12px 14px!important;overflow-y:auto!important;min-height:0!important;}
.dslq-checkout-popup-content{padding-top:6px!important;}
.dslq-checkout-popup-content .woocommerce-checkout-review-order,
.dslq-checkout-popup-content #order_review,
.dslq-checkout-popup-content .woocommerce-checkout-review-order-table{display:none!important;}
.dslq-native-payment-select-wrap{margin:10px 0 8px!important;}
.dslq-native-payment-label{display:block!important;margin:0 0 5px!important;font-size:12px!important;font-weight:700!important;}
.dslq-native-payment-select{width:100%!important;height:40px!important;padding:0 34px 0 11px!important;border:1px solid rgba(0,0,0,.13)!important;border-radius:9px!important;background:#fff!important;font-size:13px!important;line-height:40px!important;appearance:auto!important;-webkit-appearance:auto!important;}
.dslq-payment-methods-collapsed{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important;}
.dslq-checkout-popup-content #payment{padding:0!important;background:transparent!important;border:0!important;}
.dslq-checkout-popup-content #payment .payment_box{margin:7px 0!important;padding:9px 10px!important;font-size:11px!important;line-height:1.35!important;}
.dslq-checkout-popup-content .form-row{margin-bottom:8px!important;}
.dslq-checkout-popup-content .form-row label{font-size:12px!important;margin-bottom:4px!important;}
.dslq-checkout-popup-content .input-text,
.dslq-checkout-popup-content select{min-height:38px!important;padding:7px 10px!important;font-size:13px!important;}
.dslq-checkout-popup-content textarea.input-text{min-height:70px!important;}
.dslq-checkout-popup-content #place_order{min-height:44px!important;font-size:14px!important;}
@media(max-width:767px){
  .dslq-checkout-drawer{top:64px!important;bottom:8px!important;width:100vw!important;}
}

/* v1.9.4: restore native WooCommerce checkout submit button */
.dslq-checkout-popup-content #place_order,
.dslq-checkout-popup-content button#place_order{
 display:block!important;visibility:visible!important;opacity:1!important;
 position:static!important;width:100%!important;height:auto!important;
 min-height:44px!important;pointer-events:auto!important;
}
.dslq-checkout-popup-content #payment .dslq-native-payment-select-wrap{display:block!important;}

/* v1.9.5 — dedicated sticky checkout order button */
.dslq-checkout-popup-body{position:relative!important;padding-bottom:76px!important;}
.dslq-checkout-sticky-orderbar{
  position:absolute!important;
  left:0!important;right:0!important;bottom:0!important;
  z-index:100!important;
  padding:9px 12px calc(9px + env(safe-area-inset-bottom))!important;
  background:rgba(255,255,255,.97)!important;
  border-top:1px solid rgba(0,0,0,.08)!important;
  box-shadow:0 -5px 18px rgba(0,0,0,.08)!important;
}
.dslq-checkout-sticky-place-order{
  display:block!important;width:100%!important;min-height:46px!important;
  border:0!important;border-radius:12px!important;
  background:linear-gradient(135deg,var(--dslq-orange),var(--dslq-orange-2))!important;
  color:#fff!important;font-size:15px!important;font-weight:800!important;
  cursor:pointer!important;
}
.dslq-checkout-sticky-place-order:disabled{opacity:.55!important;cursor:not-allowed!important;}
.dslq-checkout-popup-content form.checkout #place_order{
  position:absolute!important;width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;overflow:hidden!important;
  clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}

/* v2.0.0 — Lite POS style direct WooCommerce order popup */
.dslq-checkout-popup-body{padding:8px 14px 78px!important;overflow-y:auto!important;flex:1!important;min-height:0!important;}
.dslq-quick-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.dslq-quick-field{min-width:0;}
.dslq-quick-full{grid-column:1/-1;}
.dslq-quick-field label{display:block;margin:0 0 4px;font-size:12px;font-weight:700;line-height:1.25;}
.dslq-quick-field label b{font-weight:800;}
.dslq-quick-field input,.dslq-quick-field textarea,.dslq-quick-field select{display:block;width:100%;box-sizing:border-box;min-height:39px;padding:8px 10px;border:1px solid rgba(0,0,0,.12);border-radius:9px;background:#fff;font:inherit;font-size:13px;line-height:1.3;}
.dslq-quick-field textarea{min-height:62px;resize:vertical;}
.dslq-quick-field select{height:39px;padding-top:0;padding-bottom:0;}
.dslq-quick-message{min-height:0;margin-top:8px;font-size:12px;line-height:1.4;}
.dslq-quick-message.is-error{padding:8px 10px;border-radius:8px;background:#fff0f0;}
.dslq-quick-message.is-success{padding:10px;border-radius:9px;background:#eef9f0;}
.dslq-checkout-sticky-orderbar{position:absolute!important;left:0!important;right:0!important;bottom:0!important;z-index:20!important;padding:9px 12px calc(9px + env(safe-area-inset-bottom))!important;background:rgba(255,255,255,.98)!important;border-top:1px solid rgba(0,0,0,.08)!important;box-shadow:0 -5px 18px rgba(0,0,0,.08)!important;}
.dslq-checkout-sticky-place-order{display:block!important;width:100%!important;min-height:45px!important;border:0!important;border-radius:12px!important;background:var(--dslq-orange,#f97316)!important;color:#fff!important;font-size:14px!important;font-weight:800!important;cursor:pointer!important;}
.dslq-checkout-sticky-place-order:disabled{opacity:.55!important;cursor:wait!important;}
@media(max-width:600px){.dslq-quick-fields{grid-template-columns:1fr 1fr;gap:7px;}.dslq-quick-full{grid-column:1/-1;}.dslq-checkout-popup-body{padding-left:12px!important;padding-right:12px!important;}}

/* v2.0.2: Online/Zalo labels only. */
.dslq-online-label{font-size:inherit;font-weight:inherit;}

/* v2.0.4 — Header LIVE indicator */
.dslq-live-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-width:62px!important;padding:7px 10px!important;border:0!important;border-radius:999px!important;background:#ff2d20!important;color:#fff!important;box-shadow:0 2px 8px rgba(255,45,32,.25)!important;cursor:pointer!important}
.dslq-live-dot{width:8px!important;height:8px!important;border-radius:50%!important;background:#fff!important;display:block!important;animation:dslq-live-pulse 1.1s ease-in-out infinite!important}
.dslq-live-text{font-size:12px!important;line-height:1!important;font-weight:800!important;letter-spacing:.4px!important}
@keyframes dslq-live-pulse{0%,100%{opacity:1;transform:scale(1);box-shadow:0 0 0 0 rgba(255,255,255,.75)}50%{opacity:.55;transform:scale(.78);box-shadow:0 0 0 5px rgba(255,255,255,0)}}

/* v2.0.7 — Professional checkout back button */
.dslq-checkout-drawer .dslq-checkout-back{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 42px!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  margin-left:auto!important;
  margin-right:4px!important;
  padding:0!important;
  border:1px solid rgba(0,0,0,.10)!important;
  border-radius:12px!important;
  background:#f7f7f5!important;
  color:#222!important;
  font-size:27px!important;
  font-family:Arial,sans-serif!important;
  font-weight:500!important;
  line-height:1!important;
  box-shadow:0 2px 8px rgba(0,0,0,.07)!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent!important;
  transition:background .18s ease,transform .18s ease,box-shadow .18s ease!important;
}
.dslq-checkout-drawer .dslq-checkout-back:hover{
  background:#eeeeeb!important;
  box-shadow:0 3px 10px rgba(0,0,0,.10)!important;
}
.dslq-checkout-drawer .dslq-checkout-back:active{
  transform:scale(.94)!important;
  box-shadow:0 1px 5px rgba(0,0,0,.08)!important;
}
.dslq-checkout-drawer .dslq-checkout-back:focus-visible{
  outline:2px solid rgba(244,81,30,.45)!important;
  outline-offset:2px!important;
}
@media(max-width:767px){
  .dslq-checkout-drawer .dslq-checkout-back{
    flex-basis:44px!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    border-radius:13px!important;
    font-size:29px!important;
  }
}

/* v2.0.8 — Back button placed to the left of checkout title */
.dslq-checkout-drawer .dslq-drawer-head{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.dslq-checkout-drawer .dslq-checkout-back{
  order:0!important;
  flex:0 0 42px!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  margin:0!important;
}
.dslq-checkout-drawer .dslq-checkout-title-wrap{
  order:1!important;
  flex:1 1 auto!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.dslq-checkout-drawer .dslq-checkout-close{
  order:2!important;
  margin-left:auto!important;
  flex:0 0 auto!important;
}
@media(max-width:767px){
  .dslq-checkout-drawer .dslq-checkout-back{
    flex-basis:44px!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
  }
}

/* v2.0.10 — Professional SVG back icon */
.dslq-checkout-drawer .dslq-checkout-back{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.dslq-checkout-drawer .dslq-checkout-back .dslq-back-svg{
  display:block!important;
  width:23px!important;
  height:23px!important;
  flex:0 0 23px!important;
  color:currentColor!important;
  pointer-events:none!important;
}
.dslq-checkout-drawer .dslq-checkout-back:active .dslq-back-svg{
  transform:translateX(-1px)!important;
}

/* v2.0.11 — Cart close button matches checkout close button */
.dslq-cart-drawer .dslq-drawer-close{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  font-size:26px!important;
  line-height:1!important;
  border-radius:50%!important;
}
@media(max-width:767px){
  .dslq-cart-drawer .dslq-drawer-close{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    font-size:28px!important;
  }
}

/* v2.0.12 — Keep cart/checkout popups above all single-product floating controls */
.dslq-overlay{
  z-index:99990!important;
}
.dslq-cart-drawer,
.dslq-checkout-drawer{
  z-index:100000!important;
}

/* v2.0.13 — Single Product reviews: cleaner app-style presentation */
.single-product #reviews,
.single-product .woocommerce-Reviews{
  margin-top:28px!important;
  padding-top:0!important;
}
.single-product #reviews .woocommerce-Reviews-title{
  margin:0 0 18px!important;
  font-size:22px!important;
  line-height:1.25!important;
  font-weight:750!important;
  letter-spacing:-.2px!important;
}
.single-product #reviews .commentlist{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.single-product #reviews .commentlist li.review{
  position:relative!important;
  margin:0 0 12px!important;
  padding:16px 16px 15px!important;
  border:1px solid #ececec!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 2px 10px rgba(0,0,0,.045)!important;
}
.single-product #reviews .commentlist li.review:last-child{
  margin-bottom:0!important;
}
.single-product #reviews .comment-text{
  margin:0!important;
  padding:0!important;
  border:0!important;
}
.single-product #reviews .comment-text:before,
.single-product #reviews .comment-text:after{
  display:none!important;
}
.single-product #reviews .star-rating{
  float:none!important;
  width:5.6em!important;
  height:1.05em!important;
  margin:0 0 8px!important;
  font-size:14px!important;
}
.single-product #reviews .meta{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:5px 8px!important;
  margin:0 0 9px!important;
  font-size:13px!important;
  line-height:1.4!important;
  color:#7a7a7a!important;
}
.single-product #reviews .meta strong{
  color:#202020!important;
  font-size:14px!important;
  font-weight:700!important;
}
.single-product #reviews .description p{
  margin:0!important;
  color:#424242!important;
  font-size:14px!important;
  line-height:1.6!important;
}
.single-product #review_form_wrapper{
  margin-top:20px!important;
  padding:18px!important;
  border:1px solid #ececec!important;
  border-radius:18px!important;
  background:#fafafa!important;
}
.single-product #review_form_wrapper .comment-reply-title{
  display:block!important;
  margin:0 0 14px!important;
  font-size:18px!important;
  line-height:1.35!important;
  font-weight:750!important;
  color:#202020!important;
}
.single-product #review_form_wrapper .comment-form-rating{
  margin:0 0 13px!important;
}
.single-product #review_form_wrapper .comment-form-rating label{
  display:block!important;
  margin-bottom:7px!important;
  font-size:14px!important;
  font-weight:650!important;
  color:#4b4b4b!important;
}
.single-product #review_form_wrapper .comment-form-comment label,
.single-product #review_form_wrapper .comment-form-author label,
.single-product #review_form_wrapper .comment-form-email label{
  display:block!important;
  margin-bottom:7px!important;
  font-size:14px!important;
  font-weight:650!important;
  color:#4b4b4b!important;
}
.single-product #review_form_wrapper input[type="text"],
.single-product #review_form_wrapper input[type="email"],
.single-product #review_form_wrapper textarea{
  width:100%!important;
  box-sizing:border-box!important;
  border:1px solid #dedede!important;
  border-radius:12px!important;
  background:#fff!important;
  padding:11px 13px!important;
  font-size:15px!important;
  line-height:1.45!important;
  color:#222!important;
  outline:none!important;
  transition:border-color .18s ease,box-shadow .18s ease!important;
}
.single-product #review_form_wrapper textarea{
  min-height:104px!important;
  resize:vertical!important;
}
.single-product #review_form_wrapper input[type="text"]:focus,
.single-product #review_form_wrapper input[type="email"]:focus,
.single-product #review_form_wrapper textarea:focus{
  border-color:#bdbdbd!important;
  box-shadow:0 0 0 3px rgba(0,0,0,.045)!important;
}
.single-product #review_form_wrapper .form-submit{
  margin:14px 0 0!important;
}
.single-product #review_form_wrapper .form-submit input[type="submit"]{
  min-height:44px!important;
  padding:10px 20px!important;
  border:0!important;
  border-radius:12px!important;
  background:#202020!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:700!important;
  cursor:pointer!important;
}
.single-product #reviews .woocommerce-noreviews{
  margin:0!important;
  padding:14px 16px!important;
  border:1px solid #ececec!important;
  border-radius:14px!important;
  background:#fafafa!important;
  color:#666!important;
  font-size:14px!important;
}
@media(max-width:767px){
  .single-product #reviews,
  .single-product .woocommerce-Reviews{
    margin-top:24px!important;
  }
  .single-product #reviews .woocommerce-Reviews-title{
    font-size:20px!important;
    margin-bottom:14px!important;
  }
  .single-product #reviews .commentlist li.review{
    padding:14px!important;
    border-radius:14px!important;
  }
  .single-product #review_form_wrapper{
    padding:15px!important;
    border-radius:16px!important;
  }
}

/* v2.0.14 — Urgent-call callout in checkout popup */
.dslq-checkout-callout{margin:10px 12px 0!important;padding:13px 12px 12px!important;text-align:center!important;border-radius:14px!important;background:linear-gradient(180deg,#fff8f3 0%,#fffdfb 100%)!important;border:1px solid rgba(244,81,30,.14)!important;box-shadow:0 2px 10px rgba(0,0,0,.035)!important}
.dslq-checkout-callout-title{margin:0!important;font-size:13px!important;line-height:1.2!important;font-weight:850!important;letter-spacing:.45px!important;color:#202020!important}
.dslq-checkout-callout-phone{display:block!important;margin:4px 0 2px!important;font-size:23px!important;line-height:1.1!important;font-weight:900!important;letter-spacing:.3px!important;color:#e64a19!important;text-decoration:none!important}
.dslq-checkout-callout-subtitle{margin:0!important;font-size:12px!important;line-height:1.25!important;font-weight:600!important;color:#777!important}
@media(max-width:767px){.dslq-checkout-callout{margin:8px 10px 0!important;padding:11px 10px 10px!important;border-radius:13px!important}.dslq-checkout-callout-phone{font-size:22px!important}}

/* v2.0.15 — Keep urgent-call callout fully above sticky order button */
.dslq-checkout-popup-body{
  padding-bottom:118px!important;
}
.dslq-checkout-callout{
  position:relative!important;
  z-index:2!important;
  margin-bottom:8px!important;
}
@media(max-width:767px){
  .dslq-checkout-popup-body{
    padding-bottom:122px!important;
  }
  .dslq-checkout-callout{
    margin-bottom:10px!important;
  }
}

/* v2.0.16 — Reduce excess whitespace below checkout form */
.dslq-checkout-popup-body{
  padding-bottom:82px!important;
}
@media(max-width:767px){
  .dslq-checkout-popup-body{
    padding-bottom:86px!important;
  }
}

/* v2.0.17 — Scrolling benefit strip below header */
.dslq-benefit-marquee{
  position:relative!important;
  width:100%!important;
  overflow:hidden!important;
  background:#fff!important;
  border-bottom:1px solid rgba(0,0,0,.06)!important;
  white-space:nowrap!important;
}
.dslq-benefit-marquee-track{
  display:flex!important;
  width:max-content!important;
  animation:dslq-benefit-scroll 28s linear infinite!important;
  will-change:transform!important;
}
.dslq-benefit-marquee-group{
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  min-height:38px!important;
  padding-right:28px!important;
}
.dslq-benefit-marquee-group span{
  display:inline-flex!important;
  align-items:center!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:650!important;
  color:#4b4b4b!important;
  letter-spacing:.05px!important;
}
.dslq-benefit-marquee-group i{
  display:block!important;
  width:4px!important;
  height:4px!important;
  margin:0 18px!important;
  border-radius:50%!important;
  background:#f4511e!important;
  opacity:.72!important;
}
@keyframes dslq-benefit-scroll{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@media(max-width:767px){
  .dslq-benefit-marquee-group{
    min-height:34px!important;
    padding-right:22px!important;
  }
  .dslq-benefit-marquee-group span{
    font-size:12px!important;
  }
  .dslq-benefit-marquee-group i{
    width:3px!important;
    height:3px!important;
    margin:0 13px!important;
  }
  .dslq-benefit-marquee-track{
    animation-duration:24s!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .dslq-benefit-marquee-track{
    animation:none!important;
    transform:none!important;
  }
}
