/* ============================================================
   autima-shop.css
   Kompatibilné štýly pre TDShop (redparts) komponenty
   v šablóne Autima (ThemeForest / HasTech)
   ------------------------------------------------------------
   Hlavnú farbu šablóny upravíš tu:
   ============================================================ */
:root {
    --autima-primary: #ff7f00;      /* hlavná (akcentová) farba Autima */
    --autima-dark: #242424;
    --autima-border: #ebebeb;
    --autima-muted: #6c757d;
}

/* ---------- Všeobecné pomocné triedy (redparts block-*) ---------- */
.block-space { height: 30px; }
.block-space--layout--divider-nl,
.block-space--layout--divider-xs { height: 20px; }
.block-space--layout--after-header { height: 30px; }
.block-space--layout--before-footer { height: 50px; }
.block-space--layout--spaceship-ledge-height { height: 30px; }
.block { margin-bottom: 30px; }

/* ---------- Hlavičky blokov / breadcrumb (redparts) ---------- */
.block-header { padding: 15px 0; background: #f5f5f5; margin-bottom: 30px; }
.block-header__title { font-size: 24px; font-weight: 600; margin: 5px 0 0; color: var(--autima-dark); }
.breadcrumb { background: transparent; margin: 0; padding: 0; }
.breadcrumb__list { display: flex; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.breadcrumb__item { font-size: 13px; }
.breadcrumb__item + .breadcrumb__item::before { content: "/"; padding: 0 8px; color: #999; }
.breadcrumb__item-link { color: #555; }
.breadcrumb__item--current .breadcrumb__item-link { color: var(--autima-primary); }
.breadcrumb__spaceship-safe-area,
.breadcrumb__title-safe-area { display: none; }

/* ---------- Section header (redparts) ---------- */
.section-header__body { display: flex; align-items: center; flex-wrap: wrap; border-bottom: 2px solid var(--autima-border); margin-bottom: 25px; padding-bottom: 8px; }
.section-header__title { font-size: 20px; font-weight: 600; margin: 0; text-transform: uppercase; }
.section-header__spring { flex-grow: 1; }
.section-header__divider { display: none; }
.section-header__arrows { display: flex; gap: 5px; }
.arrow__button { border: 1px solid var(--autima-border); background: #fff; width: 30px; height: 30px; cursor: pointer; }
.arrow__button:hover { background: var(--autima-primary); color: #fff; border-color: var(--autima-primary); }
.arrow__button svg { fill: currentColor; }

/* ---------- Card (redparts rozšírenia BS kariet) ---------- */
.card { border: 1px solid var(--autima-border); border-radius: 4px; background: #fff; margin-bottom: 20px; }
.card-body--padding--2 { padding: 2rem; }
.card-title { font-size: 20px; font-weight: 600; margin-bottom: 1.25rem; }
.card-header { padding: 1rem 1.5rem; background: #f8f8f8; border-bottom: 1px solid var(--autima-border); }
.card-header h5 { margin: 0; font-size: 16px; font-weight: 600; }
.card-divider { height: 1px; background: var(--autima-border); }

/* Bootstrap 4 form-group fallback (Autima používa BS5) */
.form-group { margin-bottom: 1rem; }
.form-group label { display: block; margin-bottom: .35rem; font-weight: 500; }
.custom-control.custom-checkbox { display: flex; align-items: center; gap: 8px; margin-bottom: .5rem; }
.custom-control-input { margin-right: 6px; }
.btn-block { display: block; width: 100%; }
.btn-xl { padding: 12px 25px; font-size: 16px; }
.btn-primary { background: var(--autima-primary); border-color: var(--autima-primary); }
.btn-primary:hover, .btn-primary:focus { background: var(--autima-dark); border-color: var(--autima-dark); }

/* ---------- Checkout súhrn ---------- */
.checkout__totals { width: 100%; border-collapse: collapse; margin-bottom: 15px; }
.checkout__totals th, .checkout__totals td { padding: .5rem .25rem; border-bottom: 1px solid var(--autima-border); text-align: left; }
.checkout__totals td:last-child, .checkout__totals th:last-child { text-align: right; white-space: nowrap; }

/* ---------- Obrázky (redparts image komponent) ---------- */
.image__body { display: block; }
.image__tag { max-width: 100%; height: auto; display: block; margin: 0 auto; }
.image--type--product .image__body,
.image--type--category .image__body { position: relative; }

/* ---------- Status / tag badge ---------- */
.status-badge { display: inline-block; }
.status-badge__body { display: inline-flex; align-items: center; gap: 5px; background: #e2f2da; color: #44782a; border-radius: 3px; padding: 3px 8px; font-size: 12px; }
.status-badge__icon svg { fill: currentColor; display: block; }
.status-badge__tooltip { display: none; }
.tag-badge { display: inline-block; background: var(--autima-primary); color: #fff; font-size: 11px; padding: 2px 8px; border-radius: 2px; text-transform: uppercase; margin-bottom: 5px; }
.tag-badge--sale { background: #e52e06; }
.tag-badge--new { background: #3d9cd2; }

/* ---------- Produktová karta (redparts) v Autima vzhľade ---------- */
.products-list__content { display: flex; flex-wrap: wrap; margin: 0 -10px; }
.products-list__item { padding: 0 10px 20px; width: 25%; }
@media (max-width: 991px) { .products-list__item { width: 33.333%; } }
@media (max-width: 767px) { .products-list__item { width: 50%; } }
.products-list[data-layout="list"] .products-list__item { width: 100%; }
.products-list__head { display: none; }
.product-card { border: 1px solid var(--autima-border); border-radius: 4px; padding: 15px; height: 100%; display: flex; flex-direction: column; transition: box-shadow .3s; background: #fff; }
.product-card:hover { box-shadow: 0 2px 12px rgba(0,0,0,.12); }
.product-card__image { text-align: center; margin-bottom: 10px; }
.product-card__meta { font-size: 12px; color: var(--autima-muted); margin-bottom: 5px; }
.product-card__meta-title { font-weight: 600; }
.product-card__name a { color: var(--autima-dark); font-weight: 500; }
.product-card__name a:hover { color: var(--autima-primary); }
.product-card__features { font-size: 12px; color: var(--autima-muted); margin-top: 5px; }
.product-card__features ul { padding-left: 16px; margin: 5px 0; }
.product-card__footer { margin-top: auto; padding-top: 10px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
.product-card__prices { font-weight: 700; color: var(--autima-primary); font-size: 16px; }
.product-card__price p { margin: 0; font-weight: 400; color: var(--autima-muted); }
.product-card__addtocart-icon { border: 0; background: var(--autima-primary); color: #fff; border-radius: 3px; padding: 6px 8px; cursor: pointer; }
.product-card__addtocart-icon svg { fill: currentColor; display: block; }
.product-card__addtocart-icon:hover { background: var(--autima-dark); }
.product-card__addtocart-full { display: none; }
.product-card__info { flex-grow: 0; }

/* Carousel produktov (redparts) - fallback ako grid */
.block-products-carousel .owl-carousel:not(.owl-loaded) { display: flex; flex-wrap: wrap; }
.block-products-carousel__column { padding: 0 10px 20px; }
.block-products-carousel .owl-carousel:not(.owl-loaded) .block-products-carousel__column { width: 25%; }
@media (max-width: 767px) { .block-products-carousel .owl-carousel:not(.owl-loaded) .block-products-carousel__column { width: 50%; } }

/* ---------- Kategórie list (redparts categories-list) ---------- */
.categories-list__body { display: flex; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.categories-list__item { width: 25%; padding: 10px; text-align: center; }
@media (max-width: 767px) { .categories-list__item { width: 50%; } }
.categories-list__item-name { margin-top: 8px; font-weight: 500; color: var(--autima-dark); }
.categories-list__divider { display: none; }

/* ---------- Block banners (miešané farby a pod.) ---------- */
.block-banners__list { display: flex; flex-wrap: wrap; gap: 15px; }
.block-banners__item { position: relative; display: block; width: calc(25% - 12px); border: 1px solid var(--autima-border); border-radius: 4px; overflow: hidden; text-align: center; padding-bottom: 10px; }
@media (max-width: 991px) { .block-banners__item { width: calc(33.333% - 10px); } }
@media (max-width: 767px) { .block-banners__item { width: calc(50% - 8px); } }
.block-banners__item-image img { width: 100%; height: auto; display: block; }
.block-banners__item-image--blur { display: none; }
.block-banners__item-title { display: block; padding: 8px 10px 0; color: var(--autima-dark); font-weight: 500; }
.block-banners__item-button { margin-top: 8px; display: inline-block; }

/* ---------- Block brands (výrobcovia) ---------- */
.block-brands__list { display: flex; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.block-brands__item { width: 12.5%; padding: 10px; text-align: center; border: 1px solid var(--autima-border); margin: -1px 0 0 -1px; }
@media (max-width: 991px) { .block-brands__item { width: 25%; } }
@media (max-width: 575px) { .block-brands__item { width: 33.333%; } }
.block-brands__item-name { font-size: 12px; margin-top: 5px; }
.block-brands__divider { display: none; }
.block-brands__item img { max-width: 100%; height: auto; }

/* ---------- TecDoc dlaždice (product-single) ---------- */
.product-single { border: 1px solid var(--autima-border); border-radius: 4px; padding: 12px; margin-bottom: 15px; text-align: center; background: #fff; transition: box-shadow .3s; }
.product-single:hover { box-shadow: 0 2px 10px rgba(0,0,0,.12); }
.product-single .product-thumb img { max-width: 100%; height: auto; }
.product-single .product-title a { display: block; margin-top: 8px; font-weight: 500; color: var(--autima-dark); }
.product-single .product-title a:hover { color: var(--autima-primary); }
.col-xl-8col { flex: 0 0 12.5%; max-width: 12.5%; }
@media (max-width: 1199px) { .col-xl-8col { flex: 0 0 25%; max-width: 25%; } }
@media (max-width: 575px) { .col-xl-8col { flex: 0 0 50%; max-width: 50%; } }

/* ---------- Account nav (redparts fallback) ---------- */
.account-nav__title { padding: 15px 20px 0; font-size: 16px; }
.account-nav__list { list-style: none; margin: 0; padding: 10px 0; border: 1px solid var(--autima-border); border-radius: 4px; }
.account-nav__item a { display: block; padding: 8px 20px; color: #555; }
.account-nav__item--active a, .account-nav__item a:hover { color: var(--autima-primary); }
.account-nav__divider { height: 1px; background: var(--autima-border); margin: 8px 0; }

/* ---------- View options / toolbox (redparts fallback) ---------- */
.view-options__body { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 10px 15px; background: #f5f5f5; border-radius: 4px; margin-bottom: 15px; }
.view-options__spring { flex-grow: 1; }
.view-options__select { display: flex; align-items: center; gap: 8px; }
.layout-switcher__button { border: 1px solid var(--autima-border); background: #fff; padding: 5px 7px; cursor: pointer; }
.layout-switcher__button--active { background: var(--autima-primary); color: #fff; border-color: var(--autima-primary); }
.layout-switcher__button svg { fill: currentColor; display: block; }

/* ---------- Stránkovanie (bootstrap markup z $pages) ---------- */
.pagination ul { display: flex; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.pagination .page-item .page-link,
.pagination ul li a, .pagination ul li.current, .pagination ul li span {
    display: block; padding: 6px 13px; margin-right: 5px; border: 1px solid var(--autima-border);
    color: var(--autima-dark); border-radius: 3px; background: #fff;
}
.pagination .page-item.active .page-link,
.pagination ul li.current { background: var(--autima-primary); color: #fff; border-color: var(--autima-primary); }
.pagination .page-item .page-link:hover, .pagination ul li a:hover { background: var(--autima-primary); color: #fff; border-color: var(--autima-primary); }

/* ---------- Typografia obsahových stránok ---------- */
.typography, .page_typography { line-height: 1.7; }
.typography img, .page_typography img { max-width: 100%; height: auto; }
.typography table, .page_typography table { width: 100%; margin: 15px 0; border-collapse: collapse; }
.typography table td, .typography table th,
.page_typography table td, .page_typography table th { border: 1px solid var(--autima-border); padding: 8px; }

/* ---------- Doplnkové triedy šablóny autima (nové v tpl súboroch) ---------- */
.price_novat { display: block; font-size: 12px; color: var(--autima-muted); font-weight: 400; }
.category_children_list { list-style: none; margin: 10px 0; padding: 0; font-size: 13px; text-align: center; }
.category_children_list li a { color: #555; }
.category_children_list li a:hover { color: var(--autima-primary); }
.product_attribute_list { list-style: disc; padding-left: 18px; margin: 0; }
.attribute_filter_list { list-style: none; margin: 0 0 12px; padding: 0; }
.attribute_filter_list li { margin-bottom: 6px; }
.widget_filter button { background: var(--autima-dark); color: #fff; border: 0; padding: 8px 20px; border-radius: 3px; cursor: pointer; }
.widget_filter button:hover { background: var(--autima-primary); }
.grid_cart_form { display: flex; align-items: center; gap: 5px; }
.grid_cart_form input[type=number] { border: 1px solid var(--autima-border); padding: 4px 6px; border-radius: 3px; }
.grid_cart_form button { border: 0; background: transparent; cursor: pointer; font-size: 18px; color: var(--autima-dark); }
.grid_cart_form button:hover { color: var(--autima-primary); }
.list_cart_form { display: flex; align-items: center; gap: 8px; }
.list_cart_form input[type=number] { border: 1px solid var(--autima-border); padding: 6px 8px; border-radius: 3px; }
.cart_button_submit { background: var(--autima-dark); color: #fff; border: 0; padding: 9px 18px; border-radius: 3px; cursor: pointer; text-transform: uppercase; font-size: 13px; }
.cart_button_submit:hover { background: var(--autima-primary); }
.subcategory_tile .product_thumb img { max-height: 160px; width: auto; margin: 0 auto; }
.single_banner img { border-radius: 4px; }
.banner_text a { font-weight: 500; color: var(--autima-dark); }
.banner_text a:hover { color: var(--autima-primary); }

/* Mini košík - obsah načítaný AJAXom */
.mini_cart .cart-dropdown { max-height: 340px; overflow-y: auto; }

/* Live search vo vyhľadávaní */
.search-container { position: relative; }

/* Rôzne drobnosti z redparts, ktoré môžu prísť v skopírovaných súboroch */
.input-number__add, .input-number__sub { display: none; }
.product__title { font-size: 24px; font-weight: 600; }
.shop-features__list { display: flex; flex-wrap: wrap; list-style: none; padding: 0; margin: 20px 0 0; gap: 15px; }
.shop-features__item { display: flex; align-items: center; gap: 10px; }
.shop-features__item-icon svg { fill: var(--autima-primary); }
.shop-features__item-title { font-weight: 600; font-size: 13px; }
.shop-features__item-subtitle { font-size: 12px; color: var(--autima-muted); }
.shop-features__divider { display: none; }
.share-links__list { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 10px 0 0; padding: 0; }
.share-links__item a { display: inline-block; padding: 3px 10px; border-radius: 3px; background: #eee; color: #333; font-size: 12px; }
.share-links__item--type--like a { background: #3c5a99; color: #fff; }
.share-links__item--type--tweet a { background: #00a2f9; color: #fff; }
.share-links__item--type--pin a { background: #e60023; color: #fff; }
.share-links__item--type--whatsapp a { background: #25d366; color: #fff; }
.tags__list a { display: inline-block; padding: 3px 10px; margin: 0 5px 5px 0; border: 1px solid var(--autima-border); border-radius: 3px; font-size: 12px; color: #555; }
