/* Pulido para las apps con Bootstrap 4 (Savia, Guardia, Cronos, portal y Settings).
   Solo esquinas, bordes, sombras y foco: los colores siguen siendo los de cada app. */
.btn{border-radius:var(--radio-control)}
.card{border-radius:var(--radio-tarjeta);border:var(--borde-comun);box-shadow:var(--sombra-suave)}
.form-control,.custom-select,.input-group-text{border-radius:var(--radio-control)}
.form-control:focus,.custom-select:focus{border-color:var(--app-accent,#4f46e5);box-shadow:0 0 0 3px color-mix(in srgb,var(--app-accent,#4f46e5) 25%,transparent)}
.table th{font-weight:600}
.badge{border-radius:999px;font-weight:600;padding:.3em .65em}
.alert{border-radius:var(--radio-tarjeta)}
.nav-tabs .nav-link{border-radius:var(--radio-control) var(--radio-control) 0 0}
.nav-tabs .nav-link.active{border-bottom:2px solid var(--app-accent,#4f46e5)}
.dropdown-menu{border-radius:var(--radio-tarjeta);box-shadow:0 10px 30px rgba(15,23,42,.12)}
.modal-content{border-radius:var(--radio-tarjeta)}

/* Acciones frente a estados: «Asignar»/«Reasignar» son botones con borde y color de la app, no etiquetas. */
.accion-app{display:inline-flex;align-items:center;min-height:32px;padding:4px 14px;font-size:13px;font-weight:700;color:var(--app-accent,#4f46e5);background:#fff;border:1.5px solid var(--app-accent,#4f46e5);border-radius:var(--radio-control);cursor:pointer}
.accion-app:hover{background:color-mix(in srgb,var(--app-accent,#4f46e5) 10%,#fff)}
/* Rótulos pequeños (p. ej. «Reg. Alumno» en Savia): más grandes y con contraste >=4,5:1. */
.rotulo-pequeno{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:#667085}
