/* Header stílusok már a header.css-ben vannak definiálva */

/* Dropdown menü stílusok */
.dropdown-menu {
    box-shadow: 0 4px 8px rgba(0,0,0,0.1); /* Árnyék hozzáadása */
    border-radius: 8px; /* Kerekített sarkok */
    padding: 10px; /* Több tér az elemek között */
    border: none; /* Eltávolítjuk az alapértelmezett keretet */
}

.dropdown-menu ul {
    list-style: none; /* Listajelölők eltávolítása */
    margin: 0;
    padding: 0;
}

.dropdown-menu li {
    padding: 8px 0; /* Több tér minden elem között */
    border-bottom: 1px solid #f1f1f1; /* Elválasztó vonal hozzáadása */
}

.dropdown-menu li:last-child {
    border-bottom: none; /* Az utolsó elem alatti elválasztó vonal eltávolítása */
}

.dropdown-menu .dropdown-item {
    display: block; /* Teljes szélességű elemek */
    padding: 8px 20px; /* Nagyobb padding az elemeknek */
    color: #333; /* Szövegszín beállítása */
    text-decoration: none; /* Az aláhúzás eltávolítása a linkekről */
    transition: background-color 0.2s ease-in-out; /* Sima háttérszín átmenet */
}

.dropdown-menu .dropdown-item:hover {
    background-color: #f8f8f8; /* Háttérszín megváltoztatása amikor ráviszik az egeret */
}

.balance {
    font-weight: bold; /* Az egyenleg kiemelése */
} 

/* Header logo and responsive image - már a header.css-ben vannak definiálva */

/* Search bar */
#search-bar .header-search form { display: flex; width: 100%; }
#search-bar .input {
    flex-grow: 1;
    max-width: 450px;
    width: 100%;
    border-top-left-radius: 40px;
    border-bottom-left-radius: 40px;
}
.search-btn {
    border-top-right-radius: 40px;
    border-bottom-right-radius: 40px;
}
@media (max-width: 991px) {
    #search-bar .input { max-width: 100%; }
}

/* Search results dropdown */
#search-results {
    background: white;
    border: 1px solid #ddd;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    padding: 10px;
    border-radius: 5px;
    max-height: 450px;
    overflow-y: auto;
    z-index: 1000;
    position: absolute;
    top: 100%;
    left: 0;
    display: none;
}
.search-result-item .result-image { max-height: 100px; margin-top: 10px; }
.search-result-item .result-price { margin-left: 75px; }

/* Utility */
.cursor-pointer { cursor: pointer; }
.ml--10 { margin-left: -10px; }
.ml--20 { margin-left: -20px; }
.dropdown-menu--compact { padding: 7px; }
.cart-toggle-link { margin-left: -20px; }

/* Cart summary extracted */
.cart-summary {
    background: #fff;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    margin: 15px 0;
    transition: all 0.3s ease;
}

/* Kategória menü CSS már a category_menu.css-ben van definiálva */

/* Hide cart on responsive nav on desktop */
/* Header cart visibility styles - már a header.css-ben vannak definiálva */

/* Rainbow text link */
.rainbow-text a {
    background: linear-gradient(90deg, red, orange, yellow, green, blue, indigo, violet, red);
    background-size: 400%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: rainbow-animation 10s linear infinite;
}
@keyframes rainbow-animation { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }

/* Product grid (extracted) */
.price-filter, .platform-filter, .type-filter { margin-bottom: 20px; }
#productContainer { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 25px; padding: 20px 0; }
.product { flex: 0 0 calc(30% - 20px); box-sizing: border-box; margin-bottom: 120px; display: flex; flex-direction: column; background: #fff; border-radius: 20px; box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08); overflow: visible; transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); position: relative; border: 1px solid rgba(240, 240, 240, 0.8); z-index: 1; min-height: 520px; }
.product:hover { transform: translateY(-12px) scale(1.02); box-shadow: 0 25px 60px rgba(0, 0, 0, 0.15); border-color: rgba(102, 126, 234, 0.3); }
.product-img { height: 280px; display: flex; justify-content: center; align-items: center; overflow: hidden; background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%); position: relative; }
.product-img::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: linear-gradient(45deg, rgba(255,255,255,0.1) 0%, transparent 100%); pointer-events: none; z-index: 1; }
.product-img img { height: 85%; width: auto; max-width: 90%; object-fit: contain; transition: transform 0.3s ease; filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.1)); position: relative; z-index: 2; }
.product:hover .product-img img { transform: scale(1.08); }
.product-body { flex: 1; display: flex; flex-direction: column; justify-content: space-between; padding: 25px 20px 25px; background: #fff; position: relative; border-radius: 0 0 20px 20px; transition: border-radius 0.3s ease; }
.product-category { font-size: 11px; color: #6c757d; text-transform: uppercase; letter-spacing: 1.2px; margin-bottom: 8px; font-weight: 600; opacity: 0.8; }
.product-name { word-wrap: break-word; white-space: normal; margin-bottom: 12px; }
.product-name a { color: #2c3e50; text-decoration: none; font-size: 16px; font-weight: 600; line-height: 1.4; transition: color 0.3s ease; display: block; }
.product-name a:hover { color: #667eea; }
.product-price { font-size: 22px; font-weight: 700; color: #2c3e50; margin-bottom: 15px; position: relative; }
.product-price::before { content: ''; position: absolute; bottom: -5px; left: 0; width: 30px; height: 3px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); border-radius: 2px; }
.product-old-price { font-size: 14px; color: #adb5bd; margin-left: 10px; position: relative; }
.product-btns { display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px; padding: 0 5px; }
.add-to-wishlist, .quick-view { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important; border: none !important; border-radius: 50%; width: 45px; height: 45px; color: white !important; cursor: pointer; transition: all 0.3s ease; position: relative; display: flex !important; align-items: center; justify-content: center; font-size: 18px; box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3); z-index: 5; }
.add-to-wishlist i, .quick-view i { font-size: 16px; color: white !important; }
.add-to-wishlist:hover, .quick-view:hover { transform: scale(1.1) translateY(-2px); box-shadow: 0 8px 25px rgba(102, 126, 234, 0.4); }
.add-to-cart { padding: 0 20px 20px; position: absolute; bottom: -80px; left: 0; right: 0; z-index: 15; opacity: 0; transform: translateY(0); transition: all 0.4s ease; background: rgba(255, 255, 255, 0.98); backdrop-filter: blur(10px); border-radius: 0 0 20px 20px; border-top: 1px solid rgba(240, 240, 240, 0.8); }
.add-to-cart-btn { width: 100%; padding: 14px 20px; background: linear-gradient(135deg, #28a745 0%, #20c997 100%) !important; color: white !important; border: none; border-radius: 25px; font-size: 14px; font-weight: 600; cursor: pointer; transition: all 0.4s ease; text-transform: uppercase; letter-spacing: 0.8px; position: relative; overflow: hidden; box-shadow: 0 6px 20px rgba(40, 167, 69, 0.3); display: block !important; z-index: 10; }
.add-to-cart-btn::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent); transition: left 0.5s ease; }
.add-to-cart-btn:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(40, 167, 69, 0.4); }
.add-to-cart-btn:hover::before { left: 100%; }
.add-to-cart-btn:disabled { background: linear-gradient(135deg, #6c757d 0%, #adb5bd 100%); cursor: not-allowed; box-shadow: 0 4px 15px rgba(108, 117, 125, 0.2); }
.add-to-cart-btn i { margin-right: 8px; font-size: 14px; }
/* Admin view button */
.btn-admin-view {
    width: 100%;
    margin-top: 8px;
    display: inline-flex !important;
    justify-content: center;
}
.btn-admin-view:hover {
    background: #5a6268 !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(108, 117, 125, 0.3);
}
.tooltipp { visibility: hidden; width: auto; min-width: 180px; max-width: 220px; background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%); color: #fff; text-align: center; border-radius: 8px; padding: 10px 15px; position: absolute; z-index: 1000; bottom: 60px; left: 50%; transform: translateX(-50%); opacity: 0; transition: all 0.3s ease; font-size: 12px; font-weight: 500; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); white-space: nowrap; }
.tooltipp::after { content: ""; position: absolute; top: 100%; left: 50%; margin-left: -5px; border-width: 5px; border-style: solid; border-color: #2c3e50 transparent transparent transparent; }
.add-to-wishlist:hover .tooltipp, .quick-view:hover .tooltipp { visibility: visible; opacity: 1; bottom: 65px; }
.product::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); transform: scaleX(0); transition: transform 0.3s ease; z-index: 1; }
.product:hover::before { transform: scaleX(1); }
@media (min-width: 769px) {
    .product .add-to-cart { opacity: 0; bottom: -80px; pointer-events: none; }
    .product:hover .add-to-cart { opacity: 1; bottom: 0px; pointer-events: auto; }
    .product:hover .add-to-cart-btn { box-shadow: 0 15px 40px rgba(40, 167, 69, 0.4); }
    .product:hover .product-body { border-radius: 0 0 0 0; }
}
@media (max-width: 992px) {
    .product { flex: 0 0 calc(45% - 20px); }
    .add-to-cart-btn { padding: 12px 18px; font-size: 13px; }
}
@media (max-width: 768px) {
    .product { flex: 0 0 100%; margin-bottom: 30px; }
    #productContainer { gap: 20px; }
    .product-img { height: 240px; }
    .product .add-to-cart { opacity: 1 !important; transform: translateY(0) !important; pointer-events: auto !important; position: relative !important; bottom: auto !important; padding: 0 20px 20px !important; background: transparent !important; backdrop-filter: none !important; border-radius: 0 !important; border-top: none !important; }
    .product .add-to-cart-btn { background: linear-gradient(135deg, #fd7e14 0%, #e83e8c 100%) !important; box-shadow: 0 6px 20px rgba(253, 126, 20, 0.3) !important; color: white !important; display: block !important; }
    .product .add-to-cart-btn:hover { box-shadow: 0 12px 30px rgba(253, 126, 20, 0.4) !important; transform: translateY(-2px) !important; }
    .product .product-body { border-radius: 0 0 20px 20px !important; }
}
@media (max-width: 480px) {
    .product-img { height: 220px; }
    .product-body { padding: 20px 15px 15px; }
    .add-to-cart { padding: 0 15px 15px; }
    .product-btns { margin-bottom: 12px; }
}

/* Footer payments */
.footer-payments { display: flex; justify-content: center; align-items: center; list-style: none; padding: 0; margin: 0; }
.footer-payments li { margin: 0 10px; }
.footer-payments li a img { width: 80px; height: 50px; object-fit: contain; display: block; }

/* Special nav link */
.nav-contact-link { color: red !important; font-weight: bold !important; }

/* Account dropdown left adjust */
.account-dropdown { margin-left: -10px; } 

/* Flag icon */
.flag-icon { width: 20px; height: 15px; margin-right: 5px; }

/* Cart header counters */
.cart-item-count { display: block; color: #666; font-size: 0.9em; margin-bottom: 8px; font-weight: 500; }
.cart-subtotal { color: #2c3e50; font-size: 1.4em; font-weight: 700; margin: 0; padding: 10px 0; border-top: 1px solid #eee; }
.cart-btns { display: flex; gap: 10px; margin-top: 15px; }
.cart-btn-view { flex: 1; text-align: center; padding: 12px 20px; border-radius: 8px; font-weight: 600; transition: all 0.3s ease; text-decoration: none; background: #f8f9fa; color: #2c3e50; border: 1px solid #e9ecef; display: inline-block; }
.cart-btn-checkout { flex: 1; text-align: center; padding: 12px 20px; border-radius: 8px; font-weight: 600; transition: all 0.3s ease; text-decoration: none; background: #007bff; color: #fff; border: 1px solid #007bff; display: inline-block; }

/* Search result list item */
.search-result-item { border-bottom: 1px solid #ddd; }
.result-category { color: grey; } 

/* Inline style replacements */
.search-input-rounded { border-top-left-radius: 40px; border-bottom-left-radius: 40px; width: 450px; }
.search-results-dropdown { position: absolute; top: 100%; left: 0; display: none; }
.dropdown-toggle-pointer { cursor: pointer; }
.flag-icon-inline { width: 20px; height: 15px; }
.dropdown-menu-compact { padding: 7px; }
.flag-icon-margin { width: 20px; height: 15px; margin-right: 5px; }
.account-dropdown-left { margin-left: -10px; }
.cart-toggle-left { cursor: pointer; margin-left: -20px; }
.cart-summary-inline { background: #fff; padding: 20px; border-radius: 12px; box-shadow: 0 4px 20px rgba(0,0,0,0.08); margin: 15px 0; transition: all 0.3s ease; }
.cart-item-count-inline { display: block; color: #666; font-size: 0.9em; margin-bottom: 8px; font-weight: 500; }
.cart-subtotal-inline { color: #2c3e50; font-size: 1.4em; font-weight: 700; margin: 0; padding: 10px 0; border-top: 1px solid #eee; }
.cart-btns-inline { display: flex; gap: 10px; margin-top: 15px; }
.cart-btn-view-inline { flex: 1; text-align: center; padding: 12px 20px; border-radius: 8px; font-weight: 600; transition: all 0.3s ease; text-decoration: none; background: #f8f9fa; color: #2c3e50; border: 1px solid #e9ecef; }
.cart-btn-checkout-inline { flex: 1; text-align: center; padding: 12px 20px; border-radius: 8px; font-weight: 600; transition: all 0.3s ease; text-decoration: none; background: #007bff; color: white; border: 1px solid #007bff; }
.cart-arrow-icon { margin-left: 5px; transition: transform 0.3s ease; }
.nav-contact-link-inline { color: red; font-weight: bold; }
.product-container-inline { display: flex; flex-wrap: wrap; justify-content: space-around; }
.favorite-heart-red { color: red; }
.no-products-message { text-align: center; } 

/* Add-to-cart modal (match termekek.css) */
#addToCartModal {
	display: none;
	position: fixed;
	z-index: 1000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.5);
	animation: fadeIn 0.3s ease-in-out;
}
#addToCartModal .modal-content {
	background-color: #fff;
	margin: 15% auto;
	padding: 30px;
	border-radius: 15px;
	width: 90%;
	max-width: 500px;
	text-align: center;
	position: relative;
	animation: slideIn 0.3s ease-in-out;
	box-shadow: 0 5px 15px rgba(0,0,0,0.3);
}
#addToCartModal .icon-container { margin-bottom: 20px; }
#addToCartModal .modal-title { color: #2c3e50; margin-bottom: 15px; font-size: 24px; }
#addToCartModal #modalMessage { color: #34495e; margin-bottom: 25px; font-size: 16px; line-height: 1.5; }
#addToCartModal .btn-container { display: flex; justify-content: center; gap: 15px; }
#addToCartModal .btn { padding: 12px 25px; border: none; border-radius: 8px; font-size: 16px; font-weight: 600; cursor: pointer; transition: all 0.3s ease; }
#addToCartModal .btn.btn-secondary { background-color: #f8f9fa; color: #2c3e50; }
#addToCartModal .btn.btn-secondary:hover { background-color: #e9ecef; }
#addToCartModal .btn.btn-primary { background-color: #28a745; color: white; }
#addToCartModal .btn.btn-primary:hover { background-color: #218838; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes slideIn { from { transform: translateY(-50px); opacity: 0; } to { transform: translateY(0); opacity: 1; } } 
