.hero-section { background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%); color: white; padding: 80px 0; text-align: center; }
.hero-section h1 { font-size: 3rem; font-weight: 700; margin-bottom: 1rem; }
.hero-section .search-container { max-width: 600px; margin: 0 auto; }
.asset-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
@media (max-width: 1200px) { .asset-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 768px) { .asset-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 576px) { .asset-grid { grid-template-columns: 1fr; } }
.asset-card { transition: transform 0.2s, box-shadow 0.2s; border: none; overflow: hidden; }
.asset-card:hover { transform: translateY(-4px); box-shadow: 0 8px 25px rgba(0,0,0,0.15); }
.asset-card .card-img-top { height: 200px; object-fit: cover; }
.asset-card .price-badge { position: absolute; top: 10px; right: 10px; }
.asset-card .type-badge { position: absolute; top: 10px; left: 10px; }
.facet-sidebar { background: #f8f9fa; padding: 1.5rem; border-radius: 0.5rem; }
.facet-sidebar h6 { font-weight: 600; margin-top: 1rem; }
.dashboard-card { border-left: 4px solid; }
.dashboard-card.views { border-left-color: #0d6efd; }
.dashboard-card.downloads { border-left-color: #198754; }
.dashboard-card.sales { border-left-color: #ffc107; }
.dashboard-card.revenue { border-left-color: #dc3545; }
.watermark-indicator { position: relative; }
.watermark-indicator::after { content: 'Preview'; position: absolute; bottom: 10px; right: 10px; background: rgba(0,0,0,0.7); color: white; padding: 2px 8px; border-radius: 4px; font-size: 0.75rem; }
.notification-badge { font-size: 0.7rem; }
#autocomplete-dropdown .suggestion-item { padding: 8px 16px; cursor: pointer; border-bottom: 1px solid #eee; }
#autocomplete-dropdown .suggestion-item:hover { background: #f0f0f0; }
footer { margin-top: auto; }
/* LinkedIn-style icon-above-text nav */
.navbar-nav.align-items-center { gap: 0.25rem; }
.navbar-nav .nav-link.nav-stacked { display: flex; flex-direction: column; align-items: center; justify-content: center; font-size: 0.7rem; line-height: 1.2; padding: 0.4rem 0.5rem; min-width: 4.5rem; text-align: center; }
.navbar-nav .nav-link.nav-stacked i { font-size: 1.25rem; margin-bottom: 2px; }
.navbar-nav .nav-stacked .badge { position: absolute; top: 0; right: 2px; font-size: 0.55rem; }
.navbar-nav .nav-item.nav-stacked-item { position: relative; }
.navbar-nav .dropdown-toggle.nav-stacked::after { display: none; }
