.turmas-page{display:flex;flex-direction:column;gap:24px;max-width:1360px;margin:0 auto;padding:24px}.turmas-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:32px;border-radius:28px;background:linear-gradient(135deg,#061f47,#0b4fb4);color:white;box-shadow:0 18px 40px rgba(0,0,0,.12)}.turmas-hero h1{font-size:clamp(28px,4vw,44px);margin:8px 0}.turmas-hero p{opacity:.9}.eyebrow{letter-spacing:.16em;text-transform:uppercase;opacity:.65;font-weight:700}.btn-secondary,.card-form button{border:0;border-radius:14px;padding:14px 18px;background:#0bbfbf;color:#fff;font-weight:800;text-decoration:none;cursor:pointer}.turmas-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.turmas-kpis div,.card-form,.data-card{background:#fff;border:1px solid #dbe7f6;border-radius:24px;padding:22px;box-shadow:0 14px 30px rgba(17,44,84,.08)}.turmas-kpis strong{display:block;font-size:34px}.turmas-kpis span{color:#4d6485}.turmas-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}.card-wide{grid-column:span 2}.card-form{display:flex;flex-direction:column;gap:14px}.card-form h2,.data-card h2{margin:0 0 8px}.card-form label{font-weight:800;color:#02152f;display:flex;flex-direction:column;gap:7px}.card-form input,.card-form select{border:1px solid #cfdcf0;border-radius:13px;padding:12px 14px;font-size:15px;width:100%;box-sizing:border-box}.two-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.table-wrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:13px 12px;border-bottom:1px solid #e2ebf7}th{font-weight:900}.pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:#e7f8ff;color:#075985;font-weight:800}.inline-form{margin:0}.btn-link{background:transparent!important;color:#b42318!important;padding:0!important;font-weight:800}@media(max-width:820px){.turmas-page{padding:14px}.turmas-hero{flex-direction:column;align-items:flex-start}.card-wide{grid-column:span 1}.two-cols{grid-template-columns:1fr}}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.btn-secondary.ghost{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.35)}.import-card{margin-bottom:20px}.section-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.section-head p{margin:6px 0 0;color:#53647d}.btn-light{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;background:#eef5ff;color:#16499b;text-decoration:none;font-weight:900}.import-form{display:grid;gap:12px;margin-top:16px}.three-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.import-form label{font-weight:900;color:#061b3a}.import-form input,.import-form select{width:100%;border:1px solid #cddaf0;border-radius:12px;padding:12px;background:#fff}.actions-row{display:flex;gap:12px;flex-wrap:wrap}.actions-row button{border:0;border-radius:14px;padding:12px 18px;font-weight:900;cursor:pointer;background:#e8f1ff;color:#16499b}.actions-row button.primary{background:#1e5ccb;color:#fff}.muted{color:#64748b}.details-box{white-space:pre-wrap;background:#0f172a;color:#e2e8f0;border-radius:14px;padding:14px;max-height:260px;overflow:auto}.turmas-kpis.compact{margin-top:12px}.pill.valid{background:#dcfce7;color:#166534}.pill.warning{background:#fef3c7;color:#92400e}.pill.invalid{background:#fee2e2;color:#991b1b}code{background:#eef3fb;border-radius:6px;padding:2px 5px}@media(max-width:800px){.section-head{flex-direction:column}.btn-light,.actions-row button{width:100%}}

/* VECTRA_TURMAS_LAYOUT_V49_START */
/* Hotfix V49: topo da tela de turmas sem sobreposicao de botoes */
.turmas-page,
.turmas-page *{
  box-sizing:border-box;
}

.turmas-hero{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(280px,430px) !important;
  gap:28px !important;
  align-items:center !important;
  overflow:hidden !important;
}

.turmas-hero > div:first-child{
  min-width:0 !important;
}

.turmas-hero h1,
.turmas-hero p{
  max-width:760px;
}

.hero-actions{
  width:100% !important;
  min-width:0 !important;
  max-width:430px !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:12px !important;
  align-items:stretch !important;
  justify-self:end !important;
}

.hero-actions .btn-secondary,
.hero-actions a.btn-secondary,
.hero-actions .btn-secondary.ghost{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:52px !important;
  padding:13px 16px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1.18 !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
  border-radius:14px !important;
  font-size:clamp(14px,1.2vw,16px) !important;
}

.hero-actions .btn-secondary:first-child{
  grid-column:span 1;
}

.hero-actions .btn-secondary.ghost{
  background:rgba(255,255,255,.16) !important;
  border:1px solid rgba(255,255,255,.35) !important;
  color:#fff !important;
}

.turmas-kpis div{
  min-width:0 !important;
}

.turmas-kpis strong,
.turmas-kpis span{
  display:block !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
}

@media (max-width: 1100px){
  .turmas-hero{
    grid-template-columns:1fr !important;
  }
  .hero-actions{
    justify-self:start !important;
    max-width:100% !important;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr)) !important;
  }
}

@media (max-width: 620px){
  .turmas-page{
    padding:14px !important;
  }
  .turmas-hero{
    padding:24px !important;
    border-radius:22px !important;
  }
  .hero-actions{
    grid-template-columns:1fr !important;
  }
  .hero-actions .btn-secondary,
  .hero-actions a.btn-secondary{
    min-height:48px !important;
    font-size:14px !important;
  }
  .turmas-hero h1{
    font-size:32px !important;
  }
}
/* VECTRA_TURMAS_LAYOUT_V49_END */
