/* ===== Ajustes responsivos extras (mobile e tablet) ===== */
@media (max-width:1024px){
  .page-header{padding:20px 20px 16px}
  .content{padding:18px 20px}
  .auth-card{width:min(92vw,520px);padding:24px}
  .header-actions{flex-wrap:wrap}
  .section-head{flex-wrap:wrap;gap:10px}
}
@media (max-width:820px){
  .sidebar{width:74px}
  .logo{padding:14px 8px 10px;justify-content:center}
  .brand-emblem,.logo-copy,.nav-label,.user-chip > div:not(.user-avatar){display:none}
  .nav{padding:10px 8px}
  .nav-item{justify-content:center;gap:0;padding:10px 0;font-size:0}
  .nav-icon{width:18px;height:18px;opacity:.95}
  .sidebar-footer{padding:10px 8px}
  .user-chip{justify-content:center;padding:8px}
  .page-header{padding:18px 16px 14px}
  .content{padding:16px}
  .section-head{flex-direction:column;align-items:flex-start}
  .week-hero,.stats-grid-2,.study-time-layout,.aulas-top,.review-control-top,.aluno-modal-grid,.aluno-modal-grid-3,.aluno-stats-grid,.plan-summary,.week-stats,.stats-kpi-grid,.aulas-kpis{grid-template-columns:1fr !important}
  .modal-card,.auth-card{width:min(94vw,640px)!important;max-width:94vw!important}
  .btn,.btn.sm{max-width:100%}
}
@media (max-width:560px){
  html,body{font-size:13px}
  .layout{min-height:100vh;height:auto}
  .sidebar{width:58px}
  .page-title{font-size:18px}
  .page-sub{font-size:12px}
  .content{padding:14px}
  .page-header{padding:16px 14px 12px}
  .card,.metric,.chart-card,.day-group,.disc-card,.disc-details,.week-panel,.review-card,.plan-card,.auth-card{padding:14px}
  .task-row,.stats-rank-row,.study-time-row{grid-template-columns:1fr !important}
  .study-time-value,.stats-rank-val{text-align:left}
  input[type=text],input[type=number],input[type=email],input[type=password],select,textarea{font-size:16px}
  table{display:block;overflow-x:auto;white-space:nowrap}
  .modal-card{padding:16px!important;max-height:90vh!important;overflow:auto}
}
