:where(.mwce-mini-cart,.mwce-drawer,.mwce-trigger) {
    --mederi-yellow:#F7AA00; --mederi-background:#f8f5ee; --mederi-surface:#fffdf8;
    --mederi-text:#252b2c; --mederi-muted:#626765; --mederi-border:#e5dfd3; --mederi-accent:#235f73;
    color:var(--mederi-text); box-sizing:border-box;
}
.mwce-mini-cart { background:transparent; font-size:15px; line-height:1.5; padding:8px 0 20px; overflow-wrap:anywhere; }
.mwce-mini-cart * { box-sizing:border-box; }
.mwce-mini-cart ul.cart_list { margin:0; padding:0; list-style:none; }
.mwce-mini-cart ul.cart_list li { position:relative; padding:12px 0 12px 76px; margin:0; min-height:90px; border-bottom:1px solid var(--mederi-border); }
.mwce-mini-cart ul.cart_list li > a:not(.remove) { display:block; color:var(--mederi-text); text-decoration:none; font-weight:500; font-size:15px; line-height:1.55; letter-spacing:-.15px; }
.mwce-mini-cart ul.cart_list li img { position:absolute; top:12px; left:0; width:64px; height:64px; float:none; margin:0; padding:5px; background:var(--mederi-surface); object-fit:contain; border:1px solid var(--mederi-border); border-radius:12px; }
.mwce-mini-cart ul.cart_list li > a.remove { display:none; }
.mwce-mini-cart dl.variation { margin:5px 0 10px; padding:0; border:0; color:var(--mederi-muted); font-size:13px; }
.mwce-mini-cart dl.variation dt,.mwce-mini-cart dl.variation dd { margin:0 5px 0 0; }
.mwce-mini-cart dl.variation p { margin:0; }
.mwce-line { position:relative; display:grid; grid-template-columns:auto minmax(0,1fr); gap:0 10px; align-items:center; margin-top:8px; }
.mwce-controls { grid-column:1; grid-row:1 / span 2; display:flex; align-items:center; border:1px solid var(--mederi-border); border-radius:999px; overflow:hidden; background:var(--mederi-surface); }
.mwce-line button,.mwce-close { cursor:pointer; font:inherit; color:var(--mederi-text); }
.mwce-mini-cart .mwce-controls button { width:40px; min-width:40px; height:44px; min-height:44px; border:0!important; border-radius:0; background:transparent!important; padding:0!important; font-size:20px; font-weight:400; line-height:1; box-shadow:none!important; color:var(--mederi-text)!important; }
.mwce-controls button:hover { background:var(--mederi-background); }
.mwce-quantity { min-width:22px; text-align:center; font-variant-numeric:tabular-nums; }
.mwce-line-price { grid-column:2; grid-row:1; text-align:right; font-size:15px; font-weight:600; font-variant-numeric:tabular-nums; white-space:nowrap; }
.mwce-line-price .tax_label,.mwce-subtotal-price .tax_label,.mwce-header-price .tax_label { display:none; }
.elementor-menu-cart__toggle .elementor-button-text .tax_label { display:none; }
.mwce-mini-cart .mwce-line .mwce-remove { grid-column:2; grid-row:2; justify-self:end; width:auto; min-width:0; min-height:24px; margin:0 -4px 0 0; border:0!important; border-radius:0; padding:2px 4px!important; background:transparent!important; color:var(--mederi-muted)!important; box-shadow:none!important; text-decoration:underline; text-decoration-color:transparent; text-underline-offset:3px; font-size:12px!important; font-weight:400; line-height:1.5; transition:color .15s,text-decoration-color .15s; }
.mwce-mini-cart .mwce-line .mwce-remove:hover { color:var(--mederi-accent)!important; text-decoration-color:currentColor; }
.mwce-line button:disabled { opacity:.45; cursor:default; }
.mwce-line[aria-busy="true"]::after { content:""; position:absolute; left:0; bottom:-8px; width:10px; height:10px; border:2px solid var(--mederi-border); border-top-color:var(--mederi-accent); border-radius:50%; animation:mwce-spin .7s linear infinite; }
.mwce-mini-cart .woocommerce-mini-cart__total { display:grid; grid-template-columns:1fr auto; gap:4px 10px; padding:16px 0 14px; margin:0; border:0; font-size:16px; }
.mwce-subtotal-price { text-align:right; font-weight:600; }
.mwce-tax-note { grid-column:1/-1; color:var(--mederi-muted); font-size:12px; font-weight:400; letter-spacing:.1px; }
.mwce-mini-cart .woocommerce-mini-cart__buttons { display:block; margin:0; }
.mwce-mini-cart .woocommerce-mini-cart__buttons a:not(.checkout) { display:none; }
.mwce-mini-cart a.button.checkout,.mwce-empty a.button { display:flex; width:100%; align-items:center; justify-content:center; min-height:54px; border:0; border-radius:999px; background:var(--mederi-yellow); color:var(--mederi-text); text-decoration:none; font-size:15px; font-weight:600; padding:14px 22px; box-shadow:0 3px 10px #252b2c08; transition:background .15s,box-shadow .15s; }
.mwce-mini-cart a.button.checkout::after { content:"→"; margin-left:12px; }
.mwce-mini-cart a.button.checkout:hover,.mwce-empty a.button:hover { background:color-mix(in srgb,var(--mederi-yellow),black 8%); }
.mwce-empty,.mwce-mini-cart__empty-message { text-align:center; }
.mwce-mini-cart .woocommerce-mini-cart__empty-message { display:none; }
.mwce-empty-title { font-size:20px; font-weight:600; }
.mwce-feedback:empty,.mwce-drawer-status:empty { display:none; }
.mwce-feedback,.mwce-drawer-status { color:var(--mederi-accent); font-size:13px; padding:8px 0; }
.mwce-drawer-status { padding:8px 24px; }
.mwce-trigger { border:1px solid var(--mederi-border); border-radius:999px; padding:12px 18px; background:var(--mederi-surface); cursor:pointer; font:inherit; }
.mwce-header-data { display:inline-flex; align-items:center; gap:8px; }
.mwce-badge { background:var(--mederi-yellow); border-radius:50%; min-width:24px; padding:2px 6px; text-align:center; font-size:12px; }
.mwce-drawer { inset:0 0 0 auto; margin:0; width:430px; max-width:100vw; height:100dvh; max-height:100dvh; padding:0; border:0; background:var(--mederi-surface); box-shadow:-5px 0 30px #0001; overflow-y:auto; }
.mwce-drawer::backdrop { background:#0005; }
.mwce-drawer-heading { display:flex; align-items:center; justify-content:space-between; padding:8px 24px; border-bottom:1px solid var(--mederi-border); }
.mwce-drawer-heading h2 { font:inherit; font-size:22px; margin:0; }
.mwce-drawer .mwce-mini-cart { padding:4px 24px 24px; }
.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__main:has(.mwce-mini-cart) { background:var(--mederi-background,#f8f5ee); }
/* Constrain only enhanced drawers. The product list scrolls; totals and CTA stay visible. */
.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__main:has(.mwce-mini-cart) {
    display:flex!important; flex-direction:column; box-sizing:border-box;
    height:100vh!important; height:100dvh!important; max-height:100dvh!important;
    overflow:hidden!important; padding-top:44px!important;
}
.elementor-menu-cart__main:has(.mwce-mini-cart) .elementor-menu-cart__close-button {
    position:absolute!important; top:6px!important; right:12px!important;
    width:36px!important; height:36px!important; margin:0!important; padding:0!important;
}
.elementor-menu-cart__main:has(.mwce-mini-cart) .elementor-menu-cart__close-button::before,
.elementor-menu-cart__main:has(.mwce-mini-cart) .elementor-menu-cart__close-button::after {
    width:20px!important; height:2px!important; top:17px!important; left:8px!important;
}
.elementor-menu-cart__main:has(.mwce-mini-cart) .elementor-menu-cart__close-button :is(svg,i) {
    width:20px!important; height:20px!important; font-size:20px!important;
}
.mwce-empty-title { margin:6px 0 12px; }
.mwce-empty > p:not(.mwce-empty-title) { margin:0 0 16px; }
.elementor-menu-cart__main:has(.mwce-mini-cart) .widget_shopping_cart_content {
    display:flex; flex-direction:column; flex:1 1 0; min-height:0; overflow:hidden;
}
.mwce-drawer[open] { display:flex; flex-direction:column; overflow:hidden; }
.mwce-drawer-heading,.mwce-drawer-status { flex-shrink:0; }
.mwce-drawer-content { flex:1 1 0; min-height:0; overflow:hidden; }
:is(.elementor-menu-cart__main,.mwce-drawer-content) .mwce-mini-cart {
    display:flex; flex-direction:column; height:100%; min-height:0; overflow:hidden;
    padding-bottom:max(16px,env(safe-area-inset-bottom));
}
:is(.elementor-menu-cart__main,.mwce-drawer-content) .mwce-mini-cart ul.cart_list {
    flex:1 1 0; min-height:0; overflow-y:auto!important; overflow-x:hidden;
    max-height:none!important; padding-right:5px; overscroll-behavior-y:contain;
    scrollbar-width:thin; scrollbar-color:var(--mederi-border) transparent;
    -webkit-overflow-scrolling:touch;
}
:is(.elementor-menu-cart__main,.mwce-drawer-content) .mwce-mini-cart > :not(ul.cart_list) { flex-shrink:0; }
.mwce-mini-cart ul.cart_list::-webkit-scrollbar { width:5px; }
.mwce-mini-cart ul.cart_list::-webkit-scrollbar-thumb { background:var(--mederi-border); border-radius:999px; }
.mwce-close { background:transparent; border:0; width:36px; height:36px; padding:0; font-size:22px; }
:where(.mwce-mini-cart,.mwce-drawer,.mwce-trigger) :focus-visible,.mwce-trigger:focus-visible { outline:3px solid var(--mederi-accent); outline-offset:3px; }
@keyframes mwce-spin { to { transform:rotate(360deg); } }
@media(max-width:480px) {
    .mwce-drawer { width:100%; }
    .mwce-mini-cart { padding:4px 0 16px; }
    .mwce-drawer .mwce-mini-cart { padding:4px 20px 20px; }
    .mwce-mini-cart ul.cart_list li { padding-left:68px; }
    .mwce-mini-cart ul.cart_list li img { width:56px; height:56px; padding:4px; border-radius:12px; }
    .mwce-line { column-gap:5px; }
    .mwce-line-price { font-size:13px; }
}
@media(prefers-reduced-motion:reduce) { .mwce-line[aria-busy="true"]::after { animation:none; } }
