/* helloShop cart — generated by helloDev; styles inherit the site font */
#hd-shop{--hs:var(--hd-accent,#4f46e5)}
.hs-cats{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.hs-cats button{border:1px solid #e2e8f0;background:#fff;border-radius:999px;padding:8px 14px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.hs-cats button.on{background:var(--hs);color:#fff;border-color:var(--hs)}
.hs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}
.hs-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;display:flex;flex-direction:column}
.hs-card img,.hs-ph{width:100%;aspect-ratio:1;object-fit:cover;background:#f1f5f9;display:flex;align-items:center;justify-content:center;font-size:40px}
.hs-body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;flex:1}
.hs-name{font-weight:700;font-size:15px}
.hs-desc{font-size:12.5px;color:#64748b;line-height:1.45}
.hs-price{font-weight:800;font-size:16px;color:var(--hs);margin-top:auto}
.hs-card select{border:1px solid #e2e8f0;border-radius:9px;padding:7px 9px;font:inherit;font-size:13px}
.hs-add{border:0;background:var(--hs);color:#fff;border-radius:10px;padding:10px;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.hs-add[disabled]{background:#cbd5e1;cursor:not-allowed}
#hd-cart-fab{position:fixed;right:18px;bottom:84px;z-index:9998;background:var(--hd-accent,#4f46e5);color:#fff;border:0;border-radius:999px;padding:12px 18px;font:inherit;font-weight:800;font-size:14px;box-shadow:0 10px 30px rgba(0,0,0,.25);cursor:pointer}
#hd-cart-fab span{background:#fff;color:#0b1524;border-radius:999px;padding:1px 8px;margin-left:6px;font-size:12px}
.hs-ov{position:fixed;inset:0;background:rgba(11,21,36,.5);z-index:9999;display:none}
.hs-ov.open{display:block}
.hs-drawer{position:absolute;right:0;top:0;bottom:0;width:min(420px,100%);background:#fff;display:flex;flex-direction:column;font-family:inherit;color:#0b1524}
.hs-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #e2e8f0;font-weight:800;font-size:17px}
.hs-head button{border:0;background:#f1f5f9;border-radius:9px;width:34px;height:34px;font-size:16px;cursor:pointer}
.hs-lines{flex:1;overflow:auto;padding:8px 18px}
.hs-line{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #f1f5f9;font-size:14px}
.hs-line .n{flex:1;min-width:0}.hs-line .n small{display:block;color:#64748b;font-size:12px}
.hs-line button{border:1px solid #e2e8f0;background:#fff;border-radius:8px;width:28px;height:28px;cursor:pointer;font-size:15px}
.hs-line .q{min-width:20px;text-align:center;font-weight:700}
.hs-foot{padding:14px 18px;border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:9px}
.hs-foot input,.hs-foot textarea{width:100%;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font:inherit;font-size:14px;box-sizing:border-box}
.hs-total{display:flex;justify-content:space-between;font-weight:800;font-size:17px}
.hs-order{border:0;background:#22c55e;color:#fff;border-radius:12px;padding:14px;font:inherit;font-size:15px;font-weight:800;cursor:pointer}
.hs-empty{text-align:center;color:#94a3b8;padding:40px 0;font-size:14px}