body{margin:0;font-family:Arial,sans-serif}.layout{height:100vh;display:flex}.sidebar{color:#fff;background:#1e293b;width:220px;padding:20px}.sidebar ul{padding:0;list-style:none}.sidebar li{cursor:pointer;border-radius:5px;padding:10px}.content{background:#f1f5f9;flex:1;padding:20px}.card{background:#fff;border-radius:10px;margin-bottom:10px;padding:15px}input{width:100%;margin:5px 0;padding:8px;display:block}button{cursor:pointer;margin-top:5px;padding:8px}*{box-sizing:border-box;margin:0;padding:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}html,body,#root{width:100%;min-height:100vh;margin:0;padding:0}#root{display:block}.layout{width:100vw;height:100%;display:flex}button a{color:#fff;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;text-decoration:none}.sidebar{color:#fff;background:#1e293b;flex-direction:column;align-items:center;width:22vw;min-height:100vh;padding:20px;display:flex;overflow-y:auto}.menu-title{cursor:pointer;border-radius:8px;padding:12px 15px;font-weight:700}.menu-title:hover{background:#334155}.submenu{margin-bottom:10px;margin-left:10px}.submenu li{background:#0f172a}.submenu li:hover{background:#1e293b}.logo{object-fit:cover;border:3px solid #fff;border-radius:50%;width:6vw;height:11vh;margin-bottom:10px}.userAdd{object-fit:contain;border:none;width:20px;height:20px;margin:0}.buttonAdd{cursor:pointer;background:#fff;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;text-decoration:none;transition:all .2s;display:flex}.buttonAdd:hover{transform:scale(1.05)}.buttonAdd img{width:2vw;display:block}.sidebar h2{margin-bottom:30px}.sidebar ul{width:100%;list-style:none}.sidebar li{cursor:pointer;border-radius:8px;margin-bottom:10px;padding:12px 15px;transition:all .2s}.sidebar li:hover{background:#334155}.sidebar li.active{background:#3b82f6}.student-sidebar{flex-direction:column;justify-content:flex-start;align-items:center;gap:20px;display:flex}.student-sidebar h2{text-align:center;margin:0;font-size:1.2rem}.student-name-badge{color:#fff;background:#0ea5a4;border-radius:999px;padding:6px 10px;font-size:.95rem;font-weight:700;display:inline-block;box-shadow:0 2px 6px #0000001f}.student-sidebar-logout{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:8px;width:100%;margin-top:auto;padding:12px 16px;font-weight:700}.student-sidebar-logout:hover{background:#dc2626}main{background:#f1f5f9;flex:1;padding:40px}.card{background:#fff;border-radius:12px;width:25vw;padding:30px;box-shadow:0 10px 25px #0000001a}.card-header{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.card-header h3{color:#1e293b;font-size:20px}.card input,.card select{border:1px solid #cbd5e1;border-radius:8px;outline:none;width:100%;margin-bottom:15px;padding:12px;transition:all .2s}.date{border-radius:12px;width:25vw}.date input{border:1px solid #cbd5e1;border-radius:8px;outline:none;width:100%;padding:12px;transition:all .2s}.card input:focus,.card select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.card button:not(.buttonAdd){color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:8px;width:100%;padding:12px;font-weight:700;transition:all .2s}.card button:not(.buttonAdd):hover{background:#2563eb}.message{margin-top:10px;font-size:14px}.success{color:green}.error{color:red}ul{padding:0;list-style:none}.table{border-collapse:collapse;background:#fff;border:1px solid #e5e7eb;border-radius:12px;width:100%;margin-bottom:16px;padding:16px 20px;transition:transform .2s,box-shadow .2s;overflow:hidden;box-shadow:0 4px 10px #0000000d}.table th{text-align:left;background-color:#f4f4f4;padding:12px;font-weight:700}.table td{cursor:pointer;border-top:1px solid #ddd;padding:12px}.table tr:hover{background-color:#f9f9f9;transition:all .2s}.thContent{justify-content:space-between;align-items:center;gap:8px;display:flex}.thContent span{font-weight:700}.navegationButton{justify-content:center;gap:10px;display:flex}.cardStudents{background:#fff;border-radius:12px;width:70vw;padding:30px;box-shadow:0 10px 25px #0000001a}.cardStudents button:not(.buttonAdd,.delete){color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:8px;width:17%;padding:12px;font-weight:700;transition:all .2s}.student-info{margin-bottom:20px}.student-info p{margin-bottom:8px}.student-info span{color:#374151}.section{margin-top:20px}.section h4{color:#1e293b;margin-bottom:10px}.list li{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px;padding:10px}.empty{color:#64748b;font-size:14px}.buttonAdd .iconAdd{width:20px;height:20px}.Details{justify-content:space-between;display:flex}.delete{background-color:#fcfcfc;border:none;transition:all .2s}.delete .iconDelete{width:15px;height:15px}.navegationButton button:hover{background:#2563eb}.buttonSyncs{color:#fff;background-color:#2563eb;border-color:#2563eb;border-radius:8px}.buttonSyncs:hover{color:#2563eb;background-color:#e2e8f0}.loading-bar{background:#ddd;width:100%;height:4px;margin-top:10px;position:relative;overflow:hidden}.loading-bar:after{content:"";background:#2563eb;width:40%;height:100%;animation:1s infinite loading;position:absolute}.select-group{color:#fff;cursor:pointer;background-color:#2563eb;border:2px solid #1e40af;border-radius:8px;outline:none;width:100%;max-width:250px;padding:10px 12px;font-size:14px;transition:all .2s ease-in-out}.select-group:hover{color:#2563eb;background-color:#eff6ff}.select-group:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb4d}.select-group{appearance:none;background-position:right 10px center;background-repeat:no-repeat;background-size:16px}.student-group-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:18px;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 10px #0000000d}.student-group-card.active{border-color:#3b82f6;box-shadow:0 6px 18px #3b82f62e}.student-group-card:hover{transform:translateY(-2px)}.student-group-card-content{justify-content:space-between;align-items:center;gap:12px;display:flex}.student-group-select-button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 16px;font-weight:700;transition:background .2s}.student-group-select-button:hover{background:#1d4ed8}.layout-login{background:linear-gradient(135deg,#1e3a8a 0%,#2563eb 50%,#60a5fa 100%);justify-content:center;align-items:center;width:100%;min-height:100vh;padding:20px;display:flex}.cardLogin{-webkit-backdrop-filter:blur(10px);background:#fffffff5;border-radius:24px;width:100%;max-width:430px;padding:40px 35px;animation:.6s fadeInUp;box-shadow:0 25px 50px #0f172a40,0 10px 20px #0f172a14}.cardLogin h1{color:#0f172a;text-align:center;margin-bottom:10px;font-size:2rem;font-weight:700}.cardLogin>p{text-align:center;color:#64748b;margin-bottom:30px;font-size:.95rem;line-height:1.5}.cardLogin form{flex-direction:column;gap:20px;display:flex}.cardLogin form>div{flex-direction:column;display:flex}.cardLogin label{color:#334155;margin-bottom:8px;font-size:.9rem;font-weight:600}.cardLogin input,.cardLogin select{color:#0f172a;background:#f8fafc;border:1px solid #cbd5e1;border-radius:12px;outline:none;width:100%;padding:14px 16px;font-size:.95rem;transition:all .25s}.cardLogin input::placeholder{color:#94a3b8}.cardLogin input:focus,.cardLogin select:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 4px #2563eb26}.cardLogin button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:12px;width:100%;margin-top:10px;padding:14px;font-size:1rem;font-weight:700;transition:all .25s;box-shadow:0 10px 20px #2563eb40}.cardLogin button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 28px #2563eb59}.cardLogin button:active:not(:disabled){transform:translateY(0)}.cardLogin button:disabled{opacity:.7;cursor:not-allowed}.cardLogin form>div:last-of-type,.cardLogin .error{color:#dc2626;margin-top:-8px;font-size:.9rem;font-weight:500}.cardLogin>div:last-child{text-align:center;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin-top:25px;padding:15px}.cardLogin>div:last-child p:first-child{color:#1d4ed8;margin-bottom:5px;font-weight:600}.cardLogin>div:last-child p:last-child{color:#64748b;font-size:.9rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.cardLogin{border-radius:20px;padding:35px 25px}.cardLogin h1{font-size:1.8rem}}@media (width<=480px){.layout-login{padding:15px}.cardLogin{border-radius:18px;padding:30px 20px}.cardLogin h1{font-size:1.6rem}.cardLogin>p{font-size:.9rem}.cardLogin input,.cardLogin select,.cardLogin button{padding:13px 14px;font-size:.95rem}}@keyframes loading{0%{left:-40%}to{left:100%}}@media (width<=1024px){.sidebar{width:280px}.card{width:60%}.cardStudents{width:95%}.date{width:60%}.logo{width:80px;height:80px}.buttonAdd img{width:24px}.cardStudents button:not(.buttonAdd,.delete){width:auto;min-width:120px}}@media (width<=768px){#root,.layout{flex-direction:column;width:100%;height:auto}.sidebar{width:100%;min-height:auto;padding:20px}main{padding:20px}.card,.cardStudents,.date{width:100%}.card,.cardStudents{padding:20px}.logo{width:70px;height:70px}.Details{flex-direction:column;gap:15px}.card-header{flex-direction:column;align-items:flex-start;gap:10px}.navegationButton{flex-wrap:wrap}.cardStudents button:not(.buttonAdd,.delete){width:100%;margin-bottom:10px}.table{white-space:nowrap;display:block;overflow-x:auto}.select-group{width:100%;max-width:100%}}@media (width<=480px){main,.sidebar{padding:15px}.card,.cardStudents{border-radius:10px;padding:15px}.sidebar h2{text-align:center;font-size:20px}.card-header h3{font-size:18px}.menu-title,.sidebar li{padding:10px;font-size:14px}}.student-groups-container{background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.student-groups-message-card{text-align:center;background:#fff;border-radius:24px;width:100%;max-width:600px;padding:40px;box-shadow:0 20px 40px #0f172a1f,0 8px 20px #0f172a0f}.student-groups-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;margin-bottom:20px;padding:15px;font-weight:500}.student-groups-view{flex-direction:column;gap:25px;display:flex}.student-groups-view h1{color:#0f172a;margin-bottom:5px;font-size:2rem}.student-groups-view h2{color:#1e293b;margin-bottom:10px;font-size:1.4rem}.student-groups-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;display:grid}.student-group-card{cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;width:15%;padding:18px;transition:all .25s;box-shadow:0 4px 5px #0f172a0a}.student-group-card:hover{border-color:#93c5fd;transform:translateY(-3px);box-shadow:0 12px 24px #0f172a14}.student-group-card.active{background:#eff6ff;border-color:#3b82f6;box-shadow:0 12px 24px #3b82f626}.student-group-card h3{color:#0f172a;margin-bottom:8px;font-size:1.1rem}.student-group-card p{color:#64748b;font-size:.9rem}.student-no-groups{text-align:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:16px;padding:40px 20px}.student-no-groups p{color:#64748b;margin-bottom:20px;font-size:1rem}.student-assignment-note{color:#64748b;margin-top:12px;font-size:.95rem;font-style:italic}.student-groups-footer{border-top:1px solid #e2e8f0;justify-content:center;margin-top:10px;padding-top:25px;display:flex}.student-groups-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:12px;padding:12px 28px;font-size:.95rem;font-weight:600;transition:all .25s;box-shadow:0 10px 20px #2563eb33}.student-groups-button:hover{transform:translateY(-2px);box-shadow:0 14px 28px #2563eb4d}@media (width<=768px){.student-groups-message-card{border-radius:20px;padding:30px 20px}.student-groups-view h1{font-size:1.7rem}.student-groups-view h2{font-size:1.2rem}.student-group-card{padding:18px}}@media (width<=480px){.student-groups-container{padding:15px}.student-groups-message-card{border-radius:18px;padding:25px 18px}.student-groups-view h1{font-size:1.5rem}.student-groups-button{width:100%}}
