/* ==========================================================================
   STM PRO — hoja de estilos del portal
   Sistema visual negro / rojo / blanco.

   Índice
     1. Variables de diseño
     2. Base
     3. Maquetación (bandas y bloques de las plantillas propias)
     4. Página de acceso (plantilla canvas)
     5. Campos de formulario
     6. Botones genéricos
     7. Títulos de página
     8. Download Manager (fichas de descarga)
     9. Download Manager: tipografía (Amiko)
   ========================================================================== */


/* 1. Variables de diseño
   Se definen una sola vez, en el plugin STM PRO Core (assets/css/style.css,
   :root): --stm-ink, --stm-paper, --stm-white, --stm-signal, --stm-signal-dark,
   --stm-steel y --stm-radius. Este tema las usa; el plugin se carga en todo
   el front-end, incluida la página de acceso.
   -------------------------------------------------------------------------- */


/* 2. Base
   `.stm-portal` la añade el tema al <body> (inc/setup.php). Blocksy fija el
   fondo con `body` y `[data-prefix]`; la clase gana a ambos sin !important.
   -------------------------------------------------------------------------- */
body.stm-portal {
	background-color: var(--stm-paper);
}


/* 3. Maquetación
   Sustituye a los contenedores de Elementor en las plantillas
   stm-fullwidth.php, stm-canvas.php y single-maquinas.php.
   -------------------------------------------------------------------------- */
.stm-band {
	display: flex;
	flex-direction: column;
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	padding: 10px;
}

.stm-band--boxed {
	padding-top: 0;
	padding-bottom: 0;
}

.stm-band__inner {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	gap: 20px;
	box-sizing: border-box;
	width: 100%;
	max-width: min(100%, 1140px);
	margin-left: auto;
	margin-right: auto;
	padding-top: 10px;
	padding-bottom: 10px;
}

.stm-title {
	margin: 0;
	padding: 0;
	line-height: 1;
	color: var(--stm-ink);
}

.stm-text,
.stm-shortcode,
.stm-image {
	position: relative;
	max-width: 100%;
}

/* El último párrafo de un bloque de texto no lleva margen inferior. */
.stm-text > :last-child,
.stm-text p:last-child {
	margin-bottom: 0;
}

.stm-image {
	text-align: center;
}

.stm-image img {
	display: inline-block;
	vertical-align: middle;
	max-width: 100%;
	height: auto;
}


/* 4. Página de acceso (plantilla stm-canvas.php)
   -------------------------------------------------------------------------- */
body.stm-canvas.page-id-17 {
	background-image: url("https://sat.stmpro.es/wp-content/uploads/2026/07/Fondo_pro.png");
}


/* 5. Campos de formulario
   Buscadores (Descargas, Averías, Repuestos), Fluent Forms y formularios
   de WP User Manager. Se excluye la barra de administración.
   -------------------------------------------------------------------------- */
body :is(
	input[type="text"],
	input[type="search"],
	input[type="email"],
	input[type="tel"],
	input[type="number"],
	input[type="password"],
	textarea,
	select
):not(#wpadminbar *) {
	background: var(--stm-white);
	border: 1.5px solid var(--stm-ink) !important;
	border-radius: var(--stm-radius) !important;
	color: var(--stm-ink);
	padding: 11px 18px !important;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

body :is(
	input[type="text"],
	input[type="search"],
	input[type="email"],
	input[type="tel"],
	input[type="number"],
	input[type="password"],
	textarea,
	select
):not(#wpadminbar *):focus {
	outline: none;
	border-color: var(--stm-signal) !important;
	box-shadow: 0 0 0 3px rgba(200, 16, 46, 0.15);
}

body :is(input, textarea)::placeholder {
	color: var(--stm-steel);
	opacity: 0.85;
}


/* 6. Botones genéricos
   Esquinas a corte vivo y desplazamiento con sombra sólida al pasar el ratón.
   No afecta a .stm-btn / .stm-boton, que se definen en el plugin STM PRO Core.
   -------------------------------------------------------------------------- */
body :is(
	button[type="submit"]:not(.ct-toggle-close, .stm-btn-reset),
	input[type="submit"]
):not(#wpadminbar *) {
	border-radius: var(--stm-radius) !important;
	transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

body :is(
	button[type="submit"]:not(.ct-toggle-close, .stm-btn-reset),
	input[type="submit"]
):not(#wpadminbar *):hover {
	transform: translate(-2px, -2px);
	box-shadow: 4px 4px 0 var(--stm-ink);
}

@media (prefers-reduced-motion: reduce) {
	body :is(button[type="submit"], input[type="submit"]) {
		transition: none !important;
	}
}


/* 7. Títulos de página
   Fichas de Download Manager y páginas por defecto de Blocksy.
   -------------------------------------------------------------------------- */
body .page-title {
	color: var(--stm-ink) !important;
}


/* 8. Download Manager
   La ficha usa su propio contenedor Bootstrap (.w3eden); se lleva al mismo
   sistema visual. Las reglas con !important sobrescriben a Bootstrap.
   -------------------------------------------------------------------------- */
body .w3eden :is(h1, h2, h3) {
	color: var(--stm-ink) !important;
}

body .w3eden :is(.btn.btn-secondary, .wpdm-download-link) {
	background: var(--stm-ink) !important;
	border: 1.5px solid var(--stm-ink) !important;
	border-radius: var(--stm-radius) !important;
	color: var(--stm-white) !important;
	font-weight: 700;
	padding: 12px 26px !important;
	transition: background 0.15s ease, color 0.15s ease !important;
	box-shadow: none !important;
}

body .w3eden :is(.btn.btn-secondary, .wpdm-download-link):hover {
	background: var(--stm-white) !important;
	color: var(--stm-ink) !important;
}

body .w3eden .list-group {
	border-radius: 0;
}

body .w3eden .list-group-item {
	background: var(--stm-white) !important;
	border: 1px solid var(--stm-ink) !important;
	border-radius: 0 !important;
	color: var(--stm-ink);
	margin-bottom: -1px;
}

body .w3eden .list-group-item:first-child {
	border-top-left-radius: var(--stm-radius) !important;
	border-top-right-radius: var(--stm-radius) !important;
}

body .w3eden .list-group-item:last-child {
	border-bottom-left-radius: var(--stm-radius) !important;
	border-bottom-right-radius: var(--stm-radius) !important;
	margin-bottom: 0;
}

body .w3eden .badge {
	background: var(--stm-ink) !important;
	color: var(--stm-white) !important;
	border-radius: 2px !important;
	font-family: 'IBM Plex Mono', 'Courier New', monospace;
	font-weight: 600;
	padding: 5px 9px;
}


/* 9. Download Manager: tipografía
   Download Manager imprimía este bloque en el <head> y pedía Amiko a Google
   Fonts. Con "Enable Google Fonts" desactivado en su configuración, la
   tipografía (Amiko, en assets/css/fonts.css) y este bloque viven aquí.
   -------------------------------------------------------------------------- */
.w3eden .fetfont,
.w3eden .btn,
.w3eden .btn.wpdm-front h3.title,
.w3eden .wpdm-social-lock-box .IN-widget a span:last-child,
.w3eden #xfilelist .panel-heading,
.w3eden .wpdm-frontend-tabs a,
.w3eden .alert:before,
.w3eden .panel .panel-heading,
.w3eden .discount-msg,
.w3eden .panel.dashboard-panel h3,
.w3eden #wpdm-dashboard-sidebar .list-group-item,
.w3eden #package-description .wp-switch-editor,
.w3eden .w3eden.author-dashbboard .nav.nav-tabs li a,
.w3eden .wpdm_cart thead th,
.w3eden #csp .list-group-item,
.w3eden .modal-title {
	font-family: "Amiko", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	text-transform: uppercase;
	font-weight: 700;
}

.w3eden #csp .list-group-item {
	text-transform: unset;
}
