/* ===== BLOOM — Floral Shop Theme ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Playfair Display',Georgia,serif;color:#2d1a1a;background:#fffaf8;font-size:14px;line-height:1.6}
a{text-decoration:none;color:inherit}
ul{list-style:none}
img{max-width:100%;display:block}
input,button,select,textarea{font-family:'Inter',sans-serif}
button{cursor:pointer}

:root{
  --rose:#c0392b;
  --rose-dark:#96281b;
  --rose-light:#fdf0f0;
  --rose-mid:#e8a0a0;
  --green:#2d6a4f;
  --green-light:#d8f3dc;
  --gold:#c9a84c;
  --cream:#fffaf8;
  --warm:#f5e6e0;
  --gray-border:#e8ddd8;
  --gray-text:#7a5c5c;
  --white:#fff;
  --shadow:0 2px 16px rgba(192,57,43,.1);
  --nav-height:64px;
}

.container{max-width:1280px;margin:0 auto;padding:0 24px}
.btn{display:inline-block;padding:11px 28px;font-size:13px;font-weight:600;cursor:pointer;border:1.5px solid transparent;transition:all .2s;letter-spacing:.8px;text-transform:uppercase;text-align:center;font-family:'Inter',sans-serif}
.btn-rose{background:var(--rose);color:#fff;border-color:var(--rose)}
.btn-rose:hover{background:var(--rose-dark);border-color:var(--rose-dark)}
.btn-outline-rose{background:transparent;border-color:var(--rose);color:var(--rose)}
.btn-outline-rose:hover{background:var(--rose);color:#fff}
.btn-dark{background:#2d1a1a;color:#fff;border-color:#2d1a1a}
.btn-dark:hover{background:#4a2c2c}
.btn-outline-dark{background:transparent;border-color:#2d1a1a;color:#2d1a1a}
.btn-outline-dark:hover{background:#2d1a1a;color:#fff}
.btn-green{background:var(--green);color:#fff;border-color:var(--green)}
.btn-green:hover{background:#1b4332}
.section-title{font-size:28px;font-weight:700;text-align:center;margin-bottom:8px;color:#2d1a1a;font-family:'Playfair Display',serif}
.section-sub{text-align:center;color:var(--gray-text);margin-bottom:36px;font-size:14px;font-family:'Inter',sans-serif}
.alert{padding:12px 16px;border-radius:4px;margin-bottom:16px;font-size:13px;font-family:'Inter',sans-serif}
.alert-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}
.alert-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}

/* ANNOUNCEMENT */
.announcement-bar{background:var(--rose);color:#fff;text-align:center;font-size:12px;padding:9px 20px;letter-spacing:.5px;font-family:'Inter',sans-serif}

/* HEADER */
.header{background:#fff;border-bottom:1px solid var(--gray-border);position:sticky;top:0;z-index:1000;box-shadow:0 1px 8px rgba(192,57,43,.08)}
.header-top{display:flex;align-items:center;justify-content:space-between;height:var(--nav-height);padding:0 24px;max-width:1280px;margin:0 auto}
.logo a{display:flex;flex-direction:column;align-items:center}
.logo-text{font-size:26px;font-weight:700;color:var(--rose);letter-spacing:2px;line-height:1;font-family:'Playfair Display',serif}
.logo-sub{font-size:9px;color:var(--green);letter-spacing:3px;text-transform:uppercase;margin-top:2px;font-family:'Inter',sans-serif}
.nav-desktop{display:flex;align-items:center;gap:0}
.nav-desktop>a,.nav-desktop>.dropdown>a{color:#2d1a1a;padding:0 14px;font-size:13px;font-weight:500;height:var(--nav-height);display:flex;align-items:center;letter-spacing:.3px;transition:color .15s;white-space:nowrap;border-bottom:2px solid transparent;font-family:'Inter',sans-serif}
.nav-desktop>a:hover,.nav-desktop>.dropdown>a:hover{color:var(--rose);border-bottom-color:var(--rose)}
.dropdown{position:relative}
.dropdown-menu{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:200px;border:1px solid var(--gray-border);border-top:2px solid var(--rose);box-shadow:0 8px 24px rgba(0,0,0,.1);z-index:999;padding:8px 0}
.dropdown:hover .dropdown-menu{display:block}
.dropdown-menu a{display:block;padding:10px 20px;font-size:13px;color:#2d1a1a;transition:background .15s;font-family:'Inter',sans-serif}
.dropdown-menu a:hover{background:var(--rose-light);color:var(--rose)}
.header-icons{display:flex;align-items:center;gap:2px}
.icon-btn{color:#2d1a1a;padding:8px 10px;font-size:17px;position:relative;transition:color .15s;display:flex;align-items:center}
.icon-btn:hover{color:var(--rose)}
.cart-badge{position:absolute;top:2px;right:2px;background:var(--rose);color:#fff;font-size:9px;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.hamburger{display:none;background:none;border:none;color:#2d1a1a;font-size:20px;padding:8px}

/* MOBILE NAV */
.mobile-nav{position:fixed;top:0;left:-100%;width:300px;height:100vh;background:#fff;z-index:2000;overflow-y:auto;transition:left .3s ease;border-right:1px solid var(--gray-border)}
.mobile-nav.open{left:0}
.mobile-nav-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--gray-border);background:var(--rose-light)}
.close-nav{background:none;border:none;font-size:20px;color:#2d1a1a;padding:4px}
.mobile-nav a{display:block;color:#2d1a1a;padding:14px 20px;font-size:14px;border-bottom:1px solid var(--gray-border);font-weight:500;transition:color .15s;font-family:'Inter',sans-serif}
.mobile-nav a:hover{color:var(--rose);background:var(--rose-light)}
.mobile-nav .sub-link{padding-left:36px;font-size:13px;color:var(--gray-text);font-weight:400}
.overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1500}
.overlay.show{display:block}

/* HERO SLIDER */
.hero-slider{position:relative;overflow:hidden;background:var(--warm)}
.slide{display:none}
.slide.active{display:block}
.slide-inner{display:grid;grid-template-columns:1fr 1fr;min-height:520px;align-items:center}
.slide-content{padding:60px 60px 60px 80px}
.slide-tag{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--rose);margin-bottom:14px;display:block;font-family:'Inter',sans-serif}
.slide-content h1{font-size:42px;font-weight:700;line-height:1.2;margin-bottom:16px;color:#2d1a1a;font-family:'Playfair Display',serif}
.slide-content p{font-size:15px;color:var(--gray-text);margin-bottom:28px;max-width:380px;font-family:'Inter',sans-serif}
.slide-btns{display:flex;gap:12px;flex-wrap:wrap}
.slide-image{height:520px;overflow:hidden}
.slide-image img{width:100%;height:100%;object-fit:cover}
.slider-dots{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:10}
.slider-dot{width:8px;height:8px;border-radius:50%;background:rgba(192,57,43,.25);border:none;cursor:pointer;transition:background .2s;padding:0}
.slider-dot.active{background:var(--rose)}
.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#fff;border:1px solid var(--gray-border);color:#2d1a1a;width:40px;height:40px;border-radius:50%;font-size:14px;cursor:pointer;z-index:10;transition:all .2s;display:flex;align-items:center;justify-content:center}
.slider-arrow:hover{background:var(--rose);color:#fff;border-color:var(--rose)}
.slider-prev{left:16px}
.slider-next{right:16px}

/* PROMO STRIP */
.promo-strip{background:var(--green);color:#fff;padding:10px 0;overflow:hidden}
.promo-track{display:flex;gap:0;white-space:nowrap;animation:marquee 25s linear infinite}
.promo-item{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;padding:0 40px;font-family:'Inter',sans-serif}
.promo-item::after{content:'✿';margin-left:40px;opacity:.6}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* CATEGORY MARQUEE */
.cat-scroll-section{padding:48px 0 0;overflow:hidden}
.cat-marquee-wrap{overflow:hidden;padding:20px 0 40px;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%)}
.cat-marquee-track{display:flex;gap:24px;width:max-content;animation:catScroll 30s linear infinite}
.cat-marquee-track:hover{animation-play-state:paused}
@keyframes catScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
.cat-marquee-item{display:flex;flex-direction:column;align-items:center;gap:10px;text-decoration:none;flex-shrink:0;transition:transform .2s}
.cat-marquee-item:hover{transform:translateY(-4px)}
.cat-marquee-img{width:110px;height:110px;border-radius:50%;overflow:hidden;border:3px solid var(--gray-border);background:var(--warm);transition:border-color .2s,box-shadow .2s}
.cat-marquee-item:hover .cat-marquee-img{border-color:var(--rose);box-shadow:0 0 0 4px rgba(192,57,43,.12)}
.cat-marquee-img img{width:100%;height:100%;object-fit:cover}
.cat-marquee-item span{font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:#2d1a1a;white-space:nowrap;font-family:'Inter',sans-serif}

/* PRODUCTS */
.products-section{padding:48px 0;background:#fff}
.products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.product-card{position:relative}
.product-card-img{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--warm);margin-bottom:12px;border-radius:8px}
.product-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.product-card:hover .product-card-img img{transform:scale(1.05)}
.product-card-img-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:64px;color:#e8a0a0;background:linear-gradient(135deg,#fdf0f0,#f5e6e0)}
.product-badge{position:absolute;top:10px;left:10px;background:var(--rose);color:#fff;font-size:11px;font-weight:700;padding:3px 10px;letter-spacing:.5px;border-radius:20px;font-family:'Inter',sans-serif}
.product-badge.sold-out{background:#2d1a1a}
.product-badge.new{background:var(--green)}
.product-card-hover{position:absolute;bottom:0;left:0;right:0;background:rgba(255,255,255,.95);padding:12px;transform:translateY(100%);transition:transform .25s ease;display:flex;gap:8px;border-radius:0 0 8px 8px}
.product-card:hover .product-card-hover{transform:translateY(0)}
.product-card-info{padding:0 4px}
.product-card-name{font-size:14px;font-weight:600;color:#2d1a1a;margin-bottom:6px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:'Playfair Display',serif}
.product-card-price{display:flex;align-items:center;gap:8px}
.price-sale{font-size:14px;font-weight:700;color:var(--rose)}
.price-original{font-size:13px;color:var(--gray-text);text-decoration:line-through}
.price-regular{font-size:14px;font-weight:600;color:#2d1a1a}

/* BANNERS */
.triple-banner-section{padding:48px 0;background:var(--cream)}
.two-col-banner-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.two-col-banner-item{min-height:280px;position:relative;overflow:hidden;border-radius:12px;display:flex;align-items:flex-end}
.triple-banner{position:relative;overflow:hidden;border-radius:12px;display:flex;align-items:flex-end;cursor:pointer}
.triple-banner-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .6s ease}
.triple-banner:hover .triple-banner-bg{transform:scale(1.05)}
.triple-banner-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(45,26,26,.7) 0%,rgba(45,26,26,.1) 60%,transparent 100%)}
.triple-banner-content{position:relative;z-index:2;padding:28px 24px;color:#fff}
.triple-tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;background:var(--rose);color:#fff;padding:3px 10px;margin-bottom:10px;border-radius:20px;font-family:'Inter',sans-serif}
.triple-banner-content h3{font-size:22px;font-weight:700;line-height:1.2;margin-bottom:8px;font-family:'Playfair Display',serif}
.triple-banner-content p{font-size:13px;opacity:.9;margin-bottom:14px;font-family:'Inter',sans-serif}
.triple-btn{display:inline-block;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#fff;border-bottom:1.5px solid rgba(255,255,255,.7);padding-bottom:2px;transition:border-color .2s;font-family:'Inter',sans-serif}
.triple-btn:hover{border-bottom-color:#fff}

/* MID BANNER */
.mid-product-banner{position:relative;overflow:hidden;min-height:200px;display:flex;align-items:center;margin:32px 0 0}
.mid-banner-bg{position:absolute;inset:0;background-size:cover;background-position:center 30%;transition:transform .6s ease}
.mid-product-banner:hover .mid-banner-bg{transform:scale(1.03)}
.mid-banner-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(45,26,26,.82) 0%,rgba(45,26,26,.5) 55%,transparent 100%)}
.mid-banner-content{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;width:100%;padding:36px 48px;gap:24px;flex-wrap:wrap}
.mid-banner-tag{display:inline-block;background:var(--rose);color:#fff;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:3px 10px;margin-bottom:10px;border-radius:20px}
.mid-banner-text h3{font-size:24px;font-weight:700;color:#fff;margin-bottom:6px;font-family:'Playfair Display',serif}
.mid-banner-text p{font-size:13px;color:rgba(255,255,255,.8);font-family:'Inter',sans-serif}
.mid-banner-btn{display:inline-flex;align-items:center;gap:10px;background:#fff;color:#2d1a1a;padding:13px 28px;font-size:13px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;white-space:nowrap;flex-shrink:0;transition:background .2s,color .2s;font-family:'Inter',sans-serif}
.mid-banner-btn:hover{background:var(--rose);color:#fff}

/* TRUST STRIP */
.trust-strip{background:#fff;border-top:1px solid var(--gray-border);border-bottom:1px solid var(--gray-border);padding:20px 0}
.trust-strip-grid{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0}
.trust-item{display:flex;align-items:center;gap:12px;padding:10px 20px;flex:1;min-width:160px}
.trust-item i{font-size:22px;flex-shrink:0}
.trust-item h5{font-size:13px;font-weight:700;color:#2d1a1a;margin-bottom:2px;font-family:'Inter',sans-serif}
.trust-item span{font-size:11px;color:var(--gray-text);font-family:'Inter',sans-serif}
.trust-divider{width:1px;height:40px;background:var(--gray-border);flex-shrink:0}

/* SHOP PAGE */
.shop-page{padding:32px 0 60px}
.shop-toolbar{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--gray-border);margin-bottom:28px;flex-wrap:wrap;gap:12px}
.shop-toolbar-left{display:flex;align-items:center;gap:16px}
.filter-toggle-btn{display:flex;align-items:center;gap:6px;background:none;border:1px solid var(--gray-border);padding:8px 14px;font-size:13px;font-weight:500;color:#2d1a1a;transition:all .2s;font-family:'Inter',sans-serif}
.filter-toggle-btn:hover{border-color:var(--rose);color:var(--rose)}
.results-count{font-size:13px;color:var(--gray-text);font-family:'Inter',sans-serif}
.sort-select{padding:8px 12px;border:1px solid var(--gray-border);font-size:13px;color:#2d1a1a;background:#fff;cursor:pointer;outline:none;font-family:'Inter',sans-serif}
.sort-select:focus{border-color:var(--rose)}
.shop-products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.filter-drawer{position:fixed;top:0;left:-340px;width:320px;height:100vh;background:#fff;z-index:2000;overflow-y:auto;transition:left .3s ease;border-right:1px solid var(--gray-border);padding:0}
.filter-drawer.open{left:0}
.filter-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--gray-border);position:sticky;top:0;background:#fff;z-index:1}
.filter-drawer-header h3{font-size:15px;font-weight:700;font-family:'Playfair Display',serif}
.filter-drawer-close{background:none;border:none;font-size:20px;color:#2d1a1a}
.filter-section{padding:20px;border-bottom:1px solid var(--gray-border)}
.filter-section h4{font-size:13px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;margin-bottom:14px;font-family:'Inter',sans-serif}
.filter-check{display:flex;align-items:center;gap:8px;margin-bottom:10px;cursor:pointer;font-size:13px;font-family:'Inter',sans-serif}
.filter-check input{accent-color:var(--rose);width:15px;height:15px}
.price-inputs{display:flex;gap:10px;align-items:center}
.price-inputs input{flex:1;padding:8px 10px;border:1px solid var(--gray-border);font-size:13px;font-family:'Inter',sans-serif}
.filter-actions{padding:20px;display:flex;gap:10px}
.filter-actions .btn{flex:1;padding:11px;font-size:12px}
.pagination{display:flex;gap:4px;justify-content:center;margin-top:48px}
.page-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--gray-border);font-size:13px;color:#2d1a1a;background:#fff;transition:all .2s;text-decoration:none;font-family:'Inter',sans-serif}
.page-btn:hover,.page-btn.active{background:var(--rose);color:#fff;border-color:var(--rose)}

/* PRODUCT PAGE */
.product-page{padding:32px 0 60px}
.product-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px}
.product-gallery{display:flex;gap:12px}
.thumb-col{display:flex;flex-direction:column;gap:8px;width:72px;flex-shrink:0}
.thumb{width:72px;height:72px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .2s;border-radius:6px}
.thumb.active,.thumb:hover{border-color:var(--rose)}
.thumb img{width:100%;height:100%;object-fit:cover;border-radius:4px}
.main-img-wrap{flex:1;aspect-ratio:1/1;overflow:hidden;background:var(--warm);border-radius:12px}
.main-img-wrap img{width:100%;height:100%;object-fit:cover}
.product-detail{padding-top:8px}
.product-detail h1{font-size:26px;font-weight:700;margin-bottom:12px;line-height:1.3;font-family:'Playfair Display',serif}
.product-detail .price-row{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.product-detail .price-sale{font-size:22px;font-weight:700;color:var(--rose)}
.product-detail .price-original{font-size:16px;color:var(--gray-text);text-decoration:line-through}
.product-detail .price-regular{font-size:22px;font-weight:700}
.product-detail .save-badge{background:var(--rose);color:#fff;font-size:11px;font-weight:700;padding:3px 10px;letter-spacing:.5px;border-radius:20px;font-family:'Inter',sans-serif}
.option-label{font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;margin-bottom:10px;font-family:'Inter',sans-serif}
.size-options,.color-options{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
.size-btn{min-width:44px;height:44px;padding:0 10px;border:1px solid var(--gray-border);background:#fff;font-size:13px;font-weight:500;transition:all .2s;border-radius:6px;font-family:'Inter',sans-serif}
.size-btn:hover,.size-btn.selected{border-color:var(--rose);background:var(--rose);color:#fff}
.color-swatch{width:32px;height:32px;border-radius:50%;border:2px solid var(--gray-border);cursor:pointer;transition:all .2s;position:relative}
.color-swatch.selected{border-color:var(--rose);box-shadow:0 0 0 2px #fff,0 0 0 4px var(--rose)}
.qty-wrap{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.qty-box{display:flex;align-items:center;border:1px solid var(--gray-border);border-radius:6px;overflow:hidden}
.qty-box button{width:40px;height:44px;background:none;border:none;font-size:18px;color:#2d1a1a;transition:background .15s}
.qty-box button:hover{background:var(--rose-light)}
.qty-box input{width:52px;height:44px;text-align:center;border:none;border-left:1px solid var(--gray-border);border-right:1px solid var(--gray-border);font-size:14px;font-family:'Inter',sans-serif}
.add-cart-btn{width:100%;padding:15px;font-size:14px;font-weight:700;letter-spacing:1px;margin-bottom:12px}
.buy-now-btn{width:100%;padding:15px;font-size:14px;font-weight:700;letter-spacing:1px;margin-bottom:20px}
.product-meta-info{font-size:13px;color:var(--gray-text);border-top:1px solid var(--gray-border);padding-top:16px;font-family:'Inter',sans-serif}
.product-meta-info p{margin-bottom:6px;display:flex;align-items:center;gap:8px}
.product-meta-info i{color:var(--rose);width:16px}
.product-tabs{margin-top:48px;border-top:1px solid var(--gray-border)}
.tab-nav{display:flex;border-bottom:1px solid var(--gray-border)}
.tab-btn{padding:14px 20px;font-size:13px;font-weight:600;letter-spacing:.3px;background:none;border:none;color:var(--gray-text);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s;font-family:'Inter',sans-serif}
.tab-btn.active{color:var(--rose);border-bottom-color:var(--rose)}
.tab-pane{display:none;padding:24px 0;font-size:14px;color:#444;line-height:1.8;font-family:'Inter',sans-serif}
.tab-pane.active{display:block}

/* CART */
.cart-page{padding:40px 0 60px}
.cart-page h1{font-size:28px;font-weight:700;margin-bottom:32px;font-family:'Playfair Display',serif}
.cart-layout{display:grid;grid-template-columns:1fr 360px;gap:40px;align-items:start}
.cart-items{border-top:1px solid var(--gray-border)}
.cart-item{display:grid;grid-template-columns:90px 1fr auto;gap:16px;padding:20px 0;border-bottom:1px solid var(--gray-border);align-items:start}
.cart-item-img{width:90px;height:90px;overflow:hidden;background:var(--warm);border-radius:8px}
.cart-item-img img{width:100%;height:100%;object-fit:cover}
.cart-item-name{font-size:14px;font-weight:600;margin-bottom:4px;font-family:'Playfair Display',serif}
.cart-item-meta{font-size:12px;color:var(--gray-text);margin-bottom:10px;font-family:'Inter',sans-serif}
.cart-item-price{font-size:14px;font-weight:700;color:var(--rose)}
.cart-item-remove{background:none;border:none;font-size:12px;color:var(--gray-text);text-decoration:underline;cursor:pointer;margin-top:8px;font-family:'Inter',sans-serif}
.cart-item-remove:hover{color:var(--rose)}
.cart-qty-box{display:flex;align-items:center;border:1px solid var(--gray-border);width:fit-content;border-radius:6px;overflow:hidden}
.cart-qty-box button{width:32px;height:32px;background:none;border:none;font-size:16px}
.cart-qty-box input{width:40px;height:32px;text-align:center;border:none;border-left:1px solid var(--gray-border);border-right:1px solid var(--gray-border);font-size:13px;font-family:'Inter',sans-serif}
.cart-summary{background:var(--warm);padding:24px;border-radius:12px}
.cart-summary h3{font-size:18px;font-weight:700;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--gray-border);font-family:'Playfair Display',serif}
.summary-line{display:flex;justify-content:space-between;font-size:14px;margin-bottom:12px;font-family:'Inter',sans-serif}
.summary-line.total{font-size:16px;font-weight:700;border-top:1px solid var(--gray-border);padding-top:14px;margin-top:8px}
.coupon-row{display:flex;gap:0;margin-bottom:16px}
.coupon-row input{flex:1;padding:10px 12px;border:1px solid var(--gray-border);font-size:13px;border-right:none;border-radius:6px 0 0 6px;font-family:'Inter',sans-serif}
.coupon-row button{padding:10px 16px;background:var(--rose);color:#fff;border:1px solid var(--rose);font-size:12px;font-weight:700;letter-spacing:.5px;border-radius:0 6px 6px 0;font-family:'Inter',sans-serif}
.checkout-btn{width:100%;padding:15px;font-size:14px;font-weight:700;letter-spacing:1px;margin-top:16px}

/* CHECKOUT */
.checkout-page{padding:40px 0 60px}
.checkout-layout{display:grid;grid-template-columns:1fr 400px;gap:48px;align-items:start}
.checkout-form-section h2{font-size:20px;font-weight:700;margin-bottom:24px;font-family:'Playfair Display',serif}
.form-group{margin-bottom:16px}
.form-group label{display:block;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;margin-bottom:6px;color:#444;font-family:'Inter',sans-serif}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:11px 14px;border:1px solid var(--gray-border);font-size:14px;transition:border-color .2s;background:#fff;color:#2d1a1a;border-radius:6px;font-family:'Inter',sans-serif}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--rose)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.payment-method{border:1px solid var(--gray-border);padding:14px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;margin-bottom:8px;transition:border-color .2s;border-radius:8px}
.payment-method:hover,.payment-method.selected{border-color:var(--rose)}
.payment-method input{accent-color:var(--rose)}
.payment-method-label{font-size:14px;font-weight:500;font-family:'Inter',sans-serif}
.payment-method-sub{font-size:12px;color:var(--gray-text);font-family:'Inter',sans-serif}
.checkout-order-summary{background:var(--warm);padding:24px;border-radius:12px}
.checkout-order-summary h3{font-size:15px;font-weight:700;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--gray-border);font-family:'Playfair Display',serif}
.checkout-item{display:flex;gap:12px;margin-bottom:16px;align-items:center}
.checkout-item-img{width:56px;height:56px;overflow:hidden;background:#fff;position:relative;flex-shrink:0;border-radius:8px}
.checkout-item-img img{width:100%;height:100%;object-fit:cover}
.checkout-item-badge{position:absolute;top:-6px;right:-6px;background:var(--gray-text);color:#fff;width:18px;height:18px;border-radius:50%;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center}
.checkout-item-name{font-size:13px;font-weight:500;flex:1;font-family:'Inter',sans-serif}
.checkout-item-price{font-size:13px;font-weight:700;font-family:'Inter',sans-serif}
.place-order-btn{width:100%;padding:15px;font-size:14px;font-weight:700;letter-spacing:1px;margin-top:20px}

/* FOOTER */
.footer{background:#2d1a1a;color:#c9a0a0;margin-top:60px}
.footer-top{padding:56px 0 40px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}
.footer-brand .logo-text{color:#fff;font-size:22px;margin-bottom:12px;display:block}
.footer-brand p{font-size:13px;line-height:1.7;color:#a08080;margin-bottom:20px;font-family:'Inter',sans-serif}
.footer-social{display:flex;gap:10px}
.footer-social a{width:34px;height:34px;border-radius:50%;border:1px solid #4a2c2c;display:flex;align-items:center;justify-content:center;color:#a08080;font-size:14px;transition:all .2s}
.footer-social a:hover{border-color:var(--rose);color:var(--rose)}
.footer-col h4{color:#fff;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:16px;font-family:'Inter',sans-serif}
.footer-col ul li{margin-bottom:10px}
.footer-col ul li a{font-size:13px;color:#a08080;transition:color .15s;font-family:'Inter',sans-serif}
.footer-col ul li a:hover{color:#fff}
.newsletter-form{display:flex}
.newsletter-form input{flex:1;padding:10px 14px;background:#3d2020;border:1px solid #4a2c2c;border-right:none;color:#fff;font-size:13px;font-family:'Inter',sans-serif}
.newsletter-form input::placeholder{color:#7a5050}
.newsletter-form input:focus{outline:none;border-color:#6a3030}
.newsletter-form button{padding:10px 16px;background:var(--rose);color:#fff;border:none;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;transition:background .2s;font-family:'Inter',sans-serif}
.newsletter-form button:hover{background:var(--rose-dark)}
.footer-bottom{border-top:1px solid #3d2020;padding:16px 0}
.footer-bottom-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.footer-bottom p{font-size:12px;color:#6a4040;font-family:'Inter',sans-serif}

/* MISC */
.breadcrumb{font-size:12px;color:var(--gray-text);padding:14px 0;font-family:'Inter',sans-serif}
.breadcrumb a{color:var(--gray-text);transition:color .15s}
.breadcrumb a:hover{color:var(--rose)}
.breadcrumb span.sep{margin:0 6px}
.empty-state{text-align:center;padding:80px 20px}
.empty-state i{font-size:56px;color:#e8a0a0;margin-bottom:20px;display:block}
.empty-state h3{font-size:20px;font-weight:700;margin-bottom:8px;font-family:'Playfair Display',serif}
.empty-state p{color:var(--gray-text);margin-bottom:24px;font-size:14px;font-family:'Inter',sans-serif}
.toast{position:fixed;bottom:24px;right:24px;background:#2d1a1a;color:#fff;padding:14px 20px;font-size:13px;z-index:9999;transform:translateY(120px);opacity:0;transition:all .3s;display:flex;align-items:center;gap:10px;max-width:320px;box-shadow:0 4px 20px rgba(0,0,0,.2);border-radius:8px;font-family:'Inter',sans-serif}
.toast.show{transform:translateY(0);opacity:1}
.toast.success{border-left:3px solid #22c55e}
.toast.error{border-left:3px solid var(--rose)}
.modal{display:none;position:fixed;inset:0;z-index:3000;align-items:center;justify-content:center}
.modal.open{display:flex}
.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.5)}
.modal-box{position:relative;background:#fff;padding:32px;max-width:520px;width:90%;z-index:1;max-height:90vh;overflow-y:auto;border-radius:12px}
.modal-close{position:absolute;top:14px;right:16px;background:none;border:none;font-size:22px;cursor:pointer;color:#888}
.section-divider{border:none;border-top:1px solid var(--gray-border);margin:0}
.coupon-checkout-row{margin-bottom:8px}
.coupon-applied{display:flex;align-items:center;flex-wrap:wrap;gap:4px;background:#f0fdf4;border:1px solid #bbf7d0;padding:12px 16px;font-size:14px;color:#166534;border-radius:8px;font-family:'Inter',sans-serif}

/* ADMIN */
.admin-layout{display:grid;grid-template-columns:240px 1fr;min-height:100vh}
.admin-sidebar{background:#2d1a1a;color:#fff}
.admin-sidebar .logo-area{padding:20px;border-bottom:1px solid #4a2c2c}
.admin-sidebar nav a{display:flex;align-items:center;gap:10px;padding:13px 20px;color:#c9a0a0;font-size:13px;transition:all .2s;border-left:3px solid transparent;font-family:'Inter',sans-serif}
.admin-sidebar nav a:hover,.admin-sidebar nav a.active{color:#fff;background:rgba(255,255,255,.05);border-left-color:var(--rose)}
.admin-sidebar nav a i{width:16px}
.admin-main{background:#f9f5f3;padding:28px}
.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.admin-header h1{font-size:22px;font-weight:700;font-family:'Playfair Display',serif}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}
.stat-card{background:#fff;padding:20px;display:flex;align-items:center;gap:14px;box-shadow:0 1px 8px rgba(0,0,0,.06);border-radius:8px}
.stat-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;border-radius:8px}
.stat-icon.rose{background:var(--rose)}
.stat-icon.green{background:var(--green)}
.stat-icon.gold{background:var(--gold)}
.stat-icon.dark{background:#2d1a1a}
.stat-info h3{font-size:22px;font-weight:800;font-family:'Inter',sans-serif}
.stat-info p{font-size:12px;color:var(--gray-text);font-family:'Inter',sans-serif}
.admin-card{background:#fff;padding:20px;box-shadow:0 1px 8px rgba(0,0,0,.06);margin-bottom:20px;border-radius:8px}
.admin-card h3{font-size:15px;font-weight:700;margin-bottom:16px;font-family:'Playfair Display',serif}
.admin-table{width:100%;border-collapse:collapse}
.admin-table th{background:#2d1a1a;color:#fff;padding:11px 14px;text-align:left;font-size:12px;font-weight:600;letter-spacing:.5px;font-family:'Inter',sans-serif}
.admin-table td{padding:12px 14px;border-bottom:1px solid var(--gray-border);font-size:13px;font-family:'Inter',sans-serif}
.admin-table tr:hover td{background:var(--rose-light)}
.status-badge{padding:3px 10px;font-size:11px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;border-radius:20px;font-family:'Inter',sans-serif}
.status-pending{background:#fff7ed;color:#c2410c}
.status-processing{background:#eff6ff;color:#1d4ed8}
.status-shipped{background:#f5f3ff;color:#6d28d9}
.status-delivered{background:#f0fdf4;color:#15803d}
.status-cancelled{background:#fef2f2;color:#b91c1c}

/* RESPONSIVE */
@media(max-width:1100px){.products-grid,.shop-products-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.stats-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.product-layout{grid-template-columns:1fr}.cart-layout{grid-template-columns:1fr}.checkout-layout{grid-template-columns:1fr}.slide-inner{grid-template-columns:1fr;position:relative;min-height:380px}.slide-image{display:block!important;position:absolute;inset:0;height:100%;z-index:0}.slide-inner::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(45,26,26,.5),rgba(45,26,26,.25));z-index:1}.slide-content{position:relative;z-index:2;padding:48px 24px 60px;color:#fff}.slide-content h1{color:#fff;font-size:28px}.slide-content p{color:rgba(255,255,255,.9)}.two-col-banner-grid{grid-template-columns:1fr}.admin-layout{grid-template-columns:1fr}.admin-sidebar{display:none}}
@media(max-width:768px){.nav-desktop{display:none}.hamburger{display:block}.products-grid,.shop-products-grid{grid-template-columns:repeat(2,1fr);gap:12px}.footer-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}}
@media(max-width:480px){.products-grid,.shop-products-grid{grid-template-columns:repeat(2,1fr);gap:8px}.container{padding:0 14px}.slide-content h1{font-size:22px}}
body{overflow-x:hidden}

/* WA STICKY */
.wa-sticky{position:fixed;bottom:24px;right:24px;z-index:8000}
.wa-btn{width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;display:flex;align-items:center;justify-content:center;font-size:26px;box-shadow:0 4px 16px rgba(37,211,102,.45);cursor:pointer;border:none;transition:transform .2s,box-shadow .2s;text-decoration:none}
.wa-btn:hover{transform:scale(1.1)}
.wa-popup{position:absolute;bottom:68px;right:0;background:#fff;border-radius:12px;width:280px;box-shadow:0 8px 32px rgba(0,0,0,.15);overflow:hidden;display:none;animation:waFadeIn .2s ease}
.wa-popup.open{display:block}
@keyframes waFadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.wa-popup-header{background:#25d366;color:#fff;padding:14px 16px;display:flex;align-items:center;gap:10px}
.wa-avatar{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.wa-popup-header h4{font-size:14px;font-weight:700;margin-bottom:2px;font-family:'Inter',sans-serif}
.wa-popup-header p{font-size:11px;opacity:.85;font-family:'Inter',sans-serif}
.wa-popup-body{padding:12px}
.wa-popup-body p{font-size:12px;color:#888;margin-bottom:10px;padding:0 4px;font-family:'Inter',sans-serif}
.wa-option{display:block;padding:10px 14px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin-bottom:8px;font-size:13px;color:#1a1a1a;text-decoration:none;transition:background .15s;cursor:pointer;font-family:'Inter',sans-serif}
.wa-option:hover{background:#dcfce7}
.wa-option i{color:#25d366;margin-right:8px;width:16px}
.wa-close-btn{position:absolute;top:10px;right:12px;background:none;border:none;color:rgba(255,255,255,.8);font-size:18px;cursor:pointer;line-height:1}
