/** Lábléc menü **/
.footer-menu {
    clear: both;
    margin-bottom: 20px;
}

.footer-menu ul {
    clear: both;
    overflow: hidden;
    padding: 0px;
    margin: 0px;
}

.footer-menu ul li {
    list-style: none;
    float: left;
    padding: 0;
    margin: 0;
    padding-right: 10px;
    margin-right: 10px;
    border-right: 1px solid black;
}

.footer-menu ul li:last-child {
    border-right: none;
}

.footer-menu ul li a {
}

@media(max-width:640px){

    .footer-menu ul li {
        list-style: none;
        float: none;
        padding: 0;
        margin: 0;
        border-right: none;
    }
}
/** Lábléc menü - VÉGE **/




/** Egyéb **/
.sitemap_title {
    font-size: 1.5em;
    color: #505050;
    font-weight: 700;
    font-family: 'Roboto', sans-serif;
}




.account__address__row_twocol {
    display: flex;
    margin: 0 -1rem;
}
.account__address__row_twocol label {
    margin: 0 1rem;
    flex: 1 1;
}
.account__address__row_twocol label.short, label.short{
    flex: 0 1 200px;
}

.btn-contact {
    border: none;
    background: red;
    color: white;
    font-size: 1.2rem;
    text-transform: uppercase;
    padding: 0.5rem 1rem;
    border-radius: 3px;
    font-weight: bolder;
    width: auto;
}

.btn-contact:hover {
    cursor: pointer;
}
.btn-contact:disabled {
    cursor: not-allowed;
    filter: alpha(opacity=65);
    opacity: 0.65;
    -webkit-box-shadow: none;
    box-shadow: none;
}

form label.has-error input {
    border-color: red;
}

form label.has-error div.error-mark {
    color:red;
    font-size: 11px;
    text-transform: none;
    margin-top: -20px;
    margin-bottom: 15px;
}

form label.checkbox-label.has-error div.error-mark {
    margin: auto;
}

form label.required::before, form label span.required::before {
    color: red;
    content: " *";
    font-size: 10px;
    font-weight: normal;
    vertical-align: top;
    margin-right: 3px;
}


@media (max-width:640px){
    .account__address__row_twocol {
        display: block;
    }
}



/** Fejléc nyelvválasztó és login linkek **/
.header-user .header-links a {
  margin-left: 1rem;
}

.header-user a.lang-selector-link:last-child {
    margin-left: 0px;
}


.grid__item.no-border {
    box-shadow: none;
}

.hidden {
    display: none !important;
}


/*
nyelvválasztó, ami nem jó seholsem, mert főoldalon ott a keresés mező, webáruzáh alatt meg nincs
@media (max-width: 540px){
    .lang-selector-link {
        bottom: 0px;
        position: absolute;
    }
    .lang-selector-link-hu {
        right: 30px;
    }
    .lang-selector-link-en {
        right: 0px;
    }
}*/


.product-card__dropdown-button {
    cursor: pointer;
}

.webstore-title {
    margin-bottom: 10px;
}

.webstore-title span.title {
    color: #555;
    text-transform: uppercase;
}

.webstore-title span.subtitle {
    color: black;
    margin-left: 10px;
}

.webstore-title span.subtitle2 {
    color: black;
    font-weight: bold;
}

.param-chip-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    align-items: center;
    margin-bottom: 0.6rem;
}

.param-chip {
    display: inline-flex;
    align-items: center;
    gap: 0;
    padding: 0.22rem 0.65rem;
    border-radius: 20px;
    font-size: 0.82rem;
    line-height: 1.3;
    white-space: nowrap;
    border: 1px solid;
}

.param-chip--matched {
    background: #f0fdf4;
    border-color: #86efac;
}
.param-chip--matched .param-chip__val {
    color: #166534;
    font-weight: 600;
}

.param-chip--info {
    background: #f3f4f6;
    border-color: #d1d5db;
}
.param-chip--info .param-chip__val {
    color: #374151;
    font-weight: 500;
}

.param-chip--dropped {
    background: #fef9f0;
    border-color: #fcd34d;
}
.param-chip--dropped .param-chip__val {
    color: #92400e;
    font-weight: 600;
}

.param-chip__key {
    color: #6b7280;
    font-weight: 400;
}

.param-chip__sep {
    color: #d1d5db;
    margin: 0 0.25rem;
}

.param-chip-bar--compact .param-chip__sep {
    margin: 0;
}

.param-chip-style-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.2rem 0.5rem;
    border-radius: 20px;
    font-size: 0.68rem;
    font-weight: 600;
    line-height: 1.3;
    white-space: nowrap;
    border: 1px dashed #9ca3af;
    background: #fff;
    color: #6b7280;
    cursor: pointer;
}

.param-chip-style-toggle:hover {
    background: #f3f4f6;
    border-color: #6b7280;
}

.catalog-notice {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: #fff8e1;
    border-left: 3px solid #e6a817;
    padding: 0.45rem 0.75rem;
    margin-bottom: 0.5rem;
    border-radius: 0 4px 4px 0;
    font-size: 0.82rem;
    color: #6b4f00;
}

.catalog-notice__icon {
    font-size: 1.1em;
    flex-shrink: 0;
    color: #e6a817;
    line-height: 1.4;
}

.catalog-notice__body {
    flex: 1;
    min-width: 0;
}

.catalog-notice a {
    color: #6b4f00;
    text-decoration: underline;
}

.cross-category-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: 0.4rem 0.6rem;
    margin-bottom: 0.3rem;
    border: 1px solid #e6a817;
    border-radius: 6px;
    background: #fffbf0;
    text-decoration: none;
    color: inherit;
    transition: background 0.15s, border-color 0.15s;
}
.cross-category-row:last-child {
    margin-bottom: 0;
}
.cross-category-row:hover {
    background: #f0fdf4;
    border-color: #86efac;
}
.cross-category-row__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    flex: 1 1 auto;
}
.cross-category-row__meta {
    font-size: 0.82rem;
    color: #374151;
    white-space: nowrap;
}
.cross-category-row__count {
    color: #6b7280;
    margin-left: 0.2rem;
}
.cross-category-row__arrow {
    color: #9ca3af;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.filter-warning {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: #fff8e1;
    border-left: 3px solid #e6a817;
    padding: 0.45rem 0.75rem;
    margin-bottom: 0.5rem;
    border-radius: 0 4px 4px 0;
    font-size: 0.82rem;
    color: #6b4f00;
}

.filter-warning__icon {
    font-size: 1.1em;
    flex-shrink: 0;
    color: #e6a817;
}

.webstore-notfound {
    text-align: center;
    color: red;
    text-transform: uppercase;
    font-weight: bold;
    padding: 20px 0;
}


.webstore-menupagination__pages__page {
    overflow: hidden;
    padding-left: 12px;
}



.webstore-category-list {
    clear: both;
}

.webstore-category-list-item {
    /*border: 1px solid red;*/
    float: left;
    width: 25%;
    padding: 10px;
}

.webstore-category-list-item-title {
    /*border: 1px solid blue;*/
    margin: 0px;
    padding: 0px;
    height: 40px;
    font-size: 12px;
}



@media (max-width:767px){
    .webstore-category-list-item {
        width: 50%;
    }
}

.catalog-menu-side-manufacturer-link.active
, .catalog-menu-side-category-abc-link.active
, .catalog-menu-side-category-tree-link.active {
    font-weight: bold;
    font-style: italic;
}


.top-mark {
    position: fixed;
    width: 100%;
    z-index: 1000;

    top: 0;
    left: 0;
    text-align: center;
    padding: 8px 14px;

    border-color: #D4323D;

    color: #FFF;
    font-weight: 700;
    border-radius: 0;
    text-shadow: 1px 1px 1px rgba(0,0,0,.3);
}

.top-error-mark {
    background-color: red;
}

.top-success-mark {
    background-color: green;
}

/*.body-with-top-mark {
    margin-top: 35px;
}*/


.default-form-select {
    padding: 0.15rem 0.3rem;
    border: 1px solid lightgray;
}

.webstore__main {
    max-width: 100%;
    padding-top: 0.6rem;
}

.webstore-wrap {
    margin-top: 0;
}

.webstore-search-bar {
    margin-bottom: 0.6rem;
}

.webstore__categories {
    padding-top: 0.6rem;
}

.webstore-menupagination__pagination {
    margin-bottom: 0.3rem;
}

.top-mark-alert-close {
    color: #000;
    opacity: .4;
    position: relative;
    top: 0px;
    right: 0px;
    padding: 0;
    cursor: pointer;
    background: 0 0;
    border: 0;
    appearance: none;
    float: right;
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
    text-shadow: 0 1px 0 #fff;
}



.product-page__header-text {
    display: inline;
}

.product-card header.product-list-header strong {
    color: #555;
}

.product-card header.product-page-header strong {
    font-size: 1.4rem;
    line-height: 1.6rem;
    color: #555;
}



/** termék kereső **/
.product-search-widget {
    position: relative;
    background: none;
}

.product-search-widget-loading {
    display: none;
    width: 30px;
    height: 30px;
    position: absolute;
    right: 0px;
    top: 8px;
}

.dropdown-menu {
    position:absolute;
    top:100%;
    left:0;
    z-index:1000;
    display:none;
    float:left;
    min-width:10rem;
    padding:.5rem 0;
    margin:.125rem 0 0;
    font-size:0.85rem;
    color:#212529;
    text-align:left;
    list-style:none;
    background-color:#fff;
    background-clip:padding-box;
    border:1px solid rgba(0,0,0,.15);
    border-radius:.25rem
}


ul.dropdown-menu {
    font-style: normal;
    font-weight: 400;
    outline: 0;
}

ul.dropdown-menu li {
    border: 0;
    font-style: normal;
    font-weight: 400;
    margin: 0;
    outline: 0;
    padding: 0;
}

.dropdown-item {
    display:block;
    width:100%;
    padding:.25rem 1.5rem;
    clear:both;
    font-weight:400;
    color:#212529;
    text-align:inherit;
    white-space:nowrap;
    background-color:transparent;
    border:0
}
.dropdown-item:focus,
.dropdown-item:hover {
    text-decoration:none;
}
.dropdown-item.active,
.dropdown-item:active {
    color:#fff;
    text-decoration:none;
    background-color:#007bff
}
.dropdown-item.disabled,
.dropdown-item:disabled {
    color:#6c757d;
    background-color:transparent
}

ul.dropdown-menu li.active {
    background-color: #eaf1f7;
}

ul.dropdown-menu li.active a.dropdown-item {
    color:#000;
}

/*
ul.typeahead li.dropdown-header {
    display: none;
}
*/

/* clears the 'X' from Internet Explorer */
input[type=search]::-ms-clear {  display: none; width : 0; height: 0; }
input[type=search]::-ms-reveal {  display: none; width : 0; height: 0; }

/* clears the 'X' from Chrome */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration { display: none; }



.pricecalculator-content .pricecalculator-content-loading {
    margin: 60px 0;
    text-align: center;
}

.pricecalculator-content .pricecalculator-content-loading i {
    font-size: 32px;
}


.password-section {
    position: relative;    
 }

 .password-section .fa-eye {
    position: absolute;
    top: 40px;
    right: 12px; /* Adjust this value to control the icon's position */
    transform: translateY(-50%);
    cursor: pointer;
    opacity: 0.6;
 }
 .password-section .fa-eye-slash {
    position: absolute;
    top: 40px;
    right: 12px; /* Adjust this value to control the icon's position */
    transform: translateY(-50%);
    cursor: pointer;
    opacity: 0.6;
 }


/* ── Katalógus eszköztár (lapozó + nézet toggle) ── */

.catalog-toolbar-row {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.4rem 0;
    min-width: 0;
    width: 100%;
}

.catalog-toolbar-row__perpage {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.78rem;
    color: #6b7280;
    white-space: nowrap;
    flex-shrink: 0;
}

.catalog-toolbar-row__perpage select {
    padding: 0.22rem 0.45rem;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 0.8rem;
    background: #fff;
    color: #374151;
    cursor: pointer;
    appearance: auto;
}

/* ── Számozott lapozó ── */

.catalog-pagination {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.18rem;
    flex-shrink: 0;
}

.catalog-pagination__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.9rem;
    height: 1.9rem;
    padding: 0 0.35rem;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    font-size: 0.8rem;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    color: #4b5563;
    background: #fff;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
    cursor: pointer;
    user-select: none;
}

a.catalog-pagination__btn:hover {
    background: #f3f4f6;
    border-color: #9ca3af;
    color: #111827;
    text-decoration: none;
}

.catalog-pagination__btn--current {
    background: #2563eb;
    border-color: #2563eb;
    color: #fff;
    font-weight: 700;
    cursor: default;
    box-shadow: 0 1px 4px rgba(37,99,235,0.25);
}

.catalog-pagination__btn--disabled {
    color: #d1d5db;
    border-color: #f3f4f6;
    background: #fafafa;
    cursor: default;
}

.catalog-pagination__ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.4rem;
    height: 1.9rem;
    font-size: 0.85rem;
    color: #9ca3af;
    letter-spacing: 0.05em;
}

/* ── Nézet toggle ── */

.catalog-view-toggle-wrap {
    display: flex;
    flex-shrink: 0;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    overflow: hidden;
}

.catalog-view-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.9rem;
    height: 1.9rem;
    border: none;
    border-right: 1px solid #e5e7eb;
    background: #fff;
    color: #9ca3af;
    cursor: pointer;
    transition: background 0.12s, color 0.12s;
    flex-shrink: 0;
}

.catalog-view-btn:last-child {
    border-right: none;
}

.catalog-view-btn:hover {
    background: #f3f4f6;
    color: #374151;
}

.catalog-view-btn--active {
    background: #2563eb;
    color: #fff;
}


/* ── Képek elrejtése ── */

#product-list-container.no-images .product-card__image { display: none; }

/* ── Rács nézet ── */

#product-list-container.grid-view,
.product-list-container.grid-view {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
    gap: 0.75rem;
    align-items: stretch;
}

#product-list-container.grid-view .product-card,
.product-list-container.grid-view .product-card {
    margin: 0;
    padding: 0.75rem;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

#product-list-container.grid-view .product-card:first-child,
.product-list-container.grid-view .product-card:first-child {
    margin-top: 0;
}

@media (max-width: 639px) {
    #product-list-container.grid-view,
    .product-list-container.grid-view {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ── Lista nézet ── */
#product-list-container:not(.grid-view):not(.compact-view) .product-card,
.product-list-container:not(.grid-view):not(.compact-view) .product-card {
    padding: 0.75rem;
    margin: 1rem 0;
}
#product-list-container:not(.grid-view):not(.compact-view) .product-card__row__cart--right,
.product-list-container:not(.grid-view):not(.compact-view) .product-card__row__cart--right {
    margin-bottom: 0;
}
#product-list-container:not(.grid-view):not(.compact-view) .product-card__infocol,
.product-list-container:not(.grid-view):not(.compact-view) .product-card__infocol {
    margin-bottom: 0;
}
#product-list-container:not(.grid-view):not(.compact-view) .product-card__row__infobar,
.product-list-container:not(.grid-view):not(.compact-view) .product-card__row__infobar {
    margin-bottom: 0;
}

/* ── Kompakt nézet ── */

#product-list-container.compact-view .product-card,
.product-list-container.compact-view .product-card {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.5rem;
    padding: 0.3rem 0.5rem;
    border-bottom: 1px solid #f3f4f6;
    border-radius: 0;
    margin: 0;
    min-height: 44px;
}

.product-card-compact__img {
    display: block;
}

.product-list-container.grid-view .similar-badge-row {
    grid-column: 1 / -1;
    margin-bottom: -0.5rem;
}

#product-list-container.compact-view.no-images .product-card-compact__img,
.product-list-container.compact-view.no-images .product-card-compact__img {
    display: none;
}

/** Fejléc: bejelentkezett fiók link + céges vevő cégneve alatta **/
.header-account-block {
    display: inline-block;
    position: relative;
    margin-left: 1rem;
}

.header-links .header-account-block a {
    margin-left: 0;
}

.header-account-block__company {
    position: absolute;
    top: 100%;
    right: 0;
    white-space: nowrap;
    text-transform: none;
    font-size: 0.8rem;
    color: #888;
    font-weight: 400;
    margin-top: 3px;
}

/** Fejléc: nyelvzászlók alatt a pénznemváltó (HUF / EUR) **/
.header-lang-currency {
    display: inline-block;
    position: relative;
    margin-left: 1rem;
}

.header-lang-currency a.lang-selector-link-hu {
    margin-left: 0;
}

.header-lang-currency a.lang-selector-link-en {
    margin-left: 0;
}

.header-currency-switch {
    position: absolute;
    top: 100%;
    right: 0;
    white-space: nowrap;
    font-size: 0.8rem;
    text-align: right;
    border-top: 1px solid #bbb;
    margin-top: 4px;
    padding-top: 4px;
}

.header-links .header-currency-switch a {
    margin-left: 0;
}

/* .header-account-block__company and .header-currency-switch are absolutely positioned
   below the header-user row (so they don't grow its flow height and disturb .logo's
   fixed absolute offset), but they need real reserved space below the row or they
   overlap .header-searchrow. .header-user's own margin-bottom (elsewhere ~1rem) isn't
   enough for the taller .header-currency-switch block, so it's raised here.
   On ".webstore" pages (catalog/shop templates), .logo is `position: relative` instead
   of absolute (see .webstore .logo in style.css), so it contributes real height to the
   row and .header-user is already tall enough on its own — the extra margin here would
   just be redundant empty space there, so it's reverted back down for that context. */
.header-user {
    margin-bottom: 2rem;
}

.webstore .header-user {
    margin-bottom: 1rem;
}