:root{--tinta:#16202b;--apagado:#5d6b7a;--linea:#dde3ea;--fondo:#f6f8fa;--papel:#fff;--acento:#1f5c8b;--acento-oscuro:#17456a;--alerta:#a8322d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--tinta);background:var(--fondo);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{min-height:100vh;margin:0;line-height:1.5}h1{margin:0 0 .25rem;font-size:1.5rem}h2{margin:0 0 .5rem;font-size:1.05rem}.apagado{color:var(--apagado);font-size:.9rem}.error{color:var(--alerta);font-size:.9rem}.nota{color:var(--apagado);margin-top:1.5rem;font-size:.8rem}.centrado{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.tarjeta{background:var(--papel);border:1px solid var(--linea);border-radius:10px;flex-direction:column;gap:.5rem;width:100%;max-width:26rem;padding:1.75rem;display:flex}.tarjeta.ancha{max-width:none;margin-top:1.5rem}label{margin-top:.5rem;font-size:.85rem;font-weight:600}input:not([type=radio]):not([type=checkbox]),select,textarea{font:inherit;border:1px solid var(--linea);background:var(--papel);color:inherit;border-radius:6px;width:100%;padding:.55rem .7rem}input:not([type=radio]):not([type=checkbox]):focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--acento);outline-offset:1px;border-color:var(--acento)}input[type=radio],input[type=checkbox]{vertical-align:middle;width:1rem;height:1rem;accent-color:var(--acento);margin:0 .4rem 0 0}fieldset{border:1px solid var(--linea);border-radius:6px;margin:.5rem 0 0;padding:.75rem .9rem}fieldset legend{padding:0 .3rem;font-size:.85rem;font-weight:600}:is(fieldset label:has(input[type=radio]),fieldset label:has(input[type=checkbox])){align-items:center;margin-top:.5rem;font-weight:400;display:flex}:is(fieldset label:has(input[type=radio]):first-of-type,fieldset label:has(input[type=checkbox]):first-of-type){margin-top:.25rem}.campo-fila{flex-wrap:wrap;align-items:flex-start;gap:.5rem 1rem;display:flex}.campo-fila>*{flex:10rem;min-width:0}.campo-fila .boton,.campo-fila .boton.secundario{margin-top:0}.acciones-formulario{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-top:.75rem;display:flex}.acciones-formulario .boton,.acciones-formulario .boton.secundario{margin-top:0}.boton{font:inherit;background:var(--acento);color:#fff;cursor:pointer;text-align:center;border:1px solid #0000;border-radius:6px;margin-top:.75rem;padding:.55rem 1rem;font-weight:600;text-decoration:none}.boton:hover:not(:disabled){background:var(--acento-oscuro)}.boton:disabled{opacity:.6;cursor:default}.boton.secundario{color:var(--acento);border-color:var(--linea);background:0 0;margin:0}.pagina{min-height:100vh}.barra{background:var(--papel);border-bottom:1px solid var(--linea);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;padding:.75rem 1.5rem;display:flex}.barra-derecha{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}.contenido{max-width:56rem;margin:0 auto;padding:1.5rem}.contenido-angosto{flex-direction:column;align-items:stretch;max-width:26rem;display:flex}@media (width<=640px){.barra{padding:.65rem 1rem}.barra-derecha{justify-content:flex-start;width:100%}.contenido{padding:1rem}}.tabla{border-collapse:collapse;width:100%;margin-top:.75rem}.tabla th,.tabla td{text-align:left;border-bottom:1px solid var(--linea);padding:.5rem .6rem;font-size:.9rem}.tabla th{text-transform:uppercase;letter-spacing:.03em;color:var(--apagado);font-size:.8rem}code{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.85em}.aviso{background:#fdf8ec;border:1px solid #e3d2a8;border-left:3px solid #b8860b;border-radius:6px;margin-top:1rem;padding:.7rem .9rem;font-size:.9rem}.aviso-graduacion{text-align:center;background:linear-gradient(135deg,#eef8f2 0%,#eaf3fb 100%);border:1px solid #cfe0d8;padding:1.75rem}.aviso-graduacion h2{color:var(--acento-oscuro);font-size:1.3rem}.aviso-graduacion .frase-inspiradora{color:var(--apagado);margin-top:.75rem;font-style:italic}.aviso-graduacion .campo-fila{justify-content:center}select,textarea{font:inherit;border:1px solid var(--linea);background:var(--papel);color:inherit;border-radius:6px;width:100%;padding:.55rem .7rem}textarea{resize:vertical}select:focus-visible,textarea:focus-visible{outline:2px solid var(--acento);outline-offset:1px;border-color:var(--acento)}fieldset{border:1px solid var(--linea);border-radius:8px;margin-top:1rem;padding:.9rem 1rem}legend{padding:0 .3rem;font-size:.85rem;font-weight:600}.fila-curso{grid-template-columns:1fr 1fr 1fr auto;align-items:center;gap:.5rem;margin-top:.5rem;display:grid}.campo-con-sugerencias{position:relative}.sugerencias-curso{z-index:5;background:var(--papel);border:1px solid var(--linea);border-radius:6px;max-height:14rem;margin:0;padding:.25rem;list-style:none;position:absolute;top:calc(100% + .2rem);left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #16202b1f}.sugerencias-curso li+li{margin-top:.1rem}.sugerencias-curso button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.4rem .5rem;display:block}.sugerencias-curso button:hover,.sugerencias-curso button:focus-visible{background:var(--fondo)}.fila-filtros{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-bottom:.75rem;display:flex}.fila-filtros label{margin-top:0}.fila-filtros select{width:auto;min-width:12rem}.grilla-acciones{border-top:1px solid var(--linea);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;margin-top:1rem;padding-top:1rem;display:grid}.grilla-acciones form{flex-direction:column;gap:.25rem;display:flex}.linea-tiempo{margin:.75rem 0 0;padding:0;list-style:none}.linea-tiempo li{border-bottom:1px solid var(--linea);padding:.5rem 0;font-size:.9rem}.linea-tiempo li:last-child{border-bottom:none}.hilo-mensajes{border-top:1px solid var(--linea);margin-top:1rem;padding-top:1rem}.lista-mensajes{flex-direction:column;gap:.5rem;max-height:22rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex;overflow-y:auto}.lista-mensajes li{border:1px solid var(--linea);background:var(--papel);border-radius:8px;padding:.5rem .7rem}.lista-mensajes li.mensaje-propio{border-color:var(--acento);background:#fdf8ec}.lista-mensajes li p{white-space:pre-wrap;margin:.3rem 0 0}.form-mensaje{align-items:flex-start;gap:.5rem;margin-top:.75rem;display:flex}.form-mensaje textarea{flex:1}.notificaciones{position:relative}.notificaciones-panel{border:1px solid var(--linea);background:var(--papel);z-index:20;border-radius:8px;width:22rem;max-width:min(22rem,90vw);max-height:24rem;padding:.75rem;position:absolute;top:calc(100% + .4rem);right:0;overflow-y:auto;box-shadow:0 6px 20px #0000001f}.lista-notificaciones{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.lista-notificaciones li{border:1px solid var(--linea);background:#fdf8ec;border-radius:6px;padding:.5rem .6rem}.lista-notificaciones li p{margin:0 0 .4rem;font-size:.9rem}.notificacion-acciones{gap:.5rem;display:flex}.menu-desplegable{position:relative}.menu-desplegable-panel{border:1px solid var(--linea);background:var(--papel);z-index:20;border-radius:8px;flex-direction:column;gap:.1rem;min-width:14rem;padding:.4rem;display:flex;position:absolute;top:calc(100% + .4rem);right:0;box-shadow:0 6px 20px #0000001f}.menu-desplegable-item{color:var(--tinta);border-radius:6px;padding:.5rem .6rem;font-size:.9rem;text-decoration:none;display:block}.menu-desplegable-item:hover{background:var(--fondo)}.acciones-vinculo{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.acciones-vinculo input[type=text]{font:inherit;border:1px solid var(--linea);background:var(--papel);color:inherit;border-radius:6px;min-width:12rem;padding:.4rem .55rem}.acciones-vinculo .error{width:100%;margin:.2rem 0 0}.badge{border-radius:999px;padding:.1rem .5rem;font-size:.8rem;font-weight:600;display:inline-block}.badge-ok{color:#1e6b2e;background:#e3f3e6}.badge-pendiente{color:#8a6416;background:#fdf8ec}.badge-falta{color:#a02020;background:#fbe4e4}.historial-stats{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1rem;margin-top:1rem;display:grid}.historial-stat{background:var(--papel);border:1px solid var(--linea);border-radius:10px;padding:1rem 1.1rem}.historial-stat .valor{margin:.15rem 0;font-size:1.6rem;font-weight:700}.historial-barra-avance{background:var(--linea);border-radius:999px;height:.4rem;margin-top:.35rem;overflow:hidden}.historial-barra-avance>span{background:#1e6b2e;border-radius:999px;height:100%;display:block}.historial-niveles{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:1.25rem;display:flex}.historial-niveles button{border:1px solid var(--linea);background:var(--papel);cursor:pointer;border-radius:999px;width:2.1rem;height:2.1rem;font-weight:600}.historial-niveles button.activo{background:var(--acento);border-color:var(--acento);color:#fff}.historial-leyenda{color:var(--apagado);flex-wrap:wrap;gap:1rem;margin:.75rem 0 1.25rem;font-size:.85rem;display:flex}.historial-leyenda span{align-items:center;gap:.35rem;display:inline-flex}.punto-categoria{border-radius:999px;width:.6rem;height:.6rem;display:inline-block}.punto-categoria-aprobado{background:#1e6b2e}.punto-categoria-matriculado{background:#1f5c8b}.punto-categoria-solicitado{background:#c26a10}.punto-categoria-riesgo{background:#a02020}.punto-categoria-pendiente{background:#9aa7b4}.historial-ciclos{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1.5rem;margin-top:1rem;display:grid}.historial-grilla-cursos{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.6rem;display:grid}.tarjeta-curso{border:1px solid var(--linea);text-align:left;cursor:pointer;font:inherit;color:inherit;background:var(--fondo);border-radius:8px;padding:.6rem .7rem}.tarjeta-curso .nombre{font-size:.85rem;font-weight:600;display:block}.tarjeta-curso .estado{opacity:.85;font-size:.78rem}.tarjeta-curso.seleccionada{outline:2px solid var(--acento);outline-offset:1px}.tarjeta-curso-aprobado{background:#e3f3e6;border-color:#bfe0c6}.tarjeta-curso-matriculado{background:#e3edf7;border-color:#bcd3ea}.tarjeta-curso-solicitado{background:#fbecd9;border-color:#edcd9d}.tarjeta-curso-riesgo{background:#fbe4e4;border-color:#edbcbc}.tarjeta-curso-pendiente{background:var(--papel)}.historial-panel-curso{border-top:3px solid var(--acento);margin-top:1.5rem}
