*{box-sizing:border-box;margin:0;padding:0}body{color:#333;background-color:#f5f6fa;font-family:Arial,sans-serif}.container{max-width:1000px;margin:40px auto;padding:20px}h1,h2,h3{margin-bottom:15px}input,textarea,select{border:1px solid #ccc;border-radius:6px;width:100%;margin-bottom:12px;padding:10px;font-size:14px}button{color:#fff;cursor:pointer;background:#222;border:none;border-radius:6px;padding:10px 14px;transition:all .2s}button:hover{background:#444}.card{background:#fff;border-radius:8px;margin-bottom:15px;padding:15px;box-shadow:0 2px 6px #0000000d}.flex{flex-wrap:wrap;gap:10px;display:flex}.navbar{color:#fff;background:#111;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.navbar a{color:#fff;margin-left:10px;text-decoration:none}table{border-collapse:collapse;background:#fff;width:100%;margin-top:15px}th,td{text-align:left;border-bottom:1px solid #eee;padding:10px}th{background:#fafafa}video{border-radius:6px;margin-top:10px}.form-container{background:#fff;border-radius:10px;max-width:400px;margin:100px auto;padding:25px;box-shadow:0 5px 15px #0000001a}.nav-buttons{gap:10px;margin-bottom:15px;display:flex}.error{color:red;margin-top:10px}.hero{text-align:center;margin-bottom:40px}.hero h1{margin-bottom:10px;font-size:36px}.hero p{color:#666;margin-bottom:20px}button.secondary{color:#333;background:#eaeaea}button.secondary:hover{background:#d6d6d6}.section-title{margin-bottom:20px}.courses-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:25px;display:grid}.course-card{background:#fff;border-radius:12px;flex-direction:column;transition:all .25s;display:flex;overflow:hidden;box-shadow:0 4px 12px #00000014}.course-card:hover{transform:translateY(-5px);box-shadow:0 8px 18px #0000001f}.course-card img{object-fit:cover;width:100%;height:180px}.course-content{flex-direction:column;flex:1;padding:15px;display:flex}.course-content h3{margin-bottom:10px}.course-content .desc{color:#555;flex:1;margin-bottom:10px;font-size:14px}.course-content .prof{color:#777;margin-bottom:15px;font-size:13px}.course-content button{width:100%}.login-wrapper{background:linear-gradient(135deg,#f5f6fa,#e9ecf5);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{border-radius:14px;width:100%;max-width:420px;padding:30px;animation:.4s fadeIn;box-shadow:0 10px 30px #00000014}.login-title{text-align:center;margin-bottom:5px;font-size:26px}.login-subtitle{text-align:center;color:#666;margin-bottom:20px;font-size:14px}.login-nav{justify-content:center;margin-bottom:20px}.input-group{flex-direction:column;margin-bottom:15px;display:flex}.input-group label{color:#555;margin-bottom:5px;font-size:13px}.input-group input{border:1px solid #ddd;border-radius:8px;padding:11px;transition:all .2s}.input-group input:focus{border-color:#222;outline:none;box-shadow:0 0 0 2px #0000000d}.login-btn{letter-spacing:.5px;width:100%;margin-top:10px;font-weight:700}.login-error{text-align:center;color:#d60000;background:#ffe5e5;border-radius:6px;margin-top:15px;padding:10px;font-size:14px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.login-card.alumno{border-top:4px solid #4a90e2}.login-card.profesor{border-top:4px solid #7b61ff}.admin-container{max-width:1100px;margin:40px auto;padding:20px}.admin-title{margin-bottom:25px;font-size:28px}.admin-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.admin-card{background:#fff;border-radius:14px;padding:20px;transition:all .25s;position:relative;overflow:hidden;box-shadow:0 8px 20px #0000000f}.admin-card:hover{transform:translateY(-5px);box-shadow:0 12px 25px #0000001a}.admin-card:before{content:"";background:#0000000d;border-radius:50%;width:60px;height:60px;position:absolute;top:-10px;right:-10px}.admin-card h3{margin-bottom:10px}.admin-card p{color:#666;margin-bottom:15px;font-size:14px}.admin-card button{width:100%;font-weight:700}.table-container{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 8px 20px #0000000d}.table-header{border-bottom:1px solid #eee;padding:15px 20px;font-weight:700}table{border-collapse:collapse;width:100%}th{background:#f7f8fa;font-weight:600}th,td{padding:12px 15px}tr:hover{background:#fafafa}.badge{border-radius:20px;padding:4px 10px;font-size:12px;font-weight:700}.badge.admin{color:#c40000;background:#ffe0e0}.badge.alumno{color:#07c;background:#e0f0ff}.badge.profesor{color:#5b3cc4;background:#ede7ff}.header-flex{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.prof-container{max-width:1100px;margin:40px auto;padding:20px}.prof-title{margin-bottom:25px;font-size:28px}.prof-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.prof-card{background:#fff;border-radius:14px;padding:20px;transition:all .25s;box-shadow:0 8px 20px #0000000f}.prof-card:hover{transform:translateY(-5px);box-shadow:0 12px 25px #0000001a}.prof-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.btn-secondary{color:#333;background:#f1f2f6}.btn-secondary:hover{background:#e1e3e8}.prof-form{background:#fff;border-radius:14px;max-width:600px;padding:25px;box-shadow:0 8px 20px #0000000d}.prof-form input,.prof-form textarea{margin-bottom:15px}.info{margin-top:10px;font-size:14px}.video-item{border-bottom:1px solid #eee;padding:8px 0;font-size:14px}.alumno-container{max-width:1100px;margin:40px auto;padding:20px}.alumno-title{margin-bottom:25px;font-size:28px}.alumno-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.alumno-card{background:#fff;border-radius:14px;flex-direction:column;padding:18px;transition:all .25s;display:flex;box-shadow:0 8px 20px #0000000f}.alumno-card:hover{transform:translateY(-5px);box-shadow:0 12px 25px #0000001a}.alumno-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.progress-bar{background:#eee;border-radius:10px;height:8px;margin:10px 0;overflow:hidden}.progress-fill{background:#4a90e2;height:100%}.video-card{background:#fafafa;border-radius:10px;margin-bottom:12px;padding:12px}.course-img{object-fit:cover;border-radius:10px;width:100%;height:160px;margin-bottom:10px}.home-container{max-width:1200px;margin:auto;padding:20px}.hero-pro{text-align:center;color:#fff;background:linear-gradient(135deg,#4a90e2,#7b61ff);border-radius:20px;margin-bottom:50px;padding:60px 20px}.hero-pro h1{margin-bottom:10px;font-size:42px}.hero-pro p{opacity:.9;margin-bottom:25px;font-size:16px}.hero-buttons{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.hero-buttons button{color:#333;background:#fff;font-weight:700}.hero-buttons button.secondary{color:#fff;background:#fff3}.section{margin-bottom:50px}.features{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;display:grid}.feature-card{text-align:center;background:#fff;border-radius:14px;padding:20px;box-shadow:0 8px 20px #0000000d}.feature-card h4{margin-bottom:10px}.testimonials{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px;display:grid}.testimonial{background:#fff;border-radius:12px;padding:15px;font-size:14px;box-shadow:0 5px 15px #0000000d}.cta{text-align:center;color:#fff;background:#111;border-radius:20px;padding:40px}.cta button{margin-top:15px}
