*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;transition:background-color .3s,color .3s}:root.dark-mode body{background-color:#1a1a1a;color:#e0e0e0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{margin:0 auto;max-width:1200px;padding:20px;transition:background-color .3s,color .3s}:root.dark-mode .container{background-color:#1a1a1a;color:#e0e0e0}.btn{border:none;border-radius:5px;cursor:pointer;font-size:16px;padding:10px 20px;transition:all .3s}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#545b62}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover{background-color:#218838}.btn:disabled{cursor:not-allowed;opacity:.6}.form-group{margin-bottom:15px}.form-group label{display:block;font-weight:500;margin-bottom:5px}.form-group input,.form-group select{border:1px solid #ddd;border-radius:5px;font-size:16px;padding:10px;width:100%}.form-group input:focus,.form-group select:focus{border-color:#007bff;outline:none}.card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px;transition:background-color .3s,color .3s,box-shadow .3s}:root.dark-mode .card{background:#2d2d2d;box-shadow:0 2px 4px #0000004d;color:#e0e0e0}.error{color:#dc3545}.error,.success{font-size:14px;margin-top:5px}.success{color:#28a745}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh}.login-card{background:#fff;border-radius:10px;box-shadow:0 10px 25px #0003;max-width:400px;padding:40px;transition:background-color .3s,color .3s;width:100%}:root.dark-mode .login-card{background:#2d2d2d;color:#e0e0e0}.login-card h2{color:#2c3e50;font-size:32px;margin-bottom:10px;text-align:center}.login-card h3{color:#7f8c8d;font-weight:400;margin-bottom:30px;text-align:center}.btn-block{margin-top:10px;width:100%}.register-link{color:#7f8c8d;margin-top:20px;text-align:center}.register-link a{color:#667eea;text-decoration:none}.register-link a:hover{text-decoration:underline}.header h1{margin:0}.theme-toggle-btn{align-items:center;background:#0000;border:2px solid #ffffff4d;border-radius:5px;color:#fff;cursor:pointer;display:flex;font-size:18px;justify-content:center;padding:8px 12px;transition:all .3s}.theme-toggle-btn:hover{background-color:#ffffff1a;border-color:#ffffff80}:root.dark-mode .theme-toggle-btn{border-color:#ffffff80}.lesson-slot{background:#fff;border:1px solid #ddd;border-radius:6px;font-size:12px;max-width:100%;overflow:hidden;padding:6px;transition:background-color .3s,border-color .3s,color .3s}:root.dark-mode .lesson-slot{background:#2d2d2d;border-color:#444;color:#e0e0e0}.lesson-slot.full{background:#ffebee;border-color:#f44336}.lesson-slot.booked{background:#e8f5e9;border-color:#4caf50}.lesson-slot.inactive{background:#f5f5f5;opacity:.6}.lesson-time{color:#2c3e50;font-size:14px;font-weight:600;margin-bottom:3px;transition:color .3s}:root.dark-mode .lesson-time{color:#e0e0e0}.lesson-capacity{color:#7f8c8d;font-size:12px;margin-bottom:4px}.lesson-actions{margin-top:4px}.btn-sm{font-size:8px;line-height:1;padding:3px 6px}.lesson-instructor-actions{display:flex;flex-direction:column;gap:4px;margin-top:4px}.lesson-bookings{font-size:10px;max-height:60px;overflow-x:hidden;overflow-y:auto}.lesson-bookings-count{color:#2c3e50;font-size:13px;font-weight:600;margin-top:4px;text-align:center;transition:color .3s}:root.dark-mode .lesson-bookings-count{color:#e0e0e0}.bookings-list{margin-top:2px}.bookings-list strong{color:#666;display:block;font-size:12px;margin-bottom:2px}.booking-item{align-items:center;color:#555;display:flex;font-size:12px;gap:4px;justify-content:space-between;max-width:100%;padding:2px 0;white-space:nowrap}.booking-item,.booking-name{overflow:hidden;text-overflow:ellipsis}.booking-name{flex:1 1;min-width:0}.attendance-checkbox{align-items:center;cursor:pointer;display:flex;flex-shrink:0}.attendance-checkbox input[type=checkbox]{accent-color:#4caf50;cursor:pointer;height:14px;margin:0;width:14px}.attendance-checkbox input[type=checkbox]:checked{accent-color:#4caf50}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:8px;max-height:90vh;max-width:500px;overflow-y:auto;padding:20px;transition:background-color .3s,color .3s;width:90%}:root.dark-mode .modal-content{background:#2d2d2d;color:#e0e0e0}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.modal-header h3{color:#2c3e50;margin:0;transition:color .3s}:root.dark-mode .modal-header h3{color:#e0e0e0}.modal-close{background:none;border:none;color:#7f8c8d;cursor:pointer;font-size:28px;line-height:1}.modal-close:hover{color:#2c3e50}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.lesson-detail-modal{max-width:600px;width:90%}.lesson-detail-content{padding:10px 0}.lesson-detail-info{background:#f5f5f5;border-radius:6px;margin-bottom:20px;padding:15px}.detail-row{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:8px 0}.detail-row:last-child{border-bottom:none}.detail-row strong{color:#2c3e50;font-weight:600}.detail-row span{color:#555}.status-badge.inactive{background:#ffebee;color:#c62828}.status-badge.completed{background:#e3f2fd;color:#1976d2}.lesson-bookings-detail{margin-top:20px}.lesson-bookings-detail h4{color:#2c3e50;font-size:16px;margin-bottom:15px}.bookings-detail-list{display:flex;flex-direction:column;gap:10px;max-height:300px;overflow-y:auto}.booking-detail-item{align-items:center;background:#fafafa;border:1px solid #e0e0e0;border-radius:6px;display:flex;justify-content:space-between;padding:12px}.booking-student-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.student-name{color:#2c3e50;font-size:14px;font-weight:600}.student-email{color:#7f8c8d;font-size:12px}.attendance-checkbox-detail{align-items:center;cursor:pointer;display:flex;flex-shrink:0;gap:6px}.attendance-checkbox-detail input[type=checkbox]{accent-color:#4caf50;cursor:pointer;height:18px;width:18px}.attendance-checkbox-detail span{color:#555;font-size:14px}.attendance-status{border-radius:12px;font-size:14px;font-weight:500;padding:4px 12px}.attendance-status.attended{background:#e8f5e9;color:#2e7d32}.attendance-status.absent{background:#ffebee;color:#c62828}.no-bookings-detail{color:#7f8c8d;font-style:italic;padding:30px;text-align:center}.calendar-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;transition:background-color .3s,color .3s,box-shadow .3s}:root.dark-mode .calendar-container{background:#2d2d2d;box-shadow:0 2px 4px #0000004d;color:#e0e0e0}.calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.calendar-header h2{color:#2c3e50;font-size:24px;transition:color .3s}:root.dark-mode .calendar-header h2{color:#e0e0e0}.calendar-actions{margin-bottom:20px}.calendar-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(7,1fr)}.calendar-day{background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;min-height:150px;overflow:hidden;padding:8px;transition:background-color .3s,border-color .3s}:root.dark-mode .calendar-day{background:#2d2d2d;border-color:#444}.calendar-day.today{background:#e3f2fd;border-color:#2196f3}:root.dark-mode .calendar-day.today{background:#1e3a5f;border-color:#4da6ff}.calendar-day.past{opacity:.6}.day-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:10px;padding-bottom:8px}.day-number{color:#2c3e50;font-size:18px;font-weight:700;transition:color .3s}:root.dark-mode .day-number{color:#e0e0e0}.day-name{color:#7f8c8d;font-size:12px;text-transform:uppercase;transition:color .3s}:root.dark-mode .day-name{color:#aaa}.day-lessons{display:flex;flex-direction:column;gap:6px;max-width:100%;overflow:hidden}.no-lessons{color:#95a5a6;font-size:12px;padding:10px 0;text-align:center}.add-lesson-btn{background:#e0e0e0;border:1px dashed #bdbdbd;border-radius:4px;color:#666;cursor:pointer;font-size:12px;padding:8px;width:100%}.add-lesson-btn:hover{background:#d0d0d0}.loading{padding:40px}@media (max-width:768px){.calendar-grid{grid-template-columns:repeat(1,1fr)}}.student-list-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;transition:background-color .3s,color .3s,box-shadow .3s}:root.dark-mode .student-list-container{background:#2d2d2d;box-shadow:0 2px 4px #0000004d;color:#e0e0e0}.student-list-container h2{color:#2c3e50;margin-bottom:20px;transition:color .3s}:root.dark-mode .student-list-container h2{color:#e0e0e0}.no-students{color:#7f8c8d;padding:40px;text-align:center}.student-table{display:flex;flex-direction:column}.table-header{grid-gap:15px;background:#f5f5f5;border-radius:6px;color:#2c3e50;display:grid;font-weight:600;gap:15px;grid-template-columns:2fr 2fr 1fr 1fr 1fr 1.5fr;margin-bottom:10px;padding:12px;transition:background-color .3s,color .3s}:root.dark-mode .table-header{background:#1a1a1a;color:#e0e0e0}.table-row{grid-gap:15px;align-items:center;border-bottom:1px solid #e0e0e0;display:grid;gap:15px;grid-template-columns:2fr 2fr 1fr 1fr 1fr 1.5fr;padding:12px;transition:border-color .3s}:root.dark-mode .table-row{border-bottom-color:#444}.table-row:last-child{border-bottom:none}.col-absence,.col-actions,.col-email,.col-name,.col-quota,.col-used{align-items:center;display:flex}.quota-input{border:1px solid #ddd;border-radius:4px;padding:6px;width:80px}.edit-actions{display:flex;gap:8px}@media (max-width:768px){.table-header,.table-row{gap:8px;grid-template-columns:1fr}.table-header{display:none}.table-row{border:1px solid #e0e0e0;border-radius:6px;margin-bottom:10px;padding:15px}.col-name:before{content:"Ad Soyad: ";font-weight:600}.col-email:before{content:"Email: ";font-weight:600}.col-quota:before{content:"Aylık Kota: ";font-weight:600}.col-used:before{content:"Kullanılan: ";font-weight:600}.col-absence:before{content:"Devamsızlık: ";font-weight:600}}.lesson-config-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;transition:background-color .3s,color .3s,box-shadow .3s}:root.dark-mode .lesson-config-container{background:#2d2d2d;box-shadow:0 2px 4px #0000004d;color:#e0e0e0}.lesson-config-container h2{color:#2c3e50;margin-bottom:10px;transition:color .3s}:root.dark-mode .lesson-config-container h2{color:#e0e0e0}.config-description{color:#7f8c8d;margin-bottom:30px}.config-section{display:flex;flex-direction:column;gap:30px}.config-item{background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;padding:20px}.config-item label{color:#2c3e50;display:block;font-size:16px;font-weight:600;margin-bottom:8px}.config-help{color:#7f8c8d;font-size:14px;margin-bottom:15px}.config-input-group{align-items:center;display:flex;gap:10px}.config-input-group input{border:1px solid #ddd;border-radius:5px;font-size:16px;padding:10px;width:100px}.loading{color:#7f8c8d;padding:20px;text-align:center}.tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:10px;margin-bottom:20px;transition:border-color .3s}:root.dark-mode .tabs{border-bottom-color:#444}.tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:16px;padding:12px 24px;transition:all .3s}:root.dark-mode .tab{color:#aaa}.tab:hover{color:#007bff}:root.dark-mode .tab:hover{color:#4da6ff}.tab.active{border-bottom-color:#007bff;color:#007bff;font-weight:600}:root.dark-mode .tab.active{border-bottom-color:#4da6ff;color:#4da6ff}.quota-info{margin-bottom:20px}.quota-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;padding:20px;text-align:center}.quota-card h3{font-size:18px;margin-bottom:10px}.quota-text{font-size:32px;font-weight:700}.my-bookings-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;transition:background-color .3s,color .3s,box-shadow .3s}:root.dark-mode .my-bookings-container{background:#2d2d2d;box-shadow:0 2px 4px #0000004d;color:#e0e0e0}.my-bookings-container h2{color:#2c3e50;margin-bottom:20px;transition:color .3s}:root.dark-mode .my-bookings-container h2{color:#e0e0e0}.no-bookings{color:#7f8c8d;padding:40px;text-align:center}.bookings-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.booking-card{background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;padding:20px;transition:background-color .3s,border-color .3s,color .3s}:root.dark-mode .booking-card{background:#2d2d2d;border-color:#444;color:#e0e0e0}.booking-card.past{background:#f5f5f5;opacity:.6}.booking-card.attended{background:#e8f5e9;border-color:#4caf50}.booking-date{margin-bottom:15px}.date-main{color:#2c3e50;font-size:20px;font-weight:600;margin-bottom:4px}.date-day{color:#7f8c8d;font-size:14px;text-transform:capitalize}.booking-time{margin-bottom:15px}.time-label{color:#7f8c8d;font-size:12px;margin-bottom:4px}.time-value{color:#2c3e50;font-size:16px;font-weight:500}.booking-status{margin-bottom:15px}.status-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:500;padding:4px 12px}.status-badge.active{background:#e8f5e9;color:#2e7d32}.status-badge.past{background:#f5f5f5;color:#757575}.booking-actions{margin-top:15px}.btn-sm{font-size:14px;padding:6px 12px}.App{min-height:100vh}.header{background-color:#2c3e50;box-shadow:0 2px 4px #0000001a;color:#fff;padding:15px 0}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.header h1{font-size:24px}.header-actions{align-items:center;display:flex;gap:15px}.header-actions span,.logout-btn{font-size:14px}.logout-btn{background-color:#e74c3c;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:8px 16px}.logout-btn:hover{background-color:#c0392b}
/*# sourceMappingURL=main.c4afb5d9.css.map*/