:root{--color-bg: #131313;--color-primary: #4F46E5;--color-primary-hover: #4338CA;--color-success: #10B981;--color-danger: #F43F5E;--color-warning: #F59E0B;--color-surface: rgba(255, 255, 255, .03);--color-border: rgba(255, 255, 255, .08)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;background-color:var(--color-bg);color:#fff;font-family:Inter,system-ui,-apple-system,sans-serif;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#0003}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.98)}}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.glass{background:var(--color-surface);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border)}.btn-rol-alumno,.btn-rol-profesor,.btn-social-google,.btn-social-apple,.btn-social-mail,.btn-primary-alumno,.btn-primary-profesor{transition:all .25s cubic-bezier(.4,0,.2,1)!important}.btn-rol-alumno:hover{background:#10b98114!important;border-color:#10b98199!important;transform:translateY(-2px);box-shadow:0 15px 35px #10b98126!important}.btn-rol-alumno:active{transform:translateY(0)}.btn-rol-profesor:hover{background:#4f46e514!important;border-color:#4f46e599!important;transform:translateY(-2px);box-shadow:0 15px 35px #4f46e526!important}.btn-rol-profesor:active{transform:translateY(0)}.btn-social-google:hover{background:#f3f4f6!important;transform:translateY(-2px);box-shadow:0 10px 20px #0000001a!important}.btn-social-apple:hover{background:#1a1a1a!important;transform:translateY(-2px);box-shadow:0 10px 20px #0003!important}.btn-social-mail:hover{background:#ffffff14!important;border-color:#fff3!important;transform:translateY(-2px)}.btn-primary-alumno:hover{background:#059669!important;transform:translateY(-2px);box-shadow:0 15px 30px #10b98166!important}.btn-primary-alumno:active{transform:translateY(0)}.btn-primary-profesor:hover{background:#4338ca!important;transform:translateY(-2px);box-shadow:0 15px 30px #4f46e566!important}.btn-primary-profesor:active{transform:translateY(0)}@media (max-width: 480px){.hide-mobile{display:none!important}.max-w-mobile-100{max-width:100px!important}.max-w-mobile-120{max-width:120px!important}}.truncate-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.responsive-grid-2{display:grid;grid-template-columns:repeat(2,1fr)}.responsive-grid-3{display:grid;grid-template-columns:repeat(3,1fr)}.responsive-grid-4{display:grid;grid-template-columns:repeat(4,1fr)}@media (max-width: 600px){.responsive-grid-4{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 480px){.responsive-grid-2,.responsive-grid-3,.responsive-grid-4{grid-template-columns:1fr!important}.mobile-p-1{padding:1rem!important}.mobile-p-sm{padding:.8rem!important}.mobile-gap-sm{gap:8px!important}}
