/* public/css/app.css */
* { box-sizing: border-box; font-family: Inter, system-ui, Arial; }
body { margin:0; background:#fafafa; color:#222; }
.container { max-width:1100px; margin:0 auto; padding:12px; }
.topbar { display:flex; gap:12px; align-items:center; margin-bottom:12px; }
.topbar .logo { font-weight:700; font-size:20px; }
.search input { padding:8px 12px; width:100%; border-radius:8px; border:1px solid #e5e7eb; }
.tabs { display:flex; gap:6px; margin:12px 0; overflow-x:auto; }
.tabs button { flex:1; min-width:80px; padding:8px; border-radius:8px; border:0; background:#fff; box-shadow: 0 1px 2px rgba(0,0,0,.05); }
.tabs button.active { background:#0077ff; color:white; }
.home-cards { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; margin-bottom:12px; }
.card { background:#fff; padding:12px; border-radius:10px; box-shadow:0 1px 4px rgba(0,0,0,.05); }
.product-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
@media(min-width:800px){ .product-grid { grid-template-columns:repeat(3,1fr);} .tabs button{flex:unset;} }
.product { background:#fff; border-radius:12px; overflow:hidden; box-shadow:0 1px 6px rgba(0,0,0,.06);}
.product .media { position:relative; }
.product img { width:100%; height:180px; object-fit:cover; display:block; }
.product .rating { position:absolute; right:8px; bottom:8px; background:#fff; border-radius:16px; padding:4px 8px; border:none;}
.info { padding:10px; }
.info .meta { display:flex; justify-content:space-between; align-items:center; margin:8px 0;}
.seller { display:flex; gap:8px; align-items:center;}
.avatar { width:36px;height:36px;border-radius:50%; object-fit:cover; border:2px solid #fff; box-shadow:0 1px 3px rgba(0,0,0,.08);}
.actions { display:flex; gap:6px; }
.btn { padding:8px 10px; border-radius:8px; border:0; background:#0077ff; color:#fff; flex:1;}
.btn.bargain { background:#ffb020; color:#111;}

/* public/css/app.css - mobile-first, shared style */
:root{
  --primary:#0d6efd;
  --muted:#6b7280;
  --bg:#f6f6f8;
  --card:#ffffff;
  --radius:12px;
}
*{box-sizing:border-box}
html,body{height:100%;margin:0;font-family:Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;}
a{color:var(--primary);text-decoration:none}
.container{max-width:1100px;margin:0 auto;padding:14px}
.header{
  background: linear-gradient(135deg, #0077ff 0%, #0053c7 100%);
  color:white;padding:18px;border-radius:0 0 18px 18px;margin-bottom:12px;
}
.header h2{margin:0;font-size:20px}
.header p{margin:4px 0 0;color:rgba(255,255,255,0.9)}
.card{background:var(--card);border-radius:var(--radius);padding:12px;margin-bottom:12px;box-shadow:0 6px 16px rgba(8,15,52,0.06)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.grid .item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px;border-radius:10px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,0.04);font-size:13px}
.bottom-nav{position:fixed;left:0;right:0;bottom:0;background:white;border-top:1px solid #e6e6e6;display:flex;z-index:99}
.bottom-nav a{flex:1;padding:12px 8px;text-align:center;font-size:13px;color:var(--muted)}
.bottom-nav a.active{color:var(--primary);font-weight:600}
.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.product-card{background:#fff;border-radius:12px;padding:8px;box-shadow:0 6px 20px rgba(8,15,52,0.04);text-align:center}
.product-card img{width:100%;height:140px;object-fit:cover;border-radius:8px}
.form-row{margin-bottom:12px}
.form-row label{display:block;margin-bottom:6px;font-weight:600}
.input, select, textarea{width:100%;padding:10px;border-radius:10px;border:1px solid #e6e6e6;background:#fff}
.btn{display:inline-block;background:var(--primary);color:#fff;padding:10px 14px;border-radius:10px;border:0;cursor:pointer}
.btn.ghost{background:#fff;color:var(--primary);border:1px solid #e6e6e6}
.small{font-size:13px;color:var(--muted)}
.avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,0.06)}
.alert{background:#fff3cd;padding:10px;border-radius:10px;border:1px solid #ffeeba;color:#704b00}
@media(min-width:900px){
  .grid{grid-template-columns:repeat(6,1fr)}
  .product-grid{grid-template-columns:repeat(3,1fr)}
  .container{padding:22px}
}
