.catalog-cart-dock{position:fixed;z-index:890;right:0;bottom:0;left:0;display:none;padding:10px 0 calc(10px + env(safe-area-inset-bottom));border-top:1px solid rgba(172,132,69,.3);background:linear-gradient(105deg,rgba(250,247,240,.96),rgba(244,237,224,.94));box-shadow:0 -18px 60px rgba(43,32,17,.13);backdrop-filter:blur(24px) saturate(135%);animation:cartDockIn .45s cubic-bezier(.2,.8,.2,1) both}body:has([data-product-commerce]):not(:has(.product-purchase-bar)) .catalog-cart-dock{display:block}body:has([data-product-commerce]):not(:has(.product-purchase-bar)){padding-bottom:78px}.catalog-cart-dock__inner{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(70px,.35fr) minmax(230px,1fr) auto;align-items:center;gap:22px}.catalog-cart-dock__summary{display:flex;align-items:center;gap:13px;color:#29231b;text-decoration:none}.catalog-cart-dock__icon{position:relative;display:grid;place-items:center;width:45px;height:45px;border:1px solid rgba(159,118,54,.35);border-radius:50%;background:rgba(255,255,255,.65)}.catalog-cart-dock__icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.catalog-cart-dock__icon b{position:absolute;top:-5px;right:-5px;display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border:2px solid #f8f3e9;border-radius:20px;background:#9d793f;color:#fff;font:600 9px/1 Inter,sans-serif}.catalog-cart-dock__copy{display:grid;gap:4px}.catalog-cart-dock__copy small{color:#94733e;font:600 9px/1 Inter,sans-serif;letter-spacing:.18em;text-transform:uppercase}.catalog-cart-dock__copy strong{font:500 18px/1.05 "Cormorant Garamond",serif}.catalog-cart-dock__line{height:1px;background:linear-gradient(90deg,transparent,#b58a48,transparent)}.catalog-cart-dock p{margin:0;color:#756c60;font-size:11px}.catalog-cart-dock__button{display:flex;align-items:center;justify-content:center;gap:18px;min-width:218px;min-height:49px;padding:0 24px;border:1px solid rgba(226,198,150,.38);border-radius:999px;background:linear-gradient(135deg,#2a261f,#57472f);color:#fff;text-decoration:none;font:600 9px/1 Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase;box-shadow:0 12px 30px rgba(42,31,18,.2);transition:.25s}.catalog-cart-dock__button:hover{transform:translateY(-2px);background:linear-gradient(135deg,#443927,#80633b)}.catalog-cart-dock__button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5}.catalog-cart-dock.is-pulsing .catalog-cart-dock__icon{animation:cartDockPulse .5s ease}@keyframes cartDockIn{from{opacity:0;transform:translateY(100%)}to{opacity:1;transform:none}}@keyframes cartDockPulse{50%{transform:scale(1.1);box-shadow:0 0 0 9px rgba(169,130,69,.12)}}@media(max-width:850px){.catalog-cart-dock__inner{grid-template-columns:1fr auto;gap:10px}.catalog-cart-dock__line,.catalog-cart-dock p{display:none}.catalog-cart-dock__button{min-width:180px}}@media(max-width:520px){body:has([data-product-commerce]):not(:has(.product-purchase-bar)){padding-bottom:72px}.catalog-cart-dock{padding:8px 0 calc(8px + env(safe-area-inset-bottom))}.catalog-cart-dock__inner{gap:8px;padding-inline:12px}.catalog-cart-dock__icon{width:42px;height:42px}.catalog-cart-dock__copy small{display:none}.catalog-cart-dock__copy strong{max-width:34vw;overflow:hidden;font:600 12px/1.1 Inter,sans-serif;text-overflow:ellipsis;white-space:nowrap}.catalog-cart-dock__button{min-width:0;min-height:44px;padding:0 18px;font-size:8px}.catalog-cart-dock__button svg{display:none}}@media(prefers-reduced-motion:reduce){.catalog-cart-dock{animation:none}.catalog-cart-dock.is-pulsing .catalog-cart-dock__icon{animation:none}}


/* ============================================================
   YETI³ · MILLERRINGS STYLE BOTTOM CART DOCK
   ============================================================ */

.y3-cart-dock {
    position: fixed !important;

    left: 50% !important;
    bottom: max(14px, env(safe-area-inset-bottom)) !important;

    z-index: 900 !important;

    width: auto !important;
    max-width: calc(100vw - 28px) !important;

    transform:
        translateX(-50%) translateY(8px);

    opacity: .96;

    pointer-events: auto;

    transition:
        transform .28s cubic-bezier(.2,.75,.2,1),
        opacity .2s ease;
}


.y3-cart-dock:hover,
.y3-cart-dock.is-active {
    transform:
        translateX(-50%) translateY(0);

    opacity: 1;
}


.y3-cart-dock__link {
    display: grid !important;

    grid-template-columns:
        38px minmax(105px, auto) 31px;

    align-items: center !important;

    gap: 10px !important;

    min-height: 54px !important;

    padding:
        7px 9px 7px 8px !important;

    border:
        1px solid rgba(194, 160, 96, .34) !important;

    border-radius:
        999px !important;

    background:
        rgba(24, 42, 37, .94) !important;

    color:
        #fff !important;

    text-decoration:
        none !important;

    box-shadow:
        0 18px 50px rgba(18, 26, 23, .22),
        inset 0 1px 0 rgba(255,255,255,.08) !important;

    backdrop-filter:
        blur(18px) saturate(1.08);

    -webkit-backdrop-filter:
        blur(18px) saturate(1.08);
}


/* ------------------------------------------------------------
   CART ICON
   ------------------------------------------------------------ */

.y3-cart-dock__icon {
    position: relative;

    display: grid;

    place-items: center;

    width: 38px;
    height: 38px;

    border:
        1px solid rgba(220,188,124,.22);

    border-radius:
        50%;

    background:
        rgba(255,255,255,.055);

    color:
        #e2c587;
}


.y3-cart-dock__icon svg {
    width: 18px;
    height: 18px;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.45;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.y3-cart-dock__icon b {
    position: absolute;

    top: -5px;
    right: -4px;

    display: grid;

    place-items: center;

    min-width: 18px;
    height: 18px;

    padding: 0 5px;

    border:
        2px solid #263f38;

    border-radius:
        999px;

    background:
        #c39a55;

    color:
        #fff;

    font-size:
        8px;

    font-weight:
        750;

    line-height:
        1;
}


/* ------------------------------------------------------------
   COPY
   ------------------------------------------------------------ */

.y3-cart-dock__copy {
    display: grid;

    gap: 2px;

    min-width: 0;
}


.y3-cart-dock__copy small {
    color:
        rgba(255,255,255,.55);

    font-size:
        7px;

    font-weight:
        650;

    line-height:
        1;

    letter-spacing:
        .12em;

    text-transform:
        uppercase;
}


.y3-cart-dock__copy strong {
    color:
        #fff;

    font-size:
        10px;

    font-weight:
        620;

    line-height:
        1.2;

    white-space:
        nowrap;
}


.y3-cart-dock__copy i {
    margin:
        0 3px;

    color:
        #cba660;

    font-style:
        normal;
}


/* ------------------------------------------------------------
   ARROW
   ------------------------------------------------------------ */

.y3-cart-dock__arrow {
    display: grid;

    place-items: center;

    width: 31px;
    height: 31px;

    border-radius:
        50%;

    background:
        linear-gradient(
            145deg,
            #c49a52,
            #947035
        );

    color:
        #fff;

    font-size:
        14px;

    transition:
        transform .2s ease,
        filter .2s ease;
}


.y3-cart-dock__link:hover
.y3-cart-dock__arrow {
    transform:
        translateX(2px);

    filter:
        brightness(1.08);
}


/* ------------------------------------------------------------
   CART PAGE
   Dock is unnecessary while already inside cart.
   ------------------------------------------------------------ */

body:has(.y3-cart) .y3-cart-dock {
    display:
        none !important;
}


/* ------------------------------------------------------------
   MOBILE
   ------------------------------------------------------------ */

@media (max-width: 520px) {

    .y3-cart-dock {
        bottom:
            max(9px, env(safe-area-inset-bottom)) !important;

        max-width:
            calc(100vw - 18px) !important;
    }


    .y3-cart-dock__link {
        grid-template-columns:
            36px minmax(90px, auto) 29px;

        min-height:
            50px !important;

        gap:
            8px !important;

        padding:
            6px 8px 6px 7px !important;
    }


    .y3-cart-dock__icon {
        width: 36px;
        height: 36px;
    }
}


/* ============================================================
   YETI³ · FULL WIDTH BOTTOM CART BAR
   MillerRings style
   ============================================================ */

.y3-cart-dock {
    position: fixed !important;

    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;

    z-index: 950 !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;

    padding:
        8px
        clamp(14px, 2.5vw, 38px)
        max(8px, env(safe-area-inset-bottom)) !important;

    transform: none !important;

    opacity: 1 !important;

    background:
        rgba(22, 39, 34, .96) !important;

    border-top:
        1px solid rgba(191, 157, 93, .25) !important;

    box-shadow:
        0 -12px 40px rgba(15, 25, 21, .15) !important;

    backdrop-filter:
        blur(18px) saturate(1.08) !important;

    -webkit-backdrop-filter:
        blur(18px) saturate(1.08) !important;
}


/* inner content */
.y3-cart-dock__link {
    display: grid !important;

    grid-template-columns:
        40px minmax(0, 1fr) auto !important;

    align-items: center !important;

    gap: 12px !important;

    width: min(1380px, 100%) !important;
    max-width: 1380px !important;

    min-height: 52px !important;

    margin: 0 auto !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: transparent !important;

    box-shadow: none !important;

    color: #fff !important;

    text-decoration: none !important;
}


/* cart icon */
.y3-cart-dock__icon {
    position: relative !important;

    display: grid !important;
    place-items: center !important;

    width: 38px !important;
    height: 38px !important;

    border:
        1px solid rgba(218,184,119,.25) !important;

    border-radius: 50% !important;

    background:
        rgba(255,255,255,.055) !important;

    color:
        #e0bf7b !important;
}


/* title / total */
.y3-cart-dock__copy {
    display: flex !important;

    align-items: baseline !important;

    gap: 14px !important;

    min-width: 0 !important;
}

.y3-cart-dock__copy small {
    margin: 0 !important;

    color:
        rgba(255,255,255,.52) !important;

    font-size: 8px !important;

    font-weight: 700 !important;

    letter-spacing: .14em !important;

    text-transform: uppercase !important;
}

.y3-cart-dock__copy strong {
    color: #fff !important;

    font-size: 12px !important;
    font-weight: 600 !important;

    white-space: nowrap !important;
}


/* right CTA */
.y3-cart-dock__arrow {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    min-width: 118px !important;
    height: 38px !important;

    padding: 0 18px !important;

    border-radius: 8px !important;

    background:
        linear-gradient(
            135deg,
            #b88c48,
            #8b642f
        ) !important;

    color: #fff !important;

    font-size: 0 !important;
}

.y3-cart-dock__arrow::before {
    content: "В корзину →";

    font-size: 9px;

    font-weight: 700;

    letter-spacing: .08em;

    text-transform: uppercase;
}


/* no useless dock while already inside cart */
body:has(.y3-cart) .y3-cart-dock {
    display: none !important;
}


/* kill old legacy floating commerce cart,
   but DO NOT touch PDP product-buy-dock */
body > .commerce-dock {
    display: none !important;
}


@media (max-width: 600px) {

    .y3-cart-dock {
        padding-inline: 12px !important;
    }

    .y3-cart-dock__link {
        grid-template-columns:
            36px minmax(0, 1fr) auto !important;

        min-height: 48px !important;

        gap: 9px !important;
    }

    .y3-cart-dock__copy {
        display: grid !important;

        gap: 2px !important;
    }

    .y3-cart-dock__arrow {
        min-width: 44px !important;
        width: 44px !important;

        padding: 0 !important;

        font-size: 14px !important;
    }

    .y3-cart-dock__arrow::before {
        content: none;
    }
}
