/* -- HERO -- */
.hero{background:linear-gradient(135deg,#0f4c9e,#1a73e8 55%,#4285f4);padding:24px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.hero-c{flex:1;min-width:200px}
.h-badge{display:inline-flex;background:var(--orange);color:var(--dark);border-radius:3px;padding:2px 7px;font-size:.64rem;font-weight:700;margin-bottom:7px;text-transform:uppercase}
.hero h1{font-size:1.6rem;font-weight:800;color:white;line-height:1.15;margin-bottom:7px}.hero h1 span{color:var(--yellow)}
.hero p{color:rgba(255,255,255,.8);font-size:.83rem;margin-bottom:13px;line-height:1.6}
.h-cta{background:var(--yellow);color:var(--dark);border:none;cursor:pointer;padding:9px 18px;border-radius:4px;font-family:'Inter',sans-serif;font-size:.83rem;font-weight:700;-webkit-tap-highlight-color:transparent}
.hero-stats{display:flex;gap:8px}
.hst{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:var(--rl);padding:11px 13px;color:white;text-align:center}
.hst .hn{font-size:1.3rem;font-weight:800}.hst .hl{font-size:.62rem;opacity:.7;margin-top:1px}

/* -- HOME SECTIONS -- */
.hsec{padding:12px;max-width:1400px;margin:0 auto}
.sec-hd{font-size:.88rem;font-weight:700;margin-bottom:10px;color:var(--dark);display:flex;align-items:center;justify-content:space-between;padding-bottom:5px;border-bottom:2px solid var(--blue-lt)}
.sec-hd a{font-size:.73rem;color:var(--blue);cursor:pointer;font-weight:600}
.cats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:7px}
.cat-card{background:white;border-radius:var(--rl);padding:11px 7px;text-align:center;cursor:pointer;box-shadow:var(--sh);border:2px solid transparent;transition:all .2s;-webkit-tap-highlight-color:transparent}
.cat-card:hover{border-color:var(--blue);box-shadow:var(--sh2)}
.cat-card .ci{font-size:1.5rem;margin-bottom:4px}.cat-card .cn{font-size:.68rem;font-weight:700;line-height:1.3}.cat-card .cc{font-size:.6rem;color:var(--g3);margin-top:1px}
.feat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:9px}

/* -- SHOP -- */
.shop-wrap{display:flex;align-items:flex-start;padding:11px;max-width:1400px;margin:0 auto;gap:11px}
.sidebar{width:180px;flex-shrink:0;background:white;border-radius:var(--rl);box-shadow:var(--sh);padding:10px;position:sticky;top:calc(var(--nav-h) + 32px);max-height:calc(100vh - var(--nav-h) - 50px);overflow-y:auto}
.sidebar h3{font-size:.66rem;font-weight:700;color:var(--g4);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;padding-bottom:5px;border-bottom:1px solid var(--g2)}
.scat{display:flex;align-items:center;justify-content:space-between;padding:6px 7px;border-radius:5px;cursor:pointer;font-size:.75rem;transition:all .2s;margin-bottom:1px;-webkit-tap-highlight-color:transparent}
.scat:hover{background:var(--blue-lt);color:var(--blue)}.scat.on{background:var(--blue-lt);color:var(--blue);font-weight:600}
.scat .cnt{font-size:.6rem;background:var(--g2);padding:1px 5px;border-radius:999px;color:var(--g4)}.scat.on .cnt{background:var(--blue);color:white}
.content{flex:1;min-width:0}
.pbar{background:white;border-radius:var(--rl);padding:9px 12px;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--sh)}
.pbar h2{font-size:.86rem;font-weight:700}.pcount{color:var(--g4);font-size:.75rem}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:8px}

/* -- PRODUCT CARD -- */
.pc{background:white;border-radius:var(--rl);box-shadow:var(--sh);overflow:hidden;cursor:pointer;transition:all .2s;border:2px solid transparent;display:flex;flex-direction:column;-webkit-tap-highlight-color:transparent}
.pc:hover{box-shadow:var(--sh3);border-color:var(--blue)}
.pc-img{position:relative;aspect-ratio:1/1;background:#f8f9fa;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:8px}
.pc-img img{width:100%;height:100%;object-fit:contain;border-radius:4px}
.pc-ph{font-size:2.6rem;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e8f0fe,#c5d8fd)}
.fav-btn{position:absolute;top:6px;right:6px;background:white;border:1px solid #dbe0e6;cursor:pointer;width:27px;height:27px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(0,0,0,.15);z-index:2;font-size:.82rem;color:#6b7280;line-height:1;font-family:"Segoe UI Symbol","Arial Unicode MS",sans-serif;transition:all .2s ease;-webkit-tap-highlight-color:transparent}
.fav-btn:hover{border-color:#ef4444;color:#ef4444}
.fav-btn.faved{border-color:#ef4444;color:#ef4444;background:#fff5f5;box-shadow:0 2px 8px rgba(239,68,68,.25)}
.pc-body{padding:8px;flex:1;display:flex;flex-direction:column}
.pc-cat{font-size:.58rem;font-weight:600;color:var(--blue);text-transform:uppercase;letter-spacing:.4px;margin-bottom:2px}
.pc-name{font-size:.75rem;font-weight:600;color:var(--dark);line-height:1.3;margin-bottom:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:30px}
.pc-sku{font-size:.6rem;color:var(--g3);font-family:monospace;margin-bottom:5px}
.pc-prow{display:flex;align-items:baseline;gap:4px;margin-bottom:4px}
.pc-price{font-size:1rem;font-weight:700}
.ptag{font-size:.56rem;font-weight:700;padding:2px 4px;border-radius:3px;text-transform:uppercase}
.ptag.retail{background:#fff3e0;color:#e65100}.ptag.wholesale{background:var(--blue-lt);color:var(--blue)}
.ws-min{font-size:.6rem;color:var(--g4);background:var(--g1);padding:2px 5px;border-radius:3px;margin-bottom:4px;display:none}
.ws-on .ws-min{display:inline-block}
.pc-add{margin-top:auto;width:100%;padding:7px;background:var(--yellow);border:none;cursor:pointer;border-radius:4px;font-family:'Inter',sans-serif;font-size:.72rem;font-weight:700;color:var(--dark);transition:all .2s;-webkit-tap-highlight-color:transparent}
.pc-add:active{background:#e8c000}

