/* NexoShop Custom CSS - Additional Styles */

/* Mobile Nav (defined more fully here for active states) */
.mobile-menu li a { display:block; padding:11px 18px; border-bottom:1px solid var(--border); font-size:13px; color: var(--text); }
.mobile-menu li a:hover { color: var(--accent); background: var(--gray-100); }

/* Woocommerce Pagination spacing */
.woocommerce-pagination { margin-top: 8px; }

/* Breadcrumb WooCommerce */
.woocommerce-breadcrumb { padding: 12px 0; font-size: 12px; color: var(--text-light); }
.woocommerce-breadcrumb a { color: var(--text-light); }
.woocommerce-breadcrumb a:hover { color: var(--accent); }

/* Notices */
.woocommerce-message, .woocommerce-error, .woocommerce-info {
    border-radius: var(--radius); padding: 12px 18px; margin: 0 0 16px;
    display: flex; align-items: center; gap: 10px; font-size: 13px;
    background: #fff; border-left: 4px solid var(--primary);
}

/* Cart / Checkout Tables */
.woocommerce table.shop_table { border-collapse: collapse; width: 100%; }
.woocommerce table.shop_table td, .woocommerce table.shop_table th { border: 1px solid var(--border); padding: 10px 14px; }
.woocommerce table.shop_table thead th { background: var(--gray-100); font-weight: 700; }

.woocommerce-checkout .col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
@media (max-width: 768px) { .woocommerce-checkout .col2-set { grid-template-columns: 1fr; } }

/* Product Category List in Sidebar */
.product-categories li { border-bottom: 1px solid var(--border); }
.product-categories li a { display: flex; align-items: center; justify-content: space-between; padding: 7px 0; font-size: 12px; color: var(--text); }
.product-categories li a:hover { color: var(--accent); }
.product-categories .count { background: var(--gray-200); border-radius: 20px; padding: 1px 7px; font-size: 10px; }

/* Star Ratings */
.woocommerce .star-rating { color: var(--primary); }
.woocommerce .star-rating::before { color: var(--gray-300); }

/* Search Results Dropdown */
#search-results { position: absolute; width: 100%; z-index: 100; }

/* Header sticky animation */
.header-sticky { animation: slideDown 0.25s ease; }
@keyframes slideDown { from { transform: translateY(-16px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }

/* Skeleton loading */
.skeleton { background: linear-gradient(90deg, var(--gray-200) 25%, var(--gray-100) 50%, var(--gray-200) 75%); background-size: 200% 100%; animation: shimmer 1.4s infinite; border-radius: var(--radius); }
@keyframes shimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }

/* Animations */
@keyframes fadeInUp { from { opacity:0; transform:translateY(16px); } to { opacity:1; transform:translateY(0); } }
.fade-in-up { animation: fadeInUp 0.5s ease forwards; }

/* Scrollbar */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: var(--gray-100); }
::-webkit-scrollbar-thumb { background: var(--gray-400); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--primary); }

/* Print */
@media print { .nexo-topbar, .nexo-header, .nexo-nav, .nexo-footer, .back-to-top { display: none !important; } }
