@import url(https://fonts.googleapis.com/css2?family=Tajawal:wght@300;400;700&display=swap);body.dark-mode{background-image:url(/static/media/pattern.9bd62c1e6c981012f126.svg)}body.dark-mode,body.dark-mode .loading{background-color:#1c2537;background-position:50%;background-size:cover}body.dark-mode .loading{background-repeat:no-repeat;color:#fff}.theme-toggle-base{display:flex!important;justify-content:center!important;padding:5px 15px!important}.theme-toggle-floating{bottom:20px;position:fixed;right:20px;z-index:9999}body.dark-mode .forgot-password-container,body.dark-mode .signin-form-container,body.dark-mode .signup-form-container{background-color:#1e1e1e;border-radius:12px;box-shadow:0 0 10px #3690eb4d;color:#fff}body.dark-mode input::placeholder{color:#fff9}body.dark-mode .eye-button,body.dark-mode .forgot-password-text,body.dark-mode .radio-label{color:#fff}body.dark-mode .forgot-password-button,body.dark-mode .signin-button,body.dark-mode .signup-button{background-color:#007baa;border-radius:999px;color:#fff;font-weight:700;padding:10px 30px;transition:background-color .3s ease}body.dark-mode .forgot-password-button:hover,body.dark-mode .signin-button:hover,body.dark-mode .signup-button:hover{background-color:#009cd7}body.dark-mode .success-message{background-color:#1e2a2f;border-radius:6px;color:#d1f7c4;font-size:14px;margin-bottom:10px;padding:10px 15px}body.dark-mode .admin-navbar,body.dark-mode .pending-registrars,body.dark-mode .user-management{background-color:#1e1e1e;border-radius:12px;box-shadow:0 0 10px #00ff8026;color:#fff}body.dark-mode .filter-controls{background-color:#2e2d2d;color:#fff}body.dark-mode::-webkit-scrollbar{width:8px}body.dark-mode::-webkit-scrollbar-thumb{background-color:#007baa;border-radius:10px}body.dark-mode::-webkit-scrollbar-track{background:#1f2937}.theme-toggle-container{align-items:center;display:flex;gap:12px;justify-content:center;margin:10px 0;padding:10px 15px;transition:all .3s ease}.theme-toggle-container:hover{background-color:initial;border:none;border-radius:0}.theme-label{color:#333;font-size:16px}.switch{cursor:pointer;display:inline-block;font-size:17px;height:2em;position:relative;width:3.5em}.switch input{height:0;opacity:0;width:0}.slider{--background:#20262c;background-color:var(--background);border-radius:30px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.5s}.slider:before{background:var(--background);bottom:15%;box-shadow:inset 8px -4px 0 0 #ececd9,-4px 1px 4px 0 #dadada;height:1.4em;left:10%;transition:.5s;width:1.4em}.decoration,.slider:before{border-radius:50%;content:"";position:absolute}.decoration{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#e5f041e6;box-shadow:-7px 10px 0 #e5f041e6,8px 15px 0 #e5f041e6,-17px 1px 0 #e5f041e6,-20px 10px 0 #e5f041e6,-7px 23px 0 #e5f041e6,-15px 25px 0 #e5f041e6;height:2px;right:20%;top:15%;transition:all .5s;width:2px}input:checked~.decoration{background:#fff;box-shadow:-12px 0 0 #fff,-6px 0 0 1.6px #fff,5px 15px 0 1px #fff,1px 17px 0 #fff,10px 17px 0 #fff;height:10px;transform:translateX(-20px);width:10px}input:checked+.slider{background-color:#5494de}input:checked+.slider:before{box-shadow:inset 15px -4px 0 15px #efdf2b,0 0 10px 0 #efdf2b;transform:translateX(100%)}body.dark-mode,html.dark-mode{background-color:#0d1117;color:#f5f5f5;height:100%;margin:0;min-height:100vh;padding:0;width:100%}body.dark-mode #root{background:#0000;height:100%;min-height:100vh;position:relative;width:100%;z-index:1}body.dark-mode .theme-label{color:#f5f5f5}body.dark-mode .centered-nav{background-color:#2f2e2e!important}body.dark-mode .app-sidebar{background-color:#242424;color:#f5f5f5}body.dark-mode .profile_info .email,body.dark-mode .profile_info .name{color:#f5f5f5}body.dark-mode .nav_image img{content:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAA3CAYAAABZ0InLAAADs0lEQVR4nO1a7XHbMAx97nUAdoIqE1QbVJmg3sDuBE0nsDuBs4GTCeIN7EwQdwI5E0gbvP4gVdMSJZGgePm4vDueZJgU8EQKACHNSOI949NLG5AaHwTfOj4nvr4CkJmmWv/Vph3NMQlSECwA/AAwhybmg6Np9wAOk1pDcoqmSK5IVoxHSXJLMpvCttdEzIVNLNEYcvOExGyUJBdSO6XkNul5dbAS2IkZwzIZBeAB2pG8BHYAfiLA64YQVAD2APIwmybHEcA1PEmGENwjbuaeAZTmPEc3LobgAE1yHJ5reSV8biqSa7o9YUbyTnhdUvuBSZzMUmhAyUtiimROsjDnNtFSqKMYs3+MnFR5yTO5nOTe0Wdv9YnRY9+sYIIrgVJahvvEyoXpWwh1rSkkmAkVbq3xlUf/iucbshPoqzgwi0PbpV9CD3dvjiv4eUoF4Mac3wr02eM7GAoTJfx3Aza+QMeokPEnAFfQxlYCnbXR20EfwQI67kkwM8fQYo90XINrOLZafUt0LlQCnJdlHTCm6asG+oxh7hL2EfwWoSg3x2PAmMfWWAm+u4R9BIsIRc3YPwFj1ua4iNCbO6UO15oLXHWf21579G/iWExG06CTEroISgOujb11vSXdhlckb6x+DxPo7aRurqKTilgmDQoAW+i9251pc1w+nwdo56IAbBDn2BpkHUmbMeXJtQslh8sNBeOXpY1lW0fqumgGPXtr6Fn7a+RfoWdMTayvbgtcBE8TKwXOxd95gmvbqNsCV5g4JTYiJeq2oC9Ve6vv1GZtQV+gP6a1IwkeXcI+gs7OrxxHl7CP4C6ZGemwcwmH9oMVpnPjTcnwZH5n0Pu3mKTexgl6P9nFQBD2ySOHcDCBd6gopEyfh0hdmz4dQzOozF1XgXdzB+A3LsNNZrUa7hefGXRCINlRXKEvvA3c3dBZLHmZ7GbUVblyZMyWl7uAvuS8D+KqWrOEfJSVlpGKsrdPW4bXSW29IoI+2ydbSe5p2NC1cvrf3AVH7PchCJK3AwY15BbhfEYNz9hfWx1cmgwkCLrL7z6GSFDxPJNzx/8HX7tDCCqSTw4lvs9pKEqeQ8zekj9x5H0EhQTbJAsjW03P7T+aZdjM4oEB5CggaD+TJeOdyhgqQ640OoNtlRIEw+OVFBU1SZGdMQRB7VxuExJbM3BJTk3QJnrHaWZ0EmJNC/2MxAcFgCV0idB3t/AMncPuMPG3aikI2lA4f1GhWv/V0AnyCQm/NkxN8MXx7j+I/SD41vEPsEj/sVTR6RIAAAAASUVORK5CYII=);height:inherit;object-fit:contain;width:inherit}body.dark-mode .menu_item .link{color:#f5f5f5}body.dark-mode .menu_item .link:hover{background-color:#fff3!important;border:2px solid #fff!important}body.dark-mode .bottom_content{border-top-color:#ffffff1a}body.dark-mode main{background-color:#1a1a1a}body.dark-mode .card,body.dark-mode .container{background-color:#242424;color:#f5f5f5}body.dark-mode input,body.dark-mode select,body.dark-mode textarea{color:#f5f5f5}body.dark-mode .schedule-cell,body.dark-mode .schedule-container,body.dark-mode .schedule-header{background-color:#242424;border-color:#444;color:#f5f5f5}body.dark-mode .page-content{background-color:#2f2e2e!important;box-shadow:0 0 10px #0fbded4d}body.dark-mode .form-section,body.dark-mode .preferences{background-color:#2f2e2e}body.dark-mode .preference-item,body.dark-mode .preference-item label{background-color:#3b3939;color:#f5f5f5!important}body.dark-mode .credit-counter p{background-color:#0c0c0c}body.dark-mode .credit-summary{background-color:#e8f5e9;color:#006400!important}body.dark-mode .custom-notification p{color:#000!important}body.dark-mode .schedule-table th{background-color:#333;color:#f5f5f5}body.dark-mode .popup-content{background-color:#3b3939;color:#f5f5f5}body.dark-mode .popup-content strong{color:#2a5;font-weight:700}body.dark-mode .popup-content h3{color:#f5f5f5}body.dark-mode .courses-without-time{background-color:#0d1117}body.dark-mode .courses-without-time h3{color:#f5f5f5}body.dark-mode .no-time-course-item{background-color:#3b3939;color:#f5f5f5}body.dark-mode .no-time-course-credit{background-color:#636161;color:#f5f5f5}body.dark-mode .no-schedules{background-color:#0c0c0c;color:#f5f5f5}body.dark-mode .checkbox-label,body.dark-mode .student-type-selection{background-color:#3b3939;color:#f5f5f5}body.dark-mode .time-slot{background-color:#333;color:#f5f5f5}body.dark-mode .dropdown-container,body.dark-mode select{background-color:#333;border-color:#444;color:#f5f5f5}body.dark-mode .schedule-card{background-color:#242424;border-color:#444;color:#f5f5f5}body.dark-mode .course-block.blue{background-color:#1a365d}body.dark-mode .course-block.green{background-color:#1c4532}body.dark-mode .schedule-controls{background-color:#242424;border-color:#444}body.dark-mode .schedule-list-item{background-color:#333;border-color:#444;color:#f5f5f5}body.dark-mode .content-wrapper{background-color:#1a1a1af2}body.dark-mode .schedule-grid{background-color:#242424;border-color:#444}body.dark-mode .schedule-grid td,body.dark-mode .schedule-grid th{border-color:#444}body.dark-mode .schedule-header{background-color:#333}body.dark-mode .time-column{background-color:#333;color:#f5f5f5}body.dark-mode .hero-section{background-color:initial!important;color:#fff}body.dark-mode .hero-content{background-color:#2f2e2e!important;box-shadow:0 0 10px #3690eb4d}body.dark-mode .feature-box{background-color:#2f2e2e}body.dark-mode .feature-box h4{color:#f5f5f5}body.dark-mode .feature-box p{color:#d1d5db;font-size:1.1rem}body.dark-mode .features-header h2{color:#f5f5f5}body.dark-mode .footer{background-color:#2f2e2e;color:#000}body.dark-mode .schedule-container{background-color:#161b22!important;border:1px solid #ffffff1a}body.dark-mode .schedule-header,body.dark-mode .time-slot,body.dark-mode table td,body.dark-mode table th{background-color:#0d1117;border-color:#ffffff1a!important;color:#fff!important}body.dark-mode .schedule-table td:first-child{background-color:#0d1117!important}body.dark-mode .schedule-table{background-color:#161b22!important;border:1px solid #000;box-shadow:0 0 10px #0fbded4d;color:#fff}body.dark-mode .schedule-table th{background-color:#21262d!important;border-color:#ffffff1a;color:#fff}body.dark-mode .course-block{background-color:#238636!important;color:#fff!important;opacity:.9}body.dark-mode .card,body.dark-mode .container,body.dark-mode .white-container{background-color:#161b22!important;border:1px solid #ffffff1a;color:#fff}body.dark-mode .css-13cymwt-control{background-color:#161b22!important;border-color:#ffffff1a;box-shadow:none!important}body.dark-mode .css-1p3m7a8-multiValue{background-color:#0067f7!important}body.dark-mode .css-9jq23d,body.dark-mode .css-v7duua{color:#fff!important}body.dark-mode .css-1f43avz-a11yText-A11yText{background-color:#fdfeff!important;color:#fff!important}body.dark-mode .css-1nmdiq5-menu{border:1px solid #ffffff1a!important}body.dark-mode .css-1n6sfyn-MenuList,body.dark-mode .css-1nmdiq5-menu,body.dark-mode .css-d7l1ni-option{background-color:#161b22!important}body.dark-mode .css-d7l1ni-option{color:#fff!important}body.dark-mode .css-tr4s17-option{background-color:#238636!important;color:#fff!important}body.dark-mode .css-10wo9uf-option{background-color:#21262d!important;color:#fff!important}body.dark-mode .css-1p3m7a8-multiValue{background-color:#474847!important;color:#fff!important}body.dark-mode .css-1p3m7a8-multiValue>div{color:#fff!important}body.dark-mode .css-1p3m7a8-multiValue .css-v7duua{background-color:initial!important;color:#fff!important}body.dark-mode .css-v7duua:hover{background-color:#ffffff1a!important}body.dark-mode .course-planner-container{background-color:#3a3a3b;color:#fff}body.dark-mode .legend-label,body.dark-mode .status-legend,body.dark-mode .total-credits{background-color:#1c1c1d;color:#fff}body.dark-mode .courses-grid{background-color:#3a3a3b;color:#fff}body.dark-mode .course-credits{color:#000}body.dark-mode .elective-credits-badge,body.dark-mode .elective-header,body.dark-mode .elective-limit-badge{background-color:#1c1c1d;color:#fff}body.dark-mode .course-planner-page h1,body.dark-mode .course-planner-page h2,body.dark-mode .course-planner-page h3,body.dark-mode .planner-area-title,body.dark-mode .status-name{color:#fff}body.dark-mode .compare-page,body.dark-mode .course-planner-page,body.dark-mode .course-planner-page-main-content{background-color:#1a202c}body.dark-mode .compare-container{background-color:#2d3748;box-shadow:0 4px 12px #0000004d;color:#e2e8f0}body.dark-mode .compare-page h1,body.dark-mode .compare-page h2,body.dark-mode .compare-page h3,body.dark-mode .compare-page h4{border-color:#4a5568;color:#fff}body.dark-mode .course-input-form,body.dark-mode .courses-list,body.dark-mode .interactive-schedule-container{background-color:#252c37;box-shadow:0 2px 8px #0003}body.dark-mode .compare-page .input-group label{color:#cbd5e0}body.dark-mode .compare-page .course-id-group input,body.dark-mode .compare-page .input-group input[type=text],body.dark-mode .compare-page .section-group input{background-color:#1a202c;border:1px solid #007baa;color:#f5f5f5}body.dark-mode .compare-page input::placeholder{color:#718096}body.dark-mode .compare-page .suggestions{background-color:#2d3748;border:1px solid #4a5568;box-shadow:0 4px 6px #0000004d}body.dark-mode .compare-page .suggestions li{color:#e2e8f0}body.dark-mode .compare-page .suggestions li:hover{background-color:#4a5568}body.dark-mode .compare-page .courses-table{border-color:#4a5568}body.dark-mode .compare-page .course-header{background-color:#1a202c;color:#cbd5e0}body.dark-mode .compare-page .course-row{border-top-color:#4a5568}body.dark-mode .compare-page .course-row:nth-child(2n){background-color:#252c37}body.dark-mode .compare-page .section-display{background-color:#2b3f5c;border-color:#4a7f9e;color:#bee3f8}body.dark-mode .changes-container{background-color:#2d3748;border-color:#007baa;box-shadow:0 4px 12px #0000004d;color:#e2e8f0}body.dark-mode .changes-container:before{border-bottom-color:#2fd34d}body.dark-mode .changes-container:after{background:#2fd34d;color:#fff}body.dark-mode .changes-summary{border-color:#4a5568}body.dark-mode .changes-summary>div{background-color:#252c37}body.dark-mode .changes-summary span{background-color:#4a5568;color:#e2e8f0}body.dark-mode .changes-count{background-color:#252c37;border-color:#4a5568}body.dark-mode .removal-count{background-color:#450a0a;border:1px solid #7f1d1d;color:#f87171}body.dark-mode .removal-count span{background-color:#7f1d1d;color:#fecaca}body.dark-mode .section-change-count{background-color:#1e3a8a;border:1px solid #1e40af;color:#93c5fd}body.dark-mode .section-change-count span{background-color:#1e40af;color:#dbeafe}body.dark-mode .addition-count{background-color:#064e3b;border:1px solid #047857;color:#6ee7b7}body.dark-mode .addition-count span{background-color:#047857;color:#d1fae5}body.dark-mode .changes-section{background-color:#1a202c;border-color:#4a5568}body.dark-mode .change-item{background:#252c37;box-shadow:0 2px 5px #0003}body.dark-mode .change-item.remove{border-right-color:#e53e3e}body.dark-mode .change-item.change{border-right-color:#3182ce}body.dark-mode .change-item.add{border-right-color:#38a169}body.dark-mode .course-details{background:#1a202c}body.dark-mode .change-item.add .course-details p strong{background-color:#064e3b;border-color:#047857;color:#6ee7b7}body.dark-mode .change-item.change .from-section p strong,body.dark-mode .change-item.remove .course-details p strong{background-color:#450a0a;border-color:#7f1d1d;color:#f87171}body.dark-mode .change-item.change .to-section p strong,body.dark-mode .no-changes{background-color:#064e3b;border-color:#047857;color:#6ee7b7}body.dark-mode .error-container,body.dark-mode .error-container p{background-color:#474545;color:#fff}body.dark-mode .saved-steps-list-page{background-color:#1a202c}body.dark-mode .saved-steps-list-main-content{background-color:initial}body.dark-mode .saved-steps-list-page .page-title{color:#fff}body.dark-mode .error-container,body.dark-mode .loading-container,body.dark-mode .no-steps{background-color:#2d3748;box-shadow:0 2px 10px #0003;color:#cbd5e0}body.dark-mode .project-card{background:#2d3748;border-color:#4a5568;box-shadow:0 4px 20px #0000004d}body.dark-mode .card-header{background-color:#1a202c}body.dark-mode .card-header h3{color:#fff}body.dark-mode .status-badge.completed{background-color:#064e3b;color:#6ee7b7}body.dark-mode .status-badge.in-progress{background-color:#78350f;color:#fdba74}body.dark-mode .card-metadata{background-color:#1a202c;border-bottom-color:#4a5568;color:#a0aec0}body.dark-mode .metadata-item svg{color:#718096}body.dark-mode .card-details{background-color:#2d3748}body.dark-mode .count-label{color:#a0aec0}body.dark-mode .count-value{box-shadow:0 4px 6px #0003}body.dark-mode .count-value.remove{background-color:#450a0a;color:#f87171}body.dark-mode .count-value.change{background-color:#1e3a8a;color:#93c5fd}body.dark-mode .count-value.add{background-color:#064e3b;color:#6ee7b7}body.dark-mode .card-button.view{color:#60a5fa}body.dark-mode .card-button.view:hover{background-color:#60a5fa1a}body.dark-mode .card-button.delete{background-color:#dc2626;color:#fff}body.dark-mode .card-button.delete:hover{background-color:#b91c1c}body.dark-mode .saved-steps-page{background-color:#1a202c}body.dark-mode .saved-steps-page-main-content{background-color:initial}body.dark-mode .saved-steps-container{background-color:#2d3748;box-shadow:0 2px 10px #0003}body.dark-mode .saved-step-details h1{color:#fff}body.dark-mode .save-date{color:#a0aec0}body.dark-mode .share-options{background-color:#1a202c}body.dark-mode .share-btn{background-color:#2563eb}body.dark-mode .share-btn:hover{background-color:#1d4ed8}body.dark-mode .share-url{background-color:#2d3748;border-color:#4a5568;color:#cbd5e0}body.dark-mode .quick-summary{background:#1a202c;border-color:#4a5568}body.dark-mode .summary-item{background:#252c37;box-shadow:0 1px 3px #0003}body.dark-mode .summary-item .course-code{color:#cbd5e0}body.dark-mode .summary-item.remove .circle{background-color:#e53e3e;box-shadow:0 0 0 2px #e53e3e33}body.dark-mode .summary-item.change .circle{background-color:#3182ce;box-shadow:0 0 0 2px #3182ce33}body.dark-mode .summary-item.add .circle{background-color:#38a169;box-shadow:0 0 0 2px #38a16933}body.dark-mode .changes-summary{background-color:#1a202c}body.dark-mode .changes-count{color:#cbd5e0}body.dark-mode .changes-count span{color:#fff}body.dark-mode .toggle-all-btn{border-color:#4a5568;color:#cbd5e0}body.dark-mode .toggle-all-btn:hover{background-color:#4a5568}body.dark-mode .change-item{box-shadow:0 2px 6px #0003}body.dark-mode .change-header{background-color:#252c37}body.dark-mode .course-id{color:#fff}body.dark-mode .expand-icon{color:#a0aec0}body.dark-mode .change-item.expanded .change-details{border-top-color:#4a5568}body.dark-mode .course-details h3{color:#fff}body.dark-mode .course-details p{color:#cbd5e0}body.dark-mode .course-details strong{border-color:#4a5568}body.dark-mode .change-type.remove{background-color:#450a0a;color:#f87171}body.dark-mode .change-type.change{background-color:#1e3a8a;color:#93c5fd}body.dark-mode .change-type.add{background-color:#064e3b;color:#6ee7b7}body.dark-mode .no-changes{color:#a0aec0}body.dark-mode .delete-btn{background-color:#dc2626}body.dark-mode .delete-btn:hover{background-color:#b91c1c}body.dark-mode .registrar-page{background-color:#1a202c}body.dark-mode .registrar-header{background-color:#252c37;box-shadow:0 2px 5px #0000004d;color:#fff}body.dark-mode .header-title{color:#fff}body.dark-mode .logout-button{background-color:#b91c1c;color:#fff}body.dark-mode .logout-button:hover{background-color:#991b1b}body.dark-mode .registrar-main-content{background-color:#1a202c;color:#e2e8f0}body.dark-mode .pending-steps-section{background-color:#2d3748;box-shadow:0 4px 15px #0003}body.dark-mode .pending-steps-section h2{border-bottom-color:#4a5568;color:#e2e8f0}body.dark-mode .loading-indicator,body.dark-mode .registrar-error-message
body.dark-mode .no-requests-message{background-color:#1a202c;border-color:#4a5568;color:#cbd5e0}body.dark-mode .registrar-error-message{background-color:#a11c1c;color:#fff1f1}body.dark-mode .step-card{background-color:#1a202c;border-color:#4a5568;box-shadow:0 2px 8px #0003}body.dark-mode .card-header{background-color:#252c37;border-bottom-color:#4a5568}body.dark-mode .shared-date,body.dark-mode .student-info{color:#a0aec0}body.dark-mode .card-body p{color:#e2e8f0}body.dark-mode .changes-summary-preview{background-color:#2d3748;color:#a0aec0}body.dark-mode .card-footer{background-color:#252c37;border-top-color:#4a5568}body.dark-mode .view-details-btn{background-color:#2563eb;color:#fff}body.dark-mode .view-details-btn:hover{background-color:#1d4ed8}.registrar-header .theme-label{color:#f5f5f5}body.dark-mode .nav-item{color:#fff}body.dark-mode .nav-item:hover{background-color:#009cd7!important}body.dark-mode .about-us-section{background-color:#1a202c}body.dark-mode .team-section{background:#232936}body.dark-mode .team-member,body.dark-mode .team-member h3,body.dark-mode .team-member p,body.dark-mode .team-section h2,body.dark-mode .team-section p{background-color:#232936;color:#fff}body.dark-mode .shared-schedule-table-container{-webkit-overflow-scrolling:touch;background-color:#222!important;background-color:var(--card-background-color,#222)!important;border:1px solid #0e0e0e;border:1px solid var(--border-color,#0e0e0e);border-radius:10px;box-shadow:0 1px 3px #00000014;color:#333;color:var(--text-color,#333);margin:0 auto 40px;max-width:1000px;overflow-x:auto;padding:20px}body.dark-mode .shared-schedule-page .courses-without-time{border:1px solid #1e1d1d;border:1px solid var(--border-color,#1e1d1d)}body.dark-mode .shared-schedule-page .schedule-table-grid{background-color:#222!important;border:1px solid #1e1d1d!important;border:1px solid var(--border-color,#1e1d1d)!important}body.dark-mode .shared-schedule-page{background:#0000}body.dark-mode .gpa-calculator-page{background-color:#21262d;border:1px solid #4a5568;box-shadow:0 0 10px #3690eb4d;color:#e2e8f0}body.dark-mode .courses-section2 h2,body.dark-mode .gpa-calculator-page h1{color:#fff}body.dark-mode .error-message,body.dark-mode .loading-message,body.dark-mode .no-plan-message{border-color:#4a5568;color:#cbd5e0}body.dark-mode .error-message{background-color:#450a0a;border-color:#7f1d1d;color:#fecaca}body.dark-mode .no-plan-message{background-color:#78350f;border-color:#9a3412;color:#fdba74}body.dark-mode .no-plan-message a{color:#fed7aa}body.dark-mode .gpa-display,body.dark-mode .target-gpa-section{background-color:#0d1117;border-color:#4a5568}body.dark-mode .gpa-value h3,body.dark-mode .target-gpa-section h2{border-bottom-color:#4a5568;color:#cbd5e0}body.dark-mode .gpa-value span{color:#60a5fa}body.dark-mode .target-gpa-controls label{color:#cbd5e0}body.dark-mode .grade-input select,body.dark-mode .target-gpa-input{background-color:#1a202c;border-color:#4a5568;color:#e2e8f0}body.dark-mode .calculate-target-button{background-color:#2563eb}body.dark-mode .calculate-target-button:hover{background-color:#1d4ed8}body.dark-mode .required-grade-display{background-color:#1e3a8a;border-color:#1e40af;color:#dbeafe}body.dark-mode .required-grade-display.error{background-color:#450a0a;border-color:#7f1d1d;color:#fecaca}body.dark-mode .required-grade-display span strong{color:#fff}body.dark-mode .courses-section h2{border-bottom-color:#4a5568;color:#1fdb38}body.dark-mode .course-item,body.dark-mode .courses-taught-section li.course-item{background-color:#0d1117}body.dark-mode .course-info .course-id-name,body.dark-mode .course-name{color:#e2e8f0}body.dark-mode .course-info .course-credits{color:#a0aec0}body.dark-mode .grade-input label{color:#cbd5e0}body.dark-mode .save-grades-button:disabled{background-color:#4a5568;opacity:.6}body.dark-mode .professor-list-container{background-color:#1a202c;background-color:var(--list-container-bg,#1a202c);border:1px solid #374151;border:1px solid var(--border-color,#374151);box-shadow:0 4px 12px #0000004d;color:#fff;color:var(--text-primary,#fff)}body.dark-mode .page-title{color:#eee;color:var(--text-primary,#eee)}body.dark-mode .search-input{background-color:#1f2937;background-color:var(--search-bg,#1f2937);border:1px solid #374151;border:1px solid var(--border-color,#374151);color:#fff;color:var(--text-primary,#fff)}body.dark-mode .search-input:focus{border-color:#14b8a6;border-color:var(--accent-color,#14b8a6);box-shadow:0 0 0 2px #5eead4;box-shadow:0 0 0 2px var(--accent-color-light,#5eead4)}body.dark-mode .faculty-button{background-color:#1f2937;background-color:var(--button-bg,#1f2937);border:1px solid #4b5563;border:1px solid var(--border-color-medium,#4b5563);color:#fff;color:var(--text-primary,#fff)}body.dark-mode .faculty-button:hover{background-color:#374151;background-color:var(--button-hover-bg,#374151);border-color:#6b7280;border-color:var(--border-color-light,#6b7280)}body.dark-mode .faculty-button.active{background-color:#14b8a6;background-color:var(--accent-color,#14b8a6);border-color:#14b8a6;border-color:var(--accent-color,#14b8a6);color:#000;color:var(--button-active-text,#000)}body.dark-mode .no-results-message{color:#aaa;color:var(--text-secondary,#aaa)}body.dark-mode .loader{color:var(--text-secondary)}body.dark-mode .professor-card{background-color:#111827;background-color:var(--card-bg,#111827);border-color:#374151;border-color:var(--border-color,#374151);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;color:#fff;color:var(--text-primary,#fff)}body.dark-mode .professor-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}body.dark-mode .professor-department{color:#9ca3af;color:var(--text-secondary,#9ca3af)}body.dark-mode .professor-faculty{color:#6b7280;color:var(--text-muted,#6b7280)}body.dark-mode .rating-high{background-color:#16a34a;background-color:var(--rating-high-bg,#16a34a);color:#fff}body.dark-mode .rating-medium{background-color:#d97706;background-color:var(--rating-medium-bg,#d97706);color:#fff}body.dark-mode .rating-low{background-color:#dc2626;background-color:var(--rating-low-bg,#dc2626);color:#fff}body.dark-mode .courses-section{color:#aaa;color:var(--text-secondary,#aaa)}body.dark-mode .courses-section strong{color:#ddd;color:var(--text-primary,#ddd)}body.dark-mode .tag-badge{background-color:#0f766e;background-color:var(--tag-bg,#0f766e);color:#fff}body.dark-mode .professor-card.missing-id{background-color:#441c1c;background-color:var(--error-bg,#441c1c);color:#f87171;color:var(--error-text,#f87171)}body.dark-mode .professor-detail-page{color:#fff;color:var(--text-primary,#fff)}body.dark-mode .professor-header-card{background-color:#111827;background-color:var(--card-bg,#111827);border-color:#38383d;border-color:var(--border-color,#38383d);box-shadow:0 4px 15px #0003}body.dark-mode .courses-taught-section h4,body.dark-mode .frequent-tags-section h4{color:#eee;color:var(--text-primary,#eee)}body.dark-mode .header-top-row{border-bottom-color:#4a4a50;border-bottom-color:var(--border-color-light,#4a4a50)}body.dark-mode .professor-name{color:#eee;color:var(--text-primary,#eee)}body.dark-mode .professor-subtitle{color:#b0b0b5;color:var(--text-secondary,#b0b0b5)}body.dark-mode .no-rating-placeholder{background-color:#3a3a3f;background-color:var(--background-tertiary,#3a3a3f);color:var(--text-secondary)}body.dark-mode .rating-label{color:var(--text-secondary)}body.dark-mode .rating-bar-container{background-color:#3a3a3f;background-color:var(--background-tertiary,#3a3a3f)}body.dark-mode .rating-value{color:var(--text-primary)}body.dark-mode .add-review-button-bottom:hover{background-color:#388e3c;background-color:var(--accent-color-dark,#388e3c)}body.dark-mode .reviews-card{background-color:#111827;background-color:var(--card-bg,#111827);border-color:#38383d;border-color:var(--border-color,#38383d);box-shadow:0 4px 15px #0003}body.dark-mode .reviews-card .section-title{border-bottom-color:#4a4a50;border-bottom-color:var(--border-color-light,#4a4a50);color:var(--text-primary)}body.dark-mode .error-message,body.dark-mode .loading-message,body.dark-mode .no-reviews-message{color:#aaa;color:var(--text-secondary,#aaa)}body.dark-mode .error-message{color:#f87171;color:var(--error-color,#f87171)}body.dark-mode .review-card{background-color:#111827;background-color:var(--card-bg,#111827);border-color:#444;border-color:var(--border-color,#444)}body.dark-mode .review-time{color:#aaa;color:var(--text-secondary,#aaa)}body.dark-mode .tag{background-color:#3a3a3a;background-color:var(--accent-color-light,#3a3a3a);color:#4ade80;color:var(--accent-color,#4ade80)}body.dark-mode .review-comment{color:#eee;color:var(--text-primary,#eee)}body.dark-mode .review-criteria-ratings{border-top-color:#555;border-top-color:var(--border-color-light,#555)}body.dark-mode .review-criterion-label{color:#bbb;color:var(--text-secondary,#bbb)}body.dark-mode .review-progress-bar-container{background-color:#3a3a3a;background-color:var(--background-tertiary,#3a3a3a)}body.dark-mode .review-progress-bar-fill{background-color:#4ade80;background-color:var(--accent-color,#4ade80)}body.dark-mode .review-criterion-score{color:#eee;color:var(--text-primary,#eee)}body.dark-mode .review-card-footer{border-top-color:#555;border-top-color:var(--border-color-light,#555)}body.dark-mode .action-button{color:#aaa;color:var(--text-secondary,#aaa)}body.dark-mode .action-button:hover{color:#eee;color:var(--text-primary,#eee)}body.dark-mode .like-button:hover{color:#4ade80;color:var(--success-color,#4ade80)}body.dark-mode .dislike-button:hover{color:#f87171;color:var(--error-color,#f87171)}body.dark-mode .flag-button:hover{color:#facc15;color:var(--warning-color,#facc15)}body.dark-mode .rating-green{background-color:#198754;background-color:var(--rating-green-bg,#198754)}body.dark-mode .rating-yellow{background-color:#ffc107;background-color:var(--rating-yellow-bg,#ffc107);color:#1a202c}body.dark-mode .rating-orange{background-color:#fd7e14;background-color:var(--rating-orange-bg,#fd7e14)}body.dark-mode .rating-red{background-color:#dc3545;background-color:var(--rating-red-bg,#dc3545)}body.dark-mode .rating-na{background-color:#4b5563;background-color:var(--rating-gray-bg,#4b5563);color:#ccc;color:var(--text-primary-muted,#ccc)}body.dark-mode .review-modal-container{color:#fff}body.dark-mode .review-modal-container,body.dark-mode .review-modal-container .review-modal-footer,body.dark-mode .review-modal-container .review-modal-header,body.dark-mode .review-modal-container .review-modal-steps{background-color:#202731;background-color:var(--background-tertiary,#202731)}body.dark-mode .review-modal-title{color:#fff}body.dark-mode .comment-textarea,body.dark-mode .review-modal-content .comment-textarea,body.dark-mode .step-input{background-color:#333;background-color:var(--background-tertiary,#333);color:#fff}body.dark-mode .comment-textarea::placeholder,body.dark-mode .review-modal-footer,body.dark-mode .review-modal-steps,body.dark-mode .step-comment .step-label,body.dark-mode .step-input::placeholder{color:#fff}body.dark-mode .grade-button{background-color:#2c313a;border-color:#495057;color:#adb5bd}body.dark-mode .grade-button[data-grade="A+"]:not(.selected):hover,body.dark-mode .grade-button[data-grade=A]:not(.selected):hover{background-color:#28a745;border-color:#1e7e34;color:#fff}body.dark-mode .grade-button[data-grade="B+"]:not(.selected):hover,body.dark-mode .grade-button[data-grade=B]:not(.selected):hover{background-color:#ac0;border-color:#8cb000;color:#fff}body.dark-mode .grade-button[data-grade="C+"]:not(.selected):hover,body.dark-mode .grade-button[data-grade=C]:not(.selected):hover{background-color:#ffc107;border-color:#d39e00;color:#1f2937}body.dark-mode .grade-button[data-grade="D+"]:not(.selected):hover,body.dark-mode .grade-button[data-grade=D]:not(.selected):hover{background-color:#fd7e14;border-color:#e66a00;color:#fff}body.dark-mode .grade-button[data-grade=F]:not(.selected):hover{background-color:#dc3545;border-color:#b02a37;color:#fff}body.dark-mode .grade-button[data-grade="حذف المادة"]:not(.selected):hover{background-color:#495057;border-color:#3a414c;color:#fff}body.dark-mode .grade-button.selected{border-width:1px;color:#fff;font-weight:700}body.dark-mode .grade-button.selected[data-grade="A+"],body.dark-mode .grade-button.selected[data-grade="A+"]:hover,body.dark-mode .grade-button.selected[data-grade=A],body.dark-mode .grade-button.selected[data-grade=A]:hover{background-color:#28a745;border-color:#1e7e34}body.dark-mode .grade-button.selected[data-grade="B+"],body.dark-mode .grade-button.selected[data-grade="B+"]:hover,body.dark-mode .grade-button.selected[data-grade=B],body.dark-mode .grade-button.selected[data-grade=B]:hover{background-color:#ac0;border-color:#8cb000}body.dark-mode .grade-button.selected[data-grade="C+"],body.dark-mode .grade-button.selected[data-grade="C+"]:hover,body.dark-mode .grade-button.selected[data-grade=C],body.dark-mode .grade-button.selected[data-grade=C]:hover{background-color:#ffc107;border-color:#d39e00;color:#1f2937}body.dark-mode .grade-button.selected[data-grade="D+"],body.dark-mode .grade-button.selected[data-grade="D+"]:hover,body.dark-mode .grade-button.selected[data-grade=D],body.dark-mode .grade-button.selected[data-grade=D]:hover{background-color:#fd7e14;border-color:#e66a00}body.dark-mode .grade-button.selected[data-grade=F],body.dark-mode .grade-button.selected[data-grade=F]:hover{background-color:#dc3545;border-color:#b02a37}body.dark-mode .grade-button.selected[data-grade="حذف المادة"],body.dark-mode .grade-button.selected[data-grade="حذف المادة"]:hover{background-color:#495057;border-color:#3a414c;color:#fff}body.dark-mode .input-hint{color:#cbd5e0}body.dark-mode .review-modal{background-color:#252a33;border:1px solid #3a414c;box-shadow:0 8px 25px #0006;color:#e1e3e6}body.dark-mode .review-modal .review-modal-header{border-bottom-color:#3a414c}body.dark-mode .review-modal .review-modal-header h2{color:#fff}body.dark-mode .review-modal .review-modal-close-button{color:#adb5bd}body.dark-mode .review-modal .review-modal-close-button:hover{color:#fff}body.dark-mode .review-modal .progress-bar-container{background-color:#3a414c}body.dark-mode .review-modal .progress-bar-fill{background-color:#007bff}body.dark-mode .review-modal .step-indicator{color:#adb5bd}body.dark-mode .review-modal .validation-error{background-color:#721c24;border-color:#f5c6cb;color:#f8d7da}body.dark-mode .review-modal .review-modal-content .step-instruction{color:#a0aec0;color:var(--text-muted,#a0aec0)}body.dark-mode .review-modal .step-content h3{border-bottom-color:#3a414c;color:#ced4da}body.dark-mode .review-modal .step-content label{color:#adb5bd}body.dark-mode .review-modal .step-content input[type=text]:not(#course-input),body.dark-mode .review-modal .step-content select,body.dark-mode .review-modal .step-content textarea{background-color:#2c313a;border-color:#495057;color:#e1e3e6}body.dark-mode .review-modal .step-content input[type=text]:not(#course-input):focus,body.dark-mode .review-modal .step-content select:focus,body.dark-mode .review-modal .step-content textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff40}body.dark-mode .review-modal .char-counter{color:#adb5bd}body.dark-mode .review-modal .input-hint{color:#6c757d}body.dark-mode .review-modal .step-content select{background-image:url(/static/media/custom-select-arrow.4d890b8a4a45fee55616.svg)}body.dark-mode .review-modal .review-modal-footer{background-color:#252a33;border-top-color:#3a414c}body.dark-mode .segmented-rating-label{color:#fff}body.dark-mode .rating-label{color:#adb5bd}body.dark-mode .rating-segments-container{background-color:#2c313a;border-color:#495057}body.dark-mode .rating-segment{background-color:#252a33;border:1px solid #495057;color:#6c757d;opacity:.6;transition:background-color .2s,box-shadow .2s,color .2s,opacity .2s}body.dark-mode .rating-segment.red-bg{background-color:#4f2b30}body.dark-mode .rating-segment.yellow-bg{background-color:#5a4e26}body.dark-mode .rating-segment.green-bg{background-color:#2c4a34}body.dark-mode .segmented-rating-input-wrapper .rating-segment.selected{background-color:inherit;border:2px solid #fff!important;box-shadow:none!important;color:#fff!important;font-weight:700;opacity:1;outline:none;transform:none!important;z-index:2}body.dark-mode .filter-dropdown:disabled{background-color:#333;background-color:var(--input-disabled-bg-light,#333)}body.dark-mode .course-list-container{background-color:#1a202c;background-color:var(--list-container-bg,#1a202c)}body.dark-mode .course-card,body.dark-mode .course-code{background-color:#111827;background-color:var(--card-bg,#111827);color:#fff;color:var(--text-primary,#fff)}body.dark-mode .course-list-search-input{background-color:#1f2937;background-color:var(--search-bg,#1f2937);border:1px solid #374151;border:1px solid var(--border-color,#374151);color:#fff;color:var(--text-primary,#fff)}body.dark-mode .course-list-search-input:focus{border-color:#14b8a6;border-color:var(--accent-color,#14b8a6);box-shadow:0 0 0 2px #5eead4;box-shadow:0 0 0 2px var(--accent-color-light,#5eead4)}body.dark-mode .course-list-filter-dropdown{background-color:#1f2937;background-color:var(--button-bg,#1f2937);border:1px solid #4b5563;border:1px solid var(--border-color-medium,#4b5563);color:#fff;color:var(--text-primary,#fff)}body.dark-mode .course-list-filter-dropdown:hover{background-color:#374151;background-color:var(--button-hover-bg,#374151);border-color:#6b7280;border-color:var(--border-color-light,#6b7280)}body.dark-mode .course-list-filter-dropdown:disabled{background-color:#2c3440;background-color:var(--input-disabled-bg,#2c3440);cursor:not-allowed;opacity:.7}body.dark-mode .course-list-page-title{color:#fff;color:var(--text-primary,#fff)}body.dark-mode .course-code-lg,body.dark-mode .course-header-card{background-color:#111827;background-color:var(--card-bg,#111827);color:#fff;color:var(--text-primary,#fff)}body.dark-mode .NewSchedulePage-plan-select,body.dark-mode .final-exams-container{background-color:#0d1117;color:#f5f5f5}body.dark-mode .NewSchedulePage-plan-select:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa40}body.dark-mode .NewSchedulePage-plan-select option{background-color:#1e2330;color:#f5f5f5}body.dark-mode .NewSchedulePage-plan-select::placeholder{color:#cbd5e0}body.dark-mode .NewSchedulePage-plan-select{background-image:url(/static/media/custom-select-arrow.4d890b8a4a45fee55616.svg)}body.dark-mode .final-exams-table td:nth-child(2){color:#93c5fd;font-weight:500}body.dark-mode .course-plan-container{background-color:#161b22;color:#fff}body.dark-mode .course-plan-image-container{background-color:#161b22;border:1px solid #30363d;border-radius:8px;padding:10px}body.dark-mode .course-plan-image{border-radius:6px;filter:invert(1) hue-rotate(180deg) brightness(1.2) contrast(.9);height:auto;width:100%}body.dark-mode .course-plan-image-alt{background-color:#161b22;border-radius:6px;filter:brightness(.15) contrast(2) saturate(1.5) hue-rotate(10deg);height:auto;width:100%}body.dark-mode .course-plan-image-container:after{background-color:#161b22;border-radius:6px;bottom:10px;content:"";left:10px;position:absolute;right:10px;top:10px;z-index:-1}.loader-overlay{align-items:center;background-color:#0b0c10f2;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.loader-spinner{animation:spin .9s linear infinite;border:4px solid #fff3;border-radius:50%;border-top-color:#3d8de9;height:36px;width:36px}.loader-overlay p{color:#fff;margin-top:12px}.centered-nav{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background-color:#fffc;border-radius:9999px;box-shadow:0 4px 6px #00000014;display:flex;flex-direction:row-reverse;flex-wrap:wrap;font-size:14px;font-weight:600;gap:12px;max-width:90vw;overflow-x:auto;position:absolute;right:50%;top:12px;transform:translateX(50%);white-space:nowrap;z-index:1}.actions,.actions .btn,.centered-nav,.logo,.nav-advisor,.navbar{align-items:center;display:flex;line-height:1;margin-bottom:0;margin-top:0;padding-bottom:0;padding-top:0}.nav-item{border-radius:9999px;color:#000;font-size:16px;font-weight:700;padding:8px 16px;text-decoration:none}.nav-item:hover{background-color:#d6d6de}.nav-advisor,.nav-logo{align-items:center;display:flex}.nav-advisor{background-color:#a7e6ff;border:1px solid #a7e6ff;color:#222!important;font-size:18px;font-weight:800}.nav-advisor:hover{background-color:#73d4fb;color:#075e45}.nav-icon{color:#000;height:20px;margin-left:8px;width:20px}.navbar{align-items:center;background-color:initial;box-sizing:border-box;display:flex;height:45px;justify-content:space-between;margin-bottom:50px;padding:10px 20px;position:relative;top:0;width:100%;z-index:1}.logo{flex-shrink:0;height:auto;margin-top:60px;max-width:200px;object-fit:contain;width:15vw}body .navbar .actions,html .navbar .actions{display:flex!important;font-family:Tajawal,Cairo,sans-serif;gap:10px;opacity:1!important;pointer-events:auto!important;position:relative;visibility:visible!important;z-index:1001}body .navbar .actions .btn,body .navbar .actions .btn-outline,body .navbar .actions .btn-primary,html .navbar .actions .btn,html .navbar .actions .btn-outline,html .navbar .actions .btn-primary{animation:none!important;border-radius:55px;cursor:pointer;display:inline-block!important;font-size:1rem;opacity:1!important;padding:6px 10px;pointer-events:auto!important;position:relative;transition:background-color .3s;visibility:visible!important;z-index:1001}.auth-buttons{align-items:center;display:flex;gap:10px}.auth-buttons .btn{margin:0}a{color:#fff;text-decoration:none}.btn-outline{background-color:#007baa}.btn-outline,.btn-primary{border:none;color:#fff;font-family:Tajawal,Cairo,sans-serif}.btn-primary{background-color:#3abef9}.btn-outline:hover{background-color:#009cd7;color:#fff}.btn-primary:hover{background-color:#119dd0}.profile-icon{border-radius:50%;cursor:pointer;height:40px;width:40px}.user-section{align-items:center;display:flex;gap:15px}.user-info{margin-right:10px}.welcome-text{color:#333;font-size:14px}.registrar-features{display:flex;gap:10px}.btn-logout{background-color:#f44336;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 15px}.btn-logout:hover{background-color:#d32f2f}@media (max-width:1024px){.logo{width:14vw}.actions .btn{font-size:1rem;padding:5px 8px}.centered-nav{font-size:12px;gap:16px;padding:4px 12px}.nav-item{padding:6px 12px}}@media (max-width:768px){.navbar{align-items:center;display:flex;margin-top:10px;padding:10px 15px}.logo{display:block;margin:10px auto 5px;order:1;width:120px}.centered-nav{align-items:center;background-color:#fff;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:50px;order:2;width:100%;z-index:1}.nav-item{font-size:13px;padding:6px 10px;white-space:nowrap}.actions{display:flex;gap:10px;justify-content:center;margin-top:10px;order:3;width:100%}.actions .btn-outline,.actions .btn-primary{border-radius:6px;flex:1 1;font-size:14px;max-width:150px;padding:8px 12px;text-align:center}}body,html{font-family:Tajawal,Cairo,sans-serif}.hero-section{max-width:100%;min-height:100vh;text-align:center}.hero-content,.hero-section{align-items:center;display:flex;justify-content:center}.hero-content{background-color:#f7faf9;border-radius:30px;box-shadow:0 4px 5px #0000001a;flex-wrap:wrap;gap:30px;height:auto;margin:-15vh auto 0;max-width:1200px;padding:3rem 2rem}.hero-image{max-width:100%;opacity:0;transform:translateX(-40px);transition:opacity .8s ease-out,transform .8s ease;width:40%}.hero-image.is-visible{opacity:1;transform:translateX(0)}.hero-text{flex:1 1;opacity:0;transform:translateY(30px);transition:opacity .8s ease-out .3s,transform .8s ease .3s}.hero-text.is-visible{opacity:1;transform:translateY(0)}.hero-text h1{font-size:2rem;font-weight:700}.hero-text p{color:#3abef9;font-size:1.4rem}.hero-text .btn-primary{background-color:#007baa;border-radius:55px;cursor:pointer;font-family:Tajawal,Cairo,sans-serif;font-size:1.2rem;margin-top:15px;padding:10px 20px}.hero-text .btn-primary:hover{background-color:#009cd7}@media (max-width:1024px){.hero-content{flex-direction:column;height:auto;margin-top:-2rem;padding:2rem 1rem;text-align:center;width:70%}.hero-image{width:60%}.hero-text h1{font-size:1.8rem}}@media (max-width:768px){.hero-section{height:auto;padding:20px}.hero-content{padding:1.5rem;width:80%}.hero-text h1{font-size:1.5rem}.hero-text p{font-size:1rem}.hero-text .btn-primary{font-size:1rem;padding:8px 16px}}@media (max-width:480px){.hero-content{gap:15px;margin-top:0;padding:1rem .8rem;width:90%}.hero-image{margin-bottom:10px;width:60%}.hero-text h1{font-size:1.2rem;line-height:1.3;margin-bottom:5px}.hero-text p{font-size:.85rem;margin-bottom:10px}.hero-text .btn-primary{font-size:.85rem;padding:6px 14px}}.hero-image-container{align-items:center;display:flex;flex:1 1;justify-content:center;margin:0 auto;max-width:1000px;padding:20px}.hero-image-container>div{height:auto;max-width:650px;width:100%}.hero-image-container.is-visible{height:100px;opacity:1;transform:translateX(0)}.hero-image-container{opacity:0;transform:translateX(-50px);transition:opacity 1s ease-out,transform 1s ease-out}.about-us-section{background:var(--about-bg);background:var(--about-gradient);background:#f7f6f6;color:var(--about-text);direction:rtl;padding:60px 20px;text-align:right}.about-us-container{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:.75rem;margin:0 auto;max-width:900px;padding:40px}.dark-mode .about-us-section h2,.dark-mode .about-us-section p,.dark-mode .about-us-section ul li{color:#fff}.about-us-section h2{color:var(--about-heading);font-size:2.5rem;margin-bottom:40px;text-align:center}.about-us-section h3{border-bottom:3px solid var(--about-accent);color:var(--about-subheading);font-size:1.8rem;margin-bottom:15px;margin-top:30px;padding-bottom:8px}.about-us-section p{font-size:1.1rem;line-height:1.7;margin-bottom:20px}.about-us-section ul{list-style:none;margin-bottom:20px;padding-right:20px}.about-us-section ul li{font-size:1.1rem;line-height:1.7;margin-bottom:10px;padding-right:30px;position:relative;transition:color .3s}.about-us-section ul li:before{color:var(--about-checkmark);color:#10b910;content:"✓";font-weight:700;position:absolute;right:0;top:2px}.about-us-section ul li:hover{color:var(--about-accent)}@media (max-width:768px){.about-us-section{padding:40px 15px}.about-us-container{padding:25px}.about-us-section h2{font-size:2rem}.about-us-section h3{font-size:1.5rem}.about-us-section p,.about-us-section ul li{font-size:1rem}}.features-list li strong{color:var(--about-heading);margin-left:5px}@media (max-width:768px){.about-us-section{padding:40px 15px}.about-us-section h2{font-size:2rem}.about-us-section h3{font-size:1.5rem}.about-us-section p,.about-us-section ul li{font-size:1rem}}.icon-content{list-style:none;margin:0 5px;position:relative}.icon-content .tooltip{background-color:#333;border-radius:5px;color:#fff;font-size:12px;opacity:0;padding:6px 10px;position:absolute;right:115%;top:50%;transform:translateY(-50%);transition:all .3s ease;visibility:hidden;white-space:nowrap;z-index:10}.icon-content:hover .tooltip{opacity:1;right:125%;visibility:visible}.icon-content a{align-items:center;background-color:#fff;border:1px solid #eee;border-radius:50%;color:#4d4d4d;display:flex;height:40px;justify-content:center;overflow:hidden;position:relative;transition:all .3s ease-in-out;width:40px}.icon-content a:hover{box-shadow:0 4px 15px #0000001a;color:#fff}.icon-content a svg{height:20px;position:relative;transition:color .3s ease-in-out;width:20px;z-index:1}.icon-content a .filled{background-color:#555;bottom:0;height:0;left:0;position:absolute;top:auto;transition:all .3s ease-in-out;width:100%;z-index:0}.icon-content a:hover .filled{height:100%}.icon-content a[data-social=linkedin] .filled,.icon-content a[data-social=linkedin]~.tooltip{background-color:#0274b3}.social-links-list{align-items:center;display:flex;justify-content:center;margin-top:15px;padding:0}.team-section{background-color:#f9fcfe;direction:rtl;padding:60px 20px;text-align:center}.team-member,.team-section{background-color:var(--about-bg)}.team-member,.team-member h3,.team-member p,.team-section,.team-section h2,.team-section p{background:#f0eded;color:var(--about-text)}.team-section h2{font-family:Tajawal,Cairo,sans-serif;font-size:2.5rem;font-weight:700;margin-bottom:40px;text-align:center}.team-grid{display:flex;flex-wrap:wrap;gap:40px;justify-content:center}.team-member{max-width:200px;opacity:0;text-align:center;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.team-member.visible{opacity:1;transform:translateY(0)}.team-member.delay-1{transition-delay:.1s}.team-member.delay-2{transition-delay:.2s}.team-member.delay-3{transition-delay:.3s}.team-member.delay-4{transition-delay:.4s}.team-member.delay-5{transition-delay:.5s}.team-member-img{background-color:#eee;border:2px solid #ddd;border-radius:50%;height:150px;margin-bottom:15px;object-fit:cover;width:150px}.team-member h4{font-size:1.2rem;font-weight:700;margin-bottom:5px;margin-top:12px}.team-member p{font-size:1rem;line-height:1.5;margin-bottom:15px}@media (max-width:768px){.team-section h2{font-size:2rem}.team-grid{gap:30px}}@media (max-width:480px){.team-grid{gap:20px}.team-member{max-width:150px}.team-member-img{height:120px;width:120px}.team-member h4{font-size:1.1rem}.team-member p{font-size:.9rem}}.features-section{font-family:Tajawal,Cairo,sans-serif;overflow:hidden;padding:200px 20px 60px;position:relative;text-align:center;z-index:1}.features-wave{height:100%;opacity:0;position:absolute;right:0;top:0;transform:translateX(100%);transition:transform 1s ease-out,opacity 1s ease-out;width:100%;z-index:-1}.features-wave.visible{opacity:1;transform:translateX(0)}.wave-svg{display:block;height:100%;width:100%}.features-header{position:relative;z-index:2}.features-header h2{color:#222;font-size:2.5rem;margin-bottom:30px;padding-bottom:30px}.features-grid{display:flex;flex-direction:row-reverse;flex-wrap:wrap;gap:30px;justify-content:center;margin-bottom:100px;padding-top:100px;position:relative;z-index:2}.feature-box{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000000f;height:170px;opacity:0;padding:20px;text-align:center;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease;width:250px}.feature-box.visible{opacity:1;transform:translateY(0)}.feature-box:hover{transform:translateY(-25px)}.card-icon{margin-bottom:12px}.feature-box h4{color:#111827;font-size:1.5rem;margin:15px 0 10px}.feature-box p{color:#6b7280;font-size:1.1rem}.footer{background-color:#00aeef;box-sizing:border-box;color:#fff;min-height:70px;padding:1rem 2rem;position:relative;width:100%}.footer-content-features{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding-left:60px}.footer-logo{bottom:1rem;height:40px;left:2rem;position:absolute;width:auto}.footer-copyright{flex-grow:1;margin:0;text-align:center}.footer-email{align-items:center;background-color:#fff3;border:2px solid #ffffff4d;border-radius:20px;color:#fff;display:inline-flex;font-size:.9rem;font-weight:500;gap:8px;overflow:hidden;padding:8px 16px;position:relative;text-decoration:none;transition:all .3s ease}.footer-email:before{content:"✉️";font-size:1rem}.footer-email:hover{background-color:#ffffff4d;border-color:#ffffff80;box-shadow:0 4px 12px #0003;color:#fff;text-decoration:none;transform:translateY(-2px)}.footer-email:active{box-shadow:0 2px 6px #0003;transform:translateY(0)}.footer-email:focus{box-shadow:0 0 0 3px #ffffff4d;outline:none}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.3s}.delay-3{transition-delay:.5s}.delay-4{transition-delay:.7s}.dark-mode .footer,.dark-mode .footer a,.dark-mode .footer p{color:#fff}.dark-mode .footer-contact{color:#fff!important}.dark-mode .footer-email{color:#fff}@media (max-width:768px){.features-section{overflow:visible;padding:150px 15px 40px}.features-header h2{font-size:2rem;margin-bottom:40px;padding-bottom:20px}.features-grid{align-items:center;flex-direction:column;gap:25px;margin-bottom:60px;padding-top:40px}.feature-box{height:auto;max-width:350px;opacity:0;padding:25px 20px;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease;width:85%}.feature-box.visible{opacity:1;transform:translateY(0);&.delay-1{transition-delay:.1s}&.delay-2{transition-delay:.2s}&.delay-3{transition-delay:.3s}&.delay-4{transition-delay:.4s}}.feature-box:hover{transform:translateY(-5px)}.feature-box h4{font-size:1.5rem}.feature-box p{font-size:1rem}.features-wave{opacity:.8}.footer{min-height:auto;padding:1rem}.footer-content-features{align-items:center;flex-direction:column;gap:.75rem;padding-left:0}.footer-logo{height:35px;margin-bottom:.5rem;position:static}.footer-copyright{flex-grow:0;order:1;text-align:center}.footer-email{font-size:1rem;justify-content:center;margin-top:8px;min-width:200px;order:2;padding:12px 20px;text-align:center}}.homePage{min-height:100vh;width:100%}.signup-form-container{align-items:center;background-color:#f7faf9;border-radius:20px;box-shadow:0 4px 10px #0000001a;display:flex;justify-content:space-between;max-width:900px;padding:30px;width:60%}.signup-form{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:20px;padding-top:2rem}.signup-form input{background:#0000;border:none;border-bottom:2px solid #000;box-sizing:border-box;color:#000;font-size:1rem;outline:none;padding:10px;text-align:right;width:100%}.signup-form input::placeholder{color:#00000080}.signup-form input:focus{border-bottom:2px solid #3abef9}.user-type{gap:20px;margin:10px 0}.signup-branding{flex:1 1}.signup-branding,.signup-button{align-items:center;display:flex;justify-content:center}.signup-button{background-color:#000;border:none;border-radius:5rem;color:#fff;cursor:pointer;font-size:1.4rem;font-weight:700;max-width:18rem;padding:.8rem 2rem;text-align:center;transition:background-color .3s ease;width:60%}.signup-button:hover{background-color:#333}.login-link{box-sizing:border-box;direction:rtl;margin-top:1rem;padding-right:0;text-align:center;width:100%}.login-link a{color:#0084d8;display:inline;text-decoration:none}.Signup-error-message{background-color:#ffebee;border-radius:4px;color:#c62828;font-size:1rem;margin-bottom:15px;padding:30px;text-align:center}@media (max-width:1024px){.signup-button{align-items:center;background-color:#000;border:none;border-radius:5rem;color:#fff;cursor:pointer;display:flex;font-size:1.4rem;font-weight:700;justify-content:center;max-width:18rem;padding:.8rem 2rem;text-align:center;transition:background-color .3s ease;width:80%}.branding-logo{min-width:200px;width:50%}}@media (max-width:768px){.signup-form-container{flex-direction:column-reverse;width:95%}.signup-button{align-items:center;background-color:#000;border:none;border-radius:5rem;color:#fff;cursor:pointer;display:flex;font-size:1.4rem;font-weight:700;justify-content:center;max-width:18rem;padding:.8rem 2rem;text-align:center;transition:background-color .3s ease;width:80%}.branding-logo{min-width:160px;width:60%}}.signup-form>div{margin:0;padding:0}@media (max-width:480px){.input-container,.password-field-container,.signin-form input,.signup-form input{width:80%}}@media (max-width:500px){.signup-form-container{margin:15px 0;padding:20px 15px;width:90%}.signup-form-container h2{font-size:1.5rem}.signup-form .input-container{width:95%}.signup-form .signup-button{font-size:1rem;padding:10px;width:95%}.radio-options label{font-size:.85rem;margin:0 5px}.user-type{gap:10px}.login-link{font-size:.85rem}.branding-logo{margin-bottom:15px;max-width:100px}}.password-field-container{align-items:center;display:flex;position:relative;width:60%}.password-field-container input{background:#0000;border:none;border-bottom:2px solid #000;box-sizing:border-box;color:#000;font-size:1rem;outline:none;padding:10px 10px 10px 30px;text-align:right;width:100%}.password-field-container input:focus{border-bottom:2px solid #3abef9}.eye-button{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;height:24px;justify-content:center;left:0;margin:0;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:24px;z-index:2}.eye-button:hover{color:#333}.password-field-container input::placeholder{color:#00000080}.checkbox{align-items:center;direction:rtl;display:inline-flex;margin-right:20px;position:relative}.checkbox input[type=radio]{opacity:0;position:absolute}.checkbox-circle{border:2px solid #aaa;border-radius:50%;display:inline-block;height:16px;position:relative;transition:all .3s;width:16px}.checkbox input[type=radio]:checked~.checkbox-circle{background:#2fd34d;border-color:#2fd34d}.checkmark{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;left:0;opacity:0;position:absolute;top:0;transition:all .3s}.checkbox input[type=radio]:checked~.checkbox-circle .checkmark{opacity:1}.checkmark-circle{stroke-dasharray:166;stroke-dashoffset:166;transition:stroke-dashoffset .3s}.checkbox input[type=radio]:checked~.checkbox-circle .checkmark-circle{stroke-dashoffset:0}.checkmark-kick{stroke-dasharray:50;stroke-dashoffset:50;transition:stroke-dashoffset .3s}.checkbox input[type=radio]:checked~.checkbox-circle .checkmark-kick{stroke-dashoffset:0}.radio-label{color:#000;font-size:1.2rem;font-weight:400;margin-right:8px}.checkbox-circle:hover{border-color:#2fd34d}.user-type{gap:15px;margin:8px 0}.signup-page,.user-type{align-items:center;display:flex;justify-content:center}.signup-page{min-height:100vh}.app-sidebar{background:#fff;box-sizing:border-box;direction:rtl;font-family:Tajawal,sans-serif;height:100vh;overflow-x:hidden;overflow-y:hidden;padding:15px 10px;position:fixed;right:0;top:0;transition:width .4s ease,right .4s ease;width:270px;z-index:1100}.app-sidebar.close{padding-left:0;padding-right:0;width:60px!important}.app-sidebar .profile_section{align-items:flex-end;border-bottom:2px solid #0000001a;display:flex;gap:10px;padding:10px}.app-sidebar .profile_section .nav_image img{border-radius:50%;height:35px;object-fit:cover;padding-left:5px;width:35px}.app-sidebar .profile_info{display:flex;flex-direction:column;opacity:1;transition:opacity .3s ease,width .3s ease,visibility .3s ease}.app-sidebar.close .profile_info{opacity:0;pointer-events:none;visibility:hidden;width:0}.app-sidebar #sidebar-close{color:#333;cursor:pointer;display:none;font-size:20px;margin-right:auto;transition:color .3s ease}.app-sidebar .menu_container{display:flex;flex-direction:column;height:calc(100vh - 100px);margin-top:20px}.app-sidebar .menu_items{flex-grow:1;padding-right:10px}.app-sidebar .bottom_content{border-top:1px solid #0000001a;margin-top:auto;padding-top:20px}body.dark-mode .app-sidebar .bottom_content{border-top-color:#ffffff1a}.app-sidebar .theme-toggle-item{margin-bottom:8px;padding:8px 12px}.app-sidebar.close .theme-toggle-item{opacity:0;pointer-events:none;visibility:hidden;width:0}.app-sidebar .logout-item{padding:8px 12px}.app-sidebar .logout-item .nav-link{align-items:center;border-radius:8px;color:#333;display:flex;font-size:18px;font-weight:500;padding:12px;text-decoration:none;transition:all .3s ease}.app-sidebar .logout-item .nav-link:hover{background-color:rgba(255,2,2,.782);border:2px solid #ff1e00;color:#fff}.app-sidebar .logout-item .nav-link span{flex:1 1;text-align:right;white-space:nowrap}.app-sidebar .logout-item .nav-link svg{font-size:20px;margin-left:12px}body.dark-mode .app-sidebar .logout-item .nav-link{color:#fff!important}body.dark-mode .app-sidebar .logout-item .nav-link:hover{background-color:rgba(255,2,2,.782);border:2px solid #ff1e00;color:#fff}.app-sidebar.close .logout-item .nav-link span{display:none}.app-sidebar.close .logout-item .nav-link{justify-content:center}.app-sidebar.close .logout-item .nav-link svg{margin:0}.app-sidebar .menu_item{list-style:none;padding:0}.app-sidebar .menu_item .link{align-items:center;border-radius:5px;box-sizing:border-box;color:#333;display:flex;flex-wrap:nowrap;font-size:18px;font-weight:500;gap:15px;justify-content:flex-start;padding:12px;position:relative;text-decoration:none;transition:all .3s ease;white-space:nowrap;width:100%}.app-sidebar .menu_item .link i{align-items:center;display:flex;justify-content:center}.app-sidebar .menu_item .link span{display:block;flex:1 1;text-align:right;transition:opacity .3s ease,visibility .3s ease,width .3s ease}.app-sidebar.close .link span{opacity:0;visibility:hidden;width:0}.app-sidebar.close .link{justify-content:center}.app-sidebar .menu_item .link:hover{background-color:#007bff33;border:2px solid #007bff}.app-sidebar .menu_item .link:hover i{color:#007bff}@media screen and (max-width:800px){.app-sidebar{width:270px!important;z-index:1100}.app-sidebar.close{padding:15px 0;right:-100%;width:60px!important}.app-sidebar:not(.close) #sidebar-close{display:block}.app-sidebar.close .link{justify-content:center}.app-sidebar.close .link .fa-adjust,.app-sidebar.close .link i{margin:0!important}.app-sidebar.close .theme-toggle-container .link .theme-switch-wrapper{display:none}}@media screen and (min-width:801px){.app-sidebar #sidebar-close{display:none!important}}.mobile-sidebar-toggle{display:none;position:fixed;right:10px;top:10px;transition:opacity .3s ease;z-index:1101}.mobile-sidebar-toggle.hidden{opacity:0;pointer-events:none}@media screen and (max-width:800px){.mobile-sidebar-toggle{align-items:center;background:#0791e7;border:none;border-radius:50%;box-shadow:0 0 5px #0003;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;transition:background-color .2s ease,transform .2s ease;width:40px}.mobile-sidebar-toggle:hover{background-color:#27b842;transform:scale(1.05)}}.app-sidebar .theme-toggle-container{justify-content:center;margin:0;padding:5px 15px;width:100%}.app-sidebar .sidebar-bottom .item:last-child .link{justify-content:flex-end;padding-right:15px}.app-sidebar .sidebar-bottom .item:last-child .link svg{margin-left:10px}.app-sidebar .sidebar-bottom .item:last-child .link span{text-align:right}.app-sidebar .sidebar-bottom .link span{display:block;flex:1 1;text-align:right;transition:opacity .3s ease,visibility .3s ease}.app-sidebar .theme-toggle-container:hover{background-color:initial;border:none}.sidebar-overlay{background-color:#00000080;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1099}.app-sidebar .theme-toggle-container .link{align-items:center;border-radius:5px;box-sizing:border-box;color:#333;display:flex;flex-wrap:nowrap;font-size:18px;font-weight:500;gap:15px;justify-content:flex-start;padding:12px;position:relative;text-decoration:none;white-space:nowrap;width:100%}.app-sidebar .theme-toggle-container .link .fa-adjust{align-items:center;color:#666;display:flex;font-size:20px;justify-content:center;min-width:40px}.app-sidebar .theme-toggle-container .link .theme-switch-wrapper{align-items:center;display:flex;margin-left:auto}.app-sidebar.close .link span,.app-sidebar.close .profile_info{opacity:0;pointer-events:none;visibility:hidden;width:0}.loggedinPage{display:flex;flex-direction:column;min-height:100vh}.page-layout{display:flex;min-height:calc(100vh - 60px)}.sidebar-container{z-index:100}.main-content{align-items:center;justify-content:center}.main-content .hero-section{padding:0;width:100%}.main-content .hero-content{align-items:center;display:flex;flex-direction:row;gap:30px;margin:0 auto 10vh;max-width:800px;min-height:400px;padding:2.5rem;width:40%}.main-content .hero-content .hero-image{order:2}.main-content .hero-content .hero-text{order:1}@media screen and (max-width:768px){.main-content{padding:10px}.main-content .hero-content{direction:rtl;flex-direction:column-reverse;min-height:auto;padding:1.5rem;text-align:center;width:90%}.main-content .hero-content .hero-image{margin-top:2rem;max-width:250px;order:1;width:100%}.main-content .hero-content .hero-text{order:2;width:100%}}.signin-form-container{align-items:center;background-color:#f7faf9;border-radius:20px;box-shadow:0 4px 10px #0000001a;display:flex;justify-content:space-between;max-width:900px;padding:30px;width:60%}.signin-form{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:20px;padding-top:2rem}.input-container{position:relative;width:60%}.signin-form input{background:#0000;border:none;border-bottom:2px solid #000;box-sizing:border-box;color:#000;font-size:1rem;outline:none;padding:10px;text-align:right;width:100%}.signin-form input::placeholder{color:#00000080}.signin-form input:focus{border-bottom:2px solid #3abef9}a{align-items:center;display:flex;justify-content:center}.branding-logo{width:100%}.signin-button{align-items:center;background-color:#000;border:none;border-radius:5rem;color:#fff;cursor:pointer;display:flex;font-size:1.4rem;font-weight:700;justify-content:center;max-width:18rem;padding:.8rem 2rem;text-align:center;transition:background-color .3s ease;width:60%}.signin-button:hover{background-color:#333}.signin-button.disabled-btn{background-color:#ccc!important;border:1px solid #bbb!important;box-shadow:none!important;color:#666!important;cursor:not-allowed!important;opacity:.7;pointer-events:none;transform:none!important}.validation-message{color:red!important;font-size:14px;margin-top:10px}.forgot-password{margin-bottom:.5rem;text-align:center}.signup-link{align-items:center;direction:rtl;display:flex;font-size:1rem;gap:5px;justify-content:center;text-align:right;white-space:nowrap}.forgot-password a,.signup-link a{color:#0084d8;text-decoration:none}.SignIn-error-message{background-color:#ffebee;border-radius:4px;color:#c62828;font-size:1rem;margin-bottom:15px;padding:10px;text-align:center}@media (max-width:768px){.signin-form-container{flex-direction:column;width:80%}.branding-logo{min-width:160px;width:60%}}.signin-form input[type=password]{padding-left:30px;padding-right:10px}@media (max-width:768px){.input-container,.password-field-container,.signin-form input,.signup-form input{width:70%}}@media (max-width:480px){.input-container,.password-field-container,.signin-form input,.signup-form input{width:95%}}@media (max-width:500px){.signin-form-container{margin:15px 0;padding:20px 15px;width:90%}.signin-form-container h2{font-size:1.5rem}.signin-form .input-container{width:95%}.signin-form .signin-button{font-size:1rem;padding:10px;width:95%}.signin-form a{font-size:.85rem}.branding-logo{margin-bottom:15px;max-width:100px}}.signin-page{min-height:100vh}.forgot-password-container,.signin-page{align-items:center;display:flex;justify-content:center}.forgot-password-container{background-color:#f7faf9;border-radius:20px;box-shadow:0 4px 10px #0000001a;flex-direction:column;max-width:900px;padding:30px;width:60%}.forgot-password-form{align-items:center;display:flex;flex-direction:column;width:100%}.forgot-password-title{font-size:1.8rem;font-weight:700;text-align:center}.forgot-password-text{color:#333;font-size:1rem;text-align:center}.forgot-password-form input{background:#0000;border:none;border-bottom:2px solid #000;color:#000;font-size:1rem;margin-bottom:20px;outline:none;padding:10px;text-align:right;width:80%}.forgot-password-form input::placeholder{color:#00000080}.forgot-password-form input:focus{border-bottom:2px solid #02bff8}.forgot-password-button{align-items:center;background-color:#000;border:none;border-radius:5rem;color:#fff;cursor:pointer;display:flex;font-size:1.4rem;font-weight:700;justify-content:center;margin-top:1rem;max-width:18rem;padding:.8rem 2rem;text-align:center;transition:background-color .3s ease;width:80%}.forgot-password-button:hover{background-color:#333}.back-to-login{font-size:1rem;text-align:center}.back-to-login a{color:#0084d8;text-decoration:none}.ForgotPassword-error-message{background-color:#ffebee;border-radius:4px;color:#c62828;font-size:1rem;margin-bottom:15px;padding:10px;text-align:center}@media (max-width:768px){.forgot-password-container{width:80%}}.success-message{background-color:#e6f4ea;border-radius:6px;color:#1e4620;font-size:14px;font-weight:500;gap:8px;justify-content:space-between;margin-bottom:12px;padding:10px 15px}.check-icon{color:#2fd34d;font-size:16px;padding-bottom:5px}.error-message{align-items:center;animation:fadeIn .4s ease-in-out;background-color:#3a1f1f;border-radius:6px;color:#ffc7c7;display:flex;font-size:14px;gap:8px;margin-bottom:12px;padding:10px 15px}.cross-icon{color:#ff4b4b;font-size:16px;padding-bottom:5px;padding-left:10px}@media (max-width:768px){.forgot-password-container{padding:20px;width:85%}.forgot-password-title{font-size:1.4rem}.forgot-password-text{font-size:.95rem}.forgot-password-form input{font-size:.95rem;width:100%}.forgot-password-button{font-size:1.1rem;max-width:none;padding:.7rem 1.5rem;width:100%}.back-to-login{font-size:.95rem}}@media (max-width:480px){.forgot-password-container{padding:15px;width:95%}.forgot-password-title{font-size:1.2rem}.forgot-password-form input{padding:8px}.forgot-password-button{font-size:1rem;max-width:90%;padding:.6rem 1.2rem;padding:.7rem 1.5rem}}.admin-dashboard{direction:rtl;margin:0 auto;max-width:1200px;padding:20px}.admin-dashboard h1{color:#333;margin-bottom:30px}.pending-registrars{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:20px}.pending-registrars h2{color:#4a90e2;margin-bottom:20px}.registrars-table{border-collapse:collapse;margin-top:15px;width:100%}.registrars-table td,.registrars-table th{border-bottom:1px solid #eee;padding:12px 15px;text-align:right}.registrars-table th{background-color:#f8f9fa;font-weight:600}.approve-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:16px;margin-right:8px;padding:8px 15px;text-align:center;width:100px}
  
    
    ;.approve-button:hover{background-color:#45a049}.reject-button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:16px;margin-right:8px;padding:8px 15px;text-align:center;width:100px}.reject-button:hover{background-color:#c82333}.error-message{background-color:#ffebee;color:#c62828}.error-message,.success-message{border-radius:4px;margin-bottom:15px;padding:10px}.success-message{background-color:#e8f5e9;color:#2e7d32}@keyframes adminMessageFadeIn{0%{opacity:0}to{opacity:1}}@keyframes adminMessageFadeOut{0%{opacity:1}to{opacity:0}}.admin-dashboard .error-message,.admin-dashboard .success-message{animation:adminMessageFadeIn .3s,adminMessageFadeOut .3s 4.7s}.admin-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.user-management{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:20px}.user-management h2{color:#4a90e2;margin-bottom:20px}.add-user-form{background-color:#f8f9fa;border-radius:8px;margin-bottom:30px;padding:20px}.add-user-form h3{color:#333}.add-user-form h3,.form-group{margin-bottom:15px}.form-group label{margin-bottom:5px}.form-group input,.form-group select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.add-user-button{background-color:#4a90e2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px}.add-user-button:hover{background-color:#3a7bc8}.users-list h3{color:#333;margin:20px 0 15px}.users-table{border-collapse:collapse;width:100%}.users-table td,.users-table th{border-bottom:1px solid #eee;padding:12px 15px;text-align:right}.users-table th{background-color:#f8f9fa;font-weight:600}.active-status{background-color:#e8f5e9;color:#2e7d32}.active-status,.inactive-status{border-radius:4px;font-size:16px;font-weight:500;padding:4px 8px}.inactive-status{background-color:#ffebee;color:#c62828}.activate-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:16px;margin-right:8px;padding:8px 15px;text-align:center;width:100px}.activate-button:hover{background-color:#45a049}.deactivate-button{background-color:#ff9800;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:16px;margin-right:8px;padding:8px 15px;text-align:center;width:100px}.deactivate-button:hover{background-color:#e68a00}.delete-button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:16px;margin-right:8px;padding:8px 15px;text-align:center;width:100px}.delete-button:hover{background-color:#bf2131}.retry-button{background-color:#4a90e2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;margin-left:10px;padding:6px 12px}.navbar .actions,.navbar .btn,.navbar .btn-outline,.navbar .btn-primary{animation:none!important;opacity:1!important;visibility:visible!important}.filter-controls{background-color:#f8f9fa;border-radius:6px;display:flex;gap:20px;justify-content:center;margin-bottom:20px;padding:15px}.filter-controls label{align-items:center;cursor:pointer;display:flex;gap:5px}.filter-controls input[type=radio]{cursor:pointer}.details-button{background-color:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:16px;padding:8px 15px;text-align:center;width:100px}.details-button:hover{background-color:#138496}.action-buttons-cell button{margin-bottom:5px}.registrars-table td,.users-table td{vertical-align:middle}@media (max-width:768px){.admin-dashboard{padding:10px;width:100%}.pending-registrars,.user-management{box-sizing:border-box;width:100%}.admin-header{align-items:flex-start}.admin-header,.filter-controls{flex-direction:column;gap:10px}.registrars-table,.users-table{table-layout:fixed;width:100%}.registrars-table thead,.users-table thead{display:none}.registrars-table tr,.users-table tr{background-color:#fff;border:1px solid #ddd;border-radius:8px;display:flex;flex-direction:column;gap:8px;margin-bottom:12px;padding:12px}.registrars-table td,.users-table td{padding:6px 8px;text-align:right;width:100%}.registrars-table td:last-child,.users-table td:last-child{border-bottom:none}.registrars-table td:before,.users-table td:before{color:#888;content:attr(data-label);font-weight:600;margin-left:10px}.activate-button,.approve-button,.deactivate-button,.delete-button,.details-button,.reject-button{font-size:14px;margin:5px 0;width:100%}.action-buttons-cell{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-top:10px}.action-buttons-cell button{flex:1 1 45%;min-width:120px;text-align:center}.details-button{width:97%}.approve-button,.reject-button{display:flex;flex-direction:column}}.admin-user-detail-page .user-comments-section{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin-top:20px;padding:20px}.admin-user-detail-page .user-comments-section h2{color:#4a90e2;margin-bottom:20px}.admin-user-detail-page .comments-list{display:flex;flex-direction:column;gap:15px}.admin-user-detail-page .comment-item-admin{background-color:#f9f9f9;border:1px solid #eee;border-radius:6px;padding:15px}.admin-user-detail-page .comment-item-admin p{margin:5px 0;word-break:break-word}.admin-user-detail-page .comment-item-admin strong{color:#333}.admin-user-detail-page .admin-delete-comment{font-size:14px;margin-top:10px;padding:6px 12px;width:auto}.admin-navbar{align-items:center;background-color:#fff;box-shadow:0 2px 10px #0000001a;direction:rtl;display:flex;justify-content:space-between;margin-bottom:20px;padding:15px 20px}.nav-logo h2{color:#4a90e2;font-size:1.5rem;margin:0}.nav-links{display:flex;gap:20px}.nav-links a{border-radius:4px;color:#555;font-weight:500;padding:8px 12px;text-decoration:none;transition:all .2s ease}.nav-links a:hover{background-color:#f5f5f5}.nav-links a.active{background-color:#4a90e21a;color:#4a90e2;margin-right:10px}.nav-logout{margin-left:0;margin-right:auto}.admin-logout-btn{background-color:#ff4d4f;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s ease}.admin-logout-btn:hover{background-color:#ff7875}.admin-logout-btn:active{background-color:#d9363e}.registrar-page,.registrar-page button,.registrar-page input,.registrar-page select,.registrar-page textarea{font-family:Tajawal,sans-serif}.registrar-page{background-color:#f0f2f5;direction:rtl;display:flex;flex-direction:column;min-height:100vh}.registrar-header{align-items:center;background-color:#34495e;box-shadow:0 2px 5px #00000026;color:#fff;display:flex;justify-content:space-between;padding:.8rem 1.5rem}.header-left-items{align-items:center;display:flex;gap:1rem}.header-title{font-size:1.4rem;font-weight:600;margin:0}.registrar-header .theme-toggle-container{margin:0;padding:0}.logout-button{align-items:center;background-color:#e74c3c;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;padding:.6rem 1.2rem;transition:background-color .2s ease}.logout-button:hover{background-color:#c0392b}.registrar-main-content{background-color:#f0f2f5;flex:1 1;overflow-y:auto;padding:30px}.registrar-page .notification-banner{align-items:stretch;border:1px solid #0000;border-radius:6px;display:flex;font-weight:500;margin-bottom:20px;overflow:hidden;padding:0}.registrar-page .notification-icon-container{align-items:center;background-color:#0000001a;display:flex;justify-content:center;padding:12px 15px}.registrar-page .notification-message{align-items:center;display:flex;flex-grow:1;padding:12px 15px}.registrar-page .notification-close-btn{align-items:center;align-self:stretch;background-color:#0000001a;border:none;color:inherit;cursor:pointer;display:flex;font-size:1rem;justify-content:center;line-height:1;opacity:.7;padding:12px 15px;transition:opacity .2s ease,background-color .2s ease}.registrar-page .notification-close-btn:hover{background-color:#00000026;opacity:1}.registrar-page .notification-success{background-color:#ecfdf5;border-color:#a7f3d0;color:#065f46}.registrar-page .notification-success .notification-icon-container{background-color:#10b981}.registrar-page .notification-success .notification-close-btn{background-color:#d1fae5;color:#065f46}.registrar-page .notification-success .notification-close-btn:hover{background-color:#a7f3d0}.registrar-page .notification-error{background-color:#fef2f2;border-color:#fecaca;color:#991b1b}.registrar-page .notification-error .notification-icon-container{background-color:#ef4444}.registrar-page .notification-error .notification-close-btn{background-color:#fee2e2;color:#991b1b}.registrar-page .notification-error .notification-close-btn:hover{background-color:#fecaca}.registrar-page .notification-info{background-color:#eff6ff;border-color:#bfdbfe;color:#1e40af}.registrar-page .notification-info .notification-icon-container{background-color:#3b82f6}.registrar-page .notification-info .notification-close-btn{background-color:#dbeafe;color:#1e40af}.registrar-page .notification-info .notification-close-btn:hover{background-color:#bfdbfe}.registrar-page .notification-warning{background-color:#fffbeb;border-color:#fde68a;color:#92400e}.registrar-page .notification-warning .notification-icon-container{background-color:#f59e0b}.registrar-page .notification-warning .notification-close-btn{background-color:#fef3c7;color:#92400e}.registrar-page .notification-warning .notification-close-btn:hover{background-color:#fde68a}body.dark-mode .registrar-page .notification-banner{border-width:1px}body.dark-mode .registrar-page .notification-success{background-color:#062519;border-color:#054029;color:#a7f3d0}body.dark-mode .registrar-page .notification-success .notification-icon-container{background-color:#10b981}body.dark-mode .registrar-page .notification-success .notification-close-btn{background-color:#043220;color:#a7f3d0}body.dark-mode .registrar-page .notification-success .notification-close-btn:hover{background-color:#054029}body.dark-mode .registrar-page .notification-error{background-color:#300a0a;border-color:#5e1111;color:#fecaca}body.dark-mode .registrar-page .notification-error .notification-icon-container{background-color:#ef4444}body.dark-mode .registrar-page .notification-error .notification-close-btn{background-color:#450a0a;color:#fecaca}body.dark-mode .registrar-page .notification-error .notification-close-btn:hover{background-color:#5e1111}body.dark-mode .registrar-page .notification-info{background-color:#0e1e3a;border-color:#17356e;color:#bfdbfe}body.dark-mode .registrar-page .notification-info .notification-icon-container{background-color:#3b82f6}body.dark-mode .registrar-page .notification-info .notification-close-btn{background-color:#112856;color:#bfdbfe}body.dark-mode .registrar-page .notification-info .notification-close-btn:hover{background-color:#17356e}body.dark-mode .registrar-page .notification-warning{background-color:#312103;border-color:#583808;color:#fde68a}body.dark-mode .registrar-page .notification-warning .notification-icon-container{background-color:#f59e0b}body.dark-mode .registrar-page .notification-warning .notification-close-btn{background-color:#493005;color:#fde68a}body.dark-mode .registrar-page .notification-warning .notification-close-btn:hover{background-color:#583808}.registrar-page .steps-section{background-color:#fff;border-radius:12px;box-shadow:0 4px 15px #00000012;margin-bottom:2rem;padding:25px}.registrar-page .steps-section h2{border-bottom:2px solid #e0e0e0;color:#34495e;font-size:1.6rem;margin-bottom:25px;padding-bottom:10px}.registrar-page .loading-indicator,.registrar-page .no-requests-message,.registrar-page .registrar-error-message{background-color:#f8f9fa;border:1px dashed #ced4da;border-radius:8px;color:#6c757d;font-size:1rem;margin-top:10px;padding:40px 20px;text-align:center}.registrar-page .registrar-error-message{background-color:#f8d7da;border-color:#f5c6cb;color:#dc3545}.registrar-page .steps-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.registrar-page .step-card{background-color:#fff;border:1px solid #e9ecef;border-radius:10px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.registrar-page .step-card:hover{box-shadow:0 6px 12px #00000014;transform:translateY(-4px)}.registrar-page .step-card.status-pending{border-left:none;border-right:5px solid #ffc107}.registrar-page .step-card.status-processed{border-left:none;border-right:5px solid #198754}.registrar-page .step-card.status-rejected{border-left:none;border-right:5px solid #dc3545;opacity:.85}.registrar-page .step-card.status-rejected .card-header{background-color:#fdfdfe}.registrar-page .card-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;font-size:.9rem;justify-content:space-between;padding:15px 20px}.registrar-page .shared-date,.registrar-page .student-info{align-items:center;color:#495057;display:flex;gap:8px}.registrar-page .shared-date span,.registrar-page .student-info span{font-weight:500}.registrar-page .card-body{flex-grow:1;padding:20px}.card-body-Pending{background-color:#7b752e}.card-body-Processed{background-color:#2e7b4e}.card-body-Rejected{background-color:#7b2e2e}.registrar-page .card-body p{color:#343a40;font-size:1rem;margin:0 0 15px}.registrar-page .changes-summary-preview{align-items:center;background-color:#e9ecef;border-radius:20px;color:#495057;display:inline-flex;font-size:.85rem;font-weight:500;gap:8px;padding:5px 12px}.registrar-page .card-footer{background-color:#f8f9fa;border-top:1px solid #e9ecef;padding:15px 20px;text-align:left}.registrar-page .view-details-btn{align-items:center;background-color:#0d6efd;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;padding:10px 18px;transition:background-color .2s ease}.registrar-page .view-details-btn:hover{background-color:#0b5ed7}body.dark-mode .registrar-page .steps-section{background-color:#2d3748;box-shadow:0 4px 15px #0003}body.dark-mode .registrar-page .steps-section h2{border-bottom-color:#4a5568;color:#cbd5e0}body.dark-mode .registrar-page .loading-indicator,body.dark-mode .registrar-page .no-requests-message{background-color:#1a202c;border-color:#4a5568;color:#a0aec0}body.dark-mode .registrar-page .registrar-error-message{background-color:#450a0a;border-color:#5e1111;color:#fecaca}body.dark-mode .registrar-page .step-card{background-color:#1a202c;border-color:#4a5568;box-shadow:0 2px 8px #0003}body.dark-mode .registrar-page .step-card:hover{box-shadow:0 6px 12px #0000004d}body.dark-mode .registrar-page .step-card.status-pending{border-left:none;border-right-color:#d69e2e}body.dark-mode .registrar-page .step-card.status-processed{border-left:none;border-right-color:#2f855a}body.dark-mode .registrar-page .step-card.status-rejected{border-left:none;border-right-color:#c53030;opacity:.8}body.dark-mode .registrar-page .card-header{background-color:#2d3748;border-bottom-color:#4a5568}body.dark-mode .registrar-page .step-card.status-rejected .card-header{background-color:#2a3343}body.dark-mode .registrar-page .shared-date,body.dark-mode .registrar-page .student-info{color:#a0aec0}body.dark-mode .registrar-page .card-body p{color:#cbd5e0}body.dark-mode .registrar-page .changes-summary-preview{background-color:#4a5568;color:#e2e8f0}body.dark-mode .registrar-page .card-footer{background-color:#2d3748;border-top-color:#4a5568}body.dark-mode .registrar-page .view-details-btn{background-color:#2b6cb0}body.dark-mode .registrar-page .view-details-btn:hover{background-color:#2c5282}@media (max-width:768px){.registrar-page .registrar-header{align-items:center;flex-direction:row;flex-wrap:wrap;gap:.8rem;justify-content:space-between;padding:.8rem 1rem}.registrar-page .header-left-items{flex-grow:1}.registrar-page .header-title{font-size:1.2rem}.registrar-page .logout-button{padding:.5rem 1rem}.registrar-page .registrar-main-content{padding:15px}.registrar-page .steps-grid{grid-template-columns:1fr}.registrar-page .steps-section{font-size:.95rem;padding:15px}.registrar-page .steps-section h2{font-size:1.3rem}.registrar-page .card-footer,.registrar-page .card-header{padding:12px 15px}.registrar-page .card-body{padding:15px}}.process-step-page{background-color:#f0f2f5;direction:rtl;display:flex;flex-direction:column;font-family:Tajawal,sans-serif;min-height:100vh}.process-step-header{align-items:center;background-color:#34495e;box-shadow:0 2px 5px #00000026;color:#fff;display:flex;justify-content:space-between;padding:.8rem 1.5rem}.process-step-header .header-left{align-items:center;display:flex;gap:1rem}.process-step-header h1{font-size:1.4rem;font-weight:600;margin:0}.back-button{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:1.3rem;justify-content:center;padding:5px;transition:color .2s ease}.back-button:hover{color:#bdc3c7}.process-step-main-content{flex:1 1;overflow-y:auto;padding:25px}.notification-banner{margin-bottom:20px}.process-step-page .error-message,.process-step-page .loading-indicator{background-color:#fff;border:1px dashed #ced4da;border-radius:8px;color:#6c757d;font-size:18px;margin-top:20px;padding:40px 20px;text-align:center}.process-step-page .error-message{background-color:#f8d7da;border-color:#f5c6cb;color:#dc3545}.process-step-page .step-details-container{background-color:#fff;border-radius:12px;box-shadow:0 4px 15px #00000012;padding:25px}.process-step-page .action-buttons-top{border-bottom:1px solid #eee;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:30px;padding-bottom:20px}.process-step-page .action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:10px;padding:10px 20px;transition:all .2s ease}.process-step-page .action-btn:disabled{cursor:not-allowed;opacity:.6}.process-step-page .action-btn.process{background-color:#198754;color:#fff}.process-step-page .action-btn.process:not(:disabled):hover{background-color:#157347}.process-step-page .action-btn.reject{background-color:#dc3545;color:#fff}.process-step-page .action-btn.reject:not(:disabled):hover{background-color:#bb2d3b}.process-step-page .action-btn.print{background-color:#6c757d;color:#fff}.process-step-page .action-btn.print:not(:disabled):hover{background-color:#5a6268}.process-step-page .info-section{margin-bottom:25px}.process-step-page .info-section h2{border-bottom:2px solid #e0e0e0;color:#34495e;font-size:1.3rem;margin-bottom:15px;padding-bottom:8px}.process-step-page .info-section h2 .schedule-title{color:#555;font-size:1.1rem;font-weight:400}.process-step-page .info-grid{grid-gap:10px 20px;display:grid;gap:10px 20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.process-step-page .info-section p{align-items:center;color:#495057;display:flex;gap:8px;margin:0 0 10px}.process-step-page .info-section p svg{color:#6c757d;text-align:center;width:18px}.process-step-page .info-section strong{color:#343a40}.process-step-page .status-badge{border-radius:15px;display:inline-block;font-size:.9rem;font-weight:500;padding:3px 10px;text-transform:capitalize}.process-step-page .status-pending{background-color:#fff3cd;color:#664d03}.process-step-page .status-processed{background-color:#d1e7dd;color:#0f5132}.process-step-page .status-rejected{background-color:#f8d7da;color:#842029}.process-step-page .changes-list{display:flex;flex-direction:column;gap:12px;margin-top:15px}.process-step-page .change-item{background-color:#fcfdff;border-radius:8px;box-shadow:0 1px 4px #00000014;overflow:hidden;transition:all .3s ease}.process-step-page .change-item.remove{border-right:4px solid #e74c3c}.process-step-page .change-item.change{border-right:4px solid #3498db}.process-step-page .change-item.add{border-right:4px solid #2ecc71}.process-step-page .change-header{align-items:center;background-color:#fff;border-bottom:1px solid #f1f1f1;cursor:pointer;display:flex;justify-content:space-between;padding:10px 15px;-webkit-user-select:none;user-select:none}.process-step-page .change-item.expanded .change-header{background-color:#f8f9fa}.process-step-page .change-title{align-items:center;display:flex;gap:10px}.process-step-page .course-id{color:#333;font-weight:600}.process-step-page .change-type{border-radius:4px;font-size:12px;font-weight:500;padding:3px 8px}.process-step-page .change-type.remove{background-color:#ffebee;color:#e74c3c}.process-step-page .change-type.change{background-color:#e3f2fd;color:#3498db}.process-step-page .change-type.add{background-color:#e8f5e9;color:#2ecc71}.process-step-page .expand-icon{color:#95a5a6;transition:transform .3s ease}.process-step-page .change-item.expanded .expand-icon{transform:rotate(180deg)}.process-step-page .change-details{background-color:#fff;max-height:0;overflow:hidden;padding:0 15px;transition:max-height .3s ease,padding .3s ease}.process-step-page .change-item.expanded .change-details{border-top:none;max-height:500px;padding:15px}.process-step-page .change-details p{font-size:.95rem;margin:6px 0}.process-step-page .change-details strong{background-color:#f0f2f5;border-radius:3px;font-size:1rem;padding:1px 6px}.process-step-page .from-section,.process-step-page .to-section{margin:8px 0}body.dark-mode .process-step-page .error-message,body.dark-mode .process-step-page .loading-indicator{background-color:#2d3748;border-color:#4a5568;color:#a0aec0}body.dark-mode .process-step-page .error-message{background-color:#450a0a;border-color:#5e1111;color:#fecaca}body.dark-mode .process-step-page .process-step-header{background-color:#2d3748;box-shadow:0 2px 5px #0000004d;color:#e2e8f0}body.dark-mode .process-step-page .back-button{color:#e2e8f0}body.dark-mode .process-step-page .back-button:hover{color:#a0aec0}body.dark-mode .process-step-page .process-step-main-content{background-color:#1a202c}body.dark-mode .process-step-page .step-details-container{background-color:#2d3748;box-shadow:0 4px 15px #0003}body.dark-mode .process-step-page .action-buttons-top{border-bottom-color:#4a5568}body.dark-mode .process-step-page .action-btn:disabled{opacity:.5}body.dark-mode .process-step-page .action-btn.process{background-color:#2f855a}body.dark-mode .process-step-page .action-btn.process:not(:disabled):hover{background-color:#276749}body.dark-mode .process-step-page .action-btn.reject{background-color:#c53030}body.dark-mode .process-step-page .action-btn.reject:not(:disabled):hover{background-color:#9b2c2c}body.dark-mode .process-step-page .action-btn.print{background-color:#4a5568}body.dark-mode .process-step-page .action-btn.print:not(:disabled):hover{background-color:#2d3748}body.dark-mode .process-step-page .info-section h2{border-bottom-color:#4a5568;color:#cbd5e0}body.dark-mode .process-step-page .info-section h2 .schedule-title,body.dark-mode .process-step-page .info-section p{color:#a0aec0}body.dark-mode .process-step-page .info-section p svg{color:#718096}body.dark-mode .process-step-page .info-section strong{color:#e2e8f0}body.dark-mode .process-step-page .status-pending{background-color:#4d3803;color:#ffda6a}body.dark-mode .process-step-page .status-processed{background-color:#0b3523;color:#75d1a0}body.dark-mode .process-step-page .status-rejected{background-color:#491217;color:#f1949c}body.dark-mode .process-step-page .change-item{background-color:#2d3748;border-color:#4a5568}body.dark-mode .process-step-page .change-item.remove{border-right-color:#e53e3e}body.dark-mode .process-step-page .change-item.change{border-right-color:#4299e1}body.dark-mode .process-step-page .change-item.add{border-right-color:#48bb78}body.dark-mode .process-step-page .change-header{background-color:#1a202c;border-bottom-color:#4a5568}body.dark-mode .process-step-page .change-item.expanded .change-header{background-color:#27303f}body.dark-mode .process-step-page .course-id{color:#e2e8f0}body.dark-mode .process-step-page .change-type.remove{background-color:#450a0a;color:#fecaca}body.dark-mode .process-step-page .change-type.change{background-color:#112856;color:#bfdbfe}body.dark-mode .process-step-page .change-type.add{background-color:#043220;color:#a7f3d0}body.dark-mode .process-step-page .expand-icon{color:#a0aec0}body.dark-mode .process-step-page .change-details{background-color:#1a202c}body.dark-mode .process-step-page .change-details p{color:#a0aec0}body.dark-mode .process-step-page .change-details strong{background-color:#4a5568;color:#e2e8f0}@media print{body,html{height:auto!important;margin:0!important;overflow:visible!important;padding:0!important}.process-step-page{display:block!important;flex-direction:row!important;height:auto!important}.process-step-main-content{padding:0!important}.change-details,.changes-list,.process-step-main-content,.step-details-container{display:block!important;height:auto!important;max-height:none!important;overflow:visible!important}.change-details{padding:15px!important;visibility:visible!important}.action-buttons-top,.change-header .expand-icon,.mobile-sidebar-toggle,.notification-close-btn,.process-step-header{display:none!important}.change-item{page-break-inside:avoid!important;-webkit-page-break-inside:avoid!important}body{margin:.5cm!important}}body,html{box-sizing:border-box;margin:0;overflow-x:hidden;padding:0;width:100%}.schedule-page{font-family:Tajawal,sans-serif}.new-schedule-main-content{flex:1 1;padding:20px}.page-content{align-items:center;background-color:#fff;border-radius:30px;box-shadow:0 10px 30px #0000000d;display:flex;flex:0 1 auto;flex-direction:column;margin:2rem auto;max-width:95%;padding:2.5rem;width:900px}.app-sidebar .menu_item .link i{color:#666;font-size:20px;margin-right:25px;min-width:40px;text-align:right;transition:color .3s ease}.header{gap:10px;margin-bottom:20px}.header,.home-button{align-items:center;display:flex}.home-button{background-color:#007baa;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.2rem;height:50px;justify-content:center;position:fixed;right:20px;top:20px;transition:all .3s ease;width:50px;z-index:90}.home-button:hover{background-color:#007baa;transform:scale(1.05)}.my-schedules-button{align-items:center;background-color:#007baa;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:50px;justify-content:center;left:20px;position:fixed;top:20px;transition:all .3s ease;width:50px;z-index:90}.my-schedules-button:hover{background-color:#378ce7;transform:scale(1.05)}.nav-button{background-color:#007baa;border:none;border-radius:8px;color:#fff;cursor:pointer;direction:ltr;font-size:.9rem;padding:8px 16px;transition:all .2s ease}.nav-button:hover{background-color:#009cd7;transform:translateY(-1px)}.form-section{background-color:#fff;border-radius:15px;box-shadow:0 4px 10px #0000000d;margin-bottom:2rem;padding:1.5rem;width:100%}.form-title{color:#333;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.preferences{display:flex;flex-direction:row-reverse;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:1.5rem}.preference-item{align-items:center;background-color:#f8f9fa;border-radius:12px;box-shadow:0 2px 6px #00000014;display:flex;flex:1 1;flex-direction:column;min-width:250px;padding:1rem;text-align:right;transition:all .3s ease}.preference-item:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.preference-item label{color:#333;font-weight:700;margin-bottom:.8rem}.preference-item label,.time-select{font-size:1.1rem;text-align:center;width:100%}.time-select{appearance:none;-webkit-appearance:none;background-color:#fff;background-image:url(/static/media/chevron-down.573a17fbdaf5e867e956.svg);background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border:1px solid #ddd;border-radius:8px;box-shadow:inset 0 1px 3px #0000000d;cursor:pointer;direction:rtl;padding:12px 35px 12px 12px;top:100%;transition:all .3s ease}.time-select:focus{border-color:#007baa;box-shadow:0 0 0 3px #4798d233;outline:none}.time-select option{direction:rtl;padding:10px;top:100%}.time-filter-notice{background-color:#e3f2fd;border:1px solid #bbdefb;border-radius:10px;box-shadow:0 2px 6px #0000000d;color:#0d47a1;font-size:1rem;margin-top:1rem;padding:1rem 1.5rem;text-align:center;transition:all .3s ease;width:100%}.time-filter-notice:hover{box-shadow:0 4px 8px #0000001a}.time-filter-notice span{background-image:url(/static/media/info-icon.2bae006e0b07450f333d.svg);background-position:100%;background-repeat:no-repeat;background-size:20px;display:inline-block;padding-right:28px}.credit-counter{font-size:1rem;font-weight:600;margin:.5rem 0 1rem;text-align:center;width:100%}.credit-counter p{background-color:#f2f2f2;border-radius:20px;box-shadow:0 2px 4px #0000001a;display:inline-block;padding:.5rem 1.5rem;transition:all .3s ease}.credit-counter p.limit-reached{animation:pulse-warning 2s infinite;background-color:#ffebee;box-shadow:0 3px 6px #f4433633}@keyframes pulse-warning{0%{box-shadow:0 3px 6px #f4433633}50%{box-shadow:0 3px 12px #f4433666}to{box-shadow:0 3px 6px #f4433633}}.credit-counter .credit-warning{color:#ff9800;font-weight:700}.credit-counter .credit-exceeded{animation:flash-text 1.5s infinite;color:#f44336;font-weight:700}@keyframes flash-text{0%,to{opacity:1}50%{opacity:.7}}.disabled-btn{background-color:#ccc!important;border:1px solid #bbb!important;box-shadow:none!important;color:#666!important;cursor:not-allowed!important;opacity:.7;pointer-events:none;transform:none!important}.disabled-cell{opacity:.6;pointer-events:none}.credit-summary{background-color:#e8f5e9;border-radius:12px;color:#006400;font-weight:600;margin-top:.2rem;padding:.3rem .8rem}.course-selection{margin-bottom:1.5rem;position:relative;width:100%}.course-dropdown{direction:rtl;font-family:Tajawal,sans-serif;text-align:right}.course-dropdown .css-1pahdxg-control,.course-dropdown .css-1s2u09g-control{border-color:#ddd;border-radius:8px;box-shadow:none;min-height:42px}.course-dropdown .css-1pahdxg-control:hover{border-color:#378ce7}.course-dropdown .css-319lph-ValueContainer{padding:2px 8px;text-align:right}.course-dropdown .css-14el2xx-placeholder{color:#aaa;margin-right:20px;text-align:right}.course-dropdown .css-1gtu0rj-indicatorContainer,.course-dropdown .css-tlfecz-indicatorContainer{padding:8px}.course-dropdown .css-tj5bde-Svg{color:#666}.course-dropdown .css-26l3qy-menu{border-radius:8px;box-shadow:0 4px 10px #0000001a;text-align:right;z-index:9999}.course-dropdown .css-1n7v3ny-option{background-color:#e8f5e9}.course-dropdown .css-9gakcf-option{background-color:#378ce7}.course-dropdown .css-1pndypt-Input input{margin-left:0;margin-right:2px;padding-right:5px}.course-dropdown .css-xb97g8{background-color:#e8f5e9;border-color:#c8e6c9;border-radius:4px;color:#333}.course-dropdown .css-12jo7m5{margin-left:0;margin-right:6px}.course-dropdown .css-1rhbuit-multiValue{background-color:#e8f5e9;direction:rtl;margin:3px}.course-dropdown .css-1rhbuit-multiValue>div{color:#333}.course-dropdown .css-xb97g8:hover{background-color:#c8e6c9}.generate-schedule-btn{background-color:#007baa;border:none;border-radius:55px;color:#fff;cursor:pointer;display:block;font-size:1rem;margin:1.5rem auto .5rem;padding:12px 24px;position:relative;text-align:center;transition:all .2s ease;width:220px}.generate-schedule-btn:hover{background-color:#009cd7;transform:translateY(-2px)}.generate-schedule-btn.disabled-btn{align-items:center;border:1px solid #bbb!important;box-shadow:none!important;color:#666!important;cursor:not-allowed!important;display:flex;gap:8px;justify-content:center;opacity:.7;pointer-events:none}.generate-schedule-btn.disabled-btn,.generate-schedule-btn.disabled-btn:hover{background-color:#ccc!important;transform:none!important}.generate-schedule-btn.disabled-btn:after{animation:spin 1s linear infinite;border:2px solid #666;border-radius:50%;border-top-color:#0000;content:"";flex-shrink:0;height:16px;width:16px}.save-schedule-btn{align-items:center;background-color:#007baa;border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:block;font-size:1rem;font-weight:500;justify-content:center;padding:10px 20px;text-align:center;transition:all .3s ease}.save-schedule-btn:hover{background-color:#009cd7;transform:translateY(-1px)}.btn-close{background-color:#dc3545;border-radius:30px;font-size:.9rem;padding:.5rem 1.5rem;transition:all .2s ease}.btn-close:hover{background-color:#c82333}.schedule-section{margin-left:auto;margin-right:auto;margin-top:3rem;position:relative;width:100%;z-index:1}.no-schedules{background-color:#fff;border-radius:15px;box-shadow:0 4px 10px #0000000d;color:#666;font-size:1rem;margin:2rem 0;padding:1.5rem;text-align:center}.schedule-navigation-container{align-items:center;display:flex;flex-direction:column;margin:1rem 0;width:100%}.schedule-navigation{align-items:center;display:flex;flex-direction:row-reverse;gap:1.5rem;margin:.5rem 0}.schedule-navigation-info{font-size:.9rem;gap:.3rem;text-align:center}.schedule-container,.schedule-navigation-info{align-items:center;display:flex;flex-direction:column}.schedule-container{border-radius:8px;box-shadow:0 2px 8px #0000001a;justify-content:center;margin:1rem 0;overflow:hidden;width:100%}.schedule-table{background-color:#fff;border-collapse:collapse;border-spacing:0;box-shadow:0 1px 3px #0000001a;direction:rtl;margin:0 auto 1rem;table-layout:fixed;width:100%}.schedule-table th{background-color:#f9f9f9;font-weight:600;padding:8px 5px}.schedule-table td,.schedule-table th{border:1px solid #ddd;text-align:center}.schedule-table td{background-color:#fff;height:40px;padding:0;position:relative;vertical-align:middle;width:16.66667%}.schedule-table td:first-child{background-color:#f9f9f9;font-weight:500;width:80px}.schedule-table tr{border:1px solid #ddd;height:40px}.cell-with-course{background-color:#fff;overflow:hidden;padding:0!important;position:relative}.occupied-cell{display:none}.course-cell{--hover-color:#388e3c;background-color:#4caf50;box-shadow:inset 0 0 0 1px #fff3;box-sizing:border-box;cursor:pointer;font-size:.85rem;font-weight:600;height:100%;margin:0;overflow:hidden;padding:4px;position:relative;text-shadow:0 1px 1px #0003;transition:all .2s ease;width:100%}.course-cell:hover{background-color:var(--hover-color);transform:scale(1.02);z-index:5}.course-time{color:#ffffffe6;font-size:.7rem;font-weight:400;margin-top:3px;max-width:100%;opacity:.9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.popup-content p{font-size:1rem;margin:.8rem 0}.notifications-container{display:flex;flex-direction:column;gap:10px;left:50%;max-width:500px;position:fixed;top:1.5rem;transform:translateX(-50%);width:90%;z-index:9999}.custom-notification{animation:slideDown .5s ease-out forwards;border-radius:8px;box-shadow:0 4px 15px #00000040;cursor:pointer;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;width:100%}.custom-notification:hover{box-shadow:0 6px 20px #00000059;transform:scale(1.02)}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.custom-notification.error{background-color:#ffebee;border-right:5px solid #f44336}.custom-notification.success{background-color:#e8f5e9;border-right:5px solid #4caf50}.custom-notification.warning{background-color:#fff8e1;border-right:5px solid #ff9800}.custom-notification.info{background-color:#e3f2fd;border-right:5px solid #2196f3}.notification-content{align-items:center;display:flex;padding:1.2rem}.notification-icon{align-items:center;display:flex;font-size:1.5rem;justify-content:center;margin-left:1rem}.notification-icon span{height:28px;line-height:28px;text-align:center;width:28px}.custom-notification p{direction:rtl;flex:1 1;font-size:.95rem;line-height:1.5;margin:0;padding-right:15px;text-align:right}.custom-notification p:after{content:"انقر في أي مكان لإغلاق هذه الرسالة";display:block;font-size:.75rem;font-weight:400;margin-top:.3rem;opacity:.7}.notification-close{align-items:center;background:#0000001a;border:none;border-radius:50%;color:#555;cursor:pointer;display:flex;font-size:1.4rem;font-weight:700;gap:15px;height:28px;justify-content:center;margin-right:.8rem;padding:0;transition:all .2s ease;width:28px}.notification-close:hover{background:#0003;color:#000;transform:scale(1.1)}@media (max-width:1200px){.page-content{padding:1.5rem;width:95%}.new-schedule-main-content{padding-right:70px}}@media (max-width:768px){.page-content{box-sizing:border-box;margin:70px auto 1rem;max-width:100%;padding:1rem;width:100%}.new-schedule-main-content{padding:10px}.app-sidebar{width:50px}.form-section{box-sizing:border-box;padding:1rem;width:100%}.schedule-container{overflow-x:auto;width:100%}.preferences{align-items:center;flex-direction:column;gap:10px;width:100%}.preference-item{box-sizing:border-box;min-width:0;min-width:auto;width:100%}.NewSchedulePage-plan-selectors{align-items:center;box-sizing:border-box;flex-direction:column;gap:10px;margin:0 0 20px;padding:0;width:100%}.NewSchedulePage-plan-select{box-sizing:border-box;flex:none;margin-bottom:10px;max-width:none;min-width:0;min-width:auto;width:100%}.NewSchedulePage-plan-select-faculty{order:1}.NewSchedulePage-plan-select-major{order:2}.NewSchedulePage-plan-select-level{order:3}.course-plan-toggle-btn{flex:none;margin-bottom:10px;max-width:none;min-width:0;min-width:auto;order:4;width:100%}}@media (max-width:600px){.custom-notification{min-width:250px;top:1rem;width:90%}.notification-content{padding:.8rem}.custom-notification p{font-size:.85rem}.custom-notification p:after{font-size:.7rem;margin-top:.2rem}}.courses-without-time{margin-top:1.5rem}.courses-without-time h3{color:#333;font-size:1.1rem;margin-bottom:1rem;text-align:right}.courses-filtered-by-time{background-color:#fff8e1;border-left:4px solid #ffa000}.courses-filtered-by-time h3{color:#e65100}.time-filtered-item{background-color:#fffaf0;border-right:4px solid #ffa000}.time-filtered-item .no-time-course-id{color:#e65100}.no-time-course-id{background-color:initial;color:#2fd34d;font-weight:700;margin-left:.5rem;min-width:80px;padding:0;text-align:center}.no-time-course-name{flex:1 1;margin-right:.5rem;order:2;text-align:right}.no-time-course-credit{background:#eee;border-radius:4px;color:#666;font-weight:500;order:3;padding:.2rem .5rem}.final-exams-container{width:100%}.student-type-selection{align-items:center;background-color:#f8f9fa;border-radius:12px;box-shadow:0 2px 6px #00000014;display:flex;justify-content:center;margin-bottom:1.5rem;padding:1rem;transition:all .3s ease;width:90}.student-type-selection:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.graduate-checkbox{align-items:center;cursor:pointer;display:flex;gap:8px;-webkit-user-select:none;user-select:none}.graduate-checkbox input[type=checkbox]{accent-color:#2fd34d;cursor:pointer;height:18px;width:18px}.checkbox-label{font-size:1.1rem}.NewSchedulePage-plan-selectors{align-items:center;display:flex;flex-direction:row-reverse;flex-wrap:wrap;font-family:Tajawal,sans-serif;gap:15px;justify-content:center;margin-bottom:25px}.NewSchedulePage-plan-select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url(/static/media/CustomDropdownArrow.da5c28b5ee3dda73ad17.svg);background-position:left 15px center;background-repeat:no-repeat;background-size:10px 10px;border:1px solid #ced4da;border-radius:6px;cursor:pointer;direction:rtl;flex:1 1;font-family:Tajawal,sans-serif;font-size:1rem;max-width:250px;min-width:200px;padding:10px 15px 10px 40px;text-align:right;transition:border-color .2s ease,box-shadow .2s ease}.NewSchedulePage-plan-select:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem #0d6efd40;outline:0}.NewSchedulePage-plan-select:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.7}.course-plan-toggle-btn{background-color:#0277bd;border:1px solid #0277bd;border-radius:6px;box-shadow:0 2px 4px #0277bd33;color:#fff;cursor:pointer;direction:rtl;flex:1 1;font-family:Tajawal,sans-serif;font-size:1rem;font-weight:500;max-width:250px;min-width:200px;padding:10px 20px;text-align:center;transition:all .3s ease;white-space:nowrap}.course-plan-toggle-btn:hover{background-color:#0288d1;border-color:#0288d1;box-shadow:0 4px 8px #0277bd4d;transform:translateY(-2px)}.course-plan-toggle-btn:active{box-shadow:0 2px 4px #0277bd33;transform:translateY(0)}@media (max-width:768px){.NewSchedulePage-plan-selectors{align-items:center;box-sizing:border-box;flex-direction:column;gap:10px;margin:0 0 20px;padding:0;width:100%}.NewSchedulePage-plan-select{box-sizing:border-box;flex:none;margin-bottom:10px;max-width:none;min-width:0;min-width:auto;width:100%}.NewSchedulePage-plan-select-faculty{order:1}.NewSchedulePage-plan-select-major{order:2}.NewSchedulePage-plan-select-level{order:3}.course-plan-toggle-btn{flex:none;margin-bottom:10px;max-width:none;min-width:0;min-width:auto;order:4;width:100%}}.course-plan-container{background-color:#f5f9ff;border-radius:15px;box-shadow:0 4px 12px #0000001a;direction:rtl;margin:2rem 0;overflow:hidden;padding:1.5rem;width:100%}.course-plan-header{margin-bottom:1.5rem;text-align:center}.course-plan-header h2{color:#0277bd;font-size:1.5rem;margin-bottom:.5rem}.course-plan-subtitle{color:#666;font-size:.9rem;margin:0}.course-plan-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:1rem}.toggle-connections-btn{background-color:#0277bd;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1.5rem;transition:all .3s ease}.toggle-connections-btn:hover{background-color:#0288d1;box-shadow:0 3px 8px #0003;transform:translateY(-2px)}.add-level-courses-btn{background-color:#2fd34d;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1.5rem;transition:all .3s ease}.add-level-courses-btn:hover{background-color:#29bb42;box-shadow:0 3px 8px #0003;transform:translateY(-2px)}.add-level-courses-btn:disabled{background-color:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.level-courses-section{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;margin:1rem 0;padding:1rem}.level-courses-preview{margin-top:.8rem}.level-courses-preview p{color:#666;font-size:.9rem;font-weight:500;margin:0 0 .5rem}.level-courses-list{display:flex;flex-direction:column;gap:.3rem}.level-course-item{background-color:#e3f2fd;border-radius:6px;border-right:3px solid #2196f3;color:#444}.level-course-item,.more-courses{font-size:.85rem;padding:.3rem .6rem}.more-courses{color:#666;font-style:italic}@media (max-width:768px){.level-courses-section{margin:.8rem 0;padding:.8rem}.add-level-courses-btn{font-size:1rem;padding:.8rem 1rem;width:100%}}.course-plan-note{background-color:#fff3e0;border-radius:8px;border-right:4px solid #ff9800;box-shadow:0 2px 6px #00000014;margin-top:1.5rem;padding:1rem}.course-plan-note p{color:#e65100;font-size:.9rem;margin:0}.course-plan-visualization{padding-bottom:1rem;position:relative}.course-plan-diagram{display:flex;flex-direction:column;gap:2rem;min-height:500px;padding:1rem;position:relative}.course-plan-level{display:flex;flex-direction:column;gap:1rem}.level-header{background-color:#e1f5fe;border-radius:8px;box-shadow:0 2px 4px #0000000d;color:#333;font-size:1.1rem;font-weight:600;padding:.5rem 1rem;text-align:center}.level-courses{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;padding:.5rem}.course-box{background-color:#fff;border:2px solid #0000;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;gap:.5rem;min-height:100px;padding:.8rem;position:relative;text-align:center;transition:all .3s ease;width:120px}.course-box:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-3px)}.course-box.prerequisite{background-color:#e3f2fd;border-color:#07c}.course-box.selected{background-color:#e8f5e9;border-color:#2fd34d}.course-box.prerequisite.selected{background:linear-gradient(135deg,#e3f2fd 50%,#e8f5e9 0);border-color:#006064}.course-id{font-size:1rem;font-weight:700}.course-name{align-items:center;color:#555;display:flex;flex-grow:1;font-size:.8rem;justify-content:center}.course-prereqs{background-color:#0000000d;border-radius:4px;color:#666;font-size:.7rem;padding:.3rem;text-align:center}.course-prereqs span{color:#0277bd;font-weight:700}.course-connections{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:-1}.course-plan-legend{background-color:#fff;border-radius:8px;box-shadow:0 2px 6px #00000014;display:flex;gap:2rem;justify-content:center;margin-top:1.5rem;padding:1rem}.legend-item{gap:.5rem}.legend-color{border-radius:4px;height:20px;width:20px}.legend-color.prerequisite{background-color:#e3f2fd;border:2px solid #07c}.legend-color.selected{background-color:#e8f5e9;border:2px solid #2fd34d}@media (max-width:768px){.course-plan-container{padding:1rem}.course-plan-diagram{gap:1.5rem}.level-courses{gap:1rem}.course-box{min-height:90px;padding:.6rem;width:100px}.course-plan-legend{align-items:center;flex-direction:column;gap:1rem}}.course-plan-image-container{border-radius:8px;box-shadow:0 4px 16px #00000026;margin:1.5rem 0;overflow:hidden;text-align:center;width:100%}.course-plan-image{display:block;height:auto;margin:0 auto;max-width:100%;transition:transform .3s ease}.course-plan-image:hover{transform:scale(1.02)}@media (max-width:768px){.course-plan-container{padding:1rem}.course-plan-image-container{margin:1rem 0}}ul{list-style:none}.example-2{align-items:center;display:flex;justify-content:center}.example-2 .icon-content{margin:0 10px;position:relative}.example-2 .icon-content .tooltip{border-radius:5px;color:#fff;font-size:14px;left:50%;opacity:0;padding:6px 10px;position:absolute;top:-30px;transform:translateX(-50%);transition:all .3s ease;visibility:hidden}.example-2 .icon-content:hover .tooltip{opacity:1;top:-50px;visibility:visible}.example-2 .icon-content a{align-items:center;background-color:#fff;border-radius:50%;color:#4d4d4d;display:flex;height:50px;justify-content:center;overflow:hidden;position:relative;transition:all .3s ease-in-out;width:50px}.example-2 .icon-content a:hover{box-shadow:3px 2px 45px 0 #0000001f;color:#fff}.example-2 .icon-content a svg{height:30px;position:relative;width:30px;z-index:1}.example-2 .icon-content a .filled{background-color:#25d366;bottom:0;height:0;left:0;position:absolute;transition:all .3s ease-in-out;width:100%}.example-2 .icon-content a:hover .filled{height:100%}.example-2 .icon-content a[data-social=whatsapp]~.tooltip{background-color:#25d366}.whatsapp-icon-button{background:none;border:none;cursor:pointer;display:inline-flex;margin:0;padding:0;vertical-align:middle}.whatsapp-icon-button:focus{outline:none}.whatsapp-icon-button:focus-visible{border-radius:50%;outline:2px solid var(--blue);outline-offset:2px}:root{--green-main:#28a745;--green-hover:#218838;--white:#fff;--gray-dark:#333;--blue:#007bff}.schedule-page{display:flex;flex-direction:column;min-height:100vh}.main-content{display:flex;flex:1 1}.myschedules-container{margin:0 auto;max-width:1200px;padding:20px;width:100%}h1{color:var(--green);font-size:1.8rem;margin-bottom:30px;text-align:center;white-space:nowrap}.no-schedules-msg{color:#333;color:var(--gray-dark);font-size:1.2rem;text-align:center}.schedule-table{background-color:#fefefe;border:1px solid #ddd;border-radius:10px;box-shadow:0 1px 3px #00000014;margin:0 auto 40px;max-width:1000px;padding:20px}.schedule-table-grid{border-collapse:collapse;direction:rtl;table-layout:fixed;width:100%}.schedule-table-header{align-items:center;direction:rtl;display:flex;justify-content:space-between;margin-bottom:20px}.schedule-title-group{align-items:center;display:flex;gap:10px}.schedule-title-group h2{color:#28a745;color:var(--green-main);font-size:1.2rem;margin:0;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.schedule-title-group .whatsapp-icon-list{flex-shrink:0;margin:0;padding:0}.schedule-title-group .icon-content a{height:35px;width:35px}.schedule-title-group .icon-content a svg{height:20px;width:20px}.schedule-title-group .icon-content:hover .tooltip{top:-40px}.schedule-table-header .credit-counter{background-color:#f9f9f9;border-radius:20px;box-shadow:0 1px 3px #0000000d;display:block;margin:0 auto;padding:5px 12px;position:static;text-align:center;transform:none;white-space:nowrap;width:fit-content;z-index:1}.schedule-table-header .credit-counter span{color:#333;font-weight:600}.schedule-header-buttons{align-items:center;display:flex;gap:10px;margin-left:0}.delete-schedule-btn,.print-schedule-btn{align-items:center;border:none;border-radius:50px;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-family:Tajawal,sans-serif;font-size:.9rem;gap:6px;height:38px;padding:8px 16px;transition:background-color .3s ease;white-space:nowrap}.print-schedule-btn{background-color:#007bff;background-color:var(--blue)}.print-schedule-btn:hover{background-color:#0056b3}.delete-schedule-btn{background-color:#dc2626;border:2px solid #e92020}.delete-schedule-btn:hover{background-color:#f44;color:#fff;color:var(--white)}.schedule-table-header h2{color:#28a745;color:var(--green-main);font-size:1.2rem;margin:0;text-align:right}.schedule-grid{border:1px solid #ddd;border-radius:10px;display:flex;flex-direction:column;overflow:hidden}.schedule-header-row{background-color:#28a745;background-color:var(--green-main);color:#fff;color:var(--white);display:flex;font-weight:700;text-align:center}.time-slot-header{width:100px}.day-header,.time-slot-header{border-right:1px solid #ddd;padding:10px}.day-header{flex:1 1}.day-header:last-child{border-right:none}.time-row{border-top:1px solid #ddd;display:flex}.time-slot-cell{background:#f9f9f9;padding:10px;width:100px}.course-cell,.time-slot-cell{border-right:1px solid #ddd;text-align:center}.course-cell{align-items:center;color:#fff;color:var(--white);display:flex;flex:1 1;flex-direction:column;font-weight:700;justify-content:center}.course-cell:last-child{border-right:none}.empty-cell{background:#fff;border-right:1px solid #ddd;flex:1 1}.empty-cell:last-child{border-right:none}.schedule-table-grid .course-name{color:#fff;text-align:center}.schedule-table-grid .course-time{color:#fff;margin-top:0;opacity:.9;text-align:center}.popup-overlay{background-color:#00000080;z-index:9999}.popup-content{border-top-style:solid;border-top-width:8px}.saved-schedule-container{align-items:stretch;border-radius:8px;box-shadow:0 1px 5px #0000000d;display:flex;flex-direction:column;margin:20px auto;width:100%}.schedule-actions{display:flex;justify-content:center;margin-top:1rem;width:100%}.compare-btn{background-color:#007baa;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.3rem;font-weight:600;padding:.5rem 2rem;transition:all .3s ease}.compare-btn:hover{background-color:#009cd7;transform:translateY(-2px)}.courses-without-time{background-color:#f9f9f9;border-radius:8px;box-shadow:0 2px 8px #0000001a;box-sizing:border-box;margin-top:2rem;padding:1rem 1.5rem;width:100%}.no-time-course-list{direction:rtl;list-style:none;margin:0;padding:0}.no-time-course-item{align-items:center;background-color:#fff;border-radius:6px;border-right:4px solid #2fd34d;box-shadow:0 1px 4px #0000001a;display:flex;flex-direction:row;justify-content:space-between;margin-bottom:.5rem;padding:.7rem 1rem}.schedule-grid-container{-webkit-overflow-scrolling:touch;margin-bottom:20px;overflow-x:auto;width:100%}.schedule-grid{min-width:600px}@media screen and (max-width:768px){.main-content{padding-top:80px}.my-schedules-container{margin-top:100px}.schedule-table{margin-bottom:30px;padding:15px;width:90%}.schedule-table-header{flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:15px}.schedule-title-group{flex-shrink:1;justify-content:center;min-width:150px}.schedule-title-group h2{font-size:1rem}.schedule-header-buttons{flex-shrink:0;gap:8px;justify-content:center;order:3;width:100%}.delete-schedule-btn,.print-schedule-btn{font-size:.8rem;gap:4px;height:32px;padding:6px 12px}.schedule-table-header .credit-counter{order:2;padding:4px 10px}.schedule-table-header .credit-counter span{font-size:.85rem}.schedule-table-grid td,.schedule-table-grid th{font-size:.65rem;padding:4px 2px;white-space:normal;word-break:break-word}.time-slot-cell,.time-slot-header{font-size:.6rem;padding:4px 1px;width:45px}.course-cell{padding:2px}.schedule-table-grid .course-name{font-size:.6rem;line-height:1.1;margin-bottom:1px}.schedule-table-grid .course-time{font-size:.55rem;line-height:1.1}.schedule-title-group .icon-content a{height:30px;width:30px}.schedule-title-group .icon-content a svg{height:18px;width:18px}.schedule-title-group .icon-content:hover .tooltip{top:-35px}}@media screen and (max-width:480px){h1{font-size:1.4rem;padding-top:50px}.main-content{padding-top:70px}.schedule-table-header,.schedule-title-group{justify-content:center}.schedule-title-group{gap:5px;min-width:120px;order:1;width:100%}.schedule-title-group h2{font-size:.95rem}.delete-schedule-btn,.print-schedule-btn{font-size:.75rem;gap:3px;height:30px;padding:5px 10px}.schedule-table-header .credit-counter{font-size:.8rem;order:2;padding:3px 8px}.schedule-table-header .credit-counter span{font-size:.8rem}.schedule-header-buttons{gap:6px;order:3}.schedule-table-grid td,.schedule-table-grid th{font-size:.6rem;padding:3px 1px}.time-slot-cell,.time-slot-header{font-size:.55rem;width:40px}.schedule-table-grid .course-name{font-size:.55rem}.schedule-table-grid .course-time{font-size:.5rem}.schedule-title-group .icon-content a{height:28px;width:28px}.schedule-title-group .icon-content a svg{height:16px;width:16px}}.final-exams-container{background-color:#f1f8ff;border-radius:10px;border-right:4px solid #0277bd;box-shadow:0 3px 10px #0000001a;margin-top:2rem;padding:1.5rem;width:95%}.final-exams-container h3{color:#0277bd;font-size:1.2rem;font-weight:600;margin-bottom:1.2rem;text-align:center}.final-exams-table-container{margin-bottom:1rem;overflow-x:auto}.final-exams-table{background-color:#fff;border-collapse:collapse;box-shadow:0 2px 5px #0000000d;direction:rtl;width:100%}.final-exams-table th{background-color:#0277bd;border:1px solid #e0e0e0;color:#fff;font-weight:500;padding:10px 15px;text-align:center}.final-exams-table td{border:1px solid #e0e0e0;padding:12px 15px;text-align:center;transition:background-color .2s ease}.final-exams-table tr:nth-child(2n){background-color:#f5f9ff}.final-exams-table tr:hover td{background-color:#e1f5fe}.final-exams-note{color:#757575;font-size:.85rem;font-style:italic;margin-top:1rem;text-align:center}@media screen and (max-width:768px){.final-exams-container{margin-top:1.5rem;padding:1rem}.final-exams-table td,.final-exams-table th{font-size:.8rem;padding:8px 10px}}@media screen and (max-width:480px){.final-exams-container{padding:.75rem}.final-exams-table td,.final-exams-table th{font-size:.75rem;padding:6px 8px}.final-exams-container h3{font-size:1rem}}body.dark-mode .final-exams-container{background-color:#0d1117;border-right:4px solid #007baa;color:#f5f5f5}body.dark-mode .final-exams-container h3{color:#007baa}body.dark-mode .final-exams-table{background-color:#1a202c;border-color:#4a5568;color:#f5f5f5}body.dark-mode .final-exams-table th{background-color:#007baa;border-color:#2d3748;color:#fff}body.dark-mode .final-exams-table td{background-color:#2d3748;border-color:#4a5568;color:#f5f5f5}body.dark-mode .final-exams-table tr:nth-child(2n) td{background-color:#1f2937}body.dark-mode .final-exams-table tr:hover td{background-color:#374151}body.dark-mode .final-exams-note{color:#cbd5e0}.print-dialog{direction:rtl;max-width:500px;text-align:right;width:90%}.print-dialog h3{border-bottom:2px solid #28a745;color:#333;padding-bottom:.5rem;text-align:center}.print-dialog h3,.print-dialog-content{margin-bottom:1.5rem}.form-group{margin-bottom:1rem}.form-group label{color:#333;display:block;font-weight:500;margin-bottom:.5rem}.form-input{border:2px solid #ddd;border-radius:8px;direction:rtl;font-size:1rem;padding:.75rem;text-align:right;transition:border-color .3s ease;width:100%}.form-input:focus{border-color:#28a745;box-shadow:0 0 0 3px #28a7451a;outline:none}.checkbox-group{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:1.5rem 0;padding:1rem}.checkbox-label{align-items:center;color:#333;cursor:pointer;display:flex;font-weight:500;gap:.5rem}.checkbox-label input[type=checkbox]{accent-color:#28a745;height:18px;width:18px}.dialog-buttons{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.btn-confirm{background-color:#28a745;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.btn-confirm:hover:not(:disabled){background-color:#218838;box-shadow:0 4px 12px #28a7454d;transform:translateY(-2px)}.btn-confirm:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.6}.btn-cancel{background-color:#6c757d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.btn-cancel:hover{background-color:#5a6268;box-shadow:0 4px 12px #6c757d4d;transform:translateY(-2px)}body.dark-mode .print-dialog{background-color:#1a202c;color:#f5f5f5}body.dark-mode .print-dialog h3{border-bottom-color:#007baa;color:#f5f5f5}body.dark-mode .form-group label{color:#f5f5f5}body.dark-mode .form-input{background-color:#2d3748;border-color:#4a5568;color:#f5f5f5}body.dark-mode .form-input:focus{border-color:#007baa;box-shadow:0 0 0 3px #007baa1a}body.dark-mode .checkbox-group{background-color:#2d3748;border-color:#4a5568}body.dark-mode .checkbox-label{color:#f5f5f5}body.dark-mode .btn-confirm{background-color:#007baa}body.dark-mode .btn-confirm:hover:not(:disabled){background-color:#005580}@media (max-width:1024px){h1{font-size:1.5rem;padding-top:50px}}@media screen and (max-width:768px){.print-dialog{margin:0 auto;max-width:95%}.dialog-buttons{flex-direction:column;gap:.5rem}.btn-cancel,.btn-confirm{padding:1rem;width:100%}}.pdf-guide-overlay{align-items:center;background-color:#000000b3;bottom:0;direction:rtl;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.pdf-guide-content{background-color:#fff;border-radius:12px;box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;max-height:85vh;max-width:700px;overflow-y:auto;width:90%}.pdf-guide-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.pdf-guide-header h2{align-items:center;color:#3182ce;display:flex;font-size:20px;gap:10px;margin:0}.close-button{background:none;border:none;color:#718096;cursor:pointer;font-size:20px;padding:5px;transition:all .2s}.close-button:hover{color:#e53e3e;transform:scale(1.1)}.pdf-guide-body{flex:1 1;padding:20px}.guide-steps{list-style:none;margin:0 0 20px;padding:0}.guide-steps li{border-bottom:1px dashed #e2e8f0;display:flex;margin-bottom:25px;padding-bottom:20px}.guide-steps li:last-child{border-bottom:none}.step-number{align-items:center;background-color:#3182ce;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:40px;justify-content:center;margin-left:15px;width:40px}.step-content{flex:1 1}.step-content h3{color:#2d3748;font-size:18px;margin-bottom:8px;margin-top:0}.step-content p{color:#4a5568;margin:0 0 10px}.tip-box{align-items:center;background-color:#ebf8ff;border-radius:8px;border-right:3px solid #3182ce;display:flex;gap:10px;margin-top:10px;padding:12px}.tip-icon{color:#3182ce;font-size:18px}.action-arrow{color:#3182ce;font-size:20px;margin-bottom:10px;margin-top:10px;text-align:center}.success-message{align-items:center;background-color:#f0fff4;border-radius:8px;display:flex;gap:15px;justify-content:center;margin:20px 0;padding:15px;text-align:center}.success-icon{color:#38a169;font-size:24px}.success-message p{color:#2f855a;font-weight:600;margin:0}.note-box{background-color:#fffaf0;border:1px solid #fbd38d;border-radius:8px;margin-top:15px;padding:15px}.note-box p{color:#744210;margin:5px 0}.pdf-guide-footer{border-top:1px solid #eee;padding:15px 20px;text-align:center}.got-it-btn{background-color:#3182ce;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:10px 30px;transition:all .2s}.got-it-btn:hover{background-color:#2b6cb0;box-shadow:0 4px 6px #3182ce33;transform:translateY(-2px)}@media (max-width:600px){.pdf-guide-content{width:95%}.pdf-guide-header h2{font-size:18px}.step-number{font-size:14px;height:30px;width:30px}.step-content h3{font-size:16px}}.comparePage{background-color:#f5f5f5;display:flex;flex-direction:column;min-height:100vh}.compare-container{background-color:#fff;border-radius:15px;box-shadow:0 4px 6px #0000001a;margin:2rem auto;max-width:1200px;padding:2rem;width:90%}.compare-container h1{color:#333;font-size:2rem;margin-bottom:2rem;text-align:center}.course-info{margin-bottom:.5rem}.interactive-input{margin-bottom:2rem;width:100%}.empty-cell{background-color:#fff}.course-name{font-weight:700;margin-bottom:.25rem}.course-name,.course-time{direction:rtl;text-align:right}.course-time{font-size:.85rem}.loading-text{color:#666}.error-text,.loading-text{font-size:1.1rem;margin:2rem 0;text-align:center}.error-text{color:#dc3545}.changes-container{background-color:#fff;border:4px solid #007baa;border-radius:12px;box-shadow:0 4px 12px #0003;direction:rtl;margin:3rem auto;max-width:800px;padding:2rem;position:relative;text-align:right;width:100%;z-index:5}.changes-container:before{border-bottom:20px solid #007baa;border-left:20px solid #0000;border-right:20px solid #0000;content:"";top:-20px}.changes-container:after,.changes-container:before{left:50%;position:absolute;transform:translateX(-50%)}.changes-container:after{background:#007baa;border-radius:20px;color:#fff;content:"التغييرات المطلوبة";font-size:14px;font-weight:700;padding:5px 15px;top:-15px}.changes-container.empty{animation:pulse 2s infinite;border:3px dashed #e2e8f0;padding:4rem 2rem;text-align:center}.changes-container.no-change{border-color:#3182ce;text-align:center}.changes-container.no-change:before{border-bottom-color:#3182ce}.changes-container.no-change:after{background-color:#3182ce;content:"نتيجة المقارنة"}.changes-summary{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;direction:rtl;flex-wrap:wrap;gap:1rem;justify-content:space-around;margin-bottom:2rem;padding:1.5rem;text-align:right}.changes-summary>div{background-color:#edf2f7;border-radius:50px;font-weight:600;padding:.75rem 1.5rem;text-align:center}.changes-summary span{background-color:#fff;border-radius:50%;color:#2d3748;display:inline-block;font-weight:700;height:30px;line-height:30px;margin-right:.5rem;text-align:center;width:30px}.changes-count{background-color:#edf2f7;border:1px solid #cbd5e0;color:#2d3748}.removal-count{background-color:#fff5f5;border:1px solid #fed7d7;color:#c53030}.removal-count span{background-color:#fed7d7;color:#c53030}.section-change-count{background-color:#ebf8ff;border:1px solid #bee3f8;color:#2b6cb0}.section-change-count span{background-color:#bee3f8;color:#2b6cb0}.addition-count{background-color:#f0fff4;border:1px solid #c6f6d5;color:#2f855a}.addition-count span{background-color:#c6f6d5;color:#2f855a}.changes-container.empty:after,.changes-container.empty:before{display:none}.changes-container h2{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:1.8rem;font-weight:700;margin-bottom:2rem;padding-bottom:1rem;text-align:center}#comparison-results{animation:fadeIn .8s ease-in-out;margin-top:3rem;padding-top:1rem}.changes-section{animation:slideIn .5s ease-in-out;background-color:#f8f9fa;border:1px solid #e2e8f0;border-radius:8px;direction:rtl;margin-bottom:2rem;overflow:hidden;padding:1.5rem;position:relative;text-align:right}.changes-section:before{content:"";height:100%;position:absolute;right:0;top:0;width:6px}.changes-section:nth-child(3):before{background-color:#e53e3e}.changes-section:nth-child(4):before{background-color:#3182ce}.changes-section:nth-child(5):before{background-color:#007baa}.changes-section h3{border-right:4px solid #007baa;color:#2d3748;font-size:1.3rem;margin-bottom:1.5rem;margin-right:0}.change-item{background:#fff;box-shadow:0 2px 5px #0000001a;direction:rtl;margin-bottom:1rem;padding:1.5rem;text-align:right}.change-item:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-3px)}.change-item h4{font-size:1.2rem;font-weight:700;margin-bottom:1rem}.change-item.remove{border-right:6px solid #e53e3e}.change-item.remove h4{color:#e53e3e}.change-item.change{border-right:6px solid #3182ce}.change-item.change h4{color:#3182ce}.change-item.add{border-right:6px solid #38a169}.change-item.add h4{color:#007baa}.course-details{background:#f7fafc;border-radius:6px;direction:rtl;padding:1rem;text-align:right}.course-details p{align-items:center;color:#4a5568;display:flex;flex-direction:row;justify-content:space-between;margin:.5rem 0}.course-details p strong{margin-left:5px;margin-right:0}.change-item.add .course-details p strong{background-color:#f0fff4;border-color:#c6f6d5;box-shadow:0 2px 4px #2f855a33;color:#007baa;font-size:1.2rem}.change-item.change .from-section p strong,.change-item.remove .course-details p strong{background-color:#fff5f5;border-color:#fed7d7;box-shadow:0 2px 4px #c5303033;color:#c53030;font-size:1.2rem}.change-item.change .to-section p strong{animation:pulse-green 2s infinite;background-color:#f0fff4;border-color:#c6f6d5;box-shadow:0 2px 4px #2f855a33;color:#007baa;font-size:1.3rem;padding:8px 15px}.from-section{border-bottom:1px dashed #e2e8f0;margin-bottom:1rem;padding-bottom:1rem}.to-section{padding-top:.5rem}.no-changes{animation:pulse 2s infinite;background-color:#f0fff4;border:1px solid #c6f6d5;border-radius:8px;color:#2f855a;font-size:1.2rem;font-weight:600;padding:2rem;text-align:center}@media screen and (max-width:768px){.compare-container{margin:1rem auto;padding:1rem;width:95%}.compare-container h1{font-size:1.5rem}.schedule-container h2{font-size:1.2rem}.schedule-table{font-size:.8rem}.schedule-table td,.schedule-table th{padding:4px}.course-name{font-size:.8rem}.course-time{font-size:.7rem}.changes-container{margin-left:5rem;padding:1rem}.change-item,.changes-section{padding:1rem}.change-item h4{font-size:1.1rem}}.empty-schedule{align-items:center;background-color:#f8fafc;border:1px dashed #e2e8f0;border-radius:8px;display:flex;flex-direction:column;justify-content:center;min-height:300px}.empty-schedule-message{color:#718096;font-size:1.1rem;margin-top:1rem;text-align:center}.interactive-schedule-input{background-color:initial;border-radius:12px;margin-bottom:2rem;padding:0;width:100%}.interactive-schedule-input h3{color:#333;margin-bottom:1.5rem;text-align:center}.course-input-form{grid-gap:1rem;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;direction:rtl;display:grid;gap:1rem;grid-template-columns:1fr;margin-bottom:1.5rem;padding:20px;text-align:right}.input-group{display:flex;flex-direction:column;margin-bottom:1rem}.input-group label{color:#4a5568;font-weight:600;margin-bottom:.5rem;text-align:right}.course-id-group{order:1}.section-group{order:2}.course-id-group input,.section-group input{border:2px solid #007baa;border-radius:8px;direction:rtl;font-size:.9rem;padding:.75rem;text-align:right}.section-display{text-align:left}.add-course-btn{align-items:center;background-color:#007baa;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;grid-column:1/-1;justify-content:center;margin-top:1rem;order:3;padding:.75rem;transition:all .2s ease}.add-course-btn:hover{background-color:#378ce7;transform:translateY(-2px)}.courses-list{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;direction:rtl;margin-top:1.5rem;padding:20px;text-align:right}.courses-list h4{color:#333;margin-bottom:1rem;text-align:center}.courses-table{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;width:100%}.course-header,.course-row{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:2fr 1fr 1fr;padding:.75rem;text-align:right}.course-header{background-color:#f8fafc;color:#4a5568;font-weight:600}.course-header>div:first-child{text-align:right}.course-header>div:nth-child(2){text-align:left}.course-row{border-top:1px solid #e2e8f0}.course-row>div:first-child{text-align:right}.course-row>div:nth-child(2){text-align:left}.course-row:nth-child(2n){background-color:#f8fafc}.actions{gap:.5rem}.actions,.edit-btn,.remove-btn{display:flex;justify-content:center}.edit-btn,.remove-btn{align-items:center;border:none;border-radius:4px;cursor:pointer;height:32px;transition:all .2s ease;width:32px}.edit-btn{background-color:#3182ce;color:#fff}.remove-btn{background-color:#e53e3e;color:#fff}.edit-btn:hover,.remove-btn:hover{transform:translateY(-2px)}.submit-schedule-btn{background-color:#007baa;border:none;border-radius:8px;box-shadow:0 4px 6px #2fd34d33;color:#fff;cursor:pointer;display:block;font-size:1.1rem;font-weight:600;margin:1.5rem auto 0;padding:.75rem 1.5rem;transition:all .2s ease}.submit-schedule-btn:hover{background-color:#378ce7;box-shadow:0 6px 8px #007baa;transform:translateY(-2px)}.autocomplete{position:relative}.suggestions{background-color:#fff;border-radius:0 0 8px 8px;box-shadow:0 4px 6px #0000001a;left:0;list-style-type:none;margin:0;max-height:200px;overflow-y:auto;padding:0;position:absolute;right:0;top:100%;z-index:10}.suggestions li{cursor:pointer;padding:.75rem;text-align:right}.suggestions li:hover{background-color:#f8fafc}@media (max-width:768px){.course-input-form{grid-template-columns:1fr}.add-course-btn,.course-id-group,.days-selection,.optional-group,.section-group{grid-column:span 1}.course-header,.course-row{font-size:.9rem;grid-template-columns:3fr 2fr 2fr}.compare-container{margin:1rem auto;padding:1rem;width:95%}}.section-input{background-color:#f0f7ff!important;border-color:#3182ce!important;color:#2c3e50;font-size:1.1rem!important;font-weight:700}.section-help{color:#718096;display:block;font-size:.8rem;margin-top:.25rem}.section-display{background-color:#ebf8ff;border:1px solid #bee3f8;border-radius:4px;color:#2b6cb0;display:inline-block;font-size:1.1rem;font-weight:700;padding:3px 8px}span.required{color:#e53e3e;font-size:.8rem;font-weight:400;margin-right:4px}.debug-info button{background-color:#2fd34d;border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-weight:600;margin:20px auto;padding:10px 20px;transition:all .2s ease}.debug-info button:hover{background-color:#27b842;transform:translateY(-2px)}.debug-display{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #0003;display:none;left:10%;max-height:80%;overflow-y:auto;position:fixed;top:10%;width:80%;z-index:1000}.debug-display table{border-collapse:collapse;margin:15px 0;width:100%}.debug-display table td,.debug-display table th{border:1px solid #ddd;padding:8px;text-align:left}.debug-display table th{background-color:#f1f1f1;position:sticky;top:0}.debug-display button{background-color:#f44336;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-bottom:10px;padding:5px 10px}.schedule-source{background-color:#f8fafc;border-radius:6px;border-right:4px solid #3182ce;color:#718096;font-size:.85rem;font-style:italic;margin-top:1rem;padding:8px 12px;text-align:center}.change-item.add .schedule-source{border-color:#38a169}.change-item.remove .schedule-source{border-color:#e53e3e}.debug-saved-schedule{background-color:#fff8e1;border:1px solid #ffecb3;border-radius:8px;direction:ltr;margin-bottom:20px;max-height:300px;overflow-y:auto;padding:15px;position:relative}.debug-saved-schedule h3{color:#f57c00;direction:rtl;margin-top:0;text-align:center}.debug-saved-schedule button{background:#f57c00;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:3px 8px;position:absolute;right:10px;top:10px}.debug-saved-schedule button:hover{background:#ef6c00}.debug-content{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:10px}.debug-course{background:#fff;border:1px solid #e0e0e0;border-radius:4px;flex:0 0 auto;padding:8px 12px}.debug-course strong{color:#2196f3;margin-right:5px}.error{background-color:#ffebee;border-radius:8px;color:#c62828;font-weight:700;margin:20px 0;padding:15px}.error,.loading{text-align:center}.loading{color:#3f51b5;font-size:18px;padding:30px}.section-number{background-color:#f8f8f8;border:2px solid #ccc;border-radius:5px;color:#333;font-size:1.2em;font-weight:700;padding:2px 8px}.change-item.add .section-number{background-color:#e7f7ed;border-color:#4caf50;color:#2e7d32}.change-item.change .section-number.from,.change-item.remove .section-number{background-color:#ffebee;border-color:#f44336;color:#c62828}.change-item.change .section-number.to{animation:pulse-green 2s infinite;background-color:#e7f7ed;border-color:#4caf50;color:#2e7d32}.comparePage .schedule-page{display:flex;flex-direction:column;min-height:100vh}.content-container{flex-grow:1}.main-content{direction:rtl;flex-grow:1;padding:20px}.compare-page{margin:0 auto;max-width:1200px;padding:20px}.compare-page h1{color:#4a6572;direction:rtl;margin-bottom:30px;text-align:center}.compare-page h2{border-bottom:2px solid #f9aa33;color:#344955;margin-bottom:15px;padding-bottom:8px}.preferred-schedule-container{background-color:#fff}.preferred-schedule-container,.schedule-comparison{border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:20px}.schedule-comparison{background-color:#fffbf0}.section-info-container{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.section-info-item{background-color:#fff;border:1px solid #e0e0e0;border-radius:5px;font-size:.95rem;padding:8px 15px}.section-info-item strong{color:#344955}.interactive-schedule-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:20px}.section-badge{background-color:#ffffff4d;border-radius:4px;color:#fff;display:inline-block;font-size:.8em;margin-right:5px;padding:2px 6px}.popup-overlay{background-color:#000000b3;z-index:1000}.popup-content{border-radius:8px;max-height:90vh;max-width:450px;overflow-y:auto;padding:20px}.popup-content h3{border-bottom:1px solid #eee;color:#344955;padding-bottom:10px}.popup-content p{margin:12px 0}.popup-content strong{color:#344955}.popup-close-btn{background-color:#f9aa33;border:none;border-radius:4px;color:#fff;cursor:pointer;display:block;font-weight:700;margin-right:auto;margin-top:15px;padding:8px 15px;transition:background-color .2s}.popup-close-btn:hover{background-color:#e09726}.error-container,.loading-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:40px}.error-container{color:#d32f2f}.return-btn{background-color:#f9aa33;font-size:1rem;font-weight:700}.schedule-table-grid th{background-color:#344955;color:#fff;font-weight:700;padding:10px;text-align:center}.schedule-table-grid td{border:1px solid #e0e0e0;height:60px;padding:10px;text-align:center;vertical-align:top}.schedule-table-grid .course-name{font-size:.9rem;font-weight:700;margin-bottom:5px}.schedule-table-grid .course-time{font-size:.8rem;opacity:.8}@media (max-width:768px){.compare-page{margin-top:70px;padding:30px}.section-info-container{flex-direction:column}.schedule-table-grid{font-size:.8rem}.schedule-table-grid td{height:50px;padding:5px}}.changes-container h2,.changes-container h3,.changes-container h4,.changes-container p,.schedule-source{text-align:right}.changes-section h3{border-right:4px solid #2fd34d;font-weight:700;padding-right:.8rem;text-align:right}.section-number{direction:ltr;display:inline-block;margin-left:0;margin-right:8px}.course-details p span{order:0}.quick-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;gap:1rem;justify-content:center;margin:0 0 2rem;padding:1.5rem}.summary-item{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;font-size:1.1rem;font-weight:600;gap:.75rem;padding:.75rem 1.25rem;transition:transform .2s ease}.summary-item:hover{transform:translateY(-2px)}.summary-item .circle{height:14px;width:14px}.summary-item.remove .circle{background-color:#e53e3e;box-shadow:0 0 0 2px #e53e3e33}.summary-item.change .circle{background-color:#3182ce;box-shadow:0 0 0 2px #3182ce33}.summary-item.add .circle{background-color:#38a169;box-shadow:0 0 0 2px #38a16933}.summary-item .course-code{color:#2d3748;direction:rtl;font-family:inherit}@media (max-width:768px){.quick-summary{gap:.75rem;padding:1rem}.summary-item{font-size:1rem;padding:.5rem 1rem}}.save-steps-btn{align-items:center;background-color:#2fd34d;border:none;border-radius:8px;box-shadow:0 4px 6px #2fd34d33;color:#fff;cursor:pointer;display:block;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;margin:2rem auto;padding:.75rem 1.5rem;transition:all .2s ease;width:fit-content}.save-steps-btn:hover{background-color:#27b842;box-shadow:0 6px 8px #2fd34d4d;transform:translateY(-2px)}.save-steps-btn:disabled{background-color:#a0aec0;box-shadow:none;cursor:not-allowed;transform:none}.course-info,.interactive-input,.schedule-cell{direction:rtl;text-align:right}.compare-page,.comparePage .main-content{direction:rtl}.compare-page button,.compare-page h1,.compare-page h2,.compare-page h3,.compare-page input,.compare-page label,.compare-page p{direction:rtl;text-align:right}.comparePage .schedule-table{border-collapse:collapse;direction:rtl;margin-top:1rem;width:100%}.comparePage .schedule-cell{border:1px solid #ddd;padding:8px;text-align:right}.comparePage .course-info{direction:rtl;margin-bottom:.5rem;text-align:right}.comparePage .interactive-input{direction:rtl;margin-bottom:2rem;text-align:right;width:100%}.comparePage .course-name{direction:rtl;font-weight:700;margin-bottom:.25rem;text-align:right}.comparePage .course-time{direction:rtl;font-size:.85rem;text-align:right}.comparePage .changes-container{background-color:#fff;border:4px solid #007baa;border-radius:12px;box-shadow:0 4px 12px #0003;direction:rtl;margin:3rem auto;max-width:800px;padding:2rem;position:relative;text-align:right;width:100%;z-index:5}.comparePage .changes-summary{background-color:#f8fafc;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-around}.comparePage .changes-section,.comparePage .changes-summary{border:1px solid #e2e8f0;border-radius:8px;direction:rtl;margin-bottom:2rem;padding:1.5rem;text-align:right}.comparePage .changes-section{animation:slideIn .5s ease-in-out;background-color:#f8f9fa;overflow:hidden;position:relative}.comparePage .changes-section h3{border-right:4px solid #007baa;color:#2d3748;font-size:1.3rem;font-weight:700;margin-bottom:1.5rem;margin-right:0;padding-right:.8rem;text-align:right}.comparePage .change-item{background:#fff;border-radius:8px;box-shadow:0 2px 5px #0000001a;direction:rtl;margin-bottom:1rem;padding:1.5rem;text-align:right;transition:all .3s ease}.comparePage .course-details{background:#f7fafc;border-radius:6px;direction:rtl;padding:1rem;text-align:right}.comparePage .course-input-form{grid-gap:1rem;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;direction:rtl;display:grid;gap:1rem;grid-template-columns:1fr;margin-bottom:1.5rem;padding:20px;text-align:right}.comparePage .input-group label{color:#4a5568;font-weight:600;margin-bottom:.5rem;text-align:right}.comparePage .course-id-group input,.comparePage .section-group input{border:2px solid #007baa;border-radius:8px;direction:rtl;font-size:.9rem;padding:.75rem;text-align:right}.comparePage .course-header,.comparePage .course-row{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:2fr 1fr 1fr;padding:.75rem;text-align:right}.comparePage .course-header>div:first-child{text-align:right}.comparePage .course-header>div:nth-child(2){text-align:left}.comparePage .course-row>div:first-child{text-align:right}.comparePage .course-row>div:nth-child(2){text-align:left}.comparePage .section-display{background-color:#ebf8ff;border:1px solid #bee3f8;border-radius:4px;color:#2b6cb0;display:inline-block;font-size:1.1rem;font-weight:700;padding:3px 8px;text-align:left}.comparePage .courses-list{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;direction:rtl;margin-top:1.5rem;padding:20px;text-align:right}.comparePage .suggestions li{cursor:pointer;padding:.75rem;text-align:right}.comparePage .debug-saved-schedule h3{color:#f57c00;direction:rtl;margin-top:0;text-align:center}.comparePage .schedule-table-grid{background-color:#fff;border-collapse:collapse;direction:rtl;width:100%}.comparePage .changes-container h2,.comparePage .changes-container h3,.comparePage .changes-container h4,.comparePage .changes-container p,.comparePage .schedule-source{text-align:right}.comparePage .summary-item .course-code{color:#2d3748;direction:rtl;font-family:inherit}.comparePage .compare-page,.comparePage .schedule-page{direction:rtl}.comparePage .compare-page button,.comparePage .compare-page h1,.comparePage .compare-page h2,.comparePage .compare-page h3,.comparePage .compare-page input,.comparePage .compare-page label,.comparePage .compare-page p{direction:rtl;text-align:right}.pdf-upload-section{background-color:#ebf8ff;border:2px dashed #3182ce;border-radius:10px;margin-bottom:20px;padding:15px;text-align:center}.pdf-upload-label{color:#2c5282;display:block;font-size:16px;font-weight:700;margin-bottom:10px}.info-text{align-items:center;flex-wrap:wrap;gap:5px}.info-text,.upload-container{display:flex;justify-content:center}.upload-container{margin-top:10px}.pdf-upload-input{height:0;opacity:0;position:absolute;width:0}.upload-button{background-color:#3182ce;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-block;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.upload-button:hover{background-color:#2b6cb0;box-shadow:0 4px 6px #3182ce33;transform:translateY(-2px)}.separator{align-items:center;display:flex;margin:20px 0;text-align:center}.separator:after,.separator:before{border-bottom:1px solid #cbd5e0;content:"";flex:1 1}.separator span{background-color:#fff;color:#4a5568;font-weight:600;padding:0 10px}.manual-entry-title{color:#4a5568;font-size:16px;font-weight:600;margin-bottom:20px;margin-top:0;text-align:center}.help-button{background-color:#3182ce;border:none;border-radius:12px;color:#fff;cursor:pointer;display:inline-block;font-size:12px;font-weight:500;margin-right:6px;padding:2px 8px;transition:all .2s ease}.help-button:hover{background-color:#2b6cb0;transform:scale(1.05)}.status-message{animation:fadeIn .3s ease-in;border-radius:6px;direction:rtl;font-weight:600;margin-top:15px;padding:12px 15px;text-align:center}.status-message.success{background-color:#f0fff4;border:1px solid #c6f6d5;color:#2f855a}.status-message.error{background-color:#fff5f5;border:1px solid #fed7d7;color:#c53030}.status-message.info{background-color:#ebf8ff;border:1px solid #bee3f8;color:#2c5282}.upload-button.loading{background-color:#4299e1;overflow:hidden;position:relative}.upload-button.loading:after{animation:loading 1.5s infinite;background:linear-gradient(90deg,#fff0,#ffffff4d 50%,#fff0);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes loading{0%{left:-100%}to{left:100%}}.section-change-header{align-items:center;display:flex;gap:20px;justify-content:center;margin:15px 0}.from-section-number,.to-section-number{align-items:center;display:flex;flex-direction:column;gap:5px}.section-label{color:#4a5568;font-size:14px}.section-badge{border-radius:12px;font-size:18px;font-weight:700;min-width:100px;padding:8px 15px;text-align:center}.section-badge.section-old{background-color:#fed7d7;border:1px solid #fc8181;color:#c53030}.section-badge.section-new{animation:pulse-green 2s infinite;background-color:#c6f6d5;border:1px solid #68d391;color:#2f855a}.arrow-icon{color:#4299e1;font-size:24px;margin-top:20px;transform:scaleX(-1)}.section-change-details{display:flex;gap:20px;margin-top:15px}.from-section,.to-section{border-radius:8px;flex:1 1;padding:15px}.from-section{background-color:#fff5f5;border:1px solid #fed7d7}.to-section{background-color:#f0fff4;border:1px solid #c6f6d5}.section-change-details h4{font-size:16px;font-weight:600;margin-bottom:10px;margin-top:0;text-align:center}.change-item.change{border-right:6px solid #4299e1}.change-item.change h3{color:#2b6cb0}.changes-container .change-item.change{order:1}.changes-container .change-item.add{order:2}.changes-container .change-item.remove{order:3}@media (max-width:768px){.section-change-details{flex-direction:column}.section-change-header{flex-wrap:wrap}}.saved-steps-page{background-color:#f7f9fc;display:flex;flex-direction:column;font-family:Tajawal,sans-serif;min-height:100vh}.saved-steps-page-main-content{direction:rtl;flex:1 1;margin-right:80px;padding:20px;transition:margin-right .3s ease}.saved-steps-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:1000px}.saved-step-details h1{color:#2c3e50;font-weight:700;margin-bottom:5px;text-align:center}.save-date{color:#7f8c8d;font-size:14px;margin-bottom:20px;text-align:center}.error-container,.loading-container,.no-changes{color:#6c757d;padding:30px;text-align:center}.return-btn{border-radius:4px;padding:8px 16px;transition:background-color .2s}.share-options{background-color:#f8f9fa;border-radius:8px;flex-wrap:wrap;gap:10px;margin:15px 0;padding:15px}.share-btn,.share-options{align-items:center;display:flex}.share-btn{background-color:#3182ce;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:Tajawal,sans-serif;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s ease}.share-btn:hover{background-color:#29639b}.share-url{background-color:#fff;border:1px solid #ddd;border-radius:4px;color:#555;flex:1 1;font-size:14px;overflow:hidden;padding:8px 12px;text-overflow:ellipsis;white-space:nowrap}.quick-summary{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.summary-item{align-items:center;border-radius:20px;display:flex;font-size:14px;gap:5px;padding:4px 10px}.summary-item .circle{border-radius:50%;display:inline-block;height:10px;width:10px}.summary-item.remove{background-color:#ffebee;color:#e74c3c}.summary-item.remove .circle{background-color:#e74c3c}.summary-item.change{background-color:#e3f2fd;color:#3498db}.summary-item.change .circle{background-color:#3498db}.summary-item.add{background-color:#e8f5e9;color:#2ecc71}.summary-item.add .circle{background-color:#2ecc71}.changes-summary{align-items:center;background-color:#f8f9fa;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:15px;padding:10px 15px}.changes-count{color:#555;font-weight:500}.changes-count span{color:#2c3e50;font-weight:700}.toggle-all-btn{align-items:center;background-color:#f1f5f9;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 2px 5px #0000000d;color:#374151;cursor:pointer;display:flex;font-family:Tajawal,sans-serif;font-size:14px;gap:6px;justify-content:center;padding:8px 14px;transition:all .2s ease}.toggle-all-btn:hover{background-color:#e2e8f0;background-color:#f1f1f1;border-color:#cbd5e1;color:#1e293b;transform:translateY(-1px)}.changes-list{display:flex;flex-direction:column;gap:12px}.change-item{border-radius:8px;box-shadow:0 2px 6px #0000001a;overflow:hidden;transition:all .3s ease}.change-item.remove{border-right:4px solid #e74c3c}.change-item.change{border-right:4px solid #3498db}.change-item.add{border-right:4px solid #2ecc71}.change-header{background-color:#fff;cursor:pointer;justify-content:space-between;padding:12px 15px;-webkit-user-select:none;user-select:none}.change-header,.change-title{align-items:center;display:flex}.change-title{gap:10px}.course-id{color:#333;font-weight:600}.change-type{border-radius:4px;font-size:12px;font-weight:500;padding:3px 8px}.change-type.remove{background-color:#ffebee;color:#e74c3c}.change-type.change{background-color:#e3f2fd;color:#3498db}.change-type.add{background-color:#e8f5e9;color:#2ecc71}.expand-icon{color:#95a5a6;transition:transform .3s ease}.change-item.expanded .expand-icon{transform:rotate(180deg)}.change-details{max-height:0;overflow:hidden;padding:0;transition:max-height .3s ease,padding .3s ease}.change-item.expanded .change-details{border-top:1px solid #f1f1f1;max-height:500px;padding:15px}.course-details h3{color:#2c3e50;font-size:16px;margin-bottom:12px;margin-top:0}.course-details p{color:#555;margin:8px 0}.course-details strong{background-color:#f7f9fc;border:1px solid #e3e8ec;border-radius:4px;color:#333;font-size:16px;padding:2px 8px}.from-section,.to-section{margin:10px 0}.to-section strong{animation:pulse-green 2s infinite}@keyframes pulse-green{0%{box-shadow:0 0 0 0 #2ecc7166}70%{box-shadow:0 0 0 5px #2ecc7100}to{box-shadow:0 0 0 0 #2ecc7100}}.back-button-container{display:flex;justify-content:center;margin-top:30px}.delete-btn{align-items:center;background-color:#e53e3e;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-family:Tajawal,sans-serif;font-weight:600;gap:8px;margin-right:10px;padding:12px 20px;transition:all .2s ease}.delete-btn:hover{background-color:#c53030;box-shadow:0 4px 6px #e53e3e33;transform:translateY(-2px)}.action-buttons{flex-wrap:wrap;gap:10px;margin:1rem 0}.action-buttons,.modal-overlay{display:flex;justify-content:center}.modal-overlay{align-items:center;background-color:#0009;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background-color:#fff;border-radius:8px;box-shadow:0 5px 15px #0003;direction:rtl;max-width:450px;padding:25px 30px;text-align:center;width:90%}.modal-content h3{color:#333;margin-bottom:25px;margin-top:0}.modal-content .form-group{margin-bottom:15px;text-align:right}.modal-content label{color:#444;display:block;font-weight:500;margin-bottom:5px}.modal-content input[type=text],.modal-content select{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-family:Tajawal,sans-serif;font-size:1rem;margin-bottom:5px;padding:10px 12px;width:100%}.modal-error{color:#e53e3e;font-size:.9rem;margin-bottom:15px;margin-top:-10px;text-align:right}.modal-actions{display:flex;gap:15px;justify-content:center;margin-top:25px}.modal-confirm-btn{background-color:#3182ce;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:background-color .2s}.modal-confirm-btn:hover{background-color:#2b6cb0}.modal-close-btn{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:background-color .2s}.modal-close-btn:hover{background-color:#5a6268}body.dark-mode .modal-content{background-color:#2d3748;color:#e2e8f0}body.dark-mode .modal-content h3{color:#fff}body.dark-mode .modal-content label{color:#cbd5e0}body.dark-mode .modal-content input[type=text],body.dark-mode .modal-content select{background-color:#1a202c;border-color:#4a5568;color:#e2e8f0}body.dark-mode .modal-error{color:#f56565}body.dark-mode .modal-confirm-btn{background-color:#4299e1}body.dark-mode .modal-confirm-btn:hover{background-color:#3182ce}body.dark-mode .modal-close-btn{background-color:#4a5568}body.dark-mode .modal-close-btn:hover{background-color:#718096}.notification-banner{align-items:stretch;border:1px solid #0000;border-radius:6px;box-sizing:border-box;display:flex;font-weight:500;margin:0 auto 20px;max-width:1000px;overflow:hidden;padding:0}.notification-icon-container{align-items:center;background-color:#0000001a;display:flex;justify-content:center;padding:12px 15px}.notification-icon{color:#fff;font-size:1.4rem}.notification-message{flex-grow:1}.notification-close-btn,.notification-message{align-items:center;display:flex;padding:12px 15px}.notification-close-btn{align-self:stretch;background-color:#0000001a;border:none;color:inherit;cursor:pointer;font-size:1rem;justify-content:center;line-height:1;opacity:.7;transition:opacity .2s ease,background-color .2s ease}.notification-close-btn:hover{background-color:#00000026;opacity:1}.notification-success{background-color:#ecfdf5;border-color:#a7f3d0;color:#065f46}.notification-success .notification-icon-container{background-color:#10b981}.notification-success .notification-close-btn{background-color:#d1fae5;color:#065f46}.notification-success .notification-close-btn:hover{background-color:#a7f3d0}.notification-error{background-color:#fef2f2;border-color:#fecaca;color:#991b1b}.notification-error .notification-icon-container{background-color:#ef4444}.notification-error .notification-close-btn{background-color:#fee2e2;color:#991b1b}.notification-error .notification-close-btn:hover{background-color:#fecaca}.notification-info{background-color:#eff6ff;border-color:#bfdbfe;color:#1e40af}.notification-info .notification-icon-container{background-color:#3b82f6}.notification-info .notification-close-btn{background-color:#dbeafe;color:#1e40af}.notification-info .notification-close-btn:hover{background-color:#bfdbfe}.notification-warning{background-color:#fffbeb;border-color:#fde68a;color:#92400e}.notification-warning .notification-icon-container{background-color:#f59e0b}.notification-warning .notification-close-btn{background-color:#fef3c7;color:#92400e}.notification-warning .notification-close-btn:hover{background-color:#fde68a}body.dark-mode .notification-banner{border-width:1px}body.dark-mode .notification-success{background-color:#062519;border-color:#054029;color:#a7f3d0}body.dark-mode .notification-success .notification-icon-container{background-color:#10b981}body.dark-mode .notification-success .notification-close-btn{background-color:#043220;color:#a7f3d0}body.dark-mode .notification-success .notification-close-btn:hover{background-color:#054029}body.dark-mode .notification-error{background-color:#300a0a;border-color:#5e1111;color:#fecaca}body.dark-mode .notification-error .notification-icon-container{background-color:#ef4444}body.dark-mode .notification-error .notification-close-btn{background-color:#450a0a;color:#fecaca}body.dark-mode .notification-error .notification-close-btn:hover{background-color:#5e1111}body.dark-mode .notification-info{background-color:#0e1e3a;border-color:#17356e;color:#bfdbfe}body.dark-mode .notification-info .notification-icon-container{background-color:#3b82f6}body.dark-mode .notification-info .notification-close-btn{background-color:#112856;color:#bfdbfe}body.dark-mode .notification-info .notification-close-btn:hover{background-color:#17356e}body.dark-mode .notification-warning{background-color:#312103;border-color:#583808;color:#fde68a}body.dark-mode .notification-warning .notification-icon-container{background-color:#f59e0b}body.dark-mode .notification-warning .notification-close-btn{background-color:#493005;color:#fde68a}body.dark-mode .notification-warning .notification-close-btn:hover{background-color:#583808}.saved-steps-list-page{background-color:#f0f2f5;display:flex;flex-direction:column;font-family:Tajawal,sans-serif;min-height:100vh}.saved-steps-list-main-content{direction:rtl;flex:1 1;margin-right:80px;padding:20px;transition:margin-right .3s ease}.saved-steps-container{margin:0 auto;max-width:1200px;padding:20px}.page-title{color:#2c3e50;font-size:28px;margin-bottom:30px}.error-container,.loading-container,.no-steps{background-color:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000d;color:#6c757d;padding:30px;text-align:center}.return-btn{background-color:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:Tajawal,sans-serif;font-weight:500;margin-top:15px;padding:10px 20px;transition:all .2s ease}.return-btn:hover{background-color:#2980b9;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.project-cards-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-card{background:#fff;border:1px solid #0000000d;border-radius:12px;box-shadow:0 4px 20px #0000000d;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:all .3s ease}.project-card:hover{box-shadow:0 12px 24px #0000001a;transform:translateY(-5px)}.card-header{align-items:center;background-color:#fcfdff;border-bottom:1px solid #f1f1f1;display:flex;justify-content:space-between;padding:20px}.card-header h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0}.status-badge{align-items:center;border-radius:20px;box-shadow:0 2px 4px #0000000d;display:inline-flex;font-size:12px;font-weight:500;justify-content:center;padding:4px 12px}.status-badge.completed{background-color:#e8f5e9;color:#2e7d32}.status-badge.in-progress{background-color:#fff8e1;color:#f57c00}.card-metadata{background-color:#fcfdff;border-bottom:1px solid #f5f5f5;color:#7f8c8d;display:flex;font-size:14px;justify-content:space-between;padding:16px 20px}.metadata-item{align-items:center;display:flex;gap:8px}.metadata-item svg{color:#95a5a6}.card-details{background-color:#fff;flex:1 1;padding:20px}.changes-breakdown{align-items:center;display:flex;gap:20px;justify-content:space-around}.change-count{align-items:center;display:flex;flex-direction:column;gap:8px;padding:10px 0}.count-label{color:#7f8c8d;font-size:14px;font-weight:500}.count-value{align-items:center;border-radius:50%;box-shadow:0 4px 6px #0000000d;display:flex;font-size:20px;font-weight:700;height:48px;justify-content:center;transition:all .2s ease;width:48px}.count-value:hover{transform:scale(1.05)}.count-value.remove{background-color:#ffebee;color:#e74c3c}.count-value.change{background-color:#e3f2fd;color:#3498db}.count-value.add{background-color:#e8f5e9;color:#2ecc71}.card-actions{margin-top:15px}.card-actions,.card-button{display:flex;gap:10px;justify-content:center}.card-button{align-items:center;background:#0000;border:none;color:#3498db;cursor:pointer;flex:1 1;font-family:Tajawal,sans-serif;font-size:15px;font-weight:500;padding:14px 16px;transition:all .2s ease}.card-button:hover{background-color:#f8f9fa;color:#2980b9}.card-button.view{color:#3498db}.card-button.view:hover{background-color:#3498db1a}.card-button.share{color:#27ae60}.card-button.share:hover{background-color:#27ae601a}.card-button.delete{align-items:center;background-color:#e53e3e;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-weight:700;gap:8px;margin-right:8px;padding:8px 12px;transition:all .2s ease}.card-button.delete:hover{background-color:#c53030;transform:translateY(-2px)}@media (max-width:768px){.saved-steps-list-main-content{margin-right:0;padding:10px}.saved-steps-container{margin-top:100px;padding:10px}.project-cards-grid{gap:16px;grid-template-columns:1fr}.card-actions{flex-direction:column;gap:8px}.card-button{width:100%}}.course-planner-card{align-items:center;background-color:#f8f9fa;border-radius:6px;box-shadow:0 1px 3px #0000001a;color:#333;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;min-height:85px;padding:8px;position:relative;text-align:center;transition:all .2s ease}.course-planner-card:hover{box-shadow:0 3px 6px #00000026;transform:translateY(-2px)}.course-planner-card-completed{background-color:#d1e7dd;border:1px solid #a3cfbb}.course-planner-card-completed .course-planner-code{color:#0f5132}.course-planner-card-in-progress{background-color:#fff3cd;border:1px solid #ffeeba}.course-planner-card-in-progress .course-planner-code{color:#664d03}.course-planner-card-not-started{background-color:#f8d7da;border:1px solid #f5c2c7}.course-planner-card-not-started .course-planner-code{color:#842029}.course-planner-status-icon-container{position:absolute;right:5px;top:5px}.course-planner-status-icon{height:14px;opacity:.8;width:14px}.course-planner-card-completed .course-planner-status-icon{fill:#0f5132}.course-planner-card-in-progress .course-planner-status-icon{fill:#664d03}.course-planner-card-not-started .course-planner-status-icon{fill:#842029}.course-planner-details-container{display:flex;flex-direction:column;flex-grow:1;justify-content:center;padding:2px 0;width:100%}.course-planner-code{color:#555;font-size:.9rem;font-weight:700;line-height:1.2;margin-bottom:3px;word-break:break-word}.course-planner-name{color:#666;font-size:.7rem;line-height:1.2;margin-bottom:4px;word-break:break-word}.course-planner-footer{align-items:center;color:#777;display:flex;font-size:.65rem;justify-content:center;margin-top:4px;width:100%}.course-planner-credits{font-weight:500}.prerequisite-indicator{display:none}.prerequisites-tooltip{background-color:#333;border:1px solid #555;border-radius:6px;bottom:100%;box-shadow:0 3px 8px #0000004d;color:#eee;font-size:.85rem;margin-bottom:8px;padding:10px;position:absolute;right:0;text-align:right;width:220px;z-index:100}.tooltip-title{color:#fff;font-weight:700;margin-bottom:4px}.tooltip-content{line-height:1.4}.tooltip-arrow{background-color:#333;border-bottom:1px solid #555;border-right:1px solid #555;bottom:-5px;height:10px;position:absolute;right:12px;transform:rotate(45deg);width:10px}@media (max-width:768px){.course-planner-code{font-size:.85rem}.course-planner-name{font-size:.65rem}.course-planner-footer{font-size:.6rem}.prerequisites-tooltip{width:180px}}.status-legend{background-color:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:20px;padding:12px}.legend-label{color:#495057;font-size:.9rem;font-weight:500;margin-right:8px}.legend-item,.status-indicator{align-items:center;display:flex}.status-indicator{border-radius:3px;height:16px;justify-content:center;margin-left:4px;width:16px}.status-name{color:#495057;font-size:.85rem}.legend-icon{color:#fff;height:12px;width:12px}.status-completed{background-color:#198754}.status-in-progress{background-color:#ffc107}.status-in-progress .legend-icon{color:#333}.status-not-started{background-color:#dc3545}@media (max-width:640px){.status-legend{gap:8px;padding:10px}.legend-label{margin-bottom:8px;text-align:center;width:100%}.status-name{font-size:.8rem}.status-indicator{height:14px;width:14px}.legend-icon{height:10px;width:10px}}.course-planner-container{background-color:#e9ecef;direction:rtl;margin:0 auto;max-width:1400px;padding:1.5rem;text-align:right;width:90%}.course-planner-title{color:#343a40;font-size:1.8rem;font-weight:700;margin-bottom:1.5rem;text-align:center}.course-planner-loading{animation:spin 1.5s linear infinite;border:5px solid #0d6efd;border-bottom-color:#0000;border-radius:50%;height:48px;margin:5rem auto;width:48px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.sample-data-notice{background-color:#fff3cd;border:1px solid #ffeeba;border-radius:6px;color:#856404;font-size:.9rem}.sample-data-notice,.total-credits{margin-bottom:1.5rem;padding:.75rem;text-align:center}.total-credits{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;box-shadow:0 1px 2px #0000000d;color:#495057;font-weight:600}.levels-container{display:flex;flex-direction:column;gap:1.5rem}.level-section{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden;transition:background-color .3s ease}.elective-group-section{margin-bottom:1.5rem}.level-section.group-status-completed{background-color:#d1e7dd;border-color:#a3cfbb}.level-section.group-status-in-progress{background-color:#fff3cd;border-color:#ffeeba}.level-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.level-title{color:#fff;font-size:1.2rem}.credit-badge{background-color:#1a4057;border-radius:8px;color:#7dd3fc;font-size:.85rem;font-weight:500;padding:4px 12px}.level-sidebar{align-items:center;background-color:#0d6efd;border-left:1px solid #dee2e6;color:#fff;display:flex;flex-direction:column;justify-content:center;min-width:110px;padding:1rem;position:relative;width:110px;z-index:1}.level-number{color:#fff;font-size:1.2rem;font-weight:700;margin-bottom:.75rem}.level-credits{color:#e9ecef;font-size:.85rem;font-weight:600}.level-content{display:flex;flex-direction:row}.courses-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));padding:1rem;width:100%}@media (max-width:1200px){.courses-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:992px){.courses-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.courses-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.level-sidebar{min-width:90px;padding:.75rem;width:90px}.level-number{font-size:1.1rem}.elective-header{align-items:flex-start;border-radius:0;flex-direction:column;gap:.5rem}.elective-limit-badge{margin:.2rem 0}}@media (max-width:480px){.courses-grid{gap:8px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));padding:.8rem;width:95%}.course-planner-container{padding:.8rem}.level-content{flex-direction:column}.level-sidebar{border-bottom:1px solid #dee2e6;border-left:none;flex-direction:row;justify-content:space-between;padding:.75rem 1rem;width:95%}.level-number{margin-bottom:0}.save-plan-button{font-size:.9rem;padding:.6rem 1rem;width:100%}}@media (max-width:640px){.course-planner-title{font-size:1.5rem}.level-title{font-size:1.1rem}.level-header{align-items:flex-start;flex-direction:column;gap:.5rem}.total-credits span{font-size:1rem}}.elective-group{margin-top:2rem}.elective-title{border-bottom:2px solid #0d6efd;color:#495057;font-size:1.3rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem;padding-right:1rem}.elective-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #dee2e6;border-top-left-radius:8px;border-top-right-radius:8px;display:flex;justify-content:space-between;margin-bottom:1rem;padding:.5rem 1rem .75rem}.elective-limit-badge{background-color:#e9ecef;border-radius:10px;color:#6c757d;font-size:1rem;font-weight:500;margin:0 1rem;padding:.2rem .6rem}.elective-credits-badge{background-color:#e9ecef;border-radius:10px;color:#495057;font-size:.85rem;font-weight:600;padding:.3rem .8rem}.save-button-container{margin-top:2rem;text-align:center}.save-plan-button{background-color:#0d6efd;border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s ease,opacity .2s ease}.save-plan-button:hover{background-color:#0b5ed7}.save-plan-button:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.7}.course-planner-notification{animation:coursePlannerSlideDown .5s ease-out forwards;border-radius:8px;box-shadow:0 4px 15px #00000040;cursor:pointer;left:50%;max-width:90%;min-width:320px;overflow:hidden;position:fixed;top:1.5rem;transform:translateX(-50%);transition:transform .2s ease,box-shadow .2s ease;z-index:1000}.course-planner-notification:hover{box-shadow:0 6px 20px #00000059;transform:translateX(-50%) scale(1.02)}@keyframes coursePlannerSlideDown{0%{opacity:0;transform:translate(-50%,-100%)}to{opacity:1;transform:translate(-50%)}}.course-planner-notification.error{background-color:#ffebee;border-left:5px solid #f44336;color:#b71c1c}.course-planner-notification.success{background-color:#e8f5e9;border-left:5px solid #4caf50;color:#1b5e20}.course-planner-notification.warning{background-color:#fff8e1;border-left:5px solid #ff9800;color:#e65100}.course-planner-notification.info{background-color:#e3f2fd;border-left:5px solid #2196f3;color:#0d47a1}.course-planner-notification-content{align-items:center;display:flex;padding:1.2rem}.course-planner-notification-icon{align-items:center;display:flex;font-size:1.5rem;justify-content:center;margin-left:0;margin-right:1rem;order:3}.course-planner-notification-icon span{height:28px;line-height:28px;text-align:center;width:28px}.course-planner-notification p{color:#000;direction:rtl;flex:1 1;font-size:.95rem;line-height:1.5;margin:0 .5rem;order:2;text-align:right}.course-planner-notification-close{align-items:center;background:#0000001a;border:none;border-radius:50%;color:inherit;cursor:pointer;display:flex;font-size:1.4rem;font-weight:700;height:28px;justify-content:center;margin-left:.5rem;margin-right:0;opacity:.7;order:1;padding:0;transition:all .2s ease;width:28px}.course-planner-notification-close:hover{background:#0003;opacity:1;transform:scale(1.1)}.bottom-actions-container{align-items:center;border-top:1px solid #e2e8f0;display:flex;margin-top:1.5rem;min-height:60px;padding:1.5rem 0;position:relative;width:100%}.sticky-save-button{left:20px;opacity:.9;position:fixed;top:80px;transition:all .3s ease;z-index:100}.sticky-save-button:hover{opacity:1;transform:scale(1.05)}.sticky-save-button.has-changes{animation:bounceIn .5s ease-out}.save-plan-button-sticky{align-items:center;background-color:#0d6efd;border:none;border-radius:25px;box-shadow:0 4px 12px #0d6efd4d;color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:600;gap:5px;justify-content:center;min-width:140px;padding:12px 20px;text-align:center;transition:all .3s ease}.save-plan-button-sticky:hover{background-color:#0b5ed7;box-shadow:0 6px 16px #0d6efd66;transform:translateY(-2px)}.save-plan-button-sticky:disabled{background-color:#6c757d;box-shadow:0 2px 6px #6c757d33;cursor:not-allowed}.save-plan-button-sticky.pulse{animation:pulse 1.5s infinite;background-color:#28a745}.unsaved-indicator{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:15px;box-shadow:0 2px 6px #0000001a;color:#856404;font-size:12px;margin-top:8px;padding:6px 12px;text-align:center}@keyframes pulse{0%{box-shadow:0 4px 12px #28a7454d;transform:scale(1)}50%{box-shadow:0 6px 16px #28a74580;transform:scale(1.05)}to{box-shadow:0 4px 12px #28a7454d;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:.9;transform:scale(1)}}@media (max-width:768px){.sticky-save-button{left:15px;top:70px}.save-plan-button-sticky{font-size:13px;min-width:120px;padding:10px 16px}.unsaved-indicator{font-size:11px;padding:4px 8px}}@media (max-width:480px){.sticky-save-button{left:10px;top:65px}.save-plan-button-sticky{font-size:12px;min-width:100px;padding:8px 12px}}.unsaved-changes-banner{animation:slideIn .5s ease-out;background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:2px solid #ffbf47;border-radius:12px;box-shadow:0 4px 12px #ffbf4733;margin:10px 0 20px;padding:15px}.unsaved-changes-content{align-items:center;direction:rtl;display:flex;gap:15px;justify-content:space-between}.unsaved-icon{flex-shrink:0;font-size:20px}.unsaved-text{color:#856404;flex:1 1;font-size:16px;font-weight:600}.quick-save-btn{background-color:#28a745;border:none;border-radius:20px;color:#fff;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:600;padding:8px 16px;transition:all .3s ease}.quick-save-btn:hover{background-color:#218838;box-shadow:0 4px 8px #28a7454d;transform:translateY(-1px)}.quick-save-btn:disabled{background-color:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.unsaved-changes-content{flex-direction:column;gap:10px;text-align:center}.unsaved-text{font-size:14px}.quick-save-btn{padding:10px;width:100%}}.next-assistant-button,.save-plan-button{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;min-width:120px;padding:.8rem 1.5rem;position:absolute;text-align:center;top:50%;transform:translateY(-50%);transition:all .2s ease}.save-plan-button{left:50%;transform:translate(-50%,-50%)}.next-assistant-button{background-color:#2fd34d;box-shadow:0 4px 6px #2fd34d33;color:#fff;left:0}.next-assistant-button:hover{background-color:#28a745;box-shadow:0 6px 8px #2fd34d4d;transform:translateY(-50%)}.next-assistant-button:disabled,.save-plan-button:disabled{background-color:#ccc;box-shadow:none;color:#666;cursor:not-allowed;opacity:.7}@media (max-width:640px){.bottom-actions-container{align-items:stretch;flex-direction:column;gap:1rem;min-height:auto;padding:1rem 0;position:static}.next-assistant-button,.save-plan-button{position:static;transform:none;width:100%}.save-plan-button{order:1}.next-assistant-button{order:2}}.course-planner-page{background-color:#ced3dd;display:flex;flex-direction:column;min-height:100vh}.content-container{display:flex;flex:1 1;position:relative}.course-planner-page-main-content{box-sizing:border-box;direction:rtl;flex:1 1;overflow-y:auto;padding:20px}.planner-wrapper{background-color:initial;margin:20px auto 0;max-width:1400px;padding:0}.planner-area-title{color:#000;display:inline-block;font-size:40px;font-weight:700;margin-bottom:20px;padding-bottom:10px;position:relative;text-align:center}.title-icon{color:#0d6efd;font-size:.9em;margin-left:10px}.planner-area-title:after{background:linear-gradient(90deg,#0d6efd,#2fd34d);border-radius:2px;bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:150px}@media (max-width:768px){.course-planner-page-main-content{padding:15px}.planner-wrapper{margin-top:15px}.planner-area-title{margin-top:100px}}@media (max-width:480px){.course-planner-page-main-content{padding:10px}.planner-wrapper{margin-top:10px}}.plan-selectors{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:25px}.plan-select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url(/static/media/CustomDropdownArrow.da5c28b5ee3dda73ad17.svg);background-position:left 15px center;background-repeat:no-repeat;background-size:10px 10px;border:1px solid #ced4da;border-radius:6px;cursor:pointer;direction:rtl;font-family:Tajawal,sans-serif;font-size:1rem;min-width:200px;padding:10px 15px 10px 40px;text-align:right;transition:border-color .2s ease,box-shadow .2s ease}.plan-select:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem #0d6efd40;outline:0}.plan-select:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.7}@media (max-width:768px){.plan-selectors{gap:10px;margin-bottom:20px}.plan-select{font-size:.9rem;min-width:180px}}@media (max-width:480px){.plan-selectors{align-items:stretch;flex-direction:column}.plan-select{min-width:0;min-width:auto;width:100%}}.chat-page{font-family:Tajawal,Cairo,sans-serif;height:100%;margin:0;padding:0}.cp-wrapper{align-items:center;background:linear-gradient(180deg,#fff 0,#f7f7f7 50%,#bae6fd);display:flex;flex-direction:column;inset:0;position:fixed}.cp-card{box-shadow:none!important;flex:1 1;max-width:600px;overflow:visible!important;padding-top:72px;position:relative;width:100%}.cp-card,.cp-header{background:#0000!important;display:flex;flex-direction:column}.cp-header{align-items:flex-end;border:none!important;color:#0f172a;gap:6px;padding:0;position:absolute;right:16px;top:16px;z-index:20}.cp-header .cp-header-top{align-items:center;display:flex;flex-direction:row-reverse;gap:8px;justify-content:flex-end}.cp-header button{background:none;border:none;color:inherit;cursor:pointer;font-size:1.2rem}.cp-header button svg{transform:scaleX(-1)}.cp-header h1{font-size:2rem;font-weight:500;margin:0}.cp-model-select{background:#0000!important;border:1px solid #0f172a;border-radius:.5rem;box-shadow:0 4px 40px #0000001a;color:#000!important;cursor:pointer;font-size:1rem;padding:6px 10px}.cp-messages{background:#0000!important;flex:1 1;margin-bottom:120px!important;overflow-y:auto;padding:1rem 16px!important}.cp-message{word-wrap:break-word;background:none!important;border:none!important;color:#0f172a;font-size:1rem;line-height:1.5;margin:.5rem 0;padding:0}.cp-message.cp-user{text-align:right}.cp-message.cp-assistant{text-align:left}.cp-input{align-items:center;background:#fff;border-radius:1.5rem;bottom:20px;box-shadow:0 4px 40px #0000004d;display:flex;gap:8px;margin:0 auto;max-width:600px;padding:8px 16px;position:sticky;width:100%;z-index:10}.cp-input textarea{background:#0000;border:none;caret-color:#000!important;color:#000!important;flex:1 1;font-size:1rem;line-height:1.4;outline:none;padding:12px 16px;resize:none}.cp-input textarea::placeholder{color:#666;opacity:.6}.cp-send{background:none;border:none;color:#1f3196;cursor:pointer;font-size:1rem;padding:8px}.cp-send:disabled{cursor:default;opacity:.5}.cp-messages::-webkit-scrollbar{width:6px}.cp-messages::-webkit-scrollbar-thumb{background:#0ea5e9;border-radius:6px}.cp-messages{scrollbar-color:#0ea5e9 #0000;scrollbar-width:thin}@media(max-width:768px){.cp-input{padding:0}}.shared-schedule-page{background-attachment:fixed;background-image:url(/static/media/pattern.9bd62c1e6c981012f126.svg);background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;flex-direction:column;min-height:100vh;transition:background .3s ease-in-out}.shared-main-content{box-sizing:border-box;flex:1 1;margin:0 auto;max-width:1200px;padding:80px 20px 20px;width:100%}.shared-main-content h1{color:#00b4d8;font-size:1.8rem;margin-bottom:30px;text-align:center}.shared-schedule-table-container{-webkit-overflow-scrolling:touch;background-color:#fff;background-color:var(--card-background-color,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:10px;box-shadow:0 1px 3px #00000014;color:#333;color:var(--text-color,#333);margin:0 auto 40px;max-width:1000px;overflow-x:auto;padding:20px}.shared-schedule-table-container h2{color:#007bff;color:var(--blue,#007bff);font-size:1.5rem;font-weight:700;margin-bottom:10px;text-align:center}.shared-credit-counter{color:#555;color:var(--text-color,#555);font-size:1.1rem;font-weight:500;margin-bottom:15px;text-align:center}.shared-credit-counter span{background-color:#e9ecef;background-color:var(--card-alt-background-color,#e9ecef);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:15px;padding:5px 15px}.error-message{color:red;font-weight:700;text-align:center}.popup-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1050}.popup-content{background-color:#fff;background-color:var(--popup-background-color,#fff);border-radius:15px;border-top:8px solid;border-color:#2fd34d;border-color:var(--popup-border-color,var(--primary-color,#2fd34d));box-shadow:0 10px 25px #00000026;color:#333;color:var(--popup-text-color,#333);direction:rtl;max-width:500px;padding:2rem;position:relative;text-align:right;width:90%}.popup-content h3{color:#333;color:var(--popup-header-color,var(--popup-text-color,#333));font-size:1.3rem;font-weight:600;margin-bottom:1.5rem;margin-top:0;text-align:center}.popup-content p{line-height:1.5;margin-bottom:.8rem}.btn-close{background-color:#2fd34d;border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:1rem;margin:1.5rem auto 0;padding:10px 15px;text-align:center;transition:all .3s ease;width:120px}.btn-close:hover{background-color:#27b840;transform:translateY(-2px)}.shared-schedule-page .schedule-table-grid{border-collapse:collapse;direction:rtl;min-width:600px;table-layout:fixed;width:100%}.shared-schedule-page .courses-without-time{background-color:#f9f9f9;background-color:var(--card-alt-background-color,#f9f9f9);border:1px solid #eee;border:1px solid var(--border-color,#eee);border-radius:8px;box-shadow:0 2px 8px #0000000d;box-sizing:border-box;color:#333;color:var(--text-color,#333);margin-top:2rem;padding:1rem 1.5rem;width:100%}.shared-schedule-page .courses-without-time h3{color:#333;color:var(--text-color,#333);margin-bottom:1rem}.shared-schedule-page .no-time-course-list{direction:rtl;list-style:none;margin:0;padding:0}.shared-schedule-page .no-time-course-item{align-items:center;background-color:#fff;background-color:var(--card-background-color,#fff);border-radius:6px;border-right:4px solid #2fd34d;border-right:4px solid var(--primary-color,#2fd34d);box-shadow:0 1px 4px #00000014;color:#333;color:var(--text-color,#333);display:flex;flex-direction:row;justify-content:space-between;margin-bottom:.5rem;padding:.7rem 1rem}.shared-schedule-page .schedule-table-grid td{cursor:pointer}@media (max-width:768px){.shared-main-content{padding:70px 15px 15px}.shared-main-content h1{font-size:1.5rem;margin-bottom:20px}.shared-schedule-table-container{border-radius:8px;margin:0 auto 20px;padding:15px}.shared-schedule-table-container h2{font-size:1.3rem;margin-bottom:8px}.shared-credit-counter{font-size:1rem;margin-bottom:12px}.shared-credit-counter span{font-size:.9rem;padding:4px 12px}.shared-schedule-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.shared-schedule-page .schedule-table-grid{font-size:.85rem;min-width:500px}.shared-schedule-page .schedule-table-grid td,.shared-schedule-page .schedule-table-grid th{padding:6px 4px}.shared-schedule-page .schedule-table-grid .course-name{font-size:.8rem;font-weight:700}.shared-schedule-page .schedule-table-grid .course-time{font-size:.7rem}.popup-content{margin:10px;max-width:90%;padding:1.5rem;width:95%}.popup-content h3{font-size:1.2rem}.popup-content p{font-size:.9rem;margin-bottom:.6rem}.btn-close{font-size:.9rem;padding:8px 12px;width:100px}.shared-schedule-page .courses-without-time{margin-top:1.5rem;padding:.8rem 1rem}.shared-schedule-page .courses-without-time h3{font-size:1.1rem;margin-bottom:.8rem}.shared-schedule-page .no-time-course-item{font-size:.9rem;margin-bottom:.4rem;padding:.5rem .8rem}}@media (max-width:480px){.shared-main-content{padding:60px 10px 10px}.shared-main-content h1{font-size:1.3rem;margin-bottom:15px}.shared-schedule-table-container{margin:0 auto 15px;padding:10px}.shared-schedule-table-container h2{font-size:1.1rem;margin-bottom:6px}.shared-credit-counter{font-size:.9rem;margin-bottom:10px}.shared-credit-counter span{font-size:.8rem;padding:3px 10px}.shared-schedule-page .schedule-table-grid{font-size:.8rem;min-width:450px}.shared-schedule-page .schedule-table-grid .course-name{font-size:.75rem}.shared-schedule-page .schedule-table-grid .course-time{font-size:.65rem}.shared-schedule-page .schedule-table-grid td,.shared-schedule-page .schedule-table-grid th{padding:4px 2px}.popup-content{max-width:95%;padding:1rem;width:98%}.popup-content h3{font-size:1.1rem}.popup-content p{font-size:.85rem;margin-bottom:.5rem}.btn-close{font-size:.8rem;padding:6px 10px;width:80px}.shared-schedule-page .courses-without-time{margin-top:1rem;padding:.6rem .8rem}.shared-schedule-page .courses-without-time h3{font-size:1rem;margin-bottom:.6rem}.shared-schedule-page .no-time-course-item{font-size:.85rem;margin-bottom:.3rem;padding:.4rem .6rem}}#root,.app{display:flex;flex-direction:column;min-height:100vh}.gpa-calculator-page{background-color:#f8f9fa;border-radius:8px;box-shadow:0 2px 10px #0000001a;box-sizing:border-box;direction:rtl;font-family:Tajawal,sans-serif;padding:1rem;width:900px}.gpa-calculator-page h1{color:#0d6efd;font-size:1.8rem;margin-bottom:1.5rem;text-align:center}.error-message,.loading-message,.no-plan-message{border-radius:6px;margin-bottom:1rem;padding:1rem;text-align:center}.loading-message{color:#6c757d}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.no-plan-message{background-color:#fff3cd;border:1px solid #ffeeba;color:#856404}.no-plan-message a{color:#0056b3;font-weight:700;text-decoration:none}.no-plan-message a:hover{text-decoration:underline}.gpa-display{background-color:#e9ecef;border-radius:6px;display:flex;justify-content:space-around;margin-bottom:2rem;padding:1rem}.gpa-value{text-align:center}.gpa-value h3{color:#495057;font-size:1rem;margin:0 0 .5rem}.gpa-value span{color:#0d6efd;font-size:1.5rem;font-weight:700}.courses-section{margin-bottom:2rem}.courses-section h2{color:#1fdb38}.courses-section h2,.courses-section2 h2{border-bottom:2px solid #dee2e6;font-size:1.3rem;margin-bottom:1rem;padding-bottom:.5rem}.courses-section2 h2{color:#343a40}.course-list{list-style:none;padding:0}.GPA-course-item{align-items:center;background-color:#fff;border:1px solid #dee2e6;border-radius:6px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:.5rem;padding:.8rem 1rem}body.dark-mode .GPA-course-item{background-color:#0d1117;border:1px solid #4d4d4d;color:#f5f5f5}.course-info{flex-grow:1;min-width:200px}.course-info span{display:block}.course-info .course-id-name{color:#495057;font-weight:600}.course-info .course-credits{color:#6c757d;font-size:.9rem}.grade-input{min-width:120px}.grade-input label{color:#495057;font-size:.9rem;margin-left:.5rem}.grade-input select{border:1px solid #ced4da;border-radius:4px;cursor:pointer;font-size:.9rem;padding:5px 8px}.save-grades-button{background-color:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:1rem;font-weight:600;margin:1rem auto 0;max-width:250px;padding:.75rem;transition:background-color .2s ease;width:100%}.save-grades-button:hover{background-color:#218838}.save-grades-button:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.7}@media (max-width:1024px){.gpa-calculator-page{margin:0 auto;max-width:900px;width:100%}}@media (max-width:768px){.gpa-calculator-page{margin:100px auto 0;max-width:900px;padding:.5rem;width:100%}}@media (max-width:600px){.gpa-calculator-page{padding:.5rem}.gpa-display{align-items:center;flex-direction:column;gap:1rem}.course-item{align-items:stretch;flex-direction:column}.grade-input{align-items:center;display:flex;justify-content:space-between;width:100%}.grade-input select{flex-grow:1;margin-right:.5rem}}@media (max-width:480px){.gpa-calculator-page{margin:100px auto 0;max-width:900px;padding:.5rem;width:100%}.target-gpa-controls{align-items:stretch;flex-direction:column}.calculate-target-button,.target-gpa-input{width:100%}.required-grade-display{font-size:.9rem;padding:.8rem}}.target-gpa-section{background-color:#e9ecef;border:1px solid #dee2e6;border-radius:8px;margin-bottom:2rem;margin-top:2rem;padding:1.5rem}.target-gpa-section h2{border-bottom:2px solid #ced4da;color:#343a40;font-size:1.3rem;margin-bottom:1.5rem;margin-top:0;padding-bottom:.5rem;text-align:center}.target-gpa-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:1.5rem}.target-gpa-controls label{color:#495057;font-size:.95rem;margin-left:.5rem}.target-gpa-input{border:1px solid #ced4da;border-radius:6px;font-size:1rem;padding:8px 12px;text-align:center;width:140px}.calculate-target-button{background-color:#0d6efd;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:8px 18px;transition:background-color .2s ease}.calculate-target-button:hover{background-color:#0b5ed7}.required-grade-display{background-color:#d1ecf1;border:1px solid #bee5eb;border-radius:6px;color:#0c5460;font-size:1rem;margin-top:2rem;padding:1rem;text-align:center}.foundation-year-section{background-color:#f0f0f0;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:2rem;margin-top:2rem;padding:1.5rem}.foundation-year-section h2{border-bottom:2px solid #ced4da;color:#343a40;font-size:1.3rem;margin-bottom:1.5rem;margin-top:0;padding-bottom:.5rem;text-align:center}.foundation-year-inputs{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-around;margin-bottom:1rem}body.dark-mode .foundation-year-inputs .input-group,body.dark-mode .foundation-year-section{background-color:#0d1117;color:#f5f5f5}body.dark-mode .foundation-year-inputs label,body.dark-mode .foundation-year-section h2{border:none;color:#f5f5f5}body.dark-mode .foundation-year-section{border:none}body.dark-mode .foundation-year-inputs input{background-color:#1a202c;border:1px solid #4d4d4d;color:#f5f5f5}.foundation-year-inputs .input-group{align-items:flex-start;display:flex;flex-direction:column;gap:.5rem;min-width:200px}.foundation-year-inputs label{color:#495057;font-size:.95rem;margin-bottom:.25rem}.foundation-year-inputs input{border:1px solid #ced4da;border-radius:6px;box-sizing:border-box;font-size:1rem;padding:8px 12px;text-align:center;width:100%}.save-success-message{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724;font-weight:500;margin-bottom:1rem;margin-top:1rem;padding:.75rem 1rem;text-align:center}.gpa-save-notification{align-items:center;background-color:#e6ffed;border:1px solid #b2f7c8;border-radius:8px;box-shadow:0 2px 8px #0000001a;cursor:pointer;direction:rtl;display:flex;justify-content:space-between;left:50%;margin-bottom:1rem;margin-top:1rem;max-width:90%;min-width:300px;padding:12px 16px;position:fixed;top:50px;transform:translateX(-50%);width:auto;z-index:1050}.gpa-notification-icon{font-size:1.5rem;margin:0 8px}.gpa-notification-icon.check{color:#28a745}.gpa-notification-icon.close{color:#6c757d;cursor:pointer}.gpa-notification-text-content{flex-grow:1;margin-left:10px;margin-right:10px;text-align:right}.gpa-notification-maintext{color:#155724;font-size:.95rem;font-weight:600;margin:0 0 4px}.gpa-notification-subtext{color:#5a6268;font-size:.8rem;margin:0}.gpa-error-notification{align-items:center;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;box-shadow:0 2px 8px #0000001a;cursor:pointer;direction:rtl;display:flex;justify-content:space-between;left:50%;max-width:90%;min-width:300px;padding:12px 16px;position:fixed;top:50px;transform:translateX(-50%);width:auto;z-index:1055}.gpa-error-notification .gpa-notification-icon.error{color:#721c24;font-size:1.5rem;margin:0 8px}.gpa-error-notification .gpa-notification-text-content{flex-grow:1;margin-left:10px;margin-right:10px;text-align:right}.gpa-error-notification .gpa-notification-maintext{color:#721c24;font-size:.95rem;font-weight:600;margin:0 0 4px}.gpa-error-notification .gpa-notification-subtext{color:#721c24;font-size:.9rem;margin:0}.gpa-error-notification .gpa-notification-icon.close{color:#721c24;cursor:pointer;font-size:1.5rem;margin:0 8px}@media (max-width:600px){.foundation-year-inputs{align-items:stretch;flex-direction:column}.foundation-year-inputs .input-group{min-width:0;min-width:auto;width:100%}.foundation-year-section h2{font-size:1.2rem}}.level-group{background-color:#fff;border:1px solid #e9ecef;border-radius:8px;margin-bottom:1.5rem;overflow:hidden}body.dark-mode .level-group{background-color:#161b22;border-color:#30363d}.level-title{background-color:#f8f9fa;border-bottom:1px solid #e9ecef;color:#495057;font-size:1.1rem;font-weight:600;margin:0;padding:.75rem 1rem}body.dark-mode .level-title{background-color:#21262d;border-bottom-color:#30363d;color:#f0f6fc}.level-group .course-list{margin:0;padding:.5rem}.level-group .GPA-course-item{border:1px solid #e9ecef;margin-bottom:.5rem}.level-group .GPA-course-item:last-child{margin-bottom:0}body.dark-mode .level-group .GPA-course-item{border-color:#30363d}.level-group .level-title:contains("الاختيارية"),.level-group:has(.level-title:contains("الاختيارية")) .level-title{background-color:#fff3cd;color:#856404}body.dark-mode .level-group .level-title:contains("الاختيارية"){background-color:#2d2a1f;color:#f5c842}@media (max-width:768px){.level-group{margin-bottom:1rem}.level-title{font-size:1rem;padding:.5rem .75rem}.level-group .course-list{padding:.25rem}}.professor-card-link{color:inherit;display:block;text-decoration:none;width:100%}.professor-card{background-color:#fff;background-color:var(--card-bg-light,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color-lightmode,#dee2e6);border-radius:.75rem;box-shadow:0 2px 4px #0000000d;box-sizing:border-box;color:#212529;color:var(--text-primary-light,#212529);display:flex;flex-direction:column;height:240px;justify-content:space-between;min-height:180px;padding:1.25rem;text-align:right;transition:box-shadow .2s ease-in-out,transform .2s ease-in-out;width:100%}.professor-card:hover{box-shadow:0 5px 10px #00000014;transform:translateY(-2px)}.professor-info{margin-bottom:1rem}.professor-details{display:flex;flex-direction:column;margin-top:auto}.professor-name{font-size:1.25rem;line-height:1.75rem;margin-bottom:.5rem}.professor-department{color:#6c757d;color:var(--text-secondary-light,#6c757d);font-size:.875rem;line-height:1.25rem;margin-bottom:.25rem}.professor-faculty{color:#adb5bd;color:var(--text-muted-light,#adb5bd)}.professor-faculty,.rating-badge{font-size:.875rem;line-height:1.25rem;margin-bottom:.75rem}.rating-badge{border-radius:9999px;display:inline-block;flex-shrink:0;font-weight:700;padding:.25rem .75rem}.rating-green{background-color:#198754;background-color:var(--rating-green-bg,#198754);color:#fff}.rating-yellow{background-color:#ffc107;background-color:var(--rating-yellow-bg,#ffc107);color:#212529}.rating-orange{background-color:#fd7e14;background-color:var(--rating-orange-bg,#fd7e14);color:#fff}.rating-red{background-color:#dc3545;background-color:var(--rating-red-bg,#dc3545);color:#fff}.rating-na{background-color:#6c757d;background-color:var(--rating-gray-bg,#6c757d);color:#fff}.courses-section{color:#495057;color:var(--text-secondary-light,#495057);flex-grow:1;font-size:.875rem;line-height:1.25rem;margin-bottom:.5rem;margin-top:.75rem}.courses-section strong{color:#343a40;color:var(--text-primary-light,#343a40);margin-left:4px}.tags-section{display:flex;flex-shrink:0;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.tag-badge{background-color:#cfe2ff;background-color:var(--tag-bg-light,#cfe2ff);border-radius:9999px;color:#052c65;color:var(--tag-text-light,#052c65);font-size:.75rem;line-height:1rem;padding:.25rem .5rem}.professor-card.missing-id{align-items:center;background-color:#f8d7da;background-color:var(--error-bg-light,#f8d7da);color:#58151c;color:var(--error-text-light,#58151c);font-weight:700;justify-content:center}.rating-views{justify-content:space-between;margin-bottom:.75rem;width:100%}.rating-views,.view-count{align-items:center;display:flex}.view-count{color:#6c757d;color:var(--text-secondary-light,#6c757d);font-size:.875rem;gap:4px}#root{background-image:url(/static/media/pattern.9bd62c1e6c981012f126.svg)}.professor-list-main-page-content{align-items:center;display:flex;flex-direction:column;flex-grow:1;min-height:100vh;transition:padding-right .4s ease}.professor-list-page{align-items:center;display:flex;flex-direction:column;font-family:Tajawal,sans-serif;width:100%}.professor-list-container{background-color:#fff;background-color:var(--list-container-bg-light,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color-lightmode,#dee2e6);border-radius:10px;box-shadow:0 2px 5px #0000000d;box-sizing:border-box;color:#212529;color:var(--text-primary-light,#212529);flex-grow:1;margin:30px auto;max-width:1200px;padding:40px 30px;width:100%}.page-title{border-bottom:none;color:#343a40;color:var(--text-primary-light,#343a40);font-size:1.5rem;font-weight:700;line-height:2rem;margin-bottom:1.5rem;padding-bottom:0;text-align:center}.search-input-container{display:flex;justify-content:center;margin-bottom:1rem}.search-input{background-color:#f8f9fa;background-color:var(--search-bg-light,#f8f9fa);border:1px solid #ced4da;border:1px solid var(--border-color-lightmode,#ced4da);border-radius:9999px;color:#495057;color:var(--text-primary-light,#495057);font-size:1rem;max-width:32rem;padding:.75rem 1.5rem;text-align:center;transition:border-color .2s,box-shadow .2s;width:100%}.search-input:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem #0d6efd40;outline:0}.filter-dropdowns-container{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:25px}.filter-dropdownDepartment,.filter-dropdownFaculty{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url(/static/media/CustomDropdownArrow.da5c28b5ee3dda73ad17.svg);background-position:left 15px center;background-repeat:no-repeat;background-size:10px 10px;border:1px solid #ced4da;border-radius:6px;cursor:pointer;direction:rtl;font-size:1rem;min-width:200px;padding:10px 15px 10px 40px;text-align:right;transition:border-color .2s ease,box-shadow .2s ease}.filter-dropdown:disabled{background-color:#e9ecef;background-color:var(--input-disabled-bg-light,#e9ecef);cursor:not-allowed;opacity:.7}.filter-dropdown:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem #0d6efd40;outline:0}.professors-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(1,minmax(0,1fr))}.professors-list-load-more-container{display:flex;justify-content:center;padding:20px}.professors-list-load-more-button{background-color:#007bff;background-color:var(--accent-color-lightmode,#007bff);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1.2rem;padding:10px 20px;transition:background-color .2s}.professors-list-load-more-button:hover{background-color:#0056b3;background-color:var(--accent-color-lightmode-dark,#0056b3)}@media (min-width:640px){.professors-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.professors-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.no-results-message{font-size:1.1em;grid-column:1/-1;padding:50px 20px}.loader,.no-results-message{color:#6c757d;color:var(--text-secondary-light,#6c757d);text-align:center}.loader{padding:30px}@media (max-width:768px){.main-page-content{padding-left:0;padding-right:0;width:100%}.professor-list-container{border-radius:15px;margin:100px auto 15px;max-width:90%;padding:20px 15px;width:90%}.filter-dropdownDepartment{order:2}.filter-dropdownFaculty{order:1}.page-title{font-size:1.4em;margin-bottom:20px;margin-top:10px}.professors-grid{gap:15px;grid-template-columns:1fr}.filter-dropdowns-container{align-items:center;flex-direction:column;gap:10px;margin-bottom:20px}.filter-dropdown{max-width:320px;width:100%}.search-input{padding:10px 15px}}@media (max-width:480px){.professor-list-container{margin-top:100px;padding:15px 10px;width:95%}.page-title{font-size:1.3em}}.review-card{background-color:#f8f9fa;background-color:var(--card-bg-light,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color-lightmode,#dee2e6);border-radius:8px;font-family:Tajawal,sans-serif;padding:20px;text-align:right}.review-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:15px;min-height:25px}.review-grade-container{text-align:right}.review-semester-container{flex-grow:1;order:1;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.review-grade-and-course-outer-container{text-align:right}.review-grade-course-flex-group{align-items:center;display:inline-flex;gap:5px}.review-grade,.review-semester{border:1px solid #0000;border-radius:4px;display:inline-block;font-weight:500;line-height:1.3}.review-grade,.review-semester,.review-studied-course{background-color:#e9ecef;background-color:var(--background-tertiary-light,#e9ecef);color:#6c757d;color:var(--text-secondary-light,#6c757d);padding:3px 9px}.review-studied-course{border-radius:4px;font-size:1.1rem;margin-right:4px}.review-grade[data-grade="-"]{background-color:#e9ecef;background-color:var(--background-tertiary-light,#e9ecef);border-color:#dee2e6;border-color:var(--border-color-lightmode-light,#dee2e6);color:#6c757d;color:var(--text-secondary-light,#6c757d)}.review-grade[data-grade="A+"],.review-grade[data-grade=A]{background-color:#d1e7dd;background-color:var(--grade-a-bg,#d1e7dd);border-color:#a3cfbb;border-color:var(--grade-a-border,#a3cfbb);color:#0f5132;color:var(--grade-a-text,#0f5132)}.review-grade[data-grade="B+"],.review-grade[data-grade=B]{background-color:#dff0d8;background-color:var(--grade-b-bg,#dff0d8);border-color:#c1e2b3;border-color:var(--grade-b-border,#c1e2b3);color:#3c763d;color:var(--grade-b-text,#3c763d)}.review-grade[data-grade="C+"],.review-grade[data-grade=C]{background-color:#fff3cd;background-color:var(--grade-c-bg,#fff3cd);border-color:#ffe69c;border-color:var(--grade-c-border,#ffe69c);color:#664d03;color:var(--grade-c-text,#664d03)}.review-grade[data-grade="D+"],.review-grade[data-grade=D]{background-color:#ffe8cc;background-color:var(--grade-d-bg,#ffe8cc);border-color:#ffd8a8;border-color:var(--grade-d-border,#ffd8a8);color:#854c00;color:var(--grade-d-text,#854c00)}.review-grade[data-grade=F]{background-color:#f8d7da;background-color:var(--grade-f-bg,#f8d7da);border-color:#f1aeae;border-color:var(--grade-f-border,#f1aeae);color:#58151c;color:var(--grade-f-text,#58151c)}.review-grade[data-grade="حذف المادة"]{background-color:#e9ecef;background-color:var(--grade-drop-bg,#e9ecef);border-color:#ced4da;border-color:var(--grade-drop-border,#ced4da);color:#495057;color:var(--grade-drop-text,#495057)}.review-comment{color:#212529;color:var(--text-primary-light,#212529);font-size:1em;line-height:1.7;margin-bottom:15px;margin-top:0;white-space:pre-wrap}.review-selected-tags{border-bottom:1px solid #e9ecef;border-bottom:1px solid var(--border-color-lightmode-light,#e9ecef);display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;margin-bottom:20px;padding-bottom:15px}.review-tag{border-radius:16px;cursor:default;font-size:.8em;font-weight:500;line-height:1.4;padding:4px 10px}.review-tag.positive{background-color:#22c55e;background-color:var(--tag-positive-bg-dark,#22c55e);color:#fff;color:var(--tag-positive-text-dark,#fff)}.review-tag.negative{background-color:#ef4444;background-color:var(--tag-negative-bg-dark,#ef4444);color:#fff;color:var(--tag-negative-text-dark,#fff)}.review-tag.neutral{background-color:#facc15;background-color:var(--tag-neutral-bg-dark,#facc15);color:#000;color:var(--tag-neutral-text-dark,#000)}.review-criteria-ratings{border-top:none;display:flex;flex-direction:row;gap:4px;margin-top:0;padding-top:0;width:100%}.review-criterion-item{align-items:center;background-color:#2d3748;background-color:var(--rating-neutral-track-bg,#2d3748);border-radius:0;display:flex;font-size:.85em;font-weight:500;justify-content:center;line-height:1.2;min-height:36px;overflow:hidden;position:relative;width:24%}.review-criterion-pill-fill{border-radius:0;height:100%;position:absolute;right:0;top:0;transition:width .3s ease-in-out}.review-criterion-pill-text{color:#fff;color:var(--rating-text-default,#fff);padding:6px 8px;position:relative;text-align:center;white-space:nowrap;z-index:1}.review-criterion-item:not([data-rating-value]) .review-criterion-pill-fill,.review-criterion-item[data-rating-value=""] .review-criterion-pill-fill,.review-criterion-item[data-rating-value="0"] .review-criterion-pill-fill{background-color:#718096;background-color:var(--rating-gray-fill,#718096)}.review-criterion-item:not([data-rating-value]) .review-criterion-pill-text,.review-criterion-item[data-rating-value=""] .review-criterion-pill-text,.review-criterion-item[data-rating-value="0"] .review-criterion-pill-text{color:#e2e8f0;color:var(--rating-gray-text,#e2e8f0)}.review-criterion-item[data-rating-value]:is([data-rating-value="1"],[data-rating-value="2"],[data-rating-value="3"],[data-rating-value="4"],[data-rating-value="5"],[data-rating-value="6"],[data-rating-value="7"],[data-rating-value="8"],[data-rating-value="9"],[data-rating-value="10"],[data-rating-value="11"],[data-rating-value="12"],[data-rating-value="13"],[data-rating-value="14"],[data-rating-value="15"],[data-rating-value="16"],[data-rating-value="17"],[data-rating-value="18"],[data-rating-value="19"],[data-rating-value^="2"],[data-rating-value^="3"]) .review-criterion-pill-fill{background-color:#ff3434;background-color:var(--rating-red-fill,#ff3434)}.review-criterion-item[data-rating-value]:is([data-rating-value="1"],[data-rating-value="2"],[data-rating-value="3"],[data-rating-value="4"],[data-rating-value="5"],[data-rating-value="6"],[data-rating-value="7"],[data-rating-value="8"],[data-rating-value="9"],[data-rating-value="10"],[data-rating-value="11"],[data-rating-value="12"],[data-rating-value="13"],[data-rating-value="14"],[data-rating-value="15"],[data-rating-value="16"],[data-rating-value="17"],[data-rating-value="18"],[data-rating-value="19"],[data-rating-value^="2"],[data-rating-value^="3"]) .review-criterion-pill-text{color:#fff;color:var(--rating-red-text,#fff)}.review-criterion-item[data-rating-value]:is([data-rating-value^="4"],[data-rating-value^="5"],[data-rating-value^="6"]) .review-criterion-pill-fill{background-color:#fbbf24;background-color:var(--rating-yellow-fill,#fbbf24)}.review-criterion-item[data-rating-value]:is([data-rating-value^="4"],[data-rating-value^="5"],[data-rating-value^="6"]) .review-criterion-pill-text{color:#fff;color:var(--rating-yellow-text,#fff)}.review-criterion-item[data-rating-value]:is([data-rating-value="100"],[data-rating-value^="7"],[data-rating-value^="8"],[data-rating-value^="9"]) .review-criterion-pill-fill{background-color:#34d399;background-color:var(--rating-green-fill,#34d399)}.review-criterion-item[data-rating-value]:is([data-rating-value="100"],[data-rating-value^="7"],[data-rating-value^="8"],[data-rating-value^="9"]) .review-criterion-pill-text{color:#fff;color:var(--rating-green-text,#fff)}@media (max-width:600px){.review-criteria-ratings{flex-direction:column;gap:8px}.review-criterion-item{width:100%}.review-criterion-pill-text{font-size:.9em}}.review-card-footer{align-items:center;border-top:1px solid #e9ecef;border-top:1px solid var(--border-color-lightmode-light,#e9ecef);display:flex;justify-content:space-between;margin-top:20px;padding-top:15px}.review-actions{display:flex;gap:25px}.reaction-container{align-items:center;display:flex;gap:8px}.action-button{align-items:center;background:none;border:none;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;font-size:1.1em;height:30px;justify-content:center;padding:5px;transition:color .2s,transform .1s;width:30px}.action-button:disabled{cursor:not-allowed;opacity:.5}.reaction-count{font-size:1em;font-weight:500;min-width:20px;text-align:center}.like-button{color:#6c757d}.like-button.active,.like-button:hover:not(:disabled){background-color:#4ade801a;color:#4ade80}.like-count{color:#4ade80}.dislike-button{color:#6c757d}.dislike-button.active,.dislike-button:hover:not(:disabled){background-color:#ef44441a;color:#ef4444}.dislike-count{color:#ef4444}.flag-button{color:#6c757d;font-size:.9em}.flag-button:hover:not(:disabled){background-color:#ffc1071a;color:#ff1307}.dislike-count[data-count="0"],.like-count[data-count="0"]{color:#6c757d}.action-button svg{height:16px;width:16px}.review-modal-overlay{align-items:center;animation:fadeIn .3s forwards;background-color:#000000b3;bottom:0;direction:rtl;display:flex;font-family:Tajawal,sans-serif;justify-content:center;left:0;opacity:0;position:fixed;right:0;top:0;transition:opacity .3s ease-in-out;z-index:1000}.review-modal-container{animation:scaleIn .4s cubic-bezier(.26,1.29,.7,1.18) forwards;background-color:#fff;background-color:var(--background-primary-light,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color-lightmode,#dee2e6);border-radius:12px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;font-family:Tajawal,sans-serif;max-height:90vh;max-width:800px;overflow:hidden;transform:scale(.95);width:90%}@keyframes scaleIn{0%{transform:scale(.95)}to{transform:scale(1)}}.review-modal-header{padding:15px 25px}.review-modal-title{color:#212529;color:var(--text-primary-light,#212529);font-size:1.4em;font-weight:700;margin:0}.review-modal-close-btn{background:none;border:none;color:#6c757d;color:var(--text-secondary-light,#6c757d);cursor:pointer;font-size:2em;line-height:1;padding:0 5px;transition:color .2s}.review-modal-close-btn:hover{color:#212529;color:var(--text-primary-light,#212529)}.review-modal-steps{background-color:#dcdee1;background-color:var(--background-tertiary,#dcdee1);border-bottom:1px solid #444;border-bottom:1px solid var(--border-color,#444);color:#000;color:var(--text-secondary,#000);font-size:1em;padding:15px 25px;text-align:center}.progress-indicator-bar{background-color:#555;background-color:var(--border-color,#555);border-radius:100px;height:13px;margin-top:12px;overflow:hidden;position:relative}.progress-indicator-fill{animation:progress-load 1s cubic-bezier(.34,1.56,.64,1) forwards;background-color:#0084d8;border-radius:100px;box-shadow:inset 0 1px 3px #0003;height:100%;position:relative;width:0}.progress-indicator-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:0;position:absolute;top:0;width:100%}@keyframes progress-load{0%{width:0}}.review-modal-content{color:#eee;color:var(--text-primary,#eee);min-height:200px;padding:25px}.review-modal-content .comment-textarea{border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:1em;margin-top:10px;min-height:120px;padding:12px 15px;resize:vertical;width:100%}.review-modal-content .comment-textarea::placeholder{color:#888;color:var(--text-secondary,#888)}.review-modal-footer{background-color:#f8f9fa;background-color:var(--background-secondary,#f8f9fa);border-top:1px solid var(--border-color,#dee2e6);flex-wrap:wrap;gap:10px;justify-content:space-between}.footer-error-message{color:#f87171;color:var(--error-color,#f87171);flex-grow:1;font-size:.9em;text-align:right}.footer-buttons{display:flex;gap:10px;justify-content:flex-start;margin-right:auto}.footer-buttons .button-next,.footer-buttons .button-prev{border:none;border-radius:8px;cursor:pointer;font-family:Tajawal,sans-serif;font-size:16px;font-weight:700;padding:10px 30px;transition:background-color .2s}.footer-buttons .button-next{background-color:#22c55e;color:#fff}.footer-buttons .button-next:hover{background-color:#16a34a}.footer-buttons .button-prev{background-color:#4b5563;color:#fff}.footer-buttons .button-prev:hover{background-color:#6b7280}.footer-buttons button:disabled{background-color:#475569;color:#9ca3af;cursor:not-allowed;opacity:.6}.review-modal-content>div{animation:fadeSlideUp .5s ease-out;border:1px dashed #555;border:1px dashed var(--border-color-light,#555);border-radius:4px;color:#aaa;color:var(--text-secondary,#aaa);padding:20px;text-align:center}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.review-step-container{padding:20px 0}.step-instruction{color:var(--text-muted);font-size:.9rem;line-height:1.5;margin-bottom:15px}.step-comment{padding:10px 0}.step-comment .step-label{color:#343a40;color:var(--text-primary-light,#343a40);display:block;font-size:1.15rem;font-weight:700;margin-bottom:5px;margin-top:25px}.step-comment .step-label:first-of-type{margin-top:0}.step-comment .step-label .optional-text{color:#6c757d;color:var(--text-secondary-light,#6c757d);font-size:.9rem;font-weight:400;margin-right:8px}.step-comment .step-instruction{color:#6c757d;color:var(--text-secondary-light,#6c757d);font-size:.9rem;line-height:1.5;margin-bottom:15px;margin-top:0}.comment-textarea,.step-input{box-sizing:border-box;font-size:1rem;margin-bottom:8px;padding:12px 15px;width:100%}select.step-input{appearance:menulist;-webkit-appearance:menulist;-moz-appearance:menulist;background-color:#fff;background-color:var(--input-bg,#fff);border:1px solid #ccc;border:1px solid var(--border-color,#ccc);border-radius:6px;color:#333;color:var(--text-primary,#333);font-family:inherit;font-size:1em;height:auto;padding:10px 15px;width:100%}select.step-input option{padding:8px}select.step-input option[value=""]{font-style:italic}.comment-textarea::placeholder,.step-input::placeholder,select.step-input option[value=""]{color:#888;color:var(--text-secondary,#888)}.comment-textarea:focus,.step-input:focus{border-color:#0c0c0c;border-color:var(--primary-color,#0c0c0c);outline:none}.comment-textarea{min-height:110px;resize:vertical}.char-counter{color:#999;color:var(--text-secondary,#999);font-size:.85rem;margin-bottom:25px;padding:0 5px;text-align:left}.grade-buttons-container{direction:ltr;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-start;margin-bottom:20px}.grade-button{background-color:#f8f9fa;background-color:var(--grade-button-bg-light,#f8f9fa);border:1px solid #ced4da;border:1px solid var(--grade-button-border-light,#ced4da);border-radius:6px;border-radius:var(--border-radius,6px);color:#495057;color:var(--grade-button-text-light,#495057);cursor:pointer;font-size:.95rem;font-weight:500;min-width:50px;padding:8px 18px;text-align:center;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.grade-button[data-grade="A+"]:not(.selected):hover,.grade-button[data-grade=A]:not(.selected):hover{background-color:#28a745;border-color:#218838;color:#fff}.grade-button[data-grade="B+"]:not(.selected):hover,.grade-button[data-grade=B]:not(.selected):hover{background-color:#ac0;border-color:#8cb000;color:#fff}.grade-button[data-grade="C+"]:not(.selected):hover,.grade-button[data-grade=C]:not(.selected):hover{background-color:#ffc107;border-color:#e0a800;color:#1f2937}.grade-button[data-grade="D+"]:not(.selected):hover,.grade-button[data-grade=D]:not(.selected):hover{background-color:#fd7e14;border-color:#e66a00;color:#fff}.grade-button[data-grade=F]:not(.selected):hover{background-color:#dc3545;border-color:#c82333;color:#fff}.grade-button[data-grade="حذف المادة"]:not(.selected):hover{background-color:#6c757d;border-color:#5a6268;color:#fff}.grade-button.selected{border-width:1px;color:#fff;font-weight:700}.grade-button.selected[data-grade="A+"],.grade-button.selected[data-grade="A+"]:hover,.grade-button.selected[data-grade=A],.grade-button.selected[data-grade=A]:hover{background-color:#28a745;border-color:#218838}.grade-button.selected[data-grade="B+"],.grade-button.selected[data-grade="B+"]:hover,.grade-button.selected[data-grade=B],.grade-button.selected[data-grade=B]:hover{background-color:#ac0;border-color:#8cb000}.grade-button.selected[data-grade="C+"],.grade-button.selected[data-grade="C+"]:hover,.grade-button.selected[data-grade=C],.grade-button.selected[data-grade=C]:hover{background-color:#ffc107;border-color:#e0a800;color:#1f2937}.grade-button.selected[data-grade="D+"],.grade-button.selected[data-grade="D+"]:hover,.grade-button.selected[data-grade=D],.grade-button.selected[data-grade=D]:hover{background-color:#fd7e14;border-color:#e66a00}.grade-button.selected[data-grade=F],.grade-button.selected[data-grade=F]:hover{background-color:#dc3545;border-color:#c82333}.grade-button.selected[data-grade="حذف المادة"],.grade-button.selected[data-grade="حذف المادة"]:hover{background-color:#6c757d;border-color:#5a6268;color:#fff}.rating-item{animation:fadeSlideRight .5s ease-out;animation-fill-mode:both}.rating-item:first-child{animation-delay:.1s}.rating-item:nth-child(2){animation-delay:.2s}.rating-item:nth-child(3){animation-delay:.3s}.rating-item:nth-child(4){animation-delay:.4s}@keyframes fadeSlideRight{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.tag-item{animation:tagPop .4s ease-out;animation-fill-mode:both}@keyframes tagPop{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.tag-item.selected{animation:tagSelected .3s forwards}@keyframes tagSelected{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.progress-bar-fill{animation:progressGrow 1.2s cubic-bezier(.34,1.56,.64,1) forwards,progressGlow 2s infinite alternate;background-image:linear-gradient(270deg,#16a34a,#22c55e);background-image:linear-gradient(to left,var(--progress-bar-fill,#16a34a),var(--progress-bar-fill-lighter,#22c55e));box-shadow:0 0 8px #16a34a66}@keyframes progressGrow{0%{width:0}60%{width:5%;width:calc(var(--fill-width, 0%) + 5%)}to{width:0;width:var(--fill-width,0)}}@keyframes progressGlow{0%{box-shadow:0 0 5px #16a34a66}to{box-shadow:0 0 12px #16a34ab3}}.unirate-profile-progress{background-color:#fff3!important;border-radius:5px!important;height:10px!important;margin:8px 0!important;overflow:hidden}.unirate-profile-progress .progress-bar-fill{animation:progressGrow 1.5s cubic-bezier(.34,1.56,.64,1) forwards,progressPulse 2s infinite alternate;background-image:linear-gradient(90deg,#16a34a,#22c55e);border-radius:5px;height:100%;width:0}@keyframes progressPulse{0%{background-image:linear-gradient(90deg,#16a34a,#22c55e);opacity:.9}to{background-image:linear-gradient(90deg,#22c55e,#4ade80);opacity:1}}.progress-bar-fill:after{background:linear-gradient(270deg,#fff0 0,#ffffff4d 50%,#fff0);content:"";height:100%;position:absolute;right:0;top:0;transform:translateX(100%);width:100%}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.segmented-rating-input-wrapper{direction:rtl;font-family:Tajawal,sans-serif;margin-bottom:20px}.segmented-rating-label{color:#343a40;color:var(--text-primary-light,#343a40);display:block;font-size:1em;font-weight:600;margin-bottom:10px;text-align:right}.score-blocks-container{align-items:center;direction:ltr;display:flex;flex-direction:row-reverse;gap:5px;height:35px;justify-content:space-between;width:100%}.score-block{align-items:center;background-color:#3a3a3a;background-color:var(--background-tertiary,#3a3a3a);border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;height:100%;justify-content:center;margin:0;padding:0;position:relative;transition:transform .15s ease-out,box-shadow .15s ease-out,background-color .15s ease-out}.score-block:hover{transform:translateY(-2px)}.score-block-value{color:#fff;font-size:.9em;font-weight:600;opacity:1}.score-block.color-high{background-color:#22c55e;background-color:var(--rating-high-color,#22c55e)}.score-block.color-medium{background-color:#eab308;background-color:var(--rating-medium-color,#eab308)}.score-block.color-low{background-color:#ef4444;background-color:var(--rating-low-color,#ef4444)}.score-block.color-default{background-color:#3a3a3a;background-color:var(--background-tertiary,#3a3a3a)}.score-block.selected{box-shadow:0 4px 10px rgba(1,199,243,.981);outline:2px solid #03a2f8;outline-offset:2px;transform:translateY(-1px);z-index:1}.score-block.selected .score-block-value{color:#fff;font-weight:700}.segmented-rating-input-wrapper{direction:ltr;margin-bottom:25px}.segmented-rating-bar{background-color:#3a3a3a;background-color:var(--background-tertiary,#3a3a3a);border:1px solid #555;border:1px solid var(--border-color,#555);border-radius:6px;display:flex;height:35px;overflow:hidden;width:100%}.segment{align-items:center;border:none;cursor:pointer;display:flex;flex:1 1;justify-content:center;margin:0;padding:0;position:relative;transition:background-color .2s ease-out,box-shadow .2s ease-out}.segment:first-child{border-left:none}.segment .segment-value{font-size:.8em;opacity:.7;transition:opacity .2s}.segment:focus .segment-value,.segment:hover .segment-value{opacity:1}.segment.active{box-shadow:inset 0 0 5px #ffffff1a}.segment.active .segment-value{font-weight:600;opacity:1}.segment.active.color-medium-high{background-color:#a3e635;background-color:var(--rating-medium-high-color,#a3e635)}.segment.active.color-medium{background-color:#facc15;background-color:var(--rating-medium-color,#facc15)}.segment.active.color-low-medium{background-color:#fb923c;background-color:var(--rating-low-medium-color,#fb923c)}.segment.active.color-low{background-color:#f87171;background-color:var(--rating-low-color,#f87171)}.segment:not(.active):hover{background-color:#555;background-color:var(--border-color,#555)}.segmented-rating-input{margin-bottom:20px}.rating-label{color:#343a40;color:var(--text-primary-light,#343a40);display:block;font-size:.9rem;font-weight:500;margin-bottom:8px}.rating-segments-container{background-color:#e9ecef;background-color:var(--background-secondary-light,#e9ecef);border:1px solid #ced4da;border:1px solid var(--border-color-lightmode,#ced4da);border-radius:6px;display:flex;flex-direction:row-reverse;overflow:hidden}.rating-segment{background-color:initial;border:1px solid #ced4da;border:1px solid var(--border-color-lightmode,#ced4da);color:#6c757d;color:var(--text-muted-light,#6c757d);cursor:pointer;flex:1 1;font-size:.85rem;font-weight:700;opacity:.7;padding:10px 5px;position:relative;text-align:center;transition:background-color .2s,box-shadow .2s,color .2s,opacity .2s}.rating-segment:first-child{border-left:none}.rating-segment.red-bg{background-color:#f8d7da;background-color:var(--rating-red-bg-light,#f8d7da);color:#721c24}.rating-segment.yellow-bg{background-color:#fff3cd;background-color:var(--rating-yellow-bg-light,#fff3cd);color:#664d03}.rating-segment.green-bg{background-color:#d1e7dd;background-color:var(--rating-green-bg-light,#d1e7dd);color:#0f5132}.rating-segment.selected{box-shadow:inset 0 0 0 3px #007bff;box-shadow:inset 0 0 0 3px var(--primary-blue,#007bff);font-weight:700;opacity:1;outline:none;z-index:2}.rating-segment:not(.selected):hover{background-color:#e9edef;background-color:var(--segment-hover-bg-light,#e9edef);border-color:#adb5bd;border-color:var(--border-color-hover-light,#adb5bd);box-shadow:none;color:#495057;color:var(--text-hover-light,#495057);opacity:.9;transform:none}.segmented-rating-label{color:#212529;color:var(--text-primary-light,#212529)}.segment{background-color:initial;border-left:1px solid #ced4da;border-left:1px solid var(--border-color-lightmode,#ced4da)}.segment.active.color-high{background-color:#b6d7c2;background-color:var(--rating-green-selected-light,#b6d7c2)}.segment .segment-value{color:#6c757d;color:var(--text-secondary-light,#6c757d)}.segment.active .segment-value{color:#212529;color:var(--text-primary-light,#212529)}.review-step-container{font-family:Tajawal,sans-serif}.step-instruction{border-bottom:1px solid #555;border-bottom:1px solid var(--border-color-light,#555);font-size:.95em;line-height:1.6;margin-bottom:25px;padding-bottom:15px;text-align:right}.step-tags{background-color:#111827;background-color:var(--step2-bg,#111827);border-radius:8px;font-family:Tajawal,sans-serif;padding:20px}.tag-section{align-items:flex-start;display:flex;gap:15px;margin-bottom:30px}.tag-section:last-child{margin-bottom:0}.tag-section-header{align-items:center;display:flex;flex-direction:row;flex-shrink:0;gap:8px;height:35px;justify-content:flex-end;width:100px}.tag-section-title{border-bottom:none;color:#eee;color:var(--text-primary,#eee);font-size:1em;font-weight:600;margin-bottom:0;order:2;padding-bottom:0;text-align:right}.tag-count{background-color:#3a3a3a;background-color:var(--background-tertiary,#3a3a3a);border-radius:12px;color:#ccc;color:var(--text-secondary,#ccc);font-size:.8em;font-weight:500;min-width:auto;order:1;padding:3px 8px;text-align:center;white-space:nowrap}.tags-container{direction:rtl;flex-grow:1;gap:10px 12px;justify-content:flex-start;padding-top:5px}.tag-chip{background-color:#4b5563;background-color:var(--background-tertiary,#4b5563);border:1px solid #0000;border-radius:20px;box-shadow:0 2px 4px #0000001a;color:#e5e7eb;color:var(--text-secondary,#e5e7eb);padding:7px 15px;transition:background-color .2s,color .2s,border-color .2s,transform .15s,box-shadow .15s;-webkit-user-select:none;user-select:none}.tag-chip .tag-icon{font-size:1.1em}.tag-chip:hover{box-shadow:0 4px 8px #0003;color:#fff;color:var(--text-primary,#fff);transform:translateY(-2px)}.tag-chip.positive-tag{background-color:#166534;background-color:var(--positive-tag-bg,#166534);color:#a3e635;color:var(--positive-tag-text,#a3e635)}.tag-chip.negative-tag{background-color:#991b1b;background-color:var(--negative-tag-bg,#991b1b);color:#fca5a5;color:var(--negative-tag-text,#fca5a5)}.tag-chip.neutral-tag{background-color:#92400e;background-color:var(--neutral-tag-bg,#92400e);color:#fcd34d;color:var(--neutral-tag-text,#fcd34d)}.tag-chip.selected{border:1px solid}.tag-chip.selected,.tag-chip.selected:hover{box-shadow:0 0 8px 0 currentColor;transform:scale(1.05)}.tag-chip.selected.positive-tag{background-color:#4ade80;background-color:var(--rating-high-color,#4ade80);color:#111;color:var(--background-primary,#111)}.tag-chip.selected.negative-tag{background-color:#ef4444;background-color:var(--rating-low-color,#ef4444);color:#fff}.tag-chip.selected.neutral-tag{background-color:#facc15;background-color:var(--rating-medium-color,#facc15);color:#111;color:var(--background-primary,#111)}.section{direction:rtl;margin-bottom:30px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.section-header .title{font-size:1.1em;font-weight:700;order:1}.section-header .count{background:#e2e8f0;background:var(--background-primary,#e2e8f0);border-radius:50px;color:#000;color:var(--text-primary-on-light,#000);font-size:.9em;font-weight:700;order:2;padding:4px 12px}.traits{justify-content:flex-start}.trait{border-radius:20px;cursor:pointer;font-size:14px;font-weight:700;padding:8px 14px;transition:background-color .2s,transform .1s,box-shadow .2s,color .2s}.trait.green{background-color:#166534;background-color:var(--trait-green-unselected-bg,#166534);color:#a3e635;color:var(--trait-green-unselected-text,#a3e635)}.trait.red{background-color:#991b1b;background-color:var(--trait-red-unselected-bg,#991b1b);color:#fca5a5;color:var(--trait-red-unselected-text,#fca5a5)}.trait.yellow{background-color:#92400e;background-color:var(--trait-yellow-unselected-bg,#92400e);color:#fcd34d;color:var(--trait-yellow-unselected-text,#fcd34d)}.trait:not(.selected):hover{filter:brightness(1.15);transform:scale(1.03)}.trait.selected{box-shadow:0 0 8px currentColor;transform:scale(1.05)}.trait.selected.green{background-color:#22c55e;color:#fff}.trait.selected.red{background-color:#ef4444;color:#fff}.trait.selected.yellow{background-color:#facc15;box-shadow:0 0 8px #fff;color:#000}.trait.selected.gray{background-color:#475569;color:#fff}.traits{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.tag-chip{background-color:#3a3a3a;background-color:var(--background-tertiary,#3a3a3a);border:1px solid #555;border:1px solid var(--border-color,#555);color:#bbb;color:var(--text-secondary,#bbb);display:inline-flex;font-size:.9em;gap:6px;padding:5px 15px;transition:all .2s ease}.tag-chip:hover{background-color:#444;background-color:var(--hover-bg,#444);border-color:#777;border-color:var(--border-color-light,#777);color:#eee;color:var(--text-primary,#eee)}.tag-chip.positive.selected{background-color:#22c55e33;border-color:#22c55e66;color:#22c55e;font-weight:600}.tag-chip.negative.selected{background-color:#ef444433;border-color:#ef444466;color:#ef4444;font-weight:600}.tag-chip.neutral.selected{background-color:#eab30833;border-color:#eab30866;color:#eab308;font-weight:600}.tags-step-container{color:#212529;color:var(--text-primary-light,#212529)}.step-instructions{background-color:#f8f9fa;background-color:var(--background-secondary-light,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color-lightmode,#dee2e6);border-radius:4px;color:#6c757d;color:var(--text-secondary-light,#6c757d);font-size:.9rem;margin-bottom:20px;padding:10px}.tag-category{margin-bottom:25px}.category-header{align-items:center;border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color-lightmode,#dee2e6);display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.category-title{color:#343a40;color:var(--text-primary-light,#343a40);font-size:1.1rem;font-weight:600}.tag-counter{background-color:#e9ecef;background-color:var(--background-tertiary-light,#e9ecef);border-radius:10px;color:#6c757d;color:var(--text-secondary-light,#6c757d);font-size:.85rem;min-width:25px;padding:3px 8px;text-align:center}.tag-counter.limit-reached{background-color:#dc3545;background-color:var(--danger-color-light,#dc3545);color:#fff}.tags-container{display:flex;flex-wrap:wrap;gap:10px}.tag-chip{align-items:center;background-color:#fff;background-color:var(--chip-bg-light,#fff);border:1px solid #adb5bd;border:1px solid var(--chip-border-light,#adb5bd);border-radius:16px;color:#495057;color:var(--chip-text-light,#495057);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:5px;padding:6px 15px;transition:background-color .2s,color .2s,box-shadow .2s,border-color .2s}.tag-chip.positive{background-color:#d1e7dd;background-color:var(--positive-bg-light,#d1e7dd);border-color:#a2cbb4;border-color:var(--positive-border-light,#a2cbb4);color:#0f5132;color:var(--positive-text-light,#0f5132)}.tag-chip.negative{background-color:#f8d7da;background-color:var(--negative-bg-light,#f8d7da);border-color:#f1b0b7;border-color:var(--negative-border-light,#f1b0b7);color:#721c24;color:var(--negative-text-light,#721c24)}.tag-chip.neutral{background-color:#fff3cd;background-color:var(--neutral-bg-light,#fff3cd);border-color:#ffe8a1;border-color:var(--neutral-border-light,#ffe8a1);color:#664d03;color:var(--neutral-text-light,#664d03)}.tag-chip.selected{border-width:2px;box-shadow:none;font-weight:600}.tag-chip.selected.positive{background-color:#28a745;background-color:var(--positive-selected-bg-light,#28a745);border-color:#28a745;border-color:var(--positive-selected-bg-light,#28a745);color:#fff}.tag-chip.selected.negative{background-color:#dc3545;background-color:var(--negative-selected-bg-light,#dc3545);border-color:#dc3545;border-color:var(--negative-selected-bg-light,#dc3545);color:#fff}.tag-chip.selected.neutral{background-color:#ffc107;background-color:var(--neutral-selected-bg-light,#ffc107);border-color:#ffc107;border-color:var(--neutral-selected-bg-light,#ffc107);color:#212529}.tag-chip:not(.selected):hover{background-color:#e9ecef;background-color:var(--chip-hover-bg-light,#e9ecef);border-color:#adb5bd;border-color:var(--chip-hover-border-light,#adb5bd);color:#212529;color:var(--chip-hover-text-light,#212529)}.tag-chip .checkmark{font-size:.8em;font-weight:700}.tag-section-title{color:#343a40;color:var(--text-primary-light,#343a40)}.professor-detail-page{display:flex;flex-direction:column}.detail-container{box-sizing:border-box;flex-grow:1;margin:30px auto;max-width:900px;padding:30px 20px;text-align:right;width:100%}.error-container,.loading-container{color:#aaa;color:var(--text-secondary,#aaa);padding:50px 20px;text-align:center}.error-container p{color:#f87171;color:var(--error-color,#f87171)}.detail-container section{background-color:#2c2c2c;background-color:var(--background-secondary,#2c2c2c);border:1px solid #444;border:1px solid var(--border-color,#444);border-radius:8px;margin-bottom:30px;padding:25px}.section-title{border-bottom:1px solid #555;border-bottom:1px solid var(--border-color-light,#555);color:#eee;color:var(--text-primary,#eee);font-size:1.6em;font-weight:700;margin-bottom:25px;margin-top:0;padding-bottom:15px}.professor-header{align-items:flex-start;background-color:initial;border:none;display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between;margin-bottom:35px;padding:0}.header-info{flex-grow:1}.professor-name{color:#eee;color:var(--text-primary,#eee);font-size:2.2em;font-weight:700;margin:0 0 8px}.professor-department{color:#bbb;color:var(--text-secondary,#bbb);font-size:1.2em;margin:0}.overall-rating-gauge{--gauge-percent:0;--current-gauge-color:var(--accent-color,#4ade80);align-items:center;background:radial-gradient(closest-side,#121212 79%,#0000 80% 100%),conic-gradient(#4ade80 0,#3a3a3a 0);background:radial-gradient(closest-side,var(--background-primary,#121212) 79%,#0000 80% 100%),conic-gradient(var(--current-gauge-color,var(--accent-color,#4ade80)) calc(var(--gauge-percent, 0)*1%),var(--background-secondary,#3a3a3a) 0);border:none;border-radius:50%;display:flex;flex-direction:column;flex-shrink:0;height:150px;justify-content:center;position:relative;text-align:center;transition:background .5s ease-in-out;width:150px}.gauge-value{font-size:1.8em;font-weight:700}body.dark-mode .rating-value{color:#eee;color:var(--text-primary,#eee)}.gauge-label{color:#aaa;color:var(--text-secondary,#aaa);font-size:.85em;margin-top:6px}.ratings-breakdown .section-title{margin-bottom:20px}.criteria-list{display:flex;flex-direction:column;gap:18px}.criterion-item{align-items:center;display:flex;gap:20px}.criterion-label{color:#ddd;color:var(--text-primary,#ddd);flex-shrink:0;font-size:1em;font-weight:500;text-align:right;width:80px}.progress-bar-container{background-color:#3a3a3a;background-color:var(--background-tertiary,#3a3a3a);border-radius:4px;flex-grow:1}.progress-bar-fill{background-color:#4ade80;background-color:var(--accent-color,#4ade80);border-radius:4px;transition:width .5s ease-in-out}.criterion-score{color:#eee;color:var(--text-primary,#eee);flex-shrink:0;font-size:1em;font-weight:700;text-align:right;width:45px}.add-review-trigger-section{background-color:initial;border:none;margin-bottom:30px;padding:0;text-align:center}.add-review-button{background-color:#4ade80;background-color:var(--accent-color,#4ade80);border:none;border-radius:6px;color:#111;color:var(--background-primary,#111);font-size:1.1em;font-weight:700;padding:12px 35px;transition:background-color .2s,opacity .2s}.add-review-button:hover{opacity:.85}.login-prompt-for-review{border:1px dashed #555;border:1px dashed var(--border-color,#555);border-radius:8px;display:inline-block;padding:15px}.login-prompt-for-review p{color:#aaa;color:var(--text-secondary,#aaa);font-size:1em;margin:0}.login-prompt-for-review a{color:#4ade80;color:var(--accent-color,#4ade80);font-weight:700;text-decoration:none}.login-prompt-for-review a:hover{text-decoration:underline}.reviews-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:25px}.reviews-header .section-title{border:none;font-size:1.6em;margin:0;padding:0}.sort-options{align-items:center;color:#aaa;color:var(--text-secondary,#aaa);display:flex;font-size:.95em;gap:10px}.sort-options button{background-color:#3a3a3a;background-color:var(--background-tertiary,#3a3a3a);border:1px solid #555;border:1px solid var(--border-color-light,#555);border-radius:20px;color:#ccc;color:var(--text-secondary,#ccc);cursor:pointer;font-size:.95em;padding:6px 12px;transition:background-color .2s,color .2s,border-color .2s}.sort-options button:hover{background-color:#555;background-color:var(--border-color-light,#555);border-color:#777;border-color:var(--border-color,#777);color:#eee;color:var(--text-primary,#eee)}.sort-options button.active{background-color:#4ade80;background-color:var(--accent-color,#4ade80);border-color:#4ade80;border-color:var(--accent-color,#4ade80);color:#111;color:var(--background-primary,#111);font-weight:700}.reviews-list{gap:25px}.no-reviews-message{color:#aaa;color:var(--text-secondary,#aaa);font-size:1.1em}.main-page-content{background-color:#121212;background-color:var(--background-primary,#121212);display:flex;flex-direction:column;overflow-x:hidden;padding-right:75px}.main-page-content>.navbar{flex-shrink:0}.professor-detail-container{box-sizing:border-box;margin:30px auto;max-width:900px;padding:20px;width:100%}.professor-content-area{min-width:1000px}.professor-header-card{gap:20px}.professor-name{margin-bottom:5px}.professor-title{font-weight:500}.header-actions{align-items:center;display:flex;flex-shrink:0;gap:25px}.add-review-button{background-color:#16a34a;background-color:var(--accent-color-dark,#16a34a);border:1px solid #4ade80;border:1px solid var(--accent-color,#4ade80);border-radius:20px;box-shadow:0 2px 5px #0003;color:#fff;cursor:pointer;font-size:.95em;font-weight:600;padding:10px 22px;transition:background-color .2s,transform .1s,box-shadow .2s;white-space:nowrap}.add-review-button:hover{background-color:#4ade80;background-color:var(--accent-color,#4ade80);border-color:#16a34a;border-color:var(--accent-color-dark,#16a34a);box-shadow:0 4px 8px #00000040}.add-review-button:active{box-shadow:0 1px 3px #0003;transform:scale(.97)}.rating-label{color:#495057;color:var(--text-secondary-light,#495057);flex-shrink:0;font-size:.95em;width:85px}.frequent-tags-section .traits{gap:10px;justify-content:flex-start}.trait{align-items:center;background-color:#334155;border:none;color:#fff;display:inline-flex;font-family:Tajawal,sans-serif;gap:6px;padding:6px 12px;transition:background-color .2s,color .2s}.trait.green{background-color:#12a149;background-color:var(--trait-green-unselected-bg,#12a149);color:#fff}.trait.red{background-color:#d21717;background-color:var(--trait-red-unselected-bg,#d21717);color:#fff}.trait.yellow{background-color:#f7df08;background-color:var(--trait-yellow-unselected-bg,#f7df08);color:#000}.trait.gray{background-color:#334155;color:#fff}.frequent-tags-section .trait:hover{box-shadow:none;transform:none}.professor-main-grid.single-column{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr}@media (max-width:992px){.professor-content-area{min-width:auto;padding:0 15px;width:100%}}@media (max-width:480px){.professor-content-area{margin:20px auto;min-width:auto;padding:0 10px;width:100%}.professor-header-card{margin-bottom:20px;padding:20px 15px;width:75%}.header-top-row{align-items:center;flex-direction:column;gap:15px;padding-bottom:20px}.header-main-info{text-align:center;width:100%}.professor-name{font-size:1.5em}.professor-department{font-size:.9em}.overall-rating-gauge{height:100px;width:100px}.gauge-value{font-size:1.8em}.rating-item{grid-gap:5px;align-items:center;display:grid;gap:5px;grid-template-columns:auto 1fr auto;grid-template-rows:auto}.rating-label{font-size:.8em;grid-column:1/2;margin-bottom:0;white-space:nowrap}.rating-bar-container{grid-column:2/3}.rating-value{font-size:.9em;grid-column:3/4}.reviews-header{align-items:flex-end;flex-direction:column;gap:10px}.sort-options{justify-content:center;margin-top:10px;width:100%}.course-header-card{margin-top:120px}.courses-taught-section li.course-item{align-items:stretch;flex-direction:column;gap:8px;padding:10px 12px}.course-name{font-size:.95em;margin-bottom:4px;margin-left:0;text-align:center}.drive-link-button{align-self:center;font-size:.8em;padding:5px 10px}.no-files-message{font-size:.8em;padding:5px 10px;text-align:center}.header-extra-info{flex-direction:column;gap:20px}.courses-taught-section,.frequent-tags-section{flex-basis:100%;min-width:auto}}.main-page-content{background-color:var(--background-primary);flex-grow:1;min-height:100vh;padding-right:0;transition:padding-right .4s ease}@media (max-width:768px){.main-page-content{padding-right:15px}}.error-message,.loading-message{font-size:1.1em;padding:40px}.detailed-ratings-card,.reviews-card{background-color:#fff;background-color:var(--card-bg-light,#fff);border-radius:12px;box-shadow:0 4px 15px #00000012;padding:30px 30px 25px;position:static}.header-detailed-ratings{padding-bottom:0;padding-top:20px;position:static;width:100%}.header-detailed-ratings .card-corner-button{bottom:20px;font-size:.9em;left:35px;padding:8px 18px;position:absolute}.add-review-button-bottom{margin-left:auto;margin-right:auto;margin-top:15px;padding:12px 25px;width:fit-content}.professor-detail-page{color:#212529;color:var(--text-primary-light,#212529);font-family:Tajawal,sans-serif}.professor-content-area{box-sizing:border-box;direction:rtl;flex-grow:1;margin:30px auto 40px;max-width:1100px;padding:0 20px;width:100%}.professor-header-card{background-color:#fff;background-color:var(--card-bg-light,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color-lightmode,#dee2e6);border-radius:12px;box-shadow:0 4px 15px #00000012;display:flex;flex-direction:column;gap:25px;margin-bottom:40px;padding:30px;position:relative}.header-top-row{border-bottom:1px solid #e9ecef;border-bottom:1px solid var(--border-color-lightmode-light,#e9ecef);gap:20px;padding-bottom:25px}.header-main-info{flex-shrink:1}.professor-name{color:#343a40;color:var(--text-primary-light,#343a40);font-size:2em;margin-bottom:20px;text-align:right}.professor-subtitle{color:#6c757d;color:var(--text-secondary-light,#6c757d);font-size:1.1em}.no-rating-placeholder{background-color:#e9ecef;background-color:var(--background-tertiary-light,#e9ecef);border-radius:6px;height:fit-content;padding:10px 15px}.header-detailed-ratings{margin:0;padding:0}.detailed-ratings-list{display:flex;flex-direction:column;gap:15px}.rating-item{grid-gap:15px;display:grid;gap:15px;grid-template-columns:auto 1fr auto}.professor-rating-label{color:#495057;color:var(--text-secondary-light,#495057);flex-shrink:0;font-size:.95em;text-align:right;width:85px}.rating-bar-container{background-color:var(--background-tertiary-light,#e9ecef);border-radius:4px;height:10px}.rating-bar-fill{border-radius:4px;transition:width .5s ease-in-out}.rating-bar-fill:not([data-rating-value]),.rating-bar-fill[data-rating-value=""],.rating-bar-fill[data-rating-value="0"]{background-color:#6c757d;background-color:var(--rating-gray-bg,#6c757d);background-image:none!important}.rating-bar-fill[data-rating-value]:is([data-rating-value="1"],[data-rating-value="2"],[data-rating-value="3"],[data-rating-value="4"],[data-rating-value="5"],[data-rating-value="6"],[data-rating-value="7"],[data-rating-value="8"],[data-rating-value="9"],[data-rating-value="10"],[data-rating-value="11"],[data-rating-value="12"],[data-rating-value="13"],[data-rating-value="14"],[data-rating-value="15"],[data-rating-value="16"],[data-rating-value="17"],[data-rating-value="18"],[data-rating-value="19"],[data-rating-value^="2"],[data-rating-value^="3"]){background-color:#dc3545;background-color:var(--rating-red-solid-bg,#dc3545);background-image:linear-gradient(270deg,#dc3545,#c82333);background-image:var(--rating-red-gradient-bg,linear-gradient(to left,#dc3545,#c82333))}.rating-bar-fill[data-rating-value]:is([data-rating-value^="4"],[data-rating-value^="5"],[data-rating-value^="6"]){background-color:#ffc107;background-color:var(--rating-yellow-bg,#ffc107);background-image:none!important}.rating-bar-fill[data-rating-value]:is([data-rating-value="100"],[data-rating-value^="7"],[data-rating-value^="8"],[data-rating-value^="9"]){background-color:#28a745;background-color:var(--rating-green-bg,#28a745);background-image:none!important}.rating-value{color:#4ade80;color:var(--accent-color,#4ade80);font-size:1.8em;font-weight:700}.header-extra-info{border-top:1px solid #e9ecef;border-top:1px solid var(--border-color-lightmode-light,#e9ecef);display:flex;flex-wrap:wrap;gap:30px;padding-top:15px}.courses-taught-section,.frequent-tags-section{flex-basis:45%;flex-grow:1;min-width:200px}.courses-taught-section h4,.frequent-tags-section h4{color:#343a40;color:var(--text-primary-light,#343a40);font-size:1.1em;font-weight:600;margin-bottom:15px;margin-top:0}.courses-taught-section ul{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.courses-taught-section li.course-item{align-items:center;background-color:#f8f9fa;background-color:var(--background-tertiary-light,#f8f9fa);border:1px solid #e9ecef;border:1px solid var(--border-color-lightmode-light,#e9ecef);border-radius:8px;display:flex;font-size:.95em;justify-content:space-between;padding:12px 16px;transition:all .2s ease}.courses-taught-section li.course-item:hover{background-color:#e9ecef;background-color:var(--background-tertiary-light-hover,#e9ecef);border-color:#dee2e6;border-color:var(--border-color-lightmode,#dee2e6)}.courses-taught-section li.course-item .professor-course-name{color:#343a40;color:var(--text-primary-light,#343a40);direction:rtl;flex-grow:1;font-size:1em;font-weight:600;line-height:1.3;margin-bottom:0;margin-left:12px;margin-right:0;text-align:right}.drive-link-button{align-items:center;background-color:#007bff;background-color:var(--accent-color-lightmode,#007bff);border:1px solid #007bff;border:1px solid var(--accent-color-lightmode,#007bff);border-radius:6px;color:#fff;display:inline-flex;font-size:.85em;font-weight:500;gap:6px;padding:6px 12px;text-decoration:none;transition:all .2s ease;white-space:nowrap}.drive-link-button:hover{background-color:#0056b3;background-color:var(--accent-color-lightmode-dark,#0056b3);border-color:#0056b3;border-color:var(--accent-color-lightmode-dark,#0056b3);box-shadow:0 2px 4px #007bff33;color:#fff;text-decoration:none;transform:translateY(-1px)}.drive-link-button:active{box-shadow:0 1px 2px #007bff33;transform:translateY(0)}.no-files-message{background-color:#e9ecef;background-color:var(--background-tertiary-light,#e9ecef);border:1px solid #e9ecef;border:1px solid var(--border-color-lightmode-light,#e9ecef);border-radius:6px;color:#6c757d;color:var(--text-secondary-light,#6c757d);font-size:.85em;font-style:italic;padding:6px 12px}body.dark-mode .courses-taught-section li.course-item{background-color:#2d3748;background-color:var(--background-tertiary-dark,#2d3748);border-color:#4a5568;border-color:var(--border-color-dark,#4a5568)}body.dark-mode .courses-taught-section li.course-item:hover{background-color:#374151;background-color:var(--background-tertiary-dark-hover,#374151);border-color:#6b7280;border-color:var(--border-color-dark-hover,#6b7280)}body.dark-mode .professor-course-name{color:#f7fafc;color:var(--text-primary-dark,#f7fafc)}body.dark-mode .no-files-message{background-color:#2d3748;background-color:var(--background-tertiary-dark,#2d3748);border-color:#4a5568;border-color:var(--border-color-dark,#4a5568);color:#a0aec0;color:var(--text-secondary-dark,#a0aec0)}.frequent-tags-section .traits{display:flex;flex-wrap:wrap;gap:8px}.trait{border-radius:16px;cursor:default;font-size:.85em;font-weight:500;padding:4px 10px}.add-review-button-bottom{align-self:flex-end;background-color:var(--accent-color-lightmode,#007bff);border-radius:6px;font-size:1em;font-weight:600;margin-top:10px;padding:10px 25px}.add-review-button-bottom:hover{background-color:var(--accent-color-lightmode-dark,#0056b3)}.reviews-card{background-color:#fff;background-color:var(--card-bg-light,#fff);border-radius:12px;box-shadow:0 4px 15px #00000012;padding:30px}.reviews-card .section-title{border-bottom:1px solid #e9ecef;border-bottom:1px solid var(--border-color-lightmode-light,#e9ecef);color:#343a40;color:var(--text-primary-light,#343a40);font-size:1.4em;font-weight:700;margin-bottom:25px;padding-bottom:15px}.reviews-list{gap:20px}.no-reviews-message{padding:40px 0}@media (max-width:768px){.detail-container{max-width:100%;padding:0 15px}.professor-name{font-size:1.6em}.professor-department{font-size:1em}.section-title{font-size:1.3em}}@media (max-width:480px){.professor-content-area{margin:20px auto;min-width:auto;padding:0 10px;width:100%}.professor-header-card{margin-bottom:20px;margin-top:120px;padding:20px 15px;width:90%}.header-top-row{align-items:center;flex-direction:column;gap:15px;padding-bottom:20px}.header-main-info{text-align:center;width:100%}.professor-name{font-size:1.5em}.professor-department{font-size:.9em}.overall-rating-gauge{height:120px;width:120px}.gauge-value{font-size:1.8em}.rating-item{grid-gap:5px;align-items:center;display:grid;gap:5px;grid-template-columns:auto 1fr auto;grid-template-rows:auto}.rating-label{font-size:.8em;grid-column:1/2;margin-bottom:0;white-space:nowrap}.rating-bar-container{grid-column:2/3}.rating-value{font-size:.9em;grid-column:3/4}.reviews-header{align-items:flex-end;flex-direction:column;gap:10px}.sort-options{justify-content:center;margin-top:10px;width:100%}.course-header-card{margin-top:120px}}.login-message{height:100%;justify-content:center;padding:20px 0;text-align:center}.login-message,.progress-container{align-items:center;display:flex;width:100%}.progress-container{gap:15px;margin-bottom:15px}.progress-label{color:#535455;color:var(--text-secondary-light,#535455);flex-shrink:0;font-size:.95em;text-align:right;width:85px}.progress-bar{background:#434344;border-radius:6px;flex-grow:1;height:14px;overflow:hidden;position:relative;width:100%}.progress-fill{animation:fillBar 2s ease forwards;height:100%;width:0}.progress-value{font-weight:600;min-width:45px;text-align:right}@keyframes fillBar{0%{width:0}to{width:100%;width:var(--progress,100%)}}.progress-fill[style*="--progress:"]{width:0;width:var(--progress,0)}.course-card-link{color:inherit;display:block;text-decoration:none}.course-card,.course-card-link{box-sizing:border-box;height:100%;position:relative;width:100%}.course-card{background-color:#fff;background-color:var(--card-bg-light,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color-lightmode,#dee2e6);border-radius:8px;box-shadow:0 1px 3px #0000000a;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:18px;text-align:right;transition:box-shadow .2s ease-in-out,transform .2s ease-in-out}body.dark-mode .course-card{border:1px solid #374151;border:1px solid var(--border-color-darkmode,#374151)}.course-card:hover{box-shadow:0 4px 8px #0000000f;transform:translateY(-2px);z-index:1}.course-info{margin-bottom:10px}.course-code{color:#343a40;color:var(--text-primary-light,#343a40);font-size:1.1em;font-weight:700;margin-bottom:2px;white-space:normal}.course-name{color:#6c757d;color:var(--text-secondary-light,#6c757d);font-size:1em;font-weight:400;line-height:1.3;margin-bottom:4px}.course-hours{color:#adb5bd;color:var(--text-muted-light,#adb5bd);font-size:.8em}.course-stats{align-items:center;color:#6c757d;color:var(--text-secondary-light,#6c757d);display:flex;font-size:.85em;justify-content:space-between;margin-top:auto;padding-top:10px}.difficulty-tag{border:1px solid #0000;border-radius:12px;font-size:.8em;font-weight:600;padding:3px 10px}.difficulty-easy{background-color:#d1e7dd;border-color:#a3cfbb;color:#0f5132}.difficulty-medium{background-color:#fff3cd;border-color:#ffe69c;color:#664d03}.difficulty-hard{background-color:#f8d7da;border-color:#f1aeae;color:#58151c}.difficulty-unknown{background-color:#e9ecef;border-color:#ced4da;color:#495057}.views-reviews{align-items:center;display:flex;gap:10px}.views-reviews span{align-items:center;display:flex;gap:3px}.course-card.error{align-items:center;background-color:#f8d7da;color:#58151c;font-weight:700;justify-content:center;text-align:center}.difficulty-very-easy{background-color:#e0f7fa;color:#00796b}.difficulty-very-hard{background-color:#ffebee;color:#c62828}.course-drive-link-button{border:none;cursor:pointer;font-size:.8em;gap:6px;justify-content:center;margin-top:8px;padding:4px 8px;width:100%}.page-with-sidebar-layout{display:flex}.course-list-main-page-content{flex-grow:1;min-height:100vh;padding-right:75px;transition:padding-right .4s ease}.course-list-page{display:flex;flex-direction:column;font-family:Tajawal,sans-serif}.course-list-container{background-color:#fff;background-color:var(--list-container-bg-light,#fff);border-radius:10px;box-shadow:0 2px 5px #04ddfe0d;box-sizing:border-box;color:#212529;color:var(--text-primary-light,#212529);flex-grow:1;margin:100px auto 30px;max-width:1200px;padding:40px 20px;width:100%}.course-list-page-title{color:#343a40;color:var(--text-primary-light,#343a40);font-size:1.6rem;font-weight:700;margin-bottom:2rem;text-align:center}.course-list-search-container{display:flex;justify-content:center;margin-bottom:1.5rem}.course-list-search-input{background-color:#f8f9fa;background-color:var(--input-bg-light,#f8f9fa);border:1px solid #ced4da;border:1px solid var(--border-color-lightmode,#ced4da);border-radius:9999px;color:#495057;color:var(--text-primary-light,#495057);font-size:1rem;max-width:500px;padding:12px 20px;text-align:center;transition:border-color .2s,box-shadow .2s;width:100%}.course-list-filters-container{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color-lightmode,#e0e0e0);display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:2.5rem;padding-bottom:1.5rem}.course-list-filter-dropdownCreditHours,.course-list-filter-dropdownDepartment,.course-list-filter-dropdownFaculty{background-color:#f8f9fa;background-color:var(--input-bg-light,#f8f9fa);border:1px solid #ced4da;border:1px solid var(--border-color-lightmode,#ced4da);border-radius:6px;color:#495057;color:var(--text-primary-light,#495057);cursor:pointer;flex-grow:1;font-size:.95rem;max-width:250px;min-width:180px;padding:10px 15px}.course-list-filter-dropdownCreditHours:disabled,.course-list-filter-dropdownDepartment:disabled,.course-list-filter-dropdownFaculty:disabled{background-color:#e9ecef;background-color:var(--input-disabled-bg-light,#e9ecef);cursor:not-allowed;font-family:Tajawal,sans-serif;opacity:.7}body.dark-mode .course-list-filter-dropdownDepartment:disabled{background-color:#5f6267;background-color:var(--input-disabled-bg-dark,#5f6267)}.course-list-search-input:focus{border-color:#007bff;border-color:var(--accent-color-lightmode,#007bff);box-shadow:0 0 0 2px #007bff40;box-shadow:0 0 0 2px var(--accent-color-lightmode-shadow,#007bff40);outline:none}.course-list-grid{grid-gap:25px;align-items:stretch;box-sizing:border-box;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin:0 auto;padding:10px 0;width:100%}.course-list-grid>a{display:block;margin:0;min-height:170px;width:100%}.course-list-no-results{font-size:1.1em;grid-column:1/-1;padding:50px 20px}.course-list-loader,.course-list-no-results{color:#6c757d;color:var(--text-secondary-light,#6c757d);text-align:center}.course-list-loader{padding:30px}.course-list-error{color:#dc3545;padding:20px;text-align:center}.course-list-load-more-container{display:flex;justify-content:center;padding:20px}.course-list-load-more-button{background-color:#007bff;background-color:var(--accent-color-lightmode,#007bff);border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1.2rem;padding:10px 20px;transition:background-color .2s}.course-list-load-more-button:hover{background-color:#0056b3;background-color:var(--accent-color-lightmode-dark,#0056b3)}@media (max-width:768px){.course-list-container{margin-top:150px;padding:30px 15px;width:95%}.course-list-grid{gap:15px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.course-list-filter-dropdownCreditHours{order:3}.course-list-filter-dropdownDepartment{order:2}.course-list-filter-dropdownFaculty{order:1}}@media (max-width:480px){.course-list-grid{grid-template-columns:1fr}}.review-modal-backdrop{align-items:center;background-color:#0009;background-color:var(--modal-backdrop-bg,#0009);direction:rtl;display:flex;font-family:Tajawal,sans-serif;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1050}.review-modal{background-color:#fff;background-color:var(--background-primary-light,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color-lightmode,#dee2e6);border-radius:8px;box-shadow:0 5px 15px #00000026;color:#212529;color:var(--text-primary-light,#212529);display:flex;flex-direction:column;max-height:90vh;max-width:650px;overflow:hidden;padding:25px;width:90%}.review-modal-header{align-items:center;border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color-lightmode,#dee2e6);display:flex;flex-shrink:0;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.review-modal-header h2{color:#212529;color:var(--text-primary-light,#212529);font-size:1.4rem;font-weight:600;margin:0}.review-modal-close-button{background:none;border:none;color:#6c757d;color:var(--text-secondary-light,#6c757d);cursor:pointer;font-size:1.8rem;font-weight:700;line-height:1;padding:0 5px}.review-modal-close-button:hover{color:#212529;color:var(--text-primary-light,#212529)}.progress-bar-container{background-color:var(--progress-track-light,#e9ecef);border-radius:5px;flex-shrink:0;height:8px;margin-bottom:5px;width:100%}.progress-bar-fill{background-color:#007bff;background-color:var(--primary-blue,#007bff);border-radius:5px;transition:width .3s ease-in-out}.step-indicator{color:#6c757d;color:var(--text-secondary-light,#6c757d);margin-bottom:15px}.step-indicator,.validation-error{flex-shrink:0;font-size:.9rem;text-align:center}.validation-error{background-color:#f8d7da;background-color:var(--error-bg-light,#f8d7da);border:1px solid #f5c6cb;border:1px solid var(--error-border-light,#f5c6cb);border-radius:4px;color:#721c24;color:var(--error-text-light,#721c24);margin:0 25px 15px;padding:8px 12px}.review-modal-content{flex-grow:1;margin-bottom:0;overflow-y:auto;padding:0 25px 15px}.review-modal-footer{align-items:center;border-top:1px solid #dee2e6;border-top:1px solid var(--border-color-lightmode,#dee2e6);display:flex;flex-shrink:0;margin-top:auto;min-height:60px;padding:15px 25px;position:relative}.footer-buttons{position:static}.modal-button{border:1px solid #0000;border-radius:5px;cursor:pointer;font-size:1rem;font-weight:500;min-width:100px;padding:10px 25px;position:absolute;top:15px;transition:background-color .2s,opacity .2s,border-color .2s}.modal-button.previous{background-color:#6c757d;background-color:var(--button-secondary-bg-light,#6c757d);border-color:#6c757d;border-color:var(--button-secondary-bg-light,#6c757d);color:#fff;left:auto;right:25px}.modal-button.previous:hover{background-color:#5a6268;background-color:var(--button-secondary-hover-bg-light,#5a6268);border-color:#5a6268;border-color:var(--button-secondary-hover-bg-light,#5a6268)}.modal-button.next,.modal-button.submit{background-color:#28a745;background-color:var(--button-success-bg-light,#28a745);border-color:#28a745;border-color:var(--button-success-bg-light,#28a745);color:#fff;left:25px;right:auto}.modal-button.next:hover,.modal-button.submit:hover{background-color:#218838;background-color:var(--button-success-hover-bg-light,#218838);border-color:#218838;border-color:var(--button-success-hover-bg-light,#218838)}.modal-button:disabled{background-color:#ced4da;background-color:var(--button-disabled-bg-light,#ced4da);border-color:#ced4da;border-color:var(--button-disabled-bg-light,#ced4da);color:#6c757d;color:var(--button-disabled-text-light,#6c757d);cursor:not-allowed;opacity:.7}.review-modal .score-block.selected{box-shadow:0 6px 12px #0003;opacity:1!important;outline:3px solid #0d6efd!important;outline-offset:2px;position:relative;transform:translateY(-3px);z-index:3}.review-modal .score-block.selected .score-block-value{color:#fff;font-size:1.1em;font-weight:700}body.dark-mode .review-modal .score-block.selected{box-shadow:0 6px 12px #0006;opacity:1!important;outline:3px solid #fff!important;outline-offset:2px;position:relative;transform:translateY(-3px);z-index:3}body.dark-mode .review-modal .score-block.selected .score-block-value{color:#fff!important;font-size:1.1em;font-weight:700}#root{background-attachment:fixed;background-color:#edeff3;background-position:50%;background-repeat:no-repeat;background-size:cover;height:100%;margin:0;transition:background .3s ease-in-out}#root,.course-detail-page{padding:0;width:100%}.main-page-content.no-sidebar{margin-right:0}.course-content-container{box-sizing:border-box;direction:rtl;padding:20px;width:100%}.course-content-area{border-radius:8px;box-shadow:0 1px 3px #0000000d;margin:0 auto;max-width:1100px}.error-message,.loading-message{color:#6c757d;color:var(--text-secondary-light,#6c757d);font-style:italic;padding:30px;text-align:center}.error-message{color:#dc3545}.course-header-card{background-color:#fff;margin-bottom:40px;padding:20px;position:relative}.header-top-row{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.header-main-info{flex-grow:1;margin-right:20px}.course-code-lg{color:#212529;color:var(--text-primary-light,#212529);font-size:2rem;font-weight:700;margin:0 0 5px;text-align:right}.course-subtitle{color:#6c757d;color:var(--text-secondary-light,#6c757d);font-size:1rem}.course-name-lg{font-weight:600}.course-department-sm,.course-hours-sm{font-size:.9em}.header-actions{min-width:100px}.no-rating-placeholder{align-items:center;border:1px dashed #dee2e6;border:1px dashed var(--border-color-lightmode,#dee2e6);border-radius:50%;color:#6c757d;color:var(--text-secondary-light,#6c757d);display:flex;font-size:.9em;height:80px;justify-content:center;padding:10px;text-align:center;width:80px}.header-detailed-ratings{margin-bottom:20px;margin-top:20px}.detailed-ratings-list{grid-gap:10px;display:grid;gap:10px}.rating-item{align-items:center;display:flex;gap:10px}.rating-label{color:#6c757d;color:var(--text-secondary-light,#6c757d);font-size:1.2rem;text-align:right;white-space:nowrap;width:140px}.rating-bar-container{background-color:#e9ecef;background-color:var(--rating-bar-bg-light,#e9ecef);border-radius:6px;flex-grow:1;height:12px;overflow:hidden}.rating-bar-fill{border-radius:6px;height:100%;transition:width .3s ease-in-out}.rating-bar-fill,.rating-bar-fill[data-rating-value="100"],.rating-bar-fill[data-rating-value^="7"],.rating-bar-fill[data-rating-value^="8"],.rating-bar-fill[data-rating-value^="9"]{background:linear-gradient(270deg,#28a745,#218838);background:linear-gradient(to left,var(--color-positive-rating,#28a745),var(--color-positive-rating-darker,#218838))}.rating-bar-fill[data-rating-value^="4"],.rating-bar-fill[data-rating-value^="5"],.rating-bar-fill[data-rating-value^="6"]{background:linear-gradient(270deg,#ffc107,#e0a800);background:linear-gradient(to left,var(--color-neutral-rating,#ffc107),var(--color-neutral-rating-darker,#e0a800))}.rating-bar-fill[data-rating-value^="0"],.rating-bar-fill[data-rating-value^="1"],.rating-bar-fill[data-rating-value^="2"],.rating-bar-fill[data-rating-value^="3"]{background:linear-gradient(270deg,#dc3545,#c82333);background:linear-gradient(to left,var(--color-negative-rating,#dc3545),var(--color-negative-rating-darker,#c82333))}.rating-value{font-size:1.2rem;font-weight:600;min-width:35px;text-align:left}.add-review-button-bottom{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;display:block;font-family:Tajawal,sans-serif;font-size:1rem;font-weight:500;margin:20px auto 0;padding:10px 20px;transition:background-color .2s}.add-review-button-bottom:hover{background-color:#0056b3}.reviews-card{background-color:#f8f9fa;background-color:var(--card-bg-light,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color-lightmode,#dee2e6);border-radius:8px;padding:20px}.section-title{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color-lightmode,#dee2e6);color:#343a40;color:var(--text-primary-light,#343a40);font-size:1.4rem;font-weight:600;margin-bottom:15px;padding-bottom:10px}.reviews-list{display:flex;flex-direction:column;gap:15px}.no-reviews-message{color:#6c757d;color:var(--text-secondary-light,#6c757d);font-style:italic;padding:20px;text-align:center}.already-reviewed-message{align-items:center;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#6c757d;display:flex;font-size:.95em;justify-content:center;margin:20px auto;padding:12px 20px;text-align:center;width:fit-content}.course-details-card{animation:fadeIn .8s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.progress-bar-container{background-color:#e9ecef;background-color:var(--progress-bar-bg,#e9ecef);border-radius:6px;height:12px;margin:15px 0;overflow:hidden}.progress-bar-fill{animation:progressFill 1.5s ease-out forwards;background-color:#16a34a;background-color:var(--progress-bar-fill,#16a34a);border-radius:6px;height:100%;width:0}@keyframes progressFill{0%{width:0}to{width:0;width:var(--fill-width,0)}}.professors-list{animation:slideUp .8s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.professor-card{animation:fadeInScale .6s ease-out;animation-fill-mode:both}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.view-count-display{align-items:center;bottom:20px;color:#6c757d;color:var(--text-secondary-light,#6c757d);display:flex;font-size:.9rem;gap:5px;left:30px;margin:5px 0;position:absolute}.view-count-icon{font-size:1.1rem}.view-count-number{color:#343a40;color:var(--text-primary-light,#343a40);font-weight:600}.view-count-label{margin-right:2px}.refresh-count-button{background:none;border:none;color:#6c757d;color:var(--text-secondary-light,#6c757d);cursor:pointer;font-size:1rem;opacity:.7;padding:0 5px;transition:opacity .2s ease,transform .2s ease}.refresh-count-button:hover{opacity:1;transform:scale(1.1)}.refresh-count-button:active{transform:scale(.95)}.course-detail-page .progress-label{color:#6c757d;color:var(--text-secondary-light,#6c757d);flex-shrink:0;font-size:.95em;text-align:right;width:140px!important}.course-drive-link-button{align-items:center;background-color:#4285f4;border-radius:4px;color:#fff;display:inline-flex;font-size:.9em;gap:8px;margin-top:10px;padding:6px 12px;text-decoration:none;transition:background-color .3s ease}.course-drive-link-button:hover{background-color:#3367d6;color:#fff;text-decoration:none}@media (max-width:768px){.view-count-display{bottom:20px;font-size:.8rem;left:10px}.view-count-icon,.view-count-number{font-size:.8rem}.add-review-button-bottom{font-size:.7rem}}
/*# sourceMappingURL=main.df2198bb.css.map*/