:root{--azul-principal:#43b6e8;--azul-claro:#79d1f2;--naranja-principal:#f7931e;--naranja-oscuro:#f36b21;--gris-oscuro:#2f3743;--blanco:#fff;--gris-muy-claro:#f5f7fa;--gris-medio:#64748b;--gris-claro:#e5e7eb;--azul-muy-claro:#eaf8fd;--naranja-suave:#fff4e8;--exito:#22c55e;--advertencia:#f7931e;--error:#ef4444;--info:#43b6e8;--gradiente-azul:linear-gradient(135deg, #43b6e8 0%, #79d1f2 100%);--gradiente-naranja:linear-gradient(135deg, #f7931e 0%, #f36b21 100%);--gradiente-principal:linear-gradient(135deg, #43b6e8 0%, #f7931e 100%);--gradiente-oscuro:linear-gradient(135deg, #2f3743 0%, #3b4759 55%, #1f7aa8 130%);--sombra-sm:0 1px 2px #0f172a0d;--sombra-md:0 10px 28px #2f37431a;--sombra-lg:0 24px 56px #2f374329;--radio-sm:10px;--radio-md:14px;--radio-lg:20px;--font-sans:system-ui, "Segoe UI", Roboto, sans-serif}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-sans);color:var(--gris-oscuro,#2f3743);background:var(--gris-muy-claro,#f5f7fa);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}#root{min-height:100dvh;overflow-x:hidden}.auth-boot{min-height:100dvh;color:var(--gris-medio,#6b7280);font-family:var(--font-sans);place-items:center;padding:1.5rem;font-size:.95rem;display:grid}@media (width<=768px){input,select,textarea,button{font-size:16px}}.toast-stack{z-index:9999;pointer-events:none;flex-direction:column;gap:.65rem;max-width:min(360px,100vw - 2rem);display:flex;position:fixed;top:1.25rem;right:1.25rem}.toast{pointer-events:auto;background:#fff;border:1px solid #2f374314;border-radius:12px;align-items:flex-start;gap:.65rem;padding:.85rem .95rem;animation:.35s both toast-in;display:flex;box-shadow:0 10px 30px #2f374329,0 1px #2f37430f}.toast__icon{color:#fff;background:var(--gris-medio,#64748b);border-radius:6px;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:.75rem;font-weight:700;display:grid}.toast--success .toast__icon{background:#16a34a}.toast--error .toast__icon{background:#dc2626}.toast--warning .toast__icon{background:var(--naranja-principal,#f7931e)}.toast--info .toast__icon{background:var(--azul-cyan,#43abd7)}.toast__msg{color:var(--gris-oscuro,#2f3743);flex:1;margin:0;font-size:.9rem;line-height:1.4}.toast__close{color:var(--gris-medio,#64748b);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 .15rem;font-size:1.15rem;line-height:1}.toast__close:hover{color:var(--gris-oscuro,#2f3743)}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=600px){.toast-stack{max-width:none;inset:auto 1rem 1.25rem}}.app-modal{z-index:1000;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.app-modal__backdrop{cursor:pointer;background:#0f172a8c;border:none;position:absolute;inset:0}.app-modal__card{z-index:1;background:var(--blanco,#fff);text-align:center;border-radius:18px;width:100%;max-width:400px;padding:1.75rem 1.5rem 1.35rem;animation:.18s app-modal-in;position:relative;box-shadow:0 24px 60px #0f172a47}.app-modal__icon{border-radius:50%;place-items:center;width:48px;height:48px;margin:0 auto .85rem;font-size:1.25rem;font-weight:800;display:grid}.app-modal__icon--info{background:var(--azul-muy-claro,#eaf8fd);color:var(--azul-principal,#43b6e8)}.app-modal__icon--success{color:#059669;background:#ecfdf5}.app-modal__icon--warning,.app-modal__icon--error{background:var(--naranja-suave,#fff4e8);color:var(--naranja-oscuro,#f36b21)}.app-modal__title{color:var(--gris-oscuro,#2f3743);letter-spacing:-.02em;margin:0 0 .45rem;font-size:1.15rem;font-weight:750}.app-modal__message{color:var(--gris-medio,#64748b);margin:0 0 1.15rem;font-size:.92rem;line-height:1.5}.app-modal__input{border:1.5px solid var(--gris-claro,#e5e7eb);width:100%;font:inherit;color:var(--gris-oscuro,#2f3743);text-align:left;border-radius:12px;outline:none;margin:0 0 1.15rem;padding:.75rem .9rem;font-size:.95rem}.app-modal__input:focus{border-color:var(--azul-principal,#43b6e8)}.app-modal__actions{justify-content:center;gap:.6rem;display:flex}.app-modal__btn{min-width:110px;font:inherit;cursor:pointer;border:none;border-radius:12px;padding:.7rem 1.1rem;font-size:.9rem;font-weight:700}.app-modal__btn--primary{background:var(--naranja-principal,#f7931e);color:#fff;box-shadow:0 8px 18px #f7931e47}.app-modal__btn--warn{background:var(--naranja-oscuro,#f36b21);color:#fff}.app-modal__btn--ghost{background:var(--gris-muy-claro,#f5f7fa);color:var(--gris-oscuro,#2f3743);border:1px solid var(--gris-claro,#e5e7eb)}.app-modal__btn:hover{filter:brightness(1.03)}@keyframes app-modal-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=480px){.app-modal{align-items:flex-end;padding:.85rem}.app-modal__card{border-radius:16px 16px 12px 12px;max-width:none;padding:1.4rem 1.15rem 1.15rem}.app-modal__actions{flex-direction:column-reverse}.app-modal__btn{width:100%;min-height:48px}.app-modal__input{font-size:16px}}.field-alert{background:#fff7ed;border:1px solid #fdba74;border-radius:8px;align-items:center;gap:.45rem;margin-top:.45rem;padding:.45rem .6rem;animation:.25s field-alert-in;display:flex}.field-alert__icon{color:#fff;background:var(--naranja-principal,#f7931e);border-radius:5px;flex-shrink:0;place-items:center;width:18px;height:18px;font-size:.7rem;font-weight:700;display:grid}.field-alert__text{color:#9a3412;font-size:.8rem;line-height:1.3}.login-field--invalid input,.login-field input.login-input--invalid{background:#fff7ed;border-color:#f97316}@keyframes field-alert-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.recover-modal{z-index:100;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.recover-modal__backdrop{cursor:pointer;background:#2f37438c;border:none;position:absolute;inset:0}.recover-modal__card{z-index:1;background:var(--blanco,#fff);border-radius:14px;width:100%;max-width:400px;padding:2rem;position:relative;box-shadow:0 20px 50px #0003}.recover-modal__close{background:var(--gris-muy-claro,#f5f7fa);width:32px;height:32px;color:var(--gris-oscuro,#2f3743);cursor:pointer;border:none;border-radius:8px;font-size:1.4rem;line-height:1;position:absolute;top:.75rem;right:.75rem}.recover-modal__close:hover{background:var(--gris-claro,#e5e7eb)}.recover-modal__title{color:var(--gris-oscuro,#2f3743);margin:0 0 .5rem;font-size:1.35rem;font-weight:700}.recover-modal__text{color:var(--gris-medio,#64748b);margin:0 0 1.5rem;font-size:.9rem;line-height:1.5}.recover-modal__form{flex-direction:column;gap:1rem;display:flex}.recover-modal__field{flex-direction:column;gap:.35rem;display:flex}.recover-modal__field span{color:var(--gris-medio,#64748b);font-size:.8rem;font-weight:500}.recover-modal__field input{color:var(--gris-oscuro,#2f3743);border:none;border-bottom:1.5px solid var(--gris-claro,#e5e7eb);background:0 0;outline:none;padding:.65rem 0;font-family:inherit;font-size:1rem}.recover-modal__field input:focus{border-bottom-color:var(--azul-principal,#43b6e8)}.recover-modal__btn{color:var(--blanco,#fff);background:var(--naranja-principal,#f7931e);cursor:pointer;border:none;border-radius:10px;margin-top:.25rem;padding:.85rem 1.5rem;font-family:inherit;font-size:.95rem;font-weight:600;transition:opacity .2s,transform .15s}.recover-modal__btn:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.recover-modal__btn:disabled{opacity:.65;cursor:not-allowed}.recover-modal__error{color:var(--error,#ef4444);background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:0;padding:.75rem 1rem;font-size:.875rem}.recover-modal__success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin:0;padding:.75rem 1rem;font-size:.9rem}.login{height:100svh;max-height:100svh;display:flex;position:relative;overflow:hidden}html.login-no-scroll,body.login-no-scroll{overscroll-behavior:none;height:100%;overflow:hidden}.login *{scrollbar-width:none;-ms-overflow-style:none}.login ::-webkit-scrollbar{width:0;height:0;display:none}.login-back{z-index:20;color:#fff;cursor:pointer;text-shadow:0 1px 8px #00000073;background:0 0;border:none;margin:0;padding:.35rem .5rem;font-family:inherit;font-size:.95rem;font-weight:600;transition:opacity .15s;position:absolute;top:1.25rem;left:1.25rem}.login-back:hover:not(:disabled){opacity:.85}.login-back:disabled{opacity:.5;cursor:not-allowed}.login-hero{flex-direction:column;flex:1.47;justify-content:center;align-items:center;min-height:280px;display:flex;position:relative;overflow:hidden}.login-hero__bg{background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.login-hero:after{content:"";-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#6b728040;position:absolute;inset:0}.login-hero__content{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:1.6rem;max-width:420px;padding:2.5rem;display:flex;position:relative}.login-hero__logo{object-fit:contain;filter:brightness(0)invert()drop-shadow(0 6px 16px #00000059);width:56px;height:56px}.login-hero__quote{color:var(--blanco,#fff);text-shadow:0 2px 12px #00000073;margin:0}.login-hero__quote p{letter-spacing:-.02em;margin:0 0 .75rem;font-size:1.35rem;font-weight:500;line-height:1.45}.login-hero__quote footer{opacity:.85;font-size:.9rem;font-style:italic}.login-hero__copy{z-index:2;text-align:center;color:#ffffffe6;text-shadow:0 2px 10px #00000073;margin:0;font-size:.8rem;position:absolute;bottom:1.5rem;left:0;right:0}.login-panel{background:var(--blanco,#fff);flex:.53;justify-content:center;align-items:center;padding:2rem 1.5rem;display:flex;position:relative;overflow:hidden}.login-panel__inner{width:100%;max-width:380px}.login-panel__brand{flex-direction:column;align-items:center;gap:.35rem;margin-bottom:1.25rem;display:flex}.login-panel__logo{object-fit:contain;border-radius:10px;width:48px;height:48px}.login-header{text-align:center}.login-brand{color:var(--gris-oscuro,#2f3743);letter-spacing:-.03em;margin:0;font-size:1.5rem;font-weight:700}.login-title{color:var(--gris-oscuro,#2f3743);letter-spacing:-.02em;margin:0 0 .5rem;font-size:1.75rem;font-weight:600}.login-subtitle{color:var(--gris-medio,#64748b);margin:0 0 2rem;font-size:.95rem;line-height:1.5}.login-form{flex-direction:column;gap:1.25rem;display:flex}.login-form__error{color:var(--error,#ef4444);background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:0;padding:.75rem 1rem;font-size:.875rem}.login-field{flex-direction:column;gap:.35rem;display:flex}.login-field__label{color:var(--gris-medio,#64748b);font-size:.8rem;font-weight:500}.login-field input{width:100%;color:var(--gris-oscuro,#2f3743);border:none;border-bottom:1.5px solid var(--gris-claro,#e5e7eb);background:0 0;outline:none;padding:.65rem 0;font-family:inherit;font-size:1rem;transition:border-color .2s}.login-field input::placeholder{color:#a8b0bc}.login-field input:focus{border-bottom-color:var(--azul-principal,#43b6e8)}.login-field__password{align-items:center;display:flex;position:relative}.login-field__password input{padding-right:2.75rem}.login-field__toggle{z-index:2;color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:color .15s,background .15s;display:inline-flex;position:absolute;bottom:.35rem;right:0}.login-field__toggle:hover:not(:disabled){color:var(--azul-principal,#43b6e8);background:#f1f5f9}.login-field__toggle:disabled{opacity:.5;cursor:not-allowed}.login-remember{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:.65rem;margin:.1rem 0 .25rem;display:flex}.login-remember input{width:1.05rem;height:1.05rem;accent-color:var(--naranja-principal,#f7931e);cursor:pointer;flex-shrink:0;margin-top:.15rem}.login-remember span{color:var(--gris-oscuro,#2f3743);flex-direction:column;gap:.1rem;font-size:.9rem;font-weight:500;line-height:1.3;display:flex}.login-remember small{color:var(--gris-medio,#6b7280);font-size:.75rem;font-weight:400}.login-btn{cursor:pointer;border:none;border-radius:12px;width:100%;margin-top:0;padding:.9rem 1.25rem;font-family:inherit;font-size:.95rem;font-weight:600;transition:opacity .2s,transform .15s,background .15s,box-shadow .15s}.login-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.login-btn--primary{color:var(--blanco,#fff);background:var(--naranja-principal,#f7931e);box-shadow:0 8px 20px #f7931e47}.login-btn--primary:hover:not(:disabled){background:var(--naranja-oscuro,#f36b21);transform:translateY(-1px)}.login-divider{color:var(--gris-medio,#64748b);align-items:center;gap:.75rem;margin:.35rem 0;font-size:.78rem;font-weight:600;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--gris-claro,#e5e7eb);flex:1;height:1px}.login-btn--google{width:100%;color:var(--gris-oscuro,#2f3743);border:1.5px solid var(--gris-claro,#e5e7eb);box-shadow:none;background:#fff;justify-content:center;align-items:center;gap:.55rem;text-decoration:none;display:inline-flex}.login-btn--google:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-1px)}.login-btn--resend{color:var(--gris-oscuro,#2f3743);background:#f8fafc;border:1px solid #e5e7eb;font-weight:560}.login-btn--resend:hover:not(:disabled){background:#f1f5f9;border-color:#cbd5e1}.login-btn--resend:disabled{color:#94a3b8;background:#f8fafc;border-color:#e5e7eb}.otp-actions{flex-direction:column;gap:.75rem;margin-top:.5rem;display:flex}.otp-form{gap:1rem}.otp-step{animation:.45s both otp-enter}.otp-icon{place-items:center;width:72px;height:72px;margin:0 auto 1.25rem;display:grid;position:relative}.otp-icon__ring{background:linear-gradient(135deg,#fff4e8,#eaf8fd);border-radius:50%;animation:2s ease-in-out infinite otp-pulse;position:absolute;inset:0}.otp-icon__mail{z-index:1;font-size:1.75rem;animation:2.4s ease-in-out infinite otp-float;position:relative}.otp-email{color:var(--gris-oscuro,#2f3743);word-break:break-all}.otp-timer{margin:0 0 1.25rem}.otp-timer__bar{background:#e5e7eb;border-radius:999px;height:4px;overflow:hidden}.otp-timer__bar span{border-radius:inherit;background:linear-gradient(90deg,#f7931e,#43b6e8);height:100%;transition:width 1s linear;display:block}.otp-timer--expired .otp-timer__bar span{background:#ef4444}.otp-timer__text{text-align:center;color:var(--gris-medio,#64748b);margin:.5rem 0 0;font-size:.8rem;font-weight:500}.otp-timer--expired .otp-timer__text{color:#dc2626}.otp-fallback{text-align:center;background:#fff7ed;border:1px solid #fdba74;border-radius:12px;margin:0 0 .75rem;padding:.85rem 1rem}.otp-fallback__label{color:#9a3412;margin:0 0 .35rem;font-size:.8rem}.otp-fallback__code{letter-spacing:.35em;color:#2f3743;font-variant-numeric:tabular-nums;margin:0;font-size:1.5rem;font-weight:700}.otp-boxes{justify-content:center;gap:.5rem;margin-bottom:.35rem;display:flex}.otp-box{text-align:center;width:44px;height:52px;color:var(--gris-oscuro,#2f3743);background:#f8fafc;border:1.5px solid #e5e7eb;border-radius:12px;outline:none;padding:0;font-family:inherit;font-size:1.35rem;font-weight:700;transition:border-color .2s,box-shadow .2s,transform .15s,background .2s;animation:.4s both otp-box-in}.otp-box:first-child{animation-delay:50ms}.otp-box:nth-child(2){animation-delay:.1s}.otp-box:nth-child(3){animation-delay:.15s}.otp-box:nth-child(4){animation-delay:.2s}.otp-box:nth-child(5){animation-delay:.25s}.otp-box:nth-child(6){animation-delay:.3s}.otp-box:focus{border-color:var(--azul-principal,#43b6e8);background:#fff;transform:translateY(-2px);box-shadow:0 0 0 3px #43b6e833}.otp-box--filled{border-color:var(--naranja-principal,#f7931e);background:#fff4e8}.otp-box--disabled{opacity:.55;cursor:not-allowed}.otp-form .login-btn{margin-top:.35rem}@keyframes otp-enter{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes otp-box-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes otp-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.06)}}@keyframes otp-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.login-forgot{color:var(--gris-medio,#64748b);text-align:center;margin:1.75rem 0 0;font-size:.85rem}.login-forgot__link{font:inherit;color:var(--gris-oscuro,#2f3743);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:0;font-weight:500;text-decoration:underline}.login-forgot__link:hover{color:var(--naranja-principal,#f7931e)}.login-splash{z-index:200;background:var(--gris-oscuro,#2f3743);flex-direction:column;justify-content:center;align-items:center;gap:1.25rem;animation:.5s .1s forwards paused splash-out;display:flex;position:fixed;inset:0}.login-splash[aria-busy=true]{animation-play-state:running}.login-splash__logo{object-fit:contain;width:44px;height:44px;animation:1.2s ease-in-out infinite logo-pulse}.login-splash__bar{background:#ffffff26;border-radius:999px;width:160px;height:4px;overflow:hidden}.login-splash__fill{border-radius:inherit;background:var(--naranja-principal,#f7931e);height:100%;transition:width .15s;display:block}.login-splash__text{color:#ffffffbf;margin:0;font-size:.85rem}.login--hidden{opacity:0;pointer-events:none}.login--ready{opacity:1;transition:opacity .45s}.login-hero__content--animate{animation:.6s .1s both fade-up}.login-panel--animate{animation:.6s .2s both fade-up}.login-btn__loading{justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.login-spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}.login-panel--busy .login-panel__inner{filter:blur(1.5px);opacity:.55;pointer-events:none;transition:opacity .25s,filter .25s}.login-busy{z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff8c;place-items:center;padding:1.25rem;animation:.28s login-busy-in;display:grid;position:absolute;inset:0}.login-busy__card{text-align:center;background:#fff;border-radius:20px;flex-direction:column;align-items:center;gap:.45rem;width:min(100%,260px);padding:1.35rem 1.2rem 1.2rem;display:flex;box-shadow:0 18px 40px #0f172a1f}.login-busy__orbit{border:3px solid #f7931e33;border-top-color:var(--naranja-principal,#f7931e);border-radius:50%;place-items:center;width:56px;height:56px;margin-bottom:.35rem;animation:.85s linear infinite spin;display:grid;position:relative}.login-busy__orbit--ok{border-color:#43b6e838;border-top-color:var(--azul-principal,#43b6e8)}.login-busy__core{background:var(--naranja-principal,#f7931e);border-radius:50%;width:14px;height:14px;animation:1.1s ease-in-out infinite login-core-pulse}.login-busy__orbit--ok .login-busy__core{background:var(--azul-principal,#43b6e8)}.login-busy__title{color:#1e293b;margin:0;font-size:1rem;font-weight:750}.login-busy__sub{color:#64748b;margin:0;font-size:.82rem}.login-busy__dots{gap:.35rem;margin-top:.35rem;display:inline-flex}.login-busy__dots i{background:var(--naranja-principal,#f7931e);border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite login-dot}.login-busy__dots i:nth-child(2){animation-delay:.15s}.login-busy__dots i:nth-child(3){animation-delay:.3s}.login-busy__bars{align-items:flex-end;gap:4px;height:18px;margin-top:.4rem;display:inline-flex}.login-busy__bars i{background:var(--azul-principal,#43b6e8);border-radius:999px;width:4px;height:8px;animation:.9s ease-in-out infinite login-bar}.login-busy__bars i:nth-child(2){animation-delay:.1s}.login-busy__bars i:nth-child(3){animation-delay:.2s}.login-busy__bars i:nth-child(4){animation-delay:.3s}.otp-step--busy .otp-boxes{opacity:.55}.otp-icon--busy .otp-icon__ring{animation:.9s ease-in-out infinite otp-pulse}.otp-boxes--busy .otp-box--filled{animation:1s ease-in-out infinite otp-box-glow}@keyframes login-busy-in{0%{opacity:0}to{opacity:1}}@keyframes login-core-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(.7)}}@keyframes login-dot{0%,80%,to{opacity:.4;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}@keyframes login-bar{0%,to{opacity:.45;height:7px}50%{opacity:1;height:18px}}@keyframes otp-box-glow{0%,to{box-shadow:0 0 #43b6e833}50%{box-shadow:0 0 0 4px #43b6e826}}.login-form__error--shake{animation:.4s shake}@keyframes spin{to{transform:rotate(360deg)}}@keyframes logo-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.06)}}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}@keyframes splash-out{to{opacity:0;visibility:hidden}}@media (width<=900px){.login{flex-direction:column;height:100dvh;max-height:100dvh;overflow:hidden}.login-back{top:max(.65rem, env(safe-area-inset-top));left:max(.65rem, env(safe-area-inset-left));min-height:40px;padding:.45rem .55rem}.login-hero{flex:none;min-height:28vh;max-height:28vh}.login-hero__content{padding:1.25rem 1.1rem}.login-hero__logo{width:44px;height:44px}.login-hero__quote p{font-size:1rem;line-height:1.35}.login-hero__quote footer{font-size:.78rem}.login-panel{-webkit-overflow-scrolling:touch;min-height:0;padding:1.35rem 1.15rem max(1.75rem, env(safe-area-inset-bottom));flex:1;overflow-y:auto}.login-panel__logo{width:36px;height:36px}.login-title{font-size:1.35rem}.login-subtitle{font-size:.88rem}.login-field input{min-height:46px;font-size:16px}.login-btn,.login-btn--google{min-height:48px}.login-forgot{margin-top:1.25rem;padding-bottom:.25rem}}@media (width<=480px){.login-hero{min-height:22vh;max-height:22vh}.login-hero__quote p{font-size:.92rem}.login-panel{padding:1.15rem 1rem max(1.5rem, env(safe-area-inset-bottom))}.login-header{margin-bottom:1rem}.otp-boxes{gap:.35rem}.otp-box{width:2.5rem;height:2.85rem;font-size:1.15rem}}@media (height<=700px) and (width<=900px){.login-hero{min-height:18vh;max-height:18vh}.login-hero__quote{display:none}}.reset-page{min-height:100dvh;padding:max(1rem, env(safe-area-inset-top)) 1rem max(1.25rem, env(safe-area-inset-bottom));background:radial-gradient(ellipse at 12% 0%, #f7931e24, transparent 42%), radial-gradient(ellipse at 92% 100%, #43b6e824, transparent 40%), var(--gris-muy-claro,#f5f7fa);place-items:center;animation:.5s both reset-page-in;display:grid}@keyframes reset-page-in{0%{opacity:0}to{opacity:1}}.reset-card{background:var(--blanco,#fff);text-align:center;border:1px solid #e8edf3;border-radius:20px;width:100%;max-width:420px;padding:1.85rem 1.5rem 1.65rem;box-shadow:0 18px 44px #2f37431a}.reset-card--enter{animation:.55s cubic-bezier(.22,1,.36,1) both reset-card-in}@keyframes reset-card-in{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.reset-card--form{text-align:left}.reset-card--busy{pointer-events:none}.reset-card--done .reset-card__logo{animation:.55s cubic-bezier(.34,1.56,.64,1) reset-logo-pop}.reset-card__logo{object-fit:contain;width:52px;height:52px;margin:0 auto .75rem;animation:3.2s ease-in-out infinite reset-logo-float;display:block}@keyframes reset-logo-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes reset-logo-pop{0%{transform:scale(.85)}to{transform:scale(1)}}.reset-card__title{color:var(--gris-oscuro,#2f3743);letter-spacing:-.02em;text-align:center;margin:0 0 .55rem;font-size:1.35rem;font-weight:750;animation:.45s 80ms both reset-fade-up}.reset-card__mail{text-align:center;color:var(--gris-medio,#64748b);word-break:break-word;margin:0 0 1.15rem;font-size:.88rem;font-weight:650;animation:.4s .12s both reset-fade-up}.reset-card__panel--in{animation:.4s both reset-fade-up}@keyframes reset-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.reset-card__boot{flex-direction:column;align-items:center;gap:.85rem;padding:1.6rem 0 .6rem;display:flex}.reset-orbit{border:3px solid #f7931e33;border-top-color:var(--naranja-principal,#f7931e);border-radius:50%;place-items:center;width:54px;height:54px;animation:.85s linear infinite reset-spin;display:grid;position:relative}.reset-orbit__core{background:var(--azul-principal,#43b6e8);border-radius:50%;width:12px;height:12px;animation:1.1s ease-in-out infinite reset-core-pulse}.reset-card__dots{gap:.35rem;display:inline-flex}.reset-card__dots i{background:var(--naranja-principal,#f7931e);border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite reset-dot}.reset-card__dots i:nth-child(2){animation-delay:.15s}.reset-card__dots i:nth-child(3){animation-delay:.3s}@keyframes reset-core-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.65)}}@keyframes reset-dot{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}.reset-card__spinner{border:3px solid #43b6e838;border-top-color:var(--azul-principal,#43b6e8);border-radius:50%;width:32px;height:32px;animation:.75s linear infinite reset-spin}.reset-card__spinner--btn{border-width:2px;border-color:#fff #ffffff4d #ffffff4d;width:16px;height:16px}@keyframes reset-spin{to{transform:rotate(360deg)}}.reset-invalid{text-align:center;flex-direction:column;align-items:center;gap:.65rem;padding-top:.35rem;display:flex}.reset-invalid__icon{color:#dc2626;background:#fef2f2;border-radius:16px;place-items:center;width:56px;height:56px;margin-bottom:.2rem;animation:.4s cubic-bezier(.34,1.56,.64,1) reset-mark-pop;display:grid}.reset-invalid__title{max-width:18rem;color:var(--gris-oscuro,#2f3743);margin:0;font-size:.98rem;font-weight:700;line-height:1.4}.reset-invalid__sub{max-width:17rem;color:var(--gris-medio,#64748b);margin:0 0 .55rem;font-size:.84rem;line-height:1.45}.reset-card__error{color:#b91c1c;text-align:center;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;margin:0 0 .85rem;padding:.75rem 1rem;font-size:.875rem;animation:.4s reset-shake}.reset-card__success{color:#047857;text-align:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;margin:0 0 1rem;padding:.75rem 1rem;font-size:.9rem;font-weight:650;animation:.35s .15s both reset-fade-up}.reset-success-burst{place-items:center;width:64px;height:64px;margin:.35rem auto .85rem;display:grid;position:relative}.reset-success-burst__ring{border:3px solid #22c55e59;border-radius:50%;animation:.7s both reset-ring-expand;position:absolute;inset:0}.reset-success-burst__check{color:#fff;background:#22c55e;border-radius:50%;place-items:center;width:52px;height:52px;animation:.5s cubic-bezier(.34,1.56,.64,1) .1s both reset-check-pop;display:grid}@keyframes reset-ring-expand{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1.15)}}@keyframes reset-check-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.reset-card__form{flex-direction:column;gap:.85rem;display:flex}.reset-card__form--busy{opacity:.72;filter:saturate(.9);transition:opacity .25s,filter .25s}.reset-card__field{animation:.4s both reset-fade-up;animation-delay:calc(.12s + var(--d,0) * 80ms);flex-direction:column;gap:.4rem;display:flex}.reset-card__field>span{color:var(--gris-medio,#64748b);font-size:.78rem;font-weight:650}.reset-card__password{position:relative}.reset-card__password input,.reset-card__field>input{border:1.5px solid var(--gris-claro,#e5e7eb);width:100%;min-height:48px;font:inherit;color:var(--gris-oscuro,#2f3743);background:#fff;border-radius:12px;outline:none;padding:.75rem 3rem .75rem .9rem;font-size:16px;transition:border-color .2s,box-shadow .2s,background .2s}.reset-card__password input:focus,.reset-card__field>input:focus{border-color:var(--azul-principal,#43b6e8);box-shadow:0 0 0 3px #43b6e829}.reset-card__password input.is-ok{border-color:#22c55e;animation:.35s reset-field-ok}.reset-card__password input.is-ok:focus{box-shadow:0 0 0 3px #22c55e29}.reset-card__password input.is-warn{border-color:var(--naranja-principal,#f7931e)}.reset-card__password input.is-bad{border-color:#ef4444;animation:.35s reset-shake}.reset-card__password input.is-bad:focus{box-shadow:0 0 0 3px #ef444424}@keyframes reset-field-ok{0%{box-shadow:0 0 #22c55e59}to{box-shadow:0 0 #0000}}@keyframes reset-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.reset-card__eye{width:40px;height:40px;color:var(--gris-medio,#64748b);cursor:pointer;background:0 0;border:none;border-radius:10px;place-items:center;transition:color .15s,background .15s,transform .2s;display:grid;position:absolute;top:50%;right:.4rem;transform:translateY(-50%)}.reset-card__eye:hover{color:var(--gris-oscuro,#2f3743);background:#f1f5f9;transform:translateY(-50%)scale(1.06)}.reset-card__eye:active{transform:translateY(-50%)scale(.94)}.reset-card__eye svg{transition:transform .25s;display:block}.reset-card__eye:hover svg{transform:scale(1.08)}.reset-strength{grid-template-columns:repeat(5,1fr);gap:.35rem;animation:.35s .16s both reset-fade-up;display:grid}.reset-strength span{transform-origin:0;background:#e2e8f0;border-radius:999px;height:5px;transition:background .25s,transform .3s cubic-bezier(.22,1,.36,1)}.reset-strength[data-level="1"] span:nth-child(-n+1),.reset-strength[data-level="2"] span:nth-child(-n+2),.reset-strength[data-level="3"] span:nth-child(-n+3),.reset-strength[data-level="4"] span:nth-child(-n+4),.reset-strength[data-level="5"] span{transform:scaleX(1)}.reset-strength[data-level="1"] span:nth-child(-n+1){background:#ef4444}.reset-strength[data-level="2"] span:nth-child(-n+2){background:#f97316}.reset-strength[data-level="3"] span:nth-child(-n+3){background:#f7931e}.reset-strength[data-level="4"] span:nth-child(-n+4){background:#43b6e8}.reset-strength[data-level="5"] span{background:#22c55e;animation:1.2s ease-in-out infinite reset-bar-glow}@keyframes reset-bar-glow{0%,to{filter:brightness()}50%{filter:brightness(1.12)}}.reset-rules{background:#f8fafc;border:1px solid #e8edf3;border-radius:12px;gap:.45rem;margin:0;padding:.75rem .85rem;list-style:none;animation:.4s .18s both reset-fade-up;display:grid}.reset-rules__item{color:var(--gris-medio,#64748b);align-items:center;gap:.5rem;font-size:.8rem;transition:color .2s,transform .25s;display:flex}.reset-rules__mark{color:#94a3b8;background:#e2e8f0;border-radius:50%;place-items:center;width:22px;height:22px;transition:background .25s,color .25s,transform .3s cubic-bezier(.34,1.56,.64,1);display:grid}.reset-rules__mark--ok{color:#22c55e;background:#22c55e26;animation:.35s cubic-bezier(.34,1.56,.64,1) reset-mark-pop}@keyframes reset-mark-pop{0%{transform:scale(.6)}to{transform:scale(1)}}.reset-rules__item--ok{color:#15803d;font-weight:600}.reset-check-ico__tick{stroke-dasharray:24;stroke-dashoffset:24px;animation:.35s forwards reset-tick-draw}@keyframes reset-tick-draw{to{stroke-dashoffset:0}}.reset-match-slot{min-height:1.35rem}.reset-match{align-items:center;gap:.4rem;margin:0;font-size:.82rem;font-weight:650;display:inline-flex}.reset-match--ok{color:#15803d}.reset-match--bad{color:#dc2626}.reset-match--pop{animation:.35s cubic-bezier(.34,1.56,.64,1) reset-match-in}.reset-match--shake{animation:.4s reset-shake}@keyframes reset-match-in{0%{opacity:0;transform:translateY(6px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.reset-match svg{flex-shrink:0}.reset-card__btn{background:var(--naranja-principal,#f7931e);color:#fff;width:100%;min-height:50px;font:inherit;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:.5rem;margin-top:.2rem;padding:.85rem 1.25rem;font-weight:700;text-decoration:none;transition:transform .2s,filter .2s,opacity .2s,box-shadow .2s;animation:.4s .22s both reset-fade-up;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 10px 24px #f7931e47}.reset-card__btn--ready:not(:disabled){animation:1.8s ease-in-out infinite reset-btn-ready}@keyframes reset-btn-ready{0%,to{box-shadow:0 10px 24px #f7931e47}50%{box-shadow:0 12px 28px #f7931e6b}}.reset-card__btn--busy:after{content:"";background:linear-gradient(110deg,#0000 30%,#ffffff38 50%,#0000 70%);animation:1s linear infinite reset-shimmer;position:absolute;inset:0}@keyframes reset-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.reset-card__btn:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-2px)}.reset-card__btn:active:not(:disabled){transform:translateY(0)}.reset-card__btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;animation:none;transform:none}.reset-card__link{text-align:center;width:100%;color:var(--azul-principal,#43b6e8);font-weight:650;text-decoration:none;transition:opacity .15s;display:inline-block}.reset-card__link:hover{opacity:.9;text-decoration:underline}@media (prefers-reduced-motion:reduce){.reset-page,.reset-card--enter,.reset-card__logo,.reset-card__title,.reset-card__mail,.reset-card__field,.reset-card__btn,.reset-rules,.reset-strength,.reset-match--pop,.reset-match--shake,.reset-card__error,.reset-orbit,.reset-card__dots i,.reset-card__btn--ready:not(:disabled),.reset-card__btn--busy:after,.reset-rules__mark--ok,.reset-check-ico__tick,.reset-success-burst__ring,.reset-success-burst__check{animation:none!important}}@media (width<=420px){.reset-card{border-radius:16px;padding:1.45rem 1.1rem 1.35rem}}.sidebar{--sidebar-w:260px;--sidebar-w-collapsed:76px;width:var(--sidebar-w);background:var(--blanco,#fff);border-right:1px solid var(--gris-claro,#e5e7eb);flex-direction:column;flex-shrink:0;height:100%;transition:width .22s;display:flex;overflow:hidden}.sidebar--collapsed{width:var(--sidebar-w-collapsed)}.sidebar__top{border-bottom:1px solid var(--gris-claro,#e5e7eb);justify-content:center;align-items:center;gap:.5rem;min-height:68px;padding:1rem .85rem;display:flex}.sidebar--collapsed .sidebar__top{justify-content:center;padding:.85rem .5rem}.sidebar__brand{align-items:center;gap:.7rem;width:100%;min-width:0;display:flex}.sidebar--collapsed .sidebar__brand{justify-content:center}.sidebar__logo{object-fit:contain;border-radius:10px;flex-shrink:0;width:36px;height:36px}.sidebar__brand-text{flex-direction:column;min-width:0;display:flex}.sidebar__name{color:var(--gris-oscuro,#2f3743);letter-spacing:-.02em;font-size:.95rem;font-weight:700;line-height:1.2}.sidebar__tag{color:var(--gris-medio,#64748b);font-size:.7rem}.sidebar__nav{scrollbar-width:thin;flex:1;padding:1rem .75rem;overflow:hidden auto}.sidebar__group+.sidebar__group{margin-top:1.25rem}.sidebar__group-label{letter-spacing:.06em;text-transform:uppercase;color:#94a3b8;margin:0 0 .5rem .65rem;font-size:.68rem;font-weight:700}.sidebar__list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.sidebar__link{color:var(--gris-medio,#64748b);border-radius:12px;align-items:center;gap:.75rem;padding:.7rem .75rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.sidebar--collapsed .sidebar__link{justify-content:center;padding:.75rem}.sidebar__link:hover{background:var(--gris-muy-claro,#f5f7fa);color:var(--gris-oscuro,#2f3743)}.sidebar__link--active{background:var(--naranja-suave,#fff4e8);color:var(--naranja-oscuro,#f36b21)}.sidebar__link--active:hover{color:var(--naranja-oscuro,#f36b21);background:#ffedd5}.sidebar__icon{flex-shrink:0;display:inline-flex}.sidebar__label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (width<=768px){.sidebar{z-index:40;position:absolute;top:0;bottom:0;left:0;box-shadow:8px 0 24px #2f37431f}.sidebar--collapsed{border:none;width:0;padding:0}.sidebar--collapsed .sidebar__top,.sidebar--collapsed .sidebar__nav{display:none}}.topbar{background:var(--blanco,#fff);border-bottom:1px solid var(--gris-claro,#e5e7eb);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;height:68px;padding:0 1.25rem;display:flex}.topbar__left,.topbar__right{align-items:center;gap:.85rem;min-width:0;display:flex}.topbar__menu{width:38px;height:38px;color:var(--gris-oscuro,#2f3743);background:var(--gris-muy-claro,#f5f7fa);border:1px solid var(--gris-claro,#e5e7eb);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;display:none}.topbar__titles{min-width:0}.topbar__eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--gris-medio,#64748b);margin:0;font-size:.7rem;font-weight:600}.topbar__title{color:var(--gris-oscuro,#2f3743);letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;margin:.1rem 0 0;font-size:1.15rem;font-weight:700;overflow:hidden}.topbar__clock{border-right:1px solid var(--gris-claro,#e5e7eb);flex-direction:column;align-items:flex-end;margin-right:.15rem;padding-right:.35rem;line-height:1.15;display:flex}.topbar__time{font-variant-numeric:tabular-nums;color:var(--gris-oscuro,#2f3743);letter-spacing:.02em;font-size:.95rem;font-weight:700}.topbar__date{color:var(--gris-medio,#64748b);text-transform:capitalize;white-space:nowrap;font-size:.7rem;font-weight:500}.topbar__dropdown-wrap{position:relative}.topbar__icon-btn{width:38px;height:38px;color:var(--gris-medio,#64748b);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s;display:inline-flex;position:relative}.topbar__icon-btn:hover,.topbar__icon-btn--active{color:var(--azul-principal,#43b6e8);background:var(--azul-muy-claro,#eaf8fd);border-color:#bae6fd}.topbar__badge{color:#fff;background:var(--naranja-principal,#f7931e);border-radius:999px;min-width:16px;height:16px;padding:0 4px;font-size:.65rem;font-weight:700;line-height:16px;position:absolute;top:4px;right:4px}.topbar__panel{z-index:60;background:var(--blanco,#fff);border:1px solid var(--gris-claro,#e5e7eb);border-radius:14px;animation:.16s topbar-pop;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 16px 40px #2f374324}.topbar__panel--notif{width:min(340px,100vw - 1.5rem)}.topbar__panel--profile{width:220px;padding:.75rem}.topbar__panel-head{border-bottom:1px solid var(--gris-claro,#e5e7eb);justify-content:space-between;align-items:center;padding:.85rem 1rem;display:flex}.topbar__panel-head strong{color:var(--gris-oscuro,#2f3743);font-size:.9rem}.topbar__panel-head span{color:var(--naranja-principal,#f7931e);font-size:.75rem;font-weight:600}.topbar__notif-list{max-height:320px;margin:0;padding:0;list-style:none;overflow:auto}.topbar__notif{border-bottom:1px solid #f1f5f9;gap:.65rem;padding:.85rem 1rem;display:flex}.topbar__notif--unread{background:#fffaf5}.topbar__notif-dot{background:0 0;border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:.4rem}.topbar__notif--unread .topbar__notif-dot{background:var(--naranja-principal,#f7931e)}.topbar__notif-title{color:var(--gris-oscuro,#2f3743);margin:0;font-size:.85rem;font-weight:650}.topbar__notif-text{color:var(--gris-medio,#64748b);margin:.2rem 0 0;font-size:.78rem;line-height:1.4}.topbar__notif-time{color:var(--azul-principal,#43b6e8);margin:.35rem 0 0;font-size:.7rem;font-weight:600}.topbar__panel-footer{border:none;border-top:1px solid var(--gris-claro,#e5e7eb);background:var(--gris-muy-claro,#f5f7fa);width:100%;color:var(--azul-principal,#43b6e8);cursor:pointer;padding:.75rem 1rem;font-family:inherit;font-size:.8rem;font-weight:650}.topbar__panel-footer:hover{background:var(--azul-muy-claro,#eaf8fd)}.topbar__user{cursor:pointer;min-width:0;font:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:.65rem;padding:.25rem .45rem .25rem .25rem;transition:background .15s,border-color .15s;display:flex}.topbar__user:hover,.topbar__user--open{background:var(--gris-muy-claro,#f5f7fa);border-color:var(--gris-claro,#e5e7eb)}.topbar__avatar{color:#fff;background:var(--azul-principal,#43b6e8);border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:.85rem;font-weight:700;display:grid;overflow:hidden}.topbar__avatar-img{object-fit:cover;width:100%;height:100%;display:block}.topbar__avatar--lg{width:42px;height:42px;font-size:1rem}.topbar__user-meta{flex-direction:column;min-width:0;display:flex}.topbar__user-name{color:var(--gris-oscuro,#2f3743);white-space:nowrap;text-overflow:ellipsis;max-width:140px;margin:0;font-size:.82rem;font-weight:700;overflow:hidden}.topbar__user-role{color:var(--gris-medio,#64748b);text-transform:capitalize;margin:0;font-size:.7rem;font-weight:600}.topbar__profile-card{border-bottom:1px solid var(--gris-claro,#e5e7eb);align-items:center;gap:.75rem;margin-bottom:.55rem;padding:.35rem .25rem .75rem;display:flex}.topbar__logout{background:var(--naranja-suave,#fff4e8);width:100%;color:var(--naranja-oscuro,#f36b21);cursor:pointer;text-align:center;border:none;border-radius:10px;margin:0;padding:.55rem .65rem;font-family:inherit;font-size:.8rem;font-weight:650}.topbar__logout:hover{background:#ffedd5}@keyframes topbar-pop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.topbar{height:60px;padding:0 .75rem;padding-left:max(.75rem, env(safe-area-inset-left));padding-right:max(.75rem, env(safe-area-inset-right));gap:.5rem}.topbar__left,.topbar__right{gap:.45rem}.topbar__menu{flex-shrink:0;width:40px;height:40px;display:inline-flex}.topbar__clock,.topbar__user-meta{display:none}.topbar__title{max-width:42vw;font-size:1.05rem}.topbar__eyebrow{font-size:.62rem}}@media (width<=420px){.topbar__eyebrow{display:none}.topbar__title{max-width:38vw;font-size:1rem}.topbar__right{gap:.3rem}}.app-shell{--sidebar-w:260px;--sidebar-w-collapsed:76px;background:var(--gris-muy-claro,#f5f7fa);height:100svh;max-height:100svh;display:flex;position:relative;overflow:hidden}.app-shell__backdrop{display:none}.app-shell__edge-toggle{top:20px;left:calc(var(--sidebar-w) - 14px);z-index:50;width:28px;height:28px;color:var(--gris-medio,#64748b);background:var(--blanco,#fff);border:1px solid var(--gris-claro,#e5e7eb);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:left .22s,color .15s,background .15s,border-color .15s,box-shadow .15s;display:inline-flex;position:absolute;box-shadow:0 2px 8px #2f37431f}.app-shell--collapsed .app-shell__edge-toggle{left:calc(var(--sidebar-w-collapsed) - 14px)}.app-shell__edge-toggle:hover{color:var(--azul-principal,#43b6e8);background:var(--azul-muy-claro,#eaf8fd);border-color:#bae6fd;box-shadow:0 4px 12px #43b6e838}.app-shell__main{flex-direction:column;flex:1;min-width:0;height:100%;display:flex}.app-shell__content{min-height:0;padding:1.25rem;padding-bottom:max(1.25rem, env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;flex:1;overflow:auto}@media (width<=768px){.app-shell__edge-toggle{display:none}.app-shell__backdrop{z-index:30;background:#0f141973;border:none;display:block;position:fixed;inset:0}.app-shell:not(.app-shell--mobile-open) .sidebar{border:none;width:0}.app-shell--mobile-open .sidebar{width:min(280px,86vw)}.app-shell__content{padding:.85rem .85rem max(1rem, env(safe-area-inset-bottom))}.app-shell__main{width:100%}}@media (width<=420px){.app-shell__content{padding:.7rem .7rem max(.9rem, env(safe-area-inset-bottom))}}.campus{max-width:1100px;margin:0 auto}.campus--wide{max-width:none}.campus-head{margin-bottom:1.35rem}.campus-head h2{color:var(--gris-oscuro,#2f3743);letter-spacing:-.02em;margin:0 0 .35rem;font-size:1.45rem;font-weight:700}.campus-head p{color:var(--gris-medio,#64748b);margin:0;font-size:.92rem;line-height:1.5}.campus-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;margin-bottom:1.1rem;display:flex}.campus-filters{flex-wrap:wrap;gap:.45rem;display:flex}.campus-chip{border:1px solid var(--gris-claro,#e5e7eb);background:var(--blanco,#fff);color:var(--gris-medio,#64748b);cursor:pointer;border-radius:999px;padding:.35rem .8rem;font-family:inherit;font-size:.78rem;font-weight:600}.campus-chip--on{background:var(--naranja-suave,#fff4e8);color:var(--naranja-oscuro,#f36b21);border-color:#fdba74}.campus-btn{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:.4rem;padding:.55rem .95rem;font-family:inherit;font-size:.85rem;font-weight:650;display:inline-flex}.campus-btn--primary{background:var(--naranja-principal,#f7931e);color:#fff;box-shadow:0 6px 16px #f7931e38}.campus-btn--ghost{background:var(--blanco,#fff);border:1px solid var(--gris-claro,#e5e7eb);color:var(--gris-oscuro,#2f3743)}.campus-grid{gap:1rem;display:grid}.campus-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.campus-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.campus-stat{background:var(--blanco,#fff);border:1px solid var(--gris-claro,#e5e7eb);border-radius:14px;padding:1.1rem 1.15rem}.campus-stat__label{color:var(--gris-medio,#64748b);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.75rem;font-weight:650}.campus-stat__value{color:var(--gris-oscuro,#2f3743);letter-spacing:-.03em;margin:.35rem 0 0;font-size:1.55rem;font-weight:750}.campus-stat__hint{color:var(--gris-medio,#64748b);margin:.25rem 0 0;font-size:.78rem}.campus-panel{background:var(--blanco,#fff);border:1px solid var(--gris-claro,#e5e7eb);border-radius:14px;overflow:hidden}.campus-panel__head{border-bottom:1px solid var(--gris-claro,#e5e7eb);justify-content:space-between;align-items:center;gap:.75rem;padding:.9rem 1.1rem;display:flex}.campus-panel__head h3{color:var(--gris-oscuro,#2f3743);margin:0;font-size:.95rem}.campus-table{border-collapse:collapse;width:100%}.campus-table th,.campus-table td{text-align:left;border-bottom:1px solid #f1f5f9;padding:.8rem 1.1rem;font-size:.875rem}.campus-table th{text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;background:#fafbfc;font-size:.72rem;font-weight:700}.campus-table td{color:var(--gris-oscuro,#2f3743)}.campus-badge{border-radius:999px;align-items:center;padding:.2rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.campus-badge--ok{color:#047857;background:#ecfdf5}.campus-badge--warn{color:#c2410c;background:#fff7ed}.campus-badge--bad{color:#b91c1c;background:#fef2f2}.campus-badge--info{background:var(--azul-muy-claro,#eaf8fd);color:#0369a1}.campus-badge--muted{color:#64748b;background:#f1f5f9}.campus-empty{text-align:center;color:var(--gris-medio,#64748b);padding:2rem 1.25rem;font-size:.9rem}.campus-list{margin:0;padding:0;list-style:none}.campus-list__item{border-bottom:1px solid #f1f5f9;gap:.85rem;padding:.95rem 1.1rem;display:flex}.campus-list__item:last-child{border-bottom:none}.campus-avatar{color:#fff;background:var(--gradiente-principal);border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:.8rem;font-weight:700;display:grid}.campus-muted{color:var(--gris-medio,#64748b);font-size:.8rem}.campus-form{flex-direction:column;gap:.85rem;padding:1.1rem;display:flex}.campus-field{flex-direction:column;gap:.3rem;display:flex}.campus-field span{color:var(--gris-medio,#64748b);font-size:.78rem;font-weight:600}.campus-field input,.campus-field select,.campus-field textarea{border:1.5px solid var(--gris-claro,#e5e7eb);font:inherit;color:var(--gris-oscuro,#2f3743);background:#fff;border-radius:10px;outline:none;padding:.65rem .8rem;font-size:.9rem}.campus-field textarea{resize:vertical;min-height:100px}.campus-field input:focus,.campus-field select:focus,.campus-field textarea:focus{border-color:var(--azul-principal,#43b6e8)}@media (width<=900px){.campus-grid--3,.campus-grid--2{grid-template-columns:1fr}.campus-table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.campus-table th:nth-child(n+4),.campus-table td:nth-child(n+4){display:none}.campus-head h2{font-size:1.25rem}.campus-btn{min-height:44px}.campus-list__item{flex-wrap:wrap;gap:.55rem;padding:.85rem .9rem}.campus-badge{max-width:100%}}@media (width<=480px){.campus{max-width:100%}.campus-panel__head{flex-wrap:wrap;padding:.8rem .9rem}.campus-hero{border-radius:16px;padding:1.25rem 1.1rem}.campus-hero__title{font-size:1.3rem}.campus-stat{padding:.95rem 1rem}.campus-icon-tile{padding:.8rem}}.campus-hero{isolation:isolate;border-radius:var(--radio-lg,20px);background:var(--gradiente-oscuro);color:#fff;box-shadow:var(--sombra-md);margin-bottom:1.1rem;padding:1.85rem 2rem;position:relative;overflow:hidden}.campus-hero:before,.campus-hero:after{content:"";z-index:-1;border:22px solid #ffffff14;border-radius:50%;position:absolute}.campus-hero:before{border-color:#f7931e2e;width:260px;height:260px;top:-120px;right:-60px}.campus-hero:after{border-color:#43b6e838;width:160px;height:160px;bottom:-90px;right:140px}.campus-hero__eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6;margin:0 0 .4rem;font-size:.72rem;font-weight:700}.campus-hero__title{letter-spacing:-.02em;margin:0 0 .4rem;font-size:1.6rem;font-weight:750}.campus-hero__meta{color:#ffffffc7;max-width:560px;margin:0;font-size:.92rem;line-height:1.5}.campus-hero__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;display:flex}.campus-hero__stats{flex-wrap:wrap;gap:.6rem;display:flex}.campus-hero__stat{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:left;background:#ffffff1a;border:1px solid #ffffff24;border-radius:12px;min-width:96px;padding:.55rem .95rem}.campus-hero__stat strong{letter-spacing:-.02em;font-size:1.05rem;font-weight:750;display:block}.campus-hero__stat span{letter-spacing:.03em;text-transform:uppercase;color:#ffffffa6;font-size:.68rem;font-weight:600}@media (width<=640px){.campus-hero{padding:1.5rem}.campus-hero__row{flex-direction:column;align-items:flex-start}}.campus-stat--icon{align-items:flex-start;gap:.85rem;display:flex}.campus-stat__icon{color:#fff;border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.campus-stat__icon--azul{background:var(--gradiente-azul)}.campus-stat__icon--naranja{background:var(--gradiente-naranja)}.campus-stat__icon--verde{background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%)}.campus-icon-tile{border-radius:var(--radio-md,14px);border:1px solid var(--gris-claro,#e5e7eb);background:var(--blanco,#fff);color:inherit;cursor:pointer;text-align:left;align-items:flex-start;gap:.8rem;padding:.9rem;font-family:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.campus-icon-tile:hover{box-shadow:var(--sombra-sm);border-color:#fdba74;transform:translateY(-1px)}.campus-icon-tile__icon{color:#fff;border-radius:11px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.campus-icon-tile__icon--azul{background:var(--gradiente-azul)}.campus-icon-tile__icon--naranja{background:var(--gradiente-naranja)}.campus-icon-tile__body{flex-direction:column;gap:.15rem;min-width:0;display:flex}.campus-icon-tile__body strong{color:var(--gris-oscuro,#2f3743);font-size:.88rem}.campus-icon-tile__body span{color:var(--gris-medio,#64748b);font-size:.75rem}.campus-avatar--lg{width:64px;height:64px;font-size:1.4rem}.campus-avatar--xl{width:88px;height:88px;font-size:1.9rem}.campus-avatar--sm{width:26px;height:26px;font-size:.68rem}.campus-progress{background:#eef1f5;border-radius:999px;height:8px;overflow:hidden}.campus-progress__fill{border-radius:inherit;background:var(--gradiente-azul);height:100%;transition:width .3s;display:block}.campus-progress--warn .campus-progress__fill{background:var(--gradiente-naranja)}.campus-toggle{cursor:pointer;flex-shrink:0;width:42px;height:24px;display:inline-flex;position:relative}.campus-toggle input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.campus-toggle__track{background:var(--gris-claro,#e5e7eb);border-radius:999px;transition:background .2s;position:absolute;inset:0}.campus-toggle__track:before{content:"";width:18px;height:18px;box-shadow:var(--sombra-sm);background:#fff;border-radius:50%;transition:transform .2s;position:absolute;top:3px;left:3px}.campus-toggle input:checked+.campus-toggle__track{background:var(--gradiente-azul)}.campus-toggle input:checked+.campus-toggle__track:before{transform:translate(18px)}.campus-toggle input:disabled+.campus-toggle__track{opacity:.5;cursor:not-allowed}.campus-toggle input:focus-visible+.campus-toggle__track{box-shadow:0 0 0 3px #43b6e840}.campus-option-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 1.1rem;display:flex}.campus-option-row:last-child{border-bottom:none}.campus-option-row__icon{background:var(--gris-muy-claro,#f5f7fa);width:36px;height:36px;color:var(--gris-medio,#64748b);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.campus-option-row__body{flex:1;min-width:0}.campus-option-row__body strong{color:var(--gris-oscuro,#2f3743);font-size:.86rem;display:block}.campus-option-row__body span{color:var(--gris-medio,#64748b);font-size:.78rem}.campus-option-row__control{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.campus-choice{border:1.5px solid var(--gris-claro,#e5e7eb);cursor:pointer;text-align:left;background:#fff;border-radius:12px;align-items:center;gap:.6rem;padding:.75rem .9rem;font-family:inherit;transition:border-color .15s,background .15s;display:flex}.campus-choice--on{border-color:var(--azul-principal,#43b6e8);background:var(--azul-muy-claro,#eaf8fd)}.campus-choice--disabled{opacity:.55;cursor:not-allowed}.campus-choice__dot{border:1.5px solid var(--gris-claro,#cbd5e1);border-radius:50%;flex-shrink:0;place-items:center;width:16px;height:16px;display:grid}.campus-choice--on .campus-choice__dot{border-color:var(--azul-principal,#43b6e8)}.campus-choice--on .campus-choice__dot:after{content:"";background:var(--azul-principal,#43b6e8);border-radius:50%;width:8px;height:8px}.campus-choice strong{color:var(--gris-oscuro,#2f3743);font-size:.85rem;display:block}.campus-choice span{color:var(--gris-medio,#64748b);font-size:.74rem}.campus-divider{background:#f1f5f9;border:none;height:1px;margin:.25rem 0}.campus-section-foot{border-top:1px solid var(--gris-claro,#e5e7eb);background:#fafbfc;justify-content:flex-end;gap:.6rem;padding:.9rem 1.1rem;display:flex}.campus-empty--icon{flex-direction:column;align-items:center;gap:.6rem;display:flex}.campus-empty__icon{background:var(--gris-muy-claro,#f5f7fa);width:48px;height:48px;color:var(--gris-medio,#94a3b8);border-radius:50%;place-items:center;display:grid}.campus-home__stats{margin-bottom:1.1rem}.campus-home__stat-body{flex:1;min-width:0}.campus-home__stat-progress{margin-top:.65rem}.campus-home__due{align-items:center;gap:.3rem;display:inline-flex}.campus-home__status{letter-spacing:.02em;white-space:nowrap;border-radius:8px;flex-shrink:0;align-self:center;align-items:center;gap:.4rem;padding:.28rem .65rem .28rem .5rem;font-size:.7rem;font-weight:700;line-height:1;display:inline-flex}.campus-home__status i{border-radius:50%;flex-shrink:0;width:6px;height:6px}.campus-home__status--curso{color:var(--naranja-oscuro,#f36b21);background:var(--naranja-suave,#fff4e8)}.campus-home__status--curso i{background:var(--naranja-principal,#f7931e)}.campus-home__status--pub{color:#0b7eab;background:var(--azul-muy-claro,#eaf8fd)}.campus-home__status--pub i{background:var(--azul-principal,#43b6e8)}.campus-home__status--pend{color:var(--gris-medio,#64748b);background:var(--gris-muy-claro,#f5f7fa)}.campus-home__status--pend i{background:var(--gris-medio,#64748b)}.campus-home__subhead{border-top:1px solid var(--gris-claro,#e5e7eb);border-bottom:none}.campus-home__recent{flex-direction:column;gap:.4rem;margin:0;padding:.55rem .7rem .75rem;list-style:none;display:flex}.campus-home__recent-item{color:inherit;background:linear-gradient(135deg,#43b6e812 0%,#f7931e0d 100%);border-radius:12px;grid-template-columns:40px 1fr auto;align-items:center;gap:.75rem;padding:.7rem .75rem;text-decoration:none;transition:background .15s,transform .15s;display:grid}.campus-home__recent-item:hover{background:linear-gradient(135deg,#43b6e824 0%,#f7931e1a 100%);transform:translate(2px)}.campus-home__recent-mark{background:var(--blanco,#fff);width:40px;height:40px;color:var(--azul-principal,#43b6e8);box-shadow:var(--sombra-sm);border-radius:11px;place-items:center;display:grid}.campus-home__recent-body{flex-direction:column;gap:.12rem;min-width:0;display:flex}.campus-home__recent-body strong{color:var(--gris-oscuro,#2f3743);white-space:nowrap;text-overflow:ellipsis;font-size:.86rem;font-weight:700;overflow:hidden}.campus-home__recent-body span{color:var(--gris-medio,#64748b);font-size:.72rem}.campus-home__recent-chevron{color:var(--naranja-principal,#f7931e);opacity:.75}.campus-home__split{grid-template-columns:1.15fr .85fr;gap:1rem;display:grid}.campus-home__links{grid-template-columns:1fr 1fr;gap:.65rem;padding:1rem;display:grid}@media (width<=900px){.campus-home__split,.campus-home__links{grid-template-columns:1fr}}@media (width<=640px){.campus-home__stats.campus-grid--3{grid-template-columns:1fr;gap:.65rem}.campus-home__recent{padding:.45rem .5rem .65rem}.campus-home__recent-item{grid-template-columns:36px 1fr auto;gap:.55rem;padding:.65rem .7rem}.campus-home__recent-mark{width:36px;height:36px}.campus-home__recent-body strong{font-size:.82rem}.campus-home__due{flex-wrap:wrap}}@media (width<=420px){.campus-home__links{gap:.5rem;padding:.75rem}}.notas-hero{isolation:isolate;border-radius:var(--radio-lg,20px);background:var(--gradiente-oscuro);color:#fff;box-shadow:var(--sombra-md);justify-content:space-between;align-items:center;gap:2rem;margin-bottom:1.2rem;padding:1.9rem 2.1rem;display:flex;position:relative;overflow:hidden}.notas-hero:before,.notas-hero:after{content:"";z-index:-1;border-radius:50%;position:absolute}.notas-hero:before{border:26px solid #43b6e824;width:300px;height:300px;top:-150px;left:42%}.notas-hero:after{border:20px solid #f7931e29;width:190px;height:190px;bottom:-110px;left:22%}.notas-hero__eyebrow{letter-spacing:.1em;text-transform:uppercase;color:#79d1f2;margin:0 0 .35rem;font-size:.7rem;font-weight:700}.notas-hero__title{letter-spacing:-.02em;margin:0 0 .3rem;font-size:1.55rem;font-weight:750}.notas-hero__student{color:#ffffffb8;margin:0 0 1.15rem;font-size:.88rem}.notas-hero__facts{flex-wrap:wrap;gap:.6rem;display:flex}.notas-hero__fact{background:#ffffff17;border:1px solid #ffffff21;border-radius:12px;align-items:center;gap:.6rem;padding:.55rem .85rem;display:flex}.notas-hero__fact-icon{color:#79d1f2;background:#ffffff1f;border-radius:9px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.notas-hero__fact strong{font-size:.98rem;font-weight:750;line-height:1.1;display:block}.notas-hero__fact span{color:#ffffffa6;font-size:.7rem}.notas-hero__ring{flex-direction:column;flex-shrink:0;align-items:center;gap:.6rem;display:flex}.notas-ring{width:128px;height:128px;position:relative}.notas-ring__center{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.notas-ring__center strong{letter-spacing:-.03em;font-size:1.75rem;font-weight:800;line-height:1}.notas-ring__center span{color:#fff9;margin-top:.2rem;font-size:.68rem}.notas-scale-chip{letter-spacing:.02em;border-radius:999px;padding:.28rem .75rem;font-size:.72rem;font-weight:700}.notas-scale-chip--alto{color:#86efac;background:#22c55e2e;border:1px solid #22c55e66}.notas-scale-chip--medio{color:#a5e0f7;background:#43b6e82e;border:1px solid #43b6e866}.notas-scale-chip--bajo{color:#ffd199;background:#f7931e2e;border:1px solid #f7931e66}.notas-scale-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.notas-scale-dot--alto{background:var(--exito,#22c55e)}.notas-scale-dot--medio{background:var(--azul-principal,#43b6e8)}.notas-scale-dot--bajo{background:var(--naranja-principal,#f7931e)}.notas-body{grid-template-columns:1.55fr .85fr;align-items:start;gap:1.1rem;display:grid}.notas-courses{flex-direction:column;gap:1rem;display:flex}.notas-course{background:var(--blanco,#fff);border:1px solid var(--gris-claro,#e5e7eb);border-radius:var(--radio-md,14px);transition:box-shadow .15s,border-color .15s;overflow:hidden}.notas-course:hover{box-shadow:var(--sombra-sm);border-color:#cbd5e1}.notas-course__head{align-items:center;gap:.8rem;padding:1rem 1.15rem .8rem;display:flex}.notas-course__icon{background:var(--gradiente-azul);color:#fff;border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.notas-course__titles{flex:1;min-width:0}.notas-course__titles h3{color:var(--gris-oscuro,#2f3743);letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:700}.notas-course__titles span{color:var(--gris-medio,#64748b);font-size:.75rem}.notas-course__avg{align-items:center;gap:.45rem;display:flex}.notas-course__avg strong{color:var(--gris-oscuro,#2f3743);letter-spacing:-.02em;font-size:1.35rem;font-weight:800}.notas-course__bar{background:#eef1f5;border-radius:999px;height:6px;margin:0 1.15rem .35rem;overflow:hidden}.notas-course__fill{border-radius:inherit;height:100%;display:block}.notas-course__fill--alto{background:linear-gradient(90deg,#4ade80,#22c55e)}.notas-course__fill--medio{background:var(--gradiente-azul)}.notas-course__fill--bajo{background:var(--gradiente-naranja)}.notas-course__list{margin:.35rem 0 0;padding:0;list-style:none}.notas-activity{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:.85rem;padding:.75rem 1.15rem;display:flex}.notas-activity__info strong{color:var(--gris-oscuro,#2f3743);font-size:.86rem;display:block}.notas-activity__info span{color:var(--gris-medio,#94a3b8);align-items:center;gap:.3rem;font-size:.73rem;display:inline-flex}.notas-score{font-variant-numeric:tabular-nums;letter-spacing:-.01em;border-radius:10px;flex-shrink:0;padding:.32rem .7rem;font-size:.92rem;font-weight:800}.notas-score small{opacity:.7;font-size:.68rem;font-weight:600}.notas-score--alto{color:#047857;background:#ecfdf5}.notas-score--medio{background:var(--azul-muy-claro,#eaf8fd);color:#0369a1}.notas-score--bajo{background:var(--naranja-suave,#fff4e8);color:#c2410c}.notas-score--pendiente{color:#64748b;background:#f1f5f9;font-size:.74rem;font-weight:700}.notas-side{flex-direction:column;gap:1rem;display:flex;position:sticky;top:0}.notas-scale{margin:0;padding:.35rem 0;list-style:none}.notas-scale li{align-items:center;gap:.75rem;padding:.65rem 1.15rem;display:flex}.notas-scale strong{color:var(--gris-oscuro,#2f3743);font-variant-numeric:tabular-nums;font-size:.86rem;display:block}.notas-scale span:last-child{color:var(--gris-medio,#64748b);font-size:.75rem}.notas-pending__icon{background:var(--naranja-suave,#fff4e8);width:34px;height:34px;color:var(--naranja-oscuro,#f36b21);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.notas-pending strong{color:var(--gris-oscuro,#2f3743);font-size:.86rem}.notas-pending p{margin:.15rem 0 0}.notas-note{background:var(--azul-muy-claro,#eaf8fd);color:#0369a1;border:1px solid #bae6fd;border-radius:12px;align-items:flex-start;gap:.5rem;margin:0;padding:.85rem 1rem;font-size:.78rem;line-height:1.5;display:flex}.notas-note svg{flex-shrink:0;margin-top:.1rem}@media (width<=900px){.notas-hero{flex-direction:column;align-items:flex-start;gap:1.25rem;padding:1.5rem}.notas-hero__ring{align-self:center}.notas-body{grid-template-columns:1fr}.notas-side{position:static}}@media (width<=640px){.notas-hero__facts{flex-direction:column;align-self:stretch}.notas-activity{align-items:flex-start}.notas-hero{border-radius:16px;padding:1.15rem 1rem}.notas-hero__title{font-size:1.25rem}.notas-ring{transform-origin:50%;transform:scale(.92)}}.archivos-storage{margin-bottom:1rem}.archivos-storage__row{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.4rem;display:flex}.archivos-storage__text{color:var(--gris-oscuro,#2f3743);font-size:.8rem;font-weight:650}.archivos-drop{text-align:center;background:#fafbfc;border:1.5px dashed #cbd5e1;border-radius:16px;padding:2rem 1.25rem;transition:border-color .15s,background .15s}.archivos-drop--on{border-color:var(--azul-principal,#43b6e8);background:var(--azul-muy-claro,#eaf8fd);animation:1.4s ease-in-out infinite archivos-pulse}@keyframes archivos-pulse{0%,to{box-shadow:0 0 #43b6e847}50%{box-shadow:0 0 0 10px #43b6e800}}.archivos-drop__icon{color:var(--azul-principal,#43b6e8);margin-bottom:.5rem;transition:transform .2s,color .2s;display:inline-flex}.archivos-drop--on .archivos-drop__icon{color:var(--naranja-principal,#f7931e);transform:scale(1.12)}.archivos-drop p{color:var(--gris-oscuro,#2f3743);margin:0 0 .35rem;font-weight:600}.archivos-drop__btn{color:var(--naranja-principal,#f7931e);font:inherit;cursor:pointer;background:0 0;border:none;font-weight:700;text-decoration:underline}.archivos-filters{border-bottom:1px solid #f1f5f9;padding:.9rem 1.1rem .75rem}.archivos-name{align-items:center;gap:.55rem;font-weight:600;display:inline-flex}.archivos-name svg{color:var(--gris-medio,#64748b);flex-shrink:0}@media (width<=768px){.archivos-storage__row{flex-direction:column;align-items:flex-start;gap:.15rem}}.foros-layout{grid-template-columns:320px 1fr;gap:1rem;min-height:520px;display:grid}.foros-threads .campus-list{max-height:520px;overflow:auto}.foros-thread{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:none;border-bottom:1px solid #f1f5f9;flex-direction:column;align-items:flex-start;gap:.3rem;padding:.9rem 1rem;display:flex}.foros-thread:hover,.foros-thread--on{background:#fffaf5}.foros-thread strong{color:var(--gris-oscuro,#2f3743);font-size:.88rem}.foros-chat{flex-direction:column;min-height:520px;display:flex}.foros-messages{background:#fafbfc;flex-direction:column;flex:1;gap:.85rem;padding:1rem;display:flex;overflow:auto}.foros-msg{gap:.7rem;max-width:85%;display:flex}.foros-msg--me{flex-direction:row-reverse;align-self:flex-end}.foros-msg header{align-items:baseline;gap:.5rem;margin-bottom:.2rem;display:flex}.foros-msg p{border:1px solid var(--gris-claro,#e5e7eb);color:var(--gris-oscuro,#2f3743);background:#fff;border-radius:12px;margin:0;padding:.7rem .85rem;font-size:.88rem;line-height:1.45}.foros-msg--me p{background:var(--naranja-suave,#fff4e8);border-color:#fdba74}.foros-compose{border-top:1px solid var(--gris-claro,#e5e7eb);gap:.55rem;padding:.85rem 1rem;display:flex}.foros-compose input{border:1.5px solid var(--gris-claro,#e5e7eb);font:inherit;border-radius:10px;outline:none;flex:1;padding:.65rem .85rem}.foros-compose input:focus{border-color:var(--azul-principal,#43b6e8)}@media (width<=900px){.foros-layout{grid-template-columns:1fr}}.tablero-board{grid-auto-columns:minmax(240px,280px);grid-auto-flow:column;align-items:start;gap:.85rem;padding-bottom:.75rem;display:grid;overflow-x:auto}.tablero-col{background:#f1f5f9;border-top:4px solid #0000;border-radius:14px;min-height:360px;padding:.65rem}.tablero-col--slate{border-top-color:#94a3b8}.tablero-col--azul{border-top-color:var(--azul-principal,#43b6e8)}.tablero-col--naranja{border-top-color:var(--naranja-principal,#f7931e)}.tablero-col--verde{border-top-color:var(--exito,#22c55e)}.tablero-col__head{justify-content:space-between;align-items:center;margin-bottom:.55rem;padding:.25rem .35rem;display:flex}.tablero-col__head h3{color:var(--gris-oscuro,#2f3743);margin:0;font-size:.85rem}.tablero-col__head span{color:#94a3b8;margin-left:.35rem;font-weight:600}.tablero-col__add{width:28px;height:28px;color:var(--gris-medio,#64748b);cursor:pointer;background:#fff;border:none;border-radius:8px;font-size:1.1rem}.tablero-col__list{flex-direction:column;gap:.55rem;display:flex}.tablero-card{cursor:grab;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:.75rem .8rem;transition:transform .15s,box-shadow .15s,border-color .15s;box-shadow:0 1px 2px #0f172a0a}.tablero-card:hover{border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 10px 20px #0f172a1a}.tablero-card:active{cursor:grabbing}.tablero-card__title{color:var(--gris-oscuro,#2f3743);margin:0 0 .55rem;font-size:.88rem;font-weight:650;line-height:1.35}.tablero-card__meta{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.6rem;display:flex}.tablero-card__meta .campus-badge{text-transform:capitalize}.tablero-card__foot{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.tablero-card__foot .campus-avatar{background:var(--azul-muy-claro,#eaf8fd);color:var(--azul-principal,#43b6e8);font-size:.72rem;font-weight:700}.tablero-card__due{color:var(--gris-medio,#64748b);align-items:center;gap:.3rem;font-size:.74rem;display:inline-flex}.metas-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;display:grid}.metas-card{background:var(--blanco,#fff);border:1px solid var(--gris-claro,#e5e7eb);border-radius:14px;flex-direction:column;gap:.55rem;padding:1.1rem;display:flex}.metas-card__top{flex-wrap:wrap;gap:.4rem;display:flex}.metas-card h3{color:var(--gris-oscuro,#2f3743);letter-spacing:-.01em;margin:0;font-size:1rem}.metas-card p{color:var(--gris-medio,#64748b);flex:1;margin:0;font-size:.86rem;line-height:1.45}.metas-card footer{color:#94a3b8;border-top:1px solid #f1f5f9;justify-content:space-between;gap:.5rem;padding-top:.35rem;font-size:.75rem;font-weight:600;display:flex}.perfil{flex-direction:column;gap:1.4rem;display:flex}.perfil-skeleton{text-align:center;color:var(--gris-medio,#64748b);place-items:center;gap:.85rem;padding:3rem 1rem;display:grid}.perfil-loader{border:3px solid #43b6e840;border-top-color:var(--azul-principal,#43b6e8);border-radius:50%;width:36px;height:36px;animation:.75s linear infinite perfil-spin}.perfil-stage{isolation:isolate;border-radius:var(--radio-lg,20px);background:var(--gris-oscuro,#2f3743);color:#fff;box-shadow:var(--sombra-md);grid-template-columns:1.4fr .9fr;gap:1.5rem;padding:1.75rem 1.85rem;display:grid;position:relative;overflow:hidden}.perfil-stage__glow{pointer-events:none;z-index:-1;background:#43b6e82e;border-radius:50%;height:120%;position:absolute;inset:auto -10% -40% 40%}.perfil-identity{align-items:center;gap:1.25rem;min-width:0;display:flex}.perfil-photo{cursor:pointer;background:#ffffff1a;border:none;border-radius:28px;flex-shrink:0;width:108px;height:108px;padding:0;transition:transform .25s;position:relative;overflow:visible}.perfil-photo:hover{transform:translateY(-3px)scale(1.02)}.perfil-photo:disabled{cursor:wait}.perfil-photo__ring{pointer-events:none;opacity:0;border:2px solid #0000;border-radius:32px;position:absolute;inset:-5px}.perfil-photo--busy .perfil-photo__ring{opacity:1;border-top-color:var(--naranja-principal,#f7931e);border-right-color:#f7931e59;animation:.85s linear infinite perfil-spin}.perfil-photo--busy{animation:1.2s ease-in-out infinite perfil-photo-pulse}.perfil-photo--done .perfil-photo__img,.perfil-photo--done .perfil-photo__initial{animation:.45s perfil-photo-pop}.perfil-photo__img,.perfil-photo__initial{object-fit:cover;background:var(--azul-principal,#43b6e8);color:#fff;border-radius:28px;place-items:center;width:100%;height:100%;font-size:2.2rem;font-weight:750;display:grid}.perfil-photo__overlay{z-index:2;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:#fff;background:#0f172a9e;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;animation:.2s perfil-fade-in;display:flex;position:absolute;inset:0}.perfil-photo__overlay--ok{background:#22c55eb8}.perfil-photo__spinner{border:3px solid #ffffff40;border-top-color:#fff;border-radius:50%;width:28px;height:28px;animation:.7s linear infinite perfil-spin}.perfil-photo__overlay-text{letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:700}.perfil-photo__orb{z-index:3;background:var(--naranja-principal,#f7931e);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;transition:transform .25s;display:grid;position:absolute;box-shadow:0 8px 18px #f36b2159}.perfil-photo__orb--cam{bottom:-6px;right:-6px}.perfil-photo:hover .perfil-photo__orb--cam{transform:rotate(-12deg)scale(1.08)}.perfil-photo--busy .perfil-photo__orb--cam{animation:.9s ease-in-out infinite perfil-cam-bounce}@keyframes perfil-spin{to{transform:rotate(360deg)}}@keyframes perfil-photo-pulse{0%,to{box-shadow:0 0 #f7931e59}50%{box-shadow:0 0 0 10px #f7931e00}}@keyframes perfil-photo-pop{0%{opacity:.7;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes perfil-fade-in{0%{opacity:0}to{opacity:1}}@keyframes perfil-cam-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}.perfil-identity__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--azul-claro,#79d1f2);margin:0 0 .35rem;font-size:.68rem;font-weight:700}.perfil-identity__copy h2{letter-spacing:-.03em;margin:0 0 .25rem;font-size:clamp(1.35rem,2.2vw,1.75rem);font-weight:750}.perfil-identity__mail{color:#ffffffb3;margin:0 0 .85rem;font-size:.88rem}.perfil-pills{flex-wrap:wrap;gap:.45rem;display:flex}.perfil-pill{background:#ffffff1a;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .7rem;font-size:.72rem;font-weight:650;display:inline-flex}.perfil-pill--role{background:#f7931e33;border-color:#f7931e59}.perfil-pill--ok{background:#22c55e2e;border-color:#22c55e59}.perfil-pulse{flex-direction:column;justify-content:center;gap:.55rem;display:flex}.perfil-pulse__item{background:#ffffff14;border:1px solid #ffffff1f;border-radius:14px;align-items:center;gap:.75rem;padding:.7rem .85rem;display:flex}.perfil-pulse__item strong{font-size:.9rem;font-weight:700;line-height:1.2;display:block}.perfil-pulse__item span:last-child{text-transform:uppercase;letter-spacing:.05em;color:#ffffff8c;font-size:.68rem}.perfil-ico{color:inherit;justify-content:center;align-items:center;line-height:0;transition:transform .28s cubic-bezier(.34,1.56,.64,1),color .2s;display:inline-flex}.perfil-ico svg{flex-shrink:0;display:block}.perfil-ico--lg{width:36px;height:36px;color:var(--azul-claro,#79d1f2);background:#ffffff1f;border-radius:12px;flex-shrink:0}.perfil-ico--tile{background:var(--azul-principal,#43b6e8);color:#111;border-radius:12px;flex-shrink:0;width:38px;height:38px}.perfil-pulse__item:hover .perfil-ico,.perfil-pill:hover .perfil-ico,.perfil-field:focus-within .perfil-ico,.perfil-academic__row:hover .perfil-ico,.perfil-secure__btn:hover .perfil-ico,.perfil-save:hover .perfil-ico,.perfil-block-head:hover .perfil-ico{transform:translateY(-2px)rotate(-8deg)scale(1.12)}.perfil-flow{grid-template-columns:1.2fr .9fr;align-items:start;gap:1.5rem;display:grid}.perfil-save-bar{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:.75rem 1rem;display:flex}.perfil-save-hint{color:var(--gris-medio,#64748b);margin:0;font-size:.82rem}.perfil-fields--academic{margin-bottom:1.25rem}.perfil-editor,.perfil-rail{min-width:0}.perfil-block-head{align-items:flex-start;gap:.75rem;margin-bottom:1.1rem;display:flex}.perfil-block-head--sec{margin-top:1.75rem}.perfil-block-head h3{letter-spacing:-.02em;color:var(--gris-oscuro,#2f3743);margin:0 0 .15rem;font-size:1.1rem;font-weight:750}.perfil-block-head p{color:var(--gris-medio,#64748b);margin:0;font-size:.82rem}.perfil-block-head .perfil-ico--lg{background:var(--azul-muy-claro,#eaf8fd);color:var(--azul-principal,#43b6e8)}.perfil-fields{grid-template-columns:1fr 1fr;gap:.9rem 1rem;display:grid}.perfil-field{color:var(--gris-medio,#64748b);flex-direction:column;gap:.4rem;font-size:.78rem;font-weight:650;display:flex}.perfil-field--wide{grid-column:1/-1}.perfil-field>span{align-items:center;gap:.35rem;display:inline-flex}.perfil-field input,.perfil-field textarea{border:none;border-bottom:2px solid var(--gris-claro,#e5e7eb);width:100%;font:inherit;color:var(--gris-oscuro,#2f3743);resize:vertical;background:0 0;border-radius:0;outline:none;padding:.65rem .1rem;font-size:.95rem;font-weight:600;transition:border-color .2s}.perfil-field input:focus,.perfil-field textarea:focus{border-bottom-color:var(--naranja-principal,#f7931e)}.perfil-save{background:var(--naranja-principal,#f7931e);color:#fff;min-height:48px;font:inherit;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:.5rem;margin-top:0;padding:.85rem 1.35rem;font-size:.9rem;font-weight:700;transition:transform .2s,filter .2s;display:inline-flex;box-shadow:0 10px 24px #f7931e47}.perfil-save--busy{min-width:220px}.perfil-save__spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite perfil-spin}.perfil-save:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-2px)}.perfil-save:disabled{opacity:.85;cursor:wait}.perfil-academic{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.perfil-academic__row{border-bottom:1px solid #f1f5f9;align-items:center;gap:.75rem;padding:.65rem .2rem;display:flex}.perfil-academic__row:last-child{border-bottom:none}.perfil-academic__row>div>span{color:var(--gris-medio,#64748b);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:650;display:block}.perfil-academic__row strong{color:var(--gris-oscuro,#2f3743);font-size:.9rem;display:block}.perfil-secure{flex-direction:column;gap:.5rem;display:flex}.perfil-secure__btn{border:1px solid var(--gris-claro,#e5e7eb);background:var(--gris-muy-claro,#f5f7fa);text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.75rem .85rem;transition:background .2s,transform .2s,border-color .2s;display:grid}.perfil-secure__btn:hover{background:var(--azul-muy-claro,#eaf8fd);border-color:#cfeaf6;transform:translate(3px)}.perfil-secure__btn strong{color:var(--gris-oscuro,#2f3743);font-size:.88rem;display:block}.perfil-secure__btn small{color:var(--gris-medio,#64748b);font-size:.72rem;display:block}@media (width<=960px){.perfil-stage,.perfil-flow,.perfil-fields{grid-template-columns:1fr}.perfil-identity{flex-direction:column;align-items:flex-start}.perfil-pulse{grid-template-columns:1fr;gap:.5rem;display:grid}}@media (width<=640px){.perfil{gap:1rem}.perfil-stage{border-radius:16px;gap:1rem;padding:1.15rem 1rem 1.25rem}.perfil-photo{border-radius:22px;width:88px;height:88px}.perfil-photo__img,.perfil-photo__initial{border-radius:22px;font-size:1.75rem}.perfil-photo__orb{width:32px;height:32px}.perfil-identity__copy{width:100%}.perfil-identity__copy h2{word-break:break-word;font-size:1.25rem}.perfil-identity__mail{word-break:break-all;font-size:.82rem}.perfil-pill{padding:.32rem .6rem;font-size:.68rem}.perfil-pulse__item{padding:.65rem .75rem}.perfil-pulse__item strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.perfil-block-head{gap:.65rem;margin-bottom:.9rem}.perfil-block-head h3{font-size:1rem}.perfil-block-head p{font-size:.78rem;line-height:1.4}.perfil-fields{gap:.85rem}.perfil-field input,.perfil-field textarea{padding:.7rem .05rem;font-size:16px}.perfil-save{justify-content:center;width:100%;min-height:48px;padding:.9rem 1rem}.perfil-secure__btn{gap:.6rem;min-height:52px;padding:.7rem .75rem}.perfil-secure__btn:hover{transform:none}.perfil-academic__row strong{word-break:break-word}}@media (width<=420px){.perfil-stage{padding:1rem .85rem}.perfil-pills{gap:.35rem}.perfil-ico--lg,.perfil-ico--tile{border-radius:10px;width:34px;height:34px}}@media (hover:none){.perfil-pulse__item:active .perfil-ico,.perfil-academic__row:active .perfil-ico,.perfil-secure__btn:active .perfil-ico,.perfil-save:active .perfil-ico{transform:translateY(-2px)rotate(-8deg)scale(1.12)}.perfil-photo:hover{transform:none}}.ajustes-panels{flex-direction:column;gap:1rem;display:flex}.ajustes-block{border-bottom:1px solid #f1f5f9;padding:1rem 1.1rem}.ajustes-block:last-child{border-bottom:none}.ajustes-block__label{color:var(--gris-medio,#64748b);margin:0 0 .6rem;font-size:.78rem;font-weight:650}.ajustes-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.ajustes-choices .campus-choice{width:100%}.ajustes-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;padding:1.1rem;display:grid}@media (width<=900px){.ajustes-choices,.ajustes-fields{grid-template-columns:1fr}}.usuarios{padding-bottom:max(2rem, env(safe-area-inset-bottom));flex-direction:column;gap:1.35rem;display:flex}.usuarios-boot,.usuarios-empty{text-align:center;color:var(--gris-medio,#64748b);place-items:center;gap:.65rem;padding:2.5rem 1rem;display:grid}.usuarios-boot p,.usuarios-empty p{max-width:22rem;margin:0;font-size:.9rem;line-height:1.45}.usuarios-empty__ico{background:var(--azul-muy-claro,#eaf8fd);width:56px;height:56px;color:var(--azul-principal,#43b6e8);border-radius:16px;place-items:center;display:grid}.usuarios-empty strong{color:var(--gris-oscuro,#2f3743);font-size:1rem}.usuarios-spinner{border:3px solid #43b6e838;border-top-color:var(--azul-principal,#43b6e8);border-radius:50%;width:32px;height:32px;animation:.75s linear infinite usuarios-spin}.usuarios-spinner--btn{border-width:2px;border-color:#fff #ffffff4d #ffffff4d;width:18px;height:18px}.usuarios-spinner--sm{border-width:2px;border-color:#43b6e840;border-top-color:var(--azul-principal,#43b6e8);width:14px;height:14px}@keyframes usuarios-spin{to{transform:rotate(360deg)}}.usuarios-hero{isolation:isolate;background:var(--gris-oscuro,#2f3743);color:#fff;box-shadow:var(--sombra-md,0 12px 28px #0f172a1f);border-radius:20px;grid-template-columns:1.35fr 1fr;align-items:end;gap:1.35rem;padding:1.55rem 1.45rem 1.45rem;display:grid;position:relative;overflow:hidden}.usuarios-hero__glow{pointer-events:none;z-index:-1;background:#43b6e833;border-radius:50%;height:140%;position:absolute;inset:auto -15% -55% 35%}.usuarios-hero__eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--azul-claro,#79d1f2);margin:0 0 .4rem;font-size:.7rem;font-weight:700}.usuarios-hero__title{letter-spacing:-.04em;margin:0;font-size:clamp(1.75rem,3.5vw,2.45rem);font-weight:780;line-height:1.08}.usuarios-hero__stats{grid-template-columns:repeat(3,1fr);gap:.55rem;display:grid}.usuarios-stat{text-align:center;background:#ffffff12;border:1px solid #ffffff1a;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:.55rem;min-width:0;padding:.85rem .7rem;display:flex}.usuarios-stat--accent{background:#f7931e24;border-color:#f7931e73}.usuarios-stat__ico{width:36px;height:36px;color:var(--azul-claro,#79d1f2);background:#ffffff1a;border-radius:10px;flex-shrink:0;place-items:center;line-height:0;display:grid}.usuarios-stat__ico svg{margin:auto;display:block}.usuarios-stat--accent .usuarios-stat__ico{color:#fff;background:#f7931e40}.usuarios-stat strong{letter-spacing:-.03em;font-size:1.25rem;font-weight:750;line-height:1.1;display:block}.usuarios-stat span{text-transform:uppercase;letter-spacing:.05em;color:#ffffff8c;white-space:nowrap;text-overflow:ellipsis;font-size:.65rem;display:block;overflow:hidden}.usuarios-layout{grid-template-columns:minmax(300px,.95fr) minmax(320px,1.2fr);align-items:start;gap:1.35rem;display:grid}.usuarios-compose,.usuarios-roster{background:#fff;border:1px solid #e8edf3;border-radius:18px;min-width:0;padding:1.25rem 1.2rem 1.3rem;box-shadow:0 8px 24px #0f172a0a}.usuarios-compose--ok{animation:.7s usuarios-ok-flash}@keyframes usuarios-ok-flash{0%,to{box-shadow:0 8px 24px #0f172a0a}40%{box-shadow:0 0 0 3px #22c55e59}}.usuarios-compose__head{align-items:flex-start;gap:.85rem;margin-bottom:1rem;display:flex}.usuarios-compose__icon{width:42px;height:42px;color:var(--naranja-principal,#f7931e);background:#f7931e24;border-radius:14px;flex-shrink:0;place-items:center;line-height:0;display:grid}.usuarios-compose__icon svg{margin:auto;display:block}.usuarios-compose__head h3{letter-spacing:-.02em;color:var(--gris-oscuro,#2f3743);margin:0;font-size:1.15rem;font-weight:750}.usuarios-steps{grid-template-columns:repeat(3,1fr);gap:.45rem;margin:0 0 1.15rem;padding:0;list-style:none;display:grid}.usuarios-steps__item{min-height:64px;color:var(--gris-medio,#64748b);font:inherit;cursor:pointer;background:#fff;border:1.5px solid #e8edf3;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;padding:.55rem .4rem;transition:border-color .2s,background .2s,color .2s,transform .2s,box-shadow .2s;display:flex}.usuarios-steps__item:disabled{cursor:default;opacity:.72}.usuarios-steps__item:not(:disabled):hover{border-color:#43b6e873;transform:translateY(-1px)}.usuarios-steps__num{width:26px;height:26px;color:var(--gris-oscuro,#2f3743);background:#eef2f6;border-radius:50%;place-items:center;font-size:.75rem;font-weight:750;line-height:0;display:grid}.usuarios-steps__label{letter-spacing:.02em;font-size:.72rem;font-weight:700}.usuarios-steps__item--on{border-color:var(--azul-principal,#43b6e8);background:var(--azul-muy-claro,#eaf8fd);color:var(--gris-oscuro,#2f3743);box-shadow:0 0 0 3px #43b6e81f}.usuarios-steps__item--on .usuarios-steps__num{background:var(--azul-principal,#43b6e8);color:#fff}.usuarios-steps__item--done{color:#15803d;background:#22c55e14;border-color:#22c55e59}.usuarios-steps__item--done .usuarios-steps__num{color:#fff;background:#22c55e}.usuarios-steps__item--done.usuarios-steps__item--on{box-shadow:0 0 0 3px #22c55e1f}.usuarios-form{flex-direction:column;gap:.9rem;display:flex}.usuarios-step-pane{flex-direction:column;gap:.85rem;animation:.3s both usuarios-step-in;display:flex}@keyframes usuarios-step-in{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.usuarios-review{background:#f8fafc;border:1px solid #e8edf3;border-radius:14px;flex-direction:column;gap:.55rem;padding:.9rem 1rem;display:flex}.usuarios-review__row{border-bottom:1px solid #eef2f6;justify-content:space-between;align-items:baseline;gap:.75rem;padding:.35rem 0;display:flex}.usuarios-review__row:last-child{border-bottom:none;padding-bottom:0}.usuarios-review__row span{color:var(--gris-medio,#64748b);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;font-size:.75rem;font-weight:650}.usuarios-review__row strong{color:var(--gris-oscuro,#2f3743);text-align:right;word-break:break-word;font-size:.9rem;font-weight:700}.usuarios-nav{grid-template-columns:auto 1fr;align-items:center;gap:.65rem;margin-top:.15rem;display:grid}.usuarios-nav--solo{grid-template-columns:1fr}.usuarios-nav__back{min-width:44px;min-height:48px;color:var(--gris-oscuro,#2f3743);font:inherit;cursor:pointer;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;padding:.65rem 1rem;font-weight:650;transition:border-color .15s,background .15s}.usuarios-nav__back:hover:not(:disabled){border-color:var(--azul-principal,#43b6e8);background:var(--azul-muy-claro,#eaf8fd)}.usuarios-nav__back:disabled{opacity:.55;cursor:not-allowed}.usuarios-roles{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.65rem;display:grid}.usuarios-role{border:1.5px solid var(--gris-claro,#e5e7eb);text-align:left;cursor:pointer;min-height:64px;font:inherit;background:#fff;border-radius:14px;align-items:center;gap:.7rem;padding:.75rem .85rem;transition:border-color .15s,background .15s,transform .15s;display:flex}.usuarios-role:hover{border-color:#43b6e88c;transform:translateY(-1px)}.usuarios-role__ico{background:var(--gris-muy-claro,#f5f7fa);width:36px;height:36px;color:var(--gris-medio,#64748b);border-radius:11px;flex-shrink:0;place-items:center;line-height:0;display:grid}.usuarios-role__ico svg{margin:auto;display:block}.usuarios-role__copy{flex-direction:column;gap:.1rem;min-width:0;display:flex}.usuarios-role strong{color:var(--gris-oscuro,#2f3743);font-size:.92rem}.usuarios-role small{color:var(--gris-medio,#64748b);font-size:.72rem;line-height:1.3}.usuarios-role--on{border-color:var(--azul-principal,#43b6e8);background:var(--azul-muy-claro,#eaf8fd)}.usuarios-role--on .usuarios-role__ico{background:var(--azul-principal,#43b6e8);color:#fff}.usuarios-block{border:none;border-top:1px solid #eef2f6;grid-template-columns:1fr 1fr;gap:.75rem .85rem;margin:0;padding:.85rem 0 0;display:grid}.usuarios-block--first{border-top:none;padding-top:0}.usuarios-block legend{letter-spacing:.08em;text-transform:uppercase;color:var(--gris-medio,#64748b);margin-bottom:.15rem;padding:0;font-size:.72rem;font-weight:750}.usuarios-field{color:var(--gris-medio,#64748b);text-transform:uppercase;letter-spacing:.04em;flex-direction:column;gap:.35rem;font-size:.72rem;font-weight:650;display:flex}.usuarios-field--wide{grid-column:1/-1}.usuarios-field input{border:1.5px solid var(--gris-claro,#e5e7eb);width:100%;min-height:46px;font:inherit;color:var(--gris-oscuro,#2f3743);text-transform:none;letter-spacing:normal;background:#fff;border-radius:12px;padding:.7rem .85rem;font-size:16px;font-weight:500;transition:border-color .15s,box-shadow .15s}.usuarios-field input:focus{border-color:var(--azul-principal,#43b6e8);outline:none;box-shadow:0 0 0 3px #43b6e82e}.usuarios-submit{background:var(--naranja-principal,#f7931e);color:#fff;width:100%;min-height:50px;font:inherit;cursor:pointer;border:none;border-radius:14px;justify-content:center;align-items:center;gap:.55rem;margin-top:0;font-size:.92rem;font-weight:700;transition:transform .15s,filter .15s,opacity .15s;display:inline-flex;box-shadow:0 10px 22px #f7931e47}.usuarios-submit:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px)}.usuarios-submit:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.usuarios-submit--busy{opacity:.9;cursor:wait}.usuarios-roster__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.85rem;margin-bottom:.95rem;display:flex}.usuarios-roster__toolbar h3{color:var(--gris-oscuro,#2f3743);margin:0 0 .15rem;font-size:1.12rem;font-weight:750}.usuarios-roster__toolbar p{color:var(--gris-medio,#64748b);margin:0;font-size:.8rem}.usuarios-filters{flex-wrap:wrap;gap:.35rem;display:flex}.usuarios-filter{background:var(--gris-muy-claro,#f5f7fa);min-height:38px;color:var(--gris-medio,#64748b);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .7rem;font-size:.8rem;font-weight:650;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.usuarios-filter em{background:#0f172a0f;border-radius:999px;padding:.1rem .4rem;font-size:.7rem;font-style:normal}.usuarios-filter--on{color:#fff;background:var(--gris-oscuro,#2f3743);border-color:var(--gris-oscuro,#2f3743)}.usuarios-filter--on em{background:#ffffff29}.usuarios-search{border:1.5px solid var(--gris-claro,#e5e7eb);background:var(--gris-muy-claro,#f5f7fa);color:var(--gris-medio,#64748b);border-radius:12px;align-items:center;gap:.55rem;margin-bottom:.85rem;padding:.55rem .85rem;display:flex;position:relative}.usuarios-search input{min-width:0;font:inherit;color:var(--gris-oscuro,#2f3743);background:0 0;border:none;flex:1;font-size:16px}.usuarios-search input:focus{outline:none}.usuarios-search__clear{width:28px;height:28px;color:var(--gris-oscuro,#2f3743);cursor:pointer;background:#0f172a0f;border:none;border-radius:8px;font-size:1.1rem;line-height:1}.usuarios-skeleton{flex-direction:column;gap:.65rem;display:flex}.usuarios-skeleton__row{height:72px;animation:1.1s infinite usuarios-shimmer;animation-delay:calc(var(--i,0) * 80ms);background:linear-gradient(90deg,#f1f5f9 25%,#e8eef5 40%,#f1f5f9 55%) 0 0/200% 100%;border-radius:14px}@keyframes usuarios-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.usuarios-list{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.usuarios-row{animation:.4s both usuarios-in;animation-delay:calc(var(--i,0) * 35ms);background:#fff;border:1px solid #eef2f6;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:.85rem;padding:.85rem .75rem;transition:border-color .15s,box-shadow .15s;display:grid}.usuarios-row:hover{border-color:#43b6e859;box-shadow:0 6px 16px #0f172a0d}@keyframes usuarios-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.usuarios-row__avatar{background:var(--azul-principal,#43b6e8);color:#fff;border-radius:14px;flex-shrink:0;width:48px;height:48px;overflow:hidden}.usuarios-row__avatar--tutor{background:var(--naranja-principal,#f7931e)}.usuarios-row__avatar--admin{background:var(--gris-oscuro,#2f3743)}.usuarios-row__avatar img,.usuarios-row__avatar span{object-fit:cover;place-items:center;width:100%;height:100%;font-size:.9rem;font-weight:750;display:grid}.usuarios-row__top{flex-wrap:wrap;align-items:center;gap:.4rem .55rem;display:flex}.usuarios-row__top strong{color:var(--gris-oscuro,#2f3743);text-overflow:ellipsis;font-size:.94rem;overflow:hidden}.usuarios-row__body>p{color:var(--gris-medio,#64748b);word-break:break-word;margin:.15rem 0 .35rem;font-size:.8rem}.usuarios-row__meta{color:var(--gris-medio,#64748b);flex-wrap:wrap;gap:.3rem .65rem;font-size:.7rem;display:flex}.usuarios-row__pending{color:var(--naranja-oscuro,#f36b21);font-weight:650}.usuarios-row__ok{color:var(--exito,#22c55e);font-weight:650}.usuarios-badge{text-transform:uppercase;letter-spacing:.05em;color:#fff;background:var(--gris-medio,#64748b);border-radius:999px;padding:.18rem .5rem;font-size:.65rem;font-weight:700}.usuarios-badge--practicante{background:var(--azul-principal,#43b6e8)}.usuarios-badge--tutor{background:var(--naranja-principal,#f7931e)}.usuarios-badge--admin{background:var(--gris-oscuro,#2f3743)}.usuarios-row__action{border:1.5px solid var(--gris-claro,#e5e7eb);min-height:40px;color:var(--gris-oscuro,#2f3743);font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:.35rem;padding:.4rem .75rem;font-size:.78rem;font-weight:650;transition:border-color .15s,background .15s;display:inline-flex}.usuarios-row__action:hover:not(:disabled){border-color:var(--azul-principal,#43b6e8);background:var(--azul-muy-claro,#eaf8fd)}.usuarios-row__action:disabled{opacity:.7;cursor:wait}@media (width<=960px){.usuarios-hero,.usuarios-layout{grid-template-columns:1fr}.usuarios-hero__stats{grid-template-columns:repeat(3,1fr)}}@media (width<=560px){.usuarios-hero{border-radius:16px;padding:1.15rem 1rem}.usuarios-compose,.usuarios-roster{border-radius:16px;padding:1.05rem .95rem 1.15rem}.usuarios-roles,.usuarios-block{grid-template-columns:1fr}.usuarios-steps{gap:.35rem}.usuarios-steps__item{min-height:56px;padding:.45rem .25rem}.usuarios-steps__label{font-size:.68rem}.usuarios-nav{grid-template-columns:1fr}.usuarios-nav__back{order:2;width:100%}.usuarios-submit{order:1}.usuarios-row{grid-template-columns:auto 1fr}.usuarios-row__action{grid-column:2;justify-self:start}.usuarios-stat{gap:.45rem;padding:.7rem .55rem}.usuarios-stat strong{font-size:1.1rem}}
