
:root{--accent:#1F7A8C;}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,'Noto Sans',sans-serif;color:#111}
.btn{display:inline-block;background:var(--accent);color:#fff;padding:10px 14px;border-radius:10px;text-decoration:none;cursor:pointer;border:0}
.btn.secondary{background:#f3f4f6;color:#111}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;margin:30px auto;max-width:1200px;padding:0 16px}
.card{border:1px solid #eee;border-radius:12px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.card img{width:100%;height:180px;object-fit:contain;background:#fafafa}
.card .body{padding:12px}.price{font-weight:700;margin:8px 0}
.topbar{max-width:1200px;margin:20px auto;padding:0 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.search{border:1px solid #e5e7eb;border-radius:8px;padding:8px 12px;min-width:240px}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.4);display:none;align-items:center;justify-content:center;z-index:1000}
.modal.open{display:flex}
.modal .panel{position:relative;max-width:980px;width:95%;background:#fff;border-radius:16px;overflow:auto;max-height:90vh;padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.modal .panel img{width:100%;object-fit:contain;background:#fafafa;border-radius:12px}
.qty{display:flex;gap:8px;align-items:center;margin:8px 0}
.qty button{width:32px;height:32px}
.tabs{margin-top:12px;border-top:1px solid #e5e7eb}
.tabs-nav{display:flex;gap:16px;flex-wrap:wrap;padding-top:8px}
.tabs-nav button{background:transparent;border:0;padding:8px 0;border-bottom:2px solid transparent;cursor:pointer}
.tabs-nav button.active{border-color:var(--accent);color:var(--accent)}
.tabs-pane{display:none;padding:8px 0}.tabs-pane.active{display:block}
@media(max-width:900px){.modal .panel{grid-template-columns:1fr}}
.footer-actions{max-width:1200px;margin:10px auto;padding:0 16px;display:flex;justify-content:flex-end}
.load-more{display:block;margin:20px auto 40px;padding:10px 16px;border:1px solid var(--accent);background:#fff;color:#111;border-radius:10px;cursor:pointer}
.right{text-align:right}
