/* =========================================================
   Área Reservada – complementa ../../css/style.css
   ========================================================= */
.ar .cabecalho .container { flex-wrap: wrap; }
.ar-etiqueta {
  font-weight: 700; font-size: .85rem; text-transform: uppercase; letter-spacing: .06em;
  color: #fff; background: var(--aep-azul); padding: .3rem .8rem; border-radius: 999px; margin-right: auto;
}
.ar-menu ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .2rem; align-items: center; }
.ar-menu a, .ar-sair {
  display: block; padding: .5rem .8rem; border-radius: 6px; text-decoration: none; font-weight: 600;
  color: var(--texto); font: inherit; font-weight: 600; background: none; border: 0; cursor: pointer;
}
.ar-menu a:hover, .ar-sair:hover { background: var(--fundo-alt); color: var(--aep-azul); }
.ar-menu a[aria-current="page"] { color: var(--aep-azul); box-shadow: inset 0 -3px 0 var(--grupo-magenta); }
.ar-sair { border: 1.5px solid var(--borda); }

.ar-conteudo { padding: 2rem 0 4rem; background: var(--fundo-alt); min-height: 60vh; }
.ar-conteudo h1 { margin-bottom: 1.2rem; }
.ar-utilizador { font-size: .9rem; color: var(--texto-suave); margin-bottom: .3rem; }
.ar-conteudo .mensagem-form { margin-bottom: 1rem; }
.mensagem-form.aviso { display: block; background: #fff6dd; color: #6b4e00; border: 1px solid #f0d58a; word-break: break-all; }

.ar-cartao { background: #fff; border-radius: var(--raio); box-shadow: var(--sombra); padding: 1.5rem; margin-bottom: 1.5rem; }
.ar-cartao h2 { font-size: 1.25rem; }
.ar-login { max-width: 460px; }
.ar-links { margin-top: 1rem; }
.ar-grelha { display: grid; gap: 1.5rem; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); margin-bottom: 1.5rem; }
.ar-grelha .ar-cartao { margin-bottom: 0; }
.ar-atalho { text-decoration: none; color: var(--texto); border-top: 4px solid var(--aep-turquesa); transition: transform .15s; }
.ar-atalho:hover { transform: translateY(-3px); color: var(--texto); }
.ar-em-breve { border: 2px dashed var(--borda); box-shadow: none; }
.ar-gestao { border-top: 4px solid var(--grupo-magenta); }

.ar-educandos, .ar-lista { list-style: none; padding: 0; margin: 0 0 1rem; }
.ar-educandos li { display: flex; gap: .8rem; align-items: center; padding: .7rem 0; border-bottom: 1px solid var(--borda); }
.ar-educandos .ponto { width: 14px; height: 14px; }
.ar-educandos small, .ar-lista small { display: block; color: var(--texto-suave); }
.ar-lista li { padding: .5rem 0; border-bottom: 1px solid var(--borda); }

.ar-documentos { display: grid; gap: 1rem; }
.ar-documento { display: flex; gap: 1rem; align-items: center; background: #fff; border-radius: var(--raio); padding: 1rem 1.2rem; box-shadow: var(--sombra); }
.ar-doc-icone { width: 56px; height: 64px; border-radius: 6px; background: var(--aep-azul); color: #fff; display: grid; place-items: center; font-weight: 800; font-size: .8rem; flex-shrink: 0; }
.ar-doc-info { flex: 1; min-width: 0; }
.ar-doc-info h2 { font-size: 1.1rem; margin: 0 0 .2rem; }
.ar-doc-info p { margin: 0 0 .2rem; }
.ar-doc-meta { font-size: .85rem; color: var(--texto-suave); }
@media (max-width: 600px) { .ar-documento { flex-wrap: wrap; } }

.ar-numeros { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); margin-bottom: 1.5rem; }
.ar-numeros div { background: var(--aep-azul); color: #fff; border-radius: var(--raio); padding: 1rem 1.2rem; }
.ar-numeros strong { display: block; font-size: 2rem; line-height: 1.1; color: #8fe3e3; }

.ar-tabela-envolvente { overflow-x: auto; }
.ar-tabela { width: 100%; border-collapse: collapse; font-size: .93rem; }
.ar-tabela th, .ar-tabela td { text-align: left; padding: .65rem .6rem; border-bottom: 1px solid var(--borda); vertical-align: top; }
.ar-tabela th { font-size: .8rem; text-transform: uppercase; letter-spacing: .04em; color: var(--texto-suave); }
.ar-tabela tr.inativo td { opacity: .55; }
.ar-tabela small { color: var(--texto-suave); }
.ar-inline { display: inline; }
.ar-acoes form { display: block; }
.ar-botao-texto { font: inherit; font-size: .88rem; background: none; border: 0; color: var(--aep-azul); cursor: pointer; padding: .15rem 0; text-decoration: underline; }
.ar-perigo { color: #b0261b; }
.ar-ligar { display: flex; gap: .3rem; margin-top: .3rem; }
.ar-ligar input { width: 9rem; font: inherit; font-size: .85rem; padding: .25rem .4rem; border: 1px solid var(--borda); border-radius: 4px; }
.ar-educando-linha { white-space: nowrap; }
.ar-checks { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; }
.ar-largo { grid-column: 1 / -1; }
.ar-dados { display: grid; grid-template-columns: auto 1fr; gap: .4rem 1rem; }
.ar-dados dt { font-weight: 700; }
.ar-dados dd { margin: 0; }
.ar-rodape { padding-top: 0; }
.ar-diagnostico { background: #0f1b2d; color: #d6e3f5; padding: 1rem; border-radius: 8px; font-size: .8rem; overflow-x: auto; white-space: pre-wrap; max-height: 420px; }
