@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}@media (max-width:768px){.theme-toggle-floating{height:auto!important;width:auto!important}.theme-toggle-floating,body.dark-mode .theme-toggle-floating{clear:none!important;float:none!important;left:auto!important;margin:0!important;top:auto!important;transform:none!important;transform:translateZ(0)!important;will-change:auto!important}.theme-toggle-floating,body.dark-mode .theme-toggle-floating{bottom:15px!important;isolation:isolate!important;position:fixed!important;right:15px!important;z-index:9999!important}.theme-toggle-floating{pointer-events:auto!important}.theme-toggle-floating.hide-on-mobile{display:none!important}}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;bottom:auto;display:flex;gap:12px;justify-content:center;left:auto;margin:10px 0;padding:10px 15px;position:static;right:auto;top:auto;transform:none;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}.theme-toggle-floating,body.dark-mode .theme-toggle-floating,html.dark-mode .theme-toggle-floating{bottom:15px!important;left:auto!important;margin:0!important;position:fixed!important;right:15px!important;top:auto!important;transform:none!important;z-index:9999!important}.theme-toggle-floating,body.dark-mode .theme-toggle-floating,html.dark-mode .theme-toggle-floating{clear:none!important;float:none!important}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}body.dark-mode .popup-content strong{color:#2a5;font-weight:700}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 .rs__control{background-color:#c5cbd6!important;border-color:#ffffff1a!important;box-shadow:none!important}body.dark-mode .rs__multi-value{background-color:#b4cdec!important;color:#fff!important}body.dark-mode .rs__multi-value-label{color:#fff!important}body.dark-mode .rs__a11y-text{background-color:#fdfeff!important;color:#fff!important}body.dark-mode .rs__menu{border:1px solid #ffffff1a!important}body.dark-mode .rs__menu,body.dark-mode .rs__menu-list,body.dark-mode .rs__option{background-color:#161b22!important}body.dark-mode .rs__option{color:#fff!important}body.dark-mode .rs__option--highlighted{background-color:#238636!important;color:#fff!important}body.dark-mode .rs__option--disabled{background-color:#21262d!important;color:#fff!important}body.dark-mode .rs__multi-value:hover .rs__multi-value-label{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{background-color:#374151;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 .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{background-color:initial;box-sizing:border-box;height:45px;justify-content:space-between;margin-bottom:50px;padding:10px 20px;position:relative;top:0;width:100%;z-index:1}.logo-link,.navbar{align-items:center;display:flex}.logo-link{cursor:pointer;text-decoration:none;transition:opacity .3s ease}.logo-link:hover{opacity:.8}.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;border:none;color:#fff}.btn-outline,.btn-primary{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{align-items:center;box-sizing:border-box;display:flex;justify-content:center;max-width:100%;min-height:100vh;position:relative;text-align:center}.hero-theme-toggle{display:none;position:absolute;right:20px;top:20px;z-index:1000}.hero-theme-toggle .theme-toggle-container{background:#0000!important;border:none!important;box-shadow:none!important;margin:0;padding:0}.hero-content{align-items:center;background-color:#f7faf9;border-radius:30px;box-shadow:0 4px 5px #0000001a;display:flex;flex-wrap:wrap;gap:30px;height:auto;justify-content:center;margin:-15vh auto 0;max-width:1200px;padding:3rem 2rem;position:relative}.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-bottom:20px;margin-top:15px;padding:10px 20px;position:relative;z-index:10}.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 20px 40px}.hero-content{margin-bottom:20px;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;margin-bottom:30px;padding:8px 16px}.hero-theme-toggle{display:block!important;position:absolute;right:15px;top:15px;z-index:1000}}@media (max-width:480px){.hero-section{padding-bottom:50px}.hero-content{gap:15px;margin-bottom:30px;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;margin-bottom:40px;padding:6px 14px}.hero-theme-toggle{right:10px;top:10px}}@media (min-width:769px){.hero-theme-toggle{bottom:20px!important;display:block!important;position:fixed!important;right:20px!important;top:auto!important;z-index:1000}}.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-left{justify-content:flex-start}.footer-center,.footer-left{align-items:center;display:flex;flex:1 1}.footer-center{justify-content:center}.footer-right{align-items:center;display:flex;flex:1 1;justify-content:flex-end}.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:1.5rem;padding-left:0}.footer-left{order:1}.footer-center{order:2}.footer-right{order:3}.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%}.homePage .social-media-contact{background:linear-gradient(135deg,#667eea,#764ba2);margin-top:2rem;padding:4rem 2rem}.homePage .social-media-contact .contact-title{color:#fff;margin-bottom:2rem;text-shadow:0 2px 4px #0000004d}@media (prefers-color-scheme:dark){.homePage .social-media-contact{background:linear-gradient(135deg,#2d3748,#4a5568)}}.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{align-items:center;display:flex;flex:1 1;justify-content:center}.branding-logo{width:100%}.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: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}}.signup-theme-toggle{align-self:flex-end;display:block;margin-top:1rem}.login-and-theme{align-items:center;display:flex;gap:1rem;justify-content:space-between;width:100%}@media (min-width:769px){.signup-theme-toggle{bottom:20px;left:auto;margin:0;position:fixed;right:20px;top:auto;z-index:1000}.login-and-theme{flex-direction:row;justify-content:space-between}}.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}:root{--progress-circle-height-desktop:180px;--progress-circle-height-tablet-large:170px;--progress-circle-height-tablet:140px;--progress-circle-height-mobile:130px;--progress-circle-height-mobile-small:110px}.loggedinPage{display:flex;flex-direction:column;min-height:100vh}.student-dashboard{background:linear-gradient(135deg,#f8fafc,#e2e8f0 70%);direction:rtl;font-family:Tajawal,sans-serif;margin-left:80px;margin-right:80px;padding:30px;transition:margin-right .3s ease}.dashboard-header{align-items:flex-start;background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;display:flex;gap:30px;justify-content:space-between;margin-bottom:20px;min-height:150px;padding:30px;position:relative}.student-info-corner{align-items:center;display:flex;flex-direction:row;gap:8px;justify-content:flex-end;position:absolute;right:20px;top:20px;z-index:10}.student-major{background:#3b82f61a;border:1px solid #3b82f633;border-radius:15px;color:#3b82f6;font-size:1rem;font-weight:600;padding:6px 12px}.student-college.no-data,.student-major.no-data{background:#9ca3af1a;border-color:#9ca3af33;color:#9ca3af;font-style:italic}.student-college{background:#64748b1a;border:1px solid #64748b33;border-radius:12px;color:#64748b;font-size:.9rem;font-weight:500;padding:4px 10px}.student-setup-hint{background:#f59e0b1a;border:1px solid #f59e0b33;border-radius:10px;color:#f59e0b;font-size:.8rem;font-weight:500;line-height:1.3;max-width:200px;padding:4px 8px;text-align:center}.student-setup-hint.clickable{cursor:pointer;overflow:hidden;position:relative;transition:all .3s ease}.student-setup-hint.clickable:before{background:linear-gradient(90deg,#0000,#f59e0b33,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.student-setup-hint.clickable:hover{background:#f59e0b33;border-color:#f59e0b66;box-shadow:0 4px 8px #f59e0b33;transform:translateY(-1px)}.student-setup-hint.clickable:hover:before{left:100%}.header-animation,.header-right{align-items:center;display:flex}.header-animation{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:20px;box-shadow:0 8px 25px #3b82f626;height:150px;justify-content:center;width:150px}.header-content h1.welcome-text{box-sizing:border-box;color:#1d4ed8;font-size:2.5rem;font-weight:700;line-height:1.2;margin:0 0 10px;max-width:calc(100% - 200px);overflow-wrap:break-word;padding-right:20px;text-align:center;white-space:normal;word-break:break-word}.header-info{display:flex;flex-direction:column;gap:5px}.refresh-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;box-shadow:0 4px 15px #3b82f64d;color:#fff;cursor:pointer;display:flex;font-family:Tajawal,sans-serif;font-size:.9rem;font-weight:600;gap:8px;margin-top:10px;padding:8px 16px;transition:all .3s ease}.refresh-btn:hover:not(:disabled){box-shadow:0 6px 20px #3b82f666;transform:translateY(-2px)}.refresh-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.refresh-btn.refreshing{background:linear-gradient(135deg,#64748b,#475569)}.loading-indicator{align-items:center;color:#3b82f6;display:flex;font-size:.9rem;justify-content:center;margin-right:10px}.loading-indicator .fa-spin{animation:spin 1s linear infinite}.current-date{color:#64748b;font-size:1.1rem;font-weight:500}.semester-week{background:#3b82f61a;border-radius:20px;color:#3b82f6;display:inline-block;font-size:1rem;font-weight:600;padding:5px 12px;width:fit-content}.quick-action-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;box-shadow:0 4px 15px #3b82f64d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:10px;padding:12px 24px;transition:all .3s ease}.quick-action-btn:hover{box-shadow:0 8px 25px #3b82f666;transform:translateY(-2px)}.dashboard-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:30px}.dashboard-card{background:#fff;border:1px solid #e2e8f0cc;border-radius:20px;box-shadow:0 8px 25px #00000014;padding:25px;transition:all .3s ease}.dashboard-card:hover{box-shadow:0 15px 35px #0000001f;transform:translateY(-5px)}.card-header{border-bottom:2px solid #f1f5f9;gap:12px;margin-bottom:20px;padding-bottom:15px}.loggedinPage .card-icon{background:#3b82f61a;border-radius:12px;color:#3b82f6;font-size:1.5rem;padding:10px}.card-header h3{color:#1e293b;font-size:1.3rem}.progress-content{align-items:center;display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between;padding:20px 0}.progress-circle{align-items:center;display:flex;justify-content:center;margin-inline:auto;min-width:160px}.progress-circle.no-data .progress-ring{opacity:.3}.progress-circle.no-data .progress-percentage{-webkit-text-fill-color:#9ca3af;background:none;color:#9ca3af}.progress-circle.no-data .progress-label{color:#9ca3af}.progress-ring{align-items:center;display:flex;justify-content:center}.progress-svg{animation:rotate 20s linear infinite;height:180px;height:var(--progress-circle-height-desktop);width:180px;width:var(--progress-circle-height-desktop)}.progress-bg{transition:stroke .5s ease}.progress-fill{animation:progressFill 2s ease-out;transition:stroke-dashoffset 2s cubic-bezier(.4,0,.2,1)}.progress-dot{animation:pulse 2s ease-in-out infinite}.dot-1{animation-delay:0s}.dot-2{animation-delay:.7s}.dot-3{animation-delay:1.4s}.progress-text{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;text-align:center;width:100%}.progress-percentage{-webkit-text-fill-color:#0000;animation:numberCount 2s ease-out;background:linear-gradient(135deg,#3b82f6,#8b5cf6,#06b6d4);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800;line-height:1;margin-bottom:8px}.progress-label{animation:fadeInUp .8s ease-out .5s both;color:#6b7280;font-size:1rem;font-weight:600;text-align:center;width:100%}.progress-sparkles{display:flex;gap:8px;right:-15px;top:-15px}.sparkle{animation:sparkle 3s ease-in-out infinite;font-size:1rem}.sparkle-1{animation-delay:0s}.sparkle-2{animation-delay:1s}.sparkle-3{animation-delay:2s}.progress-details{display:flex;flex:1 1;flex-direction:column;gap:15px}.progress-setup-message{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:16px;display:flex;gap:16px;margin:20px 0;padding:20px;text-align:center}.setup-icon{color:#f59e0b;flex-shrink:0;font-size:2rem}.setup-content{display:flex;flex:1 1;flex-direction:column;gap:8px}.setup-title{color:#92400e;font-size:1.1rem;font-weight:600}.setup-subtitle{color:#a16207;font-size:.9rem;opacity:.8}.setup-action-btn{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:12px;box-shadow:0 4px 12px #f59e0b4d;color:#fff;cursor:pointer;display:flex;font-family:Tajawal,sans-serif;font-size:.9rem;font-weight:600;gap:8px;margin-top:12px;padding:10px 16px;transition:all .3s ease}.setup-action-btn:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 6px 16px #f59e0b66;transform:translateY(-2px)}.progress-item{align-items:center;animation:slideInLeft .6s ease-out both;background:linear-gradient(135deg,#fff,#f8fafc);border:2px solid #0000;border-radius:16px;display:flex;gap:15px;overflow:hidden;padding:16px 20px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.progress-item:before{background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.progress-item:hover:before{left:100%}.progress-item:hover{border-color:#e5e7eb;box-shadow:0 10px 25px #0000001a;transform:translateY(-3px) scale(1.02)}.completed-item{animation-delay:.1s}.remaining-item{animation-delay:.2s}.total-item{animation-delay:.3s}.item-icon-wrapper{align-items:center;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:12px;display:flex;height:50px;justify-content:center;position:relative;width:50px}.icon-pulse{animation:iconPulse 2s ease-in-out infinite;background:inherit;border-radius:12px;height:100%;position:absolute;width:100%}.completed-icon{animation:bounce 2s ease-in-out infinite;color:#10b981;font-size:1.3rem;z-index:2}.remaining-icon{animation:bounce 2s ease-in-out .3s infinite;color:#f59e0b;font-size:1.3rem;z-index:2}.total-icon{animation:bounce 2s ease-in-out .6s infinite;color:#8b5cf6;font-size:1.3rem;z-index:2}.item-content{display:flex;flex:1 1;flex-direction:column;gap:4px}.item-value{animation:numberCount 1s ease-out;color:#1f2937;font-size:1.5rem;font-weight:700}.item-label{color:#6b7280;font-size:.9rem;font-weight:500}.item-badge{border-radius:20px;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.completed-item .item-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.remaining-item .item-badge{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.total-item .item-badge{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.activity-list{display:flex;flex-direction:column;gap:15px}.activity-item{align-items:center;background:#f8fafc;border-radius:12px;display:flex;gap:15px;padding:15px;transition:background-color .3s ease}.activity-item:hover{background:#f1f5f9}.activity-icon{align-items:center;background:#3b82f61a;border-radius:8px;color:#3b82f6;display:flex;font-size:1.2rem;height:35px;justify-content:center;padding:8px;width:35px}.activity-content{display:flex;flex:1 1;flex-direction:column;gap:3px}.activity-title{color:#1e293b;font-size:.95rem;font-weight:600}.activity-date{color:#64748b;font-size:.85rem}.loading-item{color:#64748b;font-style:italic;padding:20px;text-align:center}.stats-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr)}.stat-item{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:15px;padding:20px 15px;position:relative;text-align:center;transition:all .3s ease}.stat-item:hover{box-shadow:0 8px 20px #0000001a;transform:translateY(-3px)}.stat-number{color:#3b82f6;font-size:2rem;margin-bottom:5px}.stat-label{color:#64748b;font-size:.85rem}.stat-icon{color:#3b82f6;font-size:1rem;opacity:.7;position:absolute;right:10px;top:10px}.quick-actions-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.action-card{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:15px;cursor:pointer;display:flex;flex-direction:column;gap:10px;padding:20px;text-align:center;transition:all .3s ease}.action-card:hover{border-color:#3b82f6;box-shadow:0 8px 25px #3b82f626;transform:translateY(-3px)}.action-card svg{color:#3b82f6;font-size:1.5rem}.action-card span{color:#1e293b;font-size:.95rem;font-weight:600}@media (min-width:1401px){.header-content h1.welcome-text{max-width:calc(100% - 220px)}}@media (max-width:1400px){.header-content h1.welcome-text{font-size:2.3rem;margin-right:150px;max-width:calc(100% - 180px);transform:translateY(50%)}}@media (max-width:1300px){.header-content h1.welcome-text{font-size:2.1rem;max-width:calc(100% - 160px)}}@media (max-width:1200px){.student-dashboard{margin-left:0;margin-right:0;margin-top:60px;padding:20px}.dashboard-header{align-items:center;flex-direction:column;gap:16px;min-height:auto;text-align:center}.student-info-corner{gap:6px;position:static;right:auto;top:auto}.header-right,.student-info-corner{justify-content:center;width:100%}.header-animation{height:130px;width:130px}.header-content h1.welcome-text{font-size:1.8rem;max-width:100%;padding-right:0}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (max-width:992px){.dashboard-header{gap:20px}.header-animation{height:120px;width:120px}.header-content h1.welcome-text{font-size:1.8rem;max-width:100%;padding-right:0}}@media (max-width:768px){.student-dashboard{margin-left:0;margin-right:0}.dashboard-header{flex-direction:column;gap:20px;min-height:auto;text-align:center}.student-info-corner{align-items:center;display:flex;flex-direction:column;font-size:.85rem;gap:6px;margin-bottom:6px;position:static;right:auto;top:auto}.header-right,.student-info-corner{justify-content:center;width:100%}.header-animation{height:110px;width:110px}.header-content h1.welcome-text{font-size:1.4rem;-webkit-hyphens:auto;hyphens:auto;line-height:1.35;margin-right:0;margin-top:10px;max-width:100%!important;overflow-wrap:break-word;padding-right:0!important;text-align:center;transform:translateY(-50%);word-break:break-word}.progress-content{flex-direction:column;gap:20px}.dashboard-grid,.quick-actions-row,.stats-grid{grid-template-columns:1fr}.create-schedule-content{flex-direction:column;gap:20px;text-align:center}.create-schedule-text h3{font-size:1.3rem}.highlighted-create-btn{font-size:1rem;padding:12px 25px}.refresh-btn{font-size:.85rem;padding:6px 12px}}body.dark-mode .student-dashboard{background:linear-gradient(135deg,#1e293b,#334155)}body.dark-mode .action-card,body.dark-mode .dashboard-card,body.dark-mode .dashboard-header{background:#334155;border-color:#475569;box-shadow:0 8px 25px #0000004d}body.dark-mode .header-content h1.welcome-text{color:#f1f5f9}body.dark-mode .current-date{color:#cbd5e1}body.dark-mode .card-header h3{color:#f1f5f9}body.dark-mode .activity-item,body.dark-mode .progress-item{background:#475569}body.dark-mode .activity-title,body.dark-mode .progress-item span{color:#f1f5f9}body.dark-mode .activity-date{color:#cbd5e1}body.dark-mode .stat-item{background:linear-gradient(135deg,#475569,#334155)}body.dark-mode .stat-label{color:#cbd5e1}body.dark-mode .action-card span{color:#f1f5f9}body.dark-mode .refresh-btn{background:linear-gradient(135deg,#1e40af,#1e3a8a);box-shadow:0 4px 15px #1e40af4d}body.dark-mode .refresh-btn:hover:not(:disabled){box-shadow:0 6px 20px #1e40af66}body.dark-mode .refresh-btn.refreshing{background:linear-gradient(135deg,#475569,#334155)}body.dark-mode .loading-indicator{color:#60a5fa}.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%}}.academic-setup-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:16px;box-shadow:0 4px 15px #f59e0b33;margin-bottom:25px;padding:25px;text-align:center}.setup-content h3{color:#92400e;font-size:1.3rem;font-weight:600;margin:0 0 10px}.setup-content p{color:#92400e;font-size:1rem;line-height:1.5;margin:0 0 20px}.setup-btn{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:12px;box-shadow:0 4px 15px #f59e0b4d;color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:10px;padding:12px 24px;transition:all .3s ease}.setup-btn:hover{box-shadow:0 8px 25px #f59e0b66;transform:translateY(-2px)}body.dark-mode .academic-setup-card{background:linear-gradient(135deg,#451a03,#78350f);border-color:#f59e0b}body.dark-mode .setup-content h3,body.dark-mode .setup-content p{color:#fef3c7}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes numberCount{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes sparkle{0%,to{opacity:.7;transform:scale(1) rotate(0deg)}50%{opacity:1;transform:scale(1.3) rotate(180deg)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes iconPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.1;transform:scale(1.2)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-5px)}60%{transform:translateY(-3px)}}.create-schedule-section{margin-bottom:30px}.create-schedule-card{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:20px;box-shadow:0 15px 35px #3b82f64d;padding:25px;transition:all .3s ease}.create-schedule-card:hover{box-shadow:0 20px 40px #3b82f666;transform:translateY(-3px)}.create-schedule-content{align-items:center;display:flex;gap:30px;justify-content:space-between}.create-schedule-text h3{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 8px}.create-schedule-text p{color:#ffffffe6;font-size:1rem;margin:0}.highlighted-create-btn{align-items:center;background:#fff;border:none;border-radius:12px;box-shadow:0 4px 15px #0000001a;color:#3b82f6;cursor:pointer;display:flex;font-size:1.1rem;font-weight:600;gap:10px;padding:15px 30px;transition:all .3s ease}.highlighted-create-btn:hover{background:#f8fafc;box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.review-stats-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);margin-top:20px}.review-stat-item{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:15px;overflow:hidden;padding:20px;position:relative;text-align:center;transition:all .3s ease}.review-stat-item:before{background:linear-gradient(90deg,#3b82f6,#8b5cf6,#06b6d4);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.review-stat-item:hover:before{transform:scaleX(1)}.review-stat-item:hover{box-shadow:0 10px 25px #0000001a;transform:translateY(-5px)}.review-stat-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:50%;box-shadow:0 4px 15px #3b82f64d;color:#fff;display:flex;font-size:1.2rem;height:50px;justify-content:center;margin:0 auto 15px;width:50px}.review-stat-content{text-align:center}.review-stat-number{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:#1e293b;font-size:2rem;font-weight:700;margin-bottom:5px}.review-stat-label{color:#64748b;font-size:.9rem;font-weight:500}.recent-reviews-list{display:flex;flex-direction:column;gap:15px;margin-top:20px}.review-item{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;padding:15px;position:relative;transition:all .3s ease}.review-item:hover{border-color:#3b82f6;box-shadow:0 5px 15px #0000001a;transform:translateX(-5px)}.review-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.review-type-badge{background:linear-gradient(135deg,#10b981,#059669);border-radius:8px;color:#fff;font-size:.8rem;font-weight:600;padding:4px 8px}.review-likes{align-items:center;color:#ef4444;display:flex;font-size:.9rem;font-weight:600;gap:5px}.review-entity-name{color:#1e293b;font-size:1rem;font-weight:600;margin-bottom:8px}.review-comment{color:#64748b;font-size:.9rem;line-height:1.4;margin-bottom:8px}.review-date{color:#94a3b8;font-size:.8rem;text-align:left}.no-reviews-message{color:#94a3b8;padding:40px 20px}.no-reviews-message svg{font-size:3rem;margin-bottom:15px;opacity:.5}.no-reviews-message span{display:block;font-size:1.1rem;font-weight:600;margin-bottom:8px}.no-reviews-message p{font-size:.9rem;opacity:.8}.show-more-reviews{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:15px;text-align:center}.show-more-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:25px;box-shadow:0 4px 15px #3b82f64d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .3s ease}.show-more-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 8px 25px #3b82f666;transform:translateY(-2px)}.review-item:not(:last-child){margin-bottom:15px}body.dark-mode .review-item,body.dark-mode .review-stat-item{background:linear-gradient(135deg,#1e293b,#334155);border-color:#475569}body.dark-mode .review-entity-name{color:#f1f5f9}body.dark-mode .review-comment{color:#cbd5e1}body.dark-mode .review-date{color:#64748b}@media (max-width:1200px){.progress-svg{height:170px;height:var(--progress-circle-height-tablet-large);width:170px;width:var(--progress-circle-height-tablet-large)}.progress-percentage{font-size:1.8rem}.item-value{font-size:1.35rem}.progress-item{padding:14px 16px}}@media (max-width:992px){.progress-svg{height:140px;height:var(--progress-circle-height-tablet);width:140px;width:var(--progress-circle-height-tablet)}.progress-percentage{font-size:1.6rem}}@media (max-width:768px){.progress-content{align-items:center;flex-direction:column;gap:18px}.progress-svg{height:130px;height:var(--progress-circle-height-mobile);width:130px;width:var(--progress-circle-height-mobile)}.progress-percentage{font-size:1.25rem}.progress-details{max-width:520px;width:100%}.progress-item{padding:12px 14px}.item-value{font-size:1.2rem}.progress-circle{padding:0}.progress-setup-message{flex-direction:column;gap:12px;padding:16px;text-align:center}.setup-icon{font-size:1.5rem}.setup-title{font-size:1rem}.setup-subtitle{font-size:.8rem}.setup-action-btn{font-size:.85rem;padding:12px;width:100%}}@media (max-width:480px){.progress-svg{height:110px;height:var(--progress-circle-height-mobile-small);width:110px;width:var(--progress-circle-height-mobile-small)}.progress-percentage{font-size:1.1rem}.progress-label{font-size:.9rem}.progress-sparkles{right:-12px;top:-12px}}.progress-circle,.progress-ring,.progress-svg{overflow:visible!important}.progress-svg{display:block}.progress-circle{position:relative}.progress-ring,.progress-svg{pointer-events:none;position:relative;z-index:1}.progress-svg{transform-origin:center}.progress-text{pointer-events:none;position:absolute;z-index:3}.progress-text:before{background:#fff;border-radius:50%;content:"";height:72%;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:72%;z-index:-1}body.dark-mode .progress-text:before{background:#1e293b}@media (max-width:768px){.progress-text:before{height:75%;width:75%}}.progress-sparkles{position:absolute;z-index:2}.progress-ring{backface-visibility:hidden;transform-origin:center;will-change:transform}.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{height:500px;object-fit:contain;width:500px}.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{height:30%;min-width:160px;width:100%}}.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:80%}}.signin-theme-toggle{align-self:flex-end;display:block;margin-top:1rem}.signup-and-theme{align-items:center;display:flex;gap:1rem;justify-content:space-between;width:100%}@media (min-width:769px){.signin-theme-toggle{bottom:20px;left:auto;margin:0;position:fixed;right:20px;top:auto;z-index:1000}.signup-and-theme{flex-direction:row;justify-content:space-between}}.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;margin:0 auto;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}.admin-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.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}.user-management{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;padding:20px}.user-management h2{color:#4a90e2;margin-bottom:20px}.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}.delete-button:disabled{background:#6c757d;cursor:not-allowed}.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}.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}.admin-dashboard .error-message,.admin-dashboard .success-message{animation:adminMessageFadeIn .3s,adminMessageFadeOut .3s 4.7s}@keyframes adminMessageFadeIn{0%{opacity:0}to{opacity:1}}@keyframes adminMessageFadeOut{0%{opacity:1}to{opacity:0}}.retry-button{background-color:#4a90e2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;margin-left:10px;padding:6px 12px}.retry-button:hover{background:#b91c1c;transform:translateY(-2px)}.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}.admin-user-detail-page{margin:0 auto;max-width:1200px;padding:20px}.admin-user-detail-page h1{border-bottom:2px solid #007bff;color:#333;margin-bottom:20px;padding-bottom:10px}.admin-user-detail-page h2{color:#555;margin:20px 0 15px}.user-info{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin-bottom:20px;padding:15px}.user-info p{color:#666;margin:5px 0}.user-info strong{color:#333}.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}.comments-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.comment-item{background:#fafafa;border:1px solid #ddd;border-radius:6px;margin-bottom:15px;padding:15px}.comment-item h4{color:#007bff;font-size:16px;margin:0 0 10px}.comment-item p{color:#666;line-height:1.4;margin:5px 0}.comment-text{background:#fff;border-left:3px solid #007bff;border-radius:4px;font-style:italic;margin:10px 0;padding:10px}.comment-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.recalculate-button{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.recalculate-button:hover{background:#218838}.recalculate-button:disabled{background:#6c757d;cursor:not-allowed}.recalculation-message{border-radius:4px;margin:10px 0;padding:10px}.recalculation-message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.recalculation-message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.loading-message,.no-comments-message{color:#666;font-style:italic;margin:20px 0;text-align:center}.no-comments-message{background:#f8f9fa;border-radius:6px;padding:20px}.admin-reports-container{direction:rtl;margin:0 auto;max-width:1200px;padding:20px}.admin-reports-header{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:16px;box-shadow:0 10px 30px #00000026;color:#fff;margin-bottom:30px;padding:30px}.header-content h1{font-size:2.5rem;font-weight:700;margin-bottom:10px}.header-content p{font-size:1.1rem;margin:0;opacity:.9}.stats-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:30px}.admin-reports-container .stat-card .stat-number{color:#fff}.admin-reports-container .stat-card .stat-label{color:#ffffffe6}.stat-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:12px;overflow:hidden;padding:20px;position:relative;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.stat-card:before{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.stat-card:hover{box-shadow:0 15px 35px #00000040;transform:translateY(-5px)}.stat-number{font-size:2.5rem;font-weight:700;margin-bottom:8px;text-shadow:0 2px 4px #0000001a}.stat-label,.stat-number{position:relative;z-index:2}.stat-label{font-size:.9rem;font-weight:500;opacity:.95}.stat-card.pending{background:#f59e0b40;border-color:#f59e0b66}.stat-card.pending .stat-number{color:#fff}.stat-card.reviewed{background:#3b82f640;border-color:#3b82f666}.stat-card.reviewed .stat-number{color:#fff}.stat-card.resolved{background:#10b98140;border-color:#10b98166}.stat-card.resolved .stat-number{color:#fff}.filter-section{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 15px #00000014;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px}.filter-select{background:#fff;border:2px solid #cbd5e1;border-radius:8px;color:#374151;cursor:pointer;font-size:1rem;font-weight:500;min-width:200px;padding:12px 20px;transition:all .3s ease}.filter-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none;transform:translateY(-1px)}.refresh-button{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:8px;box-shadow:0 4px 12px #3b82f64d;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease}.refresh-button:hover{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 8px 20px #3b82f666;transform:translateY(-2px)}.refresh-button span{font-size:1.1rem}.reports-list{display:flex;flex-direction:column;gap:20px}.report-card{background:#fff;border:1px solid #f3f4f6;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden;padding:25px;position:relative;transition:all .3s ease}.report-card:before{background:linear-gradient(90deg,#3b82f6,#1d4ed8);content:"";height:4px;left:0;position:absolute;right:0;top:0}.report-card:hover{box-shadow:0 15px 40px #00000026;transform:translateY(-5px)}.report-card.pending:before{background:linear-gradient(90deg,#f59e0b,#f97316)}.report-card.reviewed:before{background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.report-card.resolved:before{background:linear-gradient(90deg,#10b981,#059669)}.report-header{border-bottom:2px solid #f3f4f6;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.report-header,.report-meta{align-items:center;display:flex}.report-meta{gap:15px}.report-id{align-items:center;color:#374151;display:flex;font-weight:600}.id-label{color:#667eea;font-weight:700;margin-left:4px}.report-status{border-radius:20px;box-shadow:0 2px 8px #00000026;color:#fff;font-size:.85rem;font-weight:600;letter-spacing:.5px;overflow:hidden;padding:8px 16px;position:relative;text-transform:uppercase}.report-status:before{background:linear-gradient(135deg,#fff3,#ffffff0d);bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.report-status span{position:relative;z-index:2}.report-date{color:#6b7280;font-size:.9rem}.report-content{margin-bottom:20px}.report-details-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.detail-item{display:flex;flex-direction:column;gap:5px}.detail-label{color:#6b7280;font-size:.85rem;font-weight:500}.detail-value{color:#374151;font-weight:600}.detail-value.email{color:#667eea;font-family:monospace}.reason-badge{background:#fef3c7;border-radius:6px;color:#92400e;display:inline-block;font-size:.8rem;padding:4px 8px}.review-content{background:#f8fafc;border-left:4px solid #667eea;border-radius:12px;padding:20px}.review-content h4{color:#374151;font-size:1.1rem;margin-bottom:15px}.review-text-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:15px}.review-text{color:#4b5563;font-size:.95rem;line-height:1.6;margin:0}.admin-notes{background:#eff6ff;border-left:4px solid #3b82f6;border-radius:12px;margin-top:15px;padding:20px}.admin-notes h4{color:#1e40af;font-size:1rem;margin-bottom:10px}.admin-notes p{color:#1e3a8a;line-height:1.5;margin:0}.report-actions{display:flex;gap:12px;justify-content:flex-end}.action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease}.review-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 4px 12px #3b82f64d;color:#fff}.review-btn:hover{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 8px 20px #3b82f666;transform:translateY(-2px)}.resolve-btn{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b9814d;color:#fff}.resolve-btn:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 8px 20px #10b98166;transform:translateY(-2px)}.no-reports{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:60px 20px;text-align:center}.no-reports-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.no-reports h3{color:#374151;font-size:1.5rem;margin-bottom:10px}.no-reports p{color:#6b7280;font-size:1rem}.admin-reports-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f4f6;border-radius:50%;border-top-color:#667eea;height:50px;margin-bottom:20px;width:50px}.admin-reports-loading p{color:#6b7280;font-size:1.1rem}.admin-reports-error{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.error-icon{font-size:4rem;margin-bottom:20px}.admin-reports-error h3{color:#dc2626;font-size:1.5rem;margin-bottom:10px}.admin-reports-error p{color:#6b7280;font-size:1rem;margin-bottom:20px}body.modal-open,html.modal-open{height:100%!important;margin:0!important;overflow:hidden!important;padding:0!important;position:fixed!important;width:100%!important}.modal-overlay{-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;height:100vh;margin:0;overflow:hidden;padding:0;touch-action:none;width:100vw}body.modal-open{height:100%!important;overflow:hidden!important;position:fixed!important;width:100%!important}.action-modal{animation:modalSlideIn .3s ease;background:#fff;border-radius:16px;box-shadow:0 25px 50px #00000040;display:flex;flex-direction:column;margin:0;max-height:80vh;max-width:500px;overflow:hidden;position:relative;width:90%;z-index:1001}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;border-radius:16px 16px 0 0;display:flex;flex-shrink:0;justify-content:space-between;padding:25px 30px}.modal-header h3{color:#374151;font-size:1.3rem;margin:0}.close-modal{background:none;border:none;border-radius:50%;color:#6b7280;cursor:pointer;font-size:1.5rem;padding:5px;transition:all .3s ease}.close-modal:hover{background:#f3f4f6;color:#374151}.modal-content{background:#fff;flex:1 1;max-height:calc(80vh - 140px);overflow-y:auto;padding:30px}.report-summary{background:#f8fafc;border-radius:8px;margin-bottom:20px;padding:20px}.report-summary p{color:#374151;margin:8px 0}.notes-section{margin-bottom:20px}.notes-section label{color:#374151;display:block;font-weight:600;margin-bottom:10px}.notes-section textarea{border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:1rem;padding:15px;resize:vertical;transition:border-color .3s ease;width:100%}.notes-section textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.modal-actions{background:#fff;border-radius:0 0 16px 16px;border-top:1px solid #e5e7eb;flex-shrink:0;gap:12px;justify-content:flex-end;padding:20px 30px}.cancel-btn{background:#f3f4f6;border:none;border-radius:8px;color:#374151;cursor:pointer;font-weight:600;padding:12px 20px;transition:all .3s ease}.cancel-btn:hover:not(:disabled){background:#e5e7eb}.confirm-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 20px;transition:all .3s ease}.confirm-btn:hover:not(:disabled){background:#2563eb}.modal-actions .resolve-btn{background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 20px;transition:all .3s ease}.modal-actions .resolve-btn:hover:not(:disabled){background:#059669}.modal-actions button:disabled{cursor:not-allowed;opacity:.6;transform:none!important}@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;vertical-align:middle;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:90%}.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}.admin-reports-container{box-sizing:border-box;margin:0;padding:10px;width:100%}.admin-reports-header{border-radius:12px;margin-bottom:20px;padding:20px 15px}.header-content h1{font-size:1.8rem;margin-bottom:8px}.header-content p{font-size:1rem}.stats-cards{gap:12px;grid-template-columns:repeat(2,1fr);margin-top:20px}.stat-card{border-radius:8px;padding:15px 10px}.stat-number{font-size:1.8rem;margin-bottom:5px}.stat-label{font-size:.8rem}.filter-section{align-items:stretch;flex-direction:column;gap:15px;margin-bottom:20px;padding:15px}.filter-select{min-width:auto;padding:12px 15px;width:100%}.refresh-button{justify-content:center;padding:12px 15px;width:90%}.report-card{border-radius:12px;margin-bottom:15px;padding:20px 15px}.report-header{gap:10px;margin-bottom:15px;padding-bottom:10px}.report-header,.report-meta{align-items:flex-start;flex-direction:column}.report-meta{gap:8px;width:100%}.report-id{font-size:.9rem}.report-status{font-size:.75rem;padding:4px 8px}.report-date{font-size:.8rem}.report-details-grid{gap:12px;grid-template-columns:1fr;margin-bottom:15px}.detail-item{gap:3px}.detail-label{font-size:.8rem}.detail-value{font-size:.9rem}.review-content{border-radius:8px;padding:15px}.review-content h4{font-size:1rem;margin-bottom:10px}.review-text-container{padding:12px}.review-text{font-size:.9rem}.admin-notes{border-radius:8px;margin-top:10px;padding:15px}.admin-notes h4{font-size:.9rem;margin-bottom:8px}.admin-notes p{font-size:.85rem}.report-actions{flex-direction:column;gap:8px}.action-btn{font-size:.9rem;justify-content:center;padding:12px 15px;width:100%}.action-modal{margin:10px;max-height:90vh;max-width:none;width:95%}.modal-header{padding:20px 15px}.modal-header h3{font-size:1.1rem}.modal-content{max-height:calc(90vh - 120px);padding:20px 15px}.report-summary{margin-bottom:15px;padding:15px}.report-summary p{font-size:.9rem;margin:6px 0}.notes-section textarea{font-size:.9rem;padding:12px;width:100%}.modal-actions{flex-direction:column;gap:8px;padding:15px}.modal-actions button{padding:12px 15px;width:100%}.admin-user-detail-page{padding:10px}.comment-actions{flex-direction:column}.delete-button,.recalculate-button{margin-bottom:5px;width:100%}}@media (max-width:480px){.admin-reports-container{padding:5px}.admin-reports-header{padding:15px 10px}.header-content h1{font-size:1.5rem}.header-content p{font-size:.9rem}.stats-cards{gap:10px;grid-template-columns:1fr}.stat-card{padding:12px 8px}.stat-number{font-size:1.6rem}.stat-label{font-size:.75rem}.filter-section{padding:12px}.report-card{padding:15px 10px}.report-details-grid{gap:10px}.detail-label{font-size:.75rem}.detail-value{font-size:.85rem}.review-content{padding:12px}.review-text-container{padding:10px}.action-btn,.review-text{font-size:.85rem}.action-btn{padding:10px 12px}.action-modal{margin:5px;width:98%}.modal-content,.modal-header{padding:15px 10px}.modal-actions{padding:10px}}.app.dark-mode .admin-reports-header{background:linear-gradient(135deg,#1f2937,#374151)}.app.dark-mode .stat-card{background:#ffffff1a;border-color:#fff3}.app.dark-mode .stat-card.pending{background:#f59e0b33;border-color:#f59e0b4d}.app.dark-mode .stat-card.pending .stat-number{color:#fbbf24}.app.dark-mode .stat-card.reviewed{background:#3b82f633;border-color:#3b82f64d}.app.dark-mode .stat-card.reviewed .stat-number{color:#60a5fa}.app.dark-mode .stat-card.resolved{background:#10b98133;border-color:#10b9814d}.app.dark-mode .stat-card.resolved .stat-number{color:#34d399}.app.dark-mode .filter-section{background:linear-gradient(135deg,#1f2937,#374151);border:1px solid #4b5563}.app.dark-mode .filter-select{background:#374151;border-color:#4b5563;color:#e5e7eb}.app.dark-mode .refresh-button{background:linear-gradient(135deg,#1e40af,#1d4ed8)}.app.dark-mode .refresh-button:hover{background:linear-gradient(135deg,#1d4ed8,#3b82f6)}.app.dark-mode .report-card{background:#1f2937;border-color:#374151;color:#e5e7eb}.app.dark-mode .report-header{border-bottom-color:#374151}.app.dark-mode .report-id{color:#e5e7eb}.app.dark-mode .detail-label{color:#9ca3af}.app.dark-mode .detail-value{color:#e5e7eb}.app.dark-mode .review-content{background:#374151;border-left-color:#667eea}.app.dark-mode .review-text-container{background:#1f2937;border-color:#4b5563}.app.dark-mode .review-text{color:#d1d5db}.app.dark-mode .admin-notes{background:#1e3a8a;border-left-color:#3b82f6}.app.dark-mode .admin-notes h4{color:#93c5fd}.app.dark-mode .admin-notes p{color:#bfdbfe}.app.dark-mode .action-modal,.app.dark-mode .no-reports{background:#1f2937;color:#e5e7eb}.app.dark-mode .modal-header{border-bottom-color:#374151}.app.dark-mode .report-summary{background:#374151}.app.dark-mode .notes-section textarea{background:#374151;border-color:#4b5563;color:#e5e7eb}.app.dark-mode .modal-actions{border-top-color:#374151}.app.dark-mode .cancel-btn{background:#374151;color:#e5e7eb}.app.dark-mode .cancel-btn:hover:not(:disabled){background:#4b5563}.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;position:relative}.nav-logo h2{color:#4a90e2;font-size:1.5rem;margin:0}.nav-links{align-items:center;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;white-space:nowrap}.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}.mobile-menu-toggle{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:4px;padding:5px}.mobile-menu-toggle span{background-color:#4a90e2;border-radius:2px;height:3px;transition:all .3s ease;width:25px}.mobile-menu-toggle.active span:first-child{transform:rotate(45deg) translate(5px,5px)}.mobile-menu-toggle.active span:nth-child(2){opacity:0}.mobile-menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}@media (max-width:768px){.admin-navbar{flex-wrap:wrap;padding:10px 15px}.nav-logo h2{font-size:1.2rem}.mobile-menu-toggle{display:flex}.nav-links{border-top:1px solid #eee;display:none;flex-direction:column;gap:10px;margin-top:15px;padding-top:15px;width:100%}.nav-links.active{display:flex}.nav-links a{background-color:#f8f9fa;border-radius:6px;margin:0;padding:12px;text-align:center;width:100%}.nav-links a.active{background-color:#4a90e21a;color:#4a90e2;margin:0}.nav-logout{margin:0}.admin-logout-btn{font-size:16px;padding:10px 20px}}@media (max-width:480px){.admin-navbar{padding:8px 10px}.nav-logo h2{font-size:1rem}.nav-links a{font-size:14px;padding:10px}.admin-logout-btn{font-size:14px;padding:8px 16px}}.app.dark-mode .admin-navbar{background-color:#1f2937;box-shadow:0 2px 10px #0000004d}.app.dark-mode .nav-logo h2{color:#60a5fa}.app.dark-mode .nav-links a{color:#e5e7eb}.app.dark-mode .nav-links a:hover{background-color:#374151}.app.dark-mode .nav-links a.active{background-color:#60a5fa33;color:#60a5fa}.app.dark-mode .mobile-menu-toggle span{background-color:#60a5fa}.app.dark-mode .nav-links{border-top-color:#374151}.app.dark-mode .nav-links a{background-color:#374151}.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:Cairo,Noto Sans Arabic,Segoe UI,Tahoma,Arial,sans-serif;min-height:100vh}.process-step-page button,.process-step-page input,.process-step-page label,.process-step-page select,.process-step-page textarea{font-family:inherit;font-size:.95rem;line-height:1.6}.process-step-page select,.process-step-page textarea{background-color:#fff;border-color:#d1d5db;border-radius:8px;color:#111827}.process-step-page textarea::placeholder{color:#6b7280;opacity:.9}body.dark-mode .process-step-page button,body.dark-mode .process-step-page input,body.dark-mode .process-step-page label,body.dark-mode .process-step-page select,body.dark-mode .process-step-page textarea{color:#e5e7eb}body.dark-mode .process-step-page select,body.dark-mode .process-step-page textarea{background-color:#1f2937;border-color:#374151}body.dark-mode .process-step-page textarea::placeholder{color:#9ca3af}.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}}.gender-switch-container{align-items:center;background:#ffffffe6;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 1px 3px #0000001a;display:inline-flex;font-family:inherit;gap:6px;padding:4px 8px}.gender-label{color:#666;cursor:pointer;font-size:14px;font-weight:500;transition:color .3s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.gender-label.active{color:#4296f4;font-weight:600}.gender-switch{--button-width:2.8em;--button-height:1.6em;--toggle-diameter:1.2em;--button-toggle-offset:calc((var(--button-height) - var(--toggle-diameter))/2);--toggle-shadow-offset:6px;--toggle-wider:2.4em;--color-grey:#ccc;--color-green:#4296f4;cursor:pointer;flex-shrink:0;height:var(--button-height);width:var(--button-width)}.gender-slider,.gender-switch{display:inline-block;position:relative}.gender-slider{background-color:var(--color-grey);border-radius:calc(var(--button-height)/2);height:100%;transition:all .3s ease-in-out;width:100%}.gender-slider:after{background-color:#fff;border-radius:calc(var(--toggle-diameter)/2);box-shadow:var(--toggle-shadow-offset) 0 calc(var(--toggle-shadow-offset)*4) #0000001a;content:"";display:inline-block;height:var(--toggle-diameter);position:absolute;top:var(--button-toggle-offset);transform:translateX(var(--button-toggle-offset));transition:all .3s ease-in-out;width:var(--toggle-diameter)}.gender-switch input[type=checkbox]:checked+.gender-slider{background-color:var(--color-green)}.gender-switch input[type=checkbox]:checked+.gender-slider:after{box-shadow:calc(var(--toggle-shadow-offset)*-1) 0 calc(var(--toggle-shadow-offset)*4) #0000001a;transform:translateX(calc(var(--button-width) - var(--toggle-diameter) - var(--button-toggle-offset)))}.gender-switch input[type=checkbox]{cursor:pointer;height:100%;inset:0;margin:0;opacity:0;position:absolute;width:100%;z-index:2}.gender-switch input[type=checkbox]:active+.gender-slider:after{width:var(--toggle-wider)}.gender-switch input[type=checkbox]:checked:active+.gender-slider:after{transform:translateX(calc(var(--button-width) - var(--toggle-wider) - var(--button-toggle-offset)))}[data-theme=dark] .gender-label{color:#b0b0b0}[data-theme=dark] .gender-label.active{color:#4296f4}[data-theme=dark] .gender-slider{--color-grey:#555}.course-planner-gender-switch{direction:ltr}.course-planner-gender-switch .gender-label{font-size:13px}body.dark-mode .gender-switch-container{background:#ffffff1a}body.dark-mode .gender-label{color:#f9f9f9}body,html{box-sizing:border-box;margin:0;overflow-x:hidden;padding:0;width:100%}.theme-toggle-unregistered{align-items:center;align-self:flex-end;bottom:auto;display:none;justify-content:center;left:auto;margin:0 0 1rem;padding:10px 0;position:static;right:auto;top:auto;transform:none;transition:all .3s ease;z-index:9999}.theme-toggle-unregistered,body.dark-mode .theme-toggle-unregistered{align-self:flex-end!important;bottom:auto!important;clear:none!important;float:none!important;left:auto!important;margin:0 0 1rem!important;position:static!important;right:auto!important;top:auto!important;transform:none!important;z-index:9999!important}.gender-switch-section{align-items:center;background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:center;margin:1rem 0 2rem;padding:1rem}.theme-toggle-unregistered .theme-toggle-container{background:#0000!important;border:none!important;box-shadow:none!important;margin:0;padding:0}@media (max-width:768px){.theme-toggle-unregistered{align-self:flex-end;bottom:auto;display:flex;left:auto;margin:0 0 1rem;padding:8px 0;position:static;right:auto;top:auto;transform:none;z-index:9999}}@media (max-width:480px){.theme-toggle-unregistered{padding:6px 0}}@media (min-width:769px){.theme-toggle-unregistered{display:none!important}}.schedule-page{font-family:Tajawal,sans-serif}@media (max-width:768px){.new-schedule-main-content,.page-content,.schedule-page{overflow-x:hidden;position:relative}.student-type-selection{transform:translateZ(0);will-change:auto}.inline-gender-switch{transform:translateZ(0) scale(1);will-change:auto}.form-section{position:relative;z-index:1}@supports (-webkit-touch-callout:none){.inline-gender-switch,.student-type-selection{-webkit-backface-visibility:hidden;-webkit-perspective:1000px;-webkit-transform:translateZ(0)}}}.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;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}.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%}.mobile-instruction{background:#e3f2fd;border:1px solid #2196f3;border-radius:8px;margin-bottom:16px;padding:12px 16px;text-align:center}.mobile-instruction p{color:#1976d2;font-size:14px;font-weight:500;margin:0}body.dark-mode .mobile-instruction{background:#1e3a5f;border-color:#64b5f6}body.dark-mode .mobile-instruction p{color:#90caf9}.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}@media (max-width:768px){.course-dropdown{width:100%}.course-dropdown .css-1pndypt-Input{display:none!important}.course-dropdown .css-26l3qy-menu{border-radius:12px!important;box-shadow:0 8px 32px #0000004d!important;left:50%!important;max-height:70vh!important;position:fixed!important;top:50%!important;transform:translate(-50%,-50%)!important;width:90vw!important;z-index:10000!important}.course-dropdown .css-1n7v3ny-option,.course-dropdown .css-9gakcf-option{align-items:center!important;cursor:pointer!important;display:flex!important;font-size:16px!important;min-height:48px!important;padding:12px 16px!important}.course-dropdown .css-1rhbuit-multiValue{font-size:14px!important;margin:4px!important;padding:6px 8px!important}.course-dropdown .css-1pahdxg-control,.course-dropdown .css-1s2u09g-control{min-height:48px!important;padding:8px 12px!important}.course-dropdown .css-14el2xx-placeholder{font-size:16px!important;margin-right:16px!important}}@media (max-width:480px){.course-dropdown .css-26l3qy-menu{max-height:80vh!important;width:95vw!important}.course-dropdown .css-1n7v3ny-option,.course-dropdown .css-9gakcf-option{font-size:15px!important;padding:14px 16px!important}}.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{align-items:center;display:flex;flex-direction:column;font-size:.9rem;gap:.3rem;text-align:center}.instructor-filters{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;margin:2rem 0;padding:1.5rem}.instructor-filters-header{border-bottom:2px solid #e2e8f0;margin-bottom:2rem;padding-bottom:1.5rem;text-align:center}.instructor-filters-header h3{color:#1e293b;font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.instructor-filters-header p{color:#64748b;font-size:1rem;line-height:1.5;margin:0}.instructor-filter-groups{display:flex;flex-direction:column;gap:1.5rem}.instructor-filter-group{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;overflow:hidden;transition:all .3s ease}.instructor-filter-group:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.group-header{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;cursor:pointer;display:flex;gap:20px;justify-content:space-between;padding:1.25rem 1.5rem}.group-title-section{align-items:center;display:flex;gap:.75rem}.group-title{color:#fff;font-size:1.25rem;font-weight:600;margin:0}.instructor-count{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:20px;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.group-actions{align-items:center;display:flex;gap:.5rem}.group-collapse-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;padding:.5rem;transition:all .3s ease}.group-collapse-btn:hover{background:#ffffff4d;transform:scale(1.05)}.group-collapse-btn.collapsed .collapse-icon{transform:rotate(-90deg)}.collapse-icon{display:inline-block;font-size:.875rem;transition:transform .3s ease}.group-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;text-decoration:none;transition:all .3s ease}.group-btn.primary{background:#10b981;color:#fff;font-family:Tajawal,sans-serif}.group-btn.primary:hover{background:#059669;transform:translateY(-1px)}.group-btn.secondary{background:#f59e0b;color:#fff;font-family:Tajawal,sans-serif}.group-btn.secondary:hover{background:#d97706;transform:translateY(-1px)}.btn-icon{font-family:Tajawal,sans-serif;font-size:1rem}.group-content{max-height:1000px;overflow:hidden;transition:max-height .5s ease}.group-content.collapsed{max-height:0}.instructor-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));max-height:380px;overflow-y:auto;overscroll-behavior:contain;padding:1.5rem}.instructor-grid::-webkit-scrollbar{width:8px}.instructor-grid::-webkit-scrollbar-track{background:#f1f5f9;border-radius:8px}.instructor-grid::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:8px}.instructor-grid::-webkit-scrollbar-thumb:hover{background:#94a3b8}body.dark-mode .instructor-grid::-webkit-scrollbar-track{background:#0f172a}body.dark-mode .instructor-grid::-webkit-scrollbar-thumb{background:#334155}body.dark-mode .instructor-grid::-webkit-scrollbar-thumb:hover{background:#475569}@media (max-width:768px){.instructor-grid{max-height:300px}}.instructor-card{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;display:flex;justify-content:space-between;overflow:hidden;padding:1rem;position:relative;transition:all .3s ease}.instructor-card:before{background:linear-gradient(90deg,#10b981,#3b82f6);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.instructor-card:hover:before{transform:scaleX(1)}.instructor-card.included{background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border-color:#10b981}.instructor-card.excluded{background:linear-gradient(135deg,#fef2f2,#fef2f2);border-color:#ef4444;opacity:.7}.instructor-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.instructor-info{align-items:center;display:flex;flex:1 1;gap:1rem}.instructor-checkbox{align-items:center;display:flex;position:relative}.instructor-checkbox input[type=checkbox]{cursor:pointer;height:0;opacity:0;position:absolute;width:0}.new-schedule-page-checkmark{fill:none!important;background-color:#e3f2fd!important;border:3px solid #1976d2!important;border-radius:8px!important;box-shadow:0 2px 8px #00000026!important;box-shadow:inset 0 1px 3px #0000001a,0 2px 8px #00000026!important;cursor:pointer!important;display:block!important;height:28px!important;left:auto!important;position:relative!important;top:auto!important;transition:all .3s ease!important;width:28px!important}.instructor-checkbox:hover .new-schedule-page-checkmark{background-color:#bbdefb!important;border-color:#1565c0!important;box-shadow:inset 0 1px 3px #0000001a,0 4px 12px #0003!important;transform:scale(1.05)!important}.instructor-checkbox input:checked~.new-schedule-page-checkmark{background-color:#1976d2!important;border-color:#059669!important;box-shadow:inset 0 1px 3px #0003,0 4px 12px #1976d266!important;transform:scale(1.1)!important}.new-schedule-page-checkmark:after{color:#fff!important;content:"✓"!important;display:none!important;font-size:18px!important;font-weight:700!important;left:50%!important;line-height:1!important;position:absolute!important;text-shadow:0 1px 2px #0000004d!important;top:50%!important;transform:translate(-50%,-50%)!important}.instructor-checkbox input:checked~.new-schedule-page-checkmark:after{display:block!important}.instructor-details{display:flex;flex-direction:column;gap:.25rem}.instructor-name{color:#1e293b;font-size:1rem;font-weight:600}.instructor-type{background-color:#e2f2ff;border-radius:10px;color:#0b3d62;font-size:12px;font-weight:600;height:20px;line-height:20px;margin-inline-start:8px;min-width:64px;padding:0 6px;white-space:nowrap}.instructor-status,.instructor-type{align-items:center;display:inline-flex;justify-content:center}.instructor-status{border-radius:12px;font-size:.75rem;font-weight:500;letter-spacing:.5px;padding:.25rem .5rem;text-transform:uppercase}.instructor-card.included .instructor-status{background:#dcfce7;color:#166534}.instructor-card.excluded .instructor-status{background:#fee2e2;color:#991b1b}.instructor-actions{display:flex;gap:.5rem}.instructor-rating-btn{background:linear-gradient(135deg,#f59e0b,#d97706);font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1rem;text-decoration:none;white-space:nowrap}.instructor-rating-btn:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 4px 12px #f59e0b66}.instructor-rating-btn .btn-icon{font-size:1rem}.no-instructors{color:#64748b;font-style:italic;padding:2rem;text-align:center}@media (max-width:768px){.instructor-filters{margin:1rem 0;padding:1rem}.group-header{align-items:flex-start;flex-direction:column;gap:1rem}.group-actions{justify-content:space-between;width:100%}.instructor-grid{gap:.75rem;grid-template-columns:1fr;padding:1rem}.instructor-card{align-items:stretch;flex-direction:column;gap:1rem}.instructor-info{justify-content:space-between}.instructor-actions{justify-content:center}.instructor-rating-btn{justify-content:center;width:100%}}.instructor-card{animation:slideIn .3s ease forwards}.instructor-card:first-child{animation-delay:.1s}.instructor-card:nth-child(2){animation-delay:.2s}.instructor-card:nth-child(3){animation-delay:.3s}.instructor-card:nth-child(4){animation-delay:.4s}.instructor-card:nth-child(5){animation-delay:.5s}.popup-overlay{z-index:10000}.popup-content{background:#fff;box-shadow:0 10px 30px #0000004d;max-height:80vh;padding:30px}.popup-content h3{font-size:1.5em;margin-bottom:20px}.popup-content p{color:#555;line-height:1.6;margin:10px 0}.notifications-container{display:flex;flex-direction:column;gap:10px;left:50%;max-width:500px;top:1.5rem;transform:translateX(-50%);width:90%;z-index:9999}@media (max-width:768px){.notifications-container{bottom:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));left:1rem;max-width:none;right:1rem;top:auto;transform:none;width:auto}.custom-notification{border-radius:12px;margin-bottom:.5rem}.notification-content{padding:1rem}.custom-notification p{font-size:.9rem}}.custom-notification{animation:slideDown .5s ease-out forwards;box-shadow:0 4px 15px #00000040;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;width:100%}@media (max-width:768px){.custom-notification{animation:slideUp .5s ease-out forwards}}.custom-notification:hover{box-shadow:0 6px 20px #00000059;transform:scale(1.02)}.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;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;font-size:.95rem;padding-right:15px;text-align:right}.custom-notification p:after{content:"انقر في أي مكان لإغلاق هذه الرسالة";font-size:.75rem;font-weight:400;margin-top:.3rem;opacity:.7}.notification-close{background:#0000001a;color:#555;font-size:1.4rem;font-weight:700;gap:15px;height:28px;margin-right:.8rem;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;gap:12px;justify-content:center;margin-bottom:1.5rem;min-height:48px;padding:1rem;position:relative;transition:all .3s ease}.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}.inline-gender-switch{margin-left:1rem;margin-right:auto;position:relative;right:auto;top:auto;transform:none}@media (max-width:768px){.inline-gender-switch{align-self:center;margin:0;position:static}.student-type-selection{position:static;transform:none}.form-section{overflow:visible;position:static}.student-type-selection{align-items:center;display:flex;flex-direction:column;gap:1rem;padding-right:0}.course-cell p{font-size:.5rem}}@media (max-width:480px){.student-type-selection{padding-right:0}.inline-gender-switch{margin-left:.5rem;transform:scale(.9);transform-origin:center}}.graduate-checkbox{margin:0 auto}.graduate-checkbox input[type=checkbox]{accent-color:#2fd34d;cursor:pointer;height:18px;width:18px}.checkbox-label{background-color:#e5e7eb;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}}.schedule-tips{align-items:flex-start;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:1px solid #bbdefb;border-radius:15px;box-shadow:0 4px 12px #00000014;direction:rtl;display:flex;gap:1rem;margin:1.5rem auto;max-width:100%;padding:1.5rem;transition:all .3s ease;width:calc(100% - 2rem)}body.dark-mode .schedule-tips{background:linear-gradient(135deg,#1e40af,#1e3a8a);border:1px solid #3b82f6;box-shadow:0 4px 12px #0000004d}body.dark-mode .schedule-tips:hover{box-shadow:0 6px 16px #0006}.schedule-tips:hover{box-shadow:0 6px 16px #0000001f;transform:translateY(-2px)}.tip-icon{align-items:center;background:#fffc;border-radius:50%;box-shadow:0 2px 8px #0000001a;display:flex;font-size:2rem;height:3rem;justify-content:center;min-width:3rem;text-align:center;width:3rem}body.dark-mode .tip-icon{background:#ffffff26;box-shadow:0 2px 8px #0000004d}.tip-content{flex:1 1;text-align:right}.tip-content h4{align-items:center;color:#1565c0;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;margin:0 0 .75rem}.tip-content p{color:#424242;font-size:.95rem;line-height:1.5;margin:0 0 .75rem}.tip-content ul{color:#555;margin:0 0 .75rem;padding-right:1.25rem}.tip-content li{font-size:.9rem;line-height:1.4;margin-bottom:.5rem}.tip-content li strong{color:#1565c0;font-weight:600}.tip-content small{color:#666;display:block;font-size:.85rem;font-style:italic;line-height:1.3;margin-top:.5rem}body.dark-mode .tip-content h4{color:#60a5fa}body.dark-mode .tip-content p{color:#e5e7eb}body.dark-mode .tip-content ul{color:#d1d5db}body.dark-mode .tip-content li strong{color:#60a5fa}body.dark-mode .tip-content small{color:#9ca3af}@media (max-width:768px){.schedule-tips{align-items:center;flex-direction:column;margin:1rem 0;padding:1.25rem;text-align:center}.tip-icon{margin-bottom:.5rem}.tip-content{text-align:center}.tip-content h4{font-size:1rem;justify-content:center}.tip-content li,.tip-content p{font-size:.9rem}.tip-content ul{padding-right:1rem;text-align:right}}@media (max-width:480px){.schedule-tips{margin:.75rem 0;padding:1rem}.tip-icon{font-size:1.5rem;height:2.5rem;width:2.5rem}.tip-content h4{font-size:.95rem}.tip-content li,.tip-content p{font-size:.85rem}.tip-content small{font-size:.8rem}}.selected-days-display{direction:rtl;margin-top:10px;text-align:center}.selected-days-display>span:first-child{color:#333;display:block;font-size:.9rem;font-weight:500;margin-bottom:8px}.selected-day-tag{align-items:center;background-color:#e3f2fd;border:1px solid #bbdefb;border-radius:15px;color:#0277bd;display:inline-flex;font-size:.85rem;font-weight:500;margin:2px 4px;padding:4px 8px;transition:all .2s ease}.selected-day-tag:hover{background-color:#bbdefb;transform:translateY(-1px)}.remove-day-btn{align-items:center;background:none;border:none;border-radius:50%;color:#0277bd;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;height:18px;justify-content:center;margin-right:6px;padding:0;transition:all .2s ease;width:18px}.remove-day-btn:hover{background-color:#0277bd;color:#fff;transform:scale(1.1)}@media (max-width:768px){.selected-day-tag{font-size:.8rem;margin:2px 3px;padding:3px 6px}.remove-day-btn{font-size:1rem;height:16px;margin-right:4px;width:16px}}@media (max-width:480px){.selected-days-display>span:first-child{font-size:.8rem}.selected-day-tag{font-size:.75rem;margin:1px 2px;padding:2px 5px}}.compact-schedule-info{background-color:#e8f4fd;border-left:4px solid #007baa;border-radius:4px;color:#005a87;font-size:.9em;margin-bottom:10px;padding:8px;text-align:center}.compact-schedule-info small{font-weight:500}body.dark-mode .compact-schedule-info{background-color:#1a3a4a;border-left-color:#007baa;color:#87ceeb}.schedule-container{align-items:center;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;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-cell p{font-size:.8rem;margin:0;padding:0}.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}body.dark-mode .instructor-filters{background:linear-gradient(135deg,#1e293b,#334155);border-color:#475569}body.dark-mode .instructor-filter-group{background:#0f172a;border-color:#334155}body.dark-mode .group-header{background:linear-gradient(135deg,#1e40af,#1e3a8a)}body.dark-mode .instructor-card{background:#1e293b;border-color:#475569}body.dark-mode .instructor-card.included{background:linear-gradient(135deg,#064e3b,#065f46);border-color:#10b981}body.dark-mode .instructor-card.excluded{background:linear-gradient(135deg,#7f1d1d,#991b1b);border-color:#ef4444}body.dark-mode .instructor-name{color:#e2e8f0}body.dark-mode .instructor-status{background:#1e293b;color:#e2e8f0}body.dark-mode .schedule-container{background-color:#1f2937}body.dark-mode .schedule-table{background-color:#111827}body.dark-mode .schedule-table th{background-color:#374151;border-color:#4b5563;color:#e5e7eb}body.dark-mode .schedule-table td{background-color:#111827;border-color:#4b5563;color:#e5e7eb}body.dark-mode .schedule-table td:first-child{background-color:#374151;color:#e5e7eb}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;cursor:pointer;flex:1 1;position:relative;transition:background-color .2s ease}.empty-cell:hover{background-color:#f8f9fa}.empty-cell:last-child{border-right:none}.click-here-text{color:#fffefe;font-size:.7rem;font-weight:800;margin-top:2px;text-align:center;-webkit-user-select:none;user-select: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%}}.instructor-rating-btn:active{box-shadow:0 2px 10px #007bff4d}.instructor-rating-btn:disabled{background:linear-gradient(135deg,#6c757d,#495057);box-shadow:0 2px 10px #6c757d4d}.instructor-rating-btn .btn-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.2));transition:transform .3s ease}.instructor-rating-btn:hover .btn-icon{transform:scale(1.1) rotate(5deg)}.instructor-rating-btn .btn-text{flex:1 1;transition:all .3s ease}.course-rating-btn:active{box-shadow:0 2px 10px #28a7454d}.course-rating-btn:disabled{background:linear-gradient(135deg,#6c757d,#495057);box-shadow:0 2px 10px #6c757d4d}.course-rating-btn .btn-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.2));transition:transform .3s ease}.course-rating-btn:hover .btn-icon{transform:scale(1.1) rotate(-5deg)}.course-rating-btn .btn-text{flex:1 1;transition:all .3s ease}.rating-note{color:#6c757d;transition:color .3s ease}.instructor-rating-section:hover .rating-note{color:#495057}.instructor-rating-btn.loading .btn-text{opacity:.7}.course-rating-btn.loading{pointer-events:none}.course-rating-btn.loading .btn-icon{animation:spin 1s linear infinite}.course-rating-btn.loading .btn-text{opacity:.7}.instructor-rating-btn.success{animation:successPulse .6s ease;background:linear-gradient(135deg,#28a745,#1e7e34)}body.dark-mode .popup-content{background-color:#1a202c;color:#f5f5f5}body.dark-mode .popup-content h3,body.dark-mode .popup-content p{color:#f5f5f5}body.dark-mode .instructor-rating-section{background:linear-gradient(135deg,#2d3748,#1a202c);border-color:#4a5568}body.dark-mode .instructor-rating-btn{background:linear-gradient(135deg,#3182ce,#2c5aa0);box-shadow:0 4px 15px #3182ce4d}body.dark-mode .instructor-rating-btn:hover{background:linear-gradient(135deg,#2c5aa0,#1e3a8a);box-shadow:0 6px 20px #3182ce66}body.dark-mode .instructor-rating-btn:disabled{background:linear-gradient(135deg,#4a5568,#2d3748);box-shadow:0 2px 10px #4a55684d}body.dark-mode .rating-note{color:#a0aec0}body.dark-mode .course-rating-btn:disabled{background:linear-gradient(135deg,#4a5568,#2d3748);box-shadow:0 2px 10px #4a55684d}@media (max-width:768px){.course-rating-btn,.instructor-rating-btn{font-size:14px;padding:10px 16px}.course-rating-btn .btn-icon,.instructor-rating-btn .btn-icon{font-size:16px}.rating-note{font-size:11px}.course-rating-section,.instructor-rating-section{margin:15px 0;padding:12px}}.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}.success-icon{color:#38a169;font-size:24px}.success-message p{color:#2f855a}.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{-ms-overflow-style:none;background:linear-gradient(135deg,#378ce71a,#007baa26 50%,#ffffffe6);display:flex;flex-direction:column;font-family:Inter,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;scrollbar-width:none}.comparePage::-webkit-scrollbar{display:none}.compare-header{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;margin-bottom:1rem;min-height:60px;position:relative;width:100%}.service-explanation-btn{position:static;z-index:10}.explanation-tooltip{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #fff3;border-radius:16px;box-shadow:0 20px 40px #00000026;opacity:0;padding:1.5rem;right:0;top:calc(100% + 10px);transform:translateY(-10px);transition:all .3s ease;visibility:hidden}.service-explanation-btn:hover .explanation-tooltip{opacity:1;transform:translateY(0);visibility:visible}.explanation-tooltip h4{border-bottom:2px solid #3b82f6;color:#1f2937;font-size:1.1rem;font-weight:700;margin:0 0 1rem;padding-bottom:.5rem}.explanation-tooltip ul{margin:0 0 1rem}.explanation-tooltip li{border-bottom:1px solid #f3f4f6;color:#4b5563;font-size:.9rem;padding:.4rem 0}.how-to-use{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-left:4px solid #3b82f6;border-radius:10px;color:#374151;font-size:.85rem;margin-top:1rem;padding:1rem}.how-to-use strong{color:#1f2937;font-weight:700}[data-theme=dark] .explanation-tooltip,body.dark-mode .explanation-tooltip{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .explanation-tooltip h4,body.dark-mode .explanation-tooltip h4{border-bottom-color:#60a5fa;color:#f9fafb}[data-theme=dark] .explanation-tooltip li,body.dark-mode .explanation-tooltip li{border-bottom-color:#4b5563;color:#d1d5db}[data-theme=dark] .how-to-use,body.dark-mode .how-to-use{background:linear-gradient(135deg,#1f2937,#374151);border-left-color:#60a5fa;color:#d1d5db}[data-theme=dark] .how-to-use strong,body.dark-mode .how-to-use strong{color:#f9fafb}[data-theme=dark] .info-btn,body.dark-mode .info-btn{background:#3498db;box-shadow:0 2px 8px #3498db33}[data-theme=dark] .info-btn:hover,body.dark-mode .info-btn:hover{background:#2980b9;box-shadow:0 4px 12px #3498db4d}.cmp-modal-overlay{align-items:center;background:#0000008c;display:flex;inset:0;isolation:isolate;justify-content:center;padding:20px;position:fixed;z-index:9999}.cmp-modal{background:var(--cmp-card,#fff);background:#fff;border:1px solid #0000001a;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 20px 60px #00000040;box-shadow:0 20px 60px #00000026;color:var(--cmp-text,#1f2937);color:#1f2937;max-height:90vh;overflow-y:auto;padding:24px;text-align:right;width:min(92vw,560px)}[data-theme=dark] .cmp-modal,body.dark-mode .cmp-modal{background:#111418;border:1px solid #ffffff14;box-shadow:0 20px 60px #00000073;color:#fff}.cmp-modal__header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;gap:12px;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}[data-theme=dark] .cmp-modal__header,body.dark-mode .cmp-modal__header{border-bottom-color:#ffffff1a}.cmp-modal__title{color:#1f2937;font-size:1.25rem;font-weight:700;margin:0}[data-theme=dark] .cmp-modal__title,body.dark-mode .cmp-modal__title{color:#fff}.cmp-modal__footer{border-top:2px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}[data-theme=dark] .cmp-modal__footer,body.dark-mode .cmp-modal__footer{border-top-color:#ffffff1a}.cmp-modal__body{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr}.cmp-field{grid-gap:8px;display:grid;gap:8px}.cmp-label{color:#374151;font-size:1rem;font-weight:600;margin-bottom:4px}[data-theme=dark] .cmp-label,body.dark-mode .cmp-label{color:#d1d5db}.cmp-select{background:#fff;border:2px solid #d1d5db;border-radius:12px;color:#1f2937;font-size:1rem;font-weight:500;outline:none;padding:14px 16px;transition:all .2s ease;width:100%}.cmp-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}[data-theme=dark] .cmp-select,body.dark-mode .cmp-select{background:#1f2937;border-color:#4b5563;color:#fff}[data-theme=dark] .cmp-select:focus,body.dark-mode .cmp-select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}.btn-ghost{background:#0000;border:2px solid #d1d5db;border-radius:12px;color:#6b7280;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 20px;transition:all .2s ease}.btn-ghost:hover{background:#f9fafb;border-color:#9ca3af;color:#374151}[data-theme=dark] .btn-ghost,body.dark-mode .btn-ghost{border-color:#4b5563;color:#9ca3af}[data-theme=dark] .btn-ghost:hover,body.dark-mode .btn-ghost:hover{background:#374151;border-color:#6b7280;color:#d1d5db}.btn-secondary{background:#f3f4f6;border:2px solid #d1d5db;border-radius:12px;color:#374151;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 20px;transition:all .2s ease}.btn-secondary:hover{background:#e5e7eb;border-color:#9ca3af}[data-theme=dark] .btn-secondary,body.dark-mode .btn-secondary{background:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .btn-secondary:hover,body.dark-mode .btn-secondary:hover{background:#4b5563;border-color:#6b7280}.btn-primary{background:#3b82f6;border:2px solid #2563eb;border-radius:12px;box-shadow:0 4px 12px #3b82f633;padding:12px 24px;transition:all .2s ease}.btn-primary:hover{background:#2563eb;box-shadow:0 6px 16px #3b82f64d}.btn-primary[disabled]{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.cmp-modal-overlay{padding:16px}.cmp-modal{max-height:85vh;padding:20px;width:95vw}.cmp-modal__footer{align-items:stretch;flex-direction:column-reverse;gap:8px}.btn-ghost,.btn-primary,.btn-secondary{font-size:1rem;padding:14px 20px}.cmp-select{font-size:1rem;padding:16px 18px}}@media (max-width:480px){.cmp-modal{padding:16px;width:98vw}.cmp-modal__title{font-size:1.1rem}.cmp-modal__body{gap:16px}.cmp-field{gap:6px}.cmp-label{font-size:.95rem}}@media (max-width:768px){.compare-header{align-items:center;flex-direction:column;gap:.75rem;justify-content:center;position:relative;width:100%}.service-explanation-btn{position:static;z-index:20}.explanation-tooltip{font-size:.85rem;padding:1rem;right:-120px;width:280px}}@media (max-width:480px){.compare-header{gap:.5rem}.explanation-tooltip{font-size:.8rem;padding:.75rem;right:-100px;width:250px}.info-btn{font-size:11px;padding:6px 10px}}.schedules-section-title{color:#2563eb;font-size:1.3rem;font-weight:600;margin:1.5rem 0 1rem;text-align:center}[data-theme=dark] .schedules-section-title,body.dark-mode .schedules-section-title{color:#60a5fa}.schedule-info{margin-top:.5rem}.schedule-info p{color:#4b5563;font-size:.85rem;margin:.2rem 0}[data-theme=dark] .schedule-info p,body.dark-mode .schedule-info p{color:#d1d5db}.saved-card{background:#fff;border:1px solid #e5e7eb;transition:all .2s ease}[data-theme=dark] .saved-card,body.dark-mode .saved-card{background:#374151;border-color:#4b5563;color:#f9fafb}.saved-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}[data-theme=dark] .saved-card:hover,body.dark-mode .saved-card:hover{border-color:#60a5fa;box-shadow:0 4px 12px #0000004d}.saved-card h3{color:#111827}[data-theme=dark] .saved-card h3,body.dark-mode .saved-card h3{color:#f9fafb}.btn-primary{background-color:#2563eb;border-radius:.5rem;font-weight:500;padding:.5rem 1rem;transition:background-color .2s}.btn-primary:hover{background-color:#1d4ed8}[data-theme=dark] .btn-primary,body.dark-mode .btn-primary{background-color:#3b82f6}[data-theme=dark] .btn-primary:hover,body.dark-mode .btn-primary:hover{background-color:#2563eb}.compare-container{background:#fff;border-radius:15px;box-shadow:0 4px 6px #0000001a;max-width:1200px;padding:2rem}[data-theme=dark] .compare-container,body.dark-mode .compare-container{background:#1f2937;border:1px solid #374151;color:#f9fafb}.compare-title{color:#2563eb;font-size:2rem;font-weight:700;left:0;margin:0 auto;position:absolute;right:0;top:50%;transform:translateY(-50%);width:fit-content;z-index:1}[data-theme=dark] .compare-title,body.dark-mode .compare-title{color:#60a5fa}.compare-desc{color:#6b7280;font-size:1.1rem;line-height:1.6;margin-bottom:2rem}[data-theme=dark] .compare-desc,[data-theme=dark] .text-gray-400,body.dark-mode .compare-desc,body.dark-mode .text-gray-400{color:#d1d5db}.text-lg{font-size:1.125rem}.font-semibold{font-weight:600}.text-sm{font-size:.875rem}.text-gray-500{color:#6b7280}[data-theme=dark] .text-gray-500,body.dark-mode .text-gray-500{color:#d1d5db}.text-gray-600{color:#4b5563}[data-theme=dark] .text-gray-600,body.dark-mode .text-gray-600{color:#d1d5db}.compare-container-old{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}[data-theme=dark] .change-item,body.dark-mode .change-item{background:#2d3748;box-shadow:0 2px 5px #0000004d}[data-theme=dark] .change-item:hover,body.dark-mode .change-item:hover{box-shadow:0 4px 8px #0006}[data-theme=dark] .change-item h4,body.dark-mode .change-item h4{color:#e2e8f0}[data-theme=dark] .change-item.remove h4,body.dark-mode .change-item.remove h4{color:#fc8181}[data-theme=dark] .change-item.change h4,body.dark-mode .change-item.change h4{color:#63b3ed}[data-theme=dark] .change-item.add h4,body.dark-mode .change-item.add h4{color:#68d391}.course-details{background:#f7fafc;border-radius:6px;direction:rtl;padding:1rem;text-align:right}[data-theme=dark] .course-details,body.dark-mode .course-details{background:#1a202c;color:#e2e8f0}.course-details p{align-items:center;color:#4a5568;display:flex;flex-direction:row;justify-content:space-between;margin:.5rem 0}[data-theme=dark] .course-details p,body.dark-mode .course-details p{color:#a0aec0}.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}[data-theme=dark] .change-item.add .course-details p strong,body.dark-mode .change-item.add .course-details p strong{background-color:#1a4532;border-color:#38a169;box-shadow:0 2px 4px #38a16933;color:#9ae6b4}.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}[data-theme=dark] .change-item.remove .course-details p strong,body.dark-mode .change-item.remove .course-details p strong{background-color:#652b19;border-color:#e53e3e;box-shadow:0 2px 4px #e53e3e33;color:#feb2a8}.change-item.change .from-section p strong{background-color:#fff5f5;border-color:#fed7d7;box-shadow:0 2px 4px #c5303033;color:#c53030;font-size:1.2rem}[data-theme=dark] .change-item.change .from-section p strong,body.dark-mode .change-item.change .from-section p strong{background-color:#652b19;border-color:#e53e3e;box-shadow:0 2px 4px #e53e3e33;color:#feb2a8}.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}[data-theme=dark] .change-item.change .to-section p strong,body.dark-mode .change-item.change .to-section p strong{background-color:#1a4532;border-color:#38a169;box-shadow:0 2px 4px #38a16933;color:#9ae6b4}.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}.compare-container{animation:containerFadeIn .6s ease-out;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:linear-gradient(135deg,#fffffff2,#f8fafce6);border:2px solid #ffffff80;border-radius:20px;box-shadow:0 20px 60px #00000026,0 10px 30px #0000001a,inset 0 1px 0 #fffc;margin:2rem auto;max-width:1400px;padding:3rem;width:90%}@keyframes containerFadeIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.compare-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#007baa,#378ce7);-webkit-background-clip:text;background-clip:text;color:#007baa;font-size:2.8rem;font-weight:800;left:auto;margin-bottom:2rem;position:static;right:auto;text-align:center;top:auto;transform:none;width:auto;z-index:auto}.compare-desc{color:#4a5568;font-size:1.3rem;font-weight:500;line-height:1.8;margin-bottom:3rem;margin-left:auto;margin-right:auto;max-width:800px;text-align:center}.saved-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-top:2rem}.saved-card{align-items:center;background:#ffffffe6;border:2px solid #007baa1a;border-radius:15px;box-shadow:0 4px 15px #00000014;display:flex;justify-content:space-between;padding:1.5rem;text-align:right;transition:all .3s ease}.saved-card:hover{border-color:#007baa4d;box-shadow:0 8px 25px #007baa26;transform:translateY(-5px)}.saved-card h3{color:#2d3748;font-size:1.2rem;font-weight:700;margin:0 0 .5rem}.saved-card p{color:#718096;font-size:.9rem;margin:0}.btn-primary{background:linear-gradient(135deg,#007baa,#378ce7);border:none;border-radius:25px;box-shadow:0 4px 15px #007baa4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.8rem 1.8rem;transition:all .3s ease}.btn-primary:hover{box-shadow:0 6px 20px #007baa66;transform:translateY(-2px)}.text-center{text-align:center}.text-gray-400{background:#fff9;border:2px dashed #cbd5e0;border-radius:15px;color:#9ca3af;font-size:1.2rem;margin:2rem 0;padding:3rem 2rem}@media (max-width:768px){.compare-container{margin:1rem auto;padding:2rem;width:95%}.compare-title{font-size:2.2rem;margin-bottom:1.5rem}.compare-desc{font-size:1.1rem;margin-bottom:2rem}.saved-list{gap:1rem;grid-template-columns:1fr}.saved-card{flex-direction:column;gap:1rem;text-align:center}.saved-card h3{font-size:1.1rem}.btn-primary{padding:1rem;width:100%}}@media (max-width:1024px) and (min-width:769px){.compare-container{padding:2.5rem;width:92%}.saved-list{grid-template-columns:repeat(2,1fr)}}.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:18px;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}[data-theme=dark] .section-badge.section-old,body.dark-mode .section-badge.section-old{background-color:#652b19;border:1px solid #f56565;color:#feb2a8}[data-theme=dark] .section-badge.section-new,body.dark-mode .section-badge.section-new{background-color:#1a4532;border:1px solid #48bb78;color:#9ae6b4}.arrow-icon{color:#4299e1;font-size:24px;margin-top:20px;transform:scaleX(-1)}[data-theme=dark] .arrow-icon,body.dark-mode .arrow-icon{color:#63b3ed}.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{font-size:.85rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.saved-card{animation:fadeInUp .5s ease-out;animation-fill-mode:both}.saved-card:first-child{animation-delay:.1s}.saved-card:nth-child(2){animation-delay:.2s}.saved-card:nth-child(3){animation-delay:.3s}.saved-card:nth-child(4){animation-delay:.4s}.btn-primary:focus{outline:3px solid #007baa4d;outline-offset:2px}.saved-card:focus-within{box-shadow:0 8px 25px #007baa33;transform:translateY(-3px)}@media (max-width:768px){.compare-container{border-radius:12px;box-shadow:0 8px 25px #0000001a;margin:.5rem auto;padding:1rem;width:95%}.compare-title{font-size:1.6rem;line-height:1.2;margin-bottom:.75rem;text-align:center}.compare-desc{font-size:.9rem;line-height:1.5;margin-bottom:1.25rem;padding:0 .5rem;text-align:center}.saved-list{gap:.75rem;grid-template-columns:1fr;margin-top:1rem}.saved-card{border-radius:10px;box-shadow:0 2px 8px #00000014;flex-direction:column;gap:.75rem;margin-bottom:.5rem;padding:1rem;text-align:center}.saved-card h3{font-size:1rem;font-weight:600;margin-bottom:.25rem}.saved-card p{color:#6b7280;font-size:.8rem;margin:.25rem 0}.btn-primary{border-radius:8px;font-size:.95rem;margin-top:.5rem;min-height:44px;padding:.875rem;width:100%}.service-explanation-btn{font-size:.85rem;padding:.5rem 1rem;position:static;z-index:20}.explanation-tooltip{font-size:.8rem;padding:.75rem;right:-100px;width:260px}.compare-header{align-items:center;flex-direction:column;gap:.75rem;justify-content:center;margin-bottom:1rem;position:relative;width:100%}.schedules-section-title{font-size:1rem;margin:1rem 0 .5rem;text-align:center}}@media (max-width:480px){.compare-container{border-radius:8px;margin:.25rem auto;padding:.75rem;width:98%}.compare-title{font-size:1.4rem;margin-bottom:.5rem}.compare-desc{font-size:.85rem;margin-bottom:1rem;padding:0 .25rem}.saved-card{border-radius:8px;gap:.5rem;padding:.875rem}.saved-card h3{font-size:.95rem}.saved-card p{font-size:.75rem}.btn-primary{border-radius:6px;font-size:.9rem;padding:.75rem}.explanation-tooltip{font-size:.75rem;padding:.625rem;right:-120px;width:240px}}@media (max-width:360px){.compare-container{margin:.125rem auto;padding:.5rem;width:99%}.compare-title{font-size:1.2rem}.compare-desc{font-size:.8rem}.saved-card{padding:.75rem}.saved-card h3{font-size:.9rem}.saved-card p{font-size:.7rem}.btn-primary{font-size:.85rem;padding:.625rem}}@media (max-width:1024px) and (min-width:769px){.saved-list{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (max-width:768px){.compare-page,.content-container,.main-content-compare{-ms-overflow-style:none;scrollbar-width:none}.compare-page::-webkit-scrollbar,.content-container::-webkit-scrollbar,.main-content-compare::-webkit-scrollbar{display:none}}@media (max-width:768px){body,html{-ms-overflow-style:none;scrollbar-width:none}body::-webkit-scrollbar,html::-webkit-scrollbar{background:#0000;display:none;height:0;width:0}}.go-to-saved-steps-btn{background:linear-gradient(135deg,#007baa,#378ce7);border:none;border-radius:25px;box-shadow:0 4px 15px #007baa4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-right:10px;padding:.8rem 1.8rem;text-decoration:none;transition:all .3s ease}.go-to-saved-steps-btn:hover{box-shadow:0 6px 20px #007baa66;transform:translateY(-2px)}.cmp-field{position:relative}.cmp-field:not(:last-child){margin-bottom:8px}.cmp-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}[data-theme=dark] .cmp-select,body.dark-mode .cmp-select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239ca3af' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E")}.cmp-select option{font-size:1rem;padding:8px 12px}.btn-primary:active{box-shadow:0 2px 8px #3b82f64d}.btn-ghost:active,.btn-primary:active,.btn-secondary:active{transform:translateY(0)}.btn-ghost:focus,.btn-primary:focus,.btn-secondary:focus,.cmp-select:focus{outline:none}.btn-primary:focus{box-shadow:0 0 0 3px #3b82f64d}.btn-ghost:focus,.btn-secondary:focus{box-shadow:0 0 0 3px #6b72804d}.btn-ghost.loading,.btn-primary.loading,.btn-secondary.loading{color:#0000;position:relative}.btn-ghost.loading:after,.btn-primary.loading:after,.btn-secondary.loading:after{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:initial;content:"";height:16px;left:50%;margin:-8px 0 0 -8px;position:absolute;top:50%;width:16px}@media (max-width:768px){.cmp-modal-overlay{align-items:flex-start;padding-top:40px}.cmp-modal{margin-top:20px;max-height:calc(100vh - 80px)}.cmp-field:not(:last-child){margin-bottom:16px}}@media (max-width:480px){.cmp-modal-overlay{padding:20px 12px 12px}.cmp-modal{margin-top:10px;max-height:calc(100vh - 40px)}.cmp-modal__header{margin-bottom:16px;padding-bottom:12px}.cmp-modal__footer{margin-top:20px;padding-top:16px}}.saved-steps-page{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:#0000!important;border-radius:8px;max-width:1000px}.page-header{align-items:flex-start;gap:20px;justify-content:space-between;margin-bottom:20px}.header-content{flex:1 1}.saved-step-details h1{color:#2c3e50;font-weight:700;margin:0;text-align:right}.save-date{color:#7f8c8d;font-size:14px;margin-bottom:0;text-align:right}.back-arrow-btn{align-items:center;background-color:#3182ce;border:none;border-radius:50%;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.2rem;height:50px;justify-content:center;transition:all .3s ease;width:50px}.back-arrow-btn:hover{background-color:#29639b;box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.back-arrow-btn:active{transform:translateY(0)}.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{align-items:flex-start;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #cbd5e1;border-radius:16px;box-shadow:0 4px 12px #00000014;color:#475569;display:flex;flex-wrap:wrap;gap:16px;margin:16px 0;overflow:hidden;padding:20px 24px;position:relative;transform:translateY(0);transition:all .3s ease}.share-options:before{background:linear-gradient(180deg,#3b82f6,#1d4ed8);border-radius:16px 0 0 16px;content:"";height:100%;left:0;position:absolute;top:0;width:4px}.share-options:after{align-items:center;animation:glow 3s ease-in-out infinite alternate;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:50%;box-shadow:0 4px 12px #3b82f64d;color:#fff;content:"💡";display:inline-flex;flex-shrink:0;font-size:18px;height:36px;justify-content:center;margin-right:4px;margin-top:-2px;width:36px}@keyframes glow{0%{box-shadow:0 4px 12px #3b82f64d;transform:scale(1)}to{box-shadow:0 6px 20px #3b82f666;transform:scale(1.05)}}.share-options:hover{border-color:#94a3b8;box-shadow:0 6px 20px #0000001f;transform:translateY(-2px)}.share-options span{flex:1 1;font-size:15px;font-weight:500;line-height:1.6;text-align:right}.share-btn{align-items:center;background-color:#3182ce;border:none;border-radius:12px;box-shadow:0 4px 12px #3182ce40;color:#fff;cursor:pointer;display:inline-flex;flex:0 0 auto;font-family:Tajawal,sans-serif;font-size:16px;font-weight:600;gap:10px;justify-content:center;min-width:180px;padding:14px 24px;text-align:center;transition:all .3s ease}.share-btn:hover{background-color:#2c6fb1;box-shadow:0 6px 16px #3182ce59;transform:translateY(-2px)}.share-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6}.share-btn:disabled,.share-btn:disabled:hover{background-color:#95a5a6}.changes-summary{border:1px solid #edf2f7;box-shadow:0 2px 6px #0000000a}@media (max-width:768px){.share-options{border-radius:12px;gap:12px;margin:12px 0;padding:16px 18px}.share-options:after{font-size:14px;height:28px;width:28px}.share-options span{font-size:14px;line-height:1.5}}.share-url{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{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #fff3;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{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:12px;box-shadow:0 4px 12px #e53e3e40;color:#fff;cursor:pointer;display:inline-flex;flex:0 0 auto;font-family:Tajawal,sans-serif;font-size:16px;font-weight:600;gap:10px;justify-content:center;margin:0;min-width:180px;padding:14px 24px;text-align:center;transition:all .3s ease}.delete-btn:hover{background-color:#c53030;box-shadow:0 6px 16px #e53e3e59;transform:translateY(-2px)}.action-buttons{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000f;direction:rtl;flex-direction:row;gap:16px;justify-content:space-between;margin:20px 0;padding:20px}.action-buttons,.modal-overlay{align-items:center;display:flex}.modal-overlay{background-color:#0009;bottom:0;justify-content:center;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-family:Tajawal,sans-serif;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-family:Tajawal,sans-serif;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}body.dark-mode .share-btn:disabled{background-color:#7f8c8d;color:#bdc3c7}body.dark-mode .share-btn:disabled:hover{background-color:#7f8c8d}body.dark-mode .share-options{background:linear-gradient(135deg,#1e293b,#334155);border-color:#475569;color:#cbd5e1}body.dark-mode .share-options:before{background:linear-gradient(180deg,#60a5fa,#3b82f6)}body.dark-mode .share-options:after{background:linear-gradient(135deg,#60a5fa,#3b82f6);box-shadow:0 4px 12px #60a5fa4d}body.dark-mode .share-options:hover{border-color:#64748b;box-shadow:0 6px 20px #00000040}body.dark-mode .share-options span{color:#e2e8f0}body.dark-mode .action-buttons{background:linear-gradient(135deg,#1e293b,#334155);border-color:#475569}body.dark-mode .share-btn{background-color:#3b82f6;box-shadow:0 4px 12px #3b82f640}body.dark-mode .share-btn:hover{background-color:#2563eb;box-shadow:0 6px 16px #3b82f659}body.dark-mode .delete-btn{background-color:#dc2626;box-shadow:0 4px 12px #dc262640}body.dark-mode .delete-btn:hover{background-color:#b91c1c;box-shadow:0 6px 16px #dc262659}.application-status-card{background:linear-gradient(135deg,#fff,#f8fafc);border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin:20px 0;overflow:hidden;padding:24px;position:relative;transition:all .3s ease}.application-status-card:before{background:linear-gradient(90deg,#3182ce,#3b82f6);border-radius:16px 16px 0 0;content:"";height:4px;left:0;position:absolute;right:0;top:0}.application-status-card:hover{box-shadow:0 10px 25px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.status-header{align-items:center;direction:rtl;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.status-header h3{color:#1e293b;font-family:Tajawal,sans-serif;font-size:1.5rem;font-weight:700;margin:0}.status-badge{border:2px solid;border-radius:25px;box-shadow:0 2px 4px #0000001a;display:flex;font-family:Tajawal,sans-serif;font-size:.9rem;font-weight:600;gap:8px;padding:8px 16px;transition:all .3s ease}.status-icon{animation:pulse 2s infinite;font-size:1.1rem}.status-text{font-weight:700}.status-details{display:flex;flex-direction:column;gap:20px}.status-description{background-color:#f8fafc;border-radius:12px;border-right:4px solid #3182ce;padding:16px}.status-description p{color:#475569;direction:rtl;font-family:Tajawal,sans-serif;font-size:1rem;line-height:1.6;margin:0}.application-info{background-color:#fff;border:1px solid #e2e8f0;border-radius:12px;direction:rtl;display:flex;flex-direction:row;flex-wrap:wrap;gap:12px;padding:20px}.info-row{align-items:center;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex:1 1;min-width:200px;padding:12px 16px;transition:all .2s ease}.info-row:hover{background-color:#f1f5f9;border-color:#cbd5e1}.info-label{color:#64748b;font-weight:600;margin-left:8px}.info-label,.info-value{font-family:Tajawal,sans-serif;font-size:.9rem}.info-value{color:#1e293b;flex:1 1;font-weight:700;text-align:right}.rejection-reason{background-color:#fef2f2;border:1px solid #fecaca;border-radius:12px;direction:rtl;margin-top:10px;padding:16px}.rejection-reason h4{color:#dc2626;font-family:Tajawal,sans-serif;font-size:1rem;font-weight:600;margin:0 0 8px}.rejection-reason p{color:#7f1d1d;font-family:Tajawal,sans-serif;font-size:.9rem;line-height:1.5;margin:0}.success-message{animation:slideInUp .5s ease;background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:1px solid #10b981;border-radius:12px;padding:16px;text-align:center}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.success-message p{color:#065f46;font-family:Tajawal,sans-serif;font-size:1rem;font-weight:600;margin:0}@media (max-width:768px){.saved-step-details h1{font-size:1.3rem;text-align:right}.save-date{font-size:.85rem;text-align:right}.back-arrow-btn{font-size:1.1rem;height:45px;width:45px}.action-buttons{align-items:stretch;direction:rtl;flex-direction:column;gap:12px;padding:16px}.share-btn{order:1}.delete-btn,.share-btn{flex:none;font-size:15px;min-width:100%;padding:12px 20px}.delete-btn{order:2}.page-header{align-items:flex-start;flex-direction:row;gap:15px;justify-content:space-between}.header-content{flex:1 1;text-align:right}.back-arrow-btn{flex-shrink:0;font-size:1rem;height:40px;width:40px}.application-status-card{margin:15px 0;padding:16px}.status-header{align-items:flex-start;flex-direction:column;gap:10px}.status-header h3{font-size:1.3rem}.status-badge{font-size:.8rem;padding:6px 12px}.application-info{flex-direction:column;gap:10px;padding:16px}.info-row{align-items:center;flex-direction:row;gap:8px;min-width:auto;padding:10px 12px}.info-label{font-size:.85rem;margin-left:0;min-width:80px}.info-value{font-size:.85rem;text-align:right}}body.dark-mode .application-status-card{background:linear-gradient(135deg,#1e293b,#334155);border-color:#475569;color:#f1f5f9}body.dark-mode .application-status-card:before{background:linear-gradient(90deg,#3b82f6,#60a5fa)}body.dark-mode .status-header h3{color:#f1f5f9}body.dark-mode .status-description{background-color:#334155;border-left-color:#3b82f6}body.dark-mode .status-description p{color:#cbd5e1}body.dark-mode .application-info{background-color:#334155;border-color:#475569}body.dark-mode .info-row{background-color:#475569;border-color:#64748b}body.dark-mode .info-row:hover{background-color:#526480;border-color:#94a3b8}body.dark-mode .info-label{color:#94a3b8}body.dark-mode .info-value{color:#f1f5f9}body.dark-mode .rejection-reason{background-color:#450a0a;border-color:#dc2626}body.dark-mode .rejection-reason h4{color:#fca5a5}body.dark-mode .rejection-reason p{color:#fecaca}body.dark-mode .success-message{background:linear-gradient(135deg,#064e3b,#065f46);border-color:#10b981}body.dark-mode .success-message p{color:#a7f3d0}body.dark-mode .back-arrow-btn{background-color:#3b82f6;color:#f1f5f9}body.dark-mode .back-arrow-btn:hover{background-color:#60a5fa}body.dark-mode .saved-step-details h1{color:#f1f5f9}body.dark-mode .save-date{color:#94a3b8}body.dark-mode .saved-steps-page .course-code{background-color:initial!important;color:#cbd5e0!important}[data-theme=dark] .saved-step-details h1,body.dark-mode .saved-step-details h1{color:#e2e8f0}[data-theme=dark] .changes-count,[data-theme=dark] .save-date,body.dark-mode .changes-count,body.dark-mode .save-date{color:#a0aec0}[data-theme=dark] .changes-count span,body.dark-mode .changes-count span{color:#e2e8f0}[data-theme=dark] .toggle-all-btn,body.dark-mode .toggle-all-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#2d3748cc;border-color:#4a5568;color:#e2e8f0}[data-theme=dark] .toggle-all-btn:hover,body.dark-mode .toggle-all-btn:hover{background-color:#4a5568cc}[data-theme=dark] .change-header,body.dark-mode .change-header{background-color:initial;color:#e2e8f0}[data-theme=dark] .change-item,body.dark-mode .change-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2d3748cc;border:1px solid #ffffff1a;color:#e2e8f0}[data-theme=dark] .course-id,[data-theme=dark] .error-container,[data-theme=dark] .loading-container,[data-theme=dark] .no-changes,body.dark-mode .course-id,body.dark-mode .error-container,body.dark-mode .loading-container,body.dark-mode .no-changes{color:#e2e8f0}[data-theme=dark] .error-text,body.dark-mode .error-text{color:#fc8181}[data-theme=dark] .share-url,body.dark-mode .share-url{background-color:#2d3748;border-color:#4a5568;color:#e2e8f0}[data-theme=dark] .saved-steps-container,body.dark-mode .saved-steps-container{background-color:#343a40!important;color:#f8f9fa}.main-content-saved-steps{display:flex;flex:1 1;flex-direction:column;min-height:100vh;padding:0}.main-content-saved-steps.no-sidebar{margin-right:0}[data-theme=dark] .main-content-saved-steps,body.dark-mode .main-content-saved-steps{background:#0000}.loading-error-container{align-items:center;display:flex;justify-content:center;min-height:50vh;padding:20px}[data-theme=dark] .loading-error-container,body.dark-mode .loading-error-container{color:#e2e8f0}.min-h-screen,.saved-steps-list-page{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{background-color:#fff!important;margin:0 auto;max-width:1200px;padding:20px}.page-title-old{color:#2c3e50;font-size:28px;font-weight:700;margin-bottom:30px;text-align:center}.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{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:1px solid #fff3;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.in-review{background-color:#fff8e1;color:#f57c00}.status-badge.approved{background-color:#e8f5e9;color:#2e7d32}.status-badge.partially-processed{background-color:#e3f2fd;color:#1976d2}.status-badge.rejected{background-color:#ffebee;color:#e74c3c}.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{background-color:#fff!important;margin-top:150px;padding:10px}.project-cards-grid{gap:16px;grid-template-columns:1fr}.card-actions{flex-direction:column;gap:8px}.card-button{width:100%}}.page-header{align-items:center;display:flex;justify-content:center;margin-bottom:30px;position:relative}.page-title{color:#2c3e50;flex:1 1;font-size:28px;margin:0}.service-explanation-btn{position:absolute;right:0;top:0}.info-btn{align-items:center;background:#3498db;border:none;border-radius:8px;box-shadow:0 2px 8px #3498db33;color:#fff;cursor:pointer;display:flex;font-family:Tajawal,sans-serif;font-size:14px;font-weight:500;gap:8px;padding:10px 16px;transition:all .3s ease}.info-btn:hover{background:#2980b9;box-shadow:0 4px 12px #3498db4d;transform:translateY(-2px)}.info-icon{font-size:16px}.explanation-tooltip{animation:tooltipFadeIn .3s ease;background:#fff;border:1px solid #e0e6ed;border-radius:12px;box-shadow:0 10px 40px #0000001a;direction:rtl;left:0;margin-top:10px;max-width:90vw;padding:20px;position:absolute;top:100%;width:400px;z-index:1000}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.explanation-tooltip h4{border-bottom:2px solid #3498db;color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 15px;padding-bottom:8px}.explanation-tooltip ul{list-style:none;margin:0 0 20px;padding:0}.explanation-tooltip li{border-bottom:1px solid #f8f9fa;color:#34495e;font-size:14px;line-height:1.5;padding:8px 0}.explanation-tooltip li:last-child{border-bottom:none}.how-to-use{background:#f8f9fa;border-radius:8px;color:#2c3e50;font-size:13px;line-height:1.6;margin:0;padding:15px}.how-to-use strong{color:#3498db;display:block;margin-bottom:8px}@media (max-width:768px){.page-header{align-items:center;flex-direction:column;gap:15px}.service-explanation-btn{position:static;right:auto;top:auto}.explanation-tooltip{left:50%;transform:translateX(-50%);width:320px}}[data-theme=dark] .project-card,body.dark-mode .project-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2d3748cc;border:1px solid #ffffff1a;color:#e2e8f0}[data-theme=dark] .project-card:hover,body.dark-mode .project-card:hover{box-shadow:0 12px 24px #0000004d}[data-theme=dark] .card-header h3,[data-theme=dark] .error-container,[data-theme=dark] .loading-container,[data-theme=dark] .no-steps,[data-theme=dark] .page-title,body.dark-mode .card-header h3,body.dark-mode .error-container,body.dark-mode .loading-container,body.dark-mode .no-steps,body.dark-mode .page-title{color:#e2e8f0}[data-theme=dark] .info-btn,body.dark-mode .info-btn{background:#2d3748cc;border-color:#fff3;color:#e2e8f0}[data-theme=dark] .explanation-tooltip,body.dark-mode .explanation-tooltip{background:#2d3748f2;border-color:#fff3;color:#e2e8f0}[data-theme=dark] .count-label,[data-theme=dark] .metadata-item,body.dark-mode .count-label,body.dark-mode .metadata-item{color:#a0aec0}.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}.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(150px,auto));justify-content:start;padding:1rem;width:100%}@media (max-width:1200px){.courses-grid{grid-template-columns:repeat(auto-fill,minmax(140px,auto));justify-content:start}}@media (max-width:992px){.courses-grid{grid-template-columns:repeat(auto-fill,minmax(130px,auto));justify-content:start}}@media (max-width:768px){.courses-grid{grid-template-columns:repeat(auto-fill,minmax(110px,auto));justify-content:start}.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,auto));justify-content:start;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 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}@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%}.course-planner-leave-modal-overlay{align-items:flex-start!important;height:100%!important;left:0!important;overflow-y:auto!important;padding:0!important;position:fixed!important;top:0!important;width:100%!important}.course-planner-leave-modal-card{align-items:center!important;border-radius:0!important;display:flex!important;flex-direction:column!important;height:100%!important;justify-content:flex-start!important;margin:0!important;max-height:100vh!important;padding:2rem 20px 20px!important;position:relative!important;top:0!important;transform:none!important;width:100%!important}.course-planner-leave-modal-header{font-size:1.2rem!important;margin-top:0!important;text-align:center!important}.course-planner-leave-modal-body{font-size:.95rem!important;margin-bottom:20px!important;text-align:center!important}.course-planner-leave-modal-footer{flex-direction:column!important;gap:12px!important;justify-content:center!important;margin-top:auto!important;width:100%!important}.course-planner-leave-modal-btn{font-size:1rem!important;margin:0!important;padding:12px 16px!important;width:100%!important}}@media (max-width:480px){.course-planner-leave-modal-card{padding:1.5rem 15px 15px!important}.course-planner-leave-modal-header{font-size:1.1rem!important}.course-planner-leave-modal-body{font-size:.9rem!important}.course-planner-leave-modal-btn{font-size:.95rem!important;padding:10px 14px!important}}@media (max-width:360px){.course-planner-leave-modal-card{padding:1rem 10px 10px!important}.course-planner-leave-modal-header{font-size:1rem!important}.course-planner-leave-modal-body{font-size:.85rem!important}.course-planner-leave-modal-btn{font-size:.9rem!important;padding:8px 12px!important}}.course-planner-leave-modal-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.course-planner-leave-modal-card{background:#fff;border-radius:14px;box-shadow:0 12px 32px #00000026;direction:rtl;overflow:hidden;width:min(560px,92vw)}.course-planner-leave-modal-header{background:#0d6efd;color:#fff;font-size:1.05rem;font-weight:700;padding:16px 20px}.course-planner-leave-modal-body{color:#1f2937;line-height:1.7;padding:18px 20px}.course-planner-leave-modal-footer{background:#f9fafb;display:flex;gap:10px;justify-content:flex-start;padding:14px 20px}.course-planner-leave-modal-btn{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:10px 14px;transition:all .2s ease}.course-planner-leave-modal-btn-primary{background:#0d6efd;color:#fff}.course-planner-leave-modal-btn-primary:hover{background:#0b5ed7}.course-planner-leave-modal-btn-danger{background:#ef4444;color:#fff}.course-planner-leave-modal-btn-danger:hover{background:#dc2626}.course-planner-leave-modal-btn-neutral{background:#e5e7eb;color:#111827}.course-planner-leave-modal-btn-neutral:hover{background:#d1d5db}.freedom-course-section{background-color:#f8f9fa;border-radius:8px;margin-top:.5rem;padding:1rem}.freedom-course-card{align-items:stretch;border-radius:8px;box-shadow:0 1px 3px #0000000a;display:flex;flex-direction:column;justify-content:space-between;padding:12px;text-align:right;transition:background-color .5s ease,border-color .5s ease,color .45s ease,box-shadow .2s ease-in-out,transform .2s ease-in-out}.freedom-course-card:hover{box-shadow:0 4px 8px #0000000f;transform:translateY(-2px)}.freedom-course-info h4{color:inherit;font-size:.95rem;font-weight:700;margin:0 0 .4rem}.freedom-course-info p{color:#58151ccc;font-size:.85rem;line-height:1.3;margin:0}.freedom-course-button{border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;min-width:78px;padding:.45rem .8rem;text-align:center;transition:all .3s ease}.freedom-course-button:hover{box-shadow:0 4px 8px #0003;transform:translateY(-1px)}.freedom-course-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.7;transform:none}.freedom-course-button.completed{background-color:#28a745!important}.freedom-course-button.not-started{background-color:#6c757d!important}body.dark-mode .freedom-course-section{background-color:#2d3748}body.dark-mode .freedom-course-card{color:inherit}body.dark-mode .freedom-course-card:hover{box-shadow:0 4px 8px #0003}body.dark-mode .freedom-course-info h4{color:#f9fafb}body.dark-mode .freedom-course-info p{color:#d1d5db}@media (max-width:768px){.freedom-course-card{flex-direction:column;gap:1rem;text-align:center}.freedom-course-button{padding:.8rem;width:100%}}@media (max-width:480px){.freedom-course-card,.freedom-course-section{padding:.75rem}.freedom-course-info h4{font-size:.9rem}.freedom-course-info p{font-size:.8rem}}.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}}@media (max-width:768px){.course-planner-notification{animation:coursePlannerSlideUp .5s ease-out forwards!important;bottom:1rem!important;bottom:calc(1rem + env(safe-area-inset-bottom))!important;left:1rem!important;margin:0!important;max-width:none!important;min-width:auto!important;position:fixed!important;right:1rem!important;top:auto!important;transform:none!important;width:auto!important;z-index:9999!important}.course-planner-notification:hover{transform:none!important}.course-planner-notification-content{padding:1rem!important}.course-planner-notification p{font-size:.9rem!important}}@keyframes coursePlannerSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:480px){.course-planner-notification{bottom:calc(.5rem + env(safe-area-inset-bottom))!important;left:.5rem!important;right:.5rem!important}.course-planner-notification-content{padding:.8rem!important}.course-planner-notification p{font-size:.85rem!important}}.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%}}.chatpage-root .cp-wrapper{align-items:center;background:linear-gradient(180deg,#fff 0,#f7f7f7 50%,#bae6fd);display:flex;flex-direction:column;min-height:100vh;overflow:hidden;position:relative}.chatpage-root .cp-card{display:flex;flex-direction:column;flex-grow:1;margin-bottom:200px;max-width:600px;padding-top:72px;width:100%;z-index:1}.chatpage-root .cp-card.intro{align-items:center;justify-content:center;min-height:calc(100vh - 72px);padding-top:0}.chatpage-root .cp-card.intro .cp-messages{display:none}.chatpage-root .cp-header{align-items:flex-end;color:#0f172a;display:flex;flex-direction:column;gap:6px;position:absolute;right:16px;top:16px;z-index:10}.chatpage-root .cp-header .cp-header-top{align-items:center;display:flex;flex-direction:row-reverse;gap:8px}.chatpage-root .cp-header button{background:none;border:none;color:inherit;cursor:pointer;font-size:1.2rem}.chatpage-root .cp-header button svg{transform:scaleX(-1)}.chatpage-root .cp-header h1{font-size:2rem;font-weight:500;margin:0}.chatpage-root .cp-messages{display:flex;flex:1 1;flex-direction:column;overflow-y:scroll!important;padding:1rem 16px 300px;scroll-behavior:smooth}.chatpage-root .cp-messages::-webkit-scrollbar{width:6px}.chatpage-root .cp-messages::-webkit-scrollbar-thumb{background:#0ea5e9;border-radius:6px}.chatpage-root .cp-messages{scrollbar-color:#0ea5e9 #0000;scrollbar-width:thin}.chatpage-root .cp-message{word-wrap:break-word;font-size:1rem;line-height:1.5;margin:.5rem 0}.chatpage-root .cp-message.cp-user{align-self:flex-end;background:#1f3196;border-radius:1rem 1rem .25rem 1rem;box-shadow:0 2px 8px #0003;color:#fff;padding:.75rem 1rem;text-align:right}.chatpage-root .cp-message.cp-assistant{align-self:flex-start;background:#e5e7eb;border-radius:1rem 1rem 1rem .25rem;box-shadow:0 2px 8px #0000001a;color:#0f172a;padding:.75rem 1rem;text-align:left}.chatpage-root .cp-message.cp-assistant.cp-loading{background:#0000!important;box-shadow:none;color:#0000;position:relative}.chatpage-root .cp-message.cp-assistant.cp-loading:after{animation:ellipsis 1s steps(4) infinite;background:none!important;bottom:.5rem;color:#0f172a;content:"";font-size:1.25rem;position:absolute;right:1rem;white-space:nowrap}@keyframes ellipsis{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}to{content:""}}.chatpage-root .cp-welcome{color:#0f172a;font-size:1.5rem;font-weight:500;margin-bottom:16px;text-align:center}.chatpage-root .cp-input{align-items:center;background:#fff;border-radius:1.5rem;box-shadow:0 4px 40px #0000004d;display:flex;gap:8px;max-width:600px;padding:8px 16px;width:100%;z-index:30}.chatpage-root .cp-input.initial{margin-top:32px;position:static!important}.chatpage-root .cp-input.bottom{bottom:20px;left:50%;position:fixed;transform:translateX(-50%)}.chatpage-root .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}.chatpage-root .cp-input textarea::placeholder{color:#888;opacity:1}.chatpage-root .cp-send{background:none;border:none;color:#1f3196;cursor:pointer;font-size:1rem;padding:8px}.chatpage-root .cp-send:disabled{cursor:default;opacity:.5}.chatpage-root .cp-send.loading{font-size:0;padding:8px;position:relative}.chatpage-root .cp-send.loading:after{animation:spin .8s linear infinite;border:3px solid #1f3196;border-radius:50%;border-top-color:#0000;content:"";height:2em;left:50%;margin:-1em 0 0 -1em;position:absolute;top:50%;width:2em}body.dark-mode .chatpage-root .cp-wrapper{background:linear-gradient(180deg,#1a1a1a 0,#1f1f1f 50%,#000)}body.dark-mode .chatpage-root .cp-header,body.dark-mode .chatpage-root .cp-welcome{color:#e5e7eb}body.dark-mode .chatpage-root .cp-message.cp-assistant{background:#2c2c2c;color:#e5e7eb}body.dark-mode .chatpage-root .cp-input{background:#2c2c2c}body.dark-mode .chatpage-root .cp-input textarea{caret-color:#fff!important;color:#fff!important}body.dark-mode .chatpage-root .cp-input textarea::placeholder{color:#aaa}body.dark-mode .chatpage-root .cp-send{color:#60a5fa}.chatpage-root .cp-messages::-webkit-scrollbar-button{height:0!important;width:0!important}.chatpage-root .cp-messages::-webkit-scrollbar-button:double-button:horizontal:decrement,.chatpage-root .cp-messages::-webkit-scrollbar-button:double-button:horizontal:increment,.chatpage-root .cp-messages::-webkit-scrollbar-button:double-button:vertical:decrement,.chatpage-root .cp-messages::-webkit-scrollbar-button:double-button:vertical:increment,.chatpage-root .cp-messages::-webkit-scrollbar-button:horizontal:decrement,.chatpage-root .cp-messages::-webkit-scrollbar-button:horizontal:increment,.chatpage-root .cp-messages::-webkit-scrollbar-button:single-button:horizontal:decrement,.chatpage-root .cp-messages::-webkit-scrollbar-button:single-button:horizontal:increment,.chatpage-root .cp-messages::-webkit-scrollbar-button:single-button:vertical:decrement,.chatpage-root .cp-messages::-webkit-scrollbar-button:single-button:vertical:increment,.chatpage-root .cp-messages::-webkit-scrollbar-button:vertical:decrement,.chatpage-root .cp-messages::-webkit-scrollbar-button:vertical:increment{display:none!important;height:0!important;width:0!important}.chatpage-root .cp-messages::-webkit-scrollbar-corner{background:#0000!important}.chatpage-root .cp-messages{scrollbar-width:none}.chatpage-root .cp-messages::-webkit-scrollbar-button{display:none!important;height:0;width:0}.chatpage-root .cp-send.loading,.chatpage-root .cp-send.loading:after{background:none!important;background-color:initial!important}@media (max-width:1024px){.chatpage-root .cp-wrapper{overflow:visible}.chatpage-root .cp-card{margin-bottom:150px;max-width:90%;padding-top:60px}.chatpage-root .cp-messages{padding:80px 12px 250px}.chatpage-root .cp-header{z-index:40}.chatpage-root .cp-input.bottom{bottom:16px;left:5%;max-width:none;right:5%;transform:none;width:auto}}@media (max-width:768px){.chatpage-root .cp-wrapper{overflow:visible}.chatpage-root .cp-card{margin-bottom:120px;max-width:100%;padding-top:48px}.chatpage-root .cp-header{z-index:40}.chatpage-root .cp-header h1{font-size:1.5rem}.chatpage-root .cp-header button{font-size:1rem}.chatpage-root .cp-messages{padding:70px 8px 200px}.chatpage-root .cp-message{font-size:.95rem;line-height:1.4;margin:.4rem 0}.chatpage-root .cp-input.bottom{bottom:12px;left:8px;margin:0;max-width:none;right:8px;transform:none}.chatpage-root .cp-input textarea{font-size:.95rem;padding:10px 12px}.chatpage-root .cp-send{font-size:.9rem;padding:6px}.chatpage-root .cp-input.initial{left:0!important;margin:0 8px!important;max-width:none!important;right:0!important;transform:none!important;width:auto!important}.chatpage-root .cp-wrapper{overflow:visible!important}}@media (max-width:480px){.chatpage-root .cp-header{right:8px;top:8px;z-index:40}.chatpage-root .cp-header h1{font-size:1.25rem}.chatpage-root .cp-header button{font-size:.9rem}.chatpage-root .cp-messages{padding:60px 6px 150px}.chatpage-root .cp-message{font-size:.9rem;margin:.3rem 0;padding:.5rem .75rem}.chatpage-root .cp-input.bottom{bottom:8px;left:6px;margin:0;padding:4px 6px;right:6px;transform:none}.chatpage-root .cp-input textarea{font-size:.9rem;padding:8px 10px}.chatpage-root .cp-send{font-size:.85rem;padding:4px}.chatpage-root .cp-input.initial{left:0!important;margin:0 8px!important;max-width:none!important;right:0!important;transform:none!important;width:auto!important}.chatpage-root .cp-wrapper{overflow:visible!important}}.chatpage-root .theme-toggle-item{bottom:10rem;position:absolute;right:16px;z-index:40}body.dark-mode .chatpage-root .cp-message.cp-assistant.cp-loading:after{color:#fff}.shared-schedule-page{background-attachment:fixed;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}body.dark-mode .popup-content,body.dark-mode .popup-content h3,body.dark-mode .popup-content p{color:#fff}.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-top:70px}}@media (max-width:480px){.shared-main-content{padding-top:60px}}.instructor-rating-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:10px;margin:20px 0;overflow:hidden;padding:15px;position:relative;text-align:center}.instructor-rating-section:before{background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.instructor-rating-section:hover:before{left:100%}.instructor-rating-btn{align-items:center;background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:8px;box-shadow:0 4px 15px #007bff4d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;margin-bottom:10px;overflow:hidden;padding:12px 20px;position:relative;transition:all .3s ease;width:100%}.instructor-rating-btn:hover{background:linear-gradient(135deg,#0056b3,#004085);box-shadow:0 6px 20px #007bff66;transform:translateY(-2px)}.instructor-rating-btn:active{transform:translateY(0)}.instructor-rating-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.instructor-rating-btn .btn-icon{font-size:18px;margin-right:5px}.instructor-rating-btn:hover .btn-icon{transform:scale(1.1)}.instructor-rating-btn .btn-text{font-weight:600;text-align:center}.instructor-rating-btn:hover .btn-text{text-shadow:0 1px 2px #0000004d}.course-rating-section{background:linear-gradient(135deg,#e8f5e8,#d4edda);border:1px solid #c3e6cb;border-radius:10px;margin:20px 0;overflow:hidden;padding:15px;position:relative;text-align:center}.course-rating-section:before{background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.course-rating-section:hover:before{left:100%}.course-rating-btn{align-items:center;background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:8px;box-shadow:0 4px 15px #28a7454d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;margin-bottom:10px;overflow:hidden;padding:12px 20px;position:relative;transition:all .3s ease;width:100%}.course-rating-btn:hover{background:linear-gradient(135deg,#20c997,#17a2b8);box-shadow:0 6px 20px #28a74566;transform:translateY(-2px)}.course-rating-btn:active{transform:translateY(0)}.course-rating-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.course-rating-btn .btn-icon{font-size:18px;margin-right:5px}.course-rating-btn:hover .btn-icon{transform:scale(1.1)}.course-rating-btn .btn-text{font-weight:600;text-align:center}.course-rating-btn:hover .btn-text{text-shadow:0 1px 2px #0000004d}.rating-note{color:#666;display:block;font-size:12px;font-style:italic;margin-top:5px}.instructor-rating-section:hover .rating-note{color:#555}.instructor-rating-btn.loading{pointer-events:none}.instructor-rating-btn.loading .btn-icon{animation:spin 1s linear infinite}.instructor-rating-btn.loading .btn-text{opacity:.8}.instructor-rating-btn.success{animation:successPulse .6s ease-in-out;background:linear-gradient(135deg,#28a745,#20c997)}@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}body.dark-mode .instructor-rating-section{background:linear-gradient(135deg,#374151,#1f2937);border-color:#4b5563}body.dark-mode .instructor-rating-section:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000)}body.dark-mode .instructor-rating-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 4px 15px #3b82f64d}body.dark-mode .instructor-rating-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 6px 20px #3b82f666}body.dark-mode .instructor-rating-btn:disabled{background:linear-gradient(135deg,#6b7280,#4b5563);box-shadow:none}body.dark-mode .rating-note{color:#9ca3af}body.dark-mode .instructor-rating-section:hover .rating-note{color:#cbd5e0}body.dark-mode .course-rating-section{background:linear-gradient(135deg,#2d5a2d,#1e4a1e);border-color:#4a5e4a}body.dark-mode .course-rating-section:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000)}body.dark-mode .course-rating-btn{background:linear-gradient(135deg,#38a169,#2f855a);box-shadow:0 4px 15px #38a1694d}body.dark-mode .course-rating-btn:hover{background:linear-gradient(135deg,#2f855a,#276749);box-shadow:0 6px 20px #38a16966}body.dark-mode .course-rating-btn:disabled{background:linear-gradient(135deg,#6b7280,#4b5563);box-shadow:none}body.dark-mode .course-rating-section:hover .rating-note{color:#cbd5e0}.notifications-container{max-width:400px;pointer-events:none;position:fixed;right:20px;top:90px;width:100%;z-index:10001}.custom-notification{animation:slideDown .3s ease-out;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;cursor:pointer;margin-bottom:10px;pointer-events:auto}.custom-notification:hover{box-shadow:0 6px 25px #0003;transform:translateY(-2px)}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.custom-notification.error{border-left:4px solid #ef4444}.custom-notification.success{border-left:4px solid #10b981}.custom-notification.warning{border-left:4px solid #f59e0b}.custom-notification.info{border-left:4px solid #3b82f6}.notification-content{align-items:flex-start;display:flex;padding:16px}.notification-icon{flex-shrink:0;margin-left:12px;margin-top:2px}.notification-icon span{display:block;font-size:18px}.custom-notification p{color:#374151;flex:1 1;font-size:14px;line-height:1.5;margin:0}.custom-notification p:after{color:#9ca3af;content:"";display:block;font-size:12px;margin-top:8px}.notification-close{align-items:center;background:none;border:none;border-radius:50%;color:#9ca3af;cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;margin-right:8px;padding:0;transition:all .2s ease;width:24px}.notification-close:hover{background-color:#f3f4f6;color:#374151}@media (max-width:768px){.course-rating-btn,.instructor-rating-btn{font-size:14px;padding:10px 16px}.course-rating-btn .btn-icon,.instructor-rating-btn .btn-icon{font-size:16px}.rating-note{font-size:11px}.course-rating-section,.instructor-rating-section{margin:15px 0;padding:12px}.notifications-container{left:10px;max-width:none;right:10px}}@media (max-width:480px){.course-rating-section,.instructor-rating-section{margin:15px 0;padding:12px}.course-rating-btn,.instructor-rating-btn{font-size:13px;padding:8px 14px}.course-rating-btn .btn-text,.instructor-rating-btn .btn-text{font-size:12px}}#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}@media (max-width:768px){.gpa-save-notification{bottom:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));left:1rem;margin:0;max-width:none;min-width:auto;right:1rem;top:auto;transform:none;width:auto}}.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}@media (max-width:768px){.gpa-error-notification{bottom:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));left:1rem;margin:0;max-width:none;min-width:auto;right:1rem;top:auto;transform:none;width:auto}}.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}}.unsaved-changes-warning{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.unsaved-changes-warning>div{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;margin:20px;max-width:500px;padding:30px;position:relative;text-align:center;width:90%}.unsaved-changes-warning h3{align-items:center;color:#dc2626;display:flex;font-size:1.4rem;font-weight:700;gap:10px;justify-content:center;margin-bottom:20px}.unsaved-changes-warning p{color:#374151;font-size:1rem;line-height:1.6;margin-bottom:25px}.warning-question{background:#dc26261a;border-radius:8px;border-right:4px solid #dc2626;color:#dc2626!important;font-size:1.1rem!important;font-weight:600;margin-bottom:30px!important;padding:15px}.warning-buttons{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.warning-buttons button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;min-width:140px;padding:12px 20px;transition:all .3s ease}.warning-buttons button:first-child{background:#10b981;color:#fff}.warning-buttons button:first-child:hover:not(:disabled){background:#059669;transform:translateY(-2px)}.warning-buttons button:nth-child(2){background:#e72e1d;color:#fff}.warning-buttons button:nth-child(2):hover{background:#a81a1a;transform:translateY(-2px)}.warning-buttons button:last-child{background:#6b7280;color:#fff}.warning-buttons button:last-child:hover{background:#4b5563;transform:translateY(-2px)}.warning-buttons button:disabled{cursor:not-allowed;opacity:.6;transform:none!important}body.dark-mode .unsaved-changes-warning>div{background:#1f2937;border:1px solid #374151;color:#f9fafb}body.dark-mode .unsaved-changes-warning h3{color:#f87171}body.dark-mode .unsaved-changes-warning p{color:#d1d5db}body.dark-mode .warning-question{background:#f8717126;border-left-color:#f87171;color:#f87171!important}body.dark-mode .warning-buttons button:first-child{background:#059669}body.dark-mode .warning-buttons button:first-child:hover:not(:disabled){background:#047857}body.dark-mode .warning-buttons button:nth-child(2){background:#d97706}body.dark-mode .warning-buttons button:nth-child(2):hover{background:#b45309}body.dark-mode .warning-buttons button:last-child{background:#4b5563}body.dark-mode .warning-buttons button:last-child:hover{background:#374151}@media (max-width:768px){.unsaved-changes-warning{align-items:flex-start;height:100%;left:0;overflow-y:auto;padding:0;position:fixed;top:0;width:100%}.unsaved-changes-warning>div{align-items:center;border-radius:0;display:flex;flex-direction:column;height:100%;justify-content:flex-start;margin:0;max-height:100vh;padding:2rem 20px 25px;width:100%}.unsaved-changes-warning h3{flex-direction:column;font-size:1.2rem;gap:8px;margin-top:0}.unsaved-changes-warning p{font-size:.95rem;margin-bottom:20px}.warning-question{font-size:1rem!important;margin-bottom:25px!important;padding:12px}.warning-buttons{flex-direction:column;gap:12px;margin-top:auto;width:100%}.warning-buttons button{font-size:1rem;min-width:auto;padding:15px 20px;width:100%}}@media (max-width:480px){.unsaved-changes-warning>div{margin:0;padding:1.5rem 15px 20px}.unsaved-changes-warning h3{font-size:1.1rem}.unsaved-changes-warning p{font-size:.9rem}.warning-question{font-size:.95rem!important;padding:10px}.warning-buttons button{font-size:.95rem;padding:12px 15px}}@media (max-width:360px){.unsaved-changes-warning>div{padding:1rem 10px 15px}.unsaved-changes-warning h3{font-size:1rem}.unsaved-changes-warning p{font-size:.85rem;margin-bottom:15px}.warning-question{font-size:.9rem!important;margin-bottom:20px!important;padding:8px}.warning-buttons{gap:10px}.warning-buttons button{font-size:.9rem;padding:10px 12px}}@media (max-width:768px){.gpa-calculator-page{margin:100px auto 0;max-width:900px;padding:.5rem;width:100%}.gpa-error-notification,.gpa-save-notification{font-size:.9rem;margin:0 .5rem .5rem;padding:16px}.gpa-notification-maintext{font-size:.9rem}.gpa-notification-subtext{font-size:.75rem}.gpa-error-notification,.gpa-save-notification{bottom:calc(5rem + env(safe-area-inset-bottom))}}.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!important;line-height:2rem;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))}.load-more-container{display:flex;justify-content:center;padding:20px}.load-more-button{background-color:#007bff;background-color:var(--accent-color-lightmode,#007bff);border:none;border-radius:9999px;color:#fff;cursor:pointer;font-size:1rem;padding:12px 24px;transition:background-color .2s,box-shadow .2s,transform .05s ease-in-out}.load-more-button:hover{background-color:#0056b3;background-color:var(--accent-color-lightmode-dark,#0056b3)}.load-more-button:focus{box-shadow:0 0 0 .25rem #0d6efd40;outline:0}.load-more-button:active{transform:translateY(1px)}.professors-list-load-more-container{align-items:center;display:flex;grid-column:1/-1;justify-content:center;justify-self:center;padding:20px;text-align:center}.professors-list-load-more-button{align-items:center;display:inline-flex;justify-content:center;margin:0 auto}@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}.flag-button.reported{background-color:#dc3545;color:#fff}.flag-button.reported:hover{background-color:#c82333}.report-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.report-modal{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 8px 32px #00000026;max-height:80vh;max-width:500px;overflow-y:auto;padding:24px;width:90%}.report-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.report-modal-header h3{color:#1f2937;font-size:1.25em;font-weight:600;margin:0}.report-modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:1.5em;height:32px;justify-content:center;padding:4px;transition:all .2s;width:32px}.report-modal-close:hover{background-color:#f3f4f6;color:#374151}.report-modal-content{margin-bottom:20px}.report-modal-content p{color:#374151;font-size:.95em;font-weight:500;margin-bottom:16px}.report-reasons{display:flex;flex-direction:column;gap:12px}.report-reason{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:all .2s}.report-reason:hover{background-color:#f9fafb;border-color:#9ca3af}.report-reason input[type=radio]{accent-color:#dc2626;cursor:pointer;height:16px;margin:0;width:16px}.report-reason span{color:#374151;cursor:pointer;font-size:.95em;font-weight:500}.report-modal-footer{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding-top:16px}.report-cancel-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;font-size:.9em;font-weight:500;padding:10px 20px;transition:all .2s}.report-cancel-btn:hover{background-color:#f9fafb;border-color:#9ca3af;color:#374151}.report-submit-btn{background:#dc2626;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9em;font-weight:500;padding:10px 20px;transition:all .2s}.report-submit-btn:hover:not(:disabled){background-color:#b91c1c;box-shadow:0 4px 12px #dc26264d;transform:translateY(-1px)}.report-submit-btn:disabled{background-color:#9ca3af;box-shadow:none;cursor:not-allowed;transform:none}body.dark-mode .report-modal-overlay{background-color:#000000b3}body.dark-mode .report-modal{background:#1f2937;border:1px solid #374151;box-shadow:0 8px 32px #0006}body.dark-mode .report-modal-header{border-bottom-color:#374151}body.dark-mode .report-modal-header h3{color:#f9fafb}body.dark-mode .report-modal-close{color:#9ca3af}body.dark-mode .report-modal-close:hover{background-color:#374151;color:#d1d5db}body.dark-mode .report-modal-content p{color:#d1d5db}body.dark-mode .report-reason{background-color:#374151;border-color:#4b5563;color:#f9fafb}body.dark-mode .report-reason:hover{background-color:#4b5563;border-color:#6b7280}body.dark-mode .report-reason span{color:#f9fafb}body.dark-mode .report-modal-footer{border-top-color:#374151}body.dark-mode .report-cancel-btn{background:#374151;border-color:#4b5563;color:#d1d5db}body.dark-mode .report-cancel-btn:hover{background-color:#4b5563;border-color:#6b7280;color:#f9fafb}body.dark-mode .report-submit-btn{background:#dc2626}body.dark-mode .report-submit-btn:hover:not(:disabled){background-color:#b91c1c;box-shadow:0 4px 12px #dc262666}.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{background-color:#f8d7da;background-color:var(--error-bg-light,#f8d7da);border:1px solid #f5c6cb;border-left:4px solid #f5c6cb;border:1px solid var(--error-border-light,#f5c6cb);border-left-width:4px;border-radius:8px;box-shadow:0 2px 8px #dc354526;color:#721c24;color:var(--error-text-light,#721c24);flex-grow:1;font-size:.95rem;font-weight:500;line-height:1.6;margin:10px 0 15px;max-height:300px;overflow-y:auto;padding:15px 20px;text-align:right;white-space:pre-line}.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{margin-bottom:25px}.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}.comment-textarea.has-error{background-color:#f871710d;border-color:#f87171!important;box-shadow:0 0 0 2px #f8717133}.comment-textarea.checking{border-color:#3b82f6!important;box-shadow:0 0 0 2px #3b82f633}[data-theme=dark] .comment-textarea.has-error{background-color:#f871711a}[data-theme=dark] .comment-textarea.checking{border-color:#60a5fa!important}.char-counter{align-items:center;color:#999;color:var(--text-secondary,#999);display:flex;font-size:.85rem;justify-content:space-between;margin-bottom:15px;padding:0 5px;text-align:left}.checking-indicator{animation:pulse 1.5s ease-in-out infinite;color:#3b82f6;font-weight:500}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.moderation-warning{animation:slideIn .3s ease-out;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;border-right:4px solid #f87171;margin-bottom:20px;margin-top:10px;padding:15px}[data-theme=dark] .moderation-warning{background-color:#f871711a;border-color:#f871714d;color:#fca5a5}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.warning-message{align-items:flex-start;color:#b91c1c;display:flex;font-size:.95em;font-weight:600;gap:8px;line-height:1.4;margin-bottom:12px}[data-theme=dark] .warning-message{color:#fca5a5}.suggestions-container{margin-top:12px}.suggestions-header{align-items:center;color:#1f2937;display:flex;font-size:.9em;font-weight:600;gap:6px;margin-bottom:8px}[data-theme=dark] .suggestions-header{color:#e5e7eb}.suggestions-list{display:flex;flex-direction:column;gap:8px}.suggestion-item{align-items:center;background-color:#3b82f61a;border:1px solid #3b82f633;border-radius:6px;display:flex;font-size:.85em;gap:10px;justify-content:space-between;padding:8px 12px}.suggestion-item.helpful{background-color:#22c55e1a;border-color:#22c55e33}[data-theme=dark] .suggestion-item{background-color:#3b82f626;border-color:#3b82f64d}[data-theme=dark] .suggestion-item.helpful{background-color:#22c55e26;border-color:#22c55e4d}.suggestion-text{color:#374151;flex-grow:1;line-height:1.4}[data-theme=dark] .suggestion-text{color:#d1d5db}.apply-suggestion-btn{background-color:#3b82f6;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.75em;font-weight:500;padding:4px 8px;transition:all .2s;white-space:nowrap}.apply-suggestion-btn:hover{background-color:#2563eb;transform:translateY(-1px)}.apply-suggestion-btn:active{transform:translateY(0)}.moderation-actions{display:flex;gap:8px;justify-content:flex-start;margin-top:12px}.auto-fix-btn{align-items:center;background-color:#059669;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.85em;font-weight:500;gap:6px;padding:8px 12px;transition:all .2s}.auto-fix-btn:hover{background-color:#047857;transform:translateY(-1px)}.auto-fix-btn:active{transform:translateY(0)}.helpful-suggestions{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;border-right:4px solid #22c55e;margin-bottom:15px;margin-top:10px;padding:12px}[data-theme=dark] .helpful-suggestions{background-color:#22c55e1a;border-color:#22c55e4d}.helpful-suggestions .suggestions-header{color:#15803d;font-size:.85em;margin-bottom:8px}[data-theme=dark] .helpful-suggestions .suggestions-header{color:#4ade80}.helpful-suggestions .suggestion-item{background-color:initial;border:none;font-size:.8em;padding:4px 0}.helpful-suggestions .suggestion-text{color:#166534}[data-theme=dark] .helpful-suggestions .suggestion-text{color:#86efac}@media (max-width:768px){.helpful-suggestions,.moderation-warning{margin-left:-5px;margin-right:-5px}.suggestion-item{align-items:flex-start;flex-direction:column;gap:8px}.apply-suggestion-btn{align-self:flex-end}.moderation-actions{justify-content:center}}.moderation-warning.loading{opacity:.7;pointer-events:none}.moderation-success{align-items:center;animation:slideIn .3s ease-out;background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;color:#15803d;display:flex;font-size:.85em;gap:8px;margin-top:10px;padding:10px 12px}[data-theme=dark] .moderation-success{background-color:#22c55e1a;border-color:#22c55e4d;color:#4ade80}.helpful-suggestions:focus-within,.moderation-warning:focus-within{outline:2px solid #3b82f6;outline-offset:2px}.apply-suggestion-btn:focus,.auto-fix-btn:focus{outline:2px solid #fff;outline-offset:2px}@media (prefers-contrast:high){.moderation-warning,.suggestion-item{border-width:2px}.apply-suggestion-btn,.auto-fix-btn{border:2px solid}}@media (prefers-reduced-motion:reduce){.checking-indicator,.moderation-success,.moderation-warning{animation:none}.apply-suggestion-btn:hover,.auto-fix-btn:hover{transform:none}}.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:calc(50% - 15px);flex-grow:0;flex-shrink:0;max-width:calc(50% - 15px);min-width:200px}.courses-taught-section{max-width:calc(50% - 15px);width:calc(50% - 15px)}.frequent-tags-section:empty,.frequent-tags-section:not(:has(.traits>*)){display:none}.header-extra-info:has(.frequent-tags-section:empty) .courses-taught-section,.header-extra-info:has(.frequent-tags-section:not(:has(.traits>*))) .courses-taught-section{flex-basis:calc(50% - 15px);max-width:calc(50% - 15px);width:calc(50% - 15px)}.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:#fff!important}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)}.admin-recalculation-section{background-color:#f8f9fa;background-color:var(--admin-section-bg,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--admin-section-border,#dee2e6);border-radius:8px;margin-top:15px;padding:15px;text-align:center}.recalculate-rating-button{background-color:#6c757d;background-color:var(--admin-button-bg,#6c757d);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .2s ease}.recalculate-rating-button:hover:not(:disabled){background-color:#5a6268;background-color:var(--admin-button-hover-bg,#5a6268)}.recalculate-rating-button:disabled{background-color:#adb5bd;background-color:var(--admin-button-disabled-bg,#adb5bd);cursor:not-allowed}.recalculation-message{font-size:14px;font-weight:500;margin-top:10px}.recalculation-message:contains("✅"){color:#28a745;color:var(--success-color,#28a745)}.recalculation-message:contains("❌"){color:#dc3545;color:var(--error-color,#dc3545)}.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}.difficulty-no-reviews{background-color:#f8f9fa;border-color:#dee2e6;color:#6c757d}.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,Cairo,IBM Plex Sans Arabic,system-ui,-apple-system,Segoe UI,Noto Naskh Arabic,Arial,sans-serif}.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)}.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;justify-content:center;margin-bottom:2.5rem;padding-bottom:1.5rem}.filters-row{direction:rtl;display:flex;flex-wrap:wrap;gap:16px;justify-content:center;width:100%}.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:0 1 auto;font-family:Tajawal,Cairo,IBM Plex Sans Arabic,system-ui,-apple-system,Segoe UI,Noto Naskh Arabic,Arial,sans-serif;font-size:.95rem;max-width:280px;min-width:210px;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,Cairo,IBM Plex Sans Arabic,system-ui,-apple-system,Segoe UI,Noto Naskh Arabic,Arial,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;padding:50px 20px}.course-list-loader,.course-list-no-results{color:#6c757d;color:var(--text-secondary-light,#6c757d);grid-column:1/-1;text-align:center}.course-list-loader{align-items:center;display:flex;justify-content:center;min-height:50vh;width:100%}.course-list-error{color:#dc3545;padding:20px;text-align:center}.course-list-load-more-container{align-items:center;box-sizing:border-box;display:flex;grid-column:1/-1;justify-content:center;padding:20px;width:100%}.course-list-load-more-button{background-color:#007bff;background-color:var(--accent-color-lightmode,#007bff);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.2rem;padding:10px 20px;transition:background-color .2s,transform .1s ease-in-out}.course-list-load-more-button:hover{background-color:#0056b3;background-color:var(--accent-color-lightmode-dark,#0056b3)}.course-list-load-more-button:active{transform:translateY(1px)}@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);flex-shrink:0;font-size:.9rem;margin-bottom:15px;text-align:center}.validation-error{background-color:#f8d7da;background-color:var(--error-bg-light,#f8d7da);border:1px solid #f5c6cb;border-left:4px solid #f5c6cb;border:1px solid var(--error-border-light,#f5c6cb);border-left-width:4px;border-radius:8px;box-shadow:0 2px 8px #dc354526;color:#721c24;color:var(--error-text-light,#721c24);flex-shrink:0;font-size:.95rem;font-weight:500;line-height:1.6;margin:10px 0 20px;max-height:300px;overflow-y:auto;padding:15px 20px;text-align:right;white-space:pre-line}.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.a2d2dd21.css.map*/