/* Capa final de densidad visual para administración. */
.brand{display:inline-flex;align-items:center;gap:.55rem;font-size:1.05rem!important;font-weight:650!important;letter-spacing:-.025em!important;white-space:nowrap}
.brand .brand-icon{display:grid!important;place-items:center;width:30px!important;height:30px!important;margin:0!important;border:1px solid rgba(255,255,255,.35);border-radius:9px!important;background:rgba(255,196,0,.12)!important;color:#ffc400!important}
.brand-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.brand-copy{color:#fff}.brand-copy em{margin-left:.22rem;color:#ffc400;font-style:normal;font-weight:700}
body:has(.admin-page),body:has(.form-page){font-size:14px}
body:has(.admin-page) .header,body:has(.form-page) .header{height:64px;padding-inline:max(1.25rem,5vw)}
body:has(.admin-page) .header nav,body:has(.form-page) .header nav{gap:1rem}
body:has(.admin-page) .header nav a,body:has(.form-page) .header nav a{font-size:.76rem!important;font-weight:600!important}
body:has(.admin-page) main,body:has(.form-page) main{padding-top:64px}
.admin-page,.form-page{padding-top:1.65rem;padding-bottom:3rem}.admin-page{max-width:1180px}.form-page{max-width:980px}
.admin-section-actions{margin-top:1rem;margin-bottom:-.45rem}.admin-section-actions .button,.form-page>.back{font-size:.82rem!important;font-weight:600!important}.admin-section-actions .button{min-height:40px;padding:.55rem .85rem}.form-page>.back{margin-bottom:1rem}
.admin-page .page-heading{margin-bottom:1.35rem}.admin-page .page-heading h1{font-size:2rem!important;font-weight:700!important;letter-spacing:-.04em}.admin-page .page-heading p:not(.eyebrow){margin:.25rem 0;font-size:.92rem}
.admin-page .eyebrow,.form-page .eyebrow{margin-bottom:.55rem;font-size:.64rem;font-weight:700;letter-spacing:.13em}.admin-page .page-heading .button{min-height:40px;padding:.58rem .9rem;font-size:.84rem;font-weight:650}.student-total{min-width:32px;height:25px;font-size:.76rem;font-weight:650}
.admin-page .card,.form-page .card{border-radius:13px;box-shadow:0 8px 22px rgba(18,64,143,.055)}.admin-page .card{padding:1.35rem 1.5rem}.form-page .card{padding:1.65rem 2rem;border-top-width:4px}.form-page .card h1{margin:.15rem 0 1.2rem;font-size:2.35rem!important;font-weight:700!important;letter-spacing:-.045em}
.admin-page form label,.form-page form label{margin:.7rem 0;font-size:.79rem;font-weight:600}.admin-page input,.admin-page select,.admin-page textarea,.form-page input,.form-page select,.form-page textarea{min-height:43px;margin-top:.3rem;padding:.58rem .75rem;border-radius:8px;font-size:.86rem;font-weight:450}.admin-page label small,.form-page label small{font-size:.7rem;font-weight:450}
.admin-page .button,.form-page .button{min-height:40px;padding:.58rem .9rem;font-size:.84rem;font-weight:650;box-shadow:none}.admin-page .primary,.form-page .primary{box-shadow:0 3px 0 #e4a700}.admin-page .check,.form-page .check{margin:.9rem 0;gap:.5rem;font-weight:550}
.course-form{margin-bottom:1rem}.course-form .grid-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 1rem}.course-form .check{display:inline-flex;margin-right:1rem}.course-form .primary{vertical-align:middle}.admin-course-list article{padding:.8rem .9rem}.admin-course-list strong{font-weight:650}
.students-page .student-reset-form{display:grid;width:100%;max-width:none;margin:0 0 1.1rem;padding:1rem 1.1rem;grid-template-columns:minmax(280px,1.3fr) auto minmax(260px,.8fr);align-items:end;gap:.75rem;border:1px solid #d7e2fa;border-radius:12px;background:#fff}.students-page .student-reset-form label{margin:0;font-size:.78rem;font-weight:600}.students-page .student-reset-form select{height:42px;margin-top:.3rem}.students-page .student-reset-form .button{height:42px;margin:0;font-weight:600}.students-page .student-reset-form small{margin:0;font-size:.72rem;line-height:1.4}
.students-page .toolbar{display:block;width:100%;margin-bottom:1rem}.students-page .toolbar>form:first-child{display:grid;width:100%;max-width:none;grid-template-columns:minmax(240px,1.7fr) minmax(210px,1fr) auto;gap:.6rem}.students-page .toolbar input,.students-page .toolbar select,.students-page .toolbar .button{width:100%;height:42px;margin:0}.students-page .toolbar .button{min-width:96px}
.table-wrap th,.table-wrap td{padding:.78rem .9rem;font-size:.82rem}.table-wrap th{font-size:.66rem;font-weight:650}.status{font-weight:650}.plain-link{font-weight:600}
@media(max-width:850px){.course-form .grid-form{grid-template-columns:1fr 1fr}.students-page .student-reset-form{grid-template-columns:1fr auto}.students-page .student-reset-form small{grid-column:1/-1}}
@media(max-width:700px){body:has(.admin-page) main,body:has(.form-page) main{padding-top:0}.brand{font-size:.88rem!important}.brand .brand-icon{width:27px!important;height:27px!important}.brand-icon svg{width:18px;height:18px}.admin-page,.form-page{padding-top:1.2rem}.form-page .card{padding:1.3rem 1rem}.form-page .card h1{font-size:1.8rem!important}.course-form .grid-form,.students-page .toolbar>form:first-child,.students-page .student-reset-form{grid-template-columns:1fr}.students-page .student-reset-form small{grid-column:auto}.students-page .student-reset-form .button{width:100%}}
