.sidebar{background:#0f172a;width:250px;min-height:100vh;padding:20px}.logo{color:#fff;margin-bottom:30px}.sidebar-links{flex-direction:column;gap:15px;display:flex}.sidebar-links a{color:#fff;background:#1e293b;border-radius:8px;padding:12px;text-decoration:none;transition:all .3s}.sidebar-links a:hover{background:#334155}.layout{display:flex}.main-content{flex:1;padding:20px}.login-page{background:linear-gradient(135deg,#2563eb,#1e3a8a);justify-content:center;align-items:center;width:100%;min-height:100vh;padding:20px;display:flex}.login-form{background:#fff;border-radius:28px;flex-direction:column;gap:16px;width:100%;max-width:420px;padding:35px;display:flex;box-shadow:0 10px 30px #0003}.login-top{text-align:center;margin-bottom:10px}.login-top h1{color:#0f172a;margin-bottom:8px;font-size:32px;font-weight:800}.login-top p{color:#64748b;font-size:15px}.login-form input{border:1px solid #cbd5e1;border-radius:14px;outline:none;width:100%;padding:14px 16px;font-size:15px;transition:all .2s}.login-form input:focus{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1a}.login-form button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:14px;width:100%;padding:14px;font-size:15px;font-weight:700;transition:all .2s}.login-form button:hover{background:#1d4ed8}.login-form button:disabled{opacity:.7;cursor:not-allowed}.login-error{color:#dc2626;text-align:center;background:#fee2e2;border:1px solid #fecaca;border-radius:12px;padding:12px;font-size:14px}@media (width<=768px){.login-form{padding:25px}.login-top h1{font-size:28px}}.dashboard-page{background:#f1f5f9;width:100%;min-height:100vh;padding:20px}.dashboard-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.dashboard-header h1{color:#0f172a;margin-bottom:6px;font-size:34px;font-weight:800}.dashboard-header p{color:#64748b;font-size:15px}.logout-btn{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:14px;outline:none;padding:12px 20px;font-size:14px;font-weight:700;transition:all .2s}.logout-btn:hover{background:#dc2626;transform:translateY(-2px)}.stat-card h3{color:#64748b;margin-bottom:15px;font-size:16px}.stat-card span{color:#2563eb;font-size:34px;font-weight:800}.dashboard-section{background:#fff;border-radius:28px;padding:24px;box-shadow:0 4px 14px #0000000f}.dashboard-section h2{color:#0f172a;margin-bottom:20px;font-size:24px;font-weight:800}.recent-lessons{flex-direction:column;gap:14px;display:flex}.recent-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;justify-content:space-between;align-items:center;gap:15px;padding:18px;transition:all .2s;display:flex}.recent-card:hover{background:#eff6ff;border-color:#bfdbfe}.recent-card h4{color:#0f172a;margin-bottom:4px;font-size:16px}.recent-card p{color:#64748b;font-size:14px}.recent-card span{color:#2563eb;font-size:13px;font-weight:700}.recent-box{text-align:center;color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:18px;padding:22px}.dashboard-loading{color:#2563eb;background:#f1f5f9;justify-content:center;align-items:center;width:100%;height:100vh;font-size:22px;font-weight:700;display:flex}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#e2e8f0}::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:20px}::-webkit-scrollbar-thumb:hover{background:#64748b}@media (width<=768px){.dashboard-page{padding:14px}.dashboard-header{flex-direction:column;align-items:flex-start}.dashboard-header h1{font-size:28px}.stats-grid{grid-template-columns:1fr}.recent-card{flex-direction:column;align-items:flex-start}.logout-btn{width:100%}}.groups-page{width:100%;min-height:100vh}.groups-header{margin-bottom:25px}.groups-header h1{color:#0f172a;margin-bottom:5px;font-size:34px;font-weight:800}.groups-header p{color:#64748b;font-size:15px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:25px;display:grid}.stat-card{background:#fff;border-radius:18px;padding:25px;transition:all .2s;box-shadow:0 2px 10px #00000014}.stat-card:hover{transform:translateY(-3px)}.stat-card h2{color:#0f172a;margin-bottom:10px;font-size:24px}.stat-card p{color:#2563eb;font-size:18px;font-weight:700}.group-form{background:#fff;border-radius:18px;flex-wrap:wrap;gap:15px;margin-bottom:25px;padding:20px;display:flex;box-shadow:0 2px 10px #00000014}.group-form input,.group-form select,.student-form input{border:1px solid #cbd5e1;border-radius:12px;outline:none;flex:1;min-width:220px;padding:14px;font-size:15px;transition:all .2s}.group-form input:focus,.group-form select:focus,.student-form input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.group-form button,.student-form button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:12px;padding:14px 24px;font-size:14px;font-weight:700;transition:all .3s}.group-form button:hover,.student-form button:hover{background:#1d4ed8}.course-filters button:hover{background:#e2e8f0}.groups-list{flex-direction:column;gap:18px;margin-bottom:30px;display:flex}.group-card{cursor:pointer;background:#fff;border-radius:18px;justify-content:space-between;align-items:center;gap:20px;padding:20px;transition:all .25s;display:flex;box-shadow:0 2px 10px #00000014}.group-card:hover{transform:translateY(-2px)}.group-info{flex:1}.group-info h3{color:#0f172a;margin-bottom:10px;font-size:20px;font-weight:700}.group-bottom{flex-wrap:wrap;gap:10px;display:flex}.course-badge{color:#1d4ed8;background:#dbeafe;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700}.student-count{color:#15803d;background:#dcfce7;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700}.delete-btn{white-space:nowrap;cursor:pointer;background:#ef4444;border:none;border-radius:12px;justify-content:center;align-items:center;min-width:90px;padding:11px 18px;font-size:14px;font-weight:700;transition:all .2s;display:flex;color:#fff!important}.group-details{background:#fff;border-radius:18px;padding:25px;box-shadow:0 2px 10px #00000014}.details-header h2{color:#0f172a;margin-bottom:5px;font-size:28px}.details-header p{color:#64748b}.student-form{flex-wrap:wrap;gap:15px;margin-bottom:25px;display:flex}.student-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:16px}.student-card h4{color:#0f172a;margin-bottom:5px}@media (width<=768px){.groups-page{padding-bottom:20px}.groups-header h1{font-size:28px}.group-card{flex-direction:column;align-items:flex-start}.delete-btn{width:100%}.stats-grid{grid-template-columns:1fr}.group-form{flex-direction:column}.group-form button,.student-form button{width:100%}.course-filters{gap:10px}.course-filters button{flex:1}}.group-details-page{width:100%}.details-header{margin-bottom:30px}.back-btn{color:#0f172a;cursor:pointer;background:#e2e8f0;border:none;border-radius:10px;margin-bottom:20px;padding:10px 18px;transition:all .3s}.back-btn:hover{background:#cbd5e1}.details-header h1{color:#0f172a;margin-bottom:15px;font-size:36px}.group-tags{flex-wrap:wrap;gap:12px;display:flex}.group-tags span{color:#1d4ed8;background:#dbeafe;border-radius:999px;padding:8px 14px;font-size:14px;font-weight:500}.student-form{background:#fff;border-radius:16px;flex-wrap:wrap;gap:15px;margin-bottom:30px;padding:20px;display:flex;box-shadow:0 2px 10px #00000014}.student-form input{border:1px solid #cbd5e1;border-radius:10px;outline:none;flex:1;min-width:220px;padding:14px;font-size:15px}.student-form input:focus{border-color:#2563eb}.student-form button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;padding:14px 24px;transition:all .3s}.student-form button:hover{background:#1d4ed8}.section-header{margin-bottom:20px}.section-header h2{color:#0f172a}.students-list{flex-direction:column;gap:18px;display:flex}.student-card{background:#fff;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex;box-shadow:0 2px 10px #00000014}.student-left{align-items:center;gap:15px;display:flex}.avatar{color:#fff;background:#2563eb;border-radius:50%;justify-content:center;align-items:center;width:55px;height:55px;font-size:22px;font-weight:700;display:flex}.student-left h3{color:#0f172a;margin-bottom:5px}.student-left p{color:#64748b}.student-right{flex-wrap:wrap;align-items:center;gap:15px;display:flex}.student-info-box{background:#f8fafc;border-radius:12px;min-width:120px;padding:10px 14px}.student-info-box span{color:#64748b;margin-bottom:4px;font-size:12px;display:block}.student-info-box h4{color:#0f172a}.delete-student-btn{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:10px;padding:10px 16px;transition:all .3s}.delete-student-btn:hover{background:#dc2626}.empty-box{text-align:center;color:#64748b;background:#fff;border-radius:16px;padding:40px;box-shadow:0 2px 10px #00000014}.not-found-box{text-align:center;background:#fff;border-radius:16px;padding:50px;box-shadow:0 2px 10px #00000014}.not-found-box h1{color:#0f172a;margin-bottom:20px}.schedule-page{background:#f1f5f9;width:100%;min-height:100vh;padding:20px}.schedule-header{margin-bottom:25px}.schedule-header h1{color:#0f172a;margin-bottom:6px;font-size:34px;font-weight:800}.schedule-header p{color:#64748b;font-size:15px}.course-filters{flex-wrap:wrap;gap:12px;margin-bottom:28px;display:flex}.course-filters button{color:#0f172a;cursor:pointer;background:#fff;border:none;border-radius:14px;padding:11px 18px;font-size:14px;font-weight:700;transition:all .2s;box-shadow:0 2px 10px #0000000f}.course-filters button:hover{transform:translateY(-2px)}.active-filter{color:#fff!important;background:#2563eb!important}.schedule-form{background:#fff;border-radius:24px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:30px;padding:22px;display:grid;box-shadow:0 4px 14px #0000000f}.schedule-form input,.schedule-form select{background:#fff;border:1px solid #cbd5e1;border-radius:14px;outline:none;width:100%;padding:13px 15px;font-size:14px;transition:all .2s}.schedule-form input:focus,.schedule-form select:focus{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1a}.schedule-form button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:14px;font-size:14px;font-weight:700;transition:all .2s}.schedule-form button:hover{background:#1d4ed8}.groups-wrapper{flex-direction:column;gap:30px;display:flex}.group-schedule-card{background:#fff;border-radius:28px;padding:24px;box-shadow:0 4px 14px #0000000f}.group-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:24px;display:flex}.group-title{color:#0f172a;font-size:25px;font-weight:800}.excel-btn{color:#fff;cursor:pointer;background:#15803d;border:none;border-radius:14px;padding:11px 18px;font-weight:700;transition:all .2s}.excel-btn:hover{background:#166534;transform:translateY(-2px)}.day-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;padding:16px}.day-name{color:#0f172a;margin-bottom:15px;font-size:18px;font-weight:800}.lesson-list{flex-direction:column;gap:12px;display:flex}.lesson-row{background:#fff;border-radius:16px;align-items:center;gap:12px;padding:12px;display:flex;box-shadow:0 2px 8px #0000000d}.pair-number{color:#fff;background:#2563eb;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:15px;font-weight:700;display:flex}.lesson-content{flex-direction:column;flex:1;display:flex}.lesson-content h4{color:#0f172a;margin-bottom:4px;font-size:15px}.lesson-content p{color:#475569;margin-bottom:4px;font-size:13px}.lesson-content span{color:#64748b;font-size:12px}.lesson-actions{align-items:center;gap:8px;display:flex}.edit-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;padding:7px 12px;font-size:13px;font-weight:700;transition:all .2s}.edit-btn:hover{background:#1d4ed8}.delete-btn{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:10px;flex-shrink:0;width:32px;height:32px;font-size:18px;font-weight:700;transition:all .2s}.delete-btn:hover{background:#dc2626;transform:scale(1.05)}.empty-box{text-align:center;color:#64748b;background:#fff;border:1px dashed #cbd5e1;border-radius:16px;padding:18px;font-size:13px}.modal-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;width:100%;height:100%;padding:15px;display:flex;position:fixed;top:0;left:0}.edit-modal{background:#fff;border-radius:24px;flex-direction:column;gap:15px;width:100%;max-width:420px;padding:25px;display:flex;box-shadow:0 10px 30px #00000026}.edit-modal h2{color:#0f172a;font-size:24px;font-weight:800}.edit-modal input,.edit-modal select{border:1px solid #cbd5e1;border-radius:14px;outline:none;width:100%;padding:13px 15px;font-size:14px;transition:all .2s}.edit-modal input:focus,.edit-modal select:focus{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1a}.modal-buttons{gap:10px;margin-top:5px;display:flex}.modal-buttons button{cursor:pointer;border:none;border-radius:14px;flex:1;padding:13px;font-weight:700;transition:all .2s}.modal-buttons button:first-child{color:#fff;background:#2563eb}.modal-buttons button:first-child:hover{background:#1d4ed8}.modal-buttons button:last-child{color:#0f172a;background:#e2e8f0}.modal-buttons button:last-child:hover{background:#cbd5e1}@media (width<=768px){.schedule-page{padding:14px}.schedule-form{grid-template-columns:1fr}.group-top{flex-direction:column;align-items:stretch}.excel-btn{width:100%}.lesson-row{flex-direction:column;align-items:flex-start}.lesson-actions{justify-content:flex-end;width:100%}}.student-page{background:#f1f5f9;width:100%;min-height:100vh;padding:20px}.student-loading{color:#2563eb;background:#f1f5f9;justify-content:center;align-items:center;width:100%;height:100vh;font-size:24px;font-weight:800;display:flex}.student-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.student-header h1{color:#0f172a;margin-bottom:6px;font-size:36px;font-weight:800}.student-header p{color:#64748b;font-size:15px}.student-header button{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:14px;padding:12px 20px;font-weight:700;transition:all .2s}.student-header button:hover{background:#dc2626;transform:translateY(-2px)}.student-info{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:35px;display:grid}.info-card{background:#fff;border-radius:24px;padding:24px;box-shadow:0 4px 14px #0000000f}.info-card h3{color:#64748b;margin-bottom:10px;font-size:15px}.info-card span{color:#2563eb;font-size:24px;font-weight:800}.student-schedule{background:#fff;border-radius:30px;padding:24px;box-shadow:0 4px 14px #0000000f}.student-schedule h2{color:#0f172a;margin-bottom:24px;font-size:28px;font-weight:800}.week-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.day-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:24px;padding:18px}.day-title{color:#0f172a;margin-bottom:18px;font-size:20px;font-weight:800}.day-lessons{flex-direction:column;gap:14px;display:flex}.lesson-box{background:#fff;border-radius:18px;padding:16px;box-shadow:0 2px 8px #0000000d}.lesson-top{align-items:center;gap:14px;margin-bottom:12px;display:flex}.lesson-pair{color:#fff;background:#2563eb;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:16px;font-weight:800;display:flex}.lesson-top h3{color:#0f172a;margin-bottom:4px;font-size:16px}.lesson-top p{color:#64748b;font-size:14px}.lesson-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.lesson-bottom span{color:#2563eb;font-size:13px;font-weight:700}.empty-day{text-align:center;color:#64748b;background:#fff;border:1px dashed #cbd5e1;border-radius:16px;padding:18px;font-size:14px}@media (width<=768px){.student-page{padding:14px}.student-header{flex-direction:column;align-items:stretch}.student-header button{width:100%}.student-schedule{padding:18px}.week-grid{grid-template-columns:1fr}.lesson-bottom{flex-direction:column;align-items:flex-start}}*{box-sizing:border-box;margin:0;padding:0;font-family:sans-serif}body{background:#f1f5f9}
