/* Forcelab – предложения в количката */
.flcx-li { display: block !important; list-style: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; min-height: 0 !important; background: none !important; }
.flcx-li::before, .flcx-li::after, .flcx-item::before, .flcx-item::after { display: none !important; content: none !important; }
.flcx .amount, .flcx bdi { display: inline !important; font-size: inherit !important; font-weight: inherit !important; color: inherit !important; margin: 0 !important; }
.flcx img { float: none !important; position: static !important; margin: 0 !important; max-width: none !important; }
.flcx a { position: static !important; }
.flcx, .flcx a, .flcx button, .flcx select, .flcx span, .flcx b { font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important; }
.flcx { margin: 14px 0 6px; padding: 14px; border: 1px solid #e6e6e6; border-radius: 12px; background: #fafafa; }
.flcx-head { margin: 0 0 10px; line-height: 1.3; }
.flcx-head b { display: block; font-size: 15px; font-weight: 700; color: #111; }
.flcx-head .flcx-gap { color: #e2401c; white-space: nowrap; }
.flcx-head .flcx-sub { display: block; margin-top: 2px; font-size: 13px; color: #666; }
.flcx-list { margin: 0; padding: 0; display: grid; gap: 8px; }
.flcx-item { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; gap: 10px; align-items: center; margin: 0; padding: 8px; background: #fff; border: 1px solid #eee; border-radius: 10px; }
.flcx-item--plus { border-color: #e2401c; background: #fff7f5; }
.flcx-img { display: block; width: 48px; height: 48px; border-radius: 8px; overflow: hidden; background: #f3f3f3; }
.flcx-img img { width: 100% !important; height: 100% !important; object-fit: contain; margin: 0 !important; max-width: none !important; }
.flcx-body { min-width: 0; }
.flcx-name { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 13px; font-weight: 600; line-height: 1.25; color: #111 !important; text-decoration: none !important; }
.flcx-price { margin-top: 3px; font-size: 13px; line-height: 1.3; }
.flcx-price b { font-weight: 700; color: #e2401c; }
.flcx-price del { color: #999; font-size: 12px; margin-right: 2px; }
.flcx-q { color: #555; }
.flcx-free { display: inline-block; margin-left: 2px; font-size: 11px; font-weight: 600; color: #1e8a3c; white-space: nowrap; }
.flcx-badge { display: inline-block; margin-bottom: 3px; padding: 2px 7px; border-radius: 20px; background: #e2401c; color: #fff; font-size: 11px; font-weight: 700; line-height: 1.4; }
.flcx-opt { display: block; width: 100%; max-width: 200px; margin-top: 5px; padding: 3px 6px !important; height: auto !important; min-height: 0 !important; font-size: 12px !important; line-height: 1.3 !important; border: 1px solid #ddd !important; border-radius: 6px !important; background-color: #fff !important; }
.flcx-add { padding: 8px 14px !important; border: 0; border-radius: 30px !important; background: #111 !important; color: #fff !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: .02em; text-transform: uppercase; line-height: 1 !important; cursor: pointer; white-space: nowrap; }
.flcx-add:hover { background: #333 !important; }
.flcx-add.is-busy { opacity: .6; cursor: wait; }
.flcx-add.is-done { background: #1e8a3c !important; }

/* Страницата на количката – по-широко, в редица */
.flcx--cart { margin: 22px 0 10px; padding: 18px; }
.flcx--cart .flcx-head b { font-size: 17px; }
@media (min-width: 768px) {
	.flcx--cart .flcx-list { grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }
	.flcx--cart .flcx-item { grid-template-columns: 64px 1fr; grid-template-rows: auto auto; align-items: start; }
	.flcx--cart .flcx-img { width: 64px; height: 64px; }
	.flcx--cart .flcx-add { grid-column: 1 / -1; width: 100%; padding: 10px 14px !important; }
}

/* Кръгчета с вкусовете – името на избрания е винаги на отделен ред отдолу,
   за да не се мести при смяна */
.flcx-sw { display: block; margin-top: 7px; }
.flcx-dots { display: flex; flex-wrap: wrap; gap: 8px; }
.flcx .flcx-dot { flex: 0 0 auto; width: 44px; height: 44px; min-width: 0 !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; border: 2px solid #e3e3e3 !important; border-radius: 50% !important; background: #fff !important; overflow: hidden; cursor: pointer; line-height: 0 !important; box-shadow: none !important; transition: border-color .15s, box-shadow .15s; }
.flcx .flcx-dot img { width: 100% !important; height: 100% !important; object-fit: cover; border-radius: 50%; display: block; transform: scale(1.18); }
.flcx .flcx-dot:hover { border-color: #999 !important; }
.flcx .flcx-dot.is-on { border-color: #111 !important; box-shadow: 0 0 0 1px #111 !important; }
.flcx-sw-name { display: block; margin-top: 5px; height: 15px; font-size: 12px; line-height: 15px; color: #444; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* Мини количката: скролът да не „избяга“ към страницата отдолу.
   Докато количката е отворена, страницата отзад не се движи – така
   плъзгането работи, откъдето и да започне. */
.shoptimizer-mini-cart-wrap, .shoptimizer-mini-cart-wrap .widget_shopping_cart,
.shoptimizer-mini-cart-wrap .woocommerce-mini-cart { overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
@media (max-width: 991px) { html:has(body.drawer-open), body.drawer-open { overflow: hidden !important; } }

/* Телефон: по-компактно и само 2 предложения в мини количката,
   за да остане място за скролване над сумите */
@media (max-width: 767px) {
	.flcx--mini { margin: 10px 0 4px; padding: 10px; border-radius: 10px; }
	.flcx--mini .flcx-head { margin-bottom: 8px; }
	.flcx--mini .flcx-head b { font-size: 14px; }
	.flcx--mini .flcx-sub { display: none; }
	.flcx--mini .flcx-list { gap: 6px; }
	.flcx--mini .flcx-item { grid-template-columns: 40px minmax(0, 1fr) auto; gap: 8px; padding: 6px; }
	.flcx--mini .flcx-item:nth-child(n+3) { display: none; }
	.flcx--mini .flcx-img { width: 40px; height: 40px; border-radius: 6px; }
	.flcx--mini .flcx-name { -webkit-line-clamp: 1; font-size: 12px; }
	.flcx--mini .flcx-price { margin-top: 1px; font-size: 12px; }
	.flcx--mini .flcx-badge { margin-bottom: 2px; font-size: 10px; padding: 1px 6px; }
	.flcx--mini .flcx-opt { max-width: 150px; margin-top: 3px; font-size: 11px !important; }
	.flcx--mini .flcx-sw { margin-top: 5px; }
	.flcx--mini .flcx-dots { gap: 7px; }
	.flcx--mini .flcx-dot { width: 40px; height: 40px; }
	.flcx--mini .flcx-sw-name { margin-top: 4px; }
	.flcx--mini .flcx-add { padding: 7px 11px !important; font-size: 11px !important; }
}
