/* UNIMES redesign — paginas "Arquivos" (Repositorio, CPA, Biblioteca, Editais...).
   CSS puro, sem build. Os grupos sao a navegacao, como no modelo legado: a esquerda
   (seletor ate 1024px), o painel do grupo a direita em lista de uma coluna. Formato
   "catalog" (Repositorio): busca no topo e contagem nos grupos, no estilo dos filtros
   do catalogo de cursos. Mobile-first. Sem negrito. */

.unimes-files {
  display: block;
  min-width: 0;
  background: var(--unimes-color-neutral-white);
}

.unimes-files :where(h1, h2, h3, p, ul) {
  margin: 0;
}

.unimes-files :where(.unimes-files-list, .unimes-files-nav__list ul) {
  padding: 0;
  list-style: none;
}

.unimes-files [hidden] {
  display: none !important;
}

.unimes-files :where(a, button, select, input, [tabindex]):focus-visible {
  outline: 2px solid var(--unimes-navy);
  outline-offset: 2px;
  box-shadow: var(--shadow-focus);
}

/* ---------- Topo ---------- */

.unimes-files-intro {
  padding-block: var(--unimes-space-8);
  border-bottom: 1px solid var(--border-subtle);
  background: var(--gray-050);
}

.unimes-files-intro__eyebrow {
  margin-bottom: var(--unimes-space-2);
}

.unimes-files-intro__title {
  color: var(--text-strong);
  font-size: clamp(2rem, 1.5rem + 2.2vw, 3rem);
  font-weight: var(--fw-light);
  letter-spacing: var(--tracking-tight);
  line-height: var(--leading-tight);
}

/* ---------- Texto do editor ---------- */

.unimes-files-text {
  padding-block: var(--unimes-space-8) 0;
}

.unimes-files-text__body {
  max-width: 72ch;
  color: var(--gray-700);
  font-size: var(--text-base);
  line-height: var(--leading-relaxed);
  overflow-wrap: anywhere;
}

.unimes-files-text__body > * + * {
  margin-top: var(--unimes-space-4);
}

.unimes-files-text__body :where(h2, h3, h4, h5, h6) {
  margin-top: var(--unimes-space-6);
  color: var(--text-strong);
  font-size: var(--text-lg);
  font-weight: var(--fw-regular);
  line-height: var(--leading-snug);
}

/* Sem negrito: a enfase do editor vem da cor, como na casca das paginas legadas. */
.unimes-files-text__body :where(strong, b) {
  color: var(--text-strong);
  font-weight: var(--fw-regular);
}

.unimes-files-text__body :where(ul, ol) {
  padding-left: var(--unimes-space-6);
}

.unimes-files-text__body a {
  color: var(--text-link);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.unimes-files-text__body :where(img) {
  max-width: 100%;
  height: auto;
}

/* ---------- Documentos: navegacao e painel ---------- */

.unimes-files-documents {
  padding-block: var(--unimes-space-8) var(--unimes-space-12);
}

.unimes-files__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--unimes-space-6);
}

.unimes-files-nav {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--unimes-space-4);
}

/* Busca do Repositorio, no padrao da busca do catalogo. */
.unimes-files-search {
  display: flex;
  gap: var(--unimes-space-2);
}

.unimes-files-search__input {
  min-width: 0;
  height: 48px;
  flex: 1 1 auto;
  padding: 0 var(--unimes-space-5);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-pill);
  background: var(--unimes-white);
  color: var(--text-body);
  font-size: var(--text-base);
}

.unimes-files-search__input::placeholder {
  color: var(--text-muted);
  opacity: 1;
}

.unimes-files-search__submit {
  display: inline-flex;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: var(--radius-md);
  background: var(--action-primary);
  color: var(--unimes-white);
  cursor: pointer;
}

.unimes-files-search__submit:hover {
  background: var(--action-primary-hover);
}

/* Seletor de grupo: ate 1024px substitui a lista. */
.unimes-files-nav__select {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: var(--unimes-space-2) var(--unimes-space-3);
}

.unimes-files-nav__label,
.unimes-files-nav__title {
  flex: 1 0 100%;
  color: var(--text-muted);
  font-size: var(--text-xs);
  letter-spacing: var(--tracking-label);
  line-height: var(--leading-snug);
  text-transform: uppercase;
}

.unimes-files-nav__control {
  min-width: 0;
  min-height: 48px;
  flex: 1 1 auto;
  padding: var(--unimes-space-2) var(--unimes-space-3);
  border: 1px solid var(--border-default);
  border-radius: var(--radius-md);
  background: var(--unimes-white);
  color: var(--text-strong);
  font-size: var(--text-base);
}

.unimes-files-nav__go {
  min-height: 48px;
}

.unimes-files-nav__list {
  display: none;
}

.unimes-files-nav__item {
  display: flex;
  min-height: 44px;
  align-items: center;
  justify-content: space-between;
  gap: var(--unimes-space-3);
  padding: var(--unimes-space-2) var(--unimes-space-3);
  border-left: 3px solid transparent;
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  color: var(--text-body);
  font-size: var(--text-sm);
  line-height: var(--leading-snug);
  text-decoration: none;
}

.unimes-files-nav__item:hover {
  background: var(--navy-050);
  color: var(--text-strong);
}

/* Grupo atual: marca em ciano, texto navy (sem negrito). */
.unimes-files-nav__item[aria-current="true"] {
  border-left-color: var(--unimes-cyan);
  background: var(--gray-050);
  color: var(--text-strong);
}

/* Painel do grupo. */
.unimes-files-panels {
  min-width: 0;
}

.unimes-files-panel__title {
  color: var(--text-strong);
  font-size: clamp(1.5rem, 1.25rem + 1vw, 2rem);
  font-weight: var(--fw-light);
  letter-spacing: var(--tracking-tight);
  line-height: var(--leading-snug);
}

.unimes-files-panel__title:focus {
  outline: none;
}

.unimes-files-panel__subtitle {
  margin-top: var(--unimes-space-6);
  color: var(--text-muted);
  font-size: var(--text-xs);
  font-weight: var(--fw-regular);
  letter-spacing: var(--tracking-label);
  text-transform: uppercase;
}

.unimes-files-list {
  margin-top: var(--unimes-space-3);
  border-top: 1px solid var(--border-subtle);
}

.unimes-files-row {
  border-bottom: 1px solid var(--border-subtle);
}

.unimes-files-row__link {
  display: flex;
  min-height: 56px;
  align-items: center;
  gap: var(--unimes-space-3);
  padding: var(--unimes-space-3) var(--unimes-space-2);
  color: var(--text-strong);
  text-decoration: none;
}

.unimes-files-row__link:hover {
  background: var(--navy-050);
}

.unimes-files-row__link > svg {
  flex: 0 0 auto;
  color: var(--gray-600);
}

.unimes-files-row__text {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 2px;
}

.unimes-files-row__name {
  font-size: var(--text-base);
  line-height: var(--leading-snug);
  overflow-wrap: anywhere;
}

.unimes-files-row__meta {
  color: var(--gray-600);
  font-size: var(--text-xs);
}

.unimes-files-row__action {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: var(--unimes-space-1);
  color: var(--text-link);
  font-size: var(--text-sm);
}

.unimes-files-panel__more {
  min-height: 44px;
  margin-top: var(--unimes-space-5);
}

.unimes-files-panel__empty {
  margin-top: var(--unimes-space-4);
  color: var(--gray-600);
}

@media (max-width: 639px) {
  /* No celular a acao fica so no icone; o nome ganha a largura. */
  .unimes-files-row__action {
    font-size: 0;
  }
}

@media (min-width: 1024px) {
  .unimes-files-intro {
    padding-block: var(--unimes-space-12);
  }

  .unimes-files-documents {
    padding-block: var(--unimes-space-10) var(--unimes-space-16);
  }

  .unimes-files__layout {
    grid-template-columns: minmax(15rem, 18rem) minmax(0, 1fr);
    align-items: start;
    gap: var(--unimes-space-10);
  }

  .unimes-files__layout--single {
    grid-template-columns: minmax(0, 1fr);
  }

  .unimes-files-nav {
    position: sticky;
    top: var(--unimes-space-6);
  }

  .unimes-files-nav__select {
    display: none;
  }

  .unimes-files-nav__list {
    display: block;
  }

  .unimes-files-nav__title {
    margin-bottom: var(--unimes-space-2);
  }

  .unimes-files-nav__list ul {
    display: grid;
    gap: 2px;
  }
}
