#view-admin-dashboard .aa-section{--aa-color:#1767b8;--aa-strong:#124f86;--aa-soft:#e9f3fc;--aa-line:#bdd5e8;margin:13px 0;border:2px solid var(--aa-line);border-radius:15px;background:#fff;box-shadow:0 6px 18px color-mix(in srgb,var(--aa-color) 10%,transparent);overflow:hidden}
#view-admin-dashboard .aa-section[data-aa-tone="azul"]{--aa-color:#2459c4;--aa-strong:#183f98;--aa-soft:#e9effd;--aa-line:#b8c8ee}
#view-admin-dashboard .aa-section[data-aa-tone="turquesa"]{--aa-color:#008657;--aa-strong:#006843;--aa-soft:#e3f6ed;--aa-line:#a8dcc7}
#view-admin-dashboard .aa-section[data-aa-tone="dorado"]{--aa-color:#dc5c28;--aa-strong:#ad4219;--aa-soft:#fff0e9;--aa-line:#efbea9}
#view-admin-dashboard .aa-section[data-aa-tone="violeta"]{--aa-color:#7b45bf;--aa-strong:#5d2e99;--aa-soft:#f2eafa;--aa-line:#d2bce9}
#view-admin-dashboard .aa-section[data-aa-tone="indigo"]{--aa-color:#4147a9;--aa-strong:#303582;--aa-soft:#ececfa;--aa-line:#c2c3e9}
#view-admin-dashboard .aa-section[data-aa-tone="celeste"]{--aa-color:#007fa8;--aa-strong:#006181;--aa-soft:#e5f5fa;--aa-line:#a9d8e5}
#view-admin-dashboard .aa-section[data-aa-tone="esmeralda"]{--aa-color:#009478;--aa-strong:#00735d;--aa-soft:#e2f8f2;--aa-line:#a3dfd0}
#view-admin-dashboard .aa-section[data-aa-tone="verde"]{--aa-color:#718b18;--aa-strong:#536c0e;--aa-soft:#f2f7df;--aa-line:#cbd99c}
#view-admin-dashboard .aa-section[data-aa-tone="ambar"]{--aa-color:#bd2566;--aa-strong:#95194d;--aa-soft:#fbe8f0;--aa-line:#e8b3ca}
#view-admin-dashboard .aa-toggle{display:grid;width:100%;grid-template-columns:44px minmax(0,1fr) 30px;align-items:center;gap:12px;padding:15px 17px;border:0;background:#fff;color:#203c56;text-align:left;cursor:pointer;transition:.18s ease}
#view-admin-dashboard .aa-toggle{border-left:7px solid var(--aa-color);background:linear-gradient(105deg,color-mix(in srgb,var(--aa-color) 22%,#fff) 0%,color-mix(in srgb,var(--aa-color) 9%,#fff) 58%,#fff 100%)}#view-admin-dashboard .aa-toggle:hover{background:linear-gradient(105deg,color-mix(in srgb,var(--aa-color) 28%,#fff),color-mix(in srgb,var(--aa-color) 12%,#fff) 68%,#fff)}#view-admin-dashboard .aa-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--aa-color) 28%,transparent);outline-offset:-3px}
#view-admin-dashboard .aa-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:11px;background:var(--aa-color);color:#fff;font-size:1rem;box-shadow:0 5px 13px color-mix(in srgb,var(--aa-color) 25%,transparent)}
#view-admin-dashboard .aa-toggle strong,#view-admin-dashboard .aa-toggle small{display:block}#view-admin-dashboard .aa-toggle strong{color:var(--aa-strong);font-size:.94rem}#view-admin-dashboard .aa-toggle small{margin-top:3px;color:color-mix(in srgb,var(--aa-strong) 72%,#64788b);font-size:.7rem;font-weight:600}
#view-admin-dashboard .aa-chevron{justify-self:center;color:var(--aa-color);transition:transform .2s ease}#view-admin-dashboard .aa-section.open .aa-chevron{transform:rotate(180deg)}
#view-admin-dashboard .aa-body{padding:17px;border-top:2px solid var(--aa-line);background:linear-gradient(145deg,var(--aa-soft),#fff 48%)}#view-admin-dashboard .aa-body[hidden]{display:none!important}
#view-admin-dashboard .aa-body .upload-section,#view-admin-dashboard .aa-body .ai-config-card,#view-admin-dashboard .aa-body .nt-channel-config,#view-admin-dashboard .aa-body .ci-upload,#view-admin-dashboard .aa-body .ci-admin-list article,#view-admin-dashboard .aa-body .resource-item{border-color:var(--aa-line)!important}
#view-admin-dashboard .aa-body .btn-primario,#view-admin-dashboard .aa-body .nt-save{border-color:var(--aa-strong)!important;background:var(--aa-strong)!important;color:#fff!important}
#view-admin-dashboard .aa-body .btn-outline:not(.btn-rojo),#view-admin-dashboard .aa-body .nt-test{border-color:var(--aa-line)!important;background:var(--aa-soft)!important;color:var(--aa-strong)!important}
#view-admin-dashboard .aa-body input:focus,#view-admin-dashboard .aa-body select:focus,#view-admin-dashboard .aa-body textarea:focus{border-color:var(--aa-color)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--aa-color) 14%,transparent)!important;outline:none}
#view-admin-dashboard .aa-body .ci-icon,#view-admin-dashboard .aa-body .nt-channel-logo{background:var(--aa-soft)!important;color:var(--aa-strong)!important}
#view-admin-dashboard .aa-body>.ai-config-card,#view-admin-dashboard .aa-body>.ci-admin-card{margin:0;border:0;box-shadow:none;background:transparent;padding:2px}
#view-admin-dashboard .aa-body>h3{display:none}#view-admin-dashboard .aa-body>.upload-section{margin-top:0}
#view-admin-dashboard .aa-password-help{display:flex;gap:11px;margin:0 0 15px;padding:12px 14px;border:1px solid #f0d899;border-radius:11px;background:#fff9e9;color:#735718}
#view-admin-dashboard .aa-password-help>i{margin-top:2px;color:#c58a00}#view-admin-dashboard .aa-password-help strong{display:block;font-size:.8rem}#view-admin-dashboard .aa-password-help p{margin:4px 0 0;font-size:.72rem;line-height:1.45}
#view-admin-dashboard .aa-body>div[style*="overflow-x"]{overflow-x:auto!important}
#view-admin-dashboard .admin-data-table{width:100%;table-layout:auto;border-collapse:separate;border-spacing:0;font-size:.76rem}
#view-admin-dashboard .admin-data-table th{padding:10px 9px;background:var(--aa-soft);color:var(--aa-strong);font-size:.66rem;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}
#view-admin-dashboard .admin-data-table td{padding:9px;vertical-align:middle;line-height:1.3;border-bottom:1px solid #e5ecf2}
#view-admin-dashboard .admin-data-table tbody tr:hover{background:#f7fafc}
#view-admin-dashboard .aa-user,#view-admin-dashboard .aa-dni{color:#214661;white-space:nowrap}
#view-admin-dashboard .aa-email-control{display:flex;min-width:215px;max-width:285px;align-items:center;gap:6px}
#view-admin-dashboard .aa-email-control input{min-width:0!important;width:100%;height:35px;padding:7px 9px!important;border:1px solid #cbd9e4;border-radius:8px;font-size:.73rem}
#view-admin-dashboard .aa-icon-button{display:grid;flex:0 0 35px;width:35px;height:35px;padding:0;place-items:center;border:1px solid var(--aa-line);border-radius:8px;background:var(--aa-soft);color:var(--aa-strong);cursor:pointer}
#view-admin-dashboard .aa-icon-button:hover{background:var(--aa-color);color:#fff}
#view-admin-dashboard .aa-contact strong,#view-admin-dashboard .aa-contact small{display:block;white-space:nowrap}#view-admin-dashboard .aa-contact small{margin-top:3px;color:#6f8092;font-size:.64rem}
#view-admin-dashboard .aa-role{display:inline-flex;padding:4px 7px;border-radius:999px;background:#edf3f8;color:#36566f;font-size:.64rem;font-weight:800;text-transform:capitalize}
#view-admin-dashboard .aa-row-actions{display:flex;min-width:max-content;align-items:center;gap:6px}
#view-admin-dashboard .aa-action{display:inline-flex;height:34px;align-items:center;justify-content:center;gap:6px;padding:0 10px;border:1px solid #c8d8e5;border-radius:8px;background:#fff;color:#345b78;font-size:.68rem;font-weight:800;cursor:pointer}
#view-admin-dashboard .aa-action.manage{border-color:var(--aa-line);background:var(--aa-soft);color:var(--aa-strong)}#view-admin-dashboard .aa-action.manage:hover{border-color:var(--aa-color);background:var(--aa-color);color:#fff}#view-admin-dashboard .aa-action.delete{width:34px;padding:0;border-color:#f0c5c8;background:#fff5f5;color:#b52c36}#view-admin-dashboard .aa-action.delete:hover{background:#b52c36;color:#fff}
#view-admin-dashboard .aa-admin-topbar{display:grid;min-height:54px;grid-template-columns:105px minmax(220px,1fr) 125px auto;align-items:center;gap:10px;margin-bottom:14px;padding:7px 9px;border:1px solid #d8e4ed;border-radius:14px;background:#fff;box-shadow:0 5px 16px rgba(22,55,84,.06)}
#view-admin-dashboard .aa-admin-topbar>.btn-volver{position:static!important;inset:auto!important;display:inline-flex!important;min-width:auto;margin:0!important;padding:9px 12px!important;border:1px solid #efc0c3!important;border-radius:9px!important;background:#fff4f4!important;color:#aa2833!important;box-shadow:none!important;font-size:.72rem!important}
#view-admin-dashboard .aa-admin-topbar>.dash-header{display:contents!important}
#view-admin-dashboard .aa-admin-topbar>.dash-header h2{order:2;display:flex;align-items:center;justify-self:center;gap:7px;margin:0 6px;font-size:1.08rem;white-space:nowrap}
#view-admin-dashboard .aa-admin-topbar>div:not(.dash-header){order:3;margin:0!important;justify-self:stretch}#view-admin-dashboard .aa-admin-topbar>div:not(.dash-header)>.btn{display:inline-flex;width:100%;min-height:36px;align-items:center;justify-content:center;gap:6px;padding:8px 11px;border-radius:9px;font-size:.7rem;white-space:nowrap}
#view-admin-dashboard .aa-admin-topbar>.btn-volver{order:1}
#view-admin-dashboard .aa-admin-topbar .nt-open{order:4;position:relative;overflow:visible;display:inline-flex;min-height:36px;margin-left:auto;padding:8px 13px;border:1px solid #b9d5eb;border-radius:9px;background:#eaf4fc;color:#145d96;font-size:.72rem;font-weight:800;box-shadow:none;animation:aaNotifyPulse 2.4s ease-in-out infinite;white-space:nowrap}
#view-admin-dashboard .aa-admin-topbar .nt-open:after{content:"";position:absolute;inset:-4px;border:2px solid rgba(23,103,184,.32);border-radius:12px;opacity:0;animation:aaNotifyRing 2.4s ease-out infinite;pointer-events:none}
#view-admin-dashboard .aa-admin-topbar .nt-open i{color:#e0a400;animation:aaNotifyBell 2.4s ease-in-out infinite;transform-origin:50% 10%}
@keyframes aaNotifyPulse{0%,70%,100%{box-shadow:0 0 0 rgba(23,103,184,0);transform:translateY(0)}12%{box-shadow:0 5px 16px rgba(23,103,184,.18);transform:translateY(-1px)}}@keyframes aaNotifyRing{0%,18%{opacity:0;transform:scale(.92)}30%{opacity:1}62%,100%{opacity:0;transform:scale(1.08)}}@keyframes aaNotifyBell{0%,12%,28%,100%{transform:rotate(0)}16%{transform:rotate(12deg)}20%{transform:rotate(-12deg)}24%{transform:rotate(7deg)}}
#view-admin-dashboard #adminStats{display:grid;width:100%;max-width:none;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}
#view-admin-dashboard #adminStats .stat-card{min-height:82px;padding:13px 16px;border-width:2px;border-radius:13px;box-shadow:0 4px 13px rgba(22,55,84,.05)}#view-admin-dashboard #adminStats .stat-card:nth-child(1){border-color:#b9cbee;background:#f1f4fc}#view-admin-dashboard #adminStats .stat-card:nth-child(2){border-color:#a9ddce;background:#eef9f5}#view-admin-dashboard #adminStats .stat-card:nth-child(3){border-color:#e8b8cd;background:#fcf0f5}#view-admin-dashboard #adminStats .stat-card:nth-child(4){border-color:#d1bce9;background:#f6f0fb}#view-admin-dashboard #adminStats .numero{font-size:1.4rem}#view-admin-dashboard #adminStats .etiqueta{font-size:.7rem}
@media(max-width:850px){#view-admin-dashboard .aa-admin-topbar{grid-template-columns:auto 1fr auto}#view-admin-dashboard .aa-admin-topbar>div:not(.dash-header){display:none}#view-admin-dashboard #adminStats{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){#view-admin-dashboard .aa-admin-topbar .nt-open,#view-admin-dashboard .aa-admin-topbar .nt-open:after,#view-admin-dashboard .aa-admin-topbar .nt-open i{animation:none}}
@media(max-width:620px){#view-admin-dashboard .aa-toggle{grid-template-columns:40px minmax(0,1fr) 24px;padding:13px 12px}#view-admin-dashboard .aa-toggle small{display:none}#view-admin-dashboard .aa-body{padding:12px}}
/* Modal profesional de gestión del estudiante. */
#modalStudentAdmin{padding:18px;background:rgba(9,28,50,.68);backdrop-filter:blur(5px)}
.student-admin-modal{width:min(720px,96vw)!important;max-width:720px!important;max-height:92vh!important;padding:0!important;border:1px solid #d9e5ef;border-radius:22px!important;background:#f5f8fb!important;box-shadow:0 26px 70px rgba(4,25,48,.28);overflow:auto!important}
.student-admin-close{position:absolute;z-index:3;top:17px;right:17px;display:grid;width:38px;height:38px;place-items:center;border:1px solid #dbe6ef;border-radius:11px;background:#fff;color:#b72935;cursor:pointer;box-shadow:0 4px 12px rgba(31,55,81,.08);transition:.2s ease}
.student-admin-close:hover{background:#fff0f1;transform:translateY(-1px)}
.student-admin-header{display:grid;grid-template-columns:52px minmax(0,1fr);gap:14px;align-items:center;padding:24px 70px 22px 25px;border-bottom:1px solid #dce7ef;background:linear-gradient(135deg,#123f73,#1766aa);color:#fff}
.student-admin-header>span{display:grid;width:50px;height:50px;place-items:center;border:1px solid rgba(255,255,255,.25);border-radius:15px;background:rgba(255,255,255,.14);font-size:1.2rem}
.student-admin-header small{color:#aee9d7;font-size:.61rem;font-weight:900;letter-spacing:.11em}.student-admin-header h3{margin:3px 0!important;color:#fff!important;font-size:1.28rem!important}.student-admin-header p{margin:0;color:rgba(255,255,255,.76);font-size:.73rem;line-height:1.4}
.student-admin-identity{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:13px;align-items:center;margin:18px 20px 12px;padding:15px 16px;border:1px solid #d7e4ed;border-radius:16px;background:#fff;box-shadow:0 6px 18px rgba(30,67,101,.06)}
.student-admin-avatar{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:#e8f3ff;color:#1766aa;font-size:1.1rem}.student-admin-identity small,.student-admin-identity strong,.student-admin-identity>div>span{display:block}.student-admin-identity small{color:#7890a4;font-size:.57rem;font-weight:900;letter-spacing:.1em}.student-admin-identity strong{margin:3px 0;color:#173954;font-size:.91rem;line-height:1.3}.student-admin-identity>div>span{color:#718799;font-size:.66rem}
.student-password-status{display:flex!important;align-items:center;gap:7px;padding:8px 10px;border-radius:10px;background:#fff4d9;color:#8a6200;font-size:.63rem!important;font-weight:900;white-space:nowrap}.student-password-status.personal{background:#e7f7ef;color:#087255}.student-password-status.temporal{background:#fff2d5;color:#8a6000}
.student-admin-section{margin:12px 20px;padding:17px;border:1px solid #d8e4ed;border-radius:17px;background:#fff}.student-admin-section.security{margin-bottom:20px;border-color:#d7d9ef;background:#fefeff}.student-admin-section>header{display:grid;grid-template-columns:39px minmax(0,1fr);gap:10px;align-items:center;margin-bottom:15px}.student-admin-section>header>span{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;background:#e7f3ff;color:#1766aa}.student-admin-section.security>header>span{background:#eeeafa;color:#6a4bb0}.student-admin-section h4{margin:0;color:#193c56;font-size:.86rem}.student-admin-section header p{margin:3px 0 0;color:#718696;font-size:.65rem;line-height:1.4}
.student-admin-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.student-admin-fields .field-wide{grid-column:1/-1}.student-admin-fields label,.student-password-field{display:grid!important;gap:6px;margin:0!important}.student-admin-fields label>span,.student-password-field>span{color:#405b70;font-size:.67rem;font-weight:900}.student-admin-fields input,.student-admin-fields select,.student-password-field input{width:100%!important;min-height:43px;margin:0!important;padding:10px 12px!important;border:1px solid #cbd9e5!important;border-radius:10px!important;background:#f9fbfd!important;color:#18384f!important;font-size:.78rem!important;box-sizing:border-box}.student-admin-fields input:focus,.student-admin-fields select:focus,.student-password-field input:focus{border-color:#2879bd!important;box-shadow:0 0 0 3px rgba(40,121,189,.12)!important;outline:0}.student-password-field small{color:#758893;font-size:.61rem;line-height:1.45}
.student-admin-actions{display:flex;justify-content:flex-end;margin-top:15px}.student-admin-primary,.student-admin-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:41px;padding:10px 16px;border-radius:11px;font-size:.7rem;font-weight:900;cursor:pointer;transition:.2s ease}.student-admin-primary{border:0;background:#0d5ca4;color:#fff;box-shadow:0 7px 14px rgba(13,92,164,.18)}.student-admin-secondary{border:1px solid #7656b3;background:#fff;color:#6642a5}.student-admin-primary:hover,.student-admin-secondary:hover{transform:translateY(-1px)}
@media(max-width:600px){#modalStudentAdmin{padding:8px}.student-admin-header{grid-template-columns:42px 1fr;padding:20px 58px 18px 17px}.student-admin-header>span{width:42px;height:42px}.student-admin-identity{grid-template-columns:44px 1fr;margin:12px}.student-admin-avatar{width:42px;height:42px}.student-password-status{grid-column:1/-1;justify-content:center}.student-admin-section{margin:10px 12px;padding:14px}.student-admin-fields{grid-template-columns:1fr}.student-admin-fields .field-wide{grid-column:auto}.student-admin-actions{justify-content:stretch}.student-admin-primary,.student-admin-secondary{width:100%}}
