@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700;800&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{background:#0f0f23;background-image:radial-gradient(at 0 0,#3b82f61a 0,#0000 50%),radial-gradient(at 100% 0,#a855f71a 0,#0000 50%),radial-gradient(at 100% 100%,#ec48991a 0,#0000 50%);color:#e2e8f0;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;padding:20px}.App,.container{margin:0 auto;max-width:1400px}header{animation:fadeInDown .8s ease;margin-bottom:50px;text-align:center}h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#a78bfa,#f472b6);-webkit-background-clip:text;background-clip:text;font-size:3.5em;font-weight:800;letter-spacing:-2px;margin-bottom:15px}.subtitle{color:#94a3b8;font-size:1.5em;font-weight:400;letter-spacing:2px}.stats-toggle-btn{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1e293b99;border:1px solid #94a3b833;border-radius:12px;color:#e2e8f0;cursor:pointer;display:flex;font-family:Inter,sans-serif;font-size:15px;font-weight:600;justify-content:space-between;margin:0 auto 25px;max-width:250px;padding:16px 24px;transition:all .3s ease;width:100%}.stats-toggle-btn:hover{background:#1e293bcc;border-color:#60a5fa66;box-shadow:0 4px 12px #60a5fa33}.dropdown-arrow{opacity:.7;transition:transform .3s ease}.dropdown-arrow.open{transform:rotate(180deg)}.stats-toggle-btn:hover .dropdown-arrow{opacity:1}.dashboard{grid-gap:20px;animation:slideDown .4s ease-out;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:30px}.stats-section-divider{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#60a5fa1a;border-left:4px solid #60a5fa;border-radius:8px;grid-column:1/-1;margin:20px 0 10px;padding:15px 20px}.stats-section-divider h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;background-clip:text;font-size:1.3em;font-weight:700;letter-spacing:.5px;margin:0}.stat-card{animation:fadeInUp .8s ease;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1e293b99;border:1px solid #94a3b81a;border-radius:16px;box-shadow:0 4px 6px #0000001a;overflow:hidden;padding:20px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.stat-card:before{background:linear-gradient(90deg,#60a5fa,#a78bfa,#f472b6);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.stat-card:hover{border-color:#60a5fa4d;box-shadow:0 15px 30px #60a5fa33;transform:translateY(-5px) scale(1.02)}.stat-card:hover:before{opacity:1}.stat-label{color:#94a3b8;font-size:.75em;font-weight:600;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.stat-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;background-clip:text;font-size:1.8em;font-weight:800;letter-spacing:-1px}.odometer-card{animation:fadeInUp .8s ease;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1e293b99;border:1px solid #94a3b81a;border-radius:16px;box-shadow:0 4px 6px #0000001a;overflow:hidden;padding:20px;position:relative;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1)}.odometer-card:before{background:linear-gradient(90deg,#60a5fa,#a78bfa,#f472b6);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.odometer-card:hover{border-color:#a78bfa4d;box-shadow:0 15px 30px #a78bfa33;transform:translateY(-5px) scale(1.02)}.odometer-card:hover:before{opacity:1}.odometer-container{height:90px;margin:15px auto;position:relative;width:150px}.odometer-arc{filter:drop-shadow(0 0 8px rgba(96,165,250,.3));height:100%;width:100%}.odometer-needle{background:linear-gradient(180deg,#f472b6,#60a5fa);border-radius:2px;bottom:8px;box-shadow:0 0 10px #f472b680;height:60px;left:50%;position:absolute;transform-origin:bottom center;transition:transform 1s ease-out;width:3px}.odometer-center{background:linear-gradient(135deg,#60a5fa,#f472b6);border-radius:50%;bottom:5px;box-shadow:0 0 15px #60a5fa80;height:12px;left:50%;position:absolute;transform:translateX(-50%);width:12px}.odometer-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;background-clip:text;font-size:1.8em;font-weight:800;margin-top:8px}.search-filter{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:25px}.search-input{background:#0f172a99;border:1px solid #94a3b833;border-radius:12px;color:#e2e8f0;flex:1 1;font-size:1em;min-width:200px;padding:14px 18px;transition:all .3s ease}.search-input::placeholder{color:#64748b}.search-input:focus{background:#0f172acc;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a;outline:none}.filter-select{background:#0f172a99;border:1px solid #94a3b833;border-radius:12px;color:#e2e8f0;cursor:pointer;font-size:1em;padding:14px 18px;transition:all .3s ease}.filter-select:focus{background:#0f172acc;border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a;outline:none}.filter-select option{background:#1e293b;color:#e2e8f0}.table-container{animation:fadeInUp 1s ease;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#1e293b99;border:1px solid #94a3b81a;border-radius:20px;box-shadow:0 4px 6px #0000001a;overflow-x:auto;padding:35px}table{border-collapse:initial;border-spacing:0;width:100%}thead{background:linear-gradient(135deg,#60a5fa33,#a78bfa33);border-radius:12px}thead tr th:first-child{border-radius:12px 0 0 12px}thead tr th:last-child{border-radius:0 12px 12px 0}th{color:#e2e8f0;cursor:pointer;font-size:.9em;font-weight:700;letter-spacing:1px;padding:18px 15px;text-align:left;text-transform:uppercase;transition:background .2s ease;-webkit-user-select:none;user-select:none}th:hover{background:#60a5fa26}td{border-bottom:1px solid #94a3b81a;color:#cbd5e1;padding:18px 15px}tbody tr{transition:all .3s ease}tbody tr:hover{background:#60a5fa0d;transform:scale(1.01)}.status-badge{border-radius:20px;font-size:.8em;font-weight:700;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.status-completed{background:#22c55e33;border:1px solid #22c55e4d;color:#4ade80}.status-pending{background:#eab30833;border:1px solid #eab3084d;color:#facc15}.ctc-high{color:#4ade80;font-weight:700}.ctc-medium{color:#facc15;font-weight:700}.ctc-low{color:#60a5fa;font-weight:700}.off-campus-note{background:#3b82f61a;border-left:4px solid #60a5fa;border-radius:12px;box-shadow:0 0 20px #3b82f61a;margin-top:30px;padding:25px}.off-campus-note p{color:#cbd5e1;line-height:1.7;margin:0}.off-campus-note strong{color:#60a5fa;font-size:1.05em;font-weight:700}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){h1{font-size:2.5em}.stat-value{font-size:2em}table{font-size:.85em}.off-campus-note{margin-top:20px;padding:18px}}.suggestion-fab{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50px;bottom:30px;box-shadow:0 8px 25px #667eea66;color:#fff;cursor:pointer;display:flex;font-family:Inter,sans-serif;font-size:15px;font-weight:600;gap:8px;padding:14px 20px;position:fixed;right:30px;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:999}.suggestion-fab:hover{box-shadow:0 12px 35px #667eea99;transform:translateY(-3px)}.suggestion-fab:active{transform:translateY(-1px)}.suggestion-fab svg{flex-shrink:0}.fab-text{white-space:nowrap}.suggestion-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.suggestion-modal{animation:slideUp .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,#1e1e3f,#2a2a4a);border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 20px 60px #00000080;max-width:550px;overflow:hidden;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.suggestion-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:25px 30px}.suggestion-header h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#a78bfa,#f472b6);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:22px;font-weight:600;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;font-size:32px;height:40px;justify-content:center;line-height:1;transition:all .2s;width:40px}.close-btn:hover{background:#ffffff1a;color:#fff;transform:rotate(90deg)}.error-message,.success-message{align-items:center;animation:slideDown .3s ease;border-radius:12px;display:flex;font-size:14px;font-weight:500;gap:12px;margin:20px 30px;padding:15px 20px}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.success-message{background:#22c55e26;border:1px solid #22c55e4d;color:#86efac}.success-message svg{flex-shrink:0}.error-message{background:#ef444426;border:1px solid #ef44444d;color:#fca5a5}.suggestion-form{padding:30px}.suggestion-form textarea{background:#ffffff0d;border:2px solid #ffffff1a;border-radius:12px;color:#fff;font-family:Inter,sans-serif;font-size:15px;line-height:1.6;min-height:150px;padding:16px;resize:vertical;transition:all .3s;width:100%}.suggestion-form textarea::placeholder{color:#64748b}.suggestion-form textarea:focus{background:#ffffff14;border-color:#667eea;box-shadow:0 0 0 4px #667eea26;outline:none}.suggestion-form textarea:disabled{cursor:not-allowed;opacity:.6}.form-footer{align-items:center;display:flex;gap:15px;justify-content:space-between;margin-top:15px}.char-count{color:#64748b;font-size:13px;font-weight:500}.submit-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-family:Inter,sans-serif;font-size:15px;font-weight:600;gap:8px;padding:12px 32px;transition:all .3s;white-space:nowrap}.submit-btn:hover:not(:disabled){box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.submit-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.spinner{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:14px;width:14px}@keyframes spin{to{transform:rotate(1turn)}}.helper-text{color:#64748b;font-size:13px;margin:15px 0 0;text-align:center}@media (max-width:768px){.suggestion-fab{font-size:14px;padding:12px 16px}.fab-text{display:inline}.suggestion-fab{border-radius:50px;bottom:20px;font-size:13px;opacity:.85;padding:10px 16px;right:20px}.suggestion-fab:hover{opacity:1}.suggestion-modal{margin:10px;width:95%}.suggestion-form,.suggestion-header{padding:20px}.suggestion-form textarea{font-size:14px;min-height:120px}.form-footer{align-items:stretch;flex-direction:column}.submit-btn{justify-content:center;width:100%}}.suggestion-form textarea::-webkit-scrollbar{width:8px}.suggestion-form textarea::-webkit-scrollbar-track{background:#ffffff0d;border-radius:10px}.suggestion-form textarea::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.suggestion-form textarea::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.info-banner{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#3b82f633,#a855f733,#ec489933);border:none;border-bottom:2px solid #60a5fa4d;border-radius:0;box-shadow:0 4px 20px #00000080;margin:-20px -20px 30px;overflow:hidden;position:relative;transition:all .3s ease}.banner-content{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:0 auto;max-width:1400px;padding:16px 40px;position:relative}.marquee-container{flex:1 1;mask-image:linear-gradient(90deg,#0000,#000 10%,#000 90%,#0000);-webkit-mask-image:linear-gradient(90deg,#0000,#000 10%,#000 90%,#0000);overflow:hidden;position:relative}.marquee{animation:scroll 8s linear infinite;display:flex;white-space:nowrap}.marquee-text{color:#fff;display:inline-block;font-size:1.05em;font-weight:600;letter-spacing:.3px;line-height:1.5;padding-right:0;text-shadow:0 2px 8px #00000080}@keyframes scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.info-banner:hover .marquee{animation-play-state:paused}.banner-close-btn{align-items:center;background:#ffffff26;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;transition:all .3s ease;width:32px}.banner-close-btn:hover{background:#ef444466;border-color:#ef444499;box-shadow:0 4px 16px #ef444480;transform:scale(1.15) rotate(90deg)}.close-icon{transition:transform .3s ease}@media (max-width:768px){.marquee-text{font-size:.95em}.banner-content{padding:14px 20px}.banner-close-btn{height:30px;width:30px}.info-banner{margin:-20px -20px 20px}}@media (max-width:480px){.marquee-text{font-size:.85em}.banner-content{padding:12px 15px}.banner-close-btn{height:28px;width:28px}}@keyframes fadeInBanner{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.info-banner{animation:fadeInBanner .6s ease-out}.changelog-fab{align-items:center;animation:fadeInDown .6s ease;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;box-shadow:0 8px 24px #667eea66;cursor:pointer;display:flex;height:64px;justify-content:center;position:fixed;right:30px;top:100px;transition:all .3s ease;width:64px;z-index:999}.changelog-fab:hover{box-shadow:0 12px 32px #667eea99;transform:scale(1.1) translateY(-2px)}.fab-icon{font-size:28px}.fab-badge{background:#ef4444;border:2px solid #0f0f23;border-radius:12px;color:#fff;font-size:12px;font-weight:700;min-width:24px;padding:2px 8px;position:absolute;right:-4px;text-align:center;top:-4px}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.changelog-backdrop{animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.changelog-dialog{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#0f0f23fa,#1e1e3cfa);border:1px solid #fff3;border-radius:20px;box-shadow:0 20px 60px #000c;display:flex;flex-direction:column;left:50%;max-height:80vh;max-width:600px;opacity:0;pointer-events:none;position:fixed;top:50%;transform:translate(-50%,-50%) scale(.9);transition:all .3s ease;width:90%;z-index:1001}.changelog-dialog.open{opacity:1;pointer-events:all;transform:translate(-50%,-50%) scale(1)}.changelog-dialog-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;flex-shrink:0;justify-content:space-between;padding:24px 28px}.changelog-title{align-items:center;display:flex;gap:12px}.changelog-icon{font-size:24px}.changelog-title h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;background-clip:text;font-size:1.5em;font-weight:700;margin:0}.total-changes-badge{background:#60a5fa33;border:1px solid #60a5fa4d;border-radius:20px;color:#60a5fa;font-size:.85em;font-weight:600;padding:4px 12px}.changelog-close-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:10px;color:#e2e8f0;cursor:pointer;display:flex;flex-shrink:0;height:40px;justify-content:center;transition:all .3s ease;width:40px}.changelog-close-btn:hover{background:#ef44444d;border-color:#ef444480;transform:rotate(90deg)}.changelog-content{flex:1 1;overflow-y:auto;padding:20px 28px}.changelog-content::-webkit-scrollbar{width:8px}.changelog-content::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.changelog-content::-webkit-scrollbar-thumb{background:#60a5fa4d;border-radius:4px}.changelog-content::-webkit-scrollbar-thumb:hover{background:#60a5fa80}.changelog-timeline{position:relative}.timeline-entry{display:flex;gap:20px;position:relative}.timeline-marker{align-items:center;display:flex;flex-direction:column;position:relative}.timeline-dot{background:linear-gradient(135deg,#60a5fa,#a78bfa);border:3px solid #0f0f23e6;border-radius:50%;box-shadow:0 0 0 4px #60a5fa33;flex-shrink:0;height:16px;width:16px;z-index:2}.timeline-line{background:linear-gradient(180deg,#60a5fa80,#a855f74d);flex:1 1;margin-top:4px;width:2px}.timeline-content{flex:1 1;margin-bottom:24px}.entry-header{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:12px;padding:16px 20px;transition:all .3s ease}.entry-header:hover{background:#ffffff14;border-color:#60a5fa4d;transform:translateX(4px)}.entry-info{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.entry-date{color:#e2e8f0;font-size:.95em;font-weight:600}.entry-relative{color:#94a3b8;font-size:.85em}.entry-changes-count{background:#a855f733;border:1px solid #a855f74d;border-radius:12px;color:#a78bfa;font-size:.8em;font-weight:600;padding:3px 10px}.entry-expand-btn{align-items:center;background:#0000;border:none;color:#94a3b8;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .3s ease}.entry-expand-btn:hover{color:#60a5fa;transform:scale(1.1)}.expand-arrow{transition:transform .3s ease}.expand-arrow.expanded{transform:rotate(180deg)}.changes-list{animation:fadeIn .3s ease;padding:0 8px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.change-item{align-items:flex-start;background:#ffffff0d;border-left:4px solid;border-radius:8px;display:flex;gap:12px;margin-bottom:10px;padding:14px 16px;transition:all .3s ease}.change-item:hover{background:#ffffff14;transform:translateX(8px)}.change-icon{flex-shrink:0;font-size:20px;margin-top:2px}.change-details{color:#e2e8f0;flex:1 1}.change-details strong{color:#f1f5f9;display:block;font-size:1em;font-weight:600;margin-bottom:4px}.change-details p{color:#cbd5e1;font-size:.9em;line-height:1.5;margin:0}.change-type-badge{border-radius:12px;color:#fff;flex-shrink:0;font-size:.75em;font-weight:700;letter-spacing:.5px;margin-top:2px;padding:4px 10px;text-transform:uppercase}@media (max-width:768px){.changelog-fab{height:56px;right:20px;top:80px;width:56px}.fab-icon{font-size:24px}.changelog-dialog{max-height:85vh;width:95%}.changelog-dialog-header{padding:20px}.changelog-content{padding:16px 20px}.changelog-title h3{font-size:1.3em}.timeline-entry{gap:12px}.timeline-dot{height:12px;width:12px}.entry-header{gap:12px;padding:12px 16px}.entry-header,.entry-info{align-items:flex-start;flex-direction:column}.entry-info{gap:6px;width:100%}.entry-expand-btn{align-self:flex-end;margin-top:-30px}.change-item{flex-direction:column;gap:8px;padding:12px 14px}.change-type-badge{align-self:flex-start}.total-changes-badge{font-size:.75em}}@media (max-width:480px){.changelog-fab{height:52px;right:16px;top:70px;width:52px}.fab-icon{font-size:22px}.changelog-icon{font-size:20px}.changelog-title h3{font-size:1.1em}.entry-date{font-size:.85em}.entry-relative{font-size:.75em}.change-details strong{font-size:.95em}.change-details p{font-size:.85em}}
/*# sourceMappingURL=main.6dd7225a.css.map*/