/* Vectra Phase 11B - Reorganização Portal do Aluno
   Aplica somente quando JS marca html.vectra-portal-aluno.
*/

html.vectra-portal-aluno {
  --aluno-gap: 14px;
  --aluno-radius: 18px;
}

html.vectra-portal-aluno,
html.vectra-portal-aluno body {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

html.vectra-portal-aluno .vectra-aluno-main-zone {
  width: 100%;
  max-width: 1120px;
  margin-inline: auto;
}

html.vectra-portal-aluno .vectra-aluno-hero {
  order: -20;
}

html.vectra-portal-aluno .vectra-aluno-cards-zone {
  order: -10;
}

html.vectra-portal-aluno .vectra-aluno-pending-reordered {
  margin-top: 18px !important;
  margin-bottom: 18px !important;
  border: 1px solid rgba(30, 64, 175, .12) !important;
  border-radius: var(--aluno-radius) !important;
  box-shadow: 0 16px 38px rgba(15, 23, 42, .08) !important;
  overflow: hidden !important;
}

html.vectra-portal-aluno .vectra-aluno-pending-reordered::before {
  content: "Pendências movidas para baixo para priorizar o Portal do aluno";
  display: block;
  padding: 8px 14px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 800;
  border-bottom: 1px solid rgba(30, 64, 175, .12);
}

html.vectra-portal-aluno .vectra-scroll-x {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

html.vectra-portal-aluno .vectra-aluno-sidebar-mobile-ready {
  max-width: 100%;
}

@media (min-width: 769px) {
  html.vectra-portal-aluno .vectra-aluno-pending-reordered {
    max-width: 980px;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 768px) {
  html.vectra-portal-aluno body {
    min-width: 0 !important;
  }

  html.vectra-portal-aluno .app,
  html.vectra-portal-aluno .app-shell,
  html.vectra-portal-aluno .layout,
  html.vectra-portal-aluno .page,
  html.vectra-portal-aluno .wrapper {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  html.vectra-portal-aluno .sidebar,
  html.vectra-portal-aluno aside,
  html.vectra-portal-aluno .side-menu,
  html.vectra-portal-aluno .nav-sidebar,
  html.vectra-portal-aluno .app-sidebar,
  html.vectra-portal-aluno .layout-sidebar,
  html.vectra-portal-aluno .menu-lateral {
    position: relative !important;
    inset: auto !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    transform: none !important;
    overflow: visible !important;
    z-index: 5 !important;
    border-radius: 0 0 18px 18px !important;
  }

  html.vectra-portal-aluno .sidebar nav,
  html.vectra-portal-aluno aside nav,
  html.vectra-portal-aluno .side-menu nav,
  html.vectra-portal-aluno .nav-sidebar nav,
  html.vectra-portal-aluno .app-sidebar nav,
  html.vectra-portal-aluno .layout-sidebar nav,
  html.vectra-portal-aluno .menu-lateral nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    padding: 8px !important;
  }

  html.vectra-portal-aluno .sidebar a,
  html.vectra-portal-aluno aside a,
  html.vectra-portal-aluno .side-menu a,
  html.vectra-portal-aluno .nav-sidebar a,
  html.vectra-portal-aluno .app-sidebar a,
  html.vectra-portal-aluno .layout-sidebar a,
  html.vectra-portal-aluno .menu-lateral a {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }

  html.vectra-portal-aluno main,
  html.vectra-portal-aluno .main,
  html.vectra-portal-aluno .content,
  html.vectra-portal-aluno .main-content,
  html.vectra-portal-aluno .page-content,
  html.vectra-portal-aluno .dashboard,
  html.vectra-portal-aluno .dashboard-content,
  html.vectra-portal-aluno .portal-container,
  html.vectra-portal-aluno .portal-shell {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  html.vectra-portal-aluno .vectra-aluno-pending-reordered {
    order: 50;
  }

  html.vectra-portal-aluno .vectra-aluno-pending-reordered h1,
  html.vectra-portal-aluno .vectra-aluno-pending-reordered h2,
  html.vectra-portal-aluno .vectra-aluno-pending-reordered h3 {
    font-size: 18px !important;
    line-height: 1.15 !important;
  }

  html.vectra-portal-aluno .vectra-aluno-pending-reordered .btn,
  html.vectra-portal-aluno .vectra-aluno-pending-reordered button,
  html.vectra-portal-aluno .vectra-aluno-pending-reordered a[class*="btn"] {
    min-height: 40px !important;
    padding: 9px 12px !important;
    white-space: normal !important;
  }

  html.vectra-portal-aluno .card,
  html.vectra-portal-aluno .panel,
  html.vectra-portal-aluno .box,
  html.vectra-portal-aluno .widget,
  html.vectra-portal-aluno .portal-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}

@media (max-width: 480px) {
  html.vectra-portal-aluno .vectra-aluno-pending-reordered {
    font-size: 13px !important;
  }

  html.vectra-portal-aluno .vectra-aluno-pending-reordered::before {
    font-size: 11px;
    line-height: 1.25;
  }
}
