/* ==========================================================================
   Міні-кошик у бічній панелі (Elementor Off Canvas)

   [mini_cart_count]  → .mini-cart-count
   [mini_cart_items]  → .mini-cart-items
   [mini_cart_totals] → .mini-cart-totals
   Усі блоки — фрагменти WooCommerce: їх вміст замінюється цілком,
   тому всі розміри задаються всередині, а не на батьківському елементі.
   Розкладка шапки й порядок блоків — налаштуваннями контейнера Elementor.
   ========================================================================== */

/* НАЛАШТУВАННЯ ПІД ПРОЄКТ
   Кольори й шрифт — лише токени з tokens.css; тут — роль кожного в міні-кошику.
   Змінні на самих блоках: фрагменти Woo замінюють блок цілком разом із вмістом. */
.mini-cart-count,
.mini-cart-items,
.mini-cart-totals{
	--mc-ink:    var(--theme-text);         /* основний текст */
	--mc-dark:   var(--theme-text-strong);  /* назви, сума «Разом» */
	--mc-muted:  var(--theme-text-muted);   /* другорядний текст */
	--mc-line:   var(--theme-line);         /* рамки карток і степпера */
	--mc-accent: var(--theme-accent);       /* кнопка оформлення */
	--mc-on-accent: var(--theme-on-accent); /* текст на кнопці */
	--mc-badge:  var(--theme-badge);        /* лічильник */
	--mc-on-badge: var(--theme-on-badge);   /* цифра на лічильнику */
	--mc-hover:  var(--theme-accent-soft);  /* hover кнопок степпера */
	--mc-font:   var(--theme-font);
	--mc-radius: var(--theme-radius);       /* картка товару */
	--mc-thumb:  88px;                      /* ← ПРОЄКТ розмір фото */
	--mc-gap:    12px;                      /* ← ПРОЄКТ відступи між картками */

	font-family: var(--mc-font), sans-serif;
	color: var(--mc-ink);
	font-variant-numeric: lining-nums; /* деякі шрифти за замовчуванням мають старостильні цифри */
}

.mini-cart-items.is-loading,
.mini-cart-totals.is-loading{opacity:.5;pointer-events:none;transition:opacity .15s ease}

/* --- скид стилів Elementor ---
   Site Settings → Buttons стилізує ВСІ <button> на сайті. Скидаємо явно:
   селектор із батьком + !important, бо правило кіта має вищу специфічність. */
.mini-cart-items button.mini-cart__qty-btn,
.mini-cart-items button.mini-cart__remove,
.mini-cart-items button.mini-cart__clear{
	background:none !important;
	background-color:transparent !important;
	border:0 !important;
	box-shadow:none !important;
	text-shadow:none !important;
	color:var(--mc-ink) !important;
	padding:0 !important;
	font-family:inherit;
	line-height:1;
	cursor:pointer;
}

/* --- лічильник біля заголовка «Кошик» --- */
.mini-cart-count{
	display:inline-grid;place-items:center;
	min-width:32px;height:32px;padding:0 8px;box-sizing:border-box;
	border-radius:999px;
	background:var(--mc-badge);
	color:var(--mc-on-badge);
	font-size:14px;font-weight:600;line-height:1;
	font-variant-numeric:lining-nums tabular-nums;
}
.mini-cart-count.is-empty{display:none}
/* у заголовку (Heading → Dynamic Tag «Shortcode» [mini_cart_count], Before: «Кошик») — кружечок по центру рядка */
.elementor-heading-title .mini-cart-count{margin-left:10px;vertical-align:middle;position:relative;top:-.08em}

/* --- рядок «N позицій / Очистити» (MINI_CART_SHOW_SUMMARY) --- */
.mini-cart__summary{
	display:flex;align-items:center;justify-content:space-between;gap:12px;
	margin-bottom:var(--mc-gap);
	font-size:13px;
}
.mini-cart__count{color:var(--mc-muted)}
.mini-cart-items button.mini-cart__clear{
	font-size:14px;
	color:var(--mc-muted) !important;
	text-decoration:underline;
	text-underline-offset:3px;
}
.mini-cart-items button.mini-cart__clear:hover{color:var(--mc-ink) !important}

/* --- список --- */
.mini-cart__list{
	display:flex;flex-direction:column;gap:var(--mc-gap);
	margin:0;padding:0;list-style:none;
}
.mini-cart__list li::before,
.mini-cart__list li::marker{display:none;content:none}

/* --- картка товару --- */
.mini-cart__item{
	display:grid;
	grid-template-columns:var(--mc-thumb) minmax(0,1fr);
	gap:var(--mc-gap);
	padding:11px;
	border:1px solid var(--mc-line);
	border-radius:var(--mc-radius);
	background:transparent;
}
.mini-cart__thumb img{
	display:block;width:var(--mc-thumb);height:var(--mc-thumb);
	object-fit:cover;border-radius:12px;
}
.mini-cart__body{display:flex;flex-direction:column;min-width:0}

.mini-cart__head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.mini-cart__title{
	font-size:18px;font-weight:600;line-height:1.2;letter-spacing:-.01em;
	color:var(--mc-dark);text-decoration:none;
}
.mini-cart__title:hover{text-decoration:underline;text-underline-offset:3px}

.mini-cart-items button.mini-cart__remove{
	flex:0 0 auto;
	width:24px;height:24px;
	display:grid;place-items:center;
	transition:opacity .2s ease;
}
.mini-cart-items button.mini-cart__remove:hover{opacity:.6}
.mini-cart__remove svg{width:22px;height:22px;display:block}

.mini-cart__variant{margin-top:2px;font-size:14px;line-height:1.25;color:var(--mc-muted)}
.mini-cart__unit{margin-top:6px;font-size:13px;line-height:1.2;color:var(--mc-muted)}
.mini-cart__unit b{font-weight:600;color:var(--mc-ink)}

.mini-cart__foot{
	display:flex;align-items:center;justify-content:space-between;gap:12px;
	margin-top:auto;padding-top:8px;
}
.mini-cart__price{
	font-size:18px;font-weight:700;line-height:1;
	color:var(--mc-dark);white-space:nowrap;
	font-variant-numeric:lining-nums tabular-nums;
}

/* --- степпер: обведена «пігулка» --- */
.mini-cart__qty{
	display:inline-flex;align-items:center;gap:2px;
	padding:3px;
	border:1px solid var(--mc-line);
	border-radius:999px;
}
.mini-cart-items button.mini-cart__qty-btn{
	box-sizing:border-box;
	width:28px;height:28px;
	display:inline-grid;place-items:center;
	border-radius:50% !important;
	transition:background-color .2s ease;
}
.mini-cart-items button.mini-cart__qty-btn:hover{background-color:var(--mc-hover) !important}
.mini-cart-items button.mini-cart__qty-btn:disabled{opacity:.35;cursor:default;background:none !important}
.mini-cart__qty-btn svg{width:16px;height:16px;display:block}
.mini-cart__qty-value{
	min-width:20px;text-align:center;
	font-size:14px;font-weight:600;color:var(--mc-dark);
	font-variant-numeric:lining-nums tabular-nums;
}

/* --- порожній кошик --- */
.mini-cart__empty{margin:0;padding:24px 0;text-align:center;color:var(--mc-muted)}

/* --- підсумок --- */
.mini-cart-totals.is-empty{display:none}
.mini-cart-totals{
	padding-top:20px;
	border-top:1px solid var(--mc-line);
}

.mini-cart__totals-title{margin:0 0 12px;font-size:20px;font-weight:600;color:var(--mc-dark)}

.mini-cart__totals-rows{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}
.mini-cart__row{
	display:flex;align-items:baseline;justify-content:space-between;gap:12px;
	font-size:16px;line-height:1.2;
	color:var(--mc-muted);
}
.mini-cart__row span:last-child{white-space:nowrap}
.mini-cart__row--total{margin-top:6px;color:var(--mc-dark)}
.mini-cart__row--total span:first-child{font-size:20px;font-weight:600}
.mini-cart__row--total span:last-child{font-size:28px;font-weight:700;letter-spacing:-.02em}

/* --- кнопка оформлення ---
   Класи elementor-button лишаються в розмітці; вигляд задаємо тут селектором
   з вищою специфічністю (0,3,1), ніж правила кіта Site Settings → Buttons. */
.mini-cart-totals a.mini-cart__checkout.elementor-button{
	display:flex;align-items:center;justify-content:center;gap:6px;
	width:100%;box-sizing:border-box;
	padding:18px 24px;
	border:0;border-radius:var(--theme-button-radius);
	background:var(--mc-accent);
	color:var(--mc-on-accent);
	font-family:var(--theme-button-font), sans-serif;
	font-size:16px;font-weight:500;line-height:1;letter-spacing:0;
	text-align:center;text-decoration:none;
	transition:background-color .2s ease,color .2s ease;
}
.mini-cart-totals a.mini-cart__checkout.elementor-button:hover{background:var(--theme-accent-strong);color:var(--mc-on-accent)}
.mini-cart-totals a.mini-cart__checkout .elementor-button-text{color:inherit}
.mini-cart__checkout-total{white-space:nowrap}