#empty-cart-state{max-width:560px;margin:72px auto;padding:28px 18px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}
#empty-cart-state .empty-icon{width:96px;height:96px;border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(2,6,23,0.06);border:1px solid rgba(15,23,42,0.04);position:relative}
#empty-cart-state .empty-icon i{font-size:36px;color:#6b7280}
#empty-cart-state .empty-badge{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border-radius:50%;background:#ff7a18;color:#fff;font-size:12px;font-weight:700;box-shadow:0 2px 6px rgba(0,0,0,0.12)}
#empty-cart-state .empty-label{margin-top:18px;font-weight:800;font-size:1.2rem;color:#0f172a}
#empty-cart-state .empty-cta{margin-top:18px}
#empty-cart-state .empty-cta .btn.ghost-btn{display:block;width:220px;margin:0 auto;padding:12px 18px;border-radius:999px;border:2px solid rgba(0,102,255,0.12);background:transparent;color:var(--accent);text-decoration:none;font-weight:700}
#empty-cart-state .empty-cta .btn.ghost-btn:hover{text-decoration:none;background:rgba(0,102,255,0.04)}

/* Modern mobile-first responsive styles */
:root{
  --accent:#0066ff;
  --accent-2:#00c2a8;
  --bg:#f6f8fb;
  --card:#ffffff;
  --muted:#6b7280;
  --shadow: 0 6px 18px rgba(15,23,42,0.08);
  --radius:12px;
}
*{box-sizing:border-box}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;margin:0;background:linear-gradient(180deg,#f7fbff 0%,var(--bg) 100%);color:#0f172a;-webkit-font-smoothing:antialiased}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:transparent;backdrop-filter:blur(4px)}
.homepage-topbar{position:sticky;top:0;z-index:1000;gap:12px;max-width:1200px;margin:0 auto;padding:10px 16px;background:rgba(255,255,255,.96);border-bottom:1px solid #e8eef6}
.homepage-topbar .search{min-width:0;max-width:none;margin-right:4px}
.homepage-topbar .search form{position:relative;width:100%}
.homepage-search-logo{position:absolute;top:50%;left:4px;width:48px;height:48px;object-fit:contain;transform:translateY(-50%);pointer-events:none}
.homepage-topbar .search input{min-height:42px;padding:10px 16px 10px 50px;box-shadow:0 2px 8px rgba(15,23,42,.035)}
.homepage-topbar .icon-link{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:50%;background:#f1f5f9;color:#64748b;text-decoration:none}
.homepage-topbar .cart-link{white-space:nowrap}
.corner-back{width:40px;height:40px;flex:0 0 40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e5eaf2;border-radius:12px;background:#fff;color:#334155;text-decoration:none;box-shadow:0 3px 10px rgba(15,23,42,.07);transition:background .15s ease,border-color .15s ease,transform .15s ease}
.corner-back:hover{background:#f8fafc;border-color:#cbd5e1;color:#0f172a;text-decoration:none;transform:translateY(-1px)}
.corner-back i{font-size:1rem}
.brand{display:flex;align-items:center;gap:10px}
.brand .logo{width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--accent-2));display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700}
.brand .logo-image{display:block;width:64px;height:64px;flex:0 0 64px;object-fit:contain}
.brand h1{margin:0;font-size:1.1rem}
.search{flex:1;margin:0 12px}
.search input{width:100%;padding:10px 12px;border-radius:999px;border:1px solid #e6eef8;background:#fff}
.cart-link{font-size:0.95rem;color:var(--muted);text-decoration:none}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:12px}
.category-boxes{display:flex;gap:8px;padding:10px 12px 4px;max-width:1200px;margin:0 auto;overflow-x:auto;scroll-snap-type:x proximity;-ms-overflow-style:none;scrollbar-width:none}
.category-boxes::-webkit-scrollbar{display:none}
.category-box{display:flex;flex:0 0 calc((100% - 24px) / 4);min-width:0;flex-direction:column;gap:5px;color:#0f172a;text-align:center;text-decoration:none;scroll-snap-align:start}
.category-box-image{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1 / 1;border-radius:8px;overflow:hidden;background:#eef2f7}
.category-box-image img{display:block;width:100%;height:100%;object-fit:cover}
.category-box-empty{font-size:.75rem;color:var(--muted)}
.category-box-label{min-height:2.2em;font-size:.78rem;line-height:1.15;overflow:hidden;text-overflow:ellipsis}
.category-box-placeholder .category-box-image{background:#eef2f7}
.category-box-placeholder .category-box-label{min-height:0}
.homepage-category-slider{max-width:1200px;margin:18px auto 0;padding:0 12px}
.homepage-category-slider-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.homepage-category-slider-header h2{margin:0;font-size:1.1rem}
.homepage-category-slider-header a{color:var(--accent);font-size:.82rem;font-weight:700;text-decoration:none}
.homepage-category-track{display:flex;gap:12px;overflow-x:auto;padding:4px 2px 12px;scroll-snap-type:x proximity;-ms-overflow-style:none;scrollbar-width:none}
.homepage-category-track::-webkit-scrollbar{display:none}
.homepage-category-card{display:flex;flex:0 0 132px;flex-direction:column;gap:5px;color:#0f172a;text-align:center;text-decoration:none;scroll-snap-align:start}
.homepage-category-image{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1 / 1;border-radius:10px;overflow:hidden;background:#eef2f7;box-shadow:0 6px 16px rgba(15,23,42,.06)}
.homepage-category-image img{display:block;width:100%;height:100%;object-fit:cover}
.homepage-category-card strong{font-size:.82rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.homepage-category-card small{color:var(--muted);font-size:.7rem}
.homepage-seller-slider{max-width:1200px;margin:18px auto 0;padding:0 12px}
.homepage-seller-slider-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.homepage-seller-slider-header h2{margin:0;font-size:1.1rem}
.homepage-seller-slider-header a{color:var(--accent);font-size:.82rem;font-weight:700;text-decoration:none}
.homepage-seller-track{display:flex;gap:12px;overflow-x:auto;padding:4px 2px 12px;scroll-snap-type:x proximity;-ms-overflow-style:none;scrollbar-width:none}
.homepage-seller-track::-webkit-scrollbar{display:none}
.homepage-seller-card{display:flex;flex:0 0 132px;flex-direction:column;gap:5px;color:#0f172a;text-align:center;text-decoration:none;scroll-snap-align:start}
.homepage-seller-image{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1 / 1;border-radius:10px;overflow:hidden;background:#eef2f7;box-shadow:0 6px 16px rgba(15,23,42,.06)}
.homepage-seller-image img{display:block;width:100%;height:100%;object-fit:cover}
.homepage-seller-card strong{font-size:.82rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.homepage-brand-slider{max-width:1200px;margin:18px auto 0;padding:0 12px}
.homepage-brand-slider h2{margin:0 0 10px;font-size:1.1rem}
.homepage-brand-track{display:flex;gap:16px;overflow-x:auto;padding:4px 2px 12px;scroll-snap-type:x proximity;-ms-overflow-style:none;scrollbar-width:none;overscroll-behavior-x:contain}
.homepage-brand-track::-webkit-scrollbar{display:none}
.homepage-brand-card{display:flex;flex:0 0 84px;flex-direction:column;align-items:center;gap:7px;color:#0f172a;text-align:center;text-decoration:none;scroll-snap-align:start}
.homepage-brand-image{display:flex;width:72px;height:72px;align-items:center;justify-content:center;overflow:hidden;border:1px solid #e8edf4;border-radius:50%;background:#fff;box-shadow:0 5px 14px rgba(15,23,42,.08)}
.homepage-brand-image img{display:block;width:100%;height:100%;object-fit:cover}
.homepage-brand-card strong{max-width:84px;overflow:hidden;font-size:.76rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.homepage-brand-results-title{max-width:1200px;margin:18px auto 0;padding:0 12px;font-size:1.1rem}
.category-page{max-width:980px;margin:18px auto;padding:18px}
.category-page h2{margin:0 0 16px}
.category-choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.category-choice{display:flex;flex-direction:column;gap:5px;color:#0f172a;text-align:center;text-decoration:none}
.category-choice-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1;border-radius:8px;overflow:hidden;background:#eef2f7}
.category-choice-image img{display:block;width:100%;height:100%;object-fit:cover}
.category-choice small{color:var(--muted)}
.category-suggestions{margin-bottom:24px}
.category-suggestions h3,.category-products-title{margin:0 0 12px}
.category-suggestions .category-choice-grid{display:flex;gap:12px;overflow-x:auto;padding:2px 2px 10px;scroll-snap-type:x proximity;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.category-suggestions .category-choice{flex:0 0 104px;scroll-snap-align:start}
.category-suggestions .category-choice-image{width:104px}
.category-inline-suggestions{grid-column:1 / -1;min-width:0;margin:4px 0 12px}
.category-inline-suggestions h3{margin:0 0 10px}
.category-inline-suggestions .category-choice-grid{display:flex;gap:12px;overflow-x:auto;padding:2px 2px 10px;scroll-snap-type:x proximity;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.category-inline-suggestions .category-choice{flex:0 0 104px;scroll-snap-align:start}
.category-inline-suggestions .category-choice-image{width:104px}
.category-product-grid{padding:0;max-width:none}
.seller-page{max-width:1200px;margin:18px auto;padding:12px 28px 32px}
.seller-header{display:flex;align-items:center;gap:18px;padding:18px 20px;border-radius:14px;background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;box-shadow:0 14px 30px rgba(15,23,42,.16)}
.seller-header-image{width:92px;height:92px;flex:0 0 92px;border-radius:12px;overflow:hidden;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;color:#dbeafe}
.seller-header-image img{width:100%;height:100%;object-fit:cover}
.seller-eyebrow{margin:0 0 4px;color:#bfdbfe;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}
.seller-header h2{margin:0;font-size:1.7rem}
.seller-products-title{margin:24px 0 0;font-size:1.2rem}
.seller-product-grid{padding:12px 0 0;max-width:none}
.seller-empty{color:var(--muted);padding:18px 0}
.notification-carousel{position:relative;width:min(980px,calc(100% - 24px));margin:12px auto 0;overflow:hidden;border-radius:10px;background:#eef2f7;aspect-ratio:3 / 1;box-shadow:0 8px 20px rgba(15,23,42,0.08)}
.notification-track{display:flex;gap:10px;width:max-content;height:100%;transition:transform .45s ease;cursor:grab;touch-action:pan-y;user-select:none}
.notification-track.dragging{cursor:grabbing;transition:none}
.notification-slide{display:block;flex:0 0 min(78vw,760px);width:min(78vw,760px);height:100%;overflow:hidden;border-radius:8px;opacity:.72;transition:opacity .45s ease;text-decoration:none}
.notification-slide.active{opacity:1}
.notification-slide img{display:block;width:100%;height:100%;object-fit:cover}
.notification-page-header{position:relative;width:min(980px,calc(100% - 24px));margin:12px auto 0;overflow:hidden;border-radius:10px;background:#eef2f7;aspect-ratio:3 / 1;box-shadow:0 8px 20px rgba(15,23,42,0.08)}
.notification-page-header img{display:block;width:100%;height:100%;object-fit:cover}
.notification-page-header .back-btn{position:absolute;left:10px;top:10px;z-index:1;background:rgba(255,255,255,0.9);padding:8px 12px;border-radius:8px;color:#0f172a;text-decoration:none;box-shadow:0 4px 12px rgba(15,23,42,0.12)}
.notification-products{max-width:980px;margin:12px auto}
.notification-empty{max-width:980px;margin:24px auto;text-align:center;color:var(--muted)}
.notification-dots{display:none}
.notification-dot{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,0.65);cursor:pointer}
.homepage-message-bar{width:min(1200px,calc(100% - 24px));height:34px;margin:9px auto 2px;overflow:hidden;border-radius:5px;background:#0066ff;color:#fff;box-shadow:0 3px 10px rgba(0,102,255,.16)}
.homepage-message-track{display:flex;width:100%;height:100%;box-sizing:border-box;align-items:center;gap:48px;overflow-x:auto;padding:0 12px;scrollbar-width:none;white-space:nowrap;cursor:grab;touch-action:pan-x;user-select:none;-webkit-text-size-adjust:100%}
.homepage-message-track::-webkit-scrollbar{display:none}
.homepage-message-track:active{cursor:grabbing}
.homepage-message-track span{display:block;flex:0 0 max-content;width:max-content;min-width:100%;font-size:13px;font-weight:650;line-height:16px}
@media(prefers-reduced-motion:reduce){.homepage-message-track{scroll-behavior:auto}}
.homepage-contact-strip{display:flex;width:max-content;max-width:calc(100% - 24px);justify-content:center;margin:8px auto 12px;padding:5px 10px;border:1px solid rgba(0,102,255,.14);border-radius:999px;background:linear-gradient(110deg,#f1f7ff,#fff,#eef6ff);box-shadow:0 4px 14px rgba(15,23,42,.07)}
.homepage-contact-track{display:flex;width:100%;justify-content:center}
.homepage-contact-group{display:flex;flex:0 1 auto;align-items:center;justify-content:center;gap:6px}
.homepage-contact-label{padding:0 6px;color:#1e3a5f;font-size:.8rem;font-weight:750;white-space:nowrap}
.homepage-contact-strip a{display:inline-flex;flex:0 0 auto;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;color:#1e3a5f;text-decoration:none;font-size:.8rem;font-weight:750;white-space:nowrap;transition:background-color .18s ease,color .18s ease,transform .18s ease}
.homepage-contact-strip a:hover,.homepage-contact-strip a:focus-visible{transform:translateY(-1px);background:#e4efff;color:#0055db;outline:none}
.homepage-contact-strip a:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--accent)}
.homepage-contact-group a:nth-of-type(1) i{color:#1877f2;animation-delay:0s}
.homepage-contact-group a:nth-of-type(2) i{color:#c13584;animation-delay:.2s}
.homepage-contact-strip i{font-size:.95rem;animation:homepage-contact-icon-live 1.6s ease-in-out infinite}
@keyframes homepage-contact-icon-live{0%,100%{transform:scale(1);filter:drop-shadow(0 0 0 transparent)}50%{transform:scale(1.6);filter:drop-shadow(0 3px 6px currentColor)}}
@media(max-width:420px){.homepage-topbar{gap:6px;padding-right:10px;padding-left:10px}.homepage-topbar .search{min-width:0;margin:0 4px}.homepage-topbar .search input{padding-right:10px;padding-left:46px;font-size:.83rem}.homepage-search-logo{left:4px;width:44px;height:44px}.homepage-topbar .cart-link{font-size:.78rem}.homepage-contact-strip{width:calc(100% - 24px);padding:4px 3px}.homepage-contact-group{flex-wrap:nowrap;gap:0}.homepage-contact-label{padding:0 3px;font-size:.7rem}.homepage-contact-strip a{gap:4px;padding:6px 4px;font-size:.7rem}.homepage-contact-strip i{font-size:.85rem}}
@media(prefers-reduced-motion:reduce){.homepage-contact-strip i{animation:none}.homepage-contact-strip a{transition:none}}
.homepage-social-links{display:flex;justify-content:center;gap:14px;margin-top:8px}
.homepage-social-links a{color:var(--accent);font-size:.85rem;font-weight:650;text-decoration:none}
.homepage-social-links a:hover{text-decoration:underline}
.capify-info-page{width:min(900px,calc(100% - 32px));margin:24px auto 48px}
.capify-info-header,.capify-info-section{margin-bottom:18px;padding:clamp(18px,4vw,32px);border:1px solid rgba(148,163,184,.2);border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.05)}
.capify-info-eyebrow{margin:0 0 8px;color:var(--accent);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.capify-info-header h1{margin:0 0 14px;font-size:clamp(1.6rem,4vw,2.2rem)}
.capify-info-page p{color:#475569;line-height:1.7}
.capify-info-page a{color:var(--accent)}
.capify-info-section h2{margin:0 0 16px;font-size:1.25rem}
.capify-info-faq{padding:14px 0;border-top:1px solid #e8eef6}
.capify-info-faq h3{margin:0 0 6px;font-size:1rem}
.capify-info-faq p{margin:0}
.capify-info-social{padding:0 6px;text-align:center}
.notification-dot.active{background:#fff;transform:scale(1.25)}
.fire-sale-section{max-width:1200px;margin:18px auto 0;padding:0 12px;}
.fire-sale-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;}
.fire-sale-title-wrap{display:flex;align-items:center;gap:8px;}
.fire-sale-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:rgba(239,68,68,0.12);color:#dc2626;box-shadow:inset 0 0 0 1px rgba(239,68,68,0.15);font-size:1rem;}
.fire-sale-header h2{margin:0;font-size:clamp(1.2rem,2vw,2rem);letter-spacing:.08em;color:#0f172a;}
.fire-sale-see-all{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:rgba(220,38,38,0.08);border:1px solid rgba(220,38,38,0.12);color:#991b1b;text-decoration:none;font-weight:800;font-size:0.8rem;}
.fire-sale-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x proximity;padding:8px 2px 12px;-ms-overflow-style:none;scrollbar-width:none;}
.fire-sale-track::-webkit-scrollbar{display:none;}
.fire-sale-card{position:relative;flex:0 0 188px;scroll-snap-align:start;}
.fire-sale-card-link{display:block;position:relative;background:linear-gradient(180deg,#fff 0%, #fff7f7 100%);border:1px solid rgba(239,68,68,0.12);border-radius:14px;overflow:visible;text-decoration:none;color:#0f172a;box-shadow:0 12px 26px rgba(15,23,42,0.06);transition:transform .18s ease, box-shadow .18s ease;}
.fire-sale-card-link:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(15,23,42,0.1);}
.fire-sale-discount{position:absolute;top:8px;left:8px;z-index:2;padding:5px 7px;border-radius:999px;background:linear-gradient(135deg,#ef4444,#f97316);color:#fff;font-size:.62rem;font-weight:800;letter-spacing:.04em;box-shadow:0 6px 12px rgba(239,68,68,0.22);}
.fire-sale-image-wrap{aspect-ratio:1 / 1;width:100%;background:#fff;overflow:hidden;border-radius:14px 14px 0 0;}
.fire-sale-image-wrap img{display:block;width:100%;height:100%;object-fit:contain;}
.fire-sale-body{padding:10px 10px 11px;}
.fire-sale-body h3{margin:0 0 6px;font-size:.9rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.fire-sale-price-row{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;margin-bottom:6px;}
.fire-sale-price{font-size:1.02rem;font-weight:900;color:#dc2626;letter-spacing:-0.04em;}
.fire-sale-old-price{font-size:.72rem;color:#64748b;text-decoration:line-through;}
.fire-sale-stock-row{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;font-size:.68rem;color:#7f1d1d;opacity:.9;font-weight:700;}
.fire-sale-stock-row strong{font-size:1rem;line-height:1;color:#b91c1c;letter-spacing:-0.04em;}
.fire-sale-stock-row small{margin-left:auto;font-size:.66rem;color:#991b1b;font-weight:800;}
.fire-sale-countdown{position:absolute;right:-8px;top:8px;z-index:5;display:flex;align-items:center;gap:3px;padding:3px 5px;border-radius:8px;background:rgba(255,255,255,0.10);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.22);box-shadow:0 8px 18px rgba(15,23,42,.08);}
.fire-sale-time-pill{display:inline-flex;align-items:baseline;justify-content:center;min-width:22px;padding:2px 3px;border-radius:6px;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.16);color:#b91c1c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
.fire-sale-time-pill strong{font-size:.72rem;line-height:1;font-weight:800;letter-spacing:-0.04em;}
.fire-sale-time-pill em{margin-left:1px;font-style:normal;font-size:.5rem;font-weight:700;opacity:.8;}
.fire-sale-meter{margin-top:7px;height:7px;border-radius:999px;background:#fecaca;overflow:hidden;}
.fire-sale-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ef4444,#fb7185);}
.fire-sale-page{max-width:1200px;margin:0 auto 40px;padding:0 12px;}
.fire-sale-hero{margin-top:18px;padding:28px 24px;border-radius:24px;background:linear-gradient(135deg,#0f172a,#7f1d1d 48%,#ef4444 100%);color:#fff;box-shadow:0 24px 48px rgba(127,29,29,.28);}
.fire-sale-hero__pill{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
.fire-sale-hero h1{margin:16px 0 8px;font-size:clamp(2rem,5vw,3.5rem);letter-spacing:.08em;}
.fire-sale-hero p{margin:0;color:rgba(255,255,255,.82);max-width:620px;}
.fire-sale-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:22px;}
.fire-sale-list-card{display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,#ffffff 0%, #fffaf8 100%);border:1px solid rgba(148,163,184,.18);border-radius:22px;box-shadow:0 16px 38px rgba(15,23,42,.08);transition:transform .18s ease, box-shadow .18s ease;}
.fire-sale-list-card:hover{transform:translateY(-3px);box-shadow:0 22px 44px rgba(15,23,42,.12);}
.fire-sale-list-card__media{position:relative;aspect-ratio:1 / 1;width:100%;background:#fff;overflow:hidden;}
.fire-sale-list-card__media img{display:block;width:100%;height:100%;object-fit:contain;}
.fire-sale-discount{position:absolute;top:12px;left:12px;z-index:2;padding:6px 9px;border-radius:999px;background:linear-gradient(135deg,#ef4444,#f97316);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.04em;box-shadow:0 10px 18px rgba(239,68,68,.28);}
.fire-sale-custom-badge{position:absolute;top:12px;right:12px;z-index:3;max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 9px;border-radius:999px;background:#1d4ed8;color:#fff;font-size:.68rem;font-weight:800;box-shadow:0 6px 14px rgba(29,78,216,.2)}
.fire-sale-list-card__body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:12px;}
.fire-sale-list-card__body h2{margin:0;font-size:1.2rem;line-height:1.35;color:#0f172a;}
.fire-sale-list-card__meta{margin:0;color:#64748b;font-size:.82rem;line-height:1.5;}
.fire-sale-price-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:2px;}
.fire-sale-price{font-size:1.2rem;font-weight:900;color:#dc2626;letter-spacing:-0.04em;}
.fire-sale-old-price{font-size:.78rem;color:#64748b;text-decoration:line-through;}
.fire-sale-timer{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.fire-sale-timer span{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:52px;padding:8px 10px;border-radius:10px;background:#fff1f2;border:1px solid rgba(239,68,68,.12);color:#b91c1c;font-size:.75rem;font-weight:800;box-shadow:inset 0 1px 0 rgba(255,255,255,.7);}
.fire-sale-timer strong{font-size:1rem;line-height:1;letter-spacing:-0.04em;}
.fire-sale-list-card .btn{width:100%;justify-content:center;padding:12px 16px;border-radius:12px;font-weight:800;background:linear-gradient(135deg,#0ea5e9,#2563eb);box-shadow:0 14px 24px rgba(37,99,235,.18);}
.fire-sale-empty{padding:30px 20px;text-align:center;color:#475569;font-size:1rem;}
.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;border:1px solid rgba(15,23,42,0.04);transition:transform .18s ease,box-shadow .18s ease}
.card:hover{transform:translateY(-6px);box-shadow:0 18px 30px rgba(15,23,42,0.12)}
.card .thumb{height:auto;aspect-ratio:1 / 1;background-color:#e5e7eb;background-image:url('/assets/images/Capify%20logo.png');background-repeat:no-repeat;background-size:min(48%,140px) auto;background-position:center}
.card .thumb img{display:block;width:100%;height:100%;object-fit:cover}
.card .card-body{padding:12px}
.card h2{font-size:1rem;margin:6px 0}
.product-card{position:relative;display:flex;flex-direction:column;height:100%}
.product-card .card-top{position:relative}
.product-card .card-top{flex:1}
.product-card-actions{margin-top:auto}
.product-card-fire-pill{position:absolute;top:10px;left:10px;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:4px 9px 4px 5px;border-radius:999px;background:linear-gradient(135deg,rgba(255,255,255,0.18),rgba(239,68,68,0.34),rgba(249,115,22,0.25));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 10px 18px rgba(239,68,68,0.18),inset 0 1px 0 rgba(255,255,255,0.24);border:1px solid rgba(255,255,255,0.12)}
.product-card-fire-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:rgba(255,255,255,0.08);color:#fff;font-size:0.8rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.14),0 0 10px rgba(251,146,60,0.35)}
.product-card-fire-label{font-size:0.6rem;letter-spacing:0.08em;font-weight:800;text-transform:uppercase;color:rgba(255,255,255,0.94);text-shadow:0 1px 2px rgba(120,29,29,0.35)}
.price{color:var(--accent);font-weight:700}
.price-before{color:var(--muted);text-decoration:line-through;margin-right:8px;font-weight:600;font-size:0.95rem}
.price .price-before{text-decoration:line-through;color:var(--muted)}
.footer{padding:18px;text-align:center;color:var(--muted)}
.btn{background:var(--accent);color:#fff;padding:10px 14px;border-radius:10px;border:none;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px}
.card .btn{display:block;width:100%;text-align:center;padding:12px 14px;border-radius:10px;background:var(--accent);color:#fff;text-decoration:none;font-weight:700}
.btn.secondary{background:#fff;color:var(--accent);border:1px solid rgba(0,102,255,0.08)}
.login-box{max-width:420px;margin:36px auto;padding:18px;border-radius:12px;background:var(--card);box-shadow:var(--shadow)}
.product-detail{display:flex;flex-direction:column;padding:16px;gap:16px}
.product-image{width:100%;height:auto;border-radius:12px;object-fit:cover}
.product-info{padding:8px}
.product-info-card{background:rgba(255,255,255,0.72);border:1px solid rgba(148,163,184,0.18);border-radius:20px;padding:18px 18px 16px;box-shadow:0 18px 40px rgba(15,23,42,0.06);backdrop-filter:blur(10px)}
.product-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.product-heading-row h2{margin:0;font-size:clamp(1.8rem,2.5vw,2.5rem);line-height:1.15;color:#0f172a;letter-spacing:-0.04em}
.detail-meta{font-size:0.98rem;color:var(--muted);margin-bottom:10px}
.price-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid rgba(148,163,184,0.14)}
.price-row .price-before{font-size:1rem;color:var(--muted);text-decoration:line-through}
.price-row .price-now{font-size:clamp(1.7rem,2vw,2.3rem);font-weight:900;letter-spacing:-0.04em;color:var(--accent)}
.detail-stock{margin-bottom:18px;font-size:0.98rem;color:#334155}
.detail-stock strong{color:#0f172a}
.stock-count{color:rgba(190, 61, 61, 0.82);font-weight:700}
.product-purchase-form{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 18px}
.qty-label{display:flex;align-items:center;gap:10px;margin:0;font-size:0.95rem;font-weight:700;color:#0f172a}
.qty-label input{width:78px;padding:10px 12px;border:1px solid #dfe8f3;border-radius:12px;font-size:1rem;color:#0f172a;background:#fff;box-shadow:inset 0 1px 2px rgba(15,23,42,0.04)}
.product-purchase-form .btn{padding:12px 18px;border-radius:12px;font-weight:800;min-width:170px;justify-content:center}
.cart-list{list-style:none;padding:0;margin:0}
.product-row{display:flex;justify-content:space-between;padding:10px;border-bottom:1px solid #f1f5f9}
.product-form{padding:12px;border-top:1px solid #f1f5f9}
.error{color:#b00020}
.meta{color:var(--muted);font-size:0.9rem}

.cart-panel{background:linear-gradient(180deg,#ffffff, #f7fbff);color:#0f172a;padding:24px;border-radius:16px;max-width:900px;margin:24px auto;box-shadow:0 12px 32px rgba(2,6,23,0.08);border:1px solid rgba(15,23,42,0.04)}
.cart-item{display:flex;align-items:center;gap:20px;padding:20px;border-radius:16px;background:#ffffff;margin-bottom:16px;border:1px solid #f1f5f9;transition:transform .18s ease,box-shadow .18s ease}
.cart-item:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(2,6,23,0.08)}
.ci-link{display:flex;align-items:center;gap:20px;text-decoration:none;color:inherit;flex:1}
.ci-link:hover .ci-title{color:var(--accent)}
.ci-thumb{width:80px;height:80px;flex:0 0 80px;border-radius:12px;overflow:hidden;background:#f8fafc;display:flex;align-items:center;justify-content:center}
.ci-thumb img{width:100%;height:100%;object-fit:cover}
.ci-info{flex:1;min-width:0}
.ci-title{font-weight:700;color:#0f172a;font-size:1.1rem;margin-bottom:4px}
.ci-price{color:var(--accent);font-weight:800;font-size:1.05rem;margin-top:8px}
.ci-controls{display:flex;flex-direction:column;gap:8px;align-items:center;min-width:80px}
.qty-form{display:flex}
.qty-btn{background:#f1f5f9;border:0;padding:6px 12px;border-radius:8px;cursor:pointer;color:var(--muted);font-weight:700;font-size:1.1rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center}
.qty-btn:hover{background:#e5e9f0;color:#0f172a}
.qty-val{min-width:40px;text-align:center;font-weight:700;font-size:1.1rem;padding:4px 0}
.ci-sub{font-weight:800;color:#0f172a;font-size:1.1rem;min-width:80px;text-align:right}
.checkout-panel{display:flex;align-items:center;justify-content:space-between;padding-top:20px;border-top:2px solid #eef2f8;margin-top:16px}
.checkout-panel--sticky{position:sticky;bottom:88px;z-index:9;padding:16px 18px;border:1px solid rgba(148,163,184,0.18);background:rgba(255,255,255,0.9);backdrop-filter:blur(10px);border-radius:18px;box-shadow:0 18px 40px rgba(15,23,42,0.08);margin-top:18px}
.checkout-total{color:var(--muted);font-size:1rem;display:flex;flex-direction:column;gap:2px}
.checkout-total__label{font-size:0.76rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:#64748b}
.checkout-amount{display:block;color:var(--accent);font-size:1.8rem;font-weight:900;letter-spacing:-0.04em}
.checkout-actions .btn.checkout-btn{padding:14px 24px;border-radius:12px;font-size:1.1rem}

/* Mobile responsive cart */
@media (max-width: 768px) {
  .cart-panel{padding:16px;max-width:100%;margin:16px 8px}
  .cart-item{flex-direction:column;gap:16px;padding:16px;text-align:center}
  .ci-link{flex-direction:column;gap:12px;text-align:center}
  .ci-info{text-align:center}
  .ci-controls{flex-direction:row;justify-content:center;min-width:auto;margin-top:8px}
  .ci-sub{text-align:center;margin-top:8px;font-size:1.2rem}
  .ci-actions{margin-top:12px}
  .checkout-panel{flex-direction:column;gap:16px;text-align:center}
  .checkout-total{margin-bottom:8px}
}

@media (max-width: 480px) {
  .product-card .card-body{padding:8px 10px}
  .product-card h2{font-size:0.9rem;margin:3px 0}
  .product-card .price{margin:6px 0;font-size:0.9rem}
  .product-card .price-before{font-size:0.82rem;margin-right:4px}
  .product-card-actions{padding:6px !important}
  .product-card .btn{padding:9px 10px;font-size:0.85rem}
  .cart-item{padding:12px}
  .ci-thumb{width:70px;height:70px}
  .ci-title{font-size:1rem}
  .ci-price{font-size:1rem}
  .qty-btn{width:28px;height:28px;font-size:1rem}
  .qty-val{min-width:35px;font-size:1rem}
}

/* Recently removed */
#recently-removed{background:#fff;border-radius:12px;padding:12px;margin-top:14px;border:1px solid #f1f5f9}
.removed-item{padding:8px;border-bottom:1px dashed #eef2f8}
.removed-item:last-child{border-bottom:none}
.undo-remove{background:transparent;border:1px solid rgba(0,102,255,0.08);color:var(--accent);padding:8px 10px;border-radius:10px;cursor:pointer}
.undo-remove:hover{background:rgba(0,102,255,0.06)}

.checkout-topbar{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:82px;padding:12px max(22px,calc((100% - 1000px)/2));overflow:hidden;background:linear-gradient(110deg,#f3f8ff 0%,#fff 48%,#f4fbfa 100%);border-bottom:1px solid #e3eaf2;box-shadow:0 5px 20px rgba(16,24,40,.055)}
.checkout-topbar:after{position:absolute;z-index:-1;right:0;bottom:0;left:0;height:3px;background:linear-gradient(90deg,#0866ff 0%,#09bba5 100%);content:""}
.checkout-topbar .brand{z-index:1;flex:0 0 auto;width:auto;height:auto;justify-content:flex-start;padding:0;border-radius:0;background:transparent}
.checkout-topbar .brand .logo-image{width:58px;height:54px;flex:0 0 58px;object-fit:contain}
.checkout-topbar h1{grid-column:2;margin:0;color:#15243a;font-size:1.45rem;font-weight:850;line-height:1.2;text-align:center}
.checkout-topbar h1 span{position:relative;display:inline-block}
.checkout-topbar h1 span:after{position:absolute;right:0;bottom:-8px;left:0;width:28px;height:3px;margin:auto;border-radius:2px;background:#0866ff;content:""}
.checkout-secure-label{position:absolute;top:8px;right:max(12px,calc((100% - 1000px)/2));display:flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid #d8eee9;border-radius:999px;background:rgba(255,255,255,.92);color:#147767;font-size:.72rem;font-weight:750;line-height:1;white-space:nowrap}
.checkout-secure-label i{display:grid;width:20px;height:20px;place-items:center;border-radius:50%;background:#e9faf5;font-size:.65rem}
@media(max-width:480px){.checkout-topbar{grid-template-columns:1fr auto 1fr;min-height:72px;padding:10px 16px}.checkout-topbar .brand .logo-image{width:48px;height:46px;flex-basis:48px}.checkout-topbar h1{font-size:1.18rem}.checkout-secure-label{top:5px;right:7px;gap:4px;padding:3px 6px;font-size:.62rem}.checkout-secure-label i{width:18px;height:18px;font-size:.6rem}}

.checkout-success-panel .success-actions{display:grid;gap:10px;margin-top:20px}
.checkout-success-panel{grid-column:1/-1}
.confirmation-welcome{grid-column:1/-1;display:flex;align-items:center;gap:14px;margin:0 0 4px;padding:16px;border:1px solid #dceaf7;border-radius:12px;background:linear-gradient(115deg,#f2f8ff 0%,#f7fbff 68%,#f0fbf8 100%)}
.confirmation-welcome>i{display:flex;flex:0 0 44px;width:44px;height:44px;align-items:center;justify-content:center;border-radius:50%;background:#00bfa6;color:#fff;font-size:1.35rem}
.confirmation-welcome h2{margin:0;color:#075ff5;font-size:1.2rem;font-weight:850;line-height:1.25}
.confirmation-welcome p{margin:4px 0 0;color:#5c6878;font-size:.92rem;line-height:1.45;overflow-wrap:anywhere}
.checkout-success-panel .confirmation-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin-top:16px;padding:4px 16px;background:#fff;border:1px solid #e9edf2;border-radius:12px;box-shadow:0 3px 12px rgba(15,23,42,.045)}
.checkout-success-panel .confirmation-detail{display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0;padding:12px 0;border-bottom:1px solid #edf0f3}
.checkout-success-panel .confirmation-detail:nth-last-child(-n+2){border-bottom:0}
.checkout-success-panel .confirmation-detail>span{color:#697586;font-size:.76rem;font-weight:650}
.checkout-success-panel .confirmation-detail>strong{color:#17212f;font-size:.9rem;font-weight:700;line-height:1.4;overflow-wrap:anywhere}
.checkout-success-panel .confirmation-detail-total{padding:10px 12px;margin:5px -12px;background:#f2f7ff;border:0;border-radius:8px}
.checkout-success-panel .confirmation-detail-total>strong{color:#075ff5;font-size:1.05rem;font-weight:850}
.checkout-success-panel .confirmation-detail-pickup{grid-column:1/-1}
.checkout-success-panel .confirmation-detail-pickup>strong{line-height:1.55}
.checkout-success-panel .success-actions .success-action-primary,
.checkout-success-panel .success-actions .success-action-secondary,
.checkout-success-panel .success-actions .success-action-tertiary{display:flex;align-items:center;justify-content:flex-start;gap:12px;width:100%;min-height:52px;padding:0 16px;border:1px solid transparent;border-radius:10px;text-align:left;text-decoration:none;font-weight:750;transition:background-color .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease}
.checkout-success-panel .success-actions .success-action-primary{background:#075ff5;color:#fff;box-shadow:0 5px 12px rgba(7,95,245,.16)}
.checkout-success-panel .success-actions .success-action-primary:hover{background:#004fd2;box-shadow:0 7px 16px rgba(7,95,245,.22);transform:translateY(-1px)}
.checkout-success-panel .success-actions .success-action-secondary{background:#fff;color:#075ff5;border-color:#d8e4f5}
.checkout-success-panel .success-actions .success-action-secondary:hover{background:#f5f9ff;border-color:#9bbcf4;transform:translateY(-1px)}
.checkout-success-panel .success-actions .success-action-tertiary{background:#f3f6fa;color:#344054;border-color:#e8edf3}
.checkout-success-panel .success-actions .success-action-tertiary:hover{background:#eaf0f7;border-color:#d8e1eb;transform:translateY(-1px)}
.checkout-success-panel .success-actions .success-action-primary>i:first-child,
.checkout-success-panel .success-actions .success-action-secondary>i:first-child,
.checkout-success-panel .success-actions .success-action-tertiary>i:first-child{width:20px;text-align:center}
.checkout-success-panel .success-actions .success-action-primary .success-action-arrow,
.checkout-success-panel .success-actions .success-action-secondary .success-action-arrow,
.checkout-success-panel .success-actions .success-action-tertiary .success-action-arrow{margin-left:auto;font-size:.85rem;opacity:.72}
@media(min-width:620px){.checkout-success-panel .success-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.checkout-success-panel .success-actions .success-action-primary{grid-column:1/-1}}
@media(max-width:480px){.checkout-success-panel .confirmation-details{grid-template-columns:1fr;padding:4px 13px}.checkout-success-panel .confirmation-detail{padding:10px 0}.checkout-success-panel .confirmation-detail:nth-last-child(-n+2){border-bottom:1px solid #edf0f3}.checkout-success-panel .confirmation-detail:last-child{border-bottom:0}.checkout-success-panel .confirmation-detail-total{margin:4px -9px;padding:10px}.checkout-success-panel .confirmation-detail-pickup{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.checkout-success-panel .success-actions a{transition:none}}

.homepage-options-open{overflow:hidden}
.homepage-options-overlay{position:fixed;inset:0;z-index:10020;display:flex;align-items:flex-end;justify-content:center}
.homepage-options-overlay[hidden]{display:none}
.homepage-options-backdrop{position:absolute;inset:0;border:0;background:rgba(17,24,39,.52)}
.homepage-options-sheet{position:relative;width:min(100%,560px);max-height:min(88vh,760px);overflow:auto;padding:0 16px max(16px,env(safe-area-inset-bottom));border-radius:18px 18px 0 0;background:#fff;box-shadow:0 -12px 40px rgba(15,23,42,.2);animation:homepage-sheet-in .2s ease-out}
.homepage-options-header{display:flex;align-items:center;justify-content:space-between;min-height:54px;border-bottom:1px solid #edf0f4}
.homepage-options-header h2{margin:0;font-size:1rem;font-weight:750}
.homepage-options-close{width:36px;height:36px;border:0;background:transparent;color:#3f4650;font-size:1.65rem;line-height:1;cursor:pointer}
.homepage-options-product{display:flex;gap:12px;align-items:center;padding:14px 0}
.homepage-options-image{width:68px;height:68px;flex:0 0 68px;border-radius:8px;background:#f3f5f7;object-fit:cover}
.homepage-options-product-info{min-width:0;display:grid;gap:5px}
.homepage-options-product-title{margin:0;overflow-wrap:anywhere;font-size:.94rem;font-weight:550;line-height:1.35}
.homepage-options-product-price{font-size:1rem;color:#111827}
.homepage-options-groups{display:grid;gap:16px;padding:4px 0 16px}
.homepage-option-group h3{margin:0 0 9px;font-size:.85rem;font-weight:700}
.homepage-option-choices{display:flex;flex-wrap:wrap;gap:8px}
.homepage-option-chip{min-height:38px;padding:7px 14px;border:1px solid #c8cdd3;border-radius:999px;background:#fff;color:#252a30;font:inherit;font-size:.88rem;cursor:pointer}
.homepage-option-chip.selected{border:2px solid #252a30;padding:6px 13px;font-weight:700}
.homepage-options-error{margin:0 0 12px;color:#b42318;font-size:.88rem}
.homepage-options-footer{position:sticky;bottom:calc(-1 * max(16px,env(safe-area-inset-bottom)));display:flex;gap:10px;align-items:center;padding:12px 0 max(0px,env(safe-area-inset-bottom));border-top:1px solid #edf0f4;background:#fff}
.homepage-options-quantity{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:112px;height:44px;padding:0 5px;border:1px solid #d9dde2;border-radius:999px}
.homepage-options-quantity button{width:34px;height:34px;border:0;border-radius:50%;background:#30343a;color:#fff;font-size:1.2rem;cursor:pointer}
.homepage-options-quantity button:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}
.homepage-options-quantity output{min-width:16px;text-align:center;font-weight:700}
.homepage-options-submit{flex:1;min-height:44px;border-radius:999px}
.homepage-options-submit:disabled{background:#eff0f2;color:#a0a4aa;box-shadow:none;cursor:not-allowed}
@keyframes homepage-sheet-in{from{transform:translateY(18px);opacity:.85}to{transform:translateY(0);opacity:1}}
@media(prefers-reduced-motion:reduce){.homepage-options-sheet{animation:none}}

/* modal quick-checkout */
.modal-overlay{position:fixed;left:0;top:0;right:0;bottom:0;background:rgba(2,6,23,0.6);display:flex;align-items:center;justify-content:center;z-index:10000}
.modal-panel{background:var(--card);padding:16px;border-radius:12px;max-width:420px;width:100%;box-shadow:var(--shadow)}
.modal-panel h3{margin:0 0 8px 0}
.modal-panel label{display:block;margin-bottom:8px}
.modal-panel input,.modal-panel textarea{width:100%;padding:8px;border:1px solid #e6eef8;border-radius:8px}
.modal-panel #qc-result{color:var(--muted)}

/* per-item actions */
.ci-actions{display:flex;gap:8px;align-items:center;margin-left:12px}
.action-link{background:transparent;border:1px solid rgba(255,255,255,0.06);color:#cbd5e1;padding:6px 10px;border-radius:8px;cursor:pointer}
.action-link:hover{background:rgba(255,255,255,0.02)}
.action-link.danger{border-color:rgba(176,0,32,0.25);color:#ffccd5}
.action-link.danger:hover{background:rgba(176,0,32,0.06)}

/* love icon removed (wishlist deprecated) */
.action-link.love{display:none}

.product-card{position:relative}
.card-top{position:relative}
.wishlist-toggle{position:absolute;top:10px;right:10px;z-index:2;width:38px;height:38px;border:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.9);box-shadow:0 10px 24px rgba(15,23,42,0.12);cursor:pointer;color:#94a3b8;transition:all .2s ease}
.wishlist-toggle:hover{transform:translateY(-1px);box-shadow:0 12px 32px rgba(15,23,42,0.16)}
.wishlist-toggle.active{background:rgba(255,122,24,0.12);color:#ff7a18}
.wishlist-toggle i{font-size:1.1rem}

.cart-page{background:radial-gradient(circle at top, rgba(0,102,255,0.08), transparent 30%), linear-gradient(180deg, #f6f9ff 0%, #eef4ff 100%);}
.cart-topbar{padding:0 16px 0;justify-content:flex-start}
.cart-hero{width:min(980px,100%);margin:18px auto 0;padding:18px 20px;border-radius:24px;background:linear-gradient(135deg, #0f172a 0%, #1d4ed8 45%, #60a5fa 100%);box-shadow:0 22px 45px rgba(37,99,235,0.26);color:#fff;position:relative;overflow:hidden}
.cart-hero::after{content:"";position:absolute;inset:auto -40px -50px auto;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,0.1)}
.cart-hero__pill{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.18);font-size:0.8rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:#e0f2fe}
.cart-header{display:flex;align-items:center;gap:10px;justify-content:flex-start;padding:10px 0 0;color:#ffffff;font-size:1.3rem;font-weight:800;letter-spacing:-0.02em}
.cart-header i{color:#fff;font-size:1.1rem}
.cart-header span{display:inline-block;max-width:280px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cart-panel{max-width:980px;margin:18px auto 96px;padding:10px 12px 6px;background:rgba(255,255,255,0.5);border:1px solid rgba(148,163,184,0.18);border-radius:26px;backdrop-filter:blur(10px);box-shadow:0 30px 60px rgba(15,23,42,0.08)}
.cart-panel__top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 18px;border-bottom:1px solid rgba(148,163,184,0.12)}
.cart-panel__eyebrow{font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:#64748b}
.cart-panel__title{margin:4px 0 0;color:#0f172a;font-size:1.4rem;letter-spacing:-0.03em}
.cart-panel__count{padding:9px 12px;border-radius:999px;background:#eef4ff;color:#1d4ed8;font-weight:800;font-size:0.85rem}
.cart-item{display:flex;align-items:center;gap:14px;padding:18px 18px;border-radius:20px;background:linear-gradient(180deg,#ffffff 0%, #f9fbff 100%);border:1px solid rgba(148,163,184,0.18);box-shadow:0 10px 24px rgba(15,23,42,0.04);transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease}
.cart-item:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(15,23,42,0.08);border-color:rgba(0,102,255,0.18)}
.ci-thumb{width:88px;height:88px;flex:0 0 88px;border-radius:18px;overflow:hidden;background:#eef4ff;box-shadow:inset 0 0 0 1px rgba(148,163,184,0.12)}
.ci-thumb img{width:100%;height:100%;object-fit:cover}
.ci-info{flex:1;min-width:0}
.ci-title{font-size:1.05rem;font-weight:800;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.ci-controls{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:14px;background:#f8fafc;border:1px solid rgba(148,163,184,0.18)}
.qty-btn{background:#fff;border:1px solid rgba(148,163,184,0.18);border-radius:10px;color:#0f172a;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 3px 8px rgba(15,23,42,0.04)}
.qty-btn:hover{background:#f1f5f9}
.qty-val{min-width:26px;text-align:center;font-weight:800;color:#0f172a}
.ci-sub{min-width:84px;text-align:right;font-weight:900;color:#0f172a;font-size:1.05rem}
.ci-actions{display:flex;align-items:center;gap:8px;margin-left:6px}
.action-link{background:rgba(0,102,255,0.06);border:1px solid rgba(0,102,255,0.12);color:var(--accent);width:36px;height:36px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}
.action-link:hover{background:rgba(0,102,255,0.1);transform:translateY(-1px)}
.action-link.danger{background:rgba(176,0,32,0.06);border-color:rgba(176,0,32,0.12);color:#b42318}
.action-link.danger:hover{background:rgba(176,0,32,0.12)}
.checkout-panel{display:flex;align-items:center;justify-content:space-between;padding:18px 8px 8px;margin-top:10px;border-top:1px solid rgba(148,163,184,0.18)}
.checkout-panel--sticky{position:sticky;bottom:88px;z-index:9;padding:12px 12px;border:1px solid rgba(148,163,184,0.18);background:rgba(255,255,255,0.9);backdrop-filter:blur(10px);border-radius:16px;box-shadow:0 12px 28px rgba(15,23,42,0.08);margin:18px auto 0;max-width:380px;width:100%}
.checkout-total{display:flex;flex-direction:column;gap:2px;font-size:0.8rem;font-weight:700;color:var(--muted);line-height:1.2;text-align:center}
.checkout-amount{display:block;color:var(--accent);font-size:1.2rem;font-weight:900;letter-spacing:-0.04em;line-height:1.2}
.checkout-actions .btn.checkout-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:12px;background:linear-gradient(135deg, var(--accent) 0%, #3b82f6 100%);box-shadow:0 12px 24px rgba(0,102,255,0.24);border:0;color:#fff;font-weight:800;min-width:180px}
.checkout-actions .btn.checkout-btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(0,102,255,0.28)}
.checkout-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:8px;background:rgba(255,255,255,0.14);font-size:0.85rem}
.checkout-suggestions{margin:18px 0 28px;padding:18px 10px 8px;border-top:1px solid rgba(148,163,184,0.14)}
.checkout-suggestions--related{margin-top:6px}
.checkout-suggestions__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.checkout-suggestions__eyebrow{font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:#64748b}
.checkout-suggestions h3{margin:6px 0 0;font-size:1.2rem;color:#0f172a}
.checkout-suggestions__track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding:4px 2px 10px;-ms-overflow-style:none;scrollbar-width:none}
.checkout-suggestions__track::-webkit-scrollbar{display:none}
.checkout-suggestion-card{flex:0 0 180px;scroll-snap-align:start}
.checkout-suggestion-card,.related-item-card{position:relative}
.checkout-suggestion-link{display:block;background:#fff;border:1px solid rgba(148,163,184,0.18);border-radius:16px;overflow:hidden;box-shadow:0 10px 24px rgba(15,23,42,0.04);text-decoration:none;color:inherit;transition:transform .18s ease, box-shadow .18s ease}
.checkout-suggestion-link:hover{transform:translateY(-2px);box-shadow:0 18px 30px rgba(15,23,42,0.08)}
.checkout-suggestion__image-wrapper{height:140px;overflow:hidden;background:#f8fafc}
.checkout-suggestion__image{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.checkout-suggestion__body{padding:10px 12px 12px}
.checkout-suggestion__title{font-size:0.88rem;font-weight:700;color:#0f172a;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.checkout-suggestion__price{margin-top:6px;color:var(--accent);font-weight:800}
.suggestion-cart-actions{display:flex;justify-content:flex-end;padding:6px 8px}
.suggestion-cart-form{display:flex;margin:0}
.suggestion-cart-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:var(--accent);color:#fff;font-size:.95rem;cursor:pointer;box-shadow:0 4px 10px rgba(0,102,255,.2)}
.suggestion-cart-button:hover{background:#0055d4}
.suggestion-cart-button:focus-visible{outline:3px solid rgba(0,102,255,.3);outline-offset:2px}

@media(min-width:700px){
  .category-boxes{padding-left:28px;padding-right:28px;gap:12px}
  .category-box{flex-basis:calc((100% - 84px) / 8)}
  .grid{grid-template-columns:repeat(3,1fr);padding:28px;gap:20px}
  .product-detail{flex-direction:row}
  .product-image{width:48%;max-width:520px}
  .product-info{width:48%;padding-left:24px}
  .search{max-width:520px}
}

@media(min-width:1000px){
  .grid{grid-template-columns:repeat(5,1fr)}
}

@media(min-width:769px){
  .notification-carousel{width:min(1200px,calc(100% - 24px));aspect-ratio:6 / 1}
  .notification-track{width:100%;gap:8px;transform:none !important}
  .notification-slide{flex:1 1 0;width:auto;min-width:0;opacity:1}
  .notification-dots{display:none}
}

/* Admin tweaks */
.product-list{display:flex;flex-direction:column;gap:8px}
.product-row a{margin-right:10px;color:var(--accent)}
.product-form label{display:block;margin-bottom:8px}
.product-form input,.product-form textarea{width:100%;padding:8px;border:1px solid #e6eef8;border-radius:8px}

/* Admin layout */
.admin-panel{max-width:980px;margin:18px auto;padding:18px;background:var(--card);border-radius:12px;box-shadow:var(--shadow)}
.admin-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid #f1f5f9}
.admin-header h1{margin:0;font-size:1.05rem}
.admin-controls{display:flex;gap:8px}
.admin-actions .btn{padding:8px 10px;border-radius:8px}
.admin-grid{display:grid;grid-template-columns:1fr;gap:12px}
@media(min-width:900px){.admin-grid{grid-template-columns:360px 1fr}}
.admin-sidebar{padding:12px;border-right:1px solid #f1f5f9}
.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:10px;border-bottom:1px solid #f1f5f9;text-align:left}

/* Admin Dashboard Modern Styles */
.admin-dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.dashboard-widgets{display:grid;grid-template-columns:repeat(1,1fr);gap:12px;margin:12px 0}
.widget{background:linear-gradient(180deg,rgba(255,255,255,0.02),transparent);padding:14px;border-radius:12px;box-shadow:0 8px 20px rgba(2,6,23,0.06);display:flex;align-items:center;justify-content:space-between}
.widget .w-left{display:flex;flex-direction:column}
.widget .w-title{font-size:0.9rem;color:var(--muted)}
.widget .w-value{font-size:1.4rem;font-weight:800;color:var(--accent)}
.widget .w-action{font-size:0.85rem;color:var(--muted)}
.dashboard-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:12px}
.card.grid{padding:0}
.recent-products{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.product-tile{background:var(--card);padding:10px;border-radius:10px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.product-tile img{width:100%;height:120px;object-fit:cover;border-radius:8px}

@media(min-width:800px){
  .dashboard-widgets{grid-template-columns:repeat(3,1fr)}
  .dashboard-grid{grid-template-columns:2fr 1fr}
}

/* Cute admin tweaks */
:root{
  --admin-bg: linear-gradient(180deg,#0b1220 0%, #071226 100%);
  --admin-card:#071229;
  --admin-accent:#ff6b81;
  --admin-accent-2:#7c5cff;
}
.admin-panel{background:linear-gradient(180deg,#f5f7fb 0%,#eef2f8 100%)}
.admin-header{background:transparent;padding:18px 12px}
.admin-dashboard-head h1{margin:0;color:#0f172a}
.admin-dashboard-head .meta{color:var(--muted);font-size:0.9rem}
.admin-sidebar{background:transparent;padding:18px}
.admin-sidebar nav div{padding:10px 8px;border-radius:10px;margin-bottom:6px}
.admin-sidebar nav div a{display:inline-flex;gap:8px;align-items:center;padding:8px 10px;border-radius:8px;color:var(--accent);text-decoration:none}
.admin-sidebar nav div a:hover{background:rgba(0,102,255,0.04)}
.quick-actions{display:flex;gap:8px;flex-wrap:wrap}
.quick-btn{background:linear-gradient(90deg,var(--admin-accent),var(--admin-accent-2));color:#fff;padding:8px 12px;border-radius:10px;border:none;cursor:pointer;box-shadow:0 8px 20px rgba(124,92,255,0.08)}
.search-input{display:flex;align-items:center;gap:8px;background:#fff;border-radius:999px;padding:6px 10px;border:1px solid #eef2f8;max-width:420px}
.search-input input{border:0;outline:0;background:transparent}
.avatar{width:40px;height:40px;border-radius:999px;background:linear-gradient(90deg,var(--admin-accent),var(--admin-accent-2));display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700}
.badge{background:var(--admin-accent);color:#fff;padding:4px 8px;border-radius:999px;font-size:0.8rem}
.order-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.35em;padding:2px 6px;border-radius:999px;background:#dc2626;color:#fff;font-size:.75rem;font-weight:700;line-height:1.2}
.order-count-badge[hidden]{display:none}
.card{background:linear-gradient(180deg,#ffffff,#fbfcff);}

/* sidebar collapsed */
.sidebar-collapsed .admin-sidebar{width:64px}
.sidebar-collapsed .admin-sidebar nav div a{justify-content:center;padding:8px}
.sidebar-toggle{background:transparent;border:0;color:var(--muted);cursor:pointer;padding:6px;border-radius:6px}

/* Toast notifications */
.toast-container{position:fixed;top:18px;right:16px;display:flex;flex-direction:column;gap:10px;z-index:9999}
.toast{background:rgba(15,23,42,0.95);color:#fff;padding:10px 14px;border-radius:10px;box-shadow:0 8px 20px rgba(2,6,23,0.2);opacity:0;transform:translateY(8px);transition:all .28s cubic-bezier(.2,.9,.2,1)}
.toast.visible{opacity:1;transform:translateY(0)}
.toast-success{background:linear-gradient(90deg,var(--accent),var(--accent-2))}
.toast-error{background:#b00020}

/* Panel toast removed (wishlist deprecated) */
.toast-panel{display:none}

/* Fixed bottom navigation (mobile and desktop preview) */
.bottom-nav-wrapper{position:fixed;left:0;right:0;bottom:0;z-index:9999;display:block}
.bottom-nav{max-width:980px;margin:0 auto;padding:8px 12px;background:transparent}
.bn-inner{background:var(--card);border-radius:14px;display:flex;justify-content:space-between;align-items:center;padding:8px 6px;box-shadow:0 -4px 20px rgba(2,6,23,0.06);border:1px solid rgba(15,23,42,0.04)}
.bn-item{flex:1;text-align:center;padding:6px 8px;color:var(--muted);text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:0.85rem;position:relative}
.bn-item i{font-size:20px}
.bn-item span{font-size:12px}
.bn-item.active{color:var(--accent)}
.bn-item.active i{color:var(--accent)}
.bn-badge{position:absolute;top:6px;right:18px;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border-radius:50%;background:#ff7a18;color:#fff;font-size:12px;font-weight:700;box-shadow:0 2px 6px rgba(0,0,0,0.12)}

/* hide badge when it has no content (empty cart) */
.bn-badge:empty{display:none}

/* Always leave space for the bottom nav */
/* Reduced padding to suit three-item nav */
body{padding-bottom:64px}

/* Dark login visual (scoped to body.login-dark) */
.login-dark{background:#f3f4f6;color:#0b0b0b}
.login-dark .topbar{display:none}
.login-visual{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}
.login-form{width:340px;max-width:94vw;padding:12px 12px;border-radius:6px;background:transparent;box-shadow:none;text-align:left}
.login-logo{display:flex;align-items:center;justify-content:center;margin-bottom:18px;position:relative}
.login-logo-img{max-width:280px;height:auto;display:block}
.login-logo .logo-text{display:block;color:#0b0b0b;font-weight:900;font-size:56px;letter-spacing:-2px}
.logo-wrap{position:relative;display:inline-flex;align-items:center;gap:14px}
.logo-badge{width:54px;height:54px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(180deg, rgba(255,255,255,0.72), rgba(255,255,255,0.28));color:rgba(11,11,11,0.9);box-shadow:0 10px 30px rgba(2,6,23,0.08), inset 0 1px 0 rgba(255,255,255,0.6);-webkit-backdrop-filter:blur(10px) saturate(140%);backdrop-filter:blur(10px) saturate(140%);border:1px solid rgba(255,255,255,0.36);position:absolute;left:100%;top:-12px;transform:translateX(-50%);z-index:5;pointer-events:none;opacity:0.98;transition:transform .18s ease,box-shadow .18s ease}
.logo-badge i{font-size:20px;color:rgba(11,11,11,0.9)}
/* shiny glass effect (subtle) */
.logo-badge::after{content:'';position:absolute;left:-20%;top:-30%;width:140%;height:140%;background:linear-gradient(120deg,rgba(255,255,255,0.35) 0%, rgba(255,255,255,0.14) 50%, rgba(255,255,255,0) 65%);transform:rotate(25deg) translateX(-100%);opacity:0.55;pointer-events:none}
.logo-badge.shimmer::after{animation:shimmer 2.2s linear infinite}
@keyframes shimmer{0%{transform:rotate(25deg) translateX(-120%);opacity:0}40%{opacity:0.9}100%{transform:rotate(25deg) translateX(120%);opacity:0}}

/* small responsive tweak */
@media(max-width:420px){
  .logo-badge{width:48px;height:48px;left:100%;top:-8px}
  .logo-badge i{font-size:18px}
  .login-logo .logo-text{font-size:44px}
}
.login-head h2{color:#ddd;margin:0 0 6px 0;font-weight:600}
.login-form .field{display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:2px solid rgba(11,11,11,0.12)}
.login-form .field .icon{color:rgba(11,11,11,0.85);width:32px;text-align:center;font-size:16px}
.login-form .field input{flex:1;background:transparent;border:0;color:#0b0b0b;padding:6px 0 4px 0;outline:none;font-size:1rem}
.login-form .field input::placeholder{color:rgba(11,11,11,0.45);font-weight:500}
.login-form .password-field{position:relative}
.login-form .password-field input{padding-right:40px}
.login-form .password-toggle{position:absolute;right:0;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:0;background:transparent;color:rgba(11,11,11,0.65);cursor:pointer}
.login-form .password-toggle:hover{color:#0b0b0b}
.login-form .password-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.login-form .error{background:transparent;color:#b00020;padding:8px 0;margin-bottom:8px}
.actions{display:flex;flex-direction:column;gap:18px;align-items:center;margin-top:26px}
.btn.ghost-btn{display:block;width:78%;text-align:center;padding:12px 0;border-radius:999px;border:2px solid rgba(11,11,11,0.18);background:transparent;color:#0b0b0b;text-decoration:none;font-weight:600}
.install-success-card{text-align:center}
.install-success-icon{display:grid;width:56px;height:56px;margin:0 auto 12px;place-items:center;border-radius:50%;background:#e8f8ef;color:#159447;font-size:1.6rem}
.install-success-card h3{margin:0 0 12px;color:#172033;font-size:1.25rem}
.install-success-card p{color:#4b5563;line-height:1.55}
.install-success-card .install-platform-help{padding:12px;border-radius:10px;background:#f1f6ff;color:#334155;text-align:left}
.install-success-actions{display:grid;gap:10px;margin:18px 0}
.install-success-actions .btn{width:100%;min-height:46px;justify-content:center}
.install-success-actions .btn.ghost-btn{width:100%}
.install-status{padding:10px;border-radius:8px;background:#ecfdf5;color:#166534}
.install-success-card .install-success-signin{font-size:.88rem}
.registration-install-overlay{position:fixed;inset:0;z-index:10030;display:grid;place-items:center;overflow-y:auto;padding:16px}
.registration-install-overlay[hidden]{display:none}
.registration-install-backdrop{position:absolute;inset:0;border:0;background:rgba(2,6,23,.62);cursor:pointer}
.registration-install-card{position:relative;width:min(100%,360px);margin:0;z-index:1}
.registration-install-close{position:absolute;top:8px;right:8px;display:grid;width:36px;height:36px;place-items:center;border:0;border-radius:50%;background:#f1f5f9;color:#334155;font-size:1.6rem;line-height:1;cursor:pointer}
.registration-install-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.btn.ghost-btn:hover{background:rgba(11,11,11,0.03)}
.fingerprint{margin-top:60px;color:rgba(11,11,11,0.26);font-size:44px}

@media(max-width:420px){
  .login-form{width:92%;padding:18px}
  .btn.ghost-btn{width:86%}
}

/* Profile edit styles */
.profile-card{max-width:520px;margin:24px auto;padding:18px;border-radius:12px;background:var(--card);box-shadow:var(--shadow);border:1px solid #f1f5f9}
.profile-card h2{margin:0 0 8px 0;font-size:1.05rem}
.profile-form{display:block;gap:8px}
.profile-form label{display:block;margin-bottom:6px;color:var(--muted);font-size:0.95rem}
.profile-form input,.profile-form textarea{width:100%;padding:10px;border-radius:10px;border:1px solid #eef2f8;background:#fff}
.profile-form .form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}

/* Checkout shipping form styles */
.shipping-form{display:block}
.shipping-form .form-row{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}
.shipping-form .form-row.form-actions{display:flex;justify-content:flex-end;align-items:center}
.shipping-form label{display:block}
.shipping-form input,.shipping-form select,.shipping-form textarea{width:100%;padding:12px;border-radius:10px;border:1px solid #eef2f8;background:#fff}
.shipping-form input[readonly]{background:#f8fafc;border-color:#eef2f8;color:#111}
.shipping-form textarea{min-height:100px}
.form-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(min-width:900px){.shipping-form{max-width:760px}}

/* Paystack option selected state */
#paystackOptions button.selected{outline:2px solid var(--accent);transform:translateY(-1px)}

/* Payment Method: simple selectable list (left dot, title, right icon) */
#paymentMethods .pm-btn{
  width:100%;
  text-align:left;
  padding:10px 12px;
  border-radius:8px;
  background:transparent;
  border:0;
  display:flex;
  align-items:center;
  gap:12px;
  border-bottom:1px solid #f1f5f9;
}
#paymentMethods .pm-btn:last-child{border-bottom:0}
#paymentMethods .pm-icon{font-size:18px;margin-left:auto;color:var(--muted)}
#paymentMethods .pm-text{flex:1;display:flex;flex-direction:column}
#paymentMethods .pm-title{font-weight:700;color:var(--muted)}
#paymentMethods .pm-sub{display:block;color:var(--muted);font-size:0.9rem}

/* radio circle */
.pm-radio{width:20px;height:20px;border-radius:20px;border:2px solid #d6dbe8;display:inline-flex;align-items:center;justify-content:center}
.pm-dot{width:10px;height:10px;border-radius:10px;background:transparent;display:block}
#paymentMethods .pm-btn.selected .pm-dot{background:var(--accent)}
#paymentMethods .pm-btn.selected .pm-title{color:var(--accent)}
#paymentMethods .pm-btn:hover{background:rgba(15,23,42,0.02)}

/* muted button style: visually subdued but still clickable so JS can show alerts */
.btn.muted{opacity:0.65}

/* Order actions card styling */
#orderActionsCard .form-actions{display:flex;flex-direction:column;gap:8px}
#orderActionsCard .form-actions .btn{width:100%}

/* Modern back button */
.back-btn{display:inline-flex;align-items:center;gap:8px;color:var(--muted);text-decoration:none;padding:8px 10px;border-radius:8px;font-weight:600}
.back-btn i{font-size:14px}
.back-btn:hover{background:rgba(2,6,23,0.03);color:var(--accent)}

/* Cart header with icon */
.cart-header{display:inline-flex;align-items:center;gap:10px;font-size:1.2rem;font-weight:800;color:var(--accent)}
.cart-header i{font-size:18px;color:var(--accent);background:rgba(0,102,255,0.08);padding:6px;border-radius:8px}
.cart-header span{color:inherit}


/* Order list status badges */
.order-status{display:inline-block;padding:4px 8px;border-radius:999px;font-weight:700;font-size:0.9rem}
.order-status.pending{background:#fff7ed;color:#92400e;border:1px solid rgba(245,158,11,0.08)}
.order-status.processing{background:#eef2ff;color:#3730a3;border:1px solid rgba(99,102,241,0.08)}
.order-status.placed{background:#fff7ed;color:#92400e;border:1px solid rgba(245,158,11,0.08)}
.order-status.pending-confirmation{background:#eef2ff;color:#3730a3;border:1px solid rgba(99,102,241,0.08)}
.order-status.awaiting-shipment{background:#fff7ed;color:#92400e;border:1px solid rgba(245,158,11,0.08)}
.order-status.shipped{background:#ecfdf5;color:#065f46;border:1px solid rgba(16,185,129,0.08)}
.order-status.pickup{background:#ecfdf5;color:#065f46;border:1px solid rgba(16,185,129,0.08)}
.order-status.delivered{background:#f0fdf4;color:#065f46;border:1px solid rgba(34,197,94,0.08)}
.order-status.cancelled{background:#fff1f2;color:#9f1239;border:1px solid rgba(239,68,68,0.08)}

/* status-pill variants (for order detail / track) */
.status-placed{background:#fff7ed;color:#92400e;border:1px solid rgba(245,158,11,0.08)}
.status-pending-confirmation{background:#eef2ff;color:#3730a3;border:1px solid rgba(99,102,241,0.08)}
.status-awaiting-shipment{background:#fff7ed;color:#92400e;border:1px solid rgba(245,158,11,0.08)}
.status-shipped{background:#ecfdf5;color:#065f46;border:1px solid rgba(16,185,129,0.08)}
.status-pickup{background:#ecfdf5;color:#065f46;border:1px solid rgba(16,185,129,0.08)}
.status-delivered{background:#f0fdf4;color:#065f46;border:1px solid rgba(34,197,94,0.08)}
.status-cancelled{background:#fff1f2;color:#9f1239;border:1px solid rgba(239,68,68,0.08)}

/* Modern Order Page Styles */
.order-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px;padding:18px;border-radius:12px;background:linear-gradient(180deg,#ffffff,#fbfcff);box-shadow:0 12px 30px rgba(2,6,23,0.06);border:1px solid rgba(15,23,42,0.04)}
.order-hero .left{display:flex;gap:14px;align-items:center}
.order-avatar{width:64px;height:64px;border-radius:12px;background:linear-gradient(90deg,var(--accent),var(--accent-2));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:22px}
.order-meta .name{font-weight:800;font-size:1.05rem}
.order-meta .email{color:var(--muted);font-size:0.95rem}
.order-info{text-align:right;min-width:220px}
.placed{color:var(--muted);font-size:0.95rem}
.order-grid{display:grid;grid-template-columns:1fr 340px;gap:20px}
.order-items{background:transparent;padding:0}
.order-items ul{list-style:none;padding:0;margin:0}
.order-items ul li{display:flex;justify-content:space-between;align-items:flex-start;padding:12px;border-radius:10px;background:#fff;border:1px solid #f1f5f9;margin-bottom:12px}
.order-items .item-title{font-weight:700}
.order-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:12px;border-radius:10px;background:#fff;border:1px solid #f1f5f9}
.order-summary .meta{color:var(--muted)}
.order-summary .total{font-size:1.3rem;font-weight:900;color:var(--accent)}
.order-grid aside .card{padding:16px}

@media(max-width:900px){
  .order-grid{grid-template-columns:1fr}
  .order-info{text-align:left;margin-top:8px}
  .order-hero{flex-direction:column;align-items:flex-start}
}

/* Order header uses the shared .login-logo/.logo-wrap/.logo-badge styles so it matches register.php */


/* Mobile: make payment method buttons pill-style to match hosted mobile look */
@media(max-width:480px){
  .category-page{padding:12px}
  .category-choice-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .seller-page{padding:12px}
  .seller-header{gap:12px;padding:14px}
  .seller-header-image{width:68px;height:68px;flex-basis:68px}
  .seller-header h2{font-size:1.25rem}
  /* mobile: compact list with radio dot and right icon */
  #paymentMethods .pm-btn{padding:12px 12px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #f1f5f9}
  #paymentMethods .pm-icon{margin-left:auto}
  #paymentMethods .pm-title{font-size:0.95rem}
  #paymentMethodsBox{padding:12px;margin:12px 0}
  #paymentMethods{gap:6px}
}

/* Alternate compact selectable style */
.pm-alt .pm-btn{background:transparent;border:1px solid #eaf2ff;border-radius:10px;padding:12px;display:flex;align-items:center;gap:12px}
.pm-alt .pm-btn .pm-icon{width:40px;height:40px;border-radius:8px;background:#f8fbff;color:var(--accent);display:inline-flex;align-items:center;justify-content:center}
.pm-alt .pm-btn .pm-text{display:flex;flex-direction:column}
.pm-alt .pm-btn .pm-title{font-weight:700}
.pm-alt .pm-btn .pm-sub{font-size:0.85rem;color:var(--muted)}
.pm-alt .pm-btn.selected{border-color:transparent;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#fff}
.pm-alt .pm-btn.selected .pm-icon{background:rgba(255,255,255,0.12);color:#fff}
.pm-alt .pm-btn .pm-check{margin-left:auto;width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #eef6ff}
.pm-alt .pm-btn.selected .pm-check{background:#fff;color:var(--accent)}
.pm-alt .pm-btn.disabled, .pm-alt .pm-btn:disabled{opacity:0.42;cursor:not-allowed;filter:saturate(0.45);pointer-events:auto}
.pm-alt .pm-btn.disabled .pm-title, .pm-alt .pm-btn:disabled .pm-title{color:rgba(15,23,42,0.52)}
.pm-alt .pm-btn.disabled .pm-sub, .pm-alt .pm-btn:disabled .pm-sub{color:rgba(100,116,139,0.7)}
.pm-alt .pm-btn.disabled .pm-icon, .pm-alt .pm-btn:disabled .pm-icon{color:rgba(100,116,139,0.9);background:#f5f7fa}
.pm-cod-disabled{padding:10px;border-radius:8px;background:#fff7ed;border:1px solid #fdba74;color:#b45309;font-size:0.95rem}

/* Explanation block shown under payment methods */
#pmExplanation{margin-top:10px}
.pm-explain{padding:10px;border-radius:8px;background:#fff;border:1px solid #f1f5f9;color:var(--muted);font-size:0.95rem}
.pm-explain + .pm-explain{margin-top:8px}

/* Register icon link in topbar */
.icon-link{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#f1f5f9;color:var(--muted);text-decoration:none;font-size:1.1rem;transition:all .18s ease;cursor:pointer}
.icon-link:hover{background:var(--accent);color:#fff;transform:scale(1.05)}
.icon-link i{display:flex;align-items:center;justify-content:center}

.homepage-search-panel{position:fixed;inset:0;z-index:10001;display:flex;flex-direction:column;background:#fff;color:#111827}
.homepage-search-panel[hidden],.homepage-search-panel [hidden]{display:none}
.homepage-search-bar{display:flex;align-items:center;gap:8px;min-height:56px;padding:8px 14px;border-bottom:1px solid #e5e7eb}
.homepage-search-back,.homepage-search-clear{flex:0 0 36px;width:36px;height:36px;border:0;background:transparent;color:#475569;font-size:1.5rem;cursor:pointer}
.homepage-search-bar input{flex:1;min-width:0;height:40px;padding:8px 12px;border:1px solid #d1d5db;border-radius:999px;outline:none;font-size:16px;background:#f8fafc;color:#111827}
.homepage-search-bar input:focus{border-color:#94a3b8;background:#fff}
.homepage-search-content{flex:1;overflow-y:auto;padding:16px 18px 32px}
.homepage-search-section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.homepage-search-section-heading h2{margin:0;font-size:.95rem;font-weight:700}
.homepage-search-section-heading button{border:0;background:none;color:#64748b;font-size:.85rem;cursor:pointer}
.homepage-recent-search-list{display:flex;flex-wrap:wrap;gap:8px}
.homepage-recent-search{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border:0;border-radius:999px;background:#f1f3f5;color:#374151;font-size:.82rem;cursor:pointer}
.homepage-search-suggestions{margin-top:8px}
.homepage-search-suggestion{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:13px 2px;border:0;border-bottom:1px solid #f1f2f4;background:#fff;color:#1f2937;text-align:left;font-size:.92rem;cursor:pointer}
.homepage-search-suggestion:hover,.homepage-search-suggestion:focus-visible{background:#f8fafc}
.homepage-search-suggestion span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.homepage-search-suggestion small{flex:0 0 auto;color:#64748b}
.homepage-search-category{justify-content:flex-start}
.homepage-search-category img{flex:0 0 44px;width:44px;height:44px;border-radius:8px;object-fit:cover;background:#f1f5f9}
.homepage-search-category span{flex:1}
.homepage-search-empty{padding:14px 2px;color:#64748b;font-size:.9rem}
body.homepage-search-open{overflow:hidden}
img.image-load-failed{visibility:hidden!important}
.image-placeholder{background-color:#e5e7eb!important;background-image:url('/assets/images/Capify%20logo.png')!important;background-repeat:no-repeat!important;background-position:center!important;background-size:min(48%,140px) auto!important}
