/**
 * SJT Divisas – Front-end styles
 * Matches the calculator visual design (dark/light blue palette).
 */

:root {
	--sjt-azul-oscuro: #1a467d;
	--sjt-azul-medio: #44b3e3;
	--sjt-azul-form: #5bb8e0;
	--sjt-blanco: #ffffff;
	--sjt-texto: #1a1a1a;
	--sjt-borde: #ffffff;
}

.sjt-divisas {
	box-sizing: border-box;
	max-width: 420px;
	width: 100%;
	margin: 0 auto;
	font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
	font-size: 15px;
	line-height: 1.4;
	color: var(--sjt-blanco);
}

.sjt-divisas *,
.sjt-divisas *::before,
.sjt-divisas *::after {
	box-sizing: border-box;
}

.sjt-divisas__header {
	margin: 0;
	padding: 0.75rem 1rem;
	background: var(--sjt-azul-oscuro);
	color: var(--sjt-blanco);
	font-size: 0.95rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-align: center;
	text-transform: uppercase;
}

/* —— Tabla de tipos de cambio —— */

.sjt-divisas__tabla-wrap {
	margin-bottom: 0;
	background: var(--sjt-azul-oscuro);
}

.sjt-divisas__tabla {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
	margin: 0;
}

.sjt-divisas__tabla thead th {
	padding: 0.55rem 0.75rem;
	background: var(--sjt-azul-medio);
	color: var(--sjt-blanco);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-align: center;
	text-transform: uppercase;
	border: none;
}

.sjt-divisas__tabla tbody td {
	padding: 0.65rem 0.75rem;
	background: var(--sjt-azul-oscuro);
	color: var(--sjt-blanco);
	text-align: center;
	border: none;
	border-bottom: 1px solid rgba(255, 255, 255, 0.35);
}

.sjt-divisas__tabla tbody tr:last-child td {
	border-bottom: none;
}

.sjt-divisas__actualizacion {
	margin: 0;
	padding: 0.4rem 0.75rem;
	background: var(--sjt-azul-oscuro);
	color: var(--sjt-blanco);
	font-size: 0.75rem;
	text-align: right;
}

/* —— Calculadora —— */

.sjt-divisas__calculadora {
	background: var(--sjt-azul-form);
}

.sjt-divisas__form {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	padding: 1rem 1.1rem 0.5rem;
	margin: 0;
}

.sjt-divisas__campo {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.sjt-divisas__campo label {
	color: var(--sjt-blanco);
	font-size: 0.95rem;
	font-weight: 600;
}

.sjt-divisas__campo select,
.sjt-divisas__campo input[type="number"] {
	width: 100%;
	padding: 0.45rem 0.5rem;
	border: 1px solid #ccc;
	border-radius: 0;
	background: var(--sjt-blanco);
	color: var(--sjt-texto);
	font-size: 0.95rem;
	font-family: inherit;
	appearance: auto;
}

.sjt-divisas__campo select:focus,
.sjt-divisas__campo input[type="number"]:focus {
	outline: 2px solid var(--sjt-azul-oscuro);
	outline-offset: 1px;
}

.sjt-divisas__acciones {
	display: flex;
	justify-content: center;
	padding: 0.5rem 0 0.75rem;
}

.sjt-divisas__btn {
	display: inline-block;
	min-width: 140px;
	padding: 0.55rem 1.5rem;
	border: none;
	border-radius: 0;
	background: var(--sjt-azul-oscuro);
	color: var(--sjt-blanco);
	font-size: 0.9rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background 0.2s ease, transform 0.15s ease;
}

.sjt-divisas__btn:hover {
	background: #14365f;
}

.sjt-divisas__btn:active {
	transform: scale(0.98);
}

.sjt-divisas__btn:focus-visible {
	outline: 2px solid var(--sjt-blanco);
	outline-offset: 2px;
}

.sjt-divisas__resultado {
	margin: 0 1.1rem 0.75rem;
	padding: 0.75rem;
	background: rgba(255, 255, 255, 0.2);
	color: var(--sjt-blanco);
	font-size: 1rem;
	font-weight: 600;
	text-align: center;
}

.sjt-divisas__resultado[hidden] {
	display: none;
}

.sjt-divisas__resultado.is-error {
	background: rgba(180, 40, 40, 0.35);
	font-weight: 500;
}

.sjt-divisas__fecha-footer {
	margin: 0;
	padding: 0.5rem 1.1rem 0.85rem;
	color: var(--sjt-blanco);
	font-size: 0.8rem;
	text-align: center;
}

@media (max-width: 480px) {
	.sjt-divisas {
		max-width: 100%;
	}
}
