/* estilos copiados de el archivo styles de la raiz */
:root{--primary-bg:#f0f4f8;--sidebar-bg:#1a202c;--sidebar-text:#e2e8f0;--sidebar-hover:#2d3748;--sidebar-active:#4c51bf;--text-primary:#334155;--text-secondary:#64748b;--card-border-radius:.75rem;--sidebar-width:250px;--transition-speed:.3s}
body{font-family:'Inter',sans-serif;background-color:var(--primary-bg);color:var(--text-primary)}
.sidebar{background-color:var(--sidebar-bg);color:var(--sidebar-text);width:var(--sidebar-width);flex-shrink:0;padding:1rem;transition:transform var(--transition-speed) ease-in-out,width var(--transition-speed) ease-in-out;position:fixed;top:0;left:0;bottom:0;z-index:1000;overflow-y:auto}
.sidebar.collapsed{width:var(--sidebar-width);transform:translateX(-100%);overflow-x:hidden;transition:transform var(--transition-speed) ease-in-out}
.sidebar.collapsed .nav-link{justify-content:center;padding:.75rem .5rem;text-align:center}
.sidebar.collapsed .nav-link i{margin-right:0;font-size:1.25rem}
.sidebar.collapsed .nav-link span{display:none}
.main-content.collapsed{margin-left:0}
@media (max-width:991.98px){.sidebar{transform:translateX(-100%);width:280px}.sidebar.show{transform:translateX(0)}.main-content{margin-left:0;padding:1rem}.navbar-toggler{display:block}}
.sidebar h1{color:#fff;margin-bottom:2rem}
.sidebar .nav-link{padding:.75rem 1rem;display:flex;align-items:center;border-radius:.5rem;color:var(--sidebar-text);text-decoration:none;transition:background-color .2s ease;margin-bottom:.25rem}
.sidebar .nav-link:hover{background-color:var(--sidebar-hover);color:#fff}
.sidebar .nav-link.active{background-color:var(--sidebar-active);color:#fff;font-weight:600}
.sidebar .nav-link i{margin-right:.75rem;width:16px;text-align:center}
.main-content{flex-grow:1;padding:2rem;margin-left:var(--sidebar-width);min-height:100vh}
.navbar-toggler{display:none;position:fixed;top:1rem;left:1rem;z-index:1001;border:none;background:var(--sidebar-active);color:#fff;padding:.5rem;border-radius:.375rem}
.navbar-toggler:hover{background:#3730a3}
.card{border:none;border-radius:var(--card-border-radius);box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}
.card-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:1.5rem}
.card-body{padding:1.5rem}
.form-control,.form-select{
	border-radius:.375rem;
	border:1px solid #d1d5db;
	padding:.45rem .65rem;
}
.form-control:focus,.form-select:focus{
	border-color:var(--sidebar-active);
	box-shadow:0 0 0 .2rem rgba(13,110,253,.15);
	outline: none;
}
.btn{border-radius:.5rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}
.btn-primary{background:#0D6EFD;border-color:#0D6EFD}
.btn-primary:hover{background:#0b5ed7;border-color:#0b5ed7}
.btn-outline-danger{color:#dc2626;border-color:#dc2626}
.btn-outline-danger:hover{background:#dc2626;border-color:#dc2626;color:#fff}
.list-group-item{border:1px solid #e5e7eb;border-radius:.5rem!important;margin-bottom:.5rem;padding:1rem}
.list-group-item:last-child{margin-bottom:0}
@media (max-width:991.98px){.sidebar{transform:translateX(-100%)}.sidebar.show{transform:translateX(0)}.main-content{margin-left:0}.navbar-toggler{display:block}.main-content{padding:1rem}.sidebar{width:280px}}
.js-wait{visibility:hidden}
.text-primary{color:#0D6EFD!important}
.text-secondary{color:var(--text-secondary)!important}
.fw-semibold{font-weight:600}
.fw-bold{font-weight:700}
.mb-3{margin-bottom:1rem}
.mb-4{margin-bottom:1.5rem}
.mb-5{margin-bottom:2rem}
.me-2{margin-right:.5rem}
.me-3{margin-right:1rem}
.d-flex{display:flex}
.justify-content-between{justify-content:space-between}
.align-items-center{align-items:center}
.w-100{width:100%}
.h-100{height:100%}
.fade-in{animation:fadeIn .5s ease-in}
@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.dashboard-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-bottom:2rem}
@media (max-width:575.98px){.dashboard-stats{grid-template-columns:1fr}}
.stat-card{background:#fff;padding:1.5rem;border-radius:var(--card-border-radius);box-shadow:0 1px 3px 0 rgba(0,0,0,.1);text-align:center}
.stat-card .stat-icon{font-size:1.75rem;color:#0D6EFD}
.stat-card .stat-number{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin:.5rem 0}
.stat-card .stat-label{color:var(--text-secondary);font-size:.875rem}
.avatar-circle{width:36px;height:36px;border-radius:50%;background:#eef2ff;color:#4f46e5;display:flex;align-items:center;justify-content:center}
.activity-list{max-height:400px;overflow-y:auto}
.activity-item{padding:1rem 0;border-bottom:1px solid #e5e7eb}
.activity-item:last-child{border-bottom:none}
.video-upload-form{max-width:600px}
.achievement-list{display:grid;gap:1rem}
.child-card{display:flex;flex-direction:column;height:100%;min-height:320px}

/* tweaks especificos de login para paridad visual */
.login-card{border-radius:1rem;box-shadow:0 24px 48px rgba(13,110,253,.15),0 8px 16px rgba(0,0,0,.06)}
.login-avatar{width:64px;height:64px;border-radius:50%;background:#0D6EFD;color:#fff;display:inline-flex;align-items:center;justify-content:center}
