/* AGSCH Documentos — listas, tarjetas y ficha.
   Variables (definidas en Documentos › Ajustes): --agsch-fs, --agsch-primario, --agsch-acento.
   Con el estilo "tema" no se imponen colores ni tipografía: se heredan del tema. */

.agsch-docs-raiz { --agsch-fs: 18px; --agsch-primario: #001558; --agsch-acento: #feb135; --agsch-borde: #e3e6ee; --agsch-suave: #6b7280; font-size: var(--agsch-fs); }
.agsch-docs-raiz.agsch-estilo-tema { --agsch-borde: rgba(0, 0, 0, .12); --agsch-suave: inherit; }

.agsch-docs, .agsch-ficha__archivos { display: grid; gap: .5em; margin: 0 0 1.5em; padding: 0; list-style: none; }

/* --- Tarjeta --- */
.agsch-doc {
	display: flex; align-items: center; gap: .9em;
	padding: .8em 1em; border: 1px solid var(--agsch-borde); border-radius: .6em; background: #fff;
	line-height: 1.4; transition: border-color .15s, box-shadow .15s;
}
.agsch-estilo-tema .agsch-doc { background: transparent; }
.agsch-doc:hover { border-color: color-mix(in srgb, var(--agsch-primario) 35%, transparent); box-shadow: 0 2px 10px rgba(26, 45, 87, .08); }
.agsch-doc__tipo {
	flex: 0 0 auto; min-width: 3.2em; padding: .45em 0; border-radius: .4em; text-align: center;
	font-size: .72em; font-weight: 700; letter-spacing: .04em; color: #fff; background: var(--agsch-primario);
}
.agsch-estilo-tema .agsch-doc__tipo { color: inherit; background: none; border: 1px solid currentColor; }
.agsch-estilo-agsch .agsch-doc__tipo--pdf { background: #c0392b; }
.agsch-estilo-agsch .agsch-doc__tipo--doc, .agsch-estilo-agsch .agsch-doc__tipo--docx { background: #2b5797; }
.agsch-estilo-agsch .agsch-doc__tipo--xls, .agsch-estilo-agsch .agsch-doc__tipo--xlsx { background: #1e7145; }
.agsch-estilo-agsch .agsch-doc__tipo--ppt, .agsch-estilo-agsch .agsch-doc__tipo--pptx { background: #d24726; }
.agsch-estilo-agsch .agsch-doc__tipo--zip { background: #6b5b95; }
.agsch-doc__cuerpo { flex: 1 1 auto; min-width: 0; }
.agsch-doc__titulo { font-weight: 600; text-decoration: none; }
.agsch-estilo-agsch .agsch-doc__titulo { color: var(--agsch-primario); }
a.agsch-doc__titulo:hover { text-decoration: underline; }
.agsch-doc__candado { margin-left: .35em; font-size: .85em; }
.agsch-doc__meta { margin-top: .15em; font-size: .85em; color: var(--agsch-suave); opacity: .9; }

/* --- Botón --- */
.agsch-estilo-agsch .agsch-doc-btn {
	flex: 0 0 auto; display: inline-block; padding: .5em 1.1em; border: 0; border-radius: 999px;
	background: var(--agsch-primario); color: #fff !important; font-size: .9em; font-weight: 600; line-height: 1.3; text-decoration: none; cursor: pointer;
	transition: background .15s, color .15s, transform .15s;
}
.agsch-estilo-agsch .agsch-doc-btn:hover, .agsch-estilo-agsch .agsch-doc-btn:focus-visible { background: var(--agsch-acento); color: var(--agsch-primario) !important; transform: translateY(-1px); }
.agsch-estilo-tema .agsch-doc-btn { flex: 0 0 auto; }

/* --- Lista compacta --- */
.agsch-docs--lista { gap: 0; }
.agsch-doc--lista { display: block; padding: .55em 0; border: 0; border-bottom: 1px solid var(--agsch-borde); border-radius: 0; background: none; }
.agsch-doc--lista:hover { box-shadow: none; }
.agsch-doc--lista .agsch-doc__ext { font-size: .72em; font-weight: 700; padding: .1em .45em; border: 1px solid var(--agsch-borde); border-radius: .3em; vertical-align: middle; }
.agsch-doc--lista .agsch-doc__meta { margin-left: .4em; }

/* --- Solo botón --- */
.agsch-doc--boton { display: block; padding: 0; border: 0; background: none; margin: .4em 0; }
.agsch-doc--boton:hover { box-shadow: none; }

/* --- Agrupado por año --- */
.agsch-docs__anio { border: 1px solid var(--agsch-borde); border-radius: .75em; padding: 0 .75em; }
.agsch-estilo-agsch .agsch-docs__anio { background: #f8f9fc; }
.agsch-docs__anio + .agsch-docs__anio { margin-top: .5em; }
.agsch-docs__anio > summary { cursor: pointer; padding: .7em .25em; font-size: 1.15em; font-weight: 700; }
.agsch-estilo-agsch .agsch-docs__anio > summary { color: var(--agsch-primario); }
.agsch-docs__anio[open] { padding-bottom: .75em; }
.agsch-docs__n { margin-left: .4em; padding: .1em .55em; border-radius: 999px; background: rgba(0, 0, 0, .07); font-size: .7em; font-weight: 600; vertical-align: middle; }
.agsch-docs__vacio { color: var(--agsch-suave); }

/* --- Buscador --- */
.agsch-buscador { display: flex; flex-wrap: wrap; gap: .5em; margin-bottom: .75em; }
.agsch-buscador input[type="search"] { flex: 1 1 16em; }
.agsch-buscador input, .agsch-buscador select { padding: .5em .65em; border: 1px solid #cfd5e3; border-radius: .5em; font-size: .95em; }
.agsch-buscador__total { margin: 0 0 .5em; color: var(--agsch-suave); font-size: .9em; }
.agsch-paginacion { display: flex; gap: .4em; flex-wrap: wrap; }
.agsch-paginacion .page-numbers { padding: .35em .75em; border-radius: .5em; border: 1px solid var(--agsch-borde); text-decoration: none; }
.agsch-estilo-agsch .agsch-paginacion .current { background: var(--agsch-primario); color: #fff; border-color: var(--agsch-primario); }

/* --- Ficha --- */
/* Ficha: información a la izquierda, descargas a la derecha; una columna en pantallas angostas */
.agsch-ficha { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); gap: 1.5em 2.5em; align-items: start; margin-top: 1.5em; }
.agsch-ficha__info > :first-child { margin-top: 0; }
.agsch-ficha__info p:empty { display: none; }
.agsch-ficha__descargas { min-width: 0; }
.agsch-ficha__titulo-descargas { margin: 0 0 .6em; font-size: 1.1em; font-weight: 700; }
.agsch-estilo-agsch .agsch-ficha__titulo-descargas { color: var(--agsch-primario); }
.agsch-ficha__descargas .agsch-doc__titulo { overflow-wrap: anywhere; }
@media (max-width: 900px) { .agsch-ficha { grid-template-columns: 1fr; } }
.agsch-ficha__datos { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: .45em 1em; margin: 0 0 1.25em; }
.agsch-ficha__datos dd { overflow-wrap: anywhere; }
.agsch-ficha__datos dt { font-weight: 600; }
.agsch-estilo-agsch .agsch-ficha__datos dt { color: var(--agsch-primario); }
.agsch-ficha__datos dd { margin: 0; }
.agsch-doc-aviso { padding: .75em 1em; border-radius: .6em; background: #fff8e1; border: 1px solid #f2d27a; }
.agsch-doc-aviso--error { background: #fdecea; border-color: #f1b0a9; }
.agsch-doc-clave label { display: block; font-weight: 600; margin-bottom: .4em; }
.agsch-doc-clave__fila { display: flex; gap: .5em; }
.agsch-doc-clave input[type="password"] { flex: 1 1 auto; padding: .5em .65em; border: 1px solid #cfd5e3; border-radius: .5em; }
.agsch-ficha__versiones { margin-top: 1em; }
.agsch-ficha__versiones summary { cursor: pointer; font-weight: 600; }
.agsch-ficha__versiones ul { margin: .5em 0 0 1.2em; }

@media (max-width: 600px) {
	.agsch-doc { flex-wrap: wrap; }
	.agsch-doc:not(.agsch-doc--lista):not(.agsch-doc--boton) .agsch-doc-btn { width: 100%; text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
	.agsch-doc, .agsch-doc-btn { transition: none; }
	.agsch-doc-btn:hover { transform: none; }
}
.agsch-buscador__filtro { align-self: center; padding: .3em .7em; border-radius: 999px; background: rgba(0,0,0,.06); font-size: .9em; } .agsch-buscador__filtro a { margin-left: .3em; text-decoration: none; font-weight: 700; }
/* Tarjeta de un documento con varios archivos listados */
.agsch-doc--varios { align-items: flex-start; }
.agsch-doc__archivos { list-style: none; margin: .55em 0 0; padding: .5em 0 0; border-top: 1px dashed var(--agsch-borde); display: grid; gap: .3em; font-size: .9em; }




.agsch-doc__archivos .agsch-doc__ext { flex: 0 0 auto; font-size: .7em; font-weight: 700; padding: .1em .4em; border: 1px solid var(--agsch-borde); border-radius: .3em; }
.agsch-doc__archivos .agsch-doc__meta { margin: 0; font-size: .85em; }
.agsch-doc--lista .agsch-doc__archivos, .agsch-doc--boton .agsch-doc__archivos { margin-left: 1em; }
.agsch-doc__versiones { margin-top: .35em; font-size: .85em; } .agsch-doc__versiones summary { cursor: pointer; } .agsch-doc__versiones ul { margin: .3em 0 0 1.1em; padding: 0; }

/* Archivos de un documento con varios: cada uno con su botón Descargar, más chico que el principal */
.agsch-doc__archivos li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .55em; margin: 0; padding: .25em 0; }
.agsch-doc__archivos li + li { border-top: 1px solid var(--agsch-borde); }
.agsch-doc__archivo { font-weight: 600; overflow-wrap: anywhere; line-height: 1.3; }
.agsch-doc__archivo .agsch-doc__meta { display: inline; margin-left: .3em; font-weight: 400; }
.agsch-estilo-agsch .agsch-doc-btn.agsch-doc-btn--chico { padding: .3em .8em; font-size: .78em; background: transparent; color: var(--agsch-primario) !important; border: 1.5px solid var(--agsch-primario); }
.agsch-estilo-agsch .agsch-doc-btn.agsch-doc-btn--chico:hover, .agsch-estilo-agsch .agsch-doc-btn.agsch-doc-btn--chico:focus-visible { background: var(--agsch-primario); color: #fff !important; transform: none; }
.agsch-estilo-tema .agsch-doc-btn--chico { padding: .3em .8em !important; font-size: .8em !important; line-height: 1.3 !important; }
@media (max-width: 600px) { .agsch-doc .agsch-doc__archivos .agsch-doc-btn--chico { width: auto; } }
