.curriculum-container{min-height:100vh;padding:2rem 1rem;direction:rtl;background-color:#edf0f4}@media (max-width:768px){.curriculum-container{padding:1rem .5rem}}.curriculum-header{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;max-width:1200px;margin:0 auto 3rem;padding:2rem;border-radius:.75rem}.curriculum-header .curriculum-title{font-size:2.5rem;font-weight:700;color:#4d5872;margin-bottom:.5rem}@media (max-width:768px){.curriculum-header .curriculum-title{font-size:2rem}}.curriculum-header .curriculum-subtitle{font-size:1.125rem;color:#7e92b1;margin:0}.curriculum-header .header-buttons{display:-ms-flexbox;display:flex;gap:1rem;margin-top:1rem;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center}@media (max-width:768px){.curriculum-header .header-buttons{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;gap:.75rem}}.curriculum-header .remaining-subjects-btn{background:linear-gradient(135deg,rgba(126,146,177,.14902),#fbbf24);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1)}.curriculum-header .remaining-subjects-btn:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);background:linear-gradient(135deg,rgba(95,119,157,.14902),#f59e0b)}.curriculum-header .remaining-subjects-btn:active{transform:translateY(0)}@media (max-width:768px){.curriculum-header .remaining-subjects-btn{padding:.625rem 1.25rem;font-size:.875rem}}.curriculum-header .optional-subjects-btn{background:linear-gradient(135deg,rgba(0,148,215,.14902),#3b82f6);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1)}.curriculum-header .optional-subjects-btn:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);background:linear-gradient(135deg,rgba(0,113,164,.14902),#2563eb)}.curriculum-header .optional-subjects-btn:active{transform:translateY(0)}@media (max-width:768px){.curriculum-header .optional-subjects-btn{padding:.625rem 1.25rem;font-size:.875rem}}.curriculum-header .studying-subjects-btn{background:linear-gradient(135deg,rgba(126,146,177,.14902),#7e92b1);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1)}.curriculum-header .studying-subjects-btn:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);background:linear-gradient(135deg,rgba(95,119,157,.14902),#5f779d)}.curriculum-header .studying-subjects-btn:active{transform:translateY(0)}@media (max-width:768px){.curriculum-header .studying-subjects-btn{padding:.625rem 1.25rem;font-size:.875rem}}.curriculum-header .passed-subjects-btn{background:linear-gradient(135deg,rgba(46,192,87,.14902),#2ec057);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1)}.curriculum-header .passed-subjects-btn:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);background:linear-gradient(135deg,rgba(36,151,68,.14902),#249744)}.curriculum-header .passed-subjects-btn:active{transform:translateY(0)}@media (max-width:768px){.curriculum-header .passed-subjects-btn{padding:.625rem 1.25rem;font-size:.875rem}}.curriculum-header .curriculum-modal-btn{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;padding:4px 24px;gap:10px;width:fit-content;height:40px;color:#fff;background:#0094d7;border-radius:8px;border:none}.curriculum-header .curriculum-modal-btn:hover{background:#0071a4}.curriculum-header .curriculum-modal-btn:active{transform:translateY(0)}.loading-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column;padding:4rem 2rem;background:#fff;border-radius:.75rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);border:1px solid #e2e8f0}.loading-container .loading-spinner{width:3rem;height:3rem;border:4px solid #e2e8f0;border-top-color:rgba(0,148,215,.14902);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.loading-container .loading-text{font-size:1.125rem;color:#7e92b1;margin:0}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-direction:column;flex-direction:column;padding:4rem 2rem;background:#fff;border-radius:.75rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);border:1px solid rgba(192,46,46,.14902)}.error-container .error-icon{font-size:3rem;margin-bottom:1rem}.error-container .error-text{font-size:1.125rem;color:rgba(192,46,46,.14902);margin:0;text-align:center}.curriculum-content{max-width:1200px;margin:0 auto}.semester-accordion{border-radius:.75rem;margin-bottom:1rem;overflow:hidden;animation:fadeInUp .6s ease-out}.semester-accordion:hover{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);transform:translateY(-2px);scale:1.01;transition:all .3s cubic-bezier(.4,0,.2,1)}.semester-accordion .accordion-header{background:#fff;color:#4d5872;padding:1.5rem 2rem;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.semester-accordion .accordion-header:hover{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1)}@media (max-width:768px){.semester-accordion .accordion-header{-ms-flex-direction:row;flex-direction:row;padding:1rem}}.semester-accordion .accordion-header .accordion-title-section{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:1rem}.semester-accordion .accordion-header .accordion-title-section .accordion-icon{font-size:1rem;transition:transform .3s ease;font-weight:700}.semester-accordion .accordion-header .accordion-title-section .semester-title{width:300px;font-size:1.5rem;font-weight:600;margin:0;color:#4d5872}@media (max-width:768px){.semester-accordion .accordion-header .accordion-title-section .semester-title{font-size:1.125rem}}.semester-accordion .accordion-header .subject-count{background:hsla(0,0%,100%,.2);padding:.5rem 1rem;border-radius:1rem;font-size:.875rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media (max-width:768px){.semester-accordion .accordion-header .subject-count{font-size:.75rem;padding:.375rem .75rem}}.semester-accordion .accordion-content{padding:0;animation:slideDown .3s ease-out}.subjects-table{width:100%;border-collapse:collapse;direction:rtl}.subjects-table thead{background:transparent}.subjects-table thead tr{border:1px solid #e2e8f0;border-radius:12px}.subjects-table thead tr th{padding:1rem;text-align:right;font-size:1rem;font-weight:600;color:#1e293b}@media (max-width:768px){.subjects-table thead tr th{padding:.75rem .5rem;font-size:.875rem}}.subjects-table thead tr th:first-child{text-align:center;width:60px}@media (max-width:768px){.subjects-table thead tr th:first-child{width:40px}}.subjects-table tbody tr{border-radius:12px;border:1px solid #e2e8f0;transition:all .3s cubic-bezier(.4,0,.2,1)}.subjects-table tbody tr:hover{background:#f8fafc}.subjects-table tbody tr.status-passed{background:transparent}.subjects-table tbody tr td{padding:1rem;font-size:.9375rem;color:#1e293b}@media (max-width:768px){.subjects-table tbody tr td{padding:.75rem .5rem;font-size:.8125rem}}.subjects-table tbody tr td:first-child{text-align:center;font-weight:600;color:#7e92b1}.subjects-table.modal-table thead tr th{background:#f8fafc}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:1000px}}.subjects-grid{display:-ms-grid;display:grid;-ms-grid-columns:(minmax(280px,1fr))[auto-fit];grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;gap:1rem}.subject-card{background:#fff;border:2px solid #e2e8f0;border-radius:.75rem;padding:1.5rem;position:relative;overflow:hidden}.subject-card,.subject-card:before{transition:all .3s cubic-bezier(.4,0,.2,1)}.subject-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:#e2e8f0}.subject-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);border-color:rgba(0,148,215,.14902)}.subject-card:hover:before{background:rgba(0,148,215,.14902)}.subject-card.status-passed{border-color:rgba(46,192,87,.14902)}.subject-card.status-passed:before{background:rgba(46,192,87,.14902)}.subject-card.status-passed:hover{border-color:rgba(36,151,68,.14902)}.subject-card.status-failed{border-color:rgba(192,46,46,.14902)}.subject-card.status-failed:before{background:rgba(192,46,46,.14902)}.subject-card.status-failed:hover{border-color:rgba(151,36,36,.14902)}.subject-card.status-dropped{border-color:#ff8a1e}.subject-card.status-dropped:before{background:#ff8a1e}.subject-card.status-pending{border-color:rgba(126,146,177,.14902)}.subject-card.status-pending:before{background:rgba(126,146,177,.14902)}.subject-card.status-pending:hover{border-color:rgba(95,119,157,.14902)}.subject-card.status-equal{border-color:rgba(0,148,215,.14902)}.subject-card.status-equal:before{background:rgba(0,148,215,.14902)}.subject-card.status-study{border-color:#7e92b1}.subject-card.status-study:before{background:#7e92b1}.subject-card .subject-header{margin-bottom:1rem}.subject-card .subject-header .subject-name{font-size:1.125rem;font-weight:600;color:#1e293b;margin:0 0 .5rem;line-height:1.4}.subject-card .subject-header .subject-hours{font-size:1rem;color:#7e92b1;background:#e2e8f0;padding:.25rem .75rem;border-radius:1rem;font-weight:500}.subject-status{width:200px;display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.subject-status .status-badge{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:center;justify-content:center;-ms-flex-align:start;align-items:start;padding:8px 16px;gap:10px;width:fit-content;height:40px;border-radius:40px;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1)}.subject-status .status-badge .status-icon{font-size:1rem;font-weight:700}.subject-status .status-badge.status-passed{color:#2ec057;background:rgba(46,192,87,.14902)}.subject-status .status-badge.status-failed{color:#c02e2e;background:rgba(192,46,46,.14902)}.subject-status .status-badge.status-pending{color:#7e92b1;background:rgba(126,146,177,.14902)}.subject-status .status-badge.status-unknown{background:#f1f3f5;color:#fff}.subject-status .status-badge.status-equal{background:rgba(0,148,215,.14902);color:#fff}.subject-status .status-badge.status-study{background-color:rgba(0,148,215,.14902);color:#0094d7}.subject-status .status-badge.status-dropped{background:#ff8a1e;color:#fff}@media (max-width:1024px){.subjects-grid{-ms-grid-columns:(minmax(250px,1fr))[auto-fit];grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}}@media (max-width:768px){.curriculum-container{padding:1rem .5rem}.curriculum-header{margin-bottom:2rem;padding:1.5rem 1rem}.curriculum-header .curriculum-title{font-size:1.75rem}.curriculum-header .curriculum-subtitle{font-size:1rem}.semester-accordion{margin-bottom:1.5rem}.subjects-grid{-ms-grid-columns:1fr;grid-template-columns:1fr;gap:.75rem}.subject-card{padding:1rem}.subject-card .subject-header .subject-name{font-size:1rem}}@media (max-width:480px){.curriculum-container{padding:.5rem}.curriculum-header{padding:1rem;margin-bottom:1.5rem}.curriculum-header .curriculum-title{font-size:1.5rem}.semester-accordion .accordion-header{padding:1rem}.semester-accordion .accordion-header .accordion-title-section .semester-title{font-size:1rem}.semester-accordion .accordion-header .accordion-title-section .accordion-icon{font-size:.875rem}.semester-accordion .accordion-header .subject-count{font-size:.625rem;padding:.25rem .5rem}.subject-card{padding:.75rem}.subject-card .subject-header{margin-bottom:.75rem}.subject-card .subject-header .subject-name{font-size:.875rem}.subject-card .subject-header .subject-hours{font-size:.75rem;padding:.25rem .5rem}.subject-status .status-badge{font-size:.75rem;padding:.375rem .75rem}.subject-status .status-badge .status-icon{font-size:.875rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.subject-card{animation:fadeInUp .4s ease-out}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease-out}.modal-overlay .modal-content{background:#fff;border-radius:.75rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);max-width:600px;width:100%;max-height:80vh;overflow:hidden;animation:slideInUp .3s ease-out;border:1px solid #e2e8f0}@media (max-width:768px){.modal-overlay .modal-content{max-width:95%;max-height:90vh}}.modal-overlay .modal-headers{color:#4d5872;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;padding:1.5rem 2rem;background:#fff}.modal-overlay .modal-headers .modal-title{font-size:1.5rem;font-weight:600;margin:0}@media (max-width:768px){.modal-overlay .modal-headers .modal-title{font-size:1.25rem}}.modal-overlay .modal-headers .modal-close-btn{color:#4d5872;background:#fff;border:none;width:2rem;height:2rem;border-radius:50%;cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;font-size:1.125rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.modal-overlay .modal-headers .modal-close-btn:hover{background:#e5e5e5;transform:scale(1.1)}.modal-overlay .modal-body{padding:2rem;max-height:60vh;overflow-y:auto}@media (max-width:768px){.modal-overlay .modal-body{padding:1.5rem}}.modal-overlay .modal-body .curriculum-modal-controls{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left:4px solid rgba(0,148,215,.14902);border-radius:.5rem}@media (max-width:768px){.modal-overlay .modal-body .curriculum-modal-controls{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;gap:.5rem}}.modal-overlay .modal-body .curriculum-modal-controls .curriculum-modal-label{font-size:1rem;font-weight:600;color:#1e293b;white-space:nowrap}@media (max-width:768px){.modal-overlay .modal-body .curriculum-modal-controls .curriculum-modal-label{font-size:.9rem}}.modal-overlay .modal-body .curriculum-modal-controls .curriculum-modal-dropdown{-ms-flex:1;flex:1;padding:.75rem 1rem;font-size:1rem;font-weight:500;color:#1e293b;background:#fff;border:2px solid #e2e8f0;border-radius:.5rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);outline:none}.modal-overlay .modal-body .curriculum-modal-controls .curriculum-modal-dropdown:hover{border-color:#0093d7}.modal-overlay .modal-body .curriculum-modal-controls .curriculum-modal-dropdown:focus{border-color:#0093d7;box-shadow:0 0 0 3px rgba(0,148,215,.1)}@media (max-width:768px){.modal-overlay .modal-body .curriculum-modal-controls .curriculum-modal-dropdown{width:100%;font-size:.9rem;padding:.625rem .875rem}}.modal-overlay .modal-body .remaining-count-container{-ms-flex-pack:end;justify-content:end}.modal-overlay .modal-body .optional-count,.modal-overlay .modal-body .remaining-count,.modal-overlay .modal-body .remaining-count-container{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;padding:3px 12px;gap:10px}.modal-overlay .modal-body .optional-count,.modal-overlay .modal-body .remaining-count{box-sizing:border-box;-ms-flex-pack:center;justify-content:center;width:fit-content;height:30px;border:1px solid rgba(126,146,177,.15);border-radius:40px}.modal-overlay .modal-body .optional-group{margin-bottom:2rem;border:1px solid #f5f5f5;border-radius:.75rem;overflow:hidden;background:#fff}.modal-overlay .modal-body .optional-group:last-child{margin-bottom:0}.modal-overlay .modal-body .optional-group .optional-group-header{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;padding:1.25rem 1.5rem;background:#fff;border-bottom:1px solid #f5f5f5}@media (max-width:768px){.modal-overlay .modal-body .optional-group .optional-group-header{-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;gap:.75rem;padding:1rem;-ms-flex-wrap:wrap;flex-wrap:wrap}}.modal-overlay .modal-body .optional-group .optional-group-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#4d5872}@media (max-width:768px){.modal-overlay .modal-body .optional-group .optional-group-header h3{font-size:1.125rem}}.modal-overlay .modal-body .optional-group .optional-group-header .btn-light-gray{font-size:.9rem}@media (max-width:768px){.modal-overlay .modal-body .optional-group .optional-group-header .btn-light-gray{font-size:.85rem}}.modal-overlay .modal-body .optional-group .accordion-content{padding:0;border:none}.modal-overlay .modal-body .optional-subjects-list,.modal-overlay .modal-body .remaining-subjects-list{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:1rem}.modal-overlay .modal-body .optional-subject-item,.modal-overlay .modal-body .remaining-subject-item{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;padding:1rem;background:#f8fafc;border-radius:.5rem;border:1px solid #e2e8f0;transition:all .3s cubic-bezier(.4,0,.2,1)}.modal-overlay .modal-body .optional-subject-item:hover,.modal-overlay .modal-body .remaining-subject-item:hover{background:#f1f5f9;border-color:rgba(0,148,215,.14902);transform:translateX(4px)}@media (max-width:768px){.modal-overlay .modal-body .optional-subject-item,.modal-overlay .modal-body .remaining-subject-item{padding:.75rem;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;gap:.5rem}}.modal-overlay .modal-body .optional-subject-item.studied,.modal-overlay .modal-body .remaining-subject-item.studied{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:rgba(46,192,87,.14902)}.modal-overlay .modal-body .optional-subject-item.studied:hover,.modal-overlay .modal-body .remaining-subject-item.studied:hover{background:linear-gradient(135deg,#ecfdf5,#d1fae5)}.modal-overlay .modal-body .optional-subject-item.not-studied,.modal-overlay .modal-body .remaining-subject-item.not-studied{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:rgba(126,146,177,.14902)}.modal-overlay .modal-body .optional-subject-item.not-studied:hover,.modal-overlay .modal-body .remaining-subject-item.not-studied:hover{background:linear-gradient(135deg,#fef3c7,#fde68a)}.modal-overlay .modal-body .optional-subject-item .subject-info,.modal-overlay .modal-body .remaining-subject-item .subject-info{-ms-flex:1;flex:1}.modal-overlay .modal-body .optional-subject-item .subject-info .subject-name,.modal-overlay .modal-body .remaining-subject-item .subject-info .subject-name{font-size:1.125rem;font-weight:600;color:#1e293b;margin:0 0 .25rem;line-height:1.4}@media (max-width:768px){.modal-overlay .modal-body .optional-subject-item .subject-info .subject-name,.modal-overlay .modal-body .remaining-subject-item .subject-info .subject-name{font-size:1rem}}.modal-overlay .modal-body .optional-subject-item .subject-info .subject-details,.modal-overlay .modal-body .remaining-subject-item .subject-info .subject-details{font-size:.875rem;color:#7e92b1;margin:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:.5rem}@media (max-width:768px){.modal-overlay .modal-body .optional-subject-item .subject-info .subject-details,.modal-overlay .modal-body .remaining-subject-item .subject-info .subject-details{font-size:.75rem}}.modal-overlay .modal-body .optional-subject-item .subject-number,.modal-overlay .modal-body .remaining-subject-item .subject-number{background:rgba(0,148,215,.14902);color:#fff;width:2rem;height:2rem;border-radius:50%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;font-weight:600;font-size:.875rem;-ms-flex-negative:0;flex-shrink:0;margin-left:.5rem}@media (max-width:768px){.modal-overlay .modal-body .optional-subject-item .subject-number,.modal-overlay .modal-body .remaining-subject-item .subject-number{width:1.75rem;height:1.75rem;font-size:.75rem}}.modal-overlay .modal-body .optional-subject-item .subject-status-info,.modal-overlay .modal-body .remaining-subject-item .subject-status-info{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:.75rem;-ms-flex-negative:0;flex-shrink:0}@media (max-width:768px){.modal-overlay .modal-body .optional-subject-item .subject-status-info,.modal-overlay .modal-body .remaining-subject-item .subject-status-info{-ms-flex-item-align:end;align-self:flex-end;gap:.5rem}}.modal-overlay .modal-body .optional-subject-item .subject-status-info .status-indicator,.modal-overlay .modal-body .remaining-subject-item .subject-status-info .status-indicator{width:2rem;height:2rem;border-radius:50%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;font-weight:700;font-size:.875rem}@media (max-width:768px){.modal-overlay .modal-body .optional-subject-item .subject-status-info .status-indicator,.modal-overlay .modal-body .remaining-subject-item .subject-status-info .status-indicator{width:1.75rem;height:1.75rem;font-size:.75rem}}.modal-overlay .modal-body .optional-subject-item .subject-status-info .status-indicator.status-passed,.modal-overlay .modal-body .remaining-subject-item .subject-status-info .status-indicator.status-passed{background:rgba(46,192,87,.14902);color:#fff}.modal-overlay .modal-body .optional-subject-item .subject-status-info .status-indicator.status-failed,.modal-overlay .modal-body .remaining-subject-item .subject-status-info .status-indicator.status-failed{background:rgba(192,46,46,.14902);color:#fff}.modal-overlay .modal-body .optional-subject-item .subject-status-info .status-indicator.status-pending,.modal-overlay .modal-body .remaining-subject-item .subject-status-info .status-indicator.status-pending{background:rgba(126,146,177,.14902);color:#fff}.modal-overlay .modal-body .optional-subject-item .subject-status-info .status-indicator.status-unknown,.modal-overlay .modal-body .remaining-subject-item .subject-status-info .status-indicator.status-unknown{background:#f1f3f5;color:#fff}.modal-overlay .modal-body .optional-subject-item .subject-status-info .status-indicator.status-equal,.modal-overlay .modal-body .remaining-subject-item .subject-status-info .status-indicator.status-equal{background:rgba(0,148,215,.14902);color:#fff}.modal-overlay .modal-body .optional-subject-item .subject-status-info .status-indicator.status-study,.modal-overlay .modal-body .remaining-subject-item .subject-status-info .status-indicator.status-study{border:1px solid #7e92b1;color:#7e92b1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media print{.curriculum-container{background:#fff;padding:0}.semester-accordion{break-inside:avoid;box-shadow:none;border:1px solid #f5f5f5;margin-bottom:1rem}.semester-accordion .accordion-content{display:block!important}.semester-accordion .accordion-icon{display:none}.subject-card,.subjects-table,.subjects-table tr{break-inside:avoid}.subject-card{box-shadow:none;border:1px solid #eee}.modal-overlay{display:none}}.simple-row{width:100%;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.btn-light-gray,.simple-row{-ms-flex-direction:row;flex-direction:row}.btn-light-gray{box-sizing:border-box;padding:3px 12px;gap:10px;height:30px;border:1px solid rgba(126,146,177,.15);border-radius:40px}.accordion-icon-container,.btn-light-gray{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.accordion-icon-container{width:40px;height:40px;background:#f5f5f5;border-radius:50%}.curriculum-table-row{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;padding:1rem;color:#7e92b1}.curriculum-table-row__border{border:1px solid rgba(126,146,177,.6);border-radius:12px}.curriculum-table-row__subject-name{width:400px}.curriculum-table-row__subject-name-modal{width:256px}.curriculum-table-row__bold{height:24px;font-weight:400;font-size:20px;line-height:24px;text-align:right;color:#4d5872}.curriculum-table-col{width:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:1rem}.curriculum-table-optional-button{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;padding:4px 24px;gap:10px;width:100%;height:54px;color:#ff5d0b;background:rgba(255,103,27,.15);border-radius:8px;border:none}