/* ==========================================================================
   PRIDO · Comparador v2 — capa de TODO el sitio (reemplaza la parte global de prido-compare.r17.css)
   Píldora flotante «Ver comparador», aviso de límite / quitar / error (#prido-compare-toast) y los botones
   históricos .prido-compare-card-btn / .prido-compare-single-btn. La página del comparador carga además
   prido-compare.r18.css. Sin Manrope/Cormorant/JetBrains: tipografías del sitio (Outfit + Noto Sans).
   ========================================================================== */

.prido-hs-tools__compare { display: inline-flex !important; }
.prido-hs-offcanvas__secondary a[href*="comparar"] { display: inline-flex !important; }

.prido-compare-shop-link,
.prido-compare-single-btn,
.prido-compare-card-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 16px;
	border: 1px solid rgba(45, 198, 193, .55); border-radius: 12px; background: rgba(45, 198, 193, .12); color: #0b6b68 !important;
	font-family: var(--prido-font-body, 'Noto Sans', Arial, sans-serif); font-size: 13.5px; font-weight: 700; text-decoration: none !important; cursor: pointer;
	transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.prido-compare-shop-link:hover,
.prido-compare-single-btn:hover,
.prido-compare-card-btn:hover { background: #2dc6c1; border-color: #2dc6c1; color: #0a131b !important; }
.prido-compare-card-btn { width: 100%; margin-top: 8px; }
.prido-compare-single-btn { margin-top: 10px; }
.prido-compare-card-btn.is-added,
.prido-compare-single-btn.is-added { background: transparent; border-color: rgba(188, 201, 212, .9); color: var(--prido-theme-ink, #1a2a3a) !important; }
.prido-compare-card-btn.is-loading,
.prido-compare-single-btn.is-loading { opacity: .7; cursor: progress; }
:root[data-theme="dark"] .prido-compare-shop-link,
:root[data-theme="dark"] .prido-compare-single-btn,
:root[data-theme="dark"] .prido-compare-card-btn { background: rgba(45, 198, 193, .16); color: #2dc6c1 !important; }

/* Botón «Comparar» que se tocó con el comparador lleno (lo marca prido-compare.js unos segundos). */
.is-compare-limit { animation: prido-cmp-nudge .36s ease 1; }
@keyframes prido-cmp-nudge { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-3px); } 75% { transform: translateX(3px); } }

/* Píldora flotante tras agregar (fuera del comparador) */
.prido-compare-floating {
	position: fixed; left: 50%; bottom: calc(22px + env(safe-area-inset-bottom, 0px)); z-index: 99990;
	display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 6px 6px 6px 16px;
	border: 1px solid var(--prido-theme-border, rgba(201, 212, 221, .74)); border-radius: 999px;
	background: var(--prido-theme-canvas, #f8fafc); box-shadow: 0 16px 38px rgba(18, 29, 42, .16);
	color: var(--prido-theme-ink, #1a2a3a) !important; font-family: var(--prido-font-body, 'Noto Sans', Arial, sans-serif); font-size: 13.5px; font-weight: 700;
	text-decoration: none !important; opacity: 0; visibility: hidden; transform: translate(-50%, 12px); pointer-events: none;
	transition: opacity .24s ease, transform .24s ease, visibility .24s ease, border-color .2s ease;
}
.prido-compare-floating.is-visible { opacity: 1; visibility: visible; transform: translate(-50%, 0); pointer-events: auto; }
.prido-compare-floating:hover { border-color: #2dc6c1; }
.prido-compare-floating:focus-visible { outline: 2px solid #0e7e7a; outline-offset: 2px; }
.prido-compare-floating__icon { font-size: 0; }
.prido-compare-floating__icon::before {
	content: ""; display: block; width: 18px; height: 18px; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='16' rx='2.5'/%3E%3Cpath d='M9 4v16M15 4v16'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='16' rx='2.5'/%3E%3Cpath d='M9 4v16M15 4v16'/%3E%3C/svg%3E") center / contain no-repeat;
}
.prido-compare-floating__count {
	display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 36px; padding: 0 12px; border-radius: 999px;
	background: #2dc6c1; color: #0a131b; font-size: 13px; font-weight: 800; font-variant-numeric: tabular-nums;
}
:root[data-theme="dark"] .prido-compare-floating { box-shadow: 0 16px 38px rgba(0, 0, 0, .5); }

/* Aviso (agregar con el comparador lleno, quitar con «Deshacer», error de red) */
.prido-cmp-toast {
	position: fixed; left: 50%; bottom: calc(24px + env(safe-area-inset-bottom, 0px)); z-index: 99995;
	display: flex; align-items: center; gap: 12px; width: max-content; max-width: min(620px, calc(100vw - 32px)); min-height: 52px; padding: 8px 8px 8px 16px;
	border-radius: 14px; background: #1a2a3a; color: #fff; box-shadow: 0 20px 44px rgba(18, 29, 42, .24);
	font-family: var(--prido-font-body, 'Noto Sans', Arial, sans-serif); font-size: 14px; line-height: 1.4;
	opacity: 0; transform: translate(-50%, 12px); transition: opacity .22s ease, transform .22s ease; pointer-events: none;
}
.prido-cmp-toast.is-in { opacity: 1; transform: translate(-50%, 0); pointer-events: auto; }
.prido-cmp-toast__ic { flex: none; width: 18px; height: 18px; color: #7fe0dc; }
.prido-cmp-toast.is-warn .prido-cmp-toast__ic { color: #f5b58f; }
.prido-cmp-toast__m { flex: 1; min-width: 0; }
.prido-cmp-toast__m b { font-weight: 700; }
.prido-cmp-toast__a {
	flex: none; display: inline-flex; align-items: center; gap: 6px; min-height: 40px; margin: 0; padding: 0 14px; border: 0; border-radius: 10px;
	background: rgba(127, 224, 220, .16); color: #7fe0dc !important; font: 700 13.5px/1 var(--prido-font-body, 'Noto Sans', Arial, sans-serif); text-decoration: none !important; cursor: pointer; white-space: nowrap;
}
.prido-cmp-toast__a:hover { background: rgba(127, 224, 220, .28); }
.prido-cmp-toast__a:focus-visible { outline: 2px solid #7fe0dc; outline-offset: 2px; }
:root[data-theme="dark"] .prido-cmp-toast { background: #edf4f8; color: #0a131b; box-shadow: 0 20px 44px rgba(0, 0, 0, .5); }
:root[data-theme="dark"] .prido-cmp-toast__ic { color: #0e7e7a; }
:root[data-theme="dark"] .prido-cmp-toast.is-warn .prido-cmp-toast__ic { color: #b4441c; }
:root[data-theme="dark"] .prido-cmp-toast__a { background: rgba(14, 126, 122, .12); color: #0b6b68 !important; }
@media (max-width: 767px) {
	.prido-cmp-toast { bottom: calc(84px + env(safe-area-inset-bottom, 0px)); font-size: 13px; }
	body.prido-compare-floating-visible .prido-cmp-toast { bottom: calc(140px + env(safe-area-inset-bottom, 0px)); }
}
@media (prefers-reduced-motion: reduce) {
	.prido-cmp-toast, .prido-compare-floating { transition: none; }
	.is-compare-limit { animation: none; }
}
