
:root{ --green:#2e7d32; --yellow:#f9a825; --blue:#0288d1; --text:#222; --muted:#666; --bg:#fff; --bg-soft:#f6f9f6; --border:#e5e7eb; }
*{box-sizing:border-box}
body{font-family:Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial; margin:0; color:var(--text); background:var(--bg);}
.site-header .topbar{background:linear-gradient(90deg,var(--green),var(--blue)); color:#fff;}
.site-header .topbar .container{display:flex;align-items:center;gap:16px; padding:10px 16px; max-width:1200px;margin:0 auto;}
.logo{height:36px;vertical-align:middle;margin-right:8px}
.search-form{display:flex;gap:8px;flex:1}
.search-form input{flex:1;padding:10px;border-radius:6px;border:1px solid var(--border)}
.search-form button{padding:10px 14px;border-radius:6px;border:none;background:var(--yellow);color:#111;cursor:pointer}
.actions{display:flex;align-items:center;gap:12px}
.actions .hotline{background:#fff;color:#111;padding:8px 12px;border-radius:999px;font-weight:700}
.actions .cart{color:#fff;text-decoration:none}
.actions .cart #cart-count{background:var(--yellow);color:#111;border-radius:10px;padding:2px 6px;margin-left:6px}
.main-nav{background:#fff;border-bottom:1px solid var(--border)}
.main-nav .container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex}
.main-nav li a{display:block;padding:12px 16px;color:#111;text-decoration:none}
.main-nav li a:hover{color:var(--green);}
/* ===== MARQUEE TRANSFORM ===== */
.marquee-wrap{
  width:100%;
  overflow:hidden;
  background:linear-gradient(90deg,var(--green),var(--blue));
  height:34px;
  display:flex;
  align-items:center;
}

.marquee{
  white-space:nowrap;
  font-size:14px;
  font-weight:600;
  color:#fff;

  transform: translateX(100%);
  animation: marqueeTransform 15s linear infinite;
}

.marquee:hover{
  animation-play-state: paused;
}

@keyframes marqueeTransform{
  from{
    transform: translateX(100%);
  }
  to{
    transform: translateX(-100%);
  }
}
.hero{background:var(--bg-soft)}
.banner-slider{max-width:1200px;margin:0 auto;position:relative}
.banner-slider .slide{display:none;position:relative}
.banner-slider img{width:100%;height:300px;object-fit:cover;border-radius:10px}
.banner-slider .caption{position:absolute;left:20px;bottom:20px;background:rgba(0,0,0,.4);color:#fff;padding:10px 12px;border-radius:8px}
.container{max-width:1200px;margin:0 auto;padding:16px}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.cat-card{background:#fff;border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;gap:10px;padding:14px;text-decoration:none;color:#111}
.cat-card .icon{color:var(--green);font-size:22px}
.section-head{display:flex;align-items:center;justify-content:space-between;margin:10px 0}
.section-head .link{color:var(--blue);text-decoration:none}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.product-card{border:1px solid var(--border);border-radius:10px;background:#fff;padding:12px}
.product-card img{
  width: 80%;
  height: 100px;
  object-fit: cover;
  border-radius: 8px; /* Bo góc */
  border: 2px solid #e5e7eb; /* Viền nhạt */
  box-shadow: 0 2px 6px rgba(0,0,0,0.1); /* Đổ bóng nhẹ */
  background-color: #fff; /* Nền trắng nếu ảnh nhỏ */
  padding: 4px; /* Khoảng cách giữa ảnh và viền */
}
.product-card img{
  transition: all 0.3s ease;
}

.product-card img:hover{
  border-color: var(--green);
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  transform: scale(1.02);
}
}
.product-card h4{margin:8px 0}
.product-card .price{color:var(--green);font-weight:700;margin-bottom:8px}
.btn{display:inline-block;padding:8px 12px;border-radius:8px;text-decoration:none;cursor:pointer}
.btn-primary{background:var(--green);color:#fff;border:1px solid var(--green)}
.btn-outline{border:1px solid var(--border);color:#111;background:#fff}
.btn-primary:hover{background:#256628}
.products-page{display:grid;grid-template-columns:280px 1fr;gap:16px}
.sidebar{border:1px solid var(--border);border-radius:10px;padding:12px;background:#fff}
.sidebar .cats{list-style:none;padding:0;margin:0}
.sidebar .cats li a{display:block;padding:8px;color:#111;text-decoration:none;border-radius:6px}
.sidebar .cats li a.active, .sidebar .cats li a:hover{background:var(--bg-soft);color:var(--green)}
/* Lưới chi tiết sản phẩm: 2 cột, căn top */
.pd-grid{
  display:grid;
  grid-template-columns: 520px 1fr;   /* ảnh trái cố định ~520px, phải linh hoạt */
  gap: 16px;
  align-items: start;                 /* QUAN TRỌNG: căn đỉnh hai cột */
}
.pd-image img{width:100%;height:360px;object-fit:cover;border-radius:10px}
.pd-price{font-size:20px;color:var(--green);font-weight:700}
.pd-actions .btn{margin-right:8px}
.pd-desc .content{white-space:pre-wrap;background:var(--bg-soft);padding:12px;border-radius:10px}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.news-card{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff}
.news-card img{width:100%;height:180px;object-fit:cover}
.news-card h4{padding:10px;margin:0}
.news-card p{padding:0 10px 10px;margin:0;color:#666}
.news-detail .cover{width:100%;max-height:380px;object-fit:cover;border-radius:10px;margin-bottom:12px}
.site-footer{background:#0b1e2b;color:#dbe4ea;margin-top:20px}
.site-footer .footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:16px}
.site-footer a{color:#dbe4ea}
.site-footer .copy{text-align:center;padding:8px;color:#9fb3c8}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.4);display:none;align-items:center;justify-content:center;padding:10px;z-index:1000}
.modal.show{display:flex}
.modal-content{background:#fff;border-radius:10px;padding:16px;max-width:520px;width:100%;position:relative}
.modal-close{position:absolute;top:8px;right:12px;background:#fff;border:none;font-size:22px;cursor:pointer}
.form-row{margin-bottom:10px}
.form-row input, .form-row textarea{width:100%;padding:10px;border:1px solid var(--border);border-radius:8px}
.order-item{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px dashed var(--border);padding:8px;border-radius:8px;margin:6px 0}
.small-note{color:var(--muted);font-size:13px}
.auth{max-width:420px;margin:0 auto}
.alert{background:#fff3cd;color:#856404;padding:8px;border-radius:8px;border:1px solid #ffeeba}
@media (max-width:992px){
  .grid{grid-template-columns:repeat(3,1fr)}
  .product-grid{grid-template-columns:repeat(3,1fr)}
  .pd-grid{grid-template-columns:1fr}
  .news-grid{grid-template-columns:repeat(2,1fr)}
  .site-footer .footer-grid{grid-template-columns:1fr}
}
@media (max-width:640px){
  .grid{grid-template-columns:repeat(2,1fr)}
  .product-grid{grid-template-columns:repeat(2,1fr)}
  .main-nav .container{flex-direction:column}
  .site-header .topbar .container{flex-direction:column}
}
