.app-sidebar {
  border-radius: 1.5rem !important;
  overflow: hidden; /* recorta el fondo */
}
/* ===== Fondo global y limpieza de fondos blancos ===== */
:root{
  /* cambia el fondo gris por el azul claro de tu imagen */
  --bg: #DFE9FF; /* <- el azul claro que me pasaste */
  --card: #ffffff; /* las cards siguen blancas */
}

/* Fondo global */
body.app-body{
  background: var(--bg) !important;
}

/* Quitar blancos heredados en layout */
.app-shell,
.app-shell .row,
.app-content {
  background: transparent !important;
}

/* Si algún wrapper trae fondo por Bootstrap/MDB */
.container,
.container-fluid {
  background: transparent !important;
}

/* Las cards sí deben verse blancas con sombra */
.card, .card.card-soft{
  background: var(--card) !important;
}

/* Footer a juego, sin bloque blanco plano */
footer{
  background: rgba(255,255,255,.65) !important; /* sutil vidrio */
  backdrop-filter: blur(6px);
  border-radius: 1rem 1rem 0 0;
  box-shadow: 0 6px 20px rgba(31,42,68,.08);
}

:root{
  --navy:#0D47A1;
  --blue:#1976D2;
  --turq:#00ACC1;
  --dark:#424242;
  --light:#F5F5F5;
  --radius:18px;
  --radius-lg:22px;
  --shadow:0 14px 28px rgba(13,71,161,0.12), 0 10px 10px rgba(0,0,0,0.06);
}
html,body{height:100%;}
body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: var(--light);
  color: var(--dark);
}

/* --- Global rounded look --- */
.card, .btn, .form-control, .input-group-text, .alert, .modal-content, .dropdown-menu{
  border-radius: var(--radius);
}
.card-soft{
  border:0; box-shadow: var(--shadow); border-radius: var(--radius-lg); background:#fff;
}

/* --- Topbar --- */
.navbar.app-topbar{
  background: var(--navy) !important;
  border-radius: var(--radius-lg);
  margin: 16px;
  box-shadow: var(--shadow);
}
.navbar .navbar-brand{ font-weight: 700; }
.navbar .nav-link{ color:#eaf2ff !important; opacity:.9; }
.navbar .nav-link.active, .navbar .nav-link:hover{ opacity:1; }

/* --- App shell (sidebar + content) --- */
.app-shell{
  margin: 0 16px 24px 16px;
  overflow: hidden;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow);
  background: #fff;
}

.app-sidebar{
  width: 240px;
  background: var(--blue);
  color: #fff;
  padding-top: 12px;
}
.app-sidebar .list-group-item{
  background: transparent;
  color: #fff;
  border: 0;
  border-radius: 0;
  padding: 12px 16px;
}
.app-sidebar .list-group-item:hover{
  background: rgba(255,255,255,.12);
}
.app-sidebar .list-group-item.active{
  background: linear-gradient(90deg, rgba(255,255,255,.22), transparent);
  font-weight: 600;
}
.app-sidebar i{ opacity:.95; }

.app-content{
  padding: 24px;
  background: #fff;
  min-height: calc(100vh - 56px - 56px);
}

/* --- Pills and accents --- */
.badge-brand{ background: var(--turq); }
.btn-primary{ background: var(--navy); border-color: var(--navy); }
.btn-primary:hover{ background:#0b3b86; border-color:#0b3b86; }
.link-brand{ color: var(--navy); }
.link-brand:hover{ color:#0b3b86; }

/* Dashboard helpers */
.stat{display:flex; align-items:center; gap:.75rem;}
.stat .circle{width:48px; height:48px; border-radius:999px; background:rgba(0,172,193,.12); display:flex; align-items:center; justify-content:center; color:var(--turq);}
.stat .val{font-size:1.25rem; font-weight:700;}
.app-sidebar{
  background: var(--navy);
  color: #e8eefc;
  min-height: calc(100vh - 8rem);
  position: sticky;
  top: 1rem;

  /* redondear todas las esquinas igual */
  border-radius: var(--radius);
}
.app-sidebar{
  background: var(--navy);
  color: #e8eefc;
  min-height: calc(100vh - 8rem);
  position: sticky;
  top: 1rem;

  /* bordes más redondos */
  border-radius: 1.5rem;
}
