/* ===== Variables globales del plugin ===== */
:root {
	--vr-primario: #2563eb;
	--vr-primario-hover: #1d4ed8;
	--vr-primario-texto: #ffffff;
	--vr-primario-alfa: rgba(37,99,235,.12);
	--vr-exito: #16a34a;
	--vr-error: #dc2626;
	--vr-fuente: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;

	/* Modo claro */
	--vr-fondo: #f8fafc;
	--vr-fondo-card: #ffffff;
	--vr-borde: #e2e8f0;
	--vr-texto: #0f172a;
	--vr-texto-suave: #64748b;
	--vr-texto-leve: #94a3b8;
	--vr-sombra: 0 2px 8px rgba(0,0,0,.08);
	--vr-sombra-md: 0 8px 24px rgba(0,0,0,.12);
	--vr-sombra-lg: 0 16px 40px rgba(0,0,0,.16);
}

/* Modo oscuro */
[data-vr-theme="dark"] {
	--vr-fondo: #0f172a;
	--vr-fondo-card: #1e293b;
	--vr-borde: #334155;
	--vr-texto: #f1f5f9;
	--vr-texto-suave: #94a3b8;
	--vr-texto-leve: #64748b;
	--vr-sombra: 0 2px 8px rgba(0,0,0,.3);
	--vr-sombra-md: 0 8px 24px rgba(0,0,0,.4);
	--vr-sombra-lg: 0 16px 40px rgba(0,0,0,.5);
}

/* ============================================================
   BOTONES — alta especificidad para sobrescribir Elementor
   Cubrimos todas las variantes de contenedor posibles
   ============================================================ */
body .vr-scope .vectiss-btn,
body .vr-destacados-wrap .vectiss-btn,
body .vr-sv-main .vectiss-btn,
body .vectiss-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 7px !important;
	padding: 11px 20px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	border-radius: 10px !important;
	border: none !important;
	cursor: pointer !important;
	text-decoration: none !important;
	transition: background .18s, transform .12s, box-shadow .18s, opacity .18s !important;
	font-family: var(--vr-fuente) !important;
	line-height: 1 !important;
	white-space: nowrap !important;
	box-sizing: border-box !important;
	letter-spacing: 0 !important;
}
body .vr-scope .vectiss-btn:active,
body .vr-destacados-wrap .vectiss-btn:active,
body .vr-sv-main .vectiss-btn:active,
body .vectiss-btn:active { transform: scale(.97) !important; }

/* Botón primario */
body .vr-scope .vectiss-btn-primario,
body .vr-destacados-wrap .vectiss-btn-primario,
body .vr-sv-main .vectiss-btn-primario,
body .vectiss-btn-primario {
	background: var(--vr-primario) !important;
	color: var(--vr-primario-texto) !important;
	box-shadow: 0 2px 8px var(--vr-primario-alfa) !important;
	border: none !important;
}
body .vr-scope .vectiss-btn-primario:hover,
body .vr-destacados-wrap .vectiss-btn-primario:hover,
body .vr-sv-main .vectiss-btn-primario:hover,
body .vectiss-btn-primario:hover {
	background: var(--vr-primario-hover) !important;
	color: var(--vr-primario-texto) !important;
	box-shadow: 0 4px 16px var(--vr-primario-alfa) !important;
	text-decoration: none !important;
}

/* Botón secundario */
body .vr-scope .vectiss-btn-secundario,
body .vr-destacados-wrap .vectiss-btn-secundario,
body .vr-sv-main .vectiss-btn-secundario,
body .vectiss-btn-secundario {
	background: transparent !important;
	color: var(--vr-primario) !important;
	border: 1.5px solid var(--vr-primario) !important;
	box-shadow: none !important;
}
body .vr-scope .vectiss-btn-secundario:hover,
body .vr-destacados-wrap .vectiss-btn-secundario:hover,
body .vr-sv-main .vectiss-btn-secundario:hover,
body .vectiss-btn-secundario:hover {
	background: var(--vr-primario-alfa) !important;
	color: var(--vr-primario) !important;
	text-decoration: none !important;
}

/* Tamaños */
body .vectiss-btn-grande { padding: 14px 28px !important; font-size: 15px !important; }
body .vectiss-btn-sm     { padding: 8px 14px !important;  font-size: 13px !important; }

/* ===== Grid de vehículos ===== */
body .vectiss-grid-vehiculos {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important;
	gap: 24px !important;
}

/* ===== Tarjeta estilo Airbnb ===== */
body .vectiss-tarjeta-vehiculo {
	background: var(--vr-fondo-card) !important;
	border-radius: 16px !important;
	overflow: hidden !important;
	display: flex !important;
	flex-direction: column !important;
	box-shadow: var(--vr-sombra) !important;
	transition: transform .22s cubic-bezier(.4,0,.2,1), box-shadow .22s !important;
	border: 1px solid var(--vr-borde) !important;
	font-family: var(--vr-fuente) !important;
	text-decoration: none !important;
}
body .vectiss-tarjeta-vehiculo:hover {
	transform: translateY(-4px) !important;
	box-shadow: var(--vr-sombra-md) !important;
}

/* Foto */
body .vectiss-tarjeta-foto {
	position: relative !important;
	height: 210px !important;
	overflow: hidden !important;
	background: var(--vr-fondo) !important;
	flex-shrink: 0 !important;
}
body .vectiss-tarjeta-foto img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	display: block !important;
	transition: transform .4s cubic-bezier(.4,0,.2,1) !important;
}
body .vectiss-tarjeta-vehiculo:hover .vectiss-tarjeta-foto img {
	transform: scale(1.06) !important;
}

body .vectiss-foto-placeholder {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 100% !important;
	color: var(--vr-texto-leve) !important;
}

body .vectiss-badge-categoria {
	position: absolute !important;
	top: 12px !important;
	left: 12px !important;
	background: rgba(15,23,42,.72) !important;
	color: #fff !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: .06em !important;
	text-transform: uppercase !important;
	padding: 4px 10px !important;
	border-radius: 20px !important;
	backdrop-filter: blur(6px) !important;
	-webkit-backdrop-filter: blur(6px) !important;
}

body .vectiss-precio-badge {
	position: absolute !important;
	bottom: 12px !important;
	right: 12px !important;
	background: rgba(15,23,42,.82) !important;
	color: #fff !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	padding: 6px 12px !important;
	border-radius: 20px !important;
	backdrop-filter: blur(6px) !important;
	-webkit-backdrop-filter: blur(6px) !important;
}
body .vectiss-precio-badge span {
	font-size: 11px !important;
	font-weight: 400 !important;
	opacity: .8 !important;
}

/* Cuerpo */
body .vectiss-tarjeta-cuerpo {
	padding: 18px 18px 16px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	flex: 1 !important;
}

body .vectiss-tarjeta-nombre {
	font-size: 17px !important;
	font-weight: 700 !important;
	margin: 0 !important;
	color: var(--vr-texto) !important;
	line-height: 1.2 !important;
}

/* Specs chips */
body .vectiss-tarjeta-specs {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
}
body .vectiss-tarjeta-specs li {
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px !important;
	font-size: 12px !important;
	color: var(--vr-texto-suave) !important;
	background: var(--vr-fondo) !important;
	border: 1px solid var(--vr-borde) !important;
	padding: 4px 10px !important;
	border-radius: 20px !important;
	font-weight: 500 !important;
}

/* Acciones dos botones */
body .vectiss-tarjeta-acciones {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 8px !important;
	margin-top: auto !important;
}
body .vectiss-tarjeta-acciones .vectiss-btn {
	width: 100% !important;
	font-size: 13px !important;
	padding: 10px 8px !important;
}

/* Animación spinner */
@keyframes vr-girar { to { transform: rotate(360deg); } }
.vr-svg { vertical-align: middle; }
