.reviewSemester_page__lWJZE{display:flex;justify-content:center;padding:40px 16px 80px;min-height:80vh;font-family:Outfit,sans-serif}.reviewSemester_card__ryZfc{box-sizing:border-box;background:white;color:#111;width:100%;max-width:560px;border-radius:14px;padding:28px 24px;box-shadow:0 8px 30px rgba(0,0,0,.3);display:flex;flex-direction:column;gap:16px;height:-moz-fit-content;height:fit-content}.reviewSemester_title__PjxvE{margin:0;font-size:1.8rem;font-weight:600;color:#0c084e}.reviewSemester_subtitle__1EM3Y{margin:0;color:#444;font-size:1rem;line-height:1.4}.reviewSemester_inlineRow__Xf1yY{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap}.reviewSemester_smallField__BUjD1{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:#333;flex:1 1;min-width:120px}.reviewSemester_codeInput__Maucj,.reviewSemester_input__5ObSj,.reviewSemester_searchInput__Mntwz{font-family:inherit;font-size:.95rem;padding:8px 10px;border:1px solid #899bb9;border-radius:6px;outline:none;background:white;color:#111}.reviewSemester_smallField__BUjD1 .reviewSemester_input__5ObSj{height:38px;box-sizing:border-box}.reviewSemester_codeInput__Maucj:focus,.reviewSemester_input__5ObSj:focus,.reviewSemester_searchInput__Mntwz:focus{border-color:#0c084e}.reviewSemester_searchWrap__1rVSR{position:relative}.reviewSemester_searchInput__Mntwz{width:100%;box-sizing:border-box;padding:12px 14px;font-size:1rem}.reviewSemester_suggestions__Z0W3Q{list-style:none;margin:4px 0 0;padding:0;border:1px solid #d5dbe6;border-radius:8px;max-height:300px;overflow-y:auto}.reviewSemester_suggestions__Z0W3Q li+li{border-top:1px solid #eef1f6}.reviewSemester_suggestions__Z0W3Q button{width:100%;text-align:left;background:none;border:none;padding:10px 12px;cursor:pointer;font-family:inherit;display:flex;flex-direction:column;gap:2px;color:#111}.reviewSemester_suggestions__Z0W3Q button:hover{background:#f1f4fb}.reviewSemester_suggestions__Z0W3Q span{font-size:.8rem;color:#666}.reviewSemester_selectedList__DSoB9{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.reviewSemester_selectedItem__ApEBV{display:flex;align-items:center;gap:10px;background:#f5f7fc;border-radius:8px;padding:8px 10px}.reviewSemester_codeInput__Maucj{width:110px;font-weight:600;text-transform:uppercase}.reviewSemester_suggestionGroup___tQb3{padding:8px 12px 4px;font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#8a93a8;background:#fafbfd}.reviewSemester_selectedMain__yAz1r{flex:1 1;display:flex;align-items:center;gap:10px;min-width:0}.reviewSemester_codeWrap__lBmrB{position:relative;flex-shrink:0}.reviewSemester_codeInput__Maucj::placeholder{text-transform:none;font-weight:400}.reviewSemester_codeWrap__lBmrB .reviewSemester_codeList__EgcOJ{left:auto;right:0;width:300px;max-width:calc(100vw - 48px)}.reviewSemester_codeWrap__lBmrB .reviewSemester_codeOption__yqTcI{display:flex;flex-direction:column;gap:2px;white-space:normal}.reviewSemester_codeOption__yqTcI:hover{background:#eef1fb}.reviewSemester_codeOption__yqTcI span{font-size:.75rem;color:#666}.reviewSemester_selectedProf__Gs06Y{flex:1 1;font-size:.95rem;font-weight:500;color:#0c084e;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reviewSemester_removeButton__RVelw{background:none;border:none;color:#999;cursor:pointer;font-size:1rem;padding:4px}.reviewSemester_removeButton__RVelw:hover{color:#d32f2f}.reviewSemester_primaryButton__JxKcJ{font-family:inherit;font-size:1rem;padding:12px 18px;border-radius:8px;cursor:pointer;border:none;background:#0c084e;color:white}.reviewSemester_primaryButton__JxKcJ:hover:not(:disabled){background:#1a1470}.reviewSemester_primaryButton__JxKcJ:disabled{opacity:.6;cursor:default}.reviewSemester_linkButton__tyjPD{background:none;border:none;font-family:inherit;cursor:pointer;padding:0;text-decoration:underline;color:#1a2a6c;font-size:.9rem;align-self:center}.reviewSemester_progressRow__3x74W{display:flex;align-items:center;gap:12px;font-size:.85rem;color:#555}.reviewSemester_wrongProf__YDoOO{order:3;background:none;border:none;padding:0;font-family:inherit;font-size:.8rem;color:#edf25f;text-decoration:underline;cursor:pointer;white-space:nowrap}.reviewSemester_progressBar__epygq{flex:1 1;height:6px;background:#eef1f6;border-radius:3px;overflow:hidden}.reviewSemester_progressFill__09xXM{height:100%;background:linear-gradient(90deg,#0c084e,#431073);transition:width .3s ease}.reviewSemester_error__QjeEV{margin:0;color:darkred;background:rgba(255,0,0,.08);padding:8px;border-radius:4px;font-size:.85rem}@media (max-width:520px){.reviewSemester_card__ryZfc{padding:22px 16px}.reviewSemester_selectedItem__ApEBV{position:relative}.reviewSemester_codeWrap__lBmrB{position:static}.reviewSemester_codeWrap__lBmrB .reviewSemester_codeList__EgcOJ{left:0;right:0;width:auto}.reviewSemester_progressRow__3x74W{flex-wrap:wrap;row-gap:8px}.reviewSemester_progressRow__3x74W>span{flex:1 1;min-width:0}.reviewSemester_progressRow__3x74W .reviewSemester_progressBar__epygq{flex-basis:100%;order:4}}.reviewSemester_popupWrap__puU08{width:100%;max-width:540px;display:flex;flex-direction:column;gap:12px}.reviewSemester_popupWrap__puU08 .reviewSemester_progressRow__3x74W{color:#d8dcf0}.reviewSemester_popupWrap__puU08 .reviewSemester_progressBar__epygq{background:rgba(255,255,255,.2)}.reviewSemester_popupWrap__puU08 .reviewSemester_progressFill__09xXM{background:#edf25f}.reviewSemester_popupWrap__puU08 .dialog-box{width:100%;box-sizing:border-box;max-height:none;overflow:visible;scale:1;color:#111}.reviewSemester_popupWrap__puU08 .switch{margin-right:0}.reviewSemester_popupWrap__puU08 .rating-row .stars{display:flex;flex-wrap:nowrap;flex-shrink:0}.reviewSemester_popupButtons__ZBsP6{display:flex;justify-content:flex-end;gap:10px;order:2}@media (max-width:600px){.reviewSemester_page__lWJZE{padding:24px 12px 60px}.reviewSemester_popupWrap__puU08 .switch{margin-right:0}}.dropdown{position:relative;font-family:Outfit;font-size:13px}.dropdown-button{width:100%;height:30px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 8px;border:1px solid #899bb9;border-radius:3px;background:white;color:#111;font:inherit;text-align:left;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.dropdown-button:hover,.dropdown.open .dropdown-button{border-color:#001f54}.dropdown-button:focus-visible,.dropdown.open .dropdown-button{outline:none;box-shadow:0 0 0 2px rgba(0,31,84,.15)}.dropdown-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-placeholder{color:#888}.dropdown-chevron{flex-shrink:0;color:#001f54;transition:transform .2s ease}.dropdown.open .dropdown-chevron{transform:rotate(180deg)}.dropdown-list{position:absolute;top:calc(100% + 4px);left:0;min-width:100%;box-sizing:border-box;margin:0;padding:4px;list-style:none;background:white;border:1px solid #d5dbe6;border-radius:8px;box-shadow:0 8px 24px rgba(12,8,78,.18);max-height:220px;overflow-y:auto;z-index:20;animation:dropdown-in .12s ease-out;scrollbar-width:thin}.grade-select .dropdown-list{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:2px;gap:2px;width:172px;max-height:none}.grade-select .dropdown-option{text-align:center;padding:6px 0}.dropdown-option{padding:6px 10px;border-radius:5px;cursor:pointer;white-space:nowrap;color:#111}.dropdown-option.active{background:#eef1fb}.dropdown-option.selected{background:#001f54;color:white;font-weight:500}.dropdown.dropdown-lg{font-size:.95rem}.dropdown.dropdown-lg .dropdown-button{height:38px;padding:0 10px;border-radius:6px}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.add-review-button{position:fixed;bottom:40px;right:7.5vw;color:white;border:none;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:4;transition:all .3s ease;width:210px;height:60px;border-radius:30px;overflow:visible;padding:0;background-size:200% 200%;background-color:#0c084e}.add-review-button:disabled{opacity:.7;cursor:not-allowed;background-color:#666;animation:none}.add-review-button.submitting{background-color:#666;cursor:wait;animation:none}.add-review-button:hover:not(:disabled){background-color:#002f74;animation:none}.add-review-button span{display:flex;align-items:center;justify-content:center;white-space:nowrap}.add-review-button .text{display:inline;margin-left:8px;font-size:16px}.titles{font-size:medium;align-items:left;display:flex;flex-direction:row}.overlay{position:absolute;top:0;left:0;height:100dvh;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:12}.line{border-bottom:1px solid rgba(0,0,0,.492);margin-top:5px;width:100%}.dialog-box{background:white;padding:20px;border-radius:10px;width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 10px rgba(0,0,0,.3);display:flex;flex-direction:column;gap:15px}.dialog-header{justify-content:space-between;font-size:18px}.dialog-header,.toggle_c{display:flex;flex-direction:row;align-items:center}.toggle_c{justify-content:flex-end}.close-button{background:none;border:none;margin-top:-20px;margin-right:-10px;font-size:15px;cursor:pointer;align-items:center}.course-details{display:flex;justify-content:space-between}.course-details label{font-size:14px}.course-details input{border:1px solid #899bb9;padding:5px;margin-left:5px;border-radius:3px}.course-details{gap:12px;align-items:flex-end}.course-details>label{display:flex;flex-direction:column;gap:4px;flex:0 1 140px;min-width:0}.course-details>label:has(.grade-select){flex:0 0 72px}.course-details>label:last-child{flex:0 0 auto;margin-left:auto}.course-details>label>input{margin-left:0;width:100%;max-width:none;box-sizing:border-box}.course-details input{height:30px;box-sizing:border-box}.semester-year .dropdown{width:90px}.rating-row{display:flex;justify-content:space-between;align-items:center;margin:5px 0}.add-stars{display:flex;font-size:medium;padding-top:10px}.star{font-size:24px;color:#ccc;cursor:pointer;transition:color .2s ease}.star.selected{color:gold}.dialog-actions{display:flex;flex-direction:column;gap:10px}.note{margin-top:0;font-size:12px;color:gray;order:2}.submit-button{background:#001f54;color:white;border:none;padding:10px 15px;border-radius:5px;cursor:pointer;align-self:flex-end;font-family:Outfit;font-size:15px;transition:all .3s ease;order:2}.submit-button:disabled{opacity:.7;cursor:not-allowed;background-color:#666}.blue-outline{width:60%;max-width:300px;padding:5px}.blue-outline-small{width:10%;max-width:80px;padding:5px;box-sizing:border-box}.submit-button.submitting{background-color:#666;cursor:wait}.switch{position:relative;display:flex;width:40px;height:20px;margin-right:20px;margin-left:10px;align-items:center}.slider_r{cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;border-radius:20px}.slider_r,.slider_r:before{position:absolute;transition:.4s}.slider_r:before{content:"";height:14px;width:14px;left:3px;bottom:3px;background-color:white;border-radius:50%}input:checked+.slider_r{background-color:#001f54}input:focus+.slider_r{box-shadow:0 0 1px #001f54}input:checked+.slider_r:before{transform:translateX(20px)}.slider_r.round{border-radius:34px}.slider_r.round:before{border-radius:50%}.criteria-header,.criteria-title{display:flex;justify-content:space-between}.criteria-header{align-items:center;margin-bottom:8px}.criteria-note{text-align:center;color:#666;margin:1px 0 3px;font-size:.9em}.criteria-note small{color:#888}.clear-selection-link{background:none;border:none;color:#d32f2f;font-size:14px;cursor:pointer;font-family:Outfit;padding:0;text-decoration:underline;transition:color .2s ease}.clear-selection-link:hover{color:#7c1515}.details-toggle{align-self:flex-start;background:none;border:none;color:#1a2a6c;font-size:14px;font-family:Outfit;font-weight:500;cursor:pointer;padding:0;text-decoration:underline}.details-toggle:hover{color:#0d1640}.criteria-columns{display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:smaller}.criteria-left,.criteria-right{width:48%;display:flex;flex-direction:column;gap:0}.overall-label{font-size:small;padding-top:1px;padding-right:20px}.overall-box{height:15vh;width:99%;display:flex;font-family:Outfit;font-size:14px;font-style:normal;font-weight:250;resize:none;border:1px solid #899bb9;margin-bottom:0}.radio-group{gap:20px}.radio-group,.radio-label{display:flex;align-items:center}.radio-label{cursor:pointer}.radio-label input{display:none}.custom-radio{display:inline-block;width:10px;height:10px;border-radius:50%;border:2px solid #ccc;margin-right:8px;position:relative;transition:border-color .3s ease-in-out}.radio-label input:checked+.custom-radio{border-color:#001f54}.radio-label input:checked+.custom-radio:before{content:"";width:5px;height:5px;background-color:#001f54;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:background-color .3s ease-in-out}@media (max-width:768px){.add-review-button{bottom:0;right:0;width:100%;height:60px;border-radius:0;font-size:18px}.add-review-button .text{font-size:16px}}.error-messag{color:darkred;font-size:13px;margin:0;text-align:left;background-color:rgba(255,0,0,.1);padding:8px;border-radius:4px;border-left:3px solid darkred;width:96%;order:2;z-index:1}.clear-selection-container{display:flex;justify-content:flex-end;margin:10px 0}.clear-selection-button{background:none;border:1px solid #001f54;color:#001f54;padding:8px 16px;border-radius:4px;cursor:pointer;font-family:Outfit;font-size:14px;transition:all .3s ease}.clear-selection-button:hover{background-color:#001f54;color:white}.grade-year-container{display:flex;flex-direction:column;gap:10px}.semester-year{display:flex;gap:10px;align-items:center}.semester-year input{width:80px}.topic-year-container{display:flex;gap:10px;align-items:center;width:60%}.topic-year-container input{width:80px}.semester-year input{margin-left:0}.dialog-box .star{width:1em;height:1em;margin:0 1px}.overall .stars{display:flex;align-items:center}.overall-label{padding-top:0}@media (max-width:600px){.dialog-box{width:calc(100vw - 24px);max-width:500px;max-height:90dvh;box-sizing:border-box;padding:18px 16px;gap:14px;scale:1}.dialog-header{font-size:15px;gap:10px}.dialog-header .titles{display:block;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15px}.toggle_c{flex-shrink:0;gap:6px;font-size:14px}.switch{margin-left:0;margin-right:16px}.close-button{margin:0}.course-details:has(.grade-select){display:grid;grid-template-columns:minmax(0,1fr) 88px;grid-gap:12px;gap:12px;align-items:end}.course-details:has(.grade-select)>label,.course-details:has(.grade-select)>label:last-child{flex:none;width:auto;margin:0}.course-details:has(.grade-select)>label:last-child{grid-column:1/-1}.semester-year{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:12px;gap:12px}.semester-year .dropdown,.semester-year input{width:100%;max-width:none}.course-details:not(:has(.grade-select)){flex-direction:column;align-items:stretch;gap:12px}.topic-year-container{width:100%}.topic-year-container label:first-child{flex:1 1;display:flex;align-items:center;gap:6px}.topic-year-container .blue-outline-big{flex:1 1;min-width:0}.criteria-columns{flex-direction:column;align-items:stretch;gap:0}.criteria-left,.criteria-right{width:100%}.rating-row{gap:12px;margin:4px 0}.rating-row>span{flex:1 1;min-width:0}.add-stars{padding-top:0}.rating-row .star{font-size:21px}.overall-box{width:100%;box-sizing:border-box;height:120px;padding:8px}.submit-button{width:100%;padding:12px 15px}}