.input-container{max-width:640px;width:100%;margin:2rem auto;padding:2rem;background:#eee;border-radius:1rem;box-shadow:0 10px 30px #bbb;box-sizing:border-box}.input-container h3{margin-bottom:1.2rem;font-size:1.3rem;font-weight:600;text-align:center}.input-courses{display:flex;flex-direction:column;gap:1.2rem}.row{display:grid;gap:.5rem;grid-template-columns:1fr}.top-row{grid-template-columns:1fr auto;align-items:center}.select-row{grid-template-columns:1fr}input,select{width:100%;padding:.7rem;font-size:1rem;border-radius:8px;border:1px solid #d0d5dd;background:#fafafa;box-sizing:border-box}input:focus,select:focus{outline:none;border-color:#035c67;box-shadow:0 0 0 3px #035c6733}.extended{display:flex;align-items:center;gap:.8rem;font-size:1rem;font-weight:500;color:#035c67;background:#f0f8f8;padding:.5rem .8rem;border-radius:8px;cursor:pointer;transition:background .2s,transform .1s}.extended:hover{background:#e0f2f2;transform:translateY(-1px)}.extended input{width:20px;height:20px;accent-color:#035c67;cursor:pointer}button{padding:.7rem;font-size:1rem;font-weight:600;color:#fff;background:#ffb71b;border:none;border-radius:10px;cursor:pointer;transition:transform .1s,box-shadow .1s}button:hover{transform:translateY(-1px);box-shadow:0 8px 20px #ffb71b1a}button:active{transform:translateY(0);box-shadow:none}.blog-redirect{padding:20px;text-align:center}.blog-redirect a{color:#035c67}@media (min-width: 601px) and (max-width: 1024px){.input-container{width:80%;margin:1.5rem auto}}@media (max-width: 600px){.input-container{width:100%;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}}.saved-courses{max-width:640px;width:100%;height:640px;margin:2rem auto;padding:1.5rem;background:#eee;border-radius:1rem;box-shadow:0 10px 30px #bbb;display:flex;flex-direction:column;box-sizing:border-box}.saved-courses h3{font-size:1.3rem;font-weight:600;text-align:center;margin-bottom:.4rem}.summary{text-align:center;font-style:italic;margin-bottom:.5rem}.summary p{margin:.15rem 0;font-size:1rem}.progress-wrapper{width:100%;height:10px;background:#d1d5db;border-radius:20px;overflow:hidden;margin-bottom:.5rem}.progress-bar{height:100%;background:#035c67;border-radius:5px;transition:width .3s ease}.saved-courses ul{list-style:none;padding:0;margin-top:.5rem;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem}.saved-courses ul::-webkit-scrollbar{width:8px}.saved-courses ul::-webkit-scrollbar-track{background:#ddd;border-radius:10px}.saved-courses ul::-webkit-scrollbar-thumb{background:#aaa;border-radius:10px}.saved-course-item{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:1rem;background:#fdfdfd;border-radius:10px;border:1px solid #d0d5dd;box-shadow:0 2px 6px #0000000d;transition:transform .1s ease,box-shadow .1s ease}.saved-course-item:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.course-info{display:flex;flex-direction:column;gap:.25rem}.course-name{font-weight:600;font-size:1.2rem}.course-meta{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.8rem;color:#555}.course-meta span{background:#eee;padding:.2rem .6rem;border-radius:6px}.course-grade{font-weight:600}.grade-A{color:#166534}.grade-B{color:#075985}.grade-C{color:#ee8e20}.grade-D{color:#e66f47}.grade-E{color:#991b1b}.grade-F{color:#494949}.course-points{font-weight:600}.course-extended{background:#dbeafe;color:#1e40af;font-weight:600}.course-merit{background:#fef3c7;color:#92400e;font-weight:600}.saved-course-item button{background:none;border:none;font-size:1rem;cursor:pointer;padding:.2rem;transition:transform .15s ease}.saved-course-item button:hover{transform:scale(1.2)}.saved-courses>p{text-align:center;font-style:italic;color:#555}@media (min-width: 601px) and (max-width: 1024px){.saved-courses{width:80%;margin:1.5rem auto}}@media (max-width: 600px){.saved-courses{width:100%;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}}.education-suggestions{max-width:640px;width:100%;height:640px;margin:2rem auto;padding:1.5rem;background:#eee;border-radius:1rem;box-shadow:0 10px 30px #bbb;display:flex;flex-direction:column;box-sizing:border-box}.education-suggestions h3{font-size:1.5rem;font-weight:600;text-align:center;margin-bottom:.2rem}.education-suggestions h4{font-size:1rem;font-weight:500;text-align:center;margin-bottom:.6rem}.empty-text{text-align:center;font-style:italic;color:#555;margin-top:1.5rem}.education-suggestions ul{list-style:none;padding:0;margin-top:.5rem;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.education-suggestions ul::-webkit-scrollbar{width:8px}.education-suggestions ul::-webkit-scrollbar-track{background:#ddd;border-radius:10px}.education-suggestions ul::-webkit-scrollbar-thumb{background:#aaa;border-radius:10px}.education-item{display:flex;flex-direction:column;gap:.3rem;padding:1rem;background:#fdfdfd;border-radius:10px;border:1px solid #d0d5dd;box-shadow:0 2px 6px #0000000d;transition:transform .1s ease,box-shadow .1s ease}.education-item:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.education-item strong{font-size:1rem}.education-item span{font-size:1rem;color:#555}@media (min-width: 601px) and (max-width: 1024px){.education-suggestions{width:80%;max-width:none;margin:1.5rem auto}}@media (max-width: 600px){.education-suggestions{width:100%;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}}.counter-columns{display:flex;gap:20px;padding:16px;flex-wrap:wrap;box-sizing:border-box}.input-column,.saved-courses-column,.education-column{flex:1 1 300px}.merit-result{margin-top:12px;font-weight:700;font-size:1.1rem;color:#333}@media (max-width: 1024px){.counter-columns{flex-direction:column;align-items:stretch}}@media (max-width: 600px){.counter-columns{width:100%;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}}#root{max-width:100%;width:100%}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
