/* ==========================================================
   LOZEA.CZ — DETAIL PRODUKTU V11
   Samostatný doplněk pro Shoptet Classic.
   Aktivuje se pouze po inicializaci lozea-product-detail-v9.js.
   ========================================================== */

/* Pojistka pro JS: úpravy DOM se spustí jen při načteném CSS. */
html {
    --lozea-product-detail-css-ready: 1;
}

body.lozea-product-detail-ready {
    --lozea-product-ink: #2f3034;
    --lozea-product-muted: #747477;
    --lozea-product-line: #e7dfd4;
    --lozea-product-soft: #f7f3ed;
    --lozea-product-accent: #ad7830;
    --lozea-product-button: #424347;
    --lozea-product-shadow: 0 14px 38px rgba(42, 43, 46, 0.075);
}

/* Nadpis, značka, kód a hodnocení */
body.lozea-product-detail-ready .p-detail-inner-header,
body.lozea-product-detail-ready .lozea-product-heading {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 22px !important;
    padding: 0 0 18px !important;
    border-bottom: 1px solid var(--lozea-product-line) !important;
}

body.lozea-product-detail-ready .p-detail-inner-header h1,
body.lozea-product-detail-ready .p-detail h1,
body.lozea-product-detail-ready h1[itemprop="name"] {
    margin-bottom: 10px !important;
    color: var(--lozea-product-ink) !important;
    font-family: inherit !important;
    font-size: clamp(27px, 2.15vw, 35px) !important;
    font-weight: 400 !important;
    line-height: 1.18 !important;
    letter-spacing: -0.02em;
}

body.lozea-product-detail-ready .p-detail-inner-header .p-code,
body.lozea-product-detail-ready .p-detail-inner-header .p-code-label,
body.lozea-product-detail-ready .p-detail-inner-header .p-code-value,
body.lozea-product-detail-ready .p-detail-inner-header .stars-wrapper,
body.lozea-product-detail-ready .p-detail-inner-header .stars-label,
body.lozea-product-detail-ready .p-detail-inner-header .brand-wrapper {
    color: var(--lozea-product-muted) !important;
}

body.lozea-product-detail-ready .p-detail-inner-header .stars-wrapper,
body.lozea-product-detail-ready .p-detail-inner-header .brand-wrapper,
body.lozea-product-detail-ready .p-detail-inner-header .p-code {
    vertical-align: middle;
}

/* Hlavní dvousloupcový layout — grid je na skutečném .product-top */
body.lozea-product-detail-ready .p-detail-inner.lozea-product-detail-shell,
body.lozea-product-detail-ready .p-detail-inner.lozea-product-detail-shell > form,
body.lozea-product-detail-ready .p-detail-inner.lozea-product-detail-shell #product-detail-form {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body.lozea-product-detail-ready .p-detail-inner.lozea-product-detail-shell {
    margin-top: 24px !important;
}

body.lozea-product-detail-ready .product-top.lozea-product-detail-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr) !important;
    align-items: start !important;
    gap: 30px !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 36px !important;
}

body.lozea-product-detail-ready .product-top.lozea-product-detail-grid::before,
body.lozea-product-detail-ready .product-top.lozea-product-detail-grid::after {
    content: none !important;
    display: none !important;
}

body.lozea-product-detail-ready .product-top.lozea-product-detail-grid > .p-image-wrapper,
body.lozea-product-detail-ready .product-top.lozea-product-detail-grid > .p-info-wrapper {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
}

/* Nulové odsazení patří jen galerii. Nákupní karta má vlastní padding. */
body.lozea-product-detail-ready .product-top.lozea-product-detail-grid > .p-image-wrapper {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.lozea-product-detail-ready .lozea-product-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 7px 10px !important;
    float: none !important;
    width: 100% !important;
    margin: -7px 0 20px !important;
    padding: 0 0 17px !important;
    border-bottom: 1px solid var(--lozea-product-line) !important;
    color: var(--lozea-product-muted) !important;
}

body.lozea-product-detail-ready .lozea-product-meta a,
body.lozea-product-detail-ready .lozea-product-meta span {
    color: var(--lozea-product-muted) !important;
}

body.lozea-product-detail-ready .lozea-product-meta .stars-wrapper {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
}

body.lozea-product-detail-ready .lozea-product-meta .lozea-product-stars-link {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 24px;
    padding: 2px 0 !important;
    text-decoration: none !important;
    cursor: pointer;
}

body.lozea-product-detail-ready .lozea-product-meta .lozea-product-stars-link:hover .star {
    transform: translateY(-1px);
}

body.lozea-product-detail-ready .lozea-product-meta .star {
    transition: transform 0.18s ease;
}

body.lozea-product-detail-ready .lozea-product-meta .lozea-product-code {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    margin-left: auto !important;
    color: var(--lozea-product-muted) !important;
    font-size: 13px !important;
    white-space: nowrap;
}

body.lozea-product-detail-ready .lozea-product-meta .lozea-product-code * {
    color: inherit !important;
}

/* Galerie */
body.lozea-product-detail-ready .lozea-product-gallery-card {
    position: relative;
    min-width: 0;
    align-self: start !important;
    overflow: hidden;
    padding: 24px 24px 18px !important;
    border: 1px solid var(--lozea-product-line) !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg, #fff 0%, #fdfbf8 100%) !important;
    box-shadow: var(--lozea-product-shadow) !important;
}

body.lozea-product-detail-ready .product-top.lozea-product-detail-grid > .p-image-wrapper.lozea-product-gallery-card {
    padding: 24px 24px 18px !important;
}

/* Příznaky produktu v samostatném řádku nad fotografií */
body.lozea-product-detail-ready .lozea-product-flags-row {
    position: relative !important;
    z-index: 4;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    min-height: 29px;
    margin: 0 0 12px !important;
    padding: 0 0 11px !important;
    border-bottom: 1px solid var(--lozea-product-line) !important;
}

body.lozea-product-detail-ready .lozea-product-flags-row .lozea-product-flags-list,
body.lozea-product-detail-ready .lozea-product-flags-row .flags {
    position: static !important;
    inset: auto !important;
    display: inline-flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
}

body.lozea-product-detail-ready .lozea-product-flags-row .flag {
    position: static !important;
    inset: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 29px !important;
    margin: 0 !important;
    padding: 5px 11px !important;
    border: 1px solid #ddd4c9 !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: var(--lozea-product-ink) !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    text-transform: none !important;
    white-space: nowrap;
    transform: none !important;
}

body.lozea-product-detail-ready .lozea-product-flags-row .flag-tip {
    border-color: #dfc9a8 !important;
    background: #f7efe3 !important;
    color: #8d5d1d !important;
}

body.lozea-product-detail-ready .lozea-product-flags-row .flag-new,
body.lozea-product-detail-ready .lozea-product-flags-row .flag-news {
    border-color: var(--lozea-product-button) !important;
    background: var(--lozea-product-button) !important;
    color: #fff !important;
}

body.lozea-product-detail-ready .lozea-product-flags-row .flag-action,
body.lozea-product-detail-ready .lozea-product-flags-row .flag-sale,
body.lozea-product-detail-ready .lozea-product-flags-row .flag-discount {
    border-color: #e5c6be !important;
    background: #fff3f0 !important;
    color: #9b493d !important;
}

body.lozea-product-detail-ready .lozea-product-flags-row .flag-discount::before {
    content: 'Sleva';
    color: inherit;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

body.lozea-product-detail-ready .lozea-product-flags-row .flag-discount .price-standard,
body.lozea-product-detail-ready .lozea-product-flags-row .flag-discount .price-standard * {
    color: #8a8581 !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    text-decoration: line-through !important;
}

body.lozea-product-detail-ready .lozea-product-flags-row .flag-discount .price-save,
body.lozea-product-detail-ready .lozea-product-flags-row .flag-discount .price-save * {
    color: #9b493d !important;
    font-weight: 700 !important;
}

body.lozea-product-detail-ready .lozea-product-gallery-card .p-image {
    margin: 0 !important;
}

/* Plynulé tažení hlavní fotografie myší i prstem */
body.lozea-product-detail-ready .lozea-product-swipe-stage {
    position: relative;
    width: 100%;
    overflow: hidden;
    touch-action: pan-y pinch-zoom;
    cursor: grab;
    user-select: none;
    -webkit-user-select: none;
}

body.lozea-product-detail-ready .lozea-product-swipe-stage.is-dragging {
    cursor: grabbing;
}

body.lozea-product-detail-ready .lozea-product-swipe-stage .p-main-image,
body.lozea-product-detail-ready .lozea-product-swipe-ghost {
    will-change: transform;
    transition: transform 225ms cubic-bezier(0.22, 0.72, 0.25, 1) !important;
}

body.lozea-product-detail-ready .lozea-product-swipe-stage.is-dragging .p-main-image,
body.lozea-product-detail-ready .lozea-product-swipe-stage.is-dragging .lozea-product-swipe-ghost {
    transition: none !important;
}

body.lozea-product-detail-ready .lozea-product-swipe-ghost {
    position: absolute;
    z-index: 2;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 470px;
    pointer-events: none;
    background: transparent;
}

body.lozea-product-detail-ready .lozea-product-swipe-stage img,
body.lozea-product-detail-ready .lozea-product-swipe-ghost img {
    user-select: none;
    -webkit-user-select: none;
    -webkit-user-drag: none;
}

body.lozea-product-detail-ready .lozea-product-swipe-ghost img {
    display: block;
    width: auto;
    max-width: 100%;
    max-height: 500px;
    margin: auto;
    object-fit: contain;
}

body.lozea-product-detail-ready .lozea-product-swipe-stage.is-dragging .p-main-image:hover img {
    transform: none !important;
}

body.lozea-product-detail-ready .lozea-product-gallery-card .p-main-image,
body.lozea-product-detail-ready .lozea-product-gallery-card .p-main-image > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 470px;
    margin: 0 !important;
}

body.lozea-product-detail-ready .lozea-product-gallery-card .p-main-image img {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    max-height: 500px !important;
    margin: auto !important;
    object-fit: contain;
    transition: transform 0.3s ease;
}

body.lozea-product-detail-ready .lozea-product-gallery-card .p-main-image:hover img {
    transform: scale(1.018);
}

body.lozea-product-detail-ready .lozea-product-gallery-card .p-thumbnails-wrapper,
body.lozea-product-detail-ready .lozea-product-gallery-card .p-thumbnails {
    width: 100% !important;
}

body.lozea-product-detail-ready .lozea-product-gallery-card .p-thumbnails-wrapper {
    margin: 16px 0 0 !important;
}

body.lozea-product-detail-ready .lozea-product-gallery-card .p-thumbnails {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    gap: 10px !important;
    overflow-x: auto;
    margin: 0 !important;
    padding: 3px 2px 6px !important;
    overscroll-behavior-inline: contain;
    scrollbar-width: none !important;
    -ms-overflow-style: none;
}

body.lozea-product-detail-ready .lozea-product-gallery-card .p-thumbnails::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

body.lozea-product-detail-ready .lozea-product-gallery-card .p-thumbnail {
    flex: 0 0 72px !important;
    width: 72px !important;
    height: 72px !important;
    margin: 0 !important;
    overflow: hidden;
    border: 1px solid var(--lozea-product-line) !important;
    border-radius: 12px !important;
    background: #fff !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease,
        transform 0.2s ease;
}

body.lozea-product-detail-ready .lozea-product-gallery-card .p-thumbnail:hover,
body.lozea-product-detail-ready .lozea-product-gallery-card .p-thumbnail.highlighted {
    border-color: var(--lozea-product-accent) !important;
    box-shadow: 0 5px 14px rgba(173, 120, 48, 0.12) !important;
    transform: translateY(-1px);
}

body.lozea-product-detail-ready .lozea-product-gallery-card .p-thumbnail img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

/* Nákupní karta */
body.lozea-product-detail-ready .lozea-product-buy-card {
    min-width: 0;
    padding: 28px !important;
    border: 1px solid var(--lozea-product-line) !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg, #fff 0%, #fbf8f3 100%) !important;
    box-shadow: var(--lozea-product-shadow) !important;
    color: var(--lozea-product-ink) !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card.p-data-wrapper,
body.lozea-product-detail-ready .lozea-product-data-column {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
}

body.lozea-product-detail-ready .p-info-wrapper.lozea-product-buy-card {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 28px !important;
}

body.lozea-product-detail-ready .lozea-product-buy-inner {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .detail-parameters,
body.lozea-product-detail-ready .lozea-product-buy-card .p-final-price-wrapper,
body.lozea-product-detail-ready .lozea-product-buy-card .availability-value,
body.lozea-product-detail-ready .lozea-product-buy-card .availability-label,
body.lozea-product-detail-ready .lozea-product-buy-card .p-detail-info {
    float: none !important;
    width: auto !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .p-final-price-wrapper,
body.lozea-product-detail-ready .lozea-product-price {
    display: block !important;
    margin: 0 0 18px !important;
    padding: 0 0 18px !important;
    border-bottom: 1px solid var(--lozea-product-line);
    text-align: left !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .price-final,
body.lozea-product-detail-ready .lozea-product-buy-card .price-final strong,
body.lozea-product-detail-ready .lozea-product-buy-card .p-final-price-wrapper strong {
    color: var(--lozea-product-ink) !important;
    font-size: clamp(30px, 3vw, 39px) !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .price-standard,
body.lozea-product-detail-ready .lozea-product-buy-card .price-save,
body.lozea-product-detail-ready .lozea-product-buy-card .price-additional,
body.lozea-product-detail-ready .lozea-product-buy-card .price-additional * {
    color: var(--lozea-product-muted) !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .availability-value.lozea-product-availability {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 7px 12px !important;
    width: 100% !important;
    margin: 0 0 18px !important;
    padding: 13px 15px !important;
    border: 1px solid #e7d7c1 !important;
    border-radius: 16px !important;
    background: var(--lozea-product-soft) !important;
    color: var(--lozea-product-ink) !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .availability-label {
    display: inline-flex !important;
    grid-column: 1 / 3;
    grid-row: 1;
    align-items: center !important;
    width: auto !important;
    min-height: 0;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #8d6023 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    white-space: nowrap;
}

body.lozea-product-detail-ready .lozea-product-buy-card .availability-label::before {
    content: '';
    flex: 0 0 8px;
    width: 8px;
    height: 8px;
    margin-right: 8px;
    border-radius: 50%;
    background: var(--lozea-product-accent);
    box-shadow: 0 0 0 4px rgba(173, 120, 48, 0.1);
}

body.lozea-product-detail-ready .lozea-product-buy-card .availability-amount {
    display: inline-flex !important;
    grid-column: 3;
    grid-row: 1;
    align-items: center !important;
    justify-self: end;
    margin: 0 !important;
    color: var(--lozea-product-muted) !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
    white-space: nowrap;
}

/* Odhad doručení vytvářený stávajícím Lozea skriptem */
body.lozea-product-detail-ready .lozea-product-buy-card .lozea-product-delivery-estimate,
body.lozea-product-detail-ready .lozea-product-buy-card [data-lozea-delivery-estimate] {
    display: inline-flex !important;
    grid-column: 1 / -1;
    grid-row: 2;
    align-items: center !important;
    gap: 7px !important;
    width: auto !important;
    margin: 0 0 0 16px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #2e7d32 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .lozea-product-delivery-estimate *,
body.lozea-product-detail-ready .lozea-product-buy-card .lozea-product-delivery-estimate strong,
body.lozea-product-detail-ready .lozea-product-buy-card [data-lozea-delivery-estimate] *,
body.lozea-product-detail-ready .lozea-product-buy-card [data-lozea-delivery-estimate] strong {
    color: inherit !important;
}

body.lozea-product-detail-ready .lozea-product-delivery-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    border: 1px solid #d9e8d9;
    border-radius: 50%;
    background: #fff;
    color: #2e7d32;
}

body.lozea-product-detail-ready .lozea-product-delivery-icon svg {
    width: 13px;
    height: 13px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Počet a hlavní CTA */
body.lozea-product-detail-ready .lozea-product-buy-card .add-to-cart,
body.lozea-product-detail-ready .lozea-product-add-to-cart {
    display: grid !important;
    grid-template-columns: 104px minmax(180px, 220px) !important;
    align-items: center !important;
    justify-content: start !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 8px 0 18px !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .add-to-cart::before,
body.lozea-product-detail-ready .lozea-product-buy-card .add-to-cart::after {
    content: none !important;
    display: none !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .quantity {
    position: relative !important;
    display: block !important;
    width: 104px !important;
    height: 46px !important;
    margin: 0 !important;
    overflow: hidden;
    border: 1px solid var(--lozea-product-line) !important;
    border-radius: 10px !important;
    background: #fff !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .quantity input,
body.lozea-product-detail-ready .lozea-product-buy-card .quantity .amount {
    position: relative !important;
    width: 72px !important;
    height: 44px !important;
    padding: 0 !important;
    border: 0 !important;
    border: 0 !important;
    border-right: 1px solid var(--lozea-product-line) !important;
    background: #fff !important;
    color: var(--lozea-product-ink) !important;
    text-align: center !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    appearance: textfield;
    -moz-appearance: textfield;
}

body.lozea-product-detail-ready .lozea-product-buy-card .quantity input::-webkit-outer-spin-button,
body.lozea-product-detail-ready .lozea-product-buy-card .quantity input::-webkit-inner-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

body.lozea-product-detail-ready .lozea-product-buy-card .quantity .increase,
body.lozea-product-detail-ready .lozea-product-buy-card .quantity .decrease {
    position: absolute !important;
    right: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 22px !important;
    padding: 0 !important;
    border: 0 !important;
    background: #fbfaf8 !important;
    color: var(--lozea-product-ink) !important;
    font-size: 14px !important;
    line-height: 1 !important;
    cursor: pointer;
}

body.lozea-product-detail-ready .lozea-product-buy-card .quantity .decrease {
    top: 22px !important;
    bottom: auto !important;
    border-top: 1px solid var(--lozea-product-line) !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .quantity .increase {
    top: 0 !important;
    bottom: auto !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .quantity .increase:hover,
body.lozea-product-detail-ready .lozea-product-buy-card .quantity .decrease:hover {
    background: var(--lozea-product-soft) !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .btn-conversion,
body.lozea-product-detail-ready .lozea-product-buy-card .add-to-cart-button,
body.lozea-product-detail-ready .lozea-product-buy-card button[type="submit"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 180px !important;
    max-width: 220px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 11px 18px !important;
    border: 1px solid var(--lozea-product-button) !important;
    border-radius: 10px !important;
    background: var(--lozea-product-button) !important;
    color: #fff !important;
    box-shadow: 0 8px 20px rgba(66, 67, 71, 0.17) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-transform: none !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease,
        background-color 0.2s ease;
}

body.lozea-product-detail-ready .lozea-product-buy-card .p-short-description {
    width: 100% !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    color: #505155 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .p-short-description + p {
    margin: 0 0 4px !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .btn-conversion:hover,
body.lozea-product-detail-ready .lozea-product-buy-card .add-to-cart-button:hover,
body.lozea-product-detail-ready .lozea-product-buy-card button[type="submit"]:hover {
    background: #343539 !important;
    box-shadow: 0 10px 24px rgba(66, 67, 71, 0.23) !important;
    transform: translateY(-1px);
}

/* Výhody pod nákupním tlačítkem */
body.lozea-product-detail-ready .lozea-product-trust-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-items: center;
    gap: 12px;
    width: 100%;
    margin: 22px auto 0;
    padding-top: 20px;
    border-top: 1px solid var(--lozea-product-line);
}

body.lozea-product-detail-ready .lozea-product-trust-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    min-width: 0;
    width: 100%;
    gap: 8px;
    padding: 2px 4px;
    text-align: center;
}

body.lozea-product-detail-ready .lozea-product-trust-item > span:last-child {
    min-width: 0;
}

body.lozea-product-detail-ready .lozea-product-trust-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border: 1px solid #e7d7c1;
    border-radius: 50%;
    background: linear-gradient(145deg, #fff 0%, #f7efe4 100%);
    color: var(--lozea-product-accent);
    box-shadow: 0 6px 16px rgba(173, 120, 48, 0.1);
}

body.lozea-product-detail-ready .lozea-product-trust-icon svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.lozea-product-detail-ready .lozea-product-trust-item strong,
body.lozea-product-detail-ready .lozea-product-trust-item small {
    display: block;
    overflow: visible;
    text-overflow: clip;
}

body.lozea-product-detail-ready .lozea-product-trust-item strong {
    color: var(--lozea-product-ink);
    font-size: 11px;
    font-weight: 600;
    line-height: 1.3;
    white-space: normal;
}

body.lozea-product-detail-ready .lozea-product-trust-item small {
    margin-top: 2px;
    color: var(--lozea-product-muted);
    font-size: 9px;
    line-height: 1.25;
    white-space: normal;
}

/* Doplňkové akce pod nákupní kartou */
body.lozea-product-detail-ready .lozea-product-buy-card .social-buttons-wrapper,
body.lozea-product-detail-ready .lozea-product-utilities {
    margin: 18px 0 0 !important;
    padding-top: 16px !important;
    border-top: 1px solid var(--lozea-product-line) !important;
    color: var(--lozea-product-muted) !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .link-icons {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: start !important;
    justify-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 0 auto !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .link-icons .link-icon {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 7px !important;
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 6px 3px !important;
    text-align: center !important;
    text-decoration: none !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .link-icons .link-icon::before,
body.lozea-product-detail-ready .lozea-product-buy-card .link-icons .link-icon::after {
    content: none !important;
    display: none !important;
}

body.lozea-product-detail-ready .lozea-product-action-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border: 1px solid #e7d7c1;
    border-radius: 14px;
    background: linear-gradient(145deg, #fff 0%, #f7f2eb 100%);
    color: var(--lozea-product-accent) !important;
    box-shadow: 0 5px 14px rgba(42, 43, 46, 0.06);
    transition: transform 0.2s ease, box-shadow 0.2s ease,
        border-color 0.2s ease;
}

body.lozea-product-detail-ready .lozea-product-action-icon svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.lozea-product-detail-ready .lozea-product-buy-card .link-icon:hover .lozea-product-action-icon {
    border-color: #d8bd98;
    box-shadow: 0 8px 18px rgba(173, 120, 48, 0.13);
    transform: translateY(-2px);
}

body.lozea-product-detail-ready .lozea-product-buy-card .link-icons .link-icon > span:last-child {
    color: var(--lozea-product-muted) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    white-space: normal !important;
}

body.lozea-product-detail-ready .lozea-product-buy-card .social-buttons-wrapper a {
    color: var(--lozea-product-muted) !important;
    transition: color 0.2s ease;
}

body.lozea-product-detail-ready .lozea-product-buy-card .social-buttons-wrapper a:hover {
    color: var(--lozea-product-ink) !important;
}

/* Záložky a obsah */
body.lozea-product-detail-ready .shp-tabs,
body.lozea-product-detail-ready .detail-tabs,
body.lozea-product-detail-ready .p-detail-tabs,
body.lozea-product-detail-ready .lozea-product-tabs {
    margin-top: 24px !important;
}

body.lozea-product-detail-ready .shp-tabs-row,
body.lozea-product-detail-ready .shp-tabs-holder > ul,
body.lozea-product-detail-ready ul.shp-tabs {
    display: flex !important;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 12px !important;
    padding: 8px !important;
    border: 1px solid var(--lozea-product-line) !important;
    border-radius: 14px !important;
    background: var(--lozea-product-soft) !important;
}

body.lozea-product-detail-ready .shp-tabs-row .shp-tab-link,
body.lozea-product-detail-ready .shp-tabs-holder > ul > li > a,
body.lozea-product-detail-ready ul.shp-tabs > li > a {
    min-height: 42px;
    padding: 11px 18px !important;
    border: 0 !important;
    border-radius: 9px !important;
    background: transparent !important;
    color: var(--lozea-product-muted) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 20px !important;
    text-decoration: none !important;
}

body.lozea-product-detail-ready .shp-tabs-row .active .shp-tab-link,
body.lozea-product-detail-ready .shp-tabs-row .shp-tab-link.active,
body.lozea-product-detail-ready .shp-tabs-holder > ul > li.active > a,
body.lozea-product-detail-ready ul.shp-tabs > li.active > a {
    background: var(--lozea-product-button) !important;
    color: #fff !important;
    box-shadow: 0 6px 15px rgba(66, 67, 71, 0.15);
}

body.lozea-product-detail-ready .tab-content,
body.lozea-product-detail-ready .p-detail-tabs .tab-content {
    padding: clamp(22px, 3vw, 38px) !important;
    border: 1px solid var(--lozea-product-line) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 10px 30px rgba(42, 43, 46, 0.055) !important;
    color: var(--lozea-product-ink) !important;
}

body.lozea-product-detail-ready .tab-content h2,
body.lozea-product-detail-ready .tab-content h3,
body.lozea-product-detail-ready .tab-content h4 {
    color: var(--lozea-product-ink) !important;
    font-family: inherit !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
}

body.lozea-product-detail-ready .tab-content p,
body.lozea-product-detail-ready .tab-content li {
    color: #4b4c50 !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
}

body.lozea-product-detail-ready .tab-content a {
    color: var(--lozea-product-ink) !important;
    text-decoration-color: rgba(173, 120, 48, 0.55) !important;
    text-underline-offset: 3px;
}

/* Oddělení hlavního popisu a pravého sloupce parametrů */
body.lozea-product-detail-ready .tab-content .description-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.4fr) !important;
    align-items: start !important;
    gap: clamp(28px, 4vw, 58px) !important;
}

body.lozea-product-detail-ready .tab-content .description-inner::before,
body.lozea-product-detail-ready .tab-content .description-inner::after {
    content: none !important;
    display: none !important;
}

body.lozea-product-detail-ready .tab-content .basic-description,
body.lozea-product-detail-ready .tab-content .extended-description {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
}

body.lozea-product-detail-ready .tab-content .extended-description {
    min-height: 100%;
    padding-left: clamp(26px, 3vw, 44px) !important;
    border-left: 1px solid var(--lozea-product-line) !important;
}

/* Tablet */
@media (max-width: 1199px) {
    body.lozea-product-detail-ready .product-top.lozea-product-detail-grid {
        grid-template-columns: minmax(0, 1fr) minmax(330px, 0.88fr) !important;
        gap: 22px !important;
    }

    body.lozea-product-detail-ready .lozea-product-gallery-card .p-main-image,
    body.lozea-product-detail-ready .lozea-product-gallery-card .p-main-image > a,
    body.lozea-product-detail-ready .lozea-product-swipe-ghost {
        min-height: 400px;
    }

    body.lozea-product-detail-ready .lozea-product-gallery-card .p-main-image img {
        max-height: 430px !important;
    }

    body.lozea-product-detail-ready .lozea-product-swipe-ghost img {
        max-height: 430px;
    }

    body.lozea-product-detail-ready .lozea-product-trust-item strong,
    body.lozea-product-detail-ready .lozea-product-trust-item small {
        white-space: normal;
    }
}

/* Mobil */
@media (max-width: 767px) {
    body.lozea-product-detail-ready .p-detail-inner.lozea-product-detail-shell {
        margin-top: 16px !important;
    }

    body.lozea-product-detail-ready .p-detail-inner-header,
    body.lozea-product-detail-ready .lozea-product-heading {
        margin: 8px 0 18px !important;
    }

    body.lozea-product-detail-ready .p-detail-inner-header h1,
    body.lozea-product-detail-ready .p-detail h1,
    body.lozea-product-detail-ready h1[itemprop="name"] {
        font-size: 25px !important;
        line-height: 1.22 !important;
    }

    body.lozea-product-detail-ready .product-top.lozea-product-detail-grid {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 15px !important;
        margin-bottom: 24px !important;
    }

    body.lozea-product-detail-ready .lozea-product-gallery-card,
    body.lozea-product-detail-ready .lozea-product-buy-card {
        padding: 16px !important;
        border-radius: 17px !important;
        box-shadow: 0 8px 24px rgba(42, 43, 46, 0.06) !important;
    }

    body.lozea-product-detail-ready .p-info-wrapper.lozea-product-buy-card {
        padding: 16px !important;
    }

    body.lozea-product-detail-ready .product-top.lozea-product-detail-grid > .p-image-wrapper.lozea-product-gallery-card {
        padding: 16px !important;
    }

    body.lozea-product-detail-ready .lozea-product-flags-row {
        gap: 6px !important;
        margin-bottom: 9px !important;
        padding-bottom: 9px !important;
    }

    body.lozea-product-detail-ready .lozea-product-flags-row .lozea-product-flags-list,
    body.lozea-product-detail-ready .lozea-product-flags-row .flags {
        gap: 6px !important;
    }

    body.lozea-product-detail-ready .lozea-product-flags-row .flag {
        min-height: 27px !important;
        padding: 4px 9px !important;
        font-size: 11px !important;
    }

    body.lozea-product-detail-ready .lozea-product-meta {
        gap: 8px 10px !important;
    }

    body.lozea-product-detail-ready .lozea-product-meta .lozea-product-code {
        margin-left: 0 !important;
    }

    body.lozea-product-detail-ready .lozea-product-gallery-card .p-main-image,
    body.lozea-product-detail-ready .lozea-product-gallery-card .p-main-image > a,
    body.lozea-product-detail-ready .lozea-product-swipe-ghost {
        min-height: 300px;
    }

    body.lozea-product-detail-ready .lozea-product-gallery-card .p-main-image img {
        max-height: 330px !important;
    }

    body.lozea-product-detail-ready .lozea-product-swipe-ghost img {
        max-height: 330px;
    }

    body.lozea-product-detail-ready .lozea-product-gallery-card .p-thumbnails {
        justify-content: flex-start !important;
    }

    body.lozea-product-detail-ready .lozea-product-gallery-card .p-thumbnail {
        flex-basis: 62px !important;
        width: 62px !important;
        height: 62px !important;
        border-radius: 10px !important;
    }

    body.lozea-product-detail-ready .lozea-product-buy-card .price-final,
    body.lozea-product-detail-ready .lozea-product-buy-card .price-final strong,
    body.lozea-product-detail-ready .lozea-product-buy-card .p-final-price-wrapper strong {
        font-size: 31px !important;
    }

    body.lozea-product-detail-ready .lozea-product-trust-strip {
        margin-top: 16px;
        padding-top: 15px;
    }

    body.lozea-product-detail-ready .lozea-product-buy-card .add-to-cart,
    body.lozea-product-detail-ready .lozea-product-add-to-cart {
        grid-template-columns: 104px minmax(170px, 220px) !important;
    }

    body.lozea-product-detail-ready .shp-tabs-row,
    body.lozea-product-detail-ready .shp-tabs-holder > ul,
    body.lozea-product-detail-ready ul.shp-tabs {
        flex-wrap: nowrap !important;
        overflow-x: auto;
        padding: 6px !important;
        scrollbar-width: none;
    }

    body.lozea-product-detail-ready .shp-tabs-row::-webkit-scrollbar,
    body.lozea-product-detail-ready .shp-tabs-holder > ul::-webkit-scrollbar,
    body.lozea-product-detail-ready ul.shp-tabs::-webkit-scrollbar {
        display: none;
    }

    body.lozea-product-detail-ready .shp-tabs-row .shp-tab-link,
    body.lozea-product-detail-ready .shp-tabs-holder > ul > li > a,
    body.lozea-product-detail-ready ul.shp-tabs > li > a {
        white-space: nowrap;
    }

    body.lozea-product-detail-ready .tab-content,
    body.lozea-product-detail-ready .p-detail-tabs .tab-content {
        padding: 20px 17px !important;
        border-radius: 15px !important;
    }

    body.lozea-product-detail-ready .tab-content .description-inner {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 24px !important;
    }

    body.lozea-product-detail-ready .tab-content .extended-description {
        min-height: 0;
        padding: 22px 0 0 !important;
        border-top: 1px solid var(--lozea-product-line) !important;
        border-left: 0 !important;
    }
}

@media (max-width: 419px) {
    body.lozea-product-detail-ready .lozea-product-buy-card .add-to-cart,
    body.lozea-product-detail-ready .lozea-product-add-to-cart {
        grid-template-columns: 1fr !important;
    }

    body.lozea-product-detail-ready .lozea-product-buy-card .quantity {
        justify-self: start;
    }

    body.lozea-product-detail-ready .lozea-product-buy-card .btn-conversion,
    body.lozea-product-detail-ready .lozea-product-buy-card .add-to-cart-button,
    body.lozea-product-detail-ready .lozea-product-buy-card button[type="submit"] {
        width: 100% !important;
        max-width: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.lozea-product-detail-ready .lozea-product-gallery-card *,
    body.lozea-product-detail-ready .lozea-product-buy-card * {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}
