/* Drawer de carrito — réplica del CartDrawer del prototipo. */

#tpr-drawer-scrim {
	position: fixed; inset: 0; z-index: 9990;
	background: rgba(0, 19, 46, .72);
	opacity: 0; transition: opacity .24s cubic-bezier(.2,.6,.2,1);
}
#tpr-drawer-scrim.open { opacity: 1; }

#tpr-drawer {
	position: fixed; top: 0; right: 0; bottom: 0; z-index: 9991;
	width: 448px; max-width: 94vw;
	background: #fff; display: flex; flex-direction: column;
	box-shadow: 0 12px 32px rgba(0, 19, 46, .12);
	transform: translateX(100%);
	transition: transform .24s cubic-bezier(.2,.6,.2,1);
	font-family: "Archivo", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
#tpr-drawer.open { transform: translateX(0); }

.tpr-drawer-head {
	display: flex; align-items: center; gap: 10px;
	padding: 18px 24px; border-bottom: 1px solid #E8EAEE;
}
.tpr-drawer-head h2 { margin: 0; font-size: 18px; font-weight: 700; color: #00132E; font-family: inherit; }
.tpr-drawer-count { font-size: 13px; color: #6B7280; }
#tpr-drawer-close {
	margin-left: auto; border: 0; background: transparent; cursor: pointer;
	color: #6B7280; display: inline-flex; padding: 4px;
}
#tpr-drawer-close:hover { color: #00132E; }

.tpr-drawer-body { flex: 1; overflow-y: auto; padding: 16px 24px; }
.tpr-drawer-body::-webkit-scrollbar { width: 10px; }
.tpr-drawer-body::-webkit-scrollbar-thumb { background: #D5D9E0; border-radius: 8px; }

.tpr-drawer-item {
	display: grid; grid-template-columns: 76px 1fr; gap: 14px;
	padding: 14px 0; border-bottom: 1px solid #F0F0F0;
}
.tpr-drawer-thumb {
	display: block; height: 76px; background: #F6F6F8;
	border-radius: 6px; overflow: hidden;
}
.tpr-drawer-thumb img { width: 100%; height: 100%; object-fit: contain; padding: 6px; box-sizing: border-box; }
.tpr-drawer-info { min-width: 0; }
.tpr-drawer-brand {
	font-size: 11px; font-weight: 700; letter-spacing: .06em;
	text-transform: uppercase; color: #9AA1AC;
}
.tpr-drawer-name {
	display: block; font-size: 13px; font-weight: 600; color: #00132E;
	text-decoration: none; line-height: 1.35; margin: 2px 0 8px;
}
.tpr-drawer-name:hover { color: #E01917; }
.tpr-drawer-row { display: flex; align-items: center; gap: 12px; }

.tpr-stepper {
	display: inline-flex; align-items: center; height: 34px;
	border: 1px solid #D5D9E0; border-radius: 999px; overflow: hidden;
}
.tpr-stepper button {
	width: 30px; height: 100%; border: 0; background: #fff; cursor: pointer;
	font-size: 15px; color: #00132E; line-height: 1;
}
.tpr-stepper button:hover { background: #F7F7F8; }
.tpr-qty { min-width: 26px; text-align: center; font-size: 13px; font-weight: 600; color: #00132E; }

.tpr-line-total { margin-left: auto; font-size: 15px; font-weight: 700; color: #00132E; }
.tpr-item-remove { border: 0; background: transparent; cursor: pointer; color: #9AA1AC; display: inline-flex; padding: 2px; }
.tpr-item-remove:hover { color: #E01917; }

.tpr-drawer-foot {
	border-top: 1px solid #E8EAEE; padding: 20px 24px; background: #F7F7F8;
}
.tpr-drawer-subtotal { display: flex; justify-content: space-between; font-size: 15px; margin-bottom: 6px; }
.tpr-drawer-subtotal span { color: #3F4653; }
.tpr-drawer-subtotal strong { color: #00132E; }
.tpr-drawer-note { font-size: 12px; color: #6B7280; margin-bottom: 14px; }

.tpr-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	height: 40px; padding: 0 20px; border-radius: 6px;
	font-family: inherit; font-size: 14px; font-weight: 600; letter-spacing: -.01em;
	text-decoration: none; cursor: pointer; box-sizing: border-box;
	transition: background-color .18s, color .18s, border-color .18s;
}
.tpr-btn-block { display: flex; width: 100%; margin-bottom: 8px; }
.tpr-btn-primary { background: #E01917; color: #fff !important; border: 1px solid transparent; }
.tpr-btn-primary:hover { background: #B01310; }
.tpr-btn-outline { background: #fff; color: #00132E !important; border: 1px solid #D5D9E0; }
.tpr-btn-outline:hover { border-color: #00132E; }

.tpr-drawer-quote {
	display: flex; align-items: center; justify-content: center; gap: 6px;
	margin-top: 6px; font-size: 13px; font-weight: 600; color: #E01917; text-decoration: none;
}
.tpr-drawer-quote:hover { color: #B01310; }

.tpr-drawer-empty { text-align: center; padding: 64px 24px; color: #6B7280; }
.tpr-drawer-empty h3 { margin: 14px 0 6px; font-size: 18px; font-weight: 700; color: #00132E; font-family: inherit; }
.tpr-drawer-empty p { margin: 0 auto 18px; font-size: 13px; max-width: 280px; }
.tpr-drawer-empty-actions { display: flex; gap: 8px; justify-content: center; }
.tpr-drawer-foot.is-empty { display: none; }

/* Ocultar el dropdown/side-cart del widget de Elementor: el toggle abre este drawer. */
.elementor-menu-cart__container { display: none !important; }
