/**
 * File: assets/css/frontend/header-widgets/cart-widget-part2.css
 * Purpose: Split piece of a larger source file (1.0.191 file-size programme; cascade/build order unchanged). Continuation part 2 of assets/css/frontend/header-widgets/cart-widget.css (split for the 300-line standard; cascade order is preserved by the enqueue chain).
 * Scope: Same feature scope as the source file named in the provenance line; not a standalone design source.
 * Package: HyperDAF Engine
 */
.hdf-header-action--cart .hdf-header-action__widget {
    width: min(26rem, calc(100vw - 2rem));
    max-height: min(36rem, calc(100vh - 6.5rem));
    border: 1px solid var(--hdf-engine-color-border-strong);
    border-radius: 14px;
    background: var(--hdf-engine-color-surface);
    box-shadow: none;
    overflow: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

.hdf-header-action--cart.is-hover-open .hdf-header-action__widget,
.hdf-header-action--cart.is-open .hdf-header-action__widget {
    pointer-events: auto;
}

.hdf-header-cart-panel {
    border-top: 3px solid var(--hdf-engine-color-primary-strong);
}

.hdf-header-cart-panel__head {
    padding: .9rem 1rem;
    background: var(--hdf-engine-color-surface-subtle);
}

.hdf-header-cart-lines {
    max-height: 20rem;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.hdf-header-cart-line__link {
    min-height: 4.25rem;
    padding: .65rem 1rem;
}

.hdf-header-cart-line__media {
    display: grid;
    width: 3.5rem;
    height: 2.5rem;
    place-items: center;
    overflow: hidden;
    border: 1px solid var(--hdf-engine-color-border);
    border-radius: 8px;
    background: var(--hdf-engine-color-surface-subtle);
}

.hdf-header-cart-line__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hdf-header-cart-line__media .hdf-header-cart-line__mark {
    width: 100%;
    height: 100%;
    border: 0;
    border-radius: 0;
}

.hdf-header-cart-line__copy strong {
    white-space: normal;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.hdf-header-cart-panel .hdf-header-cart-total {
    padding-block: .8rem;
}

.hdf-header-cart-panel .hdf-header-cart-actions {
    gap: .75rem;
    padding-top: .7rem;
}

.hdf-header-cart-panel .hdf-header-widget-button {
    min-height: 2.7rem;
    font-weight: var(--hdf-engine-font-weight-bold);
}

@media (max-width: 47.999rem) {
    .hdf-header-action--cart::after {
        display: none;
    }

    .hdf-header-action--cart .hdf-header-action__widget {
        width: min(23rem, calc(100vw - 1rem));
        max-height: min(34rem, calc(100vh - 5rem));
    }
}



/* RC.45 Engine DNA cart widget: fixed shell, configurable three-card viewport and isolated product scrolling. */
.hdf-header-action--cart::after {
    width: min(var(--hdf-engine-cart-widget-width, 346px), calc(100vw - 2rem));
}

.hdf-header-action--cart .hdf-header-action__widget {
    width: min(var(--hdf-engine-cart-widget-width, 346px), calc(100vw - 2rem));
    max-height: none;
    overflow: hidden;
    border-color: var(--hdf-engine-cart-widget-border, var(--hdf-engine-color-border-strong));
    border-radius: var(--hdf-engine-cart-widget-radius, 14px);
    background: var(--hdf-engine-cart-widget-surface, var(--hdf-engine-color-surface));
    scrollbar-gutter: auto;
}

.hdf-header-cart-panel {
    display: flex;
    max-height: min(42rem, calc(100dvh - 6.5rem));
    flex-direction: column;
    overflow: hidden;
    border-top-color: var(--hdf-engine-cart-widget-primary, var(--hdf-engine-color-primary-strong));
    background: var(--hdf-engine-cart-widget-surface, var(--hdf-engine-color-surface));
    color: var(--hdf-engine-cart-widget-text, var(--hdf-engine-color-text));
}

.hdf-header-cart-panel__head {
    flex: 0 0 auto;
    padding: var(--hdf-engine-cart-widget-head-padding, 14px);
    border-color: var(--hdf-engine-cart-widget-border, var(--hdf-engine-color-border-subtle));
    background: var(--hdf-engine-cart-widget-head-surface, var(--hdf-engine-color-surface-subtle));
}

.hdf-header-cart-panel__heading strong,
.hdf-header-cart-line__copy strong,
.hdf-header-cart-line__link b,
.hdf-header-cart-panel .hdf-header-cart-total strong {
    color: var(--hdf-engine-cart-widget-text, var(--hdf-engine-color-text));
}

.hdf-header-cart-panel__heading small,
.hdf-header-cart-line__copy small,
.hdf-header-cart-panel__secure {
    color: var(--hdf-engine-cart-widget-muted, var(--hdf-engine-color-text-muted));
}

.hdf-header-cart-panel__tools {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
}

.hdf-header-cart-panel__clear {
    padding: .2rem 0;
    border: 0;
    background: transparent;
    color: var(--hdf-engine-cart-widget-primary, var(--hdf-engine-color-primary-strong));
    cursor: pointer;
    font: inherit;
    font-size: .72rem;
    font-weight: var(--hdf-engine-font-weight-semibold, 600);
    line-height: 1.2;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: .18em;
}

.hdf-header-cart-panel__clear:hover,
.hdf-header-cart-panel__clear:focus-visible {
    color: var(--hdf-engine-color-primary-hover);
    outline: 2px solid color-mix(in srgb, var(--hdf-engine-cart-widget-primary, var(--hdf-engine-color-primary-strong)) 32%, transparent);
    outline-offset: 3px;
}

.hdf-header-cart-panel__clear[aria-busy="true"] {
    cursor: wait;
    opacity: .6;
}

.hdf-header-cart-panel__count {
    background: var(--hdf-engine-cart-widget-primary, var(--hdf-engine-color-primary-strong));
}

.hdf-header-cart-panel__scroll {
    min-height: 0;
    max-height: clamp(
        var(--hdf-engine-cart-widget-row-height, 70px),
        calc(100dvh - 22rem),
        var(--hdf-engine-cart-widget-scroll-height, 210px)
    );
    flex: 0 1 auto;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    background: var(--hdf-engine-cart-widget-surface, var(--hdf-engine-color-surface));
}

.hdf-header-cart-panel__scroll:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--hdf-engine-cart-widget-primary, var(--hdf-engine-color-primary-strong)) 35%, transparent);
    outline-offset: -2px;
}

.hdf-header-cart-lines {
    max-height: none;
    overflow: visible;
    padding: 0;
}

.hdf-header-cart-line {
    border-color: var(--hdf-engine-cart-widget-border, var(--hdf-engine-color-border-subtle));
}

.hdf-header-cart-line__link {
    height: var(--hdf-engine-cart-widget-row-height, 70px);
    min-height: var(--hdf-engine-cart-widget-row-height, 70px);
    padding: .55rem var(--hdf-engine-cart-widget-head-padding, 14px);
}

.hdf-header-cart-line__media {
    width: var(--hdf-engine-cart-widget-media-width, 56px);
    height: auto;
    aspect-ratio: 7 / 5;
    flex: 0 0 var(--hdf-engine-cart-widget-media-width, 56px);
}

.hdf-header-cart-line__copy strong {
    font-size: var(--hdf-engine-cart-widget-title-size, 13px);
}

.hdf-header-cart-line__copy small,
.hdf-header-cart-line__link b,
.hdf-header-cart-panel__heading small,
.hdf-header-cart-panel__secure {
    font-size: var(--hdf-engine-cart-widget-meta-size, 11px);
}

.hdf-header-cart-panel__foot {
    flex: 0 0 auto;
    border-top: 1px solid var(--hdf-engine-cart-widget-border, var(--hdf-engine-color-border));
    background: var(--hdf-engine-cart-widget-foot-surface, var(--hdf-engine-color-surface-subtle));
}

.hdf-header-cart-panel .hdf-header-cart-total {
    padding: var(--hdf-engine-cart-widget-foot-padding, 14px) var(--hdf-engine-cart-widget-foot-padding, 14px) .45rem;
    border-top: 0;
    background: transparent;
}

.hdf-header-cart-panel .hdf-header-cart-actions {
    padding: .45rem var(--hdf-engine-cart-widget-foot-padding, 14px) .55rem;
    background: transparent;
}

.hdf-header-cart-panel .hdf-header-widget-button {
    min-height: var(--hdf-engine-cart-widget-button-height, 43px);
}

.hdf-header-cart-panel .hdf-header-widget-button--primary,
.hdf-header-cart-panel__icon,
.hdf-header-cart-empty__icon {
    border-color: color-mix(in srgb, var(--hdf-engine-cart-widget-primary, var(--hdf-engine-color-primary-strong)) 28%, var(--hdf-engine-cart-widget-border, var(--hdf-engine-color-border)));
}

.hdf-header-cart-panel .hdf-header-widget-button--primary {
    background: var(--hdf-engine-cart-widget-primary, var(--hdf-engine-color-primary-strong));
}

.hdf-header-cart-panel__icon,
.hdf-header-cart-empty__icon {
    color: var(--hdf-engine-cart-widget-primary, var(--hdf-engine-color-primary-strong));
}

.hdf-header-cart-panel__secure {
    padding: 0 var(--hdf-engine-cart-widget-foot-padding, 14px) var(--hdf-engine-cart-widget-foot-padding, 14px);
    background: transparent;
}

@media (max-width: 47.999rem) {
    .hdf-header-action--cart .hdf-header-action__widget {
        width: min(var(--hdf-engine-cart-widget-width, 346px), calc(100vw - 1rem));
        max-height: none;
    }

    .hdf-header-cart-panel {
        max-height: min(38rem, calc(100dvh - 5rem));
    }

    .hdf-header-cart-panel__scroll {
        max-height: clamp(
            var(--hdf-engine-cart-widget-row-height, 70px),
            calc(100dvh - 20rem),
            var(--hdf-engine-cart-widget-scroll-height, 210px)
        );
    }
}

