/*
 * Botones del sistema.
 *
 * Reemplaza a SexyButtons 1.2, que traía el aspecto de 2009: degradado en un
 * sprite, sombra abajo del texto y abajo del botón, y un PNG de 20 px por ícono.
 *
 * Va como hoja aparte y no como CssResource por el mismo motivo que ops26.css:
 * usa flex y máscaras, que el parser de CssResource de GWT no entiende, y así se
 * ajusta el diseño sin recompilar el módulo.
 *
 * Criterio: lleno sólo lo que confirma o cierra (dsr-btn--ok, dsr-btn--acento);
 * lo demás lleva un tinte del propio color. Así cada pantalla tiene una acción
 * evidente sin que Cancelar deje de leerse rojo.
 *
 * El ícono no se nombra en el Java: lo elige este archivo a partir de la clase
 * donasur-*Button que agrega cada subclase, y se pinta con el color del texto.
 */

.dsr-btn {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
	font-size: 12px;
	font-weight: 600;
	font-style: normal;
	line-height: 1;
	letter-spacing: .01em;
	padding: 7px 14px;
	border: 1px solid transparent;
	border-radius: 4px;
	white-space: nowrap;
	cursor: pointer;
	vertical-align: middle;
	text-decoration: none;
	transition: background-color .12s ease, color .12s ease;
	-webkit-user-select: none;
	user-select: none;
}

.dsr-btn:focus-visible {
	outline: 2px solid #1a4f9c;
	outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
	.dsr-btn {
		transition: none;
	}
}

/* ------------------------------------------------------------------ variantes */

/*
 * Cada variante repite su color de texto en :hover. Es a propósito: el tema
 * estándar de GWT, que el módulo inyecta después de estas hojas, trae
 * `a, a:visited, a:hover { color: #0000AA }`, y al pasar el mouse esa regla le
 * gana a la clase de la variante —una pseudo-clase pesa como una clase—. Sin
 * esto, el texto de un botón-ancla se pone azul oscuro sobre el relleno.
 */

/* Confirma, guarda, envía. Es la única acción llena de una pantalla. */
.dsr-btn--ok {
	background: #1c7a44;
	color: #fff;
}

.dsr-btn--ok:hover {
	background: #176438;
	color: #fff;
}

/* Consolida o cierra un período: también es acción principal, pero pesa distinto
   porque no se puede deshacer sin pasar por reabrir. */
.dsr-btn--acento {
	background: #b45309;
	color: #fff;
}

.dsr-btn--acento:hover {
	background: #92400e;
	color: #fff;
}

/* Resuelve la pantalla donde está pero no graba nada: iniciar sesión, buscar.
   Va lleno porque es lo único que se espera que toquen ahí, y en azul porque el
   verde queda para lo que compromete el dato. */
.dsr-btn--principal {
	background: #1a4f9c;
	color: #fff;
}

.dsr-btn--principal:hover {
	background: #143f80;
	color: #fff;
}

.dsr-btn--neutro {
	background: #c7d9f6;
	color: #14417f;
}

.dsr-btn--neutro:hover {
	background: #b3caf1;
	color: #14417f;
}

/* El tinte acompaña al del neutro: si uno de los dos queda más lavado, el otro
   pasa a leerse como el importante por contraste y no por lo que hace. */
.dsr-btn--peligro {
	background: #f8d3cf;
	color: #a81f14;
}

.dsr-btn--peligro:hover {
	background: #f3bdb7;
	color: #a81f14;
}

.dsr-btn[disabled], .dsr-btn[disabled]:hover {
	background: #f1f3f8;
	color: #b3bac6;
	border-color: transparent;
	cursor: default;
}

/* --------------------------------------------------------------------- íconos */

/*
 * El dibujo entra como máscara y el color lo pone background-color, así que el
 * ícono siempre sale del color del texto: blanco en los llenos, azul en el
 * neutro, rojo en el de peligro. Con background-image harían falta tres copias
 * de cada dibujo.
 */
.dsr-btn-ico {
	display: none;
	width: 14px;
	height: 14px;
	flex: none;
	background-color: currentColor;
	-webkit-mask-image: var(--dsr-ico);
	mask-image: var(--dsr-ico);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: 14px 14px;
	mask-size: 14px 14px;
}

/*
 * El mapa de íconos. Cada regla es un dibujo y lista las clases que lo usan;
 * son las mismas clases donasur-*Button de siempre, sólo cambia a qué apuntan.
 */

/* enviar, ingresar, seguir */
.donasur-LoginButton .dsr-btn-ico, .donasur-SendDataButton .dsr-btn-ico,
	.donasur-NeutralButton .dsr-btn-ico, .donasur-PositiveButton .dsr-btn-ico
	{
	display: block;
	--dsr-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8h10M9 4.5L12.5 8 9 11.5'/%3E%3C/svg%3E");
}

/*
 * Consolidar y cerrar año llevan tilde y no la flecha que tenían: son lo único
 * del sistema que da por cerrado un período, y con la flecha se confundían con
 * cualquier "siguiente".
 */
.donasur-ConsolidarButton .dsr-btn-ico {
	display: block;
	--dsr-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.4 8.3l3.1 3.2L12.6 4.6'/%3E%3C/svg%3E");
}

/* buscar y consultar */
.donasur-SearchButton .dsr-btn-ico, .donasur-ViewAuditButton .dsr-btn-ico
	{
	display: block;
	--dsr-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7.2 12.4a5.2 5.2 0 100-10.4 5.2 5.2 0 000 10.4zM10.9 10.9L14 14'/%3E%3C/svg%3E");
}

/* agregar */
.donasur-AddButton .dsr-btn-ico {
	display: block;
	--dsr-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3.2v9.6M3.2 8h9.6'/%3E%3C/svg%3E");
}

/* cerrar y cancelar */
.donasur-CloseButton .dsr-btn-ico, .donasur-CancelButton .dsr-btn-ico {
	display: block;
	--dsr-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.2 4.2l7.6 7.6M11.8 4.2l-7.6 7.6'/%3E%3C/svg%3E");
}

/*
 * Eliminar deja la cruz y pasa a tacho. Cancelar y Eliminar compartían dibujo, y
 * son las dos cosas más distintas que puede hacer alguien parado en un registro.
 */
.donasur-DeleteButton .dsr-btn-ico {
	display: block;
	--dsr-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.8 4.3h10.4M6.3 4.3V2.8h3.4v1.5M4.4 4.3l.6 9h6l.6-9'/%3E%3C/svg%3E");
}

/* descargar y exportar */
.donasur-DownButton .dsr-btn-ico {
	display: block;
	--dsr-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 2.4v7.8M4.8 7.2L8 10.4l3.2-3.2M3 13.4h10'/%3E%3C/svg%3E");
}

/* modificar */
.donasur-AnteriorButton .dsr-btn-ico {
	display: block;
	--dsr-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11.4 2.4l2.2 2.2-8.1 8.1-2.9.7.7-2.9z'/%3E%3C/svg%3E");
}

/* mover a la derecha */
.donasur-RightButton .dsr-btn-ico {
	display: block;
	--dsr-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3.5L10.5 8 6 12.5'/%3E%3C/svg%3E");
}

/* mover a la izquierda */
.donasur-LeftButton .dsr-btn-ico {
	display: block;
	--dsr-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 3.5L5.5 8 10 12.5'/%3E%3C/svg%3E");
}

/* ------------------------------------------------------- botones de sólo ícono */

/*
 * Los dos de la lista doble no tienen texto. El span vacío se saca de la caja
 * para que el gap no le sume 7 px al costado.
 */
.donasur-LeftButton, .donasur-RightButton {
	padding: 7px 8px;
}

.donasur-LeftButton .dsr-btn-txt, .donasur-RightButton .dsr-btn-txt {
	display: none;
}
