@import url('https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&display=swap');

*{box-sizing:border-box;margin:0;padding:0}
:root{
  --primary:#FF6B35;--primary-dark:#E5521A;--secondary:#1A1A2E;
  --accent:#FFD700;--bg:#FAFAFA;--border:#E5E7EB;--text:#111;
  --muted:#6B7280;--success:#10B981;--danger:#EF4444;--info:#3B82F6;
  --radius:14px;--shadow:0 4px 24px rgba(0,0,0,.08);
  --shadow-h:0 8px 40px rgba(0,0,0,.14);
}
body{font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden}
h1,h2,h3,h4,h5,label.sora{font-family:'Sora',sans-serif}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-thumb{background:#ddd;border-radius:3px}

/* ── Layout ── */
.container{max-width:1400px;margin:0 auto;padding:0 20px}
.main-wrap{min-height:100vh;padding-top:72px;padding-bottom:72px}

/* ── Buttons ── */
.btn{display:inline-block;border:none;border-radius:var(--radius);padding:12px 22px;
  font-family:'Sora',sans-serif;font-weight:700;font-size:14px;cursor:pointer;
  text-align:center;transition:all .2s;text-decoration:none}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-dark);transform:translateY(-1px);
  box-shadow:0 4px 16px rgba(255,107,53,.35);color:#fff}
.btn-outline{background:transparent;color:var(--primary);border:2px solid var(--primary)}
.btn-outline:hover{background:var(--primary);color:#fff}
.btn-dark{background:var(--secondary);color:#fff}
.btn-dark:hover{background:#2d2d4a;color:#fff}
.btn-sm{padding:7px 14px;font-size:12px;border-radius:8px}
.btn-danger{background:#FEE2E2;color:var(--danger);border:none}
.btn-danger:hover{background:var(--danger);color:#fff}
.btn-blue{background:#EFF6FF;color:var(--info);border:none}
.btn-blue:hover{background:var(--info);color:#fff}
.btn-icon{background:#F3F4F6;border:none;border-radius:50%;width:36px;height:36px;
  display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;
  transition:all .2s}
.btn-icon:hover{background:#E5E7EB}
.btn-full{width:100%}
button:disabled{opacity:.5;cursor:not-allowed}

/* ── Forms ── */
.form-group{margin-bottom:14px}
.form-label{display:block;font-family:'Sora',sans-serif;font-weight:600;
  font-size:12px;color:#374151;margin-bottom:5px;text-transform:uppercase;letter-spacing:.4px}
.form-input,.form-select,.form-textarea{width:100%;padding:12px 16px;
  border:1.5px solid var(--border);border-radius:var(--radius);font-family:'DM Sans',sans-serif;
  font-size:14px;outline:none;transition:border .2s;background:#fff;color:var(--text)}
.form-input:focus,.form-select:focus,.form-textarea:focus{
  border-color:var(--primary);box-shadow:0 0 0 3px rgba(255,107,53,.1)}
.form-textarea{resize:vertical;min-height:90px}
.form-grid{display:grid;gap:14px}
.form-grid-2{grid-template-columns:1fr 1fr}
.form-col-2{grid-column:span 2}
@media(max-width:600px){.form-grid-2{grid-template-columns:1fr}.form-col-2{grid-column:span 1}}

/* ── Cards ── */
.card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);
  border:1px solid var(--border);transition:all .25s}
.card:hover{box-shadow:var(--shadow-h)}
.card-pad{padding:24px}
.card-padlg{padding:32px}

/* ── Badges ── */
.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;
  font-family:'Sora',sans-serif;font-weight:700;letter-spacing:.4px}
.badge-orange{background:#FEF3ED;color:var(--primary)}
.badge-green{background:#ECFDF5;color:#059669}
.badge-blue{background:#EFF6FF;color:#2563EB}
.badge-purple{background:#F5F3FF;color:#7C3AED}
.badge-red{background:#FEE2E2;color:var(--danger)}
.badge-solid-red{background:var(--danger);color:#fff}
.badge-solid-orange{background:var(--primary);color:#fff}

/* ── Stars ── */
.stars{color:#F59E0B;font-size:14px}
.stars-sm{color:#F59E0B;font-size:12px}

/* ── Tags ── */
.tag{display:inline-block;background:#F3F4F6;color:#374151;border-radius:6px;
  padding:4px 10px;font-size:12px;font-weight:500;margin:2px}

/* ── Header ── */
.header{position:fixed;top:0;left:0;right:0;z-index:100;background:#fff;
  border-bottom:1px solid var(--border);box-shadow:0 2px 12px rgba(0,0,0,.06)}
.header-inner{height:70px;display:flex;align-items:center;gap:16px}
.logo{display:flex;align-items:center;gap:10px;cursor:pointer;flex-shrink:0}
.logo-icon{width:38px;height:38px;background:var(--primary);border-radius:10px;
  display:flex;align-items:center;justify-content:center;font-size:20px}
.logo-text{font-family:'Sora',sans-serif;font-weight:800;font-size:22px;
  color:var(--secondary);letter-spacing:-.5px}
.logo-text span{color:var(--primary)}
.search-bar{flex:1;max-width:560px;position:relative}
.search-bar input{padding:0 20px 0 46px;height:44px;border-radius:50px;
  font-size:14px;width:100%}
.search-bar .search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);
  font-size:17px;opacity:.45;pointer-events:none}
.header-actions{display:flex;align-items:center;gap:10px;margin-left:auto}
.header-btn{background:#F3F4F6;border:none;border-radius:10px;padding:9px 14px;
  cursor:pointer;font-family:'Sora',sans-serif;font-weight:700;font-size:13px;
  display:flex;align-items:center;gap:7px;transition:all .2s;color:var(--text)}
.header-btn:hover{background:#E5E7EB}
.cart-btn{position:relative}
.cart-badge{position:absolute;top:-7px;right:-7px;background:var(--primary);color:#fff;
  border-radius:50%;width:20px;height:20px;font-size:10px;font-weight:800;
  display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif}

/* ── Language Dropdown ── */
.lang-wrap{position:relative}
.lang-dropdown{position:absolute;top:calc(100%+8px);right:0;background:#fff;
  border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.12);border:1px solid var(--border);
  min-width:160px;z-index:200;overflow:hidden;display:none}
.lang-wrap:hover .lang-dropdown,.lang-wrap.open .lang-dropdown{display:block}
.lang-option{padding:10px 16px;cursor:pointer;font-size:14px;transition:background .15s}
.lang-option:hover,.lang-option.active{background:#FEF3ED;color:var(--primary);font-weight:700}

/* ── Mobile search below header ── */
.mobile-search{display:none;padding:0 16px 12px}
.mobile-search input{width:100%;height:40px;padding:0 16px 0 42px;
  border-radius:50px;font-size:13px}

/* ── Mobile Bottom Nav ── */
.mobile-nav{position:fixed;bottom:0;left:0;right:0;background:#fff;
  border-top:1px solid var(--border);display:none;z-index:99;
  box-shadow:0 -4px 20px rgba(0,0,0,.08)}
.mobile-nav-inner{display:flex}
.mobile-tab{flex:1;padding:10px 4px;background:none;border:none;cursor:pointer;
  display:flex;flex-direction:column;align-items:center;gap:3px;
  color:#9CA3AF;font-family:'Sora',sans-serif;font-weight:600;font-size:10px;
  position:relative;transition:color .2s}
.mobile-tab.active,.mobile-tab:hover{color:var(--primary)}
.mobile-tab span.ico{font-size:20px}

/* ── Flash Messages ── */
.flash{padding:12px 20px;border-radius:10px;margin-bottom:20px;font-weight:600;font-size:14px}
.flash-success{background:#ECFDF5;color:#059669;border:1px solid #6EE7B7}
.flash-error{background:#FEF2F2;color:#DC2626;border:1px solid #FECACA}
.flash-info{background:#EFF6FF;color:#2563EB;border:1px solid #BFDBFE}

/* ── Section ── */
.section{margin-top:36px}
.section-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.section-title{font-family:'Sora',sans-serif;font-weight:700;font-size:20px;color:var(--secondary)}

/* ── Hero Banner ── */
.banner-wrap{padding:20px 0 0}
.banner-slide{border-radius:20px;padding:44px 48px;display:flex;
  justify-content:space-between;align-items:center;min-height:220px;
  position:relative;overflow:hidden;cursor:pointer;color:#fff}
.banner-label{font-size:11px;font-weight:700;letter-spacing:2px;
  color:rgba(255,255,255,.8);text-transform:uppercase;margin-bottom:8px}
.banner-title{font-family:'Sora',sans-serif;font-weight:800;
  font-size:clamp(28px,5vw,48px);line-height:1.1;margin-bottom:12px}
.banner-sub{font-size:16px;color:rgba(255,255,255,.85);margin-bottom:24px}
.banner-emoji{font-size:clamp(60px,10vw,120px);opacity:.2;
  position:absolute;right:40px;bottom:-10px;pointer-events:none}
.banner-dots{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);
  display:flex;gap:6px}
.banner-dot{height:8px;border-radius:4px;background:rgba(255,255,255,.4);
  cursor:pointer;transition:all .3s;border:none}
.banner-dot.active{width:24px;background:#fff}
.banner-dot:not(.active){width:8px}
.banner-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.1),transparent)}

/* ── Product Grid ── */
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}
.product-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);
  border:1px solid var(--border);overflow:hidden;transition:all .25s;display:flex;flex-direction:column}
.product-card:hover{box-shadow:var(--shadow-h);transform:translateY(-2px)}
.product-img-wrap{position:relative;overflow:hidden}
.product-img-wrap img{width:100%;height:190px;object-fit:cover;transition:transform .4s}
.product-card:hover .product-img-wrap img{transform:scale(1.04)}
.product-img-badge{position:absolute;top:10px;left:10px}
.product-img-discount{position:absolute;top:10px;right:10px}
.product-actions{position:absolute;bottom:10px;right:10px;display:flex;flex-direction:column;gap:6px}
.product-act-btn{background:rgba(255,255,255,.9);border:none;border-radius:50%;
  width:32px;height:32px;cursor:pointer;font-size:14px;display:flex;
  align-items:center;justify-content:center;transition:all .2s;box-shadow:0 2px 8px rgba(0,0,0,.1)}
.product-act-btn:hover,.product-act-btn.active{transform:scale(1.1)}
.product-act-btn.wishlist.active{background:#FEE2E2;color:var(--danger)}
.product-act-btn.favorite.active{background:#FEF3ED;color:var(--primary)}
.product-body{padding:14px 16px;flex:1;display:flex;flex-direction:column}
.product-name{font-family:'Sora',sans-serif;font-weight:600;font-size:13px;
  color:var(--secondary);margin-bottom:6px;overflow:hidden;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.product-meta{display:flex;align-items:center;gap:6px;margin-bottom:10px;font-size:12px;color:var(--muted)}
.product-price-row{display:flex;align-items:center;justify-content:space-between;margin-top:auto}
.product-price{font-family:'Sora',sans-serif;font-weight:800;font-size:16px;color:var(--primary)}
.product-compare{font-size:11px;color:var(--muted);text-decoration:line-through;margin-left:4px}
.add-btn{background:var(--primary);color:#fff;border:none;border-radius:8px;
  width:32px;height:32px;font-size:18px;cursor:pointer;display:flex;
  align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}
.add-btn:hover{background:var(--primary-dark)}

/* ── Product Page ── */
.product-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.product-main-img img{width:100%;height:400px;object-fit:cover;border-radius:16px}
.product-thumbs{display:flex;gap:8px;margin-top:10px}
.product-thumb{width:76px;height:76px;object-fit:cover;border-radius:10px;
  cursor:pointer;border:2px solid transparent;transition:border .2s}
.product-thumb.active{border-color:var(--primary)}
.product-title{font-family:'Sora',sans-serif;font-weight:700;font-size:24px;
  line-height:1.3;margin-bottom:12px}
.product-price-big{font-family:'Sora',sans-serif;font-weight:800;font-size:34px;color:var(--primary)}
.product-compare-big{font-size:18px;color:var(--muted);text-decoration:line-through}
.qty-box{display:flex;align-items:center;border:1.5px solid var(--border);
  border-radius:10px;overflow:hidden}
.qty-box button{width:40px;height:44px;background:#F9FAFB;border:none;
  cursor:pointer;font-size:20px;font-weight:700;transition:background .2s}
.qty-box button:hover{background:#E5E7EB}
.qty-box span{width:44px;text-align:center;font-family:'Sora',sans-serif;font-weight:700}
.tab-nav{display:flex;gap:2px;border-bottom:2px solid var(--border)}
.tab-btn{padding:12px 22px;border:none;background:none;cursor:pointer;
  font-family:'Sora',sans-serif;font-weight:700;font-size:14px;color:var(--muted);
  border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}
.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary)}
.tab-content{padding-top:24px}

/* ── Catalog ── */
.catalog-layout{display:grid;grid-template-columns:220px 1fr;gap:24px}
.catalog-sidebar .card{position:sticky;top:88px}
.cat-item{padding:9px 14px;border-radius:9px;cursor:pointer;font-size:14px;
  display:flex;align-items:center;gap:8px;transition:all .15s;margin-bottom:2px}
.cat-item:hover,.cat-item.active{background:#FEF3ED;color:var(--primary);font-weight:700}
.sort-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.sort-bar select{padding:8px 14px;border-radius:10px;font-size:13px}

/* ── Cart / Checkout ── */
.cart-table{width:100%;border-collapse:collapse}
.cart-table th{font-family:'Sora',sans-serif;font-weight:600;font-size:12px;
  color:#374151;padding:12px 16px;text-align:left;background:#F9FAFB;border-bottom:1px solid var(--border)}
.cart-table td{padding:14px 16px;border-bottom:1px solid #F3F4F6;vertical-align:middle}
.step-bar{display:flex;gap:0;background:#F9FAFB;border-radius:12px;padding:4px;margin-bottom:28px}
.step{flex:1;padding:10px 16px;border-radius:10px;text-align:center;
  font-family:'Sora',sans-serif;font-weight:600;font-size:13px;color:var(--muted);cursor:default}
.step.active{background:#fff;color:var(--primary);box-shadow:0 2px 8px rgba(0,0,0,.06)}
.step.done{color:var(--success)}
.checkout-layout{display:grid;grid-template-columns:1fr 320px;gap:24px}
.order-summary{position:sticky;top:88px}

/* ── Account / Vendor / Admin ── */
.dash-layout{display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:start}
.dash-sidebar{position:sticky;top:88px}
.dash-nav-item{padding:11px 14px;border-radius:9px;cursor:pointer;
  font-family:'Sora',sans-serif;font-weight:500;font-size:13px;
  color:#374151;margin-bottom:2px;display:flex;align-items:center;gap:8px;transition:all .15s}
.dash-nav-item:hover,.dash-nav-item.active{background:#FEF3ED;color:var(--primary);font-weight:700}
.dash-nav-item.danger{color:var(--danger)}
.dash-nav-item.danger:hover{background:#FEE2E2;color:var(--danger)}
.stat-card{padding:20px;text-align:center}
.stat-val{font-family:'Sora',sans-serif;font-weight:800;font-size:28px;margin-bottom:4px}
.stat-lbl{font-size:12px;color:var(--muted)}
.stat-icon{font-size:28px;margin-bottom:6px}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px;margin-bottom:24px}

/* ── Tables ── */
.data-table{width:100%;border-collapse:collapse;font-size:14px}
.data-table th{padding:12px 16px;text-align:left;font-family:'Sora',sans-serif;
  font-weight:600;font-size:12px;color:#374151;background:#F9FAFB;white-space:nowrap}
.data-table td{padding:13px 16px;border-top:1px solid #F3F4F6;vertical-align:middle}
.data-table tr:hover td{background:#FAFAFA}
.table-img{width:40px;height:40px;object-fit:cover;border-radius:8px}
.table-actions{display:flex;gap:5px}

/* ── Promo Strip ── */
.promo-strip{background:linear-gradient(135deg,#1A1A2E,#2D2D4A);border-radius:20px;
  padding:32px 40px;display:flex;justify-content:space-between;align-items:center;
  margin-top:32px;margin-bottom:32px;flex-wrap:wrap;gap:20px}
.promo-title{font-family:'Sora',sans-serif;color:#fff;font-size:24px;font-weight:800;margin-bottom:6px}
.promo-sub{color:rgba(255,255,255,.7);font-size:14px}

/* ── User header card ── */
.user-hero{background:linear-gradient(135deg,#1A1A2E,#2D2D4A);border-radius:20px;
  padding:28px 32px;display:flex;align-items:center;gap:20px;margin-bottom:24px;flex-wrap:wrap}
.user-avatar{width:64px;height:64px;background:var(--primary);border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0}
.user-hero-name{font-family:'Sora',sans-serif;font-weight:700;color:#fff;font-size:22px}
.user-hero-sub{color:rgba(255,255,255,.7);font-size:14px;margin-top:2px}
.user-hero-stats{margin-left:auto;display:flex;gap:24px}
.user-hero-stat-val{font-family:'Sora',sans-serif;font-weight:800;font-size:22px;color:var(--primary)}
.user-hero-stat-lbl{color:rgba(255,255,255,.6);font-size:12px;text-align:center}

/* ── Auth modal ── */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1000;
  display:flex;align-items:center;justify-content:center;padding:16px;
  backdrop-filter:blur(4px)}
.modal{background:#fff;border-radius:20px;padding:32px;width:100%;max-width:440px;
  position:relative;max-height:90vh;overflow-y:auto;animation:fadeUp .25s ease}
.role-tabs{display:flex;gap:4px;background:#F9FAFB;border-radius:10px;padding:4px;margin-bottom:20px}
.role-tab{flex:1;padding:9px 6px;border:none;border-radius:8px;background:transparent;
  font-family:'Sora',sans-serif;font-weight:700;font-size:12px;color:var(--muted);
  cursor:pointer;transition:all .2s}
.role-tab.active{background:#fff;color:var(--primary);box-shadow:0 1px 4px rgba(0,0,0,.1)}
.demo-box{background:#F9FAFB;border-radius:10px;padding:14px;margin-top:16px}
.demo-label{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;
  letter-spacing:1px;margin-bottom:8px}
.demo-item{font-size:12px;color:var(--primary);font-weight:600;padding:3px 0;cursor:pointer}
.demo-item:hover{text-decoration:underline}

/* ── Wishlist highlight ── */
.fav-wrap{display:flex;gap:8px;margin-top:12px}
.fav-btn{flex:1;padding:10px;border-radius:10px;cursor:pointer;
  font-family:'Sora',sans-serif;font-weight:600;font-size:13px;transition:all .2s;text-align:center}

/* ── Toast ── */
.toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);
  background:var(--secondary);color:#fff;padding:12px 28px;border-radius:50px;
  font-size:14px;font-weight:700;z-index:9999;
  box-shadow:0 8px 24px rgba(0,0,0,.2);pointer-events:none;
  animation:fadeUp .3s ease,fadeOut .3s ease 2.2s forwards;
  font-family:'Sora',sans-serif}

/* ── Empty state ── */
.empty{text-align:center;padding:60px 20px;color:var(--muted)}
.empty-ico{font-size:56px;margin-bottom:16px}
.empty h3{font-family:'Sora',sans-serif;font-size:18px;color:#374151;margin-bottom:6px}

/* ── Review card ── */
.review-card{padding:18px;margin-bottom:12px}
.review-author{font-family:'Sora',sans-serif;font-weight:700;font-size:14px}
.review-date{font-size:12px;color:var(--muted)}
.review-text{font-size:14px;color:#374151;margin-top:8px;line-height:1.6}

/* ── Horizontal scroll ── */
.hscroll{display:flex;gap:16px;overflow-x:auto;padding-bottom:8px;
  -webkit-overflow-scrolling:touch}
.hscroll::-webkit-scrollbar{height:4px}

/* ── Animations ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes fadeOut{to{opacity:0}}
@keyframes slideInRight{from{opacity:0;transform:translateX(100%)}to{opacity:1;transform:none}}
.fade-in{animation:fadeUp .35s ease both}

/* ── Responsive ── */
@media(max-width:768px){
  .container{padding:0 14px}
  .search-bar{display:none}
  .hide-mobile{display:none!important}
  .mobile-search{display:block}
  .mobile-nav{display:block}
  .product-page-grid{grid-template-columns:1fr}
  .catalog-layout{grid-template-columns:1fr}
  .catalog-sidebar{display:none}
  .checkout-layout{grid-template-columns:1fr}
  .order-summary{display:none}
  .dash-layout{grid-template-columns:1fr}
  .dash-sidebar{display:none}
  .promo-strip{flex-direction:column;text-align:center;padding:28px 24px}
  .user-hero-stats{display:none}
  .banner-slide{padding:28px 24px}
  .product-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
  .form-grid-2{grid-template-columns:1fr}
  .form-col-2{grid-column:span 1}
}
@media(min-width:769px){
  .show-mobile{display:none!important}
  .mobile-nav{display:none!important}
}

/* ── Extended Mobile Nav (with logout) ── */
.mobile-nav-inner{display:flex;overflow-x:auto}
.mobile-tab{flex:1;min-width:52px;padding:9px 4px;background:none;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;color:#9CA3AF;font-family:'Sora',sans-serif;font-weight:600;font-size:9px;position:relative;transition:color .2s;text-decoration:none}
.mobile-tab.active,.mobile-tab:hover{color:var(--primary)}
/* Mid banner responsive */
@media(max-width:520px){.mid-banners-3{grid-template-columns:1fr!important}}
/* Footer responsive */
footer .container > div[style*="grid"]{display:grid}
@media(max-width:768px){footer .container > div[style*="grid"]{grid-template-columns:1fr 1fr!important}}
@media(max-width:480px){footer .container > div[style*="grid"]{grid-template-columns:1fr!important}}
/* Dashboard mobile */
@media(max-width:768px){.mobile-full{grid-template-columns:1fr!important}}

/* ═══ V3 ADDITIONS ════════════════════════════════════════════ */
/* Admin Mobile */
@media(max-width:768px){
  .adm-layout{display:block!important}
  .adm-sidebar{display:none!important}
  .adm-mobile-nav{display:flex!important}
  .stats-grid{grid-template-columns:repeat(2,1fr)!important}
}
.adm-mobile-nav{display:none;gap:6px;overflow-x:auto;padding:0 0 10px;margin-bottom:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.adm-mobile-nav::-webkit-scrollbar{display:none}

/* Wallet card */
.wallet-card{background:linear-gradient(135deg,#1A1A2E,#0F3460);color:#fff;border-radius:16px;padding:24px 28px}
.wallet-bal{font-family:'Sora',sans-serif;font-weight:800;font-size:36px;color:var(--primary);margin:8px 0}

/* Rich editor */
.ql-toolbar.ql-snow{border-bottom:1px solid var(--border)!important;border:none!important;background:#F9FAFB}
.ql-container.ql-snow{border:none!important}
.ql-editor{min-height:280px;font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.75}

/* Swatch */
.swatch{width:32px;height:32px;border-radius:8px;cursor:pointer;border:3px solid transparent;transition:all .15s;display:inline-block}
.swatch:hover,.swatch.sel{border-color:var(--secondary);transform:scale(1.12)}
.swatch-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}

/* Blog content */
.blog-content h1,.blog-content h2,.blog-content h3{font-family:'Sora',sans-serif;font-weight:700;margin:1.5em 0 .7em}
.blog-content p{margin-bottom:1em;line-height:1.8}
.blog-content ul,.blog-content ol{padding-left:24px;margin-bottom:1em}
.blog-content blockquote{border-left:4px solid var(--primary);padding:12px 16px;background:#FEF3ED;border-radius:0 10px 10px 0;margin:1.2em 0;font-style:italic}
.blog-content img{max-width:100%;border-radius:10px;margin:1em 0}
.blog-content code{background:#F3F4F6;padding:2px 6px;border-radius:4px;font-size:13px;font-family:monospace}
.blog-content pre{background:#1A1A2E;color:#E5E7EB;padding:16px;border-radius:10px;overflow-x:auto;margin:1em 0}
.blog-content a{color:var(--primary);text-decoration:underline}

/* Mobile nav extended */
.mobile-nav-inner{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch}
.mobile-nav-inner::-webkit-scrollbar{display:none}
.mobile-tab{flex:1;min-width:52px;padding:9px 3px;background:none;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;color:#9CA3AF;font-family:'Sora',sans-serif;font-weight:600;font-size:9px;position:relative;transition:color .2s;text-decoration:none}
.mobile-tab.active,.mobile-tab:hover{color:var(--primary)}

/* Clickable stat cards */
.admin-card-link{text-decoration:none;color:inherit;display:block;transition:transform .2s}
.admin-card-link:hover{transform:translateY(-3px)}
.admin-card-link .stat-card{cursor:pointer}

/* Footer mobile */
@media(max-width:768px){footer .container>div[style*="grid"]{grid-template-columns:1fr 1fr!important}}
@media(max-width:480px){footer .container>div[style*="grid"]{grid-template-columns:1fr!important}}

/* ══════════════════════════════════════════════════════════════
   V3 COMPLETE FIXES — All pages, mobile, blog, admin
   ══════════════════════════════════════════════════════════════ */

/* ── Admin mobile layout ── */
.adm-layout{display:grid;grid-template-columns:210px 1fr;gap:24px;align-items:start}
.adm-sidebar .card{position:sticky;top:88px}
.adm-mobile-nav{display:none;gap:6px;overflow-x:auto;padding:0 0 10px;margin-bottom:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.adm-mobile-nav::-webkit-scrollbar{display:none}

@media(max-width:900px){
  .adm-layout{display:block!important}
  .adm-sidebar{display:none!important}
  .adm-mobile-nav{display:flex!important}
  .stats-grid{grid-template-columns:repeat(2,1fr)!important}
  .form-grid-2{grid-template-columns:1fr!important}
  .form-col-2{grid-column:span 1!important}
}

/* ── Admin clickable stat cards ── */
.admin-card-link{text-decoration:none;color:inherit;display:block}
.admin-card-link:hover .stat-card,.admin-card-link:focus .stat-card{
  transform:translateY(-3px);
  box-shadow:0 12px 40px rgba(0,0,0,.15);
}
.admin-card-link .stat-card{cursor:pointer;transition:all .25s}

/* ── Blog content styles ── */
.blog-content h1,.blog-content h2,.blog-content h3,.blog-content h4{
  font-family:'Sora',sans-serif;font-weight:700;margin:1.5em 0 .7em;color:#1A1A2E
}
.blog-content h2{font-size:22px}.blog-content h3{font-size:18px}
.blog-content p{margin-bottom:1.1em;line-height:1.85}
.blog-content ul,.blog-content ol{padding-left:24px;margin-bottom:1.1em}
.blog-content li{margin-bottom:.4em}
.blog-content blockquote{
  border-left:4px solid var(--primary);padding:14px 18px;
  background:#FEF3ED;border-radius:0 10px 10px 0;
  margin:1.2em 0;font-style:italic;color:#374151
}
.blog-content img{max-width:100%;border-radius:10px;margin:1em 0;cursor:zoom-in}
.blog-content code{
  background:#F3F4F6;padding:2px 7px;border-radius:5px;
  font-size:13px;font-family:monospace;color:#E11D48
}
.blog-content pre{
  background:#1A1A2E;color:#E5E7EB;padding:18px;border-radius:10px;
  overflow-x:auto;margin:1.2em 0;font-family:monospace;font-size:13px;line-height:1.6
}
.blog-content a{color:var(--primary);text-decoration:underline}
.blog-content table{width:100%;border-collapse:collapse;margin:1.2em 0}
.blog-content th,.blog-content td{padding:10px 14px;border:1px solid var(--border);text-align:left}
.blog-content th{background:#F9FAFB;font-family:'Sora',sans-serif;font-weight:700}
.blog-content hr{border:none;border-top:2px solid var(--border);margin:2em 0}

/* ── Wallet card ── */
.wallet-card{
  background:linear-gradient(135deg,#1A1A2E,#0F3460);
  color:#fff;border-radius:16px;padding:28px 32px
}
.wallet-bal{
  font-family:'Sora',sans-serif;font-weight:800;font-size:38px;
  color:var(--primary);margin:8px 0
}

/* ── Quill rich editor ── */
.ql-toolbar.ql-snow{border-bottom:1px solid var(--border)!important;border:none!important;background:#F9FAFB;border-radius:10px 10px 0 0}
.ql-container.ql-snow{border:none!important;border-bottom:1.5px solid var(--border)!important;border-radius:0 0 10px 10px}
.ql-editor{min-height:280px;font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.75}
.rich-editor{border:1.5px solid var(--border);border-radius:10px;overflow:hidden}

/* ── Color swatches ── */
.swatch{
  width:32px;height:32px;border-radius:8px;cursor:pointer;
  border:3px solid transparent;transition:all .15s;display:inline-block
}
.swatch:hover{border-color:var(--secondary);transform:scale(1.12)}
.swatch.sel{border-color:var(--secondary);transform:scale(1.1);box-shadow:0 0 0 2px #fff inset}
.swatch-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}

/* ── Mobile bottom nav — full fix ── */
.mobile-nav{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--border);z-index:99;box-shadow:0 -4px 20px rgba(0,0,0,.08)}
.mobile-nav-inner{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.mobile-nav-inner::-webkit-scrollbar{display:none}
.mobile-tab{
  flex:1;min-width:52px;padding:9px 3px;background:none;border:none;cursor:pointer;
  display:flex;flex-direction:column;align-items:center;gap:2px;
  color:#9CA3AF;font-family:'Sora',sans-serif;font-weight:600;font-size:9px;
  position:relative;transition:color .2s;text-decoration:none
}
.mobile-tab.active,.mobile-tab:hover{color:var(--primary)}
.mobile-tab .ico{font-size:20px;line-height:1}

/* ── Footer mobile ── */
@media(max-width:768px){
  footer .container>div[style*="grid-template-columns"]{
    grid-template-columns:1fr 1fr!important
  }
}
@media(max-width:480px){
  footer .container>div[style*="grid-template-columns"]{
    grid-template-columns:1fr!important
  }
}

/* ── Mid banners responsive ── */
@media(max-width:640px){
  .mid-banners{grid-template-columns:1fr!important}
  .mid-banners-3{grid-template-columns:1fr 1fr!important}
}
@media(max-width:380px){
  .mid-banners-3{grid-template-columns:1fr!important}
}

/* ── Blog sidebar hidden mobile ── */
@media(max-width:768px){
  .hide-mobile{display:none!important}
  .catalog-layout{grid-template-columns:1fr!important}
  .catalog-sidebar{display:none!important}
  .product-page-grid{grid-template-columns:1fr!important}
  .checkout-layout{grid-template-columns:1fr!important}
  .order-summary{display:none!important}
  .dash-layout{grid-template-columns:1fr!important}
  .dash-sidebar{display:none!important}
  .user-hero-stats{display:none!important}
  .promo-strip{flex-direction:column;text-align:center;padding:24px!important}
}

/* ── Data table mobile ── */
@media(max-width:768px){
  .data-table{font-size:12px}
  .data-table th:nth-child(n+5),.data-table td:nth-child(n+5){display:none}
}

/* ── Toast ── */
.toast{
  position:fixed;bottom:80px;left:50%;transform:translateX(-50%);
  background:var(--secondary);color:#fff;padding:12px 28px;border-radius:50px;
  font-size:14px;font-weight:700;z-index:9999;
  box-shadow:0 8px 24px rgba(0,0,0,.2);pointer-events:none;
  font-family:'Sora',sans-serif;white-space:nowrap;max-width:90vw;
  animation:fadeUp .3s ease,fadeOut .3s ease 2.2s forwards
}

/* ── Tab content animation ── */
.tab-content-admin{animation:fadeUp .3s ease}

/* ── Vendor tab strip mobile ── */
@media(max-width:768px){
  .dash-mobile-tabs{display:flex!important}
}
.dash-mobile-tabs{display:none;gap:6px;overflow-x:auto;padding-bottom:8px;margin-bottom:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.dash-mobile-tabs::-webkit-scrollbar{display:none}

/* ── Image lightbox ── */
#imgLightbox{align-items:center;justify-content:center}
#imgLightbox img{animation:fadeUp .2s ease}

/* ── Product zoom on hover ── */
.product-img-wrap img{transition:transform .4s ease}
.product-card:hover .product-img-wrap img{transform:scale(1.04)}

/* ── Ad Banner Cards ── */
.ad-banner-scroll{scrollbar-width:thin;scrollbar-color:var(--primary) #F3F4F6}
.ad-banner-scroll::-webkit-scrollbar{height:6px}
.ad-banner-scroll::-webkit-scrollbar-thumb{background:var(--primary);border-radius:3px}
.ad-banner-card:hover .ad-banner-cta{background:var(--primary-dark)!important}
@media(max-width:768px){
  .ad-banner-card{width:min(340px,85vw)!important}
  .mid-banners{grid-template-columns:1fr!important}
  .mid-banners-3{grid-template-columns:1fr!important}
}

/* ═══ V5 ADDITIONS ═══════════════════════════════════════════ */

/* Product Image Hover Effect */
.product-img-wrap { position:relative; overflow:hidden; }
.product-img-wrap a { display:block; position:relative; }
.product-img-main { transition:opacity .4s ease; }
.product-img-hover {
  position:absolute; top:0; left:0; width:100%; height:100%;
  object-fit:cover; opacity:0; transition:opacity .4s ease;
}
.product-card:hover .product-img-main { opacity:0; }
.product-card:hover .product-img-hover { opacity:1; }
.product-card:hover { transform:translateY(-4px); box-shadow:0 12px 40px rgba(0,0,0,.12); }

/* Product Slider / Horizontal scroll */
.product-slider {
  display:flex; gap:16px; overflow-x:auto; padding-bottom:12px;
  scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
}
.product-slider::-webkit-scrollbar { height:6px; }
.product-slider::-webkit-scrollbar-track { background:#f1f1f1; border-radius:10px; }
.product-slider::-webkit-scrollbar-thumb { background:var(--primary); border-radius:10px; }
.product-slider .product-card {
  flex:0 0 220px; scroll-snap-align:start; min-width:220px;
}
@media(max-width:640px){
  .product-slider .product-card { flex:0 0 170px; min-width:170px; }
}

/* Admin Dashboard V5 Redesign */
.dash-stat-card {
  background:#fff; border-radius:16px; padding:20px 24px;
  border:1px solid var(--border); display:flex; align-items:center; gap:16px;
  transition:all .25s;
}
.dash-stat-card:hover { transform:translateY(-2px); box-shadow:0 8px 30px rgba(0,0,0,.08); }
.dash-stat-icon {
  width:52px; height:52px; border-radius:14px; display:flex;
  align-items:center; justify-content:center; font-size:22px; color:#fff;
}
.dash-stat-val { font-family:'Sora',sans-serif; font-weight:800; font-size:24px; color:#1a1a2e; }
.dash-stat-lbl { font-size:12px; color:#9CA3AF; font-weight:500; margin-top:2px; }
.dash-stat-change { font-size:11px; font-weight:700; }
.dash-stat-change.up { color:#10B981; }
.dash-stat-change.down { color:#EF4444; }

/* Order Tracking Timeline */
.tracking-timeline { position:relative; padding-left:28px; }
.tracking-timeline::before {
  content:''; position:absolute; left:10px; top:0; bottom:0;
  width:2px; background:var(--border);
}
.tracking-step { position:relative; padding-bottom:24px; }
.tracking-step:last-child { padding-bottom:0; }
.tracking-dot {
  position:absolute; left:-22px; top:2px; width:16px; height:16px;
  border-radius:50%; border:3px solid var(--border); background:#fff; z-index:1;
}
.tracking-step.active .tracking-dot { border-color:var(--primary); background:var(--primary); }
.tracking-step.done .tracking-dot { border-color:#10B981; background:#10B981; }
.tracking-step-title { font-family:'Sora',sans-serif; font-weight:700; font-size:13px; }
.tracking-step-time { font-size:11px; color:var(--muted); margin-top:2px; }
.tracking-step-note { font-size:12px; color:#6B7280; margin-top:4px; }

/* Footer V5 — Clean modern style */
.footer-v5 { background:#1A1A2E; color:#fff; margin-top:60px; }
.footer-v5-top {
  padding:48px 0 32px;
  display:grid; grid-template-columns:2fr repeat(3,1fr); gap:40px;
}
@media(max-width:768px){
  .footer-v5-top { grid-template-columns:1fr 1fr; gap:24px; }
}
@media(max-width:480px){
  .footer-v5-top { grid-template-columns:1fr; }
}
.footer-v5-brand p { color:rgba(255,255,255,.5); font-size:13px; line-height:1.7; }
.footer-v5-title {
  font-family:'Sora',sans-serif; font-weight:700; font-size:14px;
  margin-bottom:16px; color:#fff;
}
.footer-v5-link {
  display:block; color:rgba(255,255,255,.45); font-size:13px;
  margin-bottom:10px; text-decoration:none; transition:color .2s;
}
.footer-v5-link:hover { color:var(--primary); }
.footer-v5-social { display:flex; gap:10px; margin-top:16px; }
.footer-v5-social a {
  width:36px; height:36px; border-radius:50%; background:rgba(255,255,255,.08);
  display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,.6);
  text-decoration:none; transition:all .2s; font-size:15px;
}
.footer-v5-social a:hover { background:var(--primary); color:#fff; }
.footer-v5-bottom {
  border-top:1px solid rgba(255,255,255,.07); padding:16px 0;
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px;
}
.footer-v5-bottom-text { font-size:12px; color:rgba(255,255,255,.3); }
.footer-v5-bottom-links a { font-size:12px; color:rgba(255,255,255,.3); text-decoration:none; margin-left:16px; }
.footer-v5-bottom-links a:hover { color:var(--primary); }
.footer-v5-newsletter {
  display:flex; gap:0; max-width:100%; margin-top:16px;
}
.footer-v5-newsletter input {
  flex:1; padding:10px 16px; border:1px solid rgba(255,255,255,.15);
  border-radius:10px 0 0 10px; font-size:13px; outline:none;
  background:rgba(255,255,255,.05); color:#fff; min-width:0;
}
.footer-v5-newsletter input::placeholder { color:rgba(255,255,255,.3); }
.footer-v5-newsletter button {
  background:var(--primary); color:#fff; border:none; border-radius:0 10px 10px 0;
  padding:10px 20px; cursor:pointer; font-family:'Sora',sans-serif; font-weight:700;
  font-size:13px; white-space:nowrap;
}

/* CTA Banner in footer */
.footer-cta {
  background:var(--primary); padding:20px 0;
}
.footer-cta-inner {
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px;
}

/* ═══ V6 ADDITIONS ═══════════════════════════════════════════ */

/* Banner sticky to header on mobile */
@media(max-width:768px){
  .header { position:sticky; top:0; z-index:100; }
  .banner-slide { min-height:200px !important; }
  .banner-slide-item { margin-top:0 !important; }
}

/* Admin Mobile Fix — phone alignment */
@media(max-width:768px){
  .section { padding:0 8px !important; }
  .adm-layout { display:block !important; }
  .adm-sidebar { display:none !important; }
  .adm-mobile-nav { display:flex !important; gap:6px; overflow-x:auto; padding:6px 0 12px; margin-bottom:12px; -webkit-overflow-scrolling:touch; }
  .adm-mobile-nav a { flex-shrink:0; padding:8px 14px; border-radius:20px; font-family:'Sora',sans-serif; font-weight:700; font-size:12px; text-decoration:none; white-space:nowrap; }
  .stats-grid { grid-template-columns:1fr 1fr !important; gap:10px !important; }
  .dash-stat-card { padding:14px 16px !important; gap:10px !important; }
  .dash-stat-icon { width:42px !important; height:42px !important; font-size:18px !important; }
  .dash-stat-val { font-size:18px !important; }
  .data-table { font-size:12px; }
  .data-table th, .data-table td { padding:8px 10px !important; }
  .form-grid-2 { grid-template-columns:1fr !important; }
  .form-col-2 { grid-column:span 1 !important; }
  .card-pad { padding:16px !important; }
  .checkout-layout, .dash-layout { grid-template-columns:1fr !important; }
  h1 { font-size:20px !important; }
  h3 { font-size:16px !important; }
  .tab-content-admin { overflow-x:hidden; }
  .table-actions { display:flex; gap:4px; flex-wrap:wrap; }
  .btn-sm { padding:4px 8px !important; font-size:11px !important; }
}

/* Nykaa-style banner cards */
.nykaa-banner {
  border-radius:16px; overflow:hidden; position:relative;
  background-size:cover; background-position:center; min-height:200px;
  display:flex; flex-direction:column; justify-content:flex-end; padding:24px;
}
.nykaa-banner::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(to top, rgba(0,0,0,.45) 0%, transparent 60%);
}
.nykaa-banner > * { position:relative; z-index:1; }
.nykaa-banner-title { font-family:'Sora',sans-serif; font-weight:800; font-size:20px; color:#fff; }
.nykaa-banner-sub { font-size:13px; color:rgba(255,255,255,.85); margin-top:4px; }
.nykaa-banner-cta {
  display:inline-block; margin-top:12px; background:#fff; color:#333;
  padding:10px 24px; border-radius:50px; font-family:'Sora',sans-serif;
  font-weight:700; font-size:13px; text-decoration:none; transition:all .2s;
}
.nykaa-banner-cta:hover { background:var(--primary); color:#fff; }

/* Nykaa-style product card — bigger image, cleaner */
.product-card {
  border-radius:14px; overflow:hidden; transition:all .3s;
  background:#fff; border:1px solid #f0f0f0;
}
.product-card:hover {
  transform:translateY(-4px); box-shadow:0 12px 40px rgba(0,0,0,.1);
  border-color:transparent;
}
.product-img-wrap { aspect-ratio:1; overflow:hidden; background:#f8f8f8; }
.product-img-wrap img { width:100%; height:100%; object-fit:cover; }
.product-body { padding:12px 14px 14px; }
.product-name { font-size:13px; font-weight:600; line-height:1.3; margin-bottom:6px; color:#1a1a2e; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.product-price { font-family:'Sora',sans-serif; font-weight:800; font-size:16px; color:#1a1a2e; }
.product-compare { font-size:12px; color:#9CA3AF; text-decoration:line-through; margin-left:6px; }
.add-btn {
  width:36px; height:36px; border-radius:50%; background:var(--primary);
  color:#fff; border:none; cursor:pointer; display:flex; align-items:center;
  justify-content:center; font-size:14px; transition:all .2s;
}
.add-btn:hover { background:var(--primary-dark); transform:scale(1.1); }

/* Nykaa-style categories — round with images */
.cat-circle {
  text-align:center; text-decoration:none; display:block;
}
.cat-circle-img {
  width:72px; height:72px; border-radius:50%; overflow:hidden;
  margin:0 auto 8px; border:2px solid #f0f0f0; transition:all .2s;
}
.cat-circle-img img { width:100%; height:100%; object-fit:cover; }
.cat-circle:hover .cat-circle-img { border-color:var(--primary); transform:scale(1.05); }
.cat-circle-name { font-size:11px; font-weight:600; color:#374151; }

/* Nykaa-style horizontal scroll sections */
.h-scroll {
  display:flex; gap:12px; overflow-x:auto; padding-bottom:8px;
  scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.h-scroll::-webkit-scrollbar { display:none; }
.h-scroll > * { scroll-snap-align:start; flex-shrink:0; }

/* Nykaa-style trust badges */
.trust-strip {
  display:flex; justify-content:space-around; padding:20px 0;
  background:#fff; border-radius:16px; border:1px solid #f0f0f0;
  margin:20px 0;
}
.trust-item { text-align:center; padding:8px 12px; }
.trust-icon { font-size:28px; color:var(--primary); margin-bottom:6px; }
.trust-title { font-family:'Sora',sans-serif; font-weight:700; font-size:12px; color:#1a1a2e; text-transform:uppercase; letter-spacing:.5px; }
.trust-sub { font-size:11px; color:#9CA3AF; margin-top:2px; }

/* Profile avatar */
.avatar-upload { position:relative; width:80px; height:80px; margin:0 auto 16px; }
.avatar-upload img { width:80px; height:80px; border-radius:50%; object-fit:cover; border:3px solid var(--primary); }
.avatar-upload-btn {
  position:absolute; bottom:0; right:0; width:28px; height:28px;
  border-radius:50%; background:var(--primary); color:#fff; border:2px solid #fff;
  display:flex; align-items:center; justify-content:center; cursor:pointer;
  font-size:12px;
}

/* Nykaa-style 2-col banner grid */
.banner-grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:20px 0; }
@media(max-width:640px){ .banner-grid-2 { grid-template-columns:1fr; } }
.banner-grid-2 > a {
  border-radius:14px; overflow:hidden; display:block; text-decoration:none;
  aspect-ratio:4/3; background-size:cover; background-position:center;
  position:relative; transition:transform .2s;
}
.banner-grid-2 > a:hover { transform:scale(1.02); }

/* Full-width banner */
.full-banner {
  border-radius:16px; overflow:hidden; margin:20px 0;
  background-size:cover; background-position:center;
  min-height:180px; display:flex; align-items:flex-end;
  padding:24px; position:relative;
}
.full-banner::after { content:''; position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.5) 0%,transparent 60%); }
.full-banner > * { position:relative; z-index:1; }
@media(max-width:640px){
  .full-banner { min-height:140px; padding:16px; }
}

/* Better charts area */
.chart-card { background:#fff; border-radius:16px; border:1px solid #f0f0f0; padding:24px; }
.chart-card h3 { margin-bottom:16px; }

/* ═══ V6 — NYKAA STYLE + MOBILE FIXES ═══════════════════════ */

/* Banner sticky to header on mobile */
@media(max-width:768px){
  .header { position:sticky; top:0; z-index:1000; background:#fff; box-shadow:0 2px 12px rgba(0,0,0,.08); }
  .banner-slide { min-height:220px !important; border-radius:16px !important; margin:8px !important; }
  
  /* Admin phone alignment fix */
  .adm-layout { display:block !important; padding:0 !important; }
  .adm-sidebar { display:none !important; }
  .adm-mobile-nav { display:flex !important; gap:6px; overflow-x:auto; padding:0 0 10px; margin-bottom:12px; -webkit-overflow-scrolling:touch; }
  .adm-mobile-nav a { min-width:fit-content; white-space:nowrap; }
  .tab-content-admin { padding:0 !important; }
  .stats-grid { grid-template-columns:1fr 1fr !important; gap:10px !important; }
  .dash-stat-card { padding:14px 12px !important; gap:10px !important; }
  .dash-stat-val { font-size:18px !important; }
  .dash-stat-icon { width:42px !important; height:42px !important; font-size:18px !important; border-radius:12px !important; }
  .data-table { font-size:12px; }
  .data-table th, .data-table td { padding:8px 6px !important; }
  .form-grid-2 { grid-template-columns:1fr !important; }
  .form-col-2 { grid-column:span 1 !important; }
  .card-pad { padding:16px !important; }
  
  /* Nykaa-style full-width banner cards on mobile */
  .nykaa-banner-stack { display:flex; flex-direction:column; gap:12px; }
  .nykaa-banner-card { border-radius:16px; overflow:hidden; position:relative; }
  .nykaa-banner-card img { width:100%; display:block; }
  
  /* Product slider tighter on mobile */
  .product-slider .product-card { flex:0 0 155px; min-width:155px; }
  .product-slider { gap:10px; }
}

/* Nykaa-style Banner Cards (image-heavy, full-width) */
.nykaa-banner-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:20px 0;
}
@media(max-width:640px) {
  .nykaa-banner-grid { grid-template-columns:1fr; }
}
.nykaa-banner-item {
  border-radius:16px;
  overflow:hidden;
  position:relative;
  display:block;
  text-decoration:none;
  transition:transform .25s, box-shadow .25s;
}
.nykaa-banner-item:hover {
  transform:translateY(-3px);
  box-shadow:0 8px 30px rgba(0,0,0,.12);
}
.nykaa-banner-item img {
  width:100%;
  height:auto;
  display:block;
  transition:transform .3s;
}
.nykaa-banner-item:hover img { transform:scale(1.02); }
.nykaa-banner-overlay {
  position:absolute;
  bottom:0; left:0; right:0;
  padding:16px 18px;
  background:linear-gradient(transparent, rgba(0,0,0,.6));
  color:#fff;
}
.nykaa-banner-title {
  font-family:'Sora',sans-serif;
  font-weight:800;
  font-size:16px;
  line-height:1.2;
}
.nykaa-banner-sub {
  font-size:12px;
  opacity:.85;
  margin-top:2px;
}
.nykaa-banner-cta {
  display:inline-block;
  margin-top:8px;
  background:rgba(255,255,255,.2);
  backdrop-filter:blur(4px);
  color:#fff;
  padding:6px 16px;
  border-radius:20px;
  font-family:'Sora',sans-serif;
  font-weight:700;
  font-size:12px;
}

/* Nykaa-style horizontal category scroll with images */
.cat-scroll {
  display:flex;
  gap:12px;
  overflow-x:auto;
  padding-bottom:8px;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.cat-scroll::-webkit-scrollbar { display:none; }
.cat-scroll-item {
  flex:0 0 auto;
  text-align:center;
  text-decoration:none;
  width:80px;
}
.cat-scroll-img {
  width:68px;
  height:68px;
  border-radius:50%;
  object-fit:cover;
  border:2px solid var(--border);
  margin:0 auto 6px;
  transition:border-color .2s;
}
.cat-scroll-item:hover .cat-scroll-img { border-color:var(--primary); }
.cat-scroll-name {
  font-size:11px;
  font-weight:600;
  color:#374151;
  font-family:'Sora',sans-serif;
}

/* Nykaa trust badges (footer style) */
.trust-badges-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  text-align:center;
  padding:32px 0;
}
@media(max-width:480px) { .trust-badges-grid { gap:12px; } }
.trust-badge-item { }
.trust-badge-icon {
  width:56px; height:56px;
  border-radius:50%;
  background:#FEF3ED;
  color:var(--primary);
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 10px;
  font-size:22px;
}
.trust-badge-title {
  font-family:'Sora',sans-serif;
  font-weight:700;
  font-size:13px;
  color:#1a1a2e;
  text-transform:uppercase;
  letter-spacing:.5px;
}
.trust-badge-desc {
  font-size:11px;
  color:var(--muted);
  margin-top:2px;
}

/* Avatar upload style */
.avatar-upload {
  position:relative;
  display:inline-block;
  margin-bottom:16px;
}
.avatar-upload img, .avatar-upload .avatar-placeholder {
  width:80px; height:80px;
  border-radius:50%;
  object-fit:cover;
  border:3px solid var(--border);
}
.avatar-placeholder {
  background:#F3F4F6;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:28px;
  color:var(--muted);
}
.avatar-upload-btn {
  position:absolute;
  bottom:0; right:0;
  width:28px; height:28px;
  background:var(--primary);
  color:#fff;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  cursor:pointer;
  border:2px solid #fff;
  transition:transform .2s;
}
.avatar-upload-btn:hover { transform:scale(1.1); }

/* Review cards improved */
.review-card {
  padding:16px;
  border-bottom:1px solid #F3F4F6;
  margin-bottom:4px;
}
.review-card:last-child { border-bottom:none; }

/* Order confirm success animation */
@keyframes scaleIn {
  0% { transform:scale(0); opacity:0; }
  50% { transform:scale(1.1); }
  100% { transform:scale(1); opacity:1; }
}

/* Theme color picker extended swatches */
.color-picker-extended {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(36px,1fr));
  gap:6px;
  margin-top:8px;
}
.color-picker-extended .swatch {
  width:36px;
  height:36px;
  border-radius:8px;
  cursor:pointer;
  border:2px solid transparent;
  transition:all .2s;
}
.color-picker-extended .swatch:hover,
.color-picker-extended .swatch.sel {
  border-color:#333;
  transform:scale(1.15);
}

/* Chart/graph area improvements */
.chart-card {
  background:#fff;
  border-radius:16px;
  border:1px solid var(--border);
  padding:24px;
  margin-bottom:16px;
}
.chart-card h3 {
  font-family:'Sora',sans-serif;
  font-weight:700;
  margin-bottom:20px;
}

/* ═══ V6 ADDITIONS ═══════════════════════════════════════════ */

/* Mobile: Banner sticky below header */
@media(max-width:768px){
  .header { position:sticky; top:0; z-index:1000; }
  .banner-slide { min-height:200px !important; }
  .banner-slide-item { margin-top:0 !important; }
  
  /* Admin mobile alignment fix */
  .adm-mobile-nav { padding:8px 0 12px !important; }
  .adm-mobile-nav a { font-size:11px !important; padding:6px 12px !important; }
  .stats-grid { grid-template-columns:1fr 1fr !important; gap:10px !important; }
  .dash-stat-card { padding:14px 12px !important; gap:10px !important; }
  .dash-stat-val { font-size:18px !important; }
  .dash-stat-icon { width:42px !important; height:42px !important; font-size:18px !important; border-radius:10px !important; }
  .data-table { font-size:12px; }
  .data-table td, .data-table th { padding:8px 6px !important; }
  .card-pad { padding:14px !important; }
  .form-grid { gap:10px !important; }
  .form-input, .form-select, .form-textarea { font-size:14px !important; }
  
  /* Nykaa-style product cards on mobile */
  .product-card { border-radius:12px; }
  .product-card .product-img-wrap img { height:180px !important; }
  .product-name { font-size:12px !important; }
  .product-price { font-size:14px !important; }
  
  /* Full-width banners on mobile like Nykaa */
  .mid-banners, .mid-banners-3 { margin-left:-16px !important; margin-right:-16px !important; gap:8px !important; }
  .mid-banners a, .mid-banners-3 a { border-radius:0 !important; min-height:120px !important; }
}

/* Nykaa-style banner cards - full image with overlay text */
.nykaa-banner {
  position:relative; overflow:hidden; border-radius:16px;
  display:block; text-decoration:none; transition:transform .25s;
}
.nykaa-banner:hover { transform:translateY(-3px); }
.nykaa-banner img {
  width:100%; height:100%; object-fit:cover; display:block;
  transition:transform .4s;
}
.nykaa-banner:hover img { transform:scale(1.03); }
.nykaa-banner-text {
  position:absolute; bottom:0; left:0; right:0;
  background:linear-gradient(transparent,rgba(0,0,0,.6));
  padding:40px 20px 20px; color:#fff;
}
.nykaa-banner-title {
  font-family:'Sora',sans-serif; font-weight:800; font-size:18px;
  line-height:1.2; margin-bottom:4px;
}
.nykaa-banner-sub { font-size:13px; opacity:.85; }
.nykaa-banner-cta {
  display:inline-block; margin-top:10px; background:#fff; color:#111;
  padding:8px 20px; border-radius:25px; font-family:'Sora',sans-serif;
  font-weight:700; font-size:13px; transition:all .2s;
}
.nykaa-banner-cta:hover { background:var(--primary); color:#fff; }

/* Product color/size variant selectors */
.variant-selector { display:flex; gap:6px; flex-wrap:wrap; margin:8px 0; }
.variant-btn {
  padding:6px 14px; border:2px solid var(--border); border-radius:8px;
  background:#fff; cursor:pointer; font-family:'Sora',sans-serif;
  font-weight:600; font-size:12px; transition:all .15s;
}
.variant-btn:hover, .variant-btn.active { border-color:var(--primary); background:#FEF3ED; color:var(--primary); }
.color-swatch-btn {
  width:32px; height:32px; border-radius:50%; border:3px solid var(--border);
  cursor:pointer; transition:all .15s; position:relative;
}
.color-swatch-btn:hover, .color-swatch-btn.active {
  border-color:var(--primary); transform:scale(1.15);
  box-shadow:0 0 0 2px var(--primary);
}

/* Avatar/Profile image */
.avatar-wrap {
  width:80px; height:80px; border-radius:50%; overflow:hidden;
  border:3px solid var(--border); position:relative; cursor:pointer;
}
.avatar-wrap img { width:100%; height:100%; object-fit:cover; }
.avatar-wrap .avatar-edit {
  position:absolute; bottom:0; left:0; right:0; background:rgba(0,0,0,.5);
  color:#fff; text-align:center; font-size:10px; padding:4px 0;
  opacity:0; transition:opacity .2s;
}
.avatar-wrap:hover .avatar-edit { opacity:1; }

/* Review media grid */
.review-media-grid { display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.review-media-grid img, .review-media-grid video {
  width:64px; height:64px; object-fit:cover; border-radius:8px;
  border:1px solid var(--border); cursor:pointer;
}

/* Dashboard chart cards */
.chart-card {
  background:#fff; border-radius:16px; padding:24px;
  border:1px solid var(--border); box-shadow:0 2px 12px rgba(0,0,0,.04);
}
.chart-card h3 { font-family:'Sora',sans-serif; font-weight:700; font-size:16px; margin-bottom:16px; }

/* Nykaa-style category scroll */
.cat-scroll {
  display:flex; gap:14px; overflow-x:auto; padding:8px 0;
  -webkit-overflow-scrolling:touch; scrollbar-width:none;
}
.cat-scroll::-webkit-scrollbar { display:none; }
.cat-item {
  flex:0 0 auto; text-align:center; text-decoration:none;
  width:75px; transition:transform .2s;
}
.cat-item:hover { transform:translateY(-2px); }
.cat-item-img {
  width:64px; height:64px; border-radius:50%; overflow:hidden;
  margin:0 auto 6px; border:2px solid var(--border);
  transition:border-color .2s;
}
.cat-item:hover .cat-item-img { border-color:var(--primary); }
.cat-item-img img { width:100%; height:100%; object-fit:cover; }
.cat-item-name {
  font-family:'Sora',sans-serif; font-weight:600; font-size:11px;
  color:#374151; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}

/* ═══════════════════════════════════════════════════════════════
   V7 — Nykaa-Style Design, Mobile Fixes, Dashboard Improvements
   ═══════════════════════════════════════════════════════════════ */

/* ── Sticky Header on Mobile ───────────────────────────────── */
.header { position:fixed; top:0; left:0; right:0; z-index:100; }
@media(max-width:768px) {
  .main-wrap { padding-top:120px; }
  .header { backdrop-filter:blur(10px); background:rgba(255,255,255,.97); }
}

/* ── Nykaa-Style Hero Banner (Full-Width Image Support) ───── */
.banner-slide {
  border-radius:16px; min-height:220px; position:relative;
  overflow:hidden; background-size:cover; background-position:center;
}
.banner-slide.has-image {
  background-size:cover; background-position:center;
}
.banner-slide.has-image .banner-overlay {
  background:linear-gradient(to right,rgba(0,0,0,.45),transparent);
}
@media(max-width:768px) {
  .banner-slide { border-radius:12px; min-height:180px; padding:24px 20px; }
  .banner-title { font-size:clamp(20px,6vw,32px) !important; }
  .banner-sub { font-size:13px !important; }
  .banner-emoji { display:none; }
}

/* ── Nykaa-Style Product Card ─────────────────────────────── */
.product-card {
  border-radius:14px; overflow:hidden; border:1px solid #f0f0f0;
  box-shadow:0 2px 12px rgba(0,0,0,.04); transition:all .3s;
}
.product-card:hover {
  box-shadow:0 8px 30px rgba(0,0,0,.1); transform:translateY(-4px);
}
.product-img-wrap {
  height:200px; overflow:hidden; position:relative; background:#f9fafb;
}
.product-img-wrap img {
  width:100%; height:100%; object-fit:cover; transition:transform .5s ease;
}
.product-card:hover .product-img-wrap .product-img-main {
  transform:scale(1.08);
}
.product-body {
  padding:14px 16px 16px;
}
.product-name {
  font-family:'Sora',sans-serif; font-weight:700; font-size:13px;
  color:#1a1a2e; line-height:1.3; margin-bottom:4px;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.product-meta {
  display:flex; align-items:center; gap:4px; margin-bottom:8px;
  font-size:11px; color:var(--muted);
}
.product-price-row {
  display:flex; align-items:center; justify-content:space-between; gap:6px;
}
.product-price {
  font-family:'Sora',sans-serif; font-weight:800; font-size:16px; color:#1a1a2e;
}
.product-compare {
  font-size:12px; color:#9CA3AF; text-decoration:line-through;
}
.add-btn {
  width:36px; height:36px; border-radius:50%; background:var(--primary);
  color:#fff; border:none; cursor:pointer; font-size:16px;
  display:flex; align-items:center; justify-content:center;
  transition:all .2s; flex-shrink:0;
}
.add-btn:hover { background:var(--primary-dark); transform:scale(1.1); }

/* Product card actions (wishlist/fav) */
.product-actions {
  position:absolute; top:8px; right:8px; display:flex; flex-direction:column;
  gap:6px; opacity:0; transition:opacity .3s;
}
.product-card:hover .product-actions { opacity:1; }
.product-act-btn {
  width:32px; height:32px; border-radius:50%; background:rgba(255,255,255,.9);
  border:none; cursor:pointer; font-size:14px; color:#9CA3AF;
  display:flex; align-items:center; justify-content:center;
  backdrop-filter:blur(4px); transition:all .2s;
}
.product-act-btn:hover { background:#fff; color:var(--primary); transform:scale(1.1); }
.product-act-btn.active { color:var(--danger); background:#fff; }
.product-act-btn.active.favorite { color:#F59E0B; }

/* Discount badge on image */
.product-img-badge {
  position:absolute; top:8px; left:8px; z-index:2;
}
.product-img-discount {
  position:absolute; top:8px; right:8px; z-index:2; font-size:10px;
}

/* ── Nykaa-Style Horizontal Category Scroll ───────────────── */
.category-scroll {
  display:flex; gap:12px; overflow-x:auto; padding-bottom:8px;
  scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch;
}
.category-scroll::-webkit-scrollbar { height:0; }
.category-card {
  flex:0 0 90px; scroll-snap-align:start; text-align:center;
  text-decoration:none; transition:transform .2s;
}
.category-card:hover { transform:translateY(-2px); }
.category-card-img {
  width:80px; height:80px; border-radius:50%; overflow:hidden;
  margin:0 auto 8px; border:2px solid #f0f0f0; transition:border .2s;
}
.category-card:hover .category-card-img { border-color:var(--primary); }
.category-card-img img {
  width:100%; height:100%; object-fit:cover;
}
.category-card-name {
  font-family:'Sora',sans-serif; font-weight:600; font-size:11px; color:#374151;
}

/* ── Nykaa-Style Full-Width Brand Banners ─────────────────── */
.nykaa-banner {
  display:block; border-radius:16px; overflow:hidden; margin-bottom:14px;
  position:relative; text-decoration:none; transition:transform .3s;
}
.nykaa-banner:hover { transform:translateY(-2px); }
.nykaa-banner img {
  width:100%; height:auto; display:block;
}
.nykaa-banner-overlay {
  position:absolute; bottom:0; left:0; right:0;
  background:linear-gradient(transparent,rgba(0,0,0,.55));
  padding:20px; color:#fff;
}
.nykaa-banner-title {
  font-family:'Sora',sans-serif; font-weight:800; font-size:18px; margin-bottom:2px;
}
.nykaa-banner-sub { font-size:12px; opacity:.85; }
.nykaa-banner-cta {
  display:inline-block; margin-top:8px; background:rgba(255,255,255,.95);
  color:#1a1a2e; padding:8px 18px; border-radius:20px;
  font-family:'Sora',sans-serif; font-weight:700; font-size:12px;
}

/* ── Section Titles (Nykaa style) ─────────────────────────── */
.section-title-nykaa {
  font-family:'Sora',sans-serif; font-weight:800; font-size:20px;
  color:#1a1a2e; margin-bottom:16px;
}

/* ── Product Grid 2-col on mobile ─────────────────────────── */
.product-grid {
  display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:14px;
}
@media(max-width:480px) {
  .product-grid { grid-template-columns:repeat(2,1fr); gap:10px; }
  .product-img-wrap { height:160px; }
  .product-body { padding:10px 12px 14px; }
  .product-price { font-size:14px; }
  .product-name { font-size:12px; }
}

/* ── Product Slider improvements ──────────────────────────── */
.product-slider .product-card {
  flex:0 0 200px; min-width:200px;
}
@media(max-width:480px) {
  .product-slider .product-card { flex:0 0 160px; min-width:160px; }
  .product-slider .product-img-wrap { height:150px; }
}

/* ── Popular This Season Grid (Nykaa) ─────────────────────── */
.popular-grid {
  display:grid; grid-template-columns:1fr 1fr; gap:12px;
}
.popular-card {
  border-radius:14px; overflow:hidden; position:relative;
  text-decoration:none; display:block;
}
.popular-card img { width:100%; aspect-ratio:1; object-fit:cover; }
.popular-card-info {
  padding:10px 12px;
}
.popular-card-title { font-family:'Sora',sans-serif; font-weight:800; font-size:14px; color:#1a1a2e; }
.popular-card-sub { font-size:12px; color:var(--muted); }

/* ── Unlock More Beauty / Store Grid (Nykaa) ──────────────── */
.store-grid {
  display:grid; grid-template-columns:repeat(3,1fr); gap:12px;
}
@media(max-width:600px) { .store-grid { grid-template-columns:repeat(2,1fr); } }
.store-card {
  border-radius:14px; overflow:hidden; text-align:center;
  text-decoration:none; display:block; transition:transform .2s;
}
.store-card:hover { transform:translateY(-2px); }
.store-card img { width:100%; aspect-ratio:1; object-fit:cover; }
.store-card-label {
  padding:8px; font-family:'Sora',sans-serif; font-weight:600;
  font-size:12px; color:#374151; background:#FAFAFA;
}

/* ── Trust Strip (Nykaa footer-style) ─────────────────────── */
.trust-strip {
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border:1px solid var(--border); border-radius:14px; overflow:hidden;
  background:#fff; margin:24px 0;
}
.trust-item {
  padding:20px 12px; text-align:center;
  border-right:1px solid var(--border);
}
.trust-item:last-child { border-right:none; }
.trust-icon {
  width:48px; height:48px; border-radius:50%; background:#FEF3ED;
  margin:0 auto 10px; display:flex; align-items:center; justify-content:center;
  font-size:22px; color:var(--primary);
}
.trust-title {
  font-family:'Sora',sans-serif; font-weight:800; font-size:12px;
  text-transform:uppercase; color:#1a1a2e; letter-spacing:.5px;
}
.trust-sub { font-size:11px; color:var(--muted); margin-top:2px; }

@media(max-width:480px) {
  .trust-strip { grid-template-columns:1fr; }
  .trust-item { border-right:none; border-bottom:1px solid var(--border); padding:14px 12px; }
  .trust-item:last-child { border-bottom:none; }
}

/* ── Admin Mobile Alignment Fixes V7 ─────────────────────── */
@media(max-width:768px) {
  .adm-layout { display:block !important; }
  .adm-sidebar { display:none !important; }
  .adm-mobile-nav {
    display:flex !important; gap:6px; overflow-x:auto;
    padding:0 0 12px; margin-bottom:16px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .adm-mobile-nav::-webkit-scrollbar { display:none; }
  .adm-mobile-nav a {
    flex-shrink:0; padding:8px 14px; border-radius:20px;
    font-family:'Sora',sans-serif; font-weight:700; font-size:12px;
    text-decoration:none; white-space:nowrap;
    display:flex; align-items:center; gap:4px;
  }
  
  /* Stats cards 2-column on mobile */
  .stats-grid { grid-template-columns:1fr 1fr !important; gap:10px !important; }
  .dash-stat-card { padding:14px 12px; gap:10px; }
  .dash-stat-icon { width:40px; height:40px; font-size:18px; border-radius:10px; }
  .dash-stat-val { font-size:18px; }
  .dash-stat-lbl { font-size:10px; }
  
  /* Tables scroll fix */
  .data-table { font-size:12px; }
  .data-table th, .data-table td { padding:10px 8px; white-space:nowrap; }
  .data-table th:nth-child(n+5), .data-table td:nth-child(n+5) { display:none; }
  
  /* Form fixes */
  .form-grid-2 { grid-template-columns:1fr !important; }
  .form-col-2 { grid-column:span 1 !important; }
  
  /* Checkout layout */
  .checkout-layout { grid-template-columns:1fr !important; }
  .dash-layout { grid-template-columns:1fr !important; }
  
  /* Banner fits full width */
  .banner-slide-item { margin:0 -20px; }
  .banner-slide { border-radius:0; }
}

/* ── Dashboard V7 — Enhanced Chart Area ───────────────────── */
.chart-card {
  background:#fff; border-radius:16px; padding:24px;
  border:1px solid var(--border); box-shadow:0 2px 12px rgba(0,0,0,.04);
}
.chart-card h3 {
  font-family:'Sora',sans-serif; font-weight:700; font-size:16px;
  margin-bottom:16px; display:flex; align-items:center; gap:8px;
}
.chart-card h3 i { color:var(--primary); }

/* Dashboard welcome card */
.dash-welcome {
  background:linear-gradient(135deg,var(--primary),var(--primary-dark));
  border-radius:16px; padding:28px; color:#fff; margin-bottom:20px;
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:16px;
}
.dash-welcome h2 {
  font-family:'Sora',sans-serif; font-weight:800; font-size:22px;
}
.dash-welcome p { opacity:.8; font-size:13px; margin-top:4px; }

/* Quick stats row */
.quick-stats {
  display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:14px;
  margin-bottom:20px;
}

/* Recent orders list */
.recent-order-item {
  display:flex; align-items:center; justify-content:space-between;
  padding:12px 0; border-bottom:1px solid #f3f4f6;
}
.recent-order-item:last-child { border-bottom:none; }

/* ── Color Variant Swatches ───────────────────────────────── */
.color-swatch-row { display:flex; gap:6px; flex-wrap:wrap; margin-top:6px; }
.color-swatch {
  width:28px; height:28px; border-radius:50%; cursor:pointer;
  border:2px solid transparent; transition:all .2s; position:relative;
}
.color-swatch:hover, .color-swatch.selected {
  border-color:var(--primary); transform:scale(1.15);
  box-shadow:0 2px 8px rgba(0,0,0,.15);
}
.color-swatch.selected::after {
  content:'✓'; position:absolute; inset:0; display:flex;
  align-items:center; justify-content:center; color:#fff;
  font-size:12px; font-weight:800;
  text-shadow:0 1px 2px rgba(0,0,0,.4);
}

/* Size selector */
.size-row { display:flex; gap:6px; flex-wrap:wrap; margin-top:6px; }
.size-btn {
  min-width:40px; height:36px; border:2px solid var(--border);
  border-radius:8px; background:#fff; cursor:pointer;
  font-family:'Sora',sans-serif; font-weight:700; font-size:12px;
  color:#374151; display:flex; align-items:center; justify-content:center;
  padding:0 12px; transition:all .2s;
}
.size-btn:hover, .size-btn.selected {
  border-color:var(--primary); background:var(--primary); color:#fff;
}

/* ── Footer V7 Nykaa-style trust + social ─────────────────── */
.footer-social-strip {
  text-align:center; padding:28px 0; border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.footer-social-strip p {
  font-family:'Sora',sans-serif; font-weight:600; font-size:14px;
  color:rgba(255,255,255,.7); margin-bottom:12px;
}

/* ── Animations ───────────────────────────────────────────── */
@keyframes slideInUp {
  from { opacity:0; transform:translateY(20px); }
  to { opacity:1; transform:none; }
}
.animate-in { animation:slideInUp .4s ease forwards; }

@keyframes pulse {
  0%,100% { transform:scale(1); }
  50% { transform:scale(1.05); }
}
.pulse-on-hover:hover { animation:pulse .6s ease; }

/* ── Scroll to top button ─────────────────────────────────── */
.scroll-top {
  position:fixed; bottom:80px; right:16px; width:44px; height:44px;
  border-radius:50%; background:#fff; border:1px solid var(--border);
  box-shadow:0 4px 16px rgba(0,0,0,.1); cursor:pointer;
  display:none; align-items:center; justify-content:center;
  font-size:18px; color:var(--primary); z-index:90; transition:all .2s;
}
.scroll-top:hover { background:var(--primary); color:#fff; transform:translateY(-2px); }
.scroll-top.show { display:flex; }

/* ── Enhanced Product Slider with nav arrows ──────────────── */
.slider-wrap { position:relative; }
.slider-arrow {
  position:absolute; top:50%; transform:translateY(-50%);
  width:36px; height:36px; border-radius:50%; background:#fff;
  border:1px solid var(--border); box-shadow:0 2px 8px rgba(0,0,0,.1);
  cursor:pointer; display:flex; align-items:center; justify-content:center;
  font-size:14px; color:#374151; z-index:5; transition:all .2s;
}
.slider-arrow:hover { background:var(--primary); color:#fff; border-color:var(--primary); }
.slider-arrow.left { left:-12px; }
.slider-arrow.right { right:-12px; }
@media(max-width:768px) { .slider-arrow { display:none; } }

/* ═══ V8 — Trust Strip & Category Grid (matching screenshot) ═══ */

/* Trust Strip V2 — 5-column with FA icons */
.trust-strip-v2 {
  display:flex; border:1.5px solid var(--border); border-radius:14px;
  overflow:hidden; margin:20px 0; background:#fff;
}
.trust-v2-item {
  flex:1; padding:18px 12px; text-align:center;
  border-right:1px solid var(--border); min-width:0;
}
.trust-v2-item:last-child { border-right:none; }
.trust-v2-icon {
  width:40px; height:40px; border-radius:10px; background:#EFF6FF;
  color:var(--info); margin:0 auto 8px; display:flex;
  align-items:center; justify-content:center; font-size:18px;
}
.trust-v2-item:nth-child(1) .trust-v2-icon { background:#FEF3ED; color:var(--primary); }
.trust-v2-item:nth-child(2) .trust-v2-icon { background:#EFF6FF; color:#3B82F6; }
.trust-v2-item:nth-child(3) .trust-v2-icon { background:#FEF9C3; color:#CA8A04; }
.trust-v2-item:nth-child(4) .trust-v2-icon { background:#F0FDF4; color:#16A34A; }
.trust-v2-item:nth-child(5) .trust-v2-icon { background:#F5F3FF; color:#7C3AED; }
.trust-v2-title {
  font-family:'Sora',sans-serif; font-weight:700; font-size:12px;
  color:#1a1a2e; margin-bottom:2px;
}
.trust-v2-sub { font-size:11px; color:var(--muted); }

@media(max-width:768px) {
  .trust-strip-v2 { flex-wrap:wrap; }
  .trust-v2-item { flex:1 1 33.33%; min-width:110px; border-bottom:1px solid var(--border); }
  .trust-v2-item:nth-child(4),.trust-v2-item:nth-child(5) { flex:1 1 50%; }
  .trust-v2-item:last-child { border-right:none; }
}
@media(max-width:480px) {
  .trust-v2-item { flex:1 1 50%; padding:14px 8px; }
  .trust-v2-icon { width:34px; height:34px; font-size:15px; }
  .trust-v2-title { font-size:11px; }
}

/* Category Grid V2 — Cards with icons/images */
.cat-grid-v2 {
  display:grid; grid-template-columns:repeat(auto-fill,minmax(110px,1fr)); gap:12px;
}
.cat-card-v2 {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding:16px 10px; border-radius:14px; border:1.5px solid var(--border);
  background:#fff; text-decoration:none; transition:all .25s; cursor:pointer;
  min-height:100px;
}
.cat-card-v2:hover {
  border-color:var(--primary); transform:translateY(-3px);
  box-shadow:0 8px 24px rgba(0,0,0,.08);
}
.cat-card-v2-emoji {
  font-size:36px; margin-bottom:8px; line-height:1;
}
.cat-card-v2-img {
  width:48px; height:48px; object-fit:contain; margin-bottom:8px;
}
.cat-card-v2-name {
  font-family:'Sora',sans-serif; font-weight:600; font-size:12px;
  color:#374151; text-align:center; line-height:1.2;
}
@media(max-width:480px) {
  .cat-grid-v2 { grid-template-columns:repeat(4,1fr); gap:8px; }
  .cat-card-v2 { padding:12px 6px; min-height:80px; border-radius:10px; }
  .cat-card-v2-emoji { font-size:28px; margin-bottom:6px; }
  .cat-card-v2-name { font-size:10px; }
}

/* ═══ V8 — 5-Step Checkout ═══════════════════════════════════ */
.step-bar-v2 {
  display:flex; align-items:center; gap:0; margin-bottom:28px;
  position:relative; padding:0 10px;
}
.step-v2 {
  flex:1; text-align:center; position:relative; z-index:1;
}
.step-v2-dot {
  width:36px; height:36px; border-radius:50%; margin:0 auto 6px;
  display:flex; align-items:center; justify-content:center;
  font-size:14px; font-weight:700; transition:all .3s;
  background:#E5E7EB; color:#9CA3AF;
}
.step-v2.active .step-v2-dot { background:var(--primary); color:#fff; }
.step-v2.done .step-v2-dot { background:#10B981; color:#fff; }
.step-v2-label {
  font-family:'Sora',sans-serif; font-weight:600; font-size:11px;
  color:#9CA3AF;
}
.step-v2.active .step-v2-label { color:var(--primary); font-weight:700; }
.step-v2.done .step-v2-label { color:#10B981; }
.step-bar-v2-line {
  position:absolute; top:18px; left:10%; right:10%; height:3px;
  background:#E5E7EB; z-index:0; border-radius:4px;
}
.step-bar-v2-progress {
  height:100%; background:linear-gradient(90deg,#10B981,var(--primary));
  border-radius:4px; transition:width .4s ease;
}
@media(max-width:480px) {
  .step-v2-dot { width:30px; height:30px; font-size:12px; }
  .step-v2-label { font-size:9px; }
}

/* ═══ V8 — Vendor Size/Color Picker ══════════════════════════ */
.size-preset-row { display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.size-preset {
  padding:4px 12px; border:1.5px solid var(--border); border-radius:6px;
  font-family:'Sora',sans-serif; font-size:11px; font-weight:600;
  cursor:pointer; background:#fff; color:#374151; transition:all .15s;
}
.size-preset:hover,.size-preset.sel { border-color:var(--primary); background:var(--primary); color:#fff; }

.color-preset-row { display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.color-preset {
  width:26px; height:26px; border-radius:50%; cursor:pointer;
  border:2px solid transparent; transition:all .15s;
}
.color-preset:hover,.color-preset.sel { border-color:#333; transform:scale(1.15); }
