@import"https://fonts.googleapis.com/css2?family=Orbitron:wght@700&family=Roboto+Condensed:wght@700&display=swap";*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,Segoe UI,Roboto,-apple-system,BlinkMacSystemFont,sans-serif}body{background-color:#000;color:#fff;font-family:system-ui,sans-serif}#root{min-height:100vh}.login-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#000;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;box-sizing:border-box}.login-modal{border:2px solid #333;border-radius:12px;width:85%;max-width:420px;max-height:85vh;box-shadow:0 0 50px #fff3,0 0 100px #ffffff26,0 0 150px #ffffff14;overflow:hidden;overflow-y:auto;scroll-behavior:smooth;-ms-overflow-style:none;scrollbar-width:none}.login-modal::-webkit-scrollbar{display:none}.app-info{padding:40px;background-color:#000;color:#fff;text-align:center}.app-info h1{margin:0 0 30px;font-size:29px;font-weight:700;color:#fff;letter-spacing:-.5px}.app-info p{margin:0 0 18px;line-height:1.6;color:#ccc;font-size:15px;font-weight:400}.timetable-reference{margin-bottom:22px!important;font-size:14px;color:#aaa;font-weight:400}.app-title{font-family:Orbitron,Roboto Condensed,Arial Black,sans-serif;font-weight:700;letter-spacing:2px;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.timetable-link{color:#4a9eff;text-decoration:none;font-weight:500}.timetable-link:hover{color:#6bb3ff;text-decoration:underline}.features{display:flex;justify-content:space-around;margin-top:18px}.feature{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:11px;color:#aaa;font-weight:500}.feature-icon{font-size:16px}.login-section{padding:18px 50px 25px;background-color:#000}.login-section h2{margin:0 0 14px;text-align:center;color:#fff;font-size:20px;font-weight:600;letter-spacing:-.3px}.form-group{margin-bottom:11px}.form-group input{width:100%;padding:10px;border:2px solid #333;border-radius:6px;background-color:#2a2a2a;color:#fff;font-size:14px;font-weight:400;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#555;background-color:#333}.form-group input::placeholder{color:#888;font-weight:400}.login-button{width:100%;padding:10px;background-color:#fff;color:#000;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s;letter-spacing:.2px}.login-button:hover{background-color:#e0e0e0}.login-footer{text-align:center;margin-top:14px;color:#888;font-size:12px;font-weight:400}.login-footer a{color:#ccc;text-decoration:none;margin:0 10px;font-weight:500}.login-footer a:hover{color:#fff;text-decoration:underline}.dashboard-container{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#000;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;box-sizing:border-box}.dashboard-header{display:flex;justify-content:space-between;align-items:center;width:85%;max-width:600px;margin-bottom:2rem}.dashboard-title{font-family:Orbitron,Roboto Condensed,Arial Black,sans-serif;font-weight:700;letter-spacing:2px;text-shadow:2px 2px 4px rgba(0,0,0,.3);font-size:14px;color:#fff;margin:0}.logout-button{background:none;color:#fff;border:none;cursor:pointer;font-size:14px;font-weight:600;letter-spacing:.2px;transition:color .2s;padding:0}.logout-button:hover{color:#ccc;text-decoration:underline}.dashboard-content{width:85%;max-width:590px;height:70vh;background-color:#000;border:2px solid #333;border-radius:12px;padding:40px;box-shadow:0 0 50px #fff3,0 0 100px #ffffff26,0 0 150px #ffffff14;color:#fff;text-align:center;overflow:hidden;scroll-behavior:smooth;display:flex;flex-direction:column}.dashboard-content h2{color:#fff;margin:0 0 30px;font-size:20px;font-weight:600;letter-spacing:-.3px;flex-shrink:0}.open-modal-button{background-color:#fff;color:#000;border:none;padding:12px 24px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s;letter-spacing:.2px;margin-bottom:30px;flex-shrink:0}.open-modal-button:hover{background-color:#e0e0e0}.courses-table-container{width:100%;flex:1;min-height:0;overflow-y:auto;overflow-x:auto;border:1px solid #333;border-radius:6px;scroll-behavior:smooth;min-width:100%}.courses-table-container::-webkit-scrollbar{width:0px;background:transparent}.courses-table-container{-ms-overflow-style:none;scrollbar-width:none}.courses-table{width:100%;border-collapse:collapse}.courses-table th{background-color:#1a1a1a;color:#fff;padding:12px;text-align:left;font-weight:600;font-size:14px;border-bottom:2px solid #333;position:sticky;top:0;z-index:1}.courses-table td{padding:16px 12px;border-bottom:1px solid #333;vertical-align:middle}.course-info{text-align:left}.course-number{font-weight:600;font-size:14px;color:#fff;margin-bottom:4px}.course-name{font-size:12px;color:#ccc;font-weight:400}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.available{background-color:#2d5016;color:#7dd3fc}.status-badge.unavailable{background-color:#5c1a1a;color:#f87171}.actions-cell{text-align:center}.action-buttons{display:flex;gap:8px;justify-content:center;align-items:center}.action-btn{background-color:#333;border:1px solid #555;color:#fff;width:32px;height:32px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s}.action-btn:hover{background-color:#444;border-color:#666}.play-btn:hover{background-color:#2d5016;border-color:#4ade80;color:#4ade80}.pause-btn:hover{background-color:#5c2d00;border-color:#f59e0b;color:#f59e0b}.delete-btn:hover{background-color:#5c1a1a;border-color:#ef4444;color:#ef4444}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background-color:#000;border:2px solid #333;border-radius:12px;width:85%;max-width:420px;box-shadow:0 0 50px #fff3,0 0 100px #ffffff26,0 0 150px #ffffff14}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:30px 40px 20px;border-bottom:1px solid #333}.modal-header h3{color:#fff;margin:0;font-size:20px;font-weight:600;letter-spacing:-.3px}.close-button{background:none;color:#fff;border:none;font-size:24px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.close-button:hover{color:#ccc}.modal-form{padding:20px 40px 30px}.modal-input,.modal-textarea{width:100%;padding:10px;border:2px solid #333;border-radius:6px;background-color:#2a2a2a;color:#fff;font-size:14px;font-weight:400;box-sizing:border-box;font-family:inherit}.modal-input:focus,.modal-textarea:focus{outline:none;border-color:#555;background-color:#333}.modal-input::placeholder,.modal-textarea::placeholder{color:#888;font-weight:400}.modal-textarea{resize:vertical;min-height:80px}.modal-buttons{display:flex;gap:12px;margin-top:20px}.cancel-button,.submit-button{flex:1;padding:10px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s;letter-spacing:.2px}.cancel-button{background-color:#333;color:#fff}.cancel-button:hover{background-color:#444}.submit-button{background-color:#fff;color:#000}.submit-button:hover{background-color:#e0e0e0}@media (max-width: 480px){.dashboard-container{padding:10px}.dashboard-header{width:95%;margin-bottom:1rem}.dashboard-title{font-size:12px;letter-spacing:1px}.dashboard-content{width:95%;padding:20px;height:75vh}.dashboard-content h2{font-size:18px;margin-bottom:20px}.open-modal-button{padding:10px 20px;font-size:13px;margin-bottom:20px}.courses-table{font-size:12px}.courses-table th{padding:8px 6px;font-size:12px}.courses-table td{padding:12px 6px}.course-number{font-size:13px}.course-name{font-size:11px}.status-badge{padding:3px 8px;font-size:10px}.action-btn{width:28px;height:28px;font-size:12px}.action-buttons{gap:6px}.modal-content{width:95%;max-width:none;margin:10px}.modal-header{padding:20px 20px 15px}.modal-header h3{font-size:18px}.modal-form{padding:15px 20px 20px}.modal-input{padding:12px;font-size:16px}.close-button{width:40px;height:40px;font-size:20px}}
