@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700&family=Inter:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";:root{--ink-900: #101a26;--ink-800: #16263a;--ink-700: #1e3448;--ink-600: #2c465e;--paper: #f5f1e8;--paper-2: #ece5d6;--card: #ffffff;--line: #d9cfbc;--line-2: #e7dfce;--text: #1b2733;--muted: #5d6b78;--faint: #8b96a1;--amber: #b57a1e;--amber-b: #f4e6c8;--safety: #2f7d5b;--target: #b57a1e;--reach: #b0472f;--unavail: #9aa2ab;--safety-b:#dcefe4;--target-b:#f4e6c8;--reach-b: #f2ddd5;--shadow: 0 1px 2px rgba(16,26,38,.06), 0 8px 24px rgba(16,26,38,.06);--radius: 10px;--mono: "IBM Plex Mono", ui-monospace, monospace;--serif: "Fraunces", Georgia, serif;--sans: "Inter", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--sans);color:var(--text);background:radial-gradient(1200px 500px at 80% -10%,#1c3247 0%,transparent 60%),var(--paper);-webkit-font-smoothing:antialiased}.shell{min-height:100vh;display:flex;flex-direction:column;padding-top:var(--topbar-h, 0px);box-sizing:border-box}html{scroll-padding-top:var(--topbar-h, 0px)}.topbar{position:fixed;top:0;left:0;right:0;z-index:30;background:#101a26eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #0c1620;color:#eef2f5}.topbar-inner{max-width:1180px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:22px}.topbar-stack{flex-direction:column;align-items:flex-start;gap:12px}.nav-row{margin-left:0!important;border-top:1px solid rgba(255,255,255,.08);padding-top:10px}.brand{display:flex;align-items:center;gap:11px;font-family:var(--serif);font-weight:600;font-size:19px;letter-spacing:.2px;color:#fff}.brand small{font-family:var(--mono);font-size:10px;letter-spacing:.6px;color:#8fb4d4;margin-top:-2px}.brand-desc-desktop{display:block}.brand-desc-mobile{display:none}.nav{display:flex;gap:2px;flex-wrap:nowrap;margin-left:auto}.subnav{margin:0 0 18px;padding-bottom:10px;border-bottom:1px solid var(--line-2, #e5e5e5);gap:6px;flex-wrap:wrap}.nav.subnav button{background:var(--paper-2, #f4f2ee);color:var(--ink-900);font-family:var(--sans);font-size:13px;font-weight:500;padding:7px 12px;border-radius:7px;border:1px solid transparent;cursor:pointer;transition:background .15s,color .15s}.nav.subnav button:hover{background:#e3d9c4;color:#000}.nav.subnav button.active{background:#e9d3a3;color:#000;font-weight:600}.gear-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border-radius:8px;cursor:pointer;background:#ffffff1a;border:1px solid rgba(255,255,255,.28);color:#eef2f5;transition:background .15s,border-color .15s,color .15s}.gear-btn:hover{background:#ffffff38;border-color:#ffffff8c;color:#fff}.gear-btn.on{background:#e9d3a3;border-color:#e9d3a3;color:#101a26}.gear-btn:focus-visible{outline:2px solid #8fb4d4;outline-offset:2px}.topbar .user-menu{display:flex;align-items:center;gap:10px}.topbar .user-menu-mobile{display:none}.topbar .user-menu .user-email{font-size:11.5px;color:#b8cee0;white-space:nowrap}.topbar .user-menu .btn,.topbar .user-menu .btn.ghost{background:#ffffff1a;border:1px solid rgba(255,255,255,.35);color:#fff;font-weight:600}.topbar .user-menu .btn:hover,.topbar .user-menu .btn.ghost:hover{background:#ffffff38;border-color:#fff9;color:#fff}.topbar .user-menu .btn:focus-visible,.topbar .user-menu .btn.ghost:focus-visible{outline:2px solid #8fb4d4;outline-offset:2px}.nav button{background:transparent;border:0;color:#a9bccc;font-family:var(--sans);font-size:13.5px;font-weight:500;padding:8px 12px;border-radius:7px;cursor:pointer;transition:background .15s,color .15s}.nav button:hover{color:#fff;background:#ffffff0f}.nav button.active{color:var(--ink-900);background:#e9d3a3}.container{max-width:1180px;margin:0 auto;padding:26px 20px 80px;width:100%}h1,h2,h3{font-family:var(--serif);font-weight:600;color:var(--ink-900);line-height:1.12;margin:0}h1{font-size:34px;letter-spacing:-.4px}h2{font-size:23px}h3{font-size:17px}.eyebrow{font-family:var(--mono);font-size:11.5px;letter-spacing:.8px;color:var(--amber);font-weight:600}.lead{color:var(--muted);font-size:15.5px;line-height:1.6;max-width:64ch}.mono{font-family:var(--mono)}.card{background:var(--card);border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow)}.card.pad{padding:20px}.grid{display:grid;gap:16px}.stack{display:flex;flex-direction:column;gap:14px}.row{display:flex;gap:12px;align-items:center}.wrap{flex-wrap:wrap}.spread{justify-content:space-between}.src{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.2px;color:var(--muted);white-space:nowrap}.src.official{color:#2c5c8a}.src.verified{color:#6b5316}.src.estimated{color:#6a4a68}.src.unavailable{color:#6b7580}.cat{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:12.5px;padding:3px 10px;border-radius:999px}.cat.Safety{color:#1e5c41;background:var(--safety-b)}.cat.Target{color:#7a5313;background:var(--target-b)}.cat.Reach{color:#7d2f1d;background:var(--reach-b)}.cat.Unknown{color:#5d6b78;background:#eef1f3}.glyph{font-size:11px;display:inline-flex;align-items:center}.field{display:flex;flex-direction:column;gap:4px;padding:11px 0;border-bottom:1px dashed var(--line-2)}.field:last-child{border-bottom:0}.field .k{font-size:12.5px;color:var(--muted);font-weight:500}.field .v{font-family:var(--mono);font-size:15px;color:var(--ink-900);font-weight:500}.field .v.na{color:var(--unavail);font-style:italic;font-family:var(--sans);font-size:13.5px}.field-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.meter{height:7px;border-radius:999px;background:var(--paper-2);overflow:hidden}.meter>span{display:block;height:100%;border-radius:999px;background:var(--ink-700)}.btn{font-family:var(--sans);font-weight:600;font-size:14px;border-radius:8px;padding:10px 16px;cursor:pointer;border:1px solid transparent;transition:transform .05s,background .15s,box-shadow .15s}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--ink-800);color:#fff}.btn.primary:hover{background:var(--ink-700)}.btn.amber{background:#d9b262;color:#2a1e07}.btn.amber:hover{background:#e3c079}.btn.ghost{background:transparent;border-color:var(--line);color:var(--ink-800)}.btn.ghost:hover{background:var(--paper-2)}.btn.sm{padding:6px 11px;font-size:12.5px}.btn:disabled{opacity:.5;cursor:not-allowed}label.lbl{display:block;font-size:12.5px;font-weight:600;color:var(--ink-800);margin-bottom:6px}input.inp,select.inp,textarea.inp{width:100%;font-family:var(--sans);font-size:14px;color:var(--text);padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:#fffdf8}input.inp:focus,select.inp:focus,textarea.inp:focus{outline:2px solid #d9b262;outline-offset:1px;border-color:#d9b262}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{font-size:13px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:#fffdf8;cursor:pointer;-webkit-user-select:none;user-select:none}.chip.on{background:var(--ink-800);color:#fff;border-color:var(--ink-800)}table.t{width:100%;border-collapse:collapse;font-size:13.5px}table.t th{text-align:left;font-family:var(--mono);font-size:11.5px;letter-spacing:.2px;color:var(--muted);font-weight:600;padding:8px 10px;border-bottom:2px solid var(--line)}table.t td{padding:9px 10px;border-bottom:1px solid var(--line-2);vertical-align:top}table.t tr:hover td{background:#fffaf0}.table-wrap{overflow-x:auto;max-width:100%}.table-wrap table{min-width:480px}.timeline-table-wrap{overflow-x:auto;max-width:100%}.timeline-table{min-width:640px}.note{font-size:12.5px;color:var(--muted);line-height:1.55}.disclaimer{border-left:3px solid var(--amber);background:#fbf6ea;padding:12px 14px;border-radius:0 8px 8px 0;font-size:12.5px;color:#5d5333;line-height:1.55}.banner{background:var(--ink-900);color:#dbe6ef;border-radius:var(--radius);padding:18px 24px}.hero-content{max-width:780px}.banner .eyebrow{color:#e9c987}.banner h1{color:#fff;font-size:42px;margin:6px 0 0;max-width:20ch}.banner .lead{color:#b7c6d4;margin:10px 0 0}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.kpi{background:var(--card);border:1px solid var(--line-2);border-radius:var(--radius);padding:14px 16px}.kpi .n{font-family:var(--serif);font-size:27px;font-weight:600;color:var(--ink-900)}.kpi .l{font-size:11.5px;color:var(--muted);margin-top:2px}.divider{height:1px;background:var(--line-2);margin:4px 0}.spinner{width:18px;height:18px;border:2px solid var(--line);border-top-color:var(--ink-700);border-radius:50%;animation:spin .7s linear infinite}.spinner-sm{display:inline-block;width:11px;height:11px;border:2px solid rgba(255,255,255,.5);border-top-color:currentColor;border-radius:50%;animation:spin .7s linear infinite;margin-right:6px;vertical-align:-1px}@keyframes spin{to{transform:rotate(360deg)}}.empty{text-align:center;padding:40px 20px;color:var(--muted)}.pill{font-family:var(--mono);font-size:11px;padding:2px 8px;border-radius:6px;background:var(--paper-2);color:var(--muted)}.college-autocomplete,.major-autocomplete{position:relative}.college-autocomplete-results{position:absolute;z-index:20;top:calc(100% + 4px);left:0;right:0;background:var(--card);border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow);max-height:260px;overflow-y:auto;padding:4px}.college-autocomplete-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;text-align:left;background:none;border:0;border-radius:7px;padding:8px 10px;cursor:pointer;font-family:inherit;font-size:13.5px;color:var(--text)}.college-autocomplete-item:hover,.college-autocomplete-item:focus{background:var(--paper-2)}.college-autocomplete-item.highlighted{background:var(--target-b, #eef4fb)}.college-autocomplete-selected{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--paper-2);border:1px solid var(--line-2);border-radius:var(--radius);padding:10px 14px}.link{color:#2c5c8a;text-decoration:underline;text-underline-offset:2px;cursor:pointer;background:none;border:0;font-size:inherit;padding:0;font-family:inherit}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#101a268c;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;z-index:50;overflow-y:auto}.modal{background:var(--paper);border-radius:14px;max-width:760px;width:100%;box-shadow:0 30px 80px #0006}.modal-head{position:sticky;top:0;background:var(--ink-900);color:#fff;padding:18px 22px;border-radius:14px 14px 0 0;display:flex;justify-content:space-between;align-items:flex-start}.modal-body{padding:22px}.x{background:#ffffff1f;border:0;color:#fff;width:30px;height:30px;border-radius:7px;cursor:pointer;font-size:16px}@media (max-width: 820px){h1{font-size:27px}.topbar-inner{flex-wrap:wrap;gap:10px}.topbar .row.spread{flex-wrap:nowrap}.topbar .brand{min-width:0;flex:1 1 auto;overflow:hidden}.topbar .brand span,.topbar .brand small{overflow-wrap:anywhere}.topbar .user-menu-mobile{flex-shrink:0}.brand-desc-desktop{display:none}.brand-desc-mobile{display:block}.nav.nav-row{display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-left:-20px!important;margin-right:-20px;width:calc(100% + 40px);padding:8px 20px;background:#ffffff0f;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.06)}.nav.nav-row button{flex:0 0 auto}.topbar .user-menu{display:none}.topbar .user-menu-mobile{display:flex;align-items:center;flex:0 0 auto;margin-left:10px}.topbar .user-menu-mobile .btn,.topbar .user-menu-mobile .btn.ghost{background:#ffffff1a;border:1px solid rgba(255,255,255,.35);color:#fff;font-weight:600;padding:6px 10px;font-size:12px;white-space:nowrap}.subnav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:12px}.cols-2,.cols-3{grid-template-columns:1fr!important}.banner{padding:16px 18px}.banner h1{font-size:30px}.banner .row{flex-wrap:wrap}html,body,#root{overflow-x:clip;max-width:100%}.container,.card,.stack,.grid,.row,.field,.kpis,.kpi{min-width:0;max-width:100%}.row{flex-wrap:wrap}.row>*{min-width:0}.note,.lead,.field .v,h1,h2,h3,p{overflow-wrap:anywhere}img,svg,.pill,.chip,.src{max-width:100%}.timeline-table-wrap{overflow-x:visible}.timeline-table{min-width:0;width:100%}.timeline-table thead{display:none}.timeline-table,.timeline-table tbody,.timeline-table tr,.timeline-table td{display:block;width:100%;max-width:100%}.timeline-table tr{border:1px solid var(--line-2);border-radius:var(--radius);padding:10px 12px;margin-bottom:12px;background:var(--card)}.timeline-table tr:last-child{margin-bottom:0}.timeline-table td{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:8px 0!important;border-bottom:1px dashed var(--line-2);min-width:0;overflow-wrap:anywhere}.timeline-table td:last-child{border-bottom:0;padding-top:10px!important}.timeline-table td:before{content:attr(data-label);font-family:var(--mono);font-size:11px;letter-spacing:.2px;color:var(--muted);font-weight:600}.timeline-table td.no-label:before{content:none}.timeline-table td select.inp{width:100%!important;min-width:0!important}.apply-page .card.pad .btn{flex:1 1 auto}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.profile-actions{flex-wrap:wrap;gap:8px 6px}.profile-actions .profile-action-sample,.profile-actions .profile-action-save,.profile-actions .profile-action-reset{order:1;flex:1 1 0;min-width:0;margin-left:0!important;padding-left:6px;padding-right:6px;font-size:12.5px;text-align:center}.profile-actions .profile-action-submit{order:2;flex:1 1 100%;width:100%}}.cols-2{grid-template-columns:1fr 1fr}.cols-3{grid-template-columns:1fr 1fr 1fr}@media (max-width: 480px){.about-actions .btn{flex:1 1 100%;text-align:center}.about-flow{flex-direction:column;align-items:flex-start;gap:4px}.about-flow .about-flow-arrow{display:block;transform:rotate(90deg);margin-left:10px}}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}:focus-visible{outline:2px solid #d9b262;outline-offset:2px}.matricula-badge{font-family:var(--mono);font-size:10.5px;letter-spacing:.4px;font-weight:600;color:#6b4a10;background:var(--amber-b);border:1px solid #e3c98f;border-radius:999px;padding:2px 8px;white-space:nowrap}.premium-gate{border-color:#e3c98f}.premium-points{margin:10px 0 6px;padding-left:18px;font-size:13.5px;line-height:1.6;color:var(--text)}.plan-compare{width:100%;border-collapse:collapse;font-size:13.5px}.plan-compare th,.plan-compare td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line-2, #e5e5e5)}.plan-compare th{font-family:var(--mono);font-size:11.5px;letter-spacing:.3px;color:var(--muted)}.plan-compare td:not(:first-child),.plan-compare th:not(:first-child){text-align:center}.rc-notice{position:fixed;left:16px;right:16px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:60;max-width:520px;margin:0 auto;background:var(--ink-900);color:#fff;border-radius:10px;padding:12px 14px;font-size:13.5px;box-shadow:0 10px 30px #00000040}.native-ios body{-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}.native-ios .topbar{padding-top:env(safe-area-inset-top)}.native-ios .topbar-inner{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-top:8px;padding-bottom:8px}.native-ios .topbar .topbar-navrow,.native-ios .topbar .nav.nav-row{display:none!important}.native-ios .container{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:calc(96px + env(safe-area-inset-bottom))}.bottom-tabbar{display:none}.bottom-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:40;justify-content:space-around;background:#101a26f7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid #0c1620;padding:5px max(4px,env(safe-area-inset-right)) calc(5px + env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-left))}.bottom-tabbar button{flex:1 1 0;min-width:0;min-height:52px;padding:2px 1px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;background:none;border:0;color:#8fa3b5;cursor:pointer;font-family:var(--sans);font-size:9.5px;font-weight:500;line-height:1.15;letter-spacing:0;text-align:center;-webkit-tap-highlight-color:transparent}.bottom-tabbar button svg{flex-shrink:0;margin-top:3px}.bottom-tabbar button span{display:block;max-width:100%;overflow-wrap:anywhere}.bottom-tabbar button.active{color:#e9c987}.bottom-tabbar button:active{opacity:.7}@media (max-width: 820px){.bottom-tabbar{display:flex}.topbar .topbar-navrow,.topbar .nav.nav-row{display:none!important}.container{padding-bottom:calc(96px + env(safe-area-inset-bottom))}}.native-ios .bottom-tabbar{display:flex}.keyboard-open .bottom-tabbar{display:none!important}.native-ios .subnav button{min-height:36px}.native-ios .btn{min-height:40px}.native-ios .btn.sm{min-height:34px}.native-ios .chip{min-height:32px;display:inline-flex;align-items:center}.native-ios input.inp,.native-ios select.inp,.native-ios textarea.inp{font-size:16px}.native-ios .modal-bg{padding-top:calc(16px + env(safe-area-inset-top));padding-bottom:calc(16px + env(safe-area-inset-bottom));padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}.login-screen{padding:20px}.native-ios .login-screen{padding-top:calc(20px + env(safe-area-inset-top));padding-bottom:calc(20px + env(safe-area-inset-bottom))}.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.sub-pill{font-family:var(--sans);font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer;border-radius:999px;padding:6px 11px;min-height:30px;background:#d9b262;color:#2a1e07;border:1px solid #d9b262}.sub-pill.on{background:transparent;color:#e9c987;border-color:#e9c9878c}
