/* ==========================================================================
   Infantdeco · Carrito (WooCommerce clásico)
   Mismo lenguaje que el checkout y el popup de login. Todo vive bajo .idc-ui.
   Los valores de los tokens los pone el panel de control del plugin.
   ========================================================================== */
.idc-ui {
	--idc-primary: #9cc5d3;
	--idc-on-primary: #ffffff;
	--idc-link: #2f6f86;
	--idc-ink: #3a3330;
	--idc-muted: #75706c;
	--idc-line: #dedad7;
	--idc-bg: #ffffff;
	--idc-side: #f6f9fa;
	--idc-danger: #c0392b;
	--idc-r-field: 10px;
	--idc-r-btn: 30px;
	--idc-r-box: 12px;
	--idc-field-h: 52px;
	--idc-btn-case: uppercase;
	--idc-btn-track: .07em;
	--idc-font: inherit;
}
.idc-ui {
	--idc-line-strong: color-mix(in srgb, var(--idc-line), #000 7%);
	color: var(--idc-ink) !important;
	font-family: var(--idc-font) !important;
	font-size: 15px !important;
	line-height: 1.45 !important;
	max-width: 1120px !important;
	margin: 0 auto !important;
}
.idc-ui *, .idc-ui *::before, .idc-ui *::after { box-sizing: border-box !important; }
.idc-ui table, .idc-ui th, .idc-ui td { border: 0 !important; background: none !important; }
.idc-ui .screen-reader-text { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; }
.idc-ui [hidden] { display: none !important; }/* ---------- Blindaje: anula lo que el tema o WooCommerce pongan dentro de .idc-ui ---------- */


.idc-ui :is(div, section, aside, nav, header, footer, main, form, p, span, a, b, em, i, strong, small, bdi, label, ul, ol, li, dl, dt, dd, h1, h2, h3, h4, table, thead, tbody, tfoot, tr, th, td, img, figure, fieldset) {
	background-color: transparent !important; background-image: none !important; box-shadow: none !important; text-shadow: none !important; text-transform: inherit !important; letter-spacing: inherit !important;
	float: none !important; border: 0 !important; border-radius: 0 !important; outline: 0 !important; min-height: 0 !important; filter: none !important; transform: none !important; opacity: 1 !important;
	font-family: inherit !important; font-size: inherit !important; font-weight: inherit !important; font-style: inherit !important; line-height: inherit !important; color: inherit !important; text-decoration: none !important; vertical-align: baseline !important; clear: none !important;
}
.idc-ui { text-transform: none !important; letter-spacing: normal !important; font-style: normal !important; text-shadow: none !important; }
.idc-ui :is(p, ul, ol, li, dl, dt, dd, h1, h2, h3, h4, table, thead, tbody, tfoot, tr, th, td, form, figure, fieldset, label, img) { margin: 0 !important; padding: 0 !important; }
.idc-ui :is(ul, ol, li) { list-style: none !important; }
.idc-ui :is(th, td, li, p, div, span, a)::before, .idc-ui :is(th, td, li, p, div, span, a)::after { content: none !important; }
.idc-ui :is(strong, b) { font-weight: 700 !important; }
.idc-ui img { max-width: 100% !important; height: auto !important; }
.idc-ui :is(button, input, select, textarea) { text-transform: none !important; letter-spacing: normal !important; text-shadow: none !important; box-shadow: none !important; min-height: 0 !important; font-family: inherit !important; }
.idc-ui table { width: 100% !important; border-collapse: collapse !important; }
.idc-ui th, .idc-ui td { text-align: left !important; }/* ---------- Columnas ---------- */


.idc-ui .idc-cart-layout {
	display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 24px !important; align-items: start !important;
}
@media (min-width: 900px) {
	.idc-ui .idc-cart-layout { grid-template-columns: minmax(0, 1.25fr) minmax(0, .85fr) !important; gap: 48px !important; }
	.idc-ui .idc-cart-side { position: sticky !important; top: max(calc(var(--idc-head-h, 0px) + 24px), var(--idc-sticky-min, 164px)) !important; transition: top .2s ease !important; }
}/* ---------- Títulos y secciones ---------- */


.idc-ui .idc-h {
	display: flex !important; align-items: center !important; gap: 10px !important; margin: 0 0 16px !important; padding: 0 !important; border: 0 !important;
	font-size: 20px !important; font-weight: 700 !important; line-height: 1.2 !important; color: var(--idc-ink) !important; text-transform: none !important; letter-spacing: 0 !important;
}
.idc-ui .idc-link { color: var(--idc-ink) !important; font-size: 13.5px !important; font-weight: 600 !important; text-decoration: underline !important; text-decoration-color: var(--idc-primary) !important; text-underline-offset: 3px !important; }

.idc-ui .wc-proceed-to-checkout a.checkout-button {
	display: flex !important; align-items: center !important; justify-content: center !important; float: none !important;
	width: 100% !important; height: 54px !important; margin: 0 !important; padding: 0 18px !important;
	border: 0 !important; border-radius: var(--idc-r-btn) !important; box-shadow: none !important;
	background: var(--idc-primary) !important; color: var(--idc-on-primary) !important;
	font-size: 15px !important; font-weight: 700 !important; line-height: 1 !important; letter-spacing: var(--idc-btn-track) !important; text-transform: var(--idc-btn-case) !important; text-decoration: none !important;
	transition: filter .2s !important;
}
.idc-ui .wc-proceed-to-checkout a.checkout-button:hover { filter: brightness(.95) !important; }
.idc-ui .wc-proceed-to-checkout { padding: 0 !important; margin: 18px 0 0 !important; display: grid !important; gap: 10px !important; }
.idc-ui .idc-trust { display: flex !important; align-items: center !important; justify-content: center !important; gap: 6px !important; margin: 14px 0 0 !important; font-size: 12.5px !important; color: var(--idc-muted) !important; }/* ---------- Columna del resumen ---------- */


.idc-ui .idc-cart-side { background: var(--idc-side) !important; border-radius: var(--idc-r-box) !important; padding: 24px !important; }
.idc-ui .idc-side-title { font-size: 17px !important; margin-bottom: 14px !important; }
.idc-ui .idc-cart-coupon .button {
	flex: none !important; height: 46px !important; padding: 0 18px !important; border-radius: var(--idc-r-field) !important; border: 1px solid var(--idc-line-strong) !important; background: color-mix(in srgb, var(--idc-side), #000 4%) !important; color: var(--idc-ink) !important;
	font-family: inherit !important; font-size: 14px !important; font-weight: 700 !important; cursor: pointer !important; text-transform: none !important; letter-spacing: 0 !important; box-shadow: none !important; line-height: 1 !important;
}
.idc-ui .idc-cart-coupon .button:hover { background: color-mix(in srgb, var(--idc-side), #000 8%) !important; }
.idc-ui table.idc-totals { width: 100% !important; margin: 12px 0 0 !important; border-collapse: collapse !important; font-size: 14.5px !important; }
.idc-ui table.idc-totals th { padding: 6px 0 !important; text-align: left !important; font-weight: 400 !important; vertical-align: top !important; }
.idc-ui table.idc-totals td { padding: 6px 0 !important; text-align: right !important; vertical-align: top !important; }
.idc-ui table.idc-totals .order-total th, .idc-ui table.idc-totals .order-total td { padding-top: 14px !important; border-top: 1px solid var(--idc-line) !important; font-size: 18px !important; font-weight: 700 !important; }
.idc-ui table.idc-totals .order-total td small, .idc-ui table.idc-totals .order-total .includes_tax { display: block !important; font-size: 12px !important; font-weight: 400 !important; color: var(--idc-muted) !important; }
.idc-ui table.idc-totals .woocommerce-shipping-methods { list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid !important; gap: 4px !important; }
.idc-ui table.idc-totals .woocommerce-shipping-methods li { margin: 0 !important; display: flex !important; justify-content: flex-end !important; align-items: center !important; gap: 6px !important; font-size: 13.5px !important; }
.idc-ui table.idc-totals .woocommerce-shipping-destination, .idc-ui table.idc-totals .woocommerce-shipping-calculator { font-size: 12px !important; color: var(--idc-muted) !important; margin: 4px 0 0 !important; }
.idc-ui table.idc-totals .woocommerce-remove-coupon { color: var(--idc-muted) !important; font-size: 12px !important; }
.idc-ui .idc-shipping-later td { color: var(--idc-muted) !important; font-size: 13.5px !important; }/* ---------- Precios: heredan color y peso (algunos temas los pintan de color y con fondo) ---------- */


.idc-ui .woocommerce-Price-amount, .idc-ui .amount, .idc-ui bdi, .idc-ui .woocommerce-Price-currencySymbol { color: inherit !important; font-weight: inherit !important; font-size: inherit !important; background: transparent !important; padding: 0 !important; margin: 0 !important; border: 0 !important; box-shadow: none !important; }/* ---------- Campos del carrito (cupón) ---------- */


.idc-ui .idc-cart-coupon #coupon_code {
	display: block !important; width: 100% !important; max-width: none !important; height: 46px !important; margin: 0 !important; padding: 0 16px !important;
	border: 1px solid var(--idc-line-strong) !important; border-radius: var(--idc-r-field) !important; background: #fff !important;
	color: var(--idc-ink) !important; font-family: inherit !important; font-size: 16px !important; line-height: 1.2 !important; box-shadow: none !important; outline: none !important;
}
.idc-ui .idc-cart-coupon #coupon_code:focus { border-color: var(--idc-link) !important; box-shadow: 0 0 0 1px var(--idc-link) !important; }
.idc-ui .idc-cart-coupon #coupon_code::placeholder { color: #8b8580 !important; opacity: 1 !important; }
.idc-ui .idc-cart-item input[type="checkbox"], .idc-ui input[type="radio"] { width: 16px !important; height: 16px !important; accent-color: var(--idc-link) !important; }
.idc-ui .screen-reader-text { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; }/* Los botones − / + propios del tema (Woodmart y otros) se ocultan: el plugin pone los suyos y así no salen dobles */


.idc-ui .idc-ci-qty .quantity :is(.minus, .plus, .qty-minus, .qty-plus, .wd-minus, .wd-plus, .quantity-minus, .quantity-plus, [class*="qib-"]):not(.idc-step) { display: none !important; }/* ---------- Descuentos, precio anterior y ahorro ---------- */


.idc-ui table.idc-totals .idc-discount th { line-height: 1.5 !important; }
.idc-ui .idc-chip { display: inline-flex !important; align-items: center !important; gap: 4px !important; margin: 0 4px !important; padding: 2px 8px !important; border-radius: 6px !important; background: color-mix(in srgb, var(--idc-primary) 22%, #fff) !important; color: var(--idc-ink) !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: .03em !important; white-space: nowrap !important; vertical-align: 1px !important; }
.idc-ui .idc-chip svg { display: block !important; flex: none !important; }
.idc-ui .idc-remove-coupon { margin-right: 2px !important; color: var(--idc-muted) !important; font-size: 12px !important; text-decoration: underline !important; text-underline-offset: 2px !important; white-space: nowrap !important; }
.idc-ui .idc-remove-coupon:hover { color: var(--idc-danger) !important; }
.idc-ui .idc-minus { color: var(--idc-ink) !important; font-weight: 600 !important; white-space: nowrap !important; }
.idc-ui table.idc-totals .idc-savings th, .idc-ui table.idc-totals .idc-savings td { padding-top: 2px !important; font-size: 13px !important; font-weight: 600 !important; color: var(--idc-link) !important; border-top: 0 !important; }
.idc-ui del.idc-was { margin: 0 4px 0 0 !important; color: var(--idc-muted) !important; font-weight: 400 !important; text-decoration: line-through !important; white-space: nowrap !important; }
.idc-ui del.idc-was .amount, .idc-ui del.idc-was bdi { text-decoration: line-through !important; }
.idc-ui .idc-coupon-msg { margin: 8px 2px 0 !important; font-size: 13px !important; line-height: 1.4 !important; }
.idc-ui .idc-coupon-msg.is-ok { color: #1d6b43 !important; }
.idc-ui .idc-coupon-msg.is-error { color: var(--idc-danger) !important; }
.idc-ui .is-busy { opacity: .6 !important; cursor: progress !important; }
.idc-ui .cart_totals.is-loading { opacity: .55 !important; pointer-events: none !important; transition: opacity .15s !important; }/* ---------- Aviso (banner) arriba del carrito o del checkout ---------- */


.idc-ui .idc-banner { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 10px 14px !important; width: 100% !important; margin: 0 0 22px !important; padding: 12px 14px !important; border-radius: var(--idc-r-box) !important; background: var(--idc-b-bg, #fdf8f4) !important; color: var(--idc-b-ink, #3a3330) !important; font-size: 16px !important; line-height: 1.4 !important; text-align: left !important; text-decoration: none !important; }
.idc-ui .idc-banner--promo { border-left: 4px solid var(--idc-b-accent, #9bc5cd) !important; }
.idc-ui .idc-banner--dashed { padding: 14px 16px !important; border: 1.5px dashed var(--idc-b-accent, #9bc5cd) !important; }
.idc-ui .idc-banner-icon { display: flex !important; flex: 0 0 34px !important; width: 34px !important; height: 34px !important; align-items: center !important; justify-content: center !important; border-radius: 50% !important; background: var(--idc-b-accent, #9bc5cd) !important; color: #fff !important; }
.idc-ui .idc-banner--dashed .idc-banner-icon { flex-basis: 44px !important; width: 44px !important; height: 44px !important; }
.idc-ui .idc-banner-icon svg { display: block !important; }
.idc-ui .idc-banner-pct { font-size: 16px !important; font-weight: 800 !important; line-height: 1 !important; color: #fff !important; }
.idc-ui .idc-banner-body { display: block !important; flex: 1 1 200px !important; min-width: 0 !important; }
.idc-ui .idc-banner-title { display: block !important; margin: 0 0 2px !important; font-size: var(--idc-b-fs, 15px) !important; font-weight: 700 !important; line-height: 1.3 !important; }
.idc-ui .idc-banner-text { display: block !important; font-size: var(--idc-b-fs, 15px) !important; font-weight: 600 !important; line-height: 1.5 !important; }
.idc-ui .idc-banner-title + .idc-banner-text { font-weight: 400 !important; }
.idc-ui .idc-banner-code { display: inline-block !important; margin: 0 2px !important; padding: 1px 9px !important; border: 1.5px dashed var(--idc-b-accent, #9bc5cd) !important; border-radius: 6px !important; background: #fff !important; color: #222 !important; font-size: 1em !important; font-weight: 800 !important; letter-spacing: .08em !important; line-height: 1.5 !important; white-space: nowrap !important; }
.idc-ui .idc-banner-actions { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; margin-left: auto !important; }
.idc-ui .idc-banner-copy, .idc-ui .idc-banner-btn { display: inline-flex !important; flex: 0 0 auto !important; align-items: center !important; justify-content: center !important; height: 34px !important; margin: 0 !important; padding: 0 14px !important; border: 0 !important; border-radius: 20px !important; background: var(--idc-b-ink, #3a3330) !important; color: #fff !important; font-family: inherit !important; font-size: 12px !important; font-weight: 700 !important; line-height: 1 !important; white-space: nowrap !important; cursor: pointer !important; text-decoration: none !important; }
.idc-ui .idc-banner-btn { background: transparent !important; color: var(--idc-b-ink, #3a3330) !important; box-shadow: inset 0 0 0 1.5px var(--idc-b-ink, #3a3330) !important; }
.idc-ui .idc-banner-copy:focus-visible, .idc-ui .idc-banner-btn:focus-visible { outline: 2px solid var(--idc-b-accent, #9bc5cd) !important; outline-offset: 2px !important; }
.idc-ui .idc-banner-copy:focus:not(:focus-visible), .idc-ui .idc-banner-btn:focus:not(:focus-visible), .idc-ui .idc-summary-toggle:focus:not(:focus-visible) { outline: 0 !important; }
.idc-ui .idc-banner--image { display: block !important; padding: 0 !important; background: transparent !important; overflow: hidden !important; }
.idc-ui .idc-banner--image picture, .idc-ui .idc-banner--image img { display: block !important; width: 100% !important; height: auto !important; max-width: 100% !important; }

.idc-ui .idc-cart-actions--top { padding: 0 0 16px !important; }/* ---------- Cupones aplicados (caja bien visible con "Quitar") ---------- */



.idc-ui .idc-applied { margin: 0 0 18px !important; }
.idc-ui .idc-applied ul { display: grid !important; gap: 8px !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.idc-ui .idc-applied-item { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 6px 10px !important; margin: 0 !important; padding: 11px 14px !important; border: 1px solid #b9dcc7 !important; border-radius: var(--idc-r-box) !important; background: #eef8f2 !important; color: #1d5e3c !important; font-size: 14px !important; line-height: 1.35 !important; }
.idc-ui .idc-applied-check { display: grid !important; place-items: center !important; flex: none !important; width: 22px !important; height: 22px !important; border-radius: 50% !important; background: #2e8b57 !important; color: #fff !important; }
.idc-ui .idc-applied-check svg { display: block !important; }
.idc-ui .idc-applied-text { flex: 1 1 140px !important; min-width: 0 !important; }
.idc-ui .idc-applied-text strong { font-weight: 800 !important; letter-spacing: .04em !important; }
.idc-ui .idc-applied-value { font-weight: 700 !important; white-space: nowrap !important; }
.idc-ui .idc-applied-remove { margin-left: 4px !important; margin-right: 2px !important; color: #1d5e3c !important; font-size: 13px !important; font-weight: 600 !important; text-decoration: underline !important; text-underline-offset: 2px !important; white-space: nowrap !important; }
.idc-ui .idc-applied-remove:hover { color: var(--idc-danger) !important; }
.idc-ui .idc-cart-applied { flex-basis: 100% !important; }
.idc-ui .cart_totals .idc-applied { display: none !important; }/* se ve junto al campo de cupón */ 
.idc-ui .idc-cart-applied .idc-applied-item { margin-top: 2px !important; }
.idc-ui .blockUI.blockOverlay { background: rgba(255,255,255,.25) !important; opacity: 1 !important; cursor: progress !important; }/* ---------- Carrito ---------- */


.idc-ui .idc-cart-title { align-items: baseline !important; }
.idc-ui .idc-cart-count { font-size: 14px !important; font-weight: 500 !important; color: var(--idc-muted) !important; }
.idc-ui .idc-cart-items { border: 0 !important; margin: 0 !important; padding: 0 !important; width: 100% !important; }
.idc-ui .idc-cart-form { margin: 0 !important; padding: 0 !important; }
.idc-ui .idc-cart-item {
	display: grid !important; grid-template-columns: 96px minmax(0, 1fr) auto !important; gap: 16px !important; align-items: start !important;
	padding: 16px 0 !important; border-bottom: 1px solid var(--idc-line) !important;
}
.idc-ui .idc-cart-item:first-of-type { border-top: 1px solid var(--idc-line) !important; }
.idc-ui .idc-ci-thumb img { width: 96px !important; height: 96px !important; object-fit: cover !important; border-radius: var(--idc-r-box) !important; display: block !important; border: 1px solid var(--idc-line) !important; }
.idc-ui .idc-ci-body { display: grid !important; gap: 6px !important; min-width: 0 !important; }
.idc-ui .idc-ci-name, .idc-ui .idc-ci-name a { font-size: 15px !important; font-weight: 600 !important; color: var(--idc-ink) !important; text-decoration: none !important; line-height: 1.3 !important; }
.idc-ui .idc-ci-name dl.variation { margin: 4px 0 0 !important; font-size: 12.5px !important; font-weight: 400 !important; color: var(--idc-muted) !important; }
.idc-ui .idc-ci-name dl.variation dt, .idc-ui .idc-ci-name dl.variation dd { display: inline !important; margin: 0 !important; float: none !important; }
.idc-ui .idc-ci-name dl.variation dd p { display: inline !important; margin: 0 !important; }
.idc-ui .idc-ci-unit { font-size: 13px !important; color: var(--idc-muted) !important; }
.idc-ui .idc-ci-qty .quantity {
	display: inline-flex !important; align-items: center !important; gap: 2px !important; height: 42px !important; padding: 0 4px !important; margin: 2px 0 0 !important;
	border: 1.5px solid var(--idc-line) !important; border-radius: var(--idc-r-btn) !important; background: #fff !important; width: auto !important;
}
.idc-ui .idc-ci-qty .quantity input.qty {
	width: 42px !important; height: 38px !important; padding: 0 !important; border: 0 !important; background: transparent !important;
	text-align: center !important; font-size: 15px !important; font-weight: 700 !important; -moz-appearance: textfield !important; appearance: textfield !important; box-shadow: none !important;
}
.idc-ui .idc-ci-qty .quantity input.qty::-webkit-inner-spin-button, .idc-ui .idc-ci-qty .quantity input.qty::-webkit-outer-spin-button { -webkit-appearance: none !important; margin: 0 !important; }
.idc-ui .idc-ci-qty .quantity .idc-step {
	width: 32px !important; height: 32px !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; border: 0 !important; border-radius: 50% !important;
	background: transparent !important; color: var(--idc-ink) !important; font-size: 18px !important; line-height: 1 !important; cursor: pointer !important; box-shadow: none !important;
}
.idc-ui .idc-ci-qty .quantity .idc-step:hover { background: var(--idc-side) !important; }
.idc-ui .idc-ci-end { display: grid !important; justify-items: end !important; gap: 10px !important; }
.idc-ui .idc-ci-subtotal { font-size: 15px !important; font-weight: 700 !important; white-space: nowrap !important; }
.idc-ui .idc-ci-remove a.remove {
	display: inline !important; width: auto !important; height: auto !important; font-size: 12.5px !important; line-height: 1.2 !important; font-weight: 500 !important;
	color: var(--idc-muted) !important; background: none !important; border-radius: 0 !important; text-decoration: underline !important; text-indent: 0 !important;
}
.idc-ui .idc-ci-remove a.remove:hover { color: var(--idc-danger) !important; }
.idc-ui .idc-cart-actions { display: flex !important; flex-wrap: wrap !important; gap: 12px !important; padding: 18px 0 0 !important; border: 0 !important; }
.idc-ui .idc-cart-coupon-msg { flex-basis: 100% !important; margin-top: -4px !important; }
.idc-ui .idc-cart-coupon { display: flex !important; gap: 8px !important; flex: 1 1 320px !important; max-width: 440px !important; float: none !important; }
.idc-ui .idc-cart-coupon #coupon_code { height: 46px !important; }
.idc-ui .idc-update-cart { display: none !important; }
.idc-ui .idc-cart-totals { width: 100% !important; float: none !important; margin: 0 !important; padding: 0 !important; background: transparent !important; box-shadow: none !important; border: 0 !important; }
.idc-ui .idc-cart-side .cart_totals > h2 { border: 0 !important; padding: 0 !important; }
.idc-ui .idc-cart-totals table.idc-totals { margin-top: 0 !important; }
.idc-ui .idc-cart-totals table.idc-totals th, .idc-ui .idc-cart-totals table.idc-totals td { display: table-cell !important; }
.idc-ui .idc-cart-totals table.idc-totals td::before { display: none !important; }
.idc-ui .idc-cross-sells { margin-top: 48px !important; }/* Móvil: como Shopify. Foto a la izquierda; a su lado el nombre (con la papelera arriba a la derecha)
   y debajo, en la misma fila, la cantidad a la izquierda y el precio a la derecha. */


@media (max-width: 599px) {
	.idc-ui .idc-cart-item {
		grid-template-columns: 88px minmax(0, 1fr) auto !important; grid-template-areas: "thumb name remove" "thumb qty price" !important;
		grid-template-rows: auto 1fr !important; column-gap: 14px !important; row-gap: 10px !important; align-items: start !important; padding: 14px 0 !important;
	}
	.idc-ui .idc-ci-body, .idc-ui .idc-ci-end { display: contents !important; }
	.idc-ui .idc-ci-thumb { grid-area: thumb !important; }
	.idc-ui .idc-ci-thumb img { width: 88px !important; height: 88px !important; }
	.idc-ui .idc-ci-name { grid-area: name !important; min-width: 0 !important; padding-top: 2px !important; font-size: 14.5px !important; }
	.idc-ui .idc-ci-name a { font-size: 14.5px !important; }
	.idc-ui .idc-ci-qty { grid-area: qty !important; align-self: end !important; }
	.idc-ui .idc-ci-qty .quantity { height: 38px !important; margin: 0 !important; }
	.idc-ui .idc-ci-qty .quantity input.qty { width: 34px !important; height: 34px !important; font-size: 14.5px !important; }
	.idc-ui .idc-ci-qty .quantity .idc-step { width: 30px !important; height: 30px !important; }
	.idc-ui .idc-ci-subtotal { grid-area: price !important; align-self: end !important; justify-self: end !important; display: flex !important; min-height: 38px !important; align-items: center !important; text-align: right !important; font-size: 15px !important; }
	.idc-ui .idc-ci-subtotal .idc-ci-sub-in { display: flex !important; flex-direction: column !important; align-items: flex-end !important; line-height: 1.2 !important; }
	.idc-ui .idc-ci-subtotal del.idc-was { margin: 0 !important; font-size: 12.5px !important; }
	.idc-ui .idc-ci-remove { grid-area: remove !important; justify-self: end !important; margin: -4px -6px 0 0 !important; }
	.idc-ui .idc-ci-remove a.remove {
		display: grid !important; place-items: center !important; width: 32px !important; height: 32px !important; font-size: 0 !important; color: var(--idc-muted) !important; text-decoration: none !important;
	}
	.idc-ui .idc-ci-remove a.remove::before {
		content: "" !important; display: block !important; width: 18px !important; height: 18px !important; background-color: currentColor !important;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M10 11v6M14 11v6M5.5 7l1 12a2 2 0 0 0 2 2h7a2 2 0 0 0 2-2l1-12M9 7V4.5A1.5 1.5 0 0 1 10.5 3h3A1.5 1.5 0 0 1 15 4.5V7'/%3E%3C/svg%3E") center / contain no-repeat !important;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M10 11v6M14 11v6M5.5 7l1 12a2 2 0 0 0 2 2h7a2 2 0 0 0 2-2l1-12M9 7V4.5A1.5 1.5 0 0 1 10.5 3h3A1.5 1.5 0 0 1 15 4.5V7'/%3E%3C/svg%3E") center / contain no-repeat !important;
	}
}/* ---------- Barra fija inferior en móvil ---------- */


body.idc-bar-on .wd-toolbar, body.idc-bar-on .woodmart-toolbar, body.idc-bar-on .storefront-handheld-footer-bar, body.idc-bar-on .wd-sticky-btn { display: none !important; }
.idc-ui .idc-bar {
	position: fixed !important; left: 0 !important; right: 0 !important; bottom: 0 !important; z-index: 9990 !important;
	padding: 12px max(16px, env(safe-area-inset-right, 0px)) calc(12px + env(safe-area-inset-bottom, 0px)) max(16px, env(safe-area-inset-left, 0px)) !important;
	background: var(--idc-bg) !important; box-shadow: 0 -6px 24px rgba(0,0,0,.08) !important;
}
.idc-ui .idc-bar-btn {
	display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px !important; width: 100% !important; height: 52px !important; padding: 0 22px !important;
	border: 0 !important; border-radius: var(--idc-r-btn) !important; background: var(--idc-primary) !important; color: var(--idc-on-primary) !important; cursor: pointer !important; text-decoration: none !important;
	font-size: 14.5px !important; font-weight: 700 !important; letter-spacing: var(--idc-btn-track) !important; text-transform: var(--idc-btn-case) !important; line-height: 1 !important;
}
.idc-ui .idc-bar-total { letter-spacing: 0 !important; text-transform: none !important; font-size: 16px !important; }
@media (min-width: 900px) { .idc-ui .idc-bar { display: none !important; } }/* Hueco para el botón fijo solo mientras se ve (antes quedaba siempre un espacio vacío abajo en móvil) */

@media (max-width: 899px) { body.idc-bar-on .idc-ui.idc-cart { padding-bottom: 88px !important; } }/* Woodmart deja 40 px arriba y abajo del contenido en el carrito: se reduce */


body.idc-cart-page .wd-content-layout { padding-top: 16px !important; padding-bottom: 16px !important; }
@media (min-width: 1025px) { body.idc-cart-page .wd-content-layout { padding-top: 24px !important; padding-bottom: 32px !important; } }

@media (prefers-reduced-motion: reduce) {
	.idc-ui * { transition: none !important; animation: none !important; }
}/* ---------- De dónde viene cada descuento (1.6.4) ---------- */


.idc-ui .idc-dtags { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 4px 6px !important; margin: 6px 0 0 !important; }
.idc-ui .idc-ci-dtags:empty, .idc-ui .idc-dtags:empty { display: none !important; }
.idc-ui .idc-dtag { display: inline-flex !important; align-items: center !important; gap: 4px !important; padding: 3px 8px !important; border-radius: 999px !important; font-size: 11.5px !important; font-weight: 600 !important; line-height: 1.25 !important; white-space: nowrap !important; }
.idc-ui .idc-dtag svg { flex: none !important; display: block !important; }
.idc-ui .idc-dtag--sale { background: color-mix(in srgb, var(--idc-danger) 9%, #fff) !important; color: var(--idc-danger) !important; }
.idc-ui .idc-dtag--coupon { background: #eef8f2 !important; color: #1d5e3c !important; }
.idc-ui .idc-dnote { display: block !important; flex-basis: 100% !important; font-size: 12px !important; line-height: 1.35 !important; color: var(--idc-muted) !important; }
.idc-ui .idc-applied-note { display: flex !important; align-items: flex-start !important; gap: 8px !important; margin: 0 !important; padding: 0 4px !important; border: 0 !important; background: transparent !important; font-size: 13px !important; line-height: 1.4 !important; color: var(--idc-muted) !important; }
.idc-ui .idc-applied-note svg { flex: none !important; margin-top: 2px !important; }
.idc-ui table.idc-totals .idc-savings-detail td { padding-top: 0 !important; border-top: 0 !important; font-size: 12px !important; font-weight: 400 !important; color: var(--idc-muted) !important; text-align: right !important; }
.idc-ui table.idc-totals .idc-savings-detail .amount { font-weight: 600 !important; }/* ---------- Avisos de WooCommerce en el carrito, con el estilo del checkout (1.6.7) ---------- */


body.idc-cart-page .woocommerce-notices-wrapper:empty { display: none !important; }
body.idc-cart-page :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) {
	list-style: none !important; margin: 0 0 12px !important; padding: 12px 16px !important; border-radius: var(--idc-r-box) !important; font-family: var(--idc-font) !important; font-size: 14px !important; font-weight: 400 !important; line-height: 1.45 !important; text-align: left !important;
	background: #fdf0ef !important; color: #8f2a20 !important; border: 1px solid #f3cdc8 !important; box-shadow: none !important; text-transform: none !important; letter-spacing: 0 !important;
}
body.idc-cart-page .woocommerce-error li { list-style: none !important; margin: 0 !important; padding: 0 !important; }
body.idc-cart-page .woocommerce-message { background: #edf7f1 !important; color: #1d5e3c !important; border-color: #c9e6d5 !important; }
body.idc-cart-page .woocommerce-info { background: var(--idc-side) !important; color: var(--idc-ink) !important; border-color: var(--idc-line) !important; }
body.idc-cart-page :is(.woocommerce-error, .woocommerce-message, .woocommerce-info)::before { display: none !important; content: none !important; }
body.idc-cart-page :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) a { color: inherit !important; text-decoration: underline !important; }/* ---------- Importes dentro de los avisos: mismo color que el texto, en negrita (1.6.15) ---------- */


body.idc-cart-page :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) :is(.amount, .woocommerce-Price-amount, bdi, .woocommerce-Price-currencySymbol, strong, b, span),
.idc-page-main :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) :is(.amount, .woocommerce-Price-amount, bdi, .woocommerce-Price-currencySymbol, strong, b, span),
.idc-ui :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) :is(.amount, .woocommerce-Price-amount, bdi, .woocommerce-Price-currencySymbol, strong, b, span) {
	color: inherit !important; background: transparent !important; font-size: inherit !important; text-shadow: none !important; opacity: 1 !important;
}
body.idc-cart-page :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) .amount,
.idc-page-main :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) .amount,
.idc-ui :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) .amount { font-weight: 700 !important; }
body.idc-cart-page .woocommerce-error, .idc-page-main .woocommerce-error, .idc-ui .woocommerce-error { color: #8f2a20 !important; }
body.idc-cart-page :is(.woocommerce-error, .woocommerce-message, .woocommerce-info, .woocommerce-NoticeGroup):focus, .idc-page-main :is(.woocommerce-error, .woocommerce-message, .woocommerce-info, .woocommerce-NoticeGroup):focus { outline: 0 !important; }/* ---------- Avisos del carrito: mismo ancho que el carrito (1.6.16) ---------- */


body.idc-cart-page .woocommerce-notices-wrapper:not(:empty) { box-sizing: border-box !important; width: 100% !important; max-width: 1120px !important; margin-left: auto !important; margin-right: auto !important; padding-left: 0 !important; padding-right: 0 !important; }
body.idc-cart-page :is(.woocommerce-error, .woocommerce-message, .woocommerce-info):not(.woocommerce-shipping-destination):not(.idc-ui *) { box-sizing: border-box !important; width: auto !important; max-width: 1120px !important; margin-left: auto !important; margin-right: auto !important; }/* ---------- Cupón que pinta otro plugin (clase "cp") en el resumen del carrito: fuera, ya está la caja verde (1.6.22) ---------- */


.idc-ui .cart_totals .cp, .idc-ui .idc-cart-totals .cp, .idc-ui .cart-collaterals .cp { display: none !important; }/* ---------- Sin el precio por unidad bajo el nombre: ya se ve a la derecha (1.6.26) ---------- */


.idc-ui .idc-cart-item .idc-ci-unit { display: none !important; }/* ---------- Mensaje de otro plugin (woopr-product-message1): oculto solo en el carrito (1.6.30) ---------- */


body.idc-cart-page .woopr-product-message1 { display: none !important; }/* ---------- Mensajes de confianza (hasta 3, con icono y fondo opcional) (1.6.32) ---------- */


.idc-ui ul.idc-trust { display: flex !important; flex-wrap: wrap !important; justify-content: center !important; align-items: center !important; gap: 6px 18px !important; margin: 14px 0 0 !important; padding: 0 !important; list-style: none !important; font-size: 12.5px !important; line-height: 1.35 !important; color: var(--idc-muted) !important; }
.idc-ui ul.idc-trust li { display: inline-flex !important; align-items: center !important; gap: 6px !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.idc-ui ul.idc-trust li svg { flex: none !important; display: block !important; color: var(--idc-ink) !important; opacity: .75 !important; }
.idc-ui ul.idc-trust.idc-trust--box { padding: 11px 14px !important; border-radius: var(--idc-r-box) !important; background: var(--idc-trust-bg, #eef5f6) !important; color: var(--idc-ink) !important; }/* ---------- Texto bajo el cupón aplicado: separado de la caja verde (1.6.35) ---------- */


.idc-ui .idc-applied .idc-applied-note, .idc-ui .idc-cart-applied .idc-applied-note { margin-top: 10px !important; }
.idc-ui .idc-cart-applied + .idc-coupon-msg, .idc-ui .idc-applied + .idc-coupon-msg { margin-top: 10px !important; }
.idc-ui .idc-wallet { font-weight: inherit !important; color: inherit !important; white-space: nowrap !important; margin-left: -2px !important; }/* ---------- Cupón que pinta otro plugin (clase "cp"): fuera en toda la página del carrito (1.6.37) ---------- */


body.idc-cart-page .cp { display: none !important; }
