/* Estilos basados en el diseño de la sede */
/* Paleta de colores del sitio:
   Azul 0: #2A98D3, Azul 1: #2274A2, Azul 2: #0169CB, Azul 3: #0A76C2
   Gris 0: #F0F2F2, Gris 1: #E8E8E8, Gris 2: #DCDCDC, Gris 3: #BCBFC1
   Gris 4: #B2B5B7, Gris 5: #6C7074, Texto: #606060
*/

.hash-file {
	list-style: none;
	padding: 0;
	margin: 2em 0;
	background: #ffffff;
	border: 1px solid #aaa;
	overflow: hidden;
}

.hash-file > li {
	padding: 0;
}

.hash-file > li > .hash-filename {
	display: block;
	font-weight: bold;
	font-size: 16px;
	line-height: 22px;
	color: #000;
	background-color: #eaeaea;
	border-bottom: 1px solid #aaa;
	padding: 1em;
	margin: 0;
	text-align: justify;
}

.hash-file > li > .hash-filename::before {
	content: "📄";
	margin-right: 8px;
	font-size: 18px;
	color: #606060;
}

.hash-file ul {
	list-style: none;
	margin: 0;
	padding: 0.5em 1em;
	color: #606060;
}

.hash-file > li > ul {
	background: #ffffff;
}

.hash-algo {
	display: block;
	font-weight: bold;
	color: #000;
	font-size: 14px;
	margin: 0.5em 0;
	padding: 0.5em 0;
	border-bottom: 1px solid #DCDCDC;
}

.hash-values {
	margin: 0;
	padding: 0;
	list-style: none;
}

.hash-values li {
	overflow: hidden;
	margin: 0.5em 0;
	padding: 0;
	background: #ffffff;
	border: none;
}

.hash-label {
	clear: both;
	float: left;
	font-weight: bold;
	color: #606060;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin: 0;
	padding: 0 0.3em 0 0;
	width: 80px;
}

code.hash-code {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, 'Roboto Mono', 'Courier New', monospace;
	background: #F0F2F2;
	border: 1px solid #DCDCDC;
	padding: 0.5em;
	border-radius: 3px;
	display: block;
	width: calc(100% - 90px);
	float: left;
	word-break: break-all;
	color: #606060;
	font-size: 12px;
	line-height: 1.4;
	cursor: pointer;
	margin: 0;
	transition: background-color 0.3s ease;
	position: relative; /* Necesario para que el ::after se posicione correctamente */
}

code.hash-code:hover {
	background: #E8E8E8;
	border-color: #DCDCDC;
}

/* Botón de copia para los hashes - arreglado */
code.hash-code::after {
	content: "📋";
	position: absolute;
	right: 8px;
	top: 50%;
	transform: translateY(-50%);
	opacity: 0;
	transition: opacity 0.3s ease;
	cursor: pointer;
	font-size: 14px;
	color: #0169CB;
	pointer-events: none; /* Evita problemas de hover */
}

code.hash-code:hover::after {
	opacity: 0.7;
}

#hashCompareSection {
	display: none;
	margin-top: 20px;
	padding: 15px;
	border: 1px solid #aaa;
	background-color: #ffffff;
}

#hashCompareSection h3 {
	margin: 0;
	padding: 1em;
	border-bottom: 1px solid #aaa;
	background-color: #eaeaea;
	color: #000;
	font-size: 16px;
	line-height: 22px;
	font-weight: bold;
}

#hashCompareSection label {
	display: block;
	margin-bottom: 8px;
	font-weight: bold;
}

#hashCompareSection input[type="text"] {
	width: 100%;
	padding: 8px;
	margin-bottom: 10px;
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #ffffff;
}

.hash-compare-content {
	margin: 0;
	padding: 0.5em 1em;
}

#hashInput {
	width: 100%;
	padding: 0.5em;
	margin-bottom: 1em;
	border: 1px solid #BCBFC1;
	border-radius: 3px;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, 'Roboto Mono', 'Courier New', monospace;
	font-size: 12px;
	color: #606060;
	background: #ffffff;
	transition: background-color 0.3s ease, border-color 0.3s ease;
}

#hashInput:focus {
	outline: none;
	border-color: #0169CB;
	background: #f8f9fa;
}

#compareResult {
	margin-top: 1em;
	font-weight: normal;
	padding: 0.5em;
	border-radius: 3px;
	font-size: 14px;
	color: #606060;
}

#compareResult.success {
	background-color: #f8f9fa;
	color: #155724;
	border: 1px solid #d1ecf1;
}

#compareResult.error {
	background-color: #f8f9fa;
	color: #721c24;
	border: 1px solid #f5c6cb;
}

.hash-highlight {
	background: #2A98D3 !important;
	color: white !important;
	border: 2px solid #0169CB !important;
}

.file-result.calculating {
	background: #F0F2F2;
	border: 1px solid #DCDCDC;
	border-radius: 3px;
	padding: 1em;
	color: #606060;
	font-style: italic;
	margin: 1em 0;
}

.file-result.calculating::before {
	content: "⏳";
	margin-right: 0.5em;
	animation: spin 2s linear infinite;
}

@keyframes spin {
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}

@keyframes fadeInOut {
	0% { opacity: 0; transform: translateY(-10px); }
	20% { opacity: 1; transform: translateY(0); }
	80% { opacity: 1; transform: translateY(0); }
	100% { opacity: 0; transform: translateY(-10px); }
}

.hash-values li::after {
	content: "";
	display: table;
	clear: both;
}

.file-result {
	margin-bottom: 1.5rem;
}

#output {
	margin-top: 2rem;
}

.help-text {
	margin-bottom: 2rem;
	text-align: justify;
}

.help-text > ul {
	list-style: disc;
}