.hot-today-section .horizontal-carousel { overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; }
.hot-today-section .hc-track { display: flex; gap: 14px; padding: 4px 0 12px; }

.hot-today-card { flex: 0 0 calc((100% - 14px * 4) / 5); min-width: 180px; scroll-snap-align: start; background: #fff; border: 1px solid var(--border); border-radius: var(--radius-md); overflow: hidden; }
.hot-today-card .ht-link { display: block; color: inherit; text-decoration: none; }
.hot-today-card .ht-img { aspect-ratio: 1 / 1; background: #f5f5f5; display: flex; align-items: center; justify-content: center; }
.hot-today-card .ht-img img { max-width: 100%; max-height: 100%; object-fit: contain; }
.hot-today-card .ht-img-empty { background: #f0f0f0; }
.hot-today-card .ht-body { padding: 10px 12px 14px; }
.hot-today-card .ht-brand { font-size: 11px; color: var(--ink-2); text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 2px; }
.hot-today-card .ht-name { font-size: 13px; line-height: 1.35; color: var(--ink); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: calc(1.35em * 2); }
.hot-today-card .ht-price { font-size: 14px; font-weight: 600; margin-top: 6px; color: var(--brand); }
.hot-today-card .ht-price .ht-orig { font-weight: 400; color: var(--ink-2); margin-left: 6px; }

/* Skeleton */
.hot-today-skeleton .skel { background: linear-gradient(90deg, #eee 25%, #f5f5f5 50%, #eee 75%); background-size: 200% 100%; animation: ht-shimmer 1.4s linear infinite; }
.hot-today-skeleton .ht-img.skel { height: 100%; }
.hot-today-skeleton .ht-line { height: 12px; border-radius: 4px; margin-bottom: 8px; }
.hot-today-skeleton .ht-line.short { width: 50%; }
@keyframes ht-shimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }

@media (max-width: 900px) { .hot-today-card { flex: 0 0 60%; min-width: 0; } }
@media (max-width: 600px) { .hot-today-card { flex: 0 0 75%; } }
