/*!
 * Central do Aluno – Tema CEAM (claro fixo)
 * Inspirado nos layouts de /equipe e /história
 * v2.1
 */

/* =========================
   Tokens / Tema
   ========================= */
:root{
  --ca-bg:#ffffff;
  --ca-surface:#f7f8ff;            /* superfícies suaves */
  --ca-elev:#ffffff;
  --ca-text:#22223b;
  --ca-text-muted:#6b6f80;
  --ca-primary:#5e47b8;            /* Roxo CEAM */
  --ca-primary-600:#6246ea;
  --ca-primary-700:#4b39a3;
  --ca-accent:#8b75e6;
  --ca-danger:#ef4444;
  --ca-warning:#f59e0b;
  --ca-border:#eeeeee;
  --ca-ring:0 0 0 4px color-mix(in oklab, var(--ca-primary) 35%, white);
  --ca-radius:16px;
  --ca-radius-sm:12px;
  --ca-shadow-sm:0 4px 14px rgba(0,0,0,.06);
  --ca-shadow-md:0 10px 26px rgba(0,0,0,.08);
  --ca-shadow-lg:0 18px 42px rgba(0,0,0,.10);
  --ca-font:'Montserrat', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, 'Apple Color Emoji','Segoe UI Emoji';
}

/* reset local para evitar conflitos */
.central-aluno, .central-aluno *,.central-aluno *::before,.central-aluno *::after{ box-sizing:border-box }

/* Força tema claro mesmo se o SO estiver no dark mode */
.central-aluno{ color-scheme: light; }

/* =========================
   Container / Card
   ========================= */
.central-aluno{
  font-family:var(--ca-font);
  max-width:1100px;
  margin:32px auto;
  padding:0 20px;
  color:var(--ca-text);
  background:var(--ca-bg);
}
.central-aluno__card{
  background:var(--ca-elev) !important;
  border:1px solid var(--ca-border) !important;
  border-radius:var(--ca-radius);
  /* borda “dupla” sutil */
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(135deg,#f2f2ff,#fafaff) border-box;
  box-shadow:var(--ca-shadow-lg) !important;
  overflow:hidden;
}

/* =========================
   Header (editorial claro)
   ========================= */
.central-aluno__header{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:26px 24px 18px;
  background:var(--ca-elev) !important;        /* mata header escuro antigo */
  color:var(--ca-text) !important;
  border-bottom:1px solid var(--ca-border) !important;
}
.central-aluno__title{
  margin:0;
  font-weight:800;
  letter-spacing:.2px;
  font-size:clamp(24px,2.8vw,36px);
  line-height:1.08;
  color:var(--ca-text);
}
.central-aluno__title::after{
  content:"";
  display:block;
  width:72px; height:4px;
  margin:10px 0 0;
  border-radius:999px;
  background:linear-gradient(90deg,var(--ca-primary),var(--ca-accent));
}
.central-aluno__subtitle{
  margin:2px 0 0;
  color:var(--ca-text-muted) !important;
  font-size:15px;
}
.central-aluno__actions{ margin-top:10px; display:flex; gap:10px; flex-wrap:wrap }

/* Botões (outline → gradiente no hover) */
.ca-btn{
  appearance:none; display:inline-flex; align-items:center; gap:8px;
  padding:10px 14px; font-weight:800; letter-spacing:.25px;
  border-radius:999px; border:2px solid var(--ca-primary);
  color:var(--ca-primary); background:#fff; text-decoration:none;
  transition:transform .08s ease, box-shadow .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
  box-shadow:var(--ca-shadow-sm);
  outline:none;
}
.ca-btn:hover{
  background:linear-gradient(90deg,var(--ca-primary),var(--ca-accent));
  color:#fff; border-color:transparent; box-shadow:0 10px 22px rgba(94,71,184,.22);
}
.ca-btn:active{ transform:translateY(0) }
.ca-btn:focus-visible{ box-shadow:var(--ca-ring) }
.ca-btn--ghost{ border-color:#e6e6f6; color:#3c3f52 }
.ca-btn--ghost:hover{ color:#fff }

/* =========================
   Tabs (pílulas)
   ========================= */
.central-aluno__tabs{
  display:flex; gap:6px; flex-wrap:wrap;
  padding:10px 10px 0;
  background:var(--ca-surface) !important;
  border-bottom:1px solid var(--ca-border) !important;
}
.central-aluno__tab{
  appearance:none; border:0; cursor:pointer;
  padding:10px 14px; font-weight:700; color:var(--ca-text-muted) !important;
  background:#fff !important; border:1px solid var(--ca-border) !important;
  border-radius:999px;
  transition:color .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.central-aluno__tab:hover{ color:var(--ca-primary-600) !important; border-color:#ddd8ff !important; }
.central-aluno__tab.is-active{
  color:#fff !important; border-color:transparent !important;
  background:linear-gradient(90deg,var(--ca-primary),var(--ca-accent)) !important;
  box-shadow:0 8px 18px rgba(94,71,184,.22) !important;
}
.central-aluno__tab:focus-visible{ outline:none; box-shadow:var(--ca-ring) }

/* =========================
   Painéis
   ========================= */
.central-aluno__panel{
  display:none;
  padding:22px;
  background:var(--ca-elev);
}
.central-aluno__panel.is-active{ display:block }
.central-aluno h3{
  margin:0 0 12px;
  font-size:20px;
  color:var(--ca-text);
}

/* =========================
   “Chips” utilitários (opcional)
   ========================= */
.central-aluno__chips{ display:flex; gap:8px; flex-wrap:wrap; margin:8px 0 12px }
.chip{
  appearance:none; border:1px solid var(--ca-border); background:#fff;
  color:#3c3f52; padding:8px 12px; border-radius:999px; font-weight:700; cursor:pointer;
  transition:background .15s ease, border-color .15s ease, transform .08s;
}
.chip:hover{ border-color:#e1e1e1 }
.chip[aria-pressed="true"]{
  color:#fff; border-color:transparent;
  background:linear-gradient(90deg,var(--ca-primary),var(--ca-accent));
  box-shadow:0 8px 18px rgba(94,71,184,.22);
}

/* =========================
   Tabelas / Dados
   ========================= */
.central-aluno__table{
  width:100%; border-collapse:collapse; margin-top:10px;
  background:var(--ca-elev);
  border:1px solid var(--ca-border);
  border-radius:var(--ca-radius-sm);
  overflow:hidden;
  box-shadow:var(--ca-shadow-sm);
}
.central-aluno__table thead th{
  text-align:left; font-size:13px; letter-spacing:.02em; text-transform:uppercase;
  color:#7e82a0; background:linear-gradient(180deg,#f6f5ff,transparent);
  padding:12px 14px; border-bottom:1px solid var(--ca-border);
}
.central-aluno__table tr + tr td{ border-top:1px solid var(--ca-border) }
.central-aluno__table td{
  padding:12px 14px; vertical-align:top; color:var(--ca-text); font-size:15px;
}
.central-aluno__table td:first-child{
  width:32%;
  background:linear-gradient(180deg,rgba(98,70,234,.05),transparent 70%);
  font-weight:700; color:var(--ca-text);
}

/* =========================
   Formulários
   ========================= */
.central-aluno__field{ display:grid; gap:8px; margin:12px 0 10px }
.central-aluno__label{ font-weight:700; color:var(--ca-text); font-size:14px }
.central-aluno__input,.central-aluno__select,.central-aluno__textarea{
  width:100%; padding:12px 14px; border-radius:12px; border:1px solid var(--ca-border);
  background:var(--ca-surface); color:var(--ca-text); outline:none;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.central-aluno__textarea{ min-height:120px; resize:vertical }
.central-aluno__input::placeholder{ color:var(--ca-text-muted) }
.central-aluno__input:focus,.central-aluno__select:focus,.central-aluno__textarea:focus{
  border-color:var(--ca-primary-600); box-shadow:var(--ca-ring); background:var(--ca-bg);
}
.central-aluno__submit{
  margin-top:12px; display:inline-flex; align-items:center; gap:10px;
  padding:12px 18px; border-radius:12px;
  background:linear-gradient(90deg,var(--ca-primary),var(--ca-accent));
  color:#fff; border:1px solid transparent; font-weight:800; letter-spacing:.3px; text-transform:uppercase; cursor:pointer;
  transition:transform .08s ease, box-shadow .2s ease, filter .2s ease;
  box-shadow:var(--ca-shadow-md);
}
.central-aluno__submit:hover{ filter:saturate(1.05) brightness(1.03); transform:translateY(-1px) }
.central-aluno__submit:active{ transform:translateY(0) }
.central-aluno__submit:focus-visible{ outline:none; box-shadow:var(--ca-ring) }

/* =========================
   Alerts / Status
   ========================= */
.ca-alert{
  padding:12px 14px; border:1px solid var(--ca-border);
  border-radius:12px; background:var(--ca-surface); color:var(--ca-text);
  box-shadow:var(--ca-shadow-sm);
}
.ca-alert--danger{ border-color:rgba(239,68,68,.25); background:rgba(239,68,68,.08); color:#991b1b }
.ca-alert--warning{ border-color:rgba(245,158,11,.25); background:rgba(245,158,11,.10); color:#92400e }
.ca-alert--success{ border-color:rgba(34,197,94,.25); background:rgba(34,197,94,.10); color:#065f46 }

/* =========================
   Listas & Helpers
   ========================= */
.central-aluno ul{ margin:8px 0 0 16px; padding:0 }
.central-aluno li{ margin:6px 0; color:var(--ca-text) }
.central-aluno .muted{ color:var(--ca-text-muted) }
.central-aluno .spacer{ height:16px }

/* =========================
   Micro-interações (opcional)
   ========================= */
.reveal{ opacity:0; transform:translateY(12px); transition:opacity .45s ease, transform .45s ease }
.reveal.show{ opacity:1; transform:none }
@media (prefers-reduced-motion:reduce){
  .reveal{ opacity:1 !important; transform:none !important; transition:none !important }
}

/* ===========================================================
   OVERRIDES ANTI-CONFLITO (plugins/tema) – mantenha no final
   =========================================================== */

/* mata estilos escuros herdados por plugins (ex.: User Registration) */
.central-aluno :is(.ur-frontend-form, .ur-form-row, .ur-input-type, .ur-button){
  background: transparent !important;
  box-shadow: none !important;
  color: inherit !important;
}

/* inputs/botões do plugin seguindo o tema */
.central-aluno :is(input, select, textarea){
  background: var(--ca-surface) !important;
  color: var(--ca-text) !important;
  border: 1px solid var(--ca-border) !important;
  border-radius: 12px !important;
}
.central-aluno :is(input:focus, select:focus, textarea:focus){
  border-color: var(--ca-primary-600) !important;
  box-shadow: var(--ca-ring) !important;
  background: var(--ca-bg) !important;
}
.central-aluno :is(button, .button, .ur-submit-button){
  border-radius: 12px !important;
  background: linear-gradient(90deg,var(--ca-primary),var(--ca-accent)) !important;
  border: 1px solid transparent !important;
  color: #fff !important;
  font-weight: 800 !important;
  box-shadow: var(--ca-shadow-md) !important;
}
.central-aluno :is(button:hover, .button:hover, .ur-submit-button:hover){
  filter: saturate(1.05) brightness(1.03) !important;
}

/* tabs antigas (se existirem) não ficam mais com faixa escura */
.central-aluno .nav-tabs,
.central-aluno .tab-header{ background: var(--ca-surface) !important; border-color: var(--ca-border) !important; }

/* desativa qualquer gradiente escuro antigo que tente voltar */
.central-aluno__header[class]{ background-image: none !important; }
