
/* Carrito principal */
.mwcv-drawer {
	background: #fff;
	padding: 20px;
	border-radius: 6px;
	width: 800px;
	max-width: 100vw;
	margin: 0 auto;
	font-family: Arial, Helvetica, sans-serif;
}
.mwcv-title {
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 24px;
}
.mwcv-item {
	display: flex;
	gap: 20px;
	padding: 18px 0;
	border-bottom: 1px solid #eee;
	align-items: center;
}
.mwcv-thumb img {
	width: 72px;
	height: 72px;
	object-fit: cover;
	border-radius: 6px;
}
.mwcv-content { flex: 1; }
.mwcv-name { font-weight: 600; margin-bottom: 6px; }
.mwcv-attrs { color: #666; font-size: 13px; margin-bottom: 6px; }
.mwcv-row {
	display: flex;
	align-items: center;
	gap: 12px;
	border-top: 1.5px solid #e0e0e0;
	padding: 18px 0;
}
.mwcv-row:first-of-type { border-top: none; }
.mwcv-qty {
	display: flex;
	align-items: center;
	gap: 10px;
}
.mwcv-qty button {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: 1px solid #ddd;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	line-height: 1;
	padding: 0;
	box-sizing: border-box;
	cursor: pointer;
}
.mwcv-qty button:focus { outline: none; }
.mwcv-qty-input {
	min-width: 56px;
	height: 40px;
	text-align: center;
	border: 1px solid #eee;
	padding: 0 8px;
	border-radius: 8px;
	font-size: 16px;
	line-height: 1;
	box-sizing: border-box;
}
.mwcv-price { margin-left: auto; font-weight: 700; }
.mwcv-remove { background: transparent; border: 0; color: #999; cursor: pointer; }
.mwcv-divider { border-bottom: 1px solid #eee; margin: 18px 0; }
.mwcv-detail-title { font-size: 18px; font-weight: 500; }
.mwcv-detail-price { font-size: 18px; font-weight: 600; }
.mwcv-summary { padding-top: 24px; }
.mwcv-close { background: transparent; border: 0; font-size: 22px; position: absolute; right: 18px; top: 12px; }
.mwcv-empty { padding: 20px; color: #666; }
.mwcv-notice { padding: 12px; background: #fff4f0; border: 1px solid #ffd4c4; }

/* Alertas */
.mwcv-alert {
	padding: 18px 20px;
	background: #ff5252;
	color: #fff;
	border-radius: 4px;
	font-size: 18px;
	margin-bottom: 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.mwcv-alert .mwcv-alert-close {
	background: transparent;
	border: none;
	font-size: 24px;
	color: #fff;
	cursor: pointer;
}

/* Desplegables */
.mwcv-dropdown {
	background: #fff;
	border-radius: 0;
	padding: 0;
	margin-bottom: 0;
	border: none;
	box-shadow: none;
}
.mwcv-dropdown-toggle {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between;
	cursor: pointer;
	font-size: 18px;
	font-weight: 500;
	color: #111 !important;
	padding: 18px 0 18px 0 !important;
	background: #fff;
	border: none;
	border-bottom: 1.5px solid #e0e0e0;
	width: 100%;
	margin-bottom: 0;
	transition: background 0.2s, border 0.2s;
	outline: none;
}
.mwcv-dropdown-toggle:focus,
.mwcv-dropdown-toggle:hover {
	color: #111;
	background: white !important;
}
.mwcv-dropdown-toggle .mwcv-dropdown-arrow {
	display: flex;
	align-items: center;
	margin-left: 12px;
}
.mwcv-dropdown-arrow svg {
	width: 22px;
	height: 22px;
	display: block;
	fill: none;
	stroke: #222;
	stroke-width: 2.2;
	transition: transform 0.2s;
}
.mwcv-dropdown-content {
	padding: 0 0 18px 0;
	margin-top: 10px;
}

/* Inputs y botones */
.mwcv-input {
	border: 1.5px solid #222;
	border-radius: 6px;
	padding: 12px 14px;
	font-size: 16px;
	width: 100%;
	margin-bottom: 10px;
	box-sizing: border-box;
	background: #fff;
	color: #222;
}


/* Info box */
.mwcv-info {
	background: #f3e5f5;
	border: 1.5px solid #b39ddb;
	border-radius: 8px;
	padding: 14px 16px;
	color: #222;
	font-size: 16px;
	margin-bottom: 12px;
	display: flex;
	align-items: flex-start;
	gap: 8px;
}
.mwcv-info i {
	color: #7c4dff;
	font-size: 20px;
	margin-right: 8px;
}

/* Botón checkout y seguir comprando */
.mwcv-checkout {
	display: block;
	width: 100%;
	background-color: var(--e-global-color-primary);
	padding: 12px 0;
	color: #fff !important;
	text-align: center !important;
	text-decoration: none !important;
	border-style: none;
	margin-bottom: 1rem;
}
.mwcv-checkout:hover { opacity: 0.9; }
.mwcv-link {
	display: block;
	text-align: center;
	margin-top: 10px;
	color: #111 !important;
	font-size: 14px !important;
	font-weight: 400;
	text-decoration: none !important;
}

/* Responsive ajustes extra */
@media (max-width: 1024px) {
	.mwcv-drawer {
		max-width: 90vw;
		width: 90%;
	}
}
@media (max-width: 600px) {
	.mwcv-drawer {
		max-width: 100vw;
		width: 100%;
		border-radius: 0;
		padding: 10px;
	}
	.mwcv-title { font-size: 22px; }
	.mwcv-detail-title, .mwcv-detail-price { font-size: 16px; }
	.mwcv-alert { font-size: 15px; padding: 12px 8px; }
	.mwcv-thumb img { width: 48px; height: 48px; }
}

/* Modal flotante al agregar al carrito */
.mwcv-add-modal {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	display: none;
	align-items: flex-end;
	justify-content: flex-start; /* bottom-left on desktop */
	padding: 0 24px 24px 24px;
	background: transparent; /* no overlay, just a toast */
	z-index: 99999;
	pointer-events: none;
}
.mwcv-add-modal-box {
	background: #fff;
	border-radius: 10px;
	max-width: 420px;
	width: 360px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.12);
	padding: 12px;
	position: relative;
	pointer-events: auto;
}
.mwcv-add-modal-close {
	position: absolute;
	right: 8px;
	top: 6px;
	border: 0;
	background: transparent;
	font-size: 20px;
	cursor: pointer;
}
.mwcv-add-modal-body { max-height: 60vh; overflow:auto; }
.mwcv-add-modal-compact .mwcv-drawer { box-shadow: none; border-radius: 6px; }
.mwcv-add-modal-compact .mwcv-checkout { display:block; }

/* Toast visibility animation */
.mwcv-add-modal.show { display:flex; }
.mwcv-add-modal-box { transform: translateY(12px); transition: transform .22s ease, opacity .22s ease; opacity:0; }
.mwcv-add-modal.show .mwcv-add-modal-box { transform: translateY(0); opacity:1; }

/* Compact alert styles */
.mwcv-compact-alert { padding: 10px 6px; max-width:440px; }
.mwcv-compact-thumb img { width:48px;height:48px;object-fit:cover;border-radius:6px; }
.mwcv-compact-title { font-weight:700; font-size:14px; margin-bottom:4px; }
.mwcv-compact-price { color:#333; font-size:13px; margin-bottom:6px; }
.mwcv-compact-added { font-size:13px; color:#2e7d32; font-weight:600; }
.mwcv-compact-total { border-top:1px solid #eee; padding-top:8px; margin-top:8px; font-size:14px; }
.mwcv-compact-total-price { font-weight:700; }

/* --- NUEVOS ESTILOS PARA CARRITO SIMILAR A LA CAPTURA --- */
.mwcv-alert {
	padding: 18px 20px;
	background: #ff5252;
	color: #fff;
	border-radius: 4px;
	font-size: 18px;
	margin-bottom: 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.mwcv-alert .mwcv-alert-close {
	background: transparent;
	border: none;
	font-size: 24px;
	color: #fff;
	cursor: pointer;
}

.mwcv-title {
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 24px;
}

.mwcv-divider {
	border-bottom: 1px solid #eee;
	margin: 18px 0;
}

.mwcv-detail-title {
	font-size: 18px;
	font-weight: 500;
}
.mwcv-detail-price {
	font-size: 18px;
	font-weight: 600;
}

/* Sección desplegable de envío y cupón */
.mwcv-dropdown {
	background: #fff;
	border-radius: 0;
	padding: 0;
	margin-bottom: 0;
	border: none;
	box-shadow: none;
}
.mwcv-dropdown-toggle {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between;
	cursor: pointer;
	font-size: 18px;
	font-weight: 500;
	color: #111 !important;
	padding: 18px 0 18px 0 !important;
	background: #fff;
	border: none;
	border-bottom: 1.5px solid #e0e0e0;
	width: 100%;
	margin-bottom: 0;
	transition: background 0.2s, border 0.2s;
	outline: none;
	border:0 !important;
}
.mwcv-dropdown:first-of-type .mwcv-dropdown-toggle {
	border-top: none;
}
.mwcv-dropdown-toggle:focus,
.mwcv-dropdown-toggle:hover {
	color: #111;
	background: white !important;
}
.mwcv-dropdown-toggle .mwcv-dropdown-arrow {
	display: flex;
	align-items: center;
	margin-left: 12px;
}
.mwcv-dropdown-content {
	padding: 0 0 18px 0;
}
/* Chevron SVG estilo Material */
.mwcv-dropdown-arrow svg {
	width: 22px;
	height: 22px;
	display: block;
	fill: none;
	stroke: #222;
	stroke-width: 2.2;
}
.mwcv-dropdown-content {
	margin-top: 10px;
}

/* Input y botón de código postal y cupón */
.mwcv-input {
	border: 1.5px solid #222;
	border-radius: 6px;
	padding: 12px 14px;
	font-size: 16px;
	width: 100%;
	margin-bottom: 10px;
	box-sizing: border-box;
	background: #fff;
	color: #222;
}
.mwcv-btn {
	background-color: var(--e-global-color-primary) !important;
	color: white !important;
	border: 2px solid var(--e-global-color-primary);
	border-radius: 8px;
	padding: 12px 0;
	font-size: 17px;
	font-weight: 600;
	cursor: pointer;
	width: 100%;
	margin-bottom: 10px;
	transition: background 0.2s, border 0.2s;
}
.mwcv-btn:hover {
	opacity: 0.9;
}

/* Info box */
.mwcv-info {
	background: #f3e5f5;
	border: 1.5px solid #b39ddb;
	border-radius: 8px;
	padding: 14px 16px;
	color: #222;
	font-size: 16px;
	margin-bottom: 12px;
	display: flex;
	align-items: flex-start;
	gap: 8px;
}
.mwcv-info i {
	color: #7c4dff;
	font-size: 20px;
	margin-right: 8px;
}

/* Botón checkout y seguir comprando */
.mwcv-checkout {
	display: block;
	width: 100%;
	background-color: var(--e-global-color-primary);
    display: inline-block;
    padding: 12px 0;
    color: #FFFFFF !important;
	text-align: center !important;
    text-decoration: none !important;
    border-style: none;
	margin-bottom:1rem;

}
.mwcv-checkout:hover {
	opacity: 0.9;
}
.mwcv-link {
	display: block;
	text-align: center;
	margin-top: 10px;
	color: #111 !important;
	font-size: 14px !important;
	font-weight: 400;
	text-decoration: none !important;
}

/* Responsive ajustes extra */
@media (max-width: 600px) {
	.mwcv-title {
		font-size: 22px;
	}
	.mwcv-detail-title, .mwcv-detail-price {
		font-size: 16px;
	}
	.mwcv-alert {
		font-size: 15px;
		padding: 12px 8px;
	}
}

/* Responsive adjustments */
@media (max-width: 600px) {
	.mwcv-drawer {
		max-width: 100vw;
		padding: 10px;
		border-radius: 0;
	}
	.mwcv-thumb img {
		width: 48px;
		height: 48px;
	}
	.mwcv-title {
		font-size: 18px;
	}
}

@media (min-width: 992px) {
	.mwcv-drawer {
		max-width: 800px;
		margin: 40px auto;
		box-shadow: 0 4px 24px rgba(0,0,0,0.10);
		position: relative;
	}
	.mwcv-title {
		font-size: 24px;
	}
	.mwcv-thumb img {
		width: 72px;
		height: 72px;
	}
	.mwcv-item {
		gap: 20px;
		padding: 18px 0;
	}
	.mwcv-summary {
		padding-top: 24px;
	}
}

.mwcv-content .mwcv-row{
	border-top: 0;
}

.border-top-none {
	border-top: 0 !important;
}

/* Mobile: center bottom */
@media (max-width: 600px) {
	.mwcv-add-modal { justify-content: center; padding-left: 12px; padding-right: 12px; }
	.mwcv-add-modal-box { width: calc(100% - 36px); max-width: 420px; }
}

/* Hide default WooCommerce ajax notice that appears on add-to-cart */
.woocommerce-message, .woocommerce-info { display: none !important; }