:root{--font-sans:var(--font-bvp), system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:var(--font-jbm), ui-monospace, "SFMono-Regular", Menlo, monospace;--radius-sm:6px;--radius:12px;--radius-lg:20px;--shadow:0 1px 2px #2b23200f, 0 8px 24px #2b23200f;--container:1280px;--container-wide:1400px;--gutter:16px}@media (min-width:640px){:root{--gutter:24px}}@media (min-width:1024px){:root{--gutter:32px}}:root[data-theme=dark]{--shadow:0 1px 2px #0006, 0 8px 24px #00000059}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:80px}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}img{max-width:100%;height:auto}a{color:var(--primary);text-underline-offset:3px}a:hover{color:var(--primary-hover)}h1,h2,h3{letter-spacing:-.01em;text-wrap:balance;line-height:1.25}h1{margin:.2em 0 .4em;font-size:clamp(1.9rem,4.2vw,3rem);font-weight:800}h2{font-size:clamp(1.3rem,2.4vw,1.65rem);font-weight:700}h3{font-size:1.1rem;font-weight:700}p{text-wrap:pretty}:focus-visible{outline:3px solid var(--primary-2);outline-offset:2px;border-radius:4px}.container{width:100%;max-width:var(--container);padding:0 var(--gutter);margin:0 auto}.muted{color:var(--text-muted)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--surface);border-radius:var(--radius-sm);padding:8px 12px;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:8px}.emoji{vertical-align:-.2em;flex:none;display:inline-block}.text-gradient{background:var(--gradient-brand);color:#0000;-webkit-background-clip:text;background-clip:text}.demo-banner{padding:6px var(--gutter);background:var(--verdict-mid-bg);color:var(--verdict-mid-fg);text-align:center;justify-content:center;align-items:center;gap:8px;font-size:.85rem;font-weight:600;display:flex}.site-header{z-index:40;background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0}.site-header__inner{align-items:center;gap:20px;min-height:64px;display:flex}.brand{color:var(--text);white-space:nowrap;align-items:center;gap:8px;font-size:1.1rem;font-weight:800;text-decoration:none;display:inline-flex}.brand:hover{color:var(--text)}.site-nav{align-items:center;gap:4px;margin-left:auto;display:flex}.site-nav a{color:var(--text);border-radius:var(--radius-sm);white-space:nowrap;padding:8px 10px;font-size:.95rem;font-weight:500;text-decoration:none}.site-nav a:hover{background:var(--primary-soft);color:var(--primary)}.site-header__tools{align-items:center;gap:6px;display:flex}.icon-btn,.theme-toggle{border:1px solid var(--border);background:var(--surface);min-width:38px;height:38px;color:var(--text);font:inherit;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:.85rem;display:inline-flex}.icon-btn:hover,.theme-toggle:hover{border-color:var(--primary)}.site-footer{background:var(--bg-subtle);border-top:1px solid var(--border);margin-top:80px;padding:48px 0 24px;font-size:.95rem}.site-footer__grid{grid-template-columns:1.6fr repeat(3,1fr);gap:32px;display:grid}@media (max-width:760px){.site-footer__grid{grid-template-columns:1fr 1fr}.site-footer__grid>:first-child{grid-column:1/-1}}.site-footer__title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 12px;font-size:.8rem}.site-footer ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.site-footer a{color:var(--text);text-decoration:none}.site-footer a:hover{color:var(--primary)}.footer-disclaimer{color:var(--text-muted);max-width:44ch;font-size:.85rem}.site-footer__bottom{border-top:1px solid var(--border);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:36px;padding-top:18px;font-size:.9rem;display:flex}.built-by{align-items:center;gap:6px;font-weight:700;display:inline-flex}.btn{--btn:#cd322a;--btn-hover:#a6140d;--btn-active:#6e0903;--btn-soft-hover:#ffddda;--btn-soft-active:#ffada7;min-height:44px;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:10px 18px;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex}:root[data-theme=dark] .btn{--btn-soft-hover:#3a1a17;--btn-soft-active:#54231f}.btn--primary{background:var(--btn);border-color:var(--btn);color:#fff}.btn--primary:hover{background:var(--btn-hover);border-color:var(--btn-hover);color:#fff}.btn--primary:active{background:var(--btn-active);border-color:var(--btn-active)}.btn--ghost{background:var(--surface);color:var(--btn);border-color:var(--btn)}:root[data-theme=dark] .btn--ghost{color:#f08a80;border-color:#e5574a}.btn--ghost:hover{background:var(--btn-soft-hover);color:var(--btn);border-color:var(--btn)}:root[data-theme=dark] .btn--ghost:hover{color:#f6a79f}.btn--ghost:active{background:var(--btn-soft-active)}.btn[disabled],.btn[aria-disabled=true]{color:#8d9399;cursor:not-allowed;background:#e0e2e6;border-color:#d0d3d6}:root[data-theme=dark] .btn[disabled]{color:#8a817a;background:#2a2522;border-color:#3b3430}.btn--text{color:#8e8c8c;background:0 0;border:0;min-height:0;padding:4px 2px;font-weight:600}.btn--text:hover{color:#697077}.btn--tertiary{min-height:0;color:var(--btn);background:0 0;border:0;padding:4px 2px;font-weight:600}.btn--tertiary:hover{color:var(--btn);text-decoration:underline}:root[data-theme=dark] .btn--tertiary{color:#f08a80}.verdict{letter-spacing:.04em;white-space:nowrap;border-radius:999px;align-items:center;font-weight:800;display:inline-flex}.verdict--md{padding:6px 14px;font-size:.85rem}.verdict--sm{padding:3px 9px;font-size:.7rem}.verdict--dang-hoc{background:var(--verdict-yes-bg);color:var(--verdict-yes-fg)}.verdict--can-nhac{background:var(--verdict-mid-bg);color:var(--verdict-mid-fg)}.verdict--ken-nguoi{background:var(--verdict-niche-bg);color:var(--verdict-niche-fg)}.band{width:32px;height:32px;font-weight:800;font-family:var(--font-mono);border-radius:10px;place-items:center;display:inline-grid}.band--A{background:var(--gradient-brand);color:#fff}.band--B{background:var(--primary-soft);color:var(--primary)}.band--C{background:var(--bg-subtle);color:var(--text-muted);border:1px solid var(--border)}.band--chua-du{color:var(--text-muted);border:1px dashed var(--border);background:0 0}.band--lg{border-radius:16px;width:56px;height:56px;font-size:1.6rem}.anti-ai{align-items:center;gap:8px;display:inline-flex}.anti-ai__bar{background:var(--border);border-radius:99px;width:72px;height:8px;overflow:hidden}.anti-ai__bar span{background:var(--gradient-warm);height:100%;display:block}.chip{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:.92rem;font-weight:600;text-decoration:none;display:inline-flex}.chip:hover,.chip[aria-current=page]{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.chips{flex-wrap:wrap;gap:8px;display:flex}.hero{background:radial-gradient(1200px 600px at 8% -10%, var(--primary-soft) 0%, transparent 60%), radial-gradient(900px 520px at 108% 8%, var(--verdict-niche-bg) 0%, transparent 55%), var(--bg);border-bottom:1px solid var(--border);padding:56px 0 40px}.hero h1{margin:0;font-size:clamp(2.3rem,7vw,4.4rem)}.hero__sub{color:var(--text-muted);max-width:60ch;font-size:clamp(1rem,2vw,1.2rem)}.search{background:var(--surface);border:1px solid var(--border);max-width:680px;box-shadow:var(--shadow);border-radius:999px;gap:8px;margin:24px 0 18px;padding:6px;display:flex}.search:focus-within{border-color:var(--primary)}.search input{min-width:0;font:inherit;color:var(--text);background:0 0;border:0;flex:1;padding:10px 16px;font-size:1.05rem}.search input:focus{outline:none}.odometer{color:var(--text-muted);flex-wrap:wrap;gap:8px 22px;margin-top:22px;font-size:.95rem;display:flex}.odometer strong{font-family:var(--font-mono);color:var(--text);font-size:1.15rem}.ticker{border-bottom:1px solid var(--border);background:var(--surface);font-family:var(--font-mono);white-space:nowrap;font-size:.85rem;overflow:hidden}.ticker__track{gap:32px;padding:10px 0;animation:60s linear infinite ticker;display:inline-flex}.ticker__item b{color:var(--primary)}@keyframes ticker{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.ticker__track{animation:none}}.page-head{padding:28px 0 8px}.page-head__meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:.9rem;display:flex}.crumbs ol{color:var(--text-muted);flex-wrap:wrap;gap:6px;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.crumbs li+li:before{content:"/";color:var(--border);margin-right:6px}.crumbs a{color:var(--text-muted);text-decoration:none}.crumbs a:hover{color:var(--primary)}.answer{border-left:4px solid;border-image:var(--gradient-brand) 1;background:var(--surface);border-radius:0 var(--radius) var(--radius) 0;max-width:70ch;box-shadow:var(--shadow);margin:16px 0;padding:18px 20px;font-size:1.12rem;line-height:1.65}.facts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:20px 0;display:grid}.fact{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px}.fact__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem}.fact__value{font-family:var(--font-mono);margin-top:2px;font-size:1.15rem;font-weight:600}.fact__hint{color:var(--text-muted);font-size:.78rem}.section{margin:40px 0}.section__title{align-items:center;gap:10px;margin:0 0 8px;display:flex}.section__lead{color:var(--text-muted);max-width:70ch;margin-top:0}.two-col{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (max-width:720px){.two-col{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px}.card h3{margin-top:0}.card ul{margin:0;padding-left:1.2em}.card li+li{margin-top:6px}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.link-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:16px 18px;text-decoration:none;transition:border-color .15s,transform .15s;display:block}.link-card:hover{border-color:var(--primary);color:var(--text);transform:translateY(-1px)}.link-card__title{align-items:center;gap:8px;font-weight:700;display:flex}.link-card__meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:.88rem;display:flex}.demo-note{color:var(--amber-text);align-items:center;gap:6px;font-size:.85rem;display:flex}.table-wrap{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow-x:auto}.rank-table{border-collapse:collapse;width:100%;font-size:.95rem}.rank-table caption{text-align:left;color:var(--text-muted);padding:12px 14px 0;font-size:.85rem}.rank-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 14px;font-size:.75rem}.rank-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 14px}.rank-table tr:last-child td{border-bottom:0}.rank-table tbody tr:hover{background:var(--bg-subtle)}.rank-table .num{text-align:right;white-space:nowrap}.rank-table__name{color:var(--text);font-weight:700;text-decoration:none}.rank-table__name:hover{color:var(--primary)}.rank-table__sub{color:var(--text-muted);font-size:.85rem}.rank-table__unit{color:var(--text-muted);font-size:.75rem}@media (max-width:640px){.rank-table thead{display:none}.rank-table tr{border-bottom:1px solid var(--border);grid-template-columns:44px 1fr 1fr;gap:2px 10px;padding:12px 14px;display:grid}.rank-table td{border:0;padding:0}.rank-table td:first-child{grid-row:span 3}.rank-table td:nth-child(2){grid-column:2/-1}.rank-table .num{text-align:left;font-size:.85rem}.rank-table .num:before{content:attr(data-label) ": ";color:var(--text-muted);font-family:var(--font-sans)}}.score-grid{gap:8px;display:grid}.score-row{grid-template-columns:180px 1fr 60px 64px;align-items:center;gap:12px;font-size:.92rem;display:grid}.score-row__bar{background:var(--border);border-radius:99px;height:10px;overflow:hidden}.score-row__bar span{background:var(--gradient-brand);height:100%;display:block}@media (max-width:560px){.score-row{grid-template-columns:1fr 50px 56px}.score-row__bar{order:4;grid-column:1/-1}}.faq details{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:12px 16px}.faq details+details{margin-top:8px}.faq summary{cursor:pointer;font-weight:700}.faq p{margin:8px 0 0}.sources{border-radius:var(--radius);background:var(--bg-subtle);margin-top:32px;padding:14px 16px;font-size:.88rem}.sources__head{align-items:center;gap:8px;font-weight:700;display:flex}.sources ul{margin:8px 0 0;padding-left:1.2em}.vote{justify-items:start;gap:6px;display:grid}.vote .btn img{vertical-align:middle}.vote__count{background:#fff3;border-radius:99px;padding:2px 10px}.vote__note{color:var(--text-muted);min-height:1.3em;margin:0;font-size:.85rem}.share{flex-wrap:wrap;gap:8px;display:flex}.engage{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px;display:flex}.copylist ol{gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.copylist li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px}.copylist__day{color:var(--primary);margin-right:6px;font-weight:600}.table-simple{border-collapse:collapse;width:100%;font-size:.92rem}.table-simple th,.table-simple td{border-bottom:1px solid var(--border);text-align:left;padding:8px 10px}.table-simple th{color:var(--text-muted);font-size:.8rem;font-weight:600}.prose{max-width:72ch}.prose h2{margin-top:1.6em}.notice{border-radius:var(--radius);background:var(--primary-soft);color:var(--text);align-items:flex-start;gap:10px;padding:14px 16px;font-size:.95rem;display:flex}.tabs{flex-wrap:wrap;gap:8px;margin:12px 0 20px;display:flex}.tuition{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.info-btn{width:22px;height:22px;color:var(--text-muted);cursor:pointer;vertical-align:middle;background:0 0;border:0;border-radius:99px;place-items:center;padding:0;display:inline-grid}.info-btn:hover{color:var(--primary);background:var(--primary-soft)}.popover{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);max-width:min(440px,100vw - 32px);color:var(--text);box-shadow:var(--shadow);padding:18px 20px;font-size:.95rem}.popover::backdrop{background:#00000040}.stars{vertical-align:-.15em;flex:none;display:inline-block;position:relative}.stars__bg,.stars__fg{position:absolute;inset:0;overflow:hidden}.stars__bg svg{fill:var(--border)}.stars__fg svg{fill:var(--amber)}.review-summary{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px}.review-summary__head{flex-wrap:wrap;align-items:center;gap:16px 36px;margin-bottom:16px;display:flex}.review-summary__score,.review-summary__again{gap:2px;display:grid}.review-summary__big{font-size:2rem;font-weight:700;line-height:1.1}.criteria-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:8px 28px;display:grid}.criteria-row{grid-template-columns:170px 1fr 34px;align-items:center;gap:10px;font-size:.92rem;display:grid}.criteria-row__label{align-items:center;gap:6px;display:inline-flex}.criteria-row__bar{background:var(--border);border-radius:99px;height:8px;overflow:hidden}.criteria-row__bar span{background:var(--gradient-warm);height:100%;display:block}.review-list{gap:12px;margin:16px 0;display:grid}.review-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.review-card__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.review-card__title{margin:0 0 4px;font-size:1.05rem}.review-card__meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.85rem;display:flex}.review-card p{margin:10px 0 0}.review-card__foot{margin-top:12px;font-size:.8rem}.badge-verified{color:var(--success);align-items:center;gap:4px;font-weight:600;display:inline-flex}.again{white-space:nowrap;border-radius:99px;flex:none;padding:4px 10px;font-size:.78rem;font-weight:700}.again--yes{background:var(--verdict-yes-bg);color:var(--verdict-yes-fg)}.again--no{background:var(--bg-subtle);color:var(--text-muted);border:1px solid var(--border)}.school-reply{border-left:3px solid var(--plum-2);background:var(--bg-subtle);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin-top:12px;padding:10px 12px}.review-form,.calc{gap:16px;display:grid}.review-form fieldset,.calc fieldset{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:0;padding:14px 16px}.review-form legend,.calc legend{padding:0 6px;font-weight:700}.hp{position:absolute;left:-10000px}input,textarea,select{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;padding:9px 11px}input:focus,textarea:focus,select:focus{outline:2px solid var(--primary-2);outline-offset:0}input[type=radio],input[type=checkbox]{width:auto;accent-color:var(--primary)}.form-row{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:12px;display:grid}.form-row label,.form-block{gap:4px;font-size:.9rem;font-weight:600;display:grid}.radio-row{flex-wrap:wrap;gap:8px;display:flex}.pill-radio{border:1px solid var(--border);cursor:pointer;border-radius:99px;align-items:center;gap:6px;padding:8px 12px;display:inline-flex}.pill-radio:has(input:checked){border-color:var(--primary);background:var(--primary-soft)}.check{align-items:flex-start;gap:8px;display:flex}.rating-grid{gap:10px;display:grid}.rating-item{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.rating-item__opts{gap:4px;display:inline-flex}.star-opt input{opacity:0;position:absolute}.star-opt span{border:1px solid var(--border);cursor:pointer;width:36px;height:36px;font-family:var(--font-mono);border-radius:10px;place-items:center;display:inline-grid}.star-opt input:checked+span{background:var(--gradient-brand);color:#fff;border-color:#0000}.star-opt input:focus-visible+span{outline:3px solid var(--primary-2)}.form-error{color:var(--primary);font-weight:600}.small{font-size:.85rem}.subject-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;display:grid}.subject-grid label{gap:4px;font-size:.88rem;font-weight:600;display:grid}.subject-grid input{font-family:var(--font-mono)}.privacy-bar{border-radius:var(--radius);background:var(--verdict-yes-bg);color:var(--verdict-yes-fg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 18px;padding:10px 14px;font-size:.9rem;font-weight:600;display:flex}.privacy-bar img{vertical-align:-.25em}.filter-block{gap:6px;margin-bottom:12px;display:grid}.filter-block__label{color:var(--text-muted);font-size:.85rem;font-weight:600}button.chip{font:inherit;cursor:pointer;font-size:.9rem;font-weight:600}.chip[aria-pressed=true]{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.calc-output{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);gap:12px;padding:20px;display:grid}.calc-output h2{margin:0}.calc-output h3{margin:12px 0 0}.calc-result{gap:10px;display:grid}.calc-headline{margin:0;font-size:1.3rem;font-weight:700}.bucket-bar{flex-wrap:wrap;gap:8px;display:flex}.bucket{white-space:nowrap;border-radius:99px;align-items:center;gap:6px;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.bucket--rat-cao{color:#fff;background:#2f6b3a}.bucket--cao{color:#2d5a27;background:#ddefd9}.bucket--tiem-can{color:#6f5200;background:#fbefc0}.bucket--muc-tieu-xa{color:#8a3b00;background:#ffe1cc}.bucket--thap{color:#8e1e15;background:#fadbd8}:root[data-theme=dark] .bucket--rat-cao{color:#fff;background:#3f7a4a}:root[data-theme=dark] .bucket--cao{color:#a8d7a0;background:#26402a}:root[data-theme=dark] .bucket--tiem-can{color:#f3d77a;background:#4a3b10}:root[data-theme=dark] .bucket--muc-tieu-xa{color:#ffb68a;background:#55301a}:root[data-theme=dark] .bucket--thap{color:#f5a59e;background:#4a1e1b}.wish-list{gap:8px;margin:0;padding-left:1.6em;display:grid}.wish-list li>*{margin-right:8px}.wish-list a{font-weight:700}.wish-list .muted{display:block}.diff-up{color:var(--success)}.diff-down{color:var(--primary)}.tool-cta{border-radius:var(--radius-lg);background:var(--gradient-brand);color:#fff;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:22px;display:grid}.tool-cta h2{color:#fff;margin:0 0 6px}.tool-cta p{opacity:.95;margin:0}.tool-cta .btn{color:#a82419;background:#fff}@media (max-width:640px){.tool-cta{grid-template-columns:1fr}}.icon{vertical-align:-.2em;flex:none}.section__title .icon,.link-card__title .icon,.card h3 .icon,.sources__head .icon,.criteria-row__label .icon,.notice>.icon{color:var(--primary)}.demo-banner .icon,.demo-note .icon{color:currentColor}.brand__logo{border-radius:8px;flex:none;width:30px;height:30px}.picker{gap:14px;display:grid}.picker__row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.picker__field{gap:6px;font-size:.9rem;font-weight:600;display:grid;position:relative}.combo{position:relative}.combo input{padding-left:38px;padding-right:38px;font-size:1rem}.combo__icon{color:var(--text-muted);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.combo__ok{color:var(--success);position:absolute;top:50%;right:12px;transform:translateY(-50%)}.combo__list{z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);max-height:320px;margin:4px 0 0;padding:6px;font-weight:400;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.combo__list li{border-radius:var(--radius-sm);cursor:pointer;gap:2px;padding:9px 10px;display:grid}.combo__list li.is-active{background:var(--primary-soft)}.combo__empty{cursor:default}.select{display:block;position:relative}.select select{appearance:none;cursor:pointer;padding-right:36px}.select svg{pointer-events:none;color:var(--text-muted);position:absolute;top:50%;right:12px;transform:translateY(-50%)}.select select:disabled{opacity:.6;cursor:not-allowed}.filter-bar{flex-wrap:wrap;align-items:flex-end;gap:10px;margin:8px 0 20px;display:flex}.filter-bar .picker__field{min-width:min(360px,100%)}.how-it-works{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin:8px 0 20px;display:grid}.how-it-works__step{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:4px;padding:14px 16px;display:grid;position:relative}.how-it-works__step .icon{color:var(--primary)}.how-it-works__num{color:var(--text-muted);font-size:.8rem;position:absolute;top:10px;right:12px}.mobile-menu{display:none;position:relative}.mobile-menu>summary{list-style:none}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu__close,.mobile-menu[open] .mobile-menu__open{display:none}.mobile-menu[open] .mobile-menu__close{display:block}.mobile-menu__panel{z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(300px,100vw - 40px);box-shadow:var(--shadow);padding:8px;display:grid;position:absolute;top:calc(100% + 10px);right:0}.mobile-menu__panel a{border-radius:var(--radius-sm);min-height:46px;color:var(--text);align-items:center;padding:0 14px;font-weight:600;text-decoration:none;display:flex}.mobile-menu__panel a:hover,.mobile-menu__panel a[aria-current=page]{background:var(--primary-soft);color:var(--primary)}.theme-toggle{width:40px;min-width:40px;height:40px;padding:0}.icon-btn{width:40px;height:40px;padding:0}.ticker{-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.tuition{white-space:nowrap;flex-wrap:nowrap}@media (max-width:1359px){.site-nav{display:none}.mobile-menu{display:block}.site-header__inner{flex-wrap:nowrap;padding-top:0}.site-header__tools{margin-left:auto}}@media (max-width:640px){:root{--gutter:20px}body{padding-bottom:env(safe-area-inset-bottom);font-size:15.5px}h1{font-size:1.75rem}h2,.section__title{font-size:1.25rem}.site-header__inner{gap:10px;min-height:56px}.brand{gap:8px;font-size:1rem}.brand__logo{width:28px;height:28px}.demo-banner{padding:6px 20px;font-size:.78rem;line-height:1.35}.hero{padding:32px 0 28px}.hero h1{font-size:2.35rem}.hero__sub{font-size:1rem}.search{margin:18px 0 14px;padding:5px}.search input{padding:10px 12px;font-size:1rem}.search .btn{padding:10px 14px}.chips{gap:6px}.chip{min-height:40px;padding:8px 12px}.odometer{gap:4px 16px;font-size:.88rem}.page-head{padding:20px 0 4px}.page-head__meta{gap:4px 8px;font-size:.85rem}.answer{margin:12px 0;padding:14px 16px;font-size:1rem}.section{margin:28px 0}.facts{grid-template-columns:1fr 1fr;gap:8px}.fact{padding:10px 12px}.fact__label{font-size:.7rem}.fact__value{word-break:break-word;font-size:1rem}.card,.review-summary,.calc-output,.engage{border-radius:var(--radius);padding:16px}.review-form fieldset,.calc fieldset{padding:12px 14px}.two-col{gap:12px}.grid-cards{grid-template-columns:1fr;gap:10px}.criteria-grid{grid-template-columns:1fr}.criteria-row{grid-template-columns:minmax(0,1fr) 90px 30px}.review-summary__head{gap:12px 20px}.review-summary__big{font-size:1.6rem}.score-row{grid-template-columns:minmax(0,1fr) 44px 48px}.engage,.share,.vote{width:100%;display:grid}.engage .btn,.share .btn,.vote .btn,.tool-cta .btn,.review-form>.btn,.calc .btn--primary{justify-content:center;width:100%}.tool-cta{padding:18px}.rank-table tr{padding:12px}.table-simple th,.table-simple td{padding:8px 6px}.rating-item{gap:6px;display:grid}.rating-item__opts{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.star-opt span{width:100%;height:44px}.subject-grid{grid-template-columns:1fr 1fr}.privacy-bar{padding:12px;font-size:.85rem}.site-footer{margin-top:48px;padding:32px 0 24px}.site-footer__grid{gap:24px 16px}.site-footer a{padding:4px 0;display:inline-block}.site-footer__bottom{flex-direction:column;gap:8px}.popover{margin:auto 20px}.how-it-works{grid-template-columns:1fr 1fr}}.consent{z-index:60;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));background:var(--surface);max-width:560px;color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);margin-left:auto;padding:18px 20px;position:fixed;box-shadow:0 12px 40px #0000002e}.consent p{color:var(--text-muted);margin:6px 0 12px;font-size:.92rem}.consent__options{gap:8px;margin-bottom:12px;font-size:.92rem;display:grid}.consent__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.consent__actions .btn{justify-content:center;min-width:120px}.consent__more{text-align:center;margin-top:10px;font-size:.88rem}@media (max-width:640px){.consent__actions{grid-template-columns:1fr 1fr;display:grid}}.linklike{font:inherit;color:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.ad-card{border:1px dashed var(--border);border-radius:var(--radius);background:var(--bg-subtle);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin:24px 0;padding:26px 18px 16px;display:grid;position:relative}.ad-card--house{grid-template-columns:1fr auto}.ad-card__body{gap:2px;display:grid}.ad-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:.68rem;font-weight:700;position:absolute;top:7px;left:18px}.ad-logo{object-fit:contain;background:#fff;border-radius:12px}.ad-logo--text{color:#fff;letter-spacing:.02em;place-items:center;font-size:.9rem;font-weight:800;display:inline-grid}.logo-strip{border-top:1px solid var(--border);margin-top:28px;padding:26px 0 4px;position:relative}.logo-strip .ad-label{left:0}.logo-strip__row{flex-wrap:wrap;gap:10px 22px;display:flex}.logo-strip__item{color:var(--text);align-items:center;gap:8px;text-decoration:none;display:inline-flex}@media (max-width:640px){.ad-card{grid-template-columns:auto 1fr}.ad-card__cta{grid-column:1/-1;justify-content:center}.ad-card--house{grid-template-columns:1fr}}.book-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.book-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);grid-template-columns:64px 1fr;align-items:start;gap:12px;padding:12px;text-decoration:none;display:grid}.book-card:hover{border-color:var(--primary);color:var(--text)}.book-card__body{gap:4px;display:grid}.book-cover{border-radius:6px;max-width:100%;height:auto;display:block;box-shadow:0 4px 14px #00000024}.book-detail{grid-template-columns:180px 1fr;align-items:start;gap:28px;margin-top:8px;display:grid}.book-detail h1{margin-top:0}@media (max-width:640px){.book-grid{grid-template-columns:1fr}.book-detail{grid-template-columns:1fr;gap:16px}.book-detail .book-cover{width:140px}.book-detail .btn{justify-content:center;width:100%}}.otp__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.otp__row input{flex:200px;width:auto}.container--narrow{max-width:760px}.container--narrow>.card+.card,.container--narrow>section.card{margin-top:16px}.card h2{margin-top:0;font-size:1.2rem}.field{gap:4px;font-size:.9rem;font-weight:600;display:grid}.auth-form,.stack-form{gap:12px;max-width:460px;display:grid}.auth-form__row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.auth-alt{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;display:flex}.form-msg{margin:0;font-size:.92rem}.form-msg--error{color:var(--primary);font-weight:600}.form-msg--ok{color:var(--success,#2f7d4a);font-weight:600}.btn--danger{color:var(--primary);border:1px solid var(--primary);background:0 0}.btn--danger:hover{background:var(--primary-soft)}.danger-zone{border-top:1px dashed var(--border);gap:10px;max-width:460px;margin-top:20px;padding-top:16px;display:grid}.wish-list--edit li{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.wish-list--edit li>a{flex:220px}.wish-list__tools{gap:4px;margin-left:auto;display:inline-flex}.wish-list__tools .icon-btn{justify-content:center;width:34px;height:34px}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.save-wish{justify-items:start;gap:4px;display:grid}.save-wish p{margin:0}.nl-form{gap:10px;display:grid}.nl-form__row{flex-wrap:wrap;gap:8px;display:flex}.nl-form__row input{flex:220px;width:auto}.nl-form__interests{border:0;margin:0;padding:0}.nl-form__interests legend{margin-bottom:6px;font-size:.9rem;font-weight:600}.footer-nl{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:16px 32px;margin-top:28px;padding:18px 20px;display:grid}.footer-nl .site-footer__title{margin-top:0}@media (max-width:720px){.footer-nl{grid-template-columns:1fr;padding:16px}}.stack-form--wide{max-width:none}.stack-form textarea{resize:vertical}.stats-block{margin-top:16px}.stats-chart{width:100%;height:auto;display:block}.stats-chart__bar{fill:var(--primary);opacity:.85}.stats-chart__bar:hover{opacity:1}.stats-chart__label{fill:var(--text-muted);font-size:11px;font-family:var(--font-mono)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:0 16px;display:grid}.stats-table{border-collapse:collapse;width:100%}.stats-table td{border-bottom:1px solid var(--border);padding:6px 4px}.stats-table td.num{text-align:right;white-space:nowrap}.stats-top{margin:0;padding-left:1.4em}.stats-top li{justify-content:space-between;gap:12px;padding:4px 0;display:flex}.stats-top a{overflow-wrap:anywhere}.site-header__inner{position:relative}.hsearch{top:8px;right:var(--gutter);width:min(520px, calc(100% - 2 * var(--gutter)));z-index:40;position:absolute}.hsearch__box{background:var(--bg);border:1px solid var(--primary);border-radius:var(--radius);box-shadow:var(--shadow,0 8px 24px #0000001f);align-items:center;gap:6px;padding:3px 4px 3px 12px;display:flex}.hsearch__box input{background:0 0;border:0;padding:8px 4px}.hsearch__box input:focus{outline:none}.hsearch__icon{color:var(--text-muted);flex:none}.hsearch__close{border:0;flex:none}.hsearch__list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow,0 8px 24px #0000001f);max-height:min(70vh,460px);margin:6px 0 0;padding:6px;list-style:none;overflow-y:auto}.hsearch__list li{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:10px;padding:9px 10px;display:flex}.hsearch__list li.is-active,.hsearch__list li:hover{background:var(--primary-soft)}.hsearch__label{overflow-wrap:anywhere;flex:1;min-width:0}.hsearch__all{color:var(--primary);border-top:1px solid var(--border);margin-top:4px;font-weight:600}.hsearch__empty{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:6px 0 0;padding:10px 12px}@media (max-width:640px){.hsearch{left:var(--gutter);right:var(--gutter);width:auto}}.hsearch__box input::-webkit-search-cancel-button{display:none}.post__box-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 0 8px;font-size:.85rem;font-weight:700}.post__takeaways{margin:20px 0}.post__toc{border:1px dashed var(--border);border-radius:var(--radius);margin:20px 0;padding:14px 18px}.post__toc ol{margin:0;padding-left:1.3em}.post__toc li+li{margin-top:4px}.post__body{line-height:1.75}.post__body h2,.post__body h3{scroll-margin-top:80px}.post__body li+li{margin-top:4px}.post__body blockquote{border-left:3px solid var(--primary);background:var(--surface);color:var(--text-muted);margin:16px 0;padding:10px 16px}.post__cta{margin:28px 0}.post__cta-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.post__cta-links{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:0;display:flex}.post__byline{margin-top:24px;font-size:.9rem}.post-dir{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.post-dir__major h3{margin:0 0 8px;font-size:1.05rem}.post-dir__major li{font-size:.93rem}.calc-step{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:12px;padding:14px 16px;display:grid}.calc-step__title{margin:0;font-size:1rem;font-weight:700}.calc-step fieldset{background:0 0;border:0;padding:0}.calc-step legend{margin-bottom:6px;padding:0}.tabs[role=tablist]{border-bottom:1px solid var(--border);gap:4px;margin:0}.tab{appearance:none;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:10px 12px;font-weight:600}.tab:hover{color:var(--text)}.tab[aria-selected=true]{color:var(--primary);border-bottom-color:var(--primary)}.tab:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.field-error{color:var(--primary);margin-top:4px;font-size:.85rem;font-weight:600;display:block}input[aria-invalid=true]{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.btn--lg{padding:12px 22px;font-size:1.05rem}.btn[disabled]{opacity:.55;cursor:not-allowed}.chips--grouped{align-items:center;margin-top:6px}@media (max-width:640px){.tab{padding:8px;font-size:.9rem}.calc-submit .btn{justify-content:center;width:100%}}.nav-drop{position:relative}.site-nav .nav-drop__top{align-items:center;gap:4px;display:inline-flex}.nav-drop__panel{z-index:60;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:240px;box-shadow:var(--shadow);margin-top:4px;padding:8px;display:none;position:absolute;top:100%;left:0}.nav-drop__panel:before{content:"";height:8px;position:absolute;inset:-8px 0 auto}.nav-drop:hover .nav-drop__panel,.nav-drop:focus-within .nav-drop__panel{display:grid}.site-nav .nav-drop__panel a{padding:10px 12px;display:block}.mobile-menu__group{display:grid}.mobile-menu__panel{max-height:calc(100vh - 90px);overflow-y:auto}.mobile-menu__panel a.mobile-menu__sub{min-height:40px;color:var(--text-muted);padding-left:30px;font-size:.93rem}.ticker--sticky{z-index:30;position:sticky;top:65px}.hero--split .hero__grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:32px;display:grid}.hero--split h1{font-size:clamp(2rem,5.2vw,3.6rem);line-height:1.12}.hero__cta{flex-wrap:wrap;gap:12px;margin:20px 0 8px;display:flex}.hero-art{justify-self:end;width:100%;max-width:440px;height:auto}.home-search{padding-top:8px}.home-search__form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);grid-template-columns:2fr repeat(4,1fr) auto;align-items:end;gap:10px;padding:16px;display:grid}.home-search__form label{color:var(--text-muted);gap:4px;min-width:0;font-size:.85rem;font-weight:600;display:grid}.home-search__form select,.home-search__form input{width:100%;min-width:0}.home-search .chips{align-items:center;margin-top:12px}.foryou{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.foryou--loading{min-height:120px}.foryou-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);gap:10px;padding:14px;text-decoration:none;transition:border-color .15s,transform .15s;display:grid}.foryou-card:hover{border-color:var(--primary);color:var(--text);transform:translateY(-1px)}.foryou-card__art{border-radius:var(--radius-sm);background:var(--primary-soft);height:88px;color:var(--primary);place-items:center;display:grid}.foryou-card__title{gap:2px;display:grid}.foryou-card__school{border-top:1px dashed var(--border);align-items:center;gap:10px;padding-top:10px;display:flex}.foryou-card__school>span:last-child{gap:2px;min-width:0;display:grid}.foryou-card__inst{font-size:.9rem;font-weight:600}.school-badge{border-radius:var(--radius-sm);background:var(--primary-soft);min-width:44px;height:44px;color:var(--primary);font-family:var(--font-mono);letter-spacing:.02em;flex:none;place-items:center;padding:0 6px;font-size:.72rem;font-weight:700;display:inline-grid}.school-card{align-items:center;gap:12px;display:flex}.foryou-empty{color:var(--primary);flex-wrap:wrap;align-items:center;gap:14px;display:flex}.foryou-empty>div{color:var(--text);flex:280px}@media (max-width:900px){.hero--split .hero__grid{grid-template-columns:1fr}.hero-art{justify-self:center;max-width:320px}.home-search__form{grid-template-columns:1fr 1fr}.home-search__q,.home-search__form .btn{grid-column:1/-1}}@media (max-width:480px){.home-search__form{grid-template-columns:1fr}.hero-art{max-width:240px}}.site-header .container.site-header__inner{max-width:1240px}@media (max-width:480px){.site-header__inner{gap:8px}.site-header__tools{gap:2px}.brand{gap:6px;font-size:1rem}.site-header__tools .icon-btn,.site-header__tools .theme-toggle,.mobile-menu summary{width:38px;height:38px}}.nav-cta{flex:none;position:relative}.nav-cta__btn{background:var(--gradient-brand);color:#fff;white-space:nowrap;min-height:48px;box-shadow:0 8px 22px color-mix(in srgb, var(--primary) 32%, transparent);border-radius:999px;align-items:center;gap:8px;padding:10px 22px;font-size:1.02rem;font-weight:800;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex}.nav-cta__btn:hover,.nav-cta:focus-within .nav-cta__btn{color:#fff;box-shadow:0 12px 28px color-mix(in srgb, var(--primary) 42%, transparent);transform:translateY(-1px)}.nav-cta__panel{z-index:60;width:min(440px, calc(100vw - 2 * var(--gutter)));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:8px;padding:18px;display:none;position:absolute;top:100%;right:0}.nav-cta__panel:before{content:"";height:10px;position:absolute;inset:-10px 0 auto}.nav-cta:hover .nav-cta__panel,.nav-cta:focus-within .nav-cta__panel{display:block}.nav-cta__hint{margin:0 0 12px;font-size:1rem;font-weight:600}.nav-cta__skills{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.nav-cta__skills-title{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);gap:2px;margin-bottom:10px;font-size:.8rem;font-weight:800;display:grid}.nav-cta__skills-title span{text-transform:none;letter-spacing:0;font-size:.88rem;font-weight:500}.nav-cta__chips,.mobile-menu__cta-chips{flex-wrap:wrap;gap:8px;display:flex}.nav-cta__chips .chip,.mobile-menu__cta-chips .chip{min-height:36px;padding:6px 12px;font-size:.9rem}.nav-cta__all{margin-top:12px;font-size:.92rem;font-weight:700;display:inline-block}.mobile-menu__cta{border-radius:var(--radius-sm);background:var(--primary-soft);gap:8px;margin-bottom:8px;padding:12px;display:grid}.mobile-menu__panel a.mobile-menu__cta-btn{background:var(--gradient-brand);color:#fff;border-radius:999px;justify-content:center;gap:10px;min-height:52px;padding:0 16px;font-size:1.05rem;font-weight:800}.mobile-menu__panel a.mobile-menu__cta-btn:hover{color:#fff;filter:brightness(1.06)}.mobile-menu__cta-hint{color:var(--text-muted);margin:0;font-size:.9rem}.mobile-menu__cta-title{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);font-size:.78rem;font-weight:800}.mobile-menu__panel .mobile-menu__cta-chips a.chip{background:var(--surface);min-height:36px;padding:0 12px;font-weight:600}.link-card__meta--clamp{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (max-width:640px){.nav-cta__btn{min-height:44px;padding:8px 16px}}@media (min-width:1360px){.site-header__inner{gap:14px;max-width:1360px}.site-nav{gap:0}.site-nav a{padding:8px 9px}}@media (max-width:1359px){.nav-cta{margin-left:auto}.nav-cta+.site-header__tools{margin-left:0}.nav-cta__btn{justify-content:center;width:44px;min-height:44px;padding:0}.nav-cta__btn span,.nav-cta__btn svg:last-child:not(:first-child){display:none}.nav-cta__panel{display:none!important}}@media (max-width:640px){.nav-cta{display:none}}.pager{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin:32px 0 8px;display:flex}.pager ol{align-items:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.pager li{align-items:center;gap:6px;display:flex}.pager a,.pager__cur{border:1px solid var(--border);background:var(--surface);min-width:40px;min-height:40px;color:var(--text);border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-weight:600;text-decoration:none;display:inline-flex}.pager a:hover{border-color:var(--primary);color:var(--primary)}.pager__cur{background:var(--gradient-brand);color:#fff;border-color:#0000}.pager__gap{color:var(--text-muted)}.pager__step{font-weight:700}.calc-layout{align-items:start;gap:20px;display:grid}@media (min-width:1200px){.calc-layout{grid-template-columns:minmax(0,1fr) 300px}.calc-side{position:sticky;top:84px}}.calc-side{gap:14px;display:grid}.calc-side__title{align-items:center;gap:8px;margin:0 0 8px;font-size:1rem;display:flex}.history-list,.side-links{gap:6px;margin:0 0 8px;padding:0;list-style:none;display:grid}.side-links a{font-weight:600}.history-item{text-align:left;width:100%;font:inherit;color:inherit;border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:8px;gap:2px;padding:8px 10px;display:grid}.history-item:hover{border-color:var(--primary)}.step-no{background:var(--primary-soft);width:24px;height:24px;color:var(--primary);border-radius:50%;place-items:center;margin-right:8px;font-size:.8rem;font-weight:800;display:inline-grid}.step-no--done{background:var(--success);color:#fff}.calc-hint{margin:0}.calc-advanced{border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface);padding:10px 16px}.calc-advanced summary,.calc-drawer summary,.prov-filter summary{cursor:pointer;align-items:center;gap:6px;font-weight:700;display:inline-flex}.calc-drawer{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:12px 0;padding:10px 16px}.bucket--btn{appearance:none;cursor:pointer;border:0;font-family:inherit}.bucket--btn[aria-pressed=true]{outline:2px solid var(--primary);outline-offset:2px}.table-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:8px 0;display:flex}.table-toolbar__left{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.table-toolbar__sort,.table-foot label{align-items:center;gap:8px;font-weight:600;display:inline-flex}.prov-filter{position:relative}.prov-filter__panel{z-index:5;border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:6px;min-width:220px;max-height:280px;padding:12px;display:grid;position:absolute;top:calc(100% + 6px);left:0;overflow:auto;box-shadow:0 8px 24px #00000024}.loc-tag{align-items:center;gap:4px;display:inline-flex}.calc-table .num>div{margin-top:4px}.calc-table__save{text-align:center}.calc-table__save .icon-btn[aria-pressed=true]{color:var(--primary)}.table-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:10px 0;display:flex}.table-foot__nav{align-items:center;gap:10px;display:inline-flex}@media (max-width:640px){.calc-table tr{grid-template-columns:1fr 1fr}.calc-table td:first-child{grid-row:auto}.calc-table td:nth-child(2){grid-column:auto}.calc-table__save{text-align:right}.prov-filter__panel{box-shadow:none;position:static}}.page-sub{color:var(--text-muted);margin:0 0 10px;font-size:1.1rem;font-weight:500}.corner-layout{gap:20px;display:grid}.corner-side{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:14px 16px}@media (min-width:900px){.corner-layout{grid-template-columns:220px minmax(0,1fr);align-items:start}.corner-side{position:sticky;top:84px}}.tabs__sep{align-self:center;margin-left:8px}.school-info{align-items:center;gap:4px;display:inline-flex;position:relative}.school-info__code{letter-spacing:.02em;font-weight:800}.school-info__btn{appearance:none;width:22px;height:22px;color:var(--text-muted);cursor:help;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:inline-grid}.school-info__btn:hover,.school-info__btn:focus-visible{color:var(--primary)}.school-info__pop{z-index:20;border:1px solid var(--border);background:var(--surface);text-align:left;visibility:hidden;opacity:0;border-radius:8px;gap:4px;width:max-content;max-width:260px;padding:10px 12px;font-size:.85rem;font-weight:500;transition:opacity .12s;display:grid;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 8px 24px #00000029}.school-info:hover .school-info__pop,.school-info:focus-within .school-info__pop{visibility:visible;opacity:1}.combo-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:12px;display:grid}.combo-card{border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:2px;padding:12px 14px;display:grid}.combo-card__code{color:var(--primary);font-weight:800}.combo-card__score{font-size:1.6rem;line-height:1.1}.compare-bars{gap:8px;margin:8px 0 12px;display:grid}.compare-bars>div{grid-template-columns:170px 1fr 52px;align-items:center;gap:10px;display:grid}.compare-bars__track{background:var(--bg-subtle);border-radius:99px;height:12px;overflow:hidden}.compare-bars__fill{background:var(--text-muted);border-radius:99px;height:100%;display:block}.compare-bars__fill--you{background:var(--btn-fill,#cd322a)}@media (max-width:560px){.compare-bars>div{grid-template-columns:1fr 52px}.compare-bars>div>span.small{grid-column:1/-1}}.calc-more{margin-top:8px}.calc-more summary{cursor:pointer;font-weight:700}.ielts-block{gap:8px;display:grid}.heart-btn{appearance:none;color:#cd322a;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;display:inline-grid}.heart-btn:hover{background:#ffddda}:root[data-theme=dark] .heart-btn{color:#f08a80}:root[data-theme=dark] .heart-btn:hover{background:#3a1a17}.heart-btn svg{fill:#0000;transition:transform .18s}.heart-btn[aria-pressed=true] svg{fill:currentColor;animation:.35s heart-pop}@keyframes heart-pop{0%{transform:scale(1)}45%{transform:scale(1.35)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.heart-btn[aria-pressed=true] svg{animation:none}}.container--wide{max-width:var(--container-wide)}.calc-output__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.calc-submit{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.table-foot__num{align-items:center;display:inline-flex}.table-foot__num .btn--text[aria-current=page]{color:var(--btn-fill,#cd322a);font-weight:800;text-decoration:underline}.calc-side-toggle{z-index:30;position:fixed;bottom:16px;right:16px;box-shadow:0 6px 20px #00000038}@media (max-width:1199px){.calc-side{z-index:40;background:var(--bg);visibility:hidden;border-radius:16px 16px 0 0;max-height:72vh;padding:16px;transition:transform .22s;position:fixed;bottom:0;left:0;right:0;overflow:auto;transform:translateY(105%);box-shadow:0 -8px 30px #00000038}.calc-side--open{visibility:visible;transform:translateY(0)}}@media (min-width:1200px){.calc-side-toggle{display:none}}.monogram{color:#fff;background:linear-gradient(90deg,#7c1d21 0%,#a62429 50%,#7c1d21 100%);flex-direction:column;justify-content:center;align-items:center;gap:6px;width:100%;height:100%;min-height:48px;display:inline-flex}.monogram__text{letter-spacing:.04em;font-size:1.25rem;font-weight:800}.chance--na{background:var(--bg-subtle);color:var(--text-muted);border:1px solid var(--border);border-radius:99px;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-block}.chance--na a{color:inherit;text-decoration:none}.carousel{--gap:16px;position:relative}.carousel__track{gap:var(--gap);scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:4px 2px 8px;scroll-padding:0;display:flex;overflow-x:auto}.carousel__track::-webkit-scrollbar{display:none}.carousel__track:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:8px}.carousel__track>*{flex:0 0 calc((100% - var(--gap)) / 2);scroll-snap-align:start;min-width:0}@media (min-width:1024px){.carousel__track>*{flex-basis:calc((100% - 3 * var(--gap)) / 4)}}.carousel__btn{z-index:3;border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--text);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 14px #00000029}.carousel__btn--prev{left:-14px}.carousel__btn--next{right:-14px}.carousel__btn:hover:not(:disabled){color:#cd322a;background:#ffddda}.carousel__btn:disabled{opacity:.35;cursor:default}@media (max-width:640px){.carousel__btn--prev{left:-8px}.carousel__btn--next{right:-8px}}.btn--sm{min-height:36px;padding:6px 14px;font-size:.85rem}.auth-btns{align-items:center;gap:8px;display:none}@media (min-width:1360px){.auth-btns{display:inline-flex}.auth-icon{display:none}}.user-pill{border:1px solid var(--border);background:var(--surface);max-width:220px;min-height:40px;color:var(--text);border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex}.user-pill:hover{border-color:var(--primary)}.user-pill__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (max-width:760px){.user-pill__name{display:none}}.auth-btns .btn{white-space:nowrap}@media (max-width:400px){.site-header__tools .icon-btn,.site-header__tools .theme-toggle,.site-header__tools .user-pill,.mobile-menu summary{justify-content:center;width:34px;min-width:34px;height:34px;min-height:34px;padding:0}.site-header__tools{gap:0;padding-inline:8px}.brand__name{font-size:.95rem}}html,body{overflow-x:clip}@media (max-width:640px){.school-info__pop{width:auto;max-width:none;position:fixed;top:auto;left:12px;right:12px}}.auth-btns .auth-btns-inline{flex-wrap:nowrap;align-items:center;gap:8px;display:inline-flex}
.site-footer{color:#fff;background:#21272a;border-top:0}.site-footer a{color:#ffffffdb}.site-footer a:hover{color:#fff}.site-footer .muted,.site-footer .footer-disclaimer{color:#aab1b8}.site-footer__title,.site-footer .brand__name{color:#fff}.footer-social{flex-wrap:wrap;gap:10px;display:flex}.footer-social a{border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.footer-social a:hover{background:#cd322a;border-color:#cd322a}.footer-nl{border-top-color:#ffffff29}.footer-nl input{color:#21272a;background:#fff}.site-footer__bottom{border-top-color:#ffffff29}.site-footer__grid{grid-template-columns:1.6fr repeat(4,1fr)}@media (max-width:1000px){.site-footer__grid{grid-template-columns:1fr 1fr 1fr}}@media (max-width:760px){.site-footer__grid{grid-template-columns:1fr 1fr}}.site-footer .footer-nl{background:#ffffff0f;border-color:#ffffff29}.site-footer a.built-by{color:#fff}
:root{--radius:10px;--radius-lg:14px;--tile-bg:var(--primary-soft);--tile-fg:var(--primary);--band-rose:color-mix(in srgb, var(--primary-soft) 45%, var(--bg));--band-plum:color-mix(in srgb, var(--verdict-niche-bg) 70%, var(--bg));--band-amber:color-mix(in srgb, var(--verdict-mid-bg) 62%, var(--bg));--poppy-line:color-mix(in srgb, var(--primary) 34%, transparent)}body{line-height:1.75;overflow-x:clip}p,li{line-height:1.75}h1{font-size:clamp(1.5rem,3vw,2.25rem);line-height:1.3}h2{font-size:clamp(1.2rem,2.2vw,1.6rem);line-height:1.35}h3{font-size:1.1rem;line-height:1.4}.section__lead{font-size:.95rem}.card{border-color:color-mix(in srgb, var(--border) 85%, transparent);padding:20px 22px}.fact{padding:14px 16px}.fact__value{font-size:1.05rem}.facts{gap:14px;margin:22px 0}.answer{box-shadow:none;border:1px solid color-mix(in srgb, var(--border) 85%, transparent);border-left:3px solid var(--primary);border-image:;padding:18px 22px;font-size:1.05rem;line-height:1.75}.link-card{padding:22px}.card li+li{margin-top:8px}.section{margin:0;padding-block:44px;position:relative}@media (min-width:768px){.section{padding-block:60px}}.page-head{background:var(--band-rose);box-shadow:0 0 0 100vmax var(--band-rose);clip-path:inset(0 -100vmax);padding:28px 0 54px;position:relative}section.section:nth-of-type(4n+2),section.section:nth-of-type(4n+4){box-shadow:0 0 0 100vmax var(--section-band);clip-path:inset(0 -100vmax);background:var(--section-band)}section.section:nth-of-type(4n+2){--section-band:var(--band-plum);--tile-bg:var(--verdict-niche-bg);--tile-fg:var(--verdict-niche-fg)}section.section:nth-of-type(4n+4){--section-band:var(--band-amber);--tile-bg:var(--verdict-mid-bg);--tile-fg:var(--verdict-mid-fg)}.section~.section:after,.page-head:after{content:"";background:linear-gradient(90deg, transparent, var(--poppy-line) 43%, transparent 45.5%, transparent 54.5%, var(--poppy-line) 57%, transparent);pointer-events:none;height:1px;position:absolute;left:0;right:0}.section~.section:after{top:21px}.page-head:after{bottom:21px}.section~.section:before,.page-head:before{content:"";background:radial-gradient(circle at 50% 50%, var(--plum) 0 2.6px, transparent 3px), var(--primary);width:26px;height:26px;-webkit-mask:var(--poppy-mask) center / contain no-repeat;-webkit-mask:var(--poppy-mask) center / contain no-repeat;mask:var(--poppy-mask) center / contain no-repeat;pointer-events:none;--poppy-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cg fill='black' fill-opacity='.22' stroke='black' stroke-width='1.1'%3E%3Ccircle cx='16' cy='9.6' r='6.6'/%3E%3Ccircle cx='22.4' cy='16' r='6.6'/%3E%3Ccircle cx='16' cy='22.4' r='6.6'/%3E%3Ccircle cx='9.6' cy='16' r='6.6'/%3E%3C/g%3E%3Cg stroke='black' stroke-width='.9' stroke-linecap='round'%3E%3Cpath d='M19.2 16h2M18.26 18.26l1.42 1.42M16 19.2v2M13.74 18.26l-1.42 1.42M12.8 16h-2M13.74 13.74l-1.42-1.42M16 12.8v-2M18.26 13.74l1.42-1.42'/%3E%3C/g%3E%3Ccircle cx='16' cy='16' r='2.1'/%3E%3C/svg%3E");margin-left:-13px;position:absolute;left:50%}.section~.section:before{top:8px}.page-head:before{bottom:8px}.page-head>*{z-index:1;position:relative}.monogram{background:var(--tile-bg);color:var(--tile-fg)}body .major-banner{background:var(--tile-bg);box-shadow:none;border:1px solid color-mix(in srgb, var(--border) 85%, transparent)}.ac-banner{background:var(--band-rose);border:1px solid color-mix(in srgb, var(--border) 85%, transparent);color:var(--text)}.ac-banner h1{color:var(--text)}.ac-banner__sub{color:var(--text-muted)}@media (max-width:640px){.page-head{padding:18px 0 46px}}body .major-banner{border-radius:var(--radius);min-height:0;margin-bottom:22px}body .major-banner__overlay{display:none}body .major-banner__body{min-height:0;padding:22px 24px}@media (min-width:640px){body .major-banner__body{align-items:center;padding:22px 26px}}body .major-banner .monogram{padding:0}body .major-banner .monogram svg{opacity:.18;width:48px;height:48px;right:18%}body .major-banner__title{color:var(--tile-fg);font-size:clamp(1.15rem,2.2vw,1.4rem)}body .major-banner__count{background:color-mix(in srgb, var(--tile-fg) 14%, transparent);color:var(--tile-fg)}body .major-banner__sub{color:var(--text-muted)}body .major-banner__link,body .major-banner__link:hover{color:var(--primary)}.page-head:not(:has(h1)){box-shadow:none;clip-path:none;background:0 0;padding:14px 0 6px}.page-head:not(:has(h1)):before{display:none}.page-head:not(:has(h1)):after{display:none}body .school-hero{border-radius:var(--radius-lg)}body .school-hero__body{align-items:flex-start;gap:20px;padding:24px}body .school-hero__logo{border-radius:var(--radius);width:80px;height:80px;box-shadow:none;border:0;margin-top:0;overflow:hidden}body .school-hero__logo .monogram__text{font-size:.95rem}body .school-hero__text{padding-top:0}body .school-hero__text h1{font-size:clamp(1.4rem,3vw,2rem)}:root{--tone-0-bg:var(--primary-soft);--tone-0-fg:var(--primary);--tone-1-bg:var(--verdict-niche-bg);--tone-1-fg:var(--verdict-niche-fg);--tone-2-bg:var(--verdict-mid-bg);--tone-2-fg:var(--verdict-mid-fg);--tone-3-bg:color-mix(in srgb, var(--primary-soft) 50%, var(--verdict-mid-bg));--tone-3-fg:color-mix(in srgb, var(--primary) 55%, var(--amber-text))}.cc:nth-child(4n+1),.tone-0{--tile-bg:var(--tone-0-bg);--tile-fg:var(--tone-0-fg)}.cc:nth-child(4n+2),.tone-1{--tile-bg:var(--tone-1-bg);--tile-fg:var(--tone-1-fg)}.cc:nth-child(4n+3),.tone-2{--tile-bg:var(--tone-2-bg);--tile-fg:var(--tone-2-fg)}.cc:nth-child(4n+4),.tone-3{--tile-bg:var(--tone-3-bg);--tile-fg:var(--tone-3-fg)}:is(.mini-grid,.grid-cards,.school-grid,.ai-grid,.trust-grid)>:nth-child(4n+1){--tile-bg:var(--tone-0-bg);--tile-fg:var(--tone-0-fg)}:is(.mini-grid,.grid-cards,.school-grid,.ai-grid,.trust-grid)>:nth-child(4n+2){--tile-bg:var(--tone-1-bg);--tile-fg:var(--tone-1-fg)}:is(.mini-grid,.grid-cards,.school-grid,.ai-grid,.trust-grid)>:nth-child(4n+3){--tile-bg:var(--tone-2-bg);--tile-fg:var(--tone-2-fg)}:is(.mini-grid,.grid-cards,.school-grid,.ai-grid,.trust-grid)>:nth-child(4n+4){--tile-bg:var(--tone-3-bg);--tile-fg:var(--tone-3-fg)}.link-card__title .icon,.link-card__title svg{color:var(--tile-fg)}.school-card .school-logo,.reco-card__logo{border-radius:var(--radius-sm)}.cc{position:relative}.cc--plain .cc__body{padding:20px 22px 16px}.cc--plain .cc__meta{padding-right:38px}.cc--plain .cc__bookmark{top:8px;right:8px}.cc .cc__cat{background:var(--tile-bg,var(--primary-soft));color:var(--tile-fg,var(--primary));align-items:center;gap:5px;display:inline-flex}.cc.cc--plain{border-top:3px solid var(--tile-fg,var(--primary))}.cc .cc__title a:hover{color:var(--tile-fg,var(--primary))}:root{--tone-0-grad:linear-gradient(135deg, #d1352b, #a82419);--tone-1-grad:linear-gradient(135deg, #8e5a82, #5e3454);--tone-2-grad:linear-gradient(135deg, #d9951c, #a8650a);--tone-3-grad:linear-gradient(135deg, #de6a43, #a9431f);--tile-grad:var(--tone-0-grad);--card-shadow:0 8px 24px #2b232012}:root[data-theme=dark]{--card-shadow:0 8px 24px #00000059}body .cc:nth-child(4n+1),body .tone-0,body :is(.mini-grid,.grid-cards,.school-grid,.ai-grid,.trust-grid)>:nth-child(4n+1){--tile-grad:var(--tone-0-grad)}body .cc:nth-child(4n+2),body .tone-1,body :is(.mini-grid,.grid-cards,.school-grid,.ai-grid,.trust-grid)>:nth-child(4n+2){--tile-grad:var(--tone-1-grad)}body .cc:nth-child(4n+3),body .tone-2,body :is(.mini-grid,.grid-cards,.school-grid,.ai-grid,.trust-grid)>:nth-child(4n+3){--tile-grad:var(--tone-2-grad)}body .cc:nth-child(4n+4),body .tone-3,body :is(.mini-grid,.grid-cards,.school-grid,.ai-grid,.trust-grid)>:nth-child(4n+4){--tile-grad:var(--tone-3-grad)}body .hband--plum,body section.section:nth-of-type(4n+2){--tile-grad:var(--tone-1-grad)}body .hband--amber,body section.section:nth-of-type(4n+4){--tile-grad:var(--tone-2-grad)}body .link-card,body .ai-card,body .trust-card,body .mini-card,body .cc.cc--plain{border:1px solid color-mix(in srgb, var(--tile-fg,var(--primary)) 16%, var(--border));background:radial-gradient(160px 130px at 100% 0, color-mix(in srgb, var(--tile-fg,var(--primary)) 13%, transparent), transparent 75%), var(--surface);box-shadow:var(--card-shadow);border-radius:20px}body .link-card:hover,body .mini-card:hover,body .cc.cc--plain:hover{border-color:color-mix(in srgb, var(--tile-fg,var(--primary)) 45%, var(--border));transform:translateY(-2px);box-shadow:0 12px 30px #2b23201f}body .link-card__title>svg,body .section__title>svg,body .cc .cc__tile,body .mini-card__tile,body .trust-card__icon{box-sizing:border-box;background:var(--tile-grad,var(--tone-0-grad));color:#fff;box-shadow:0 6px 14px color-mix(in srgb, var(--tile-fg,var(--primary)) 28%, transparent);flex:none;place-items:center;display:grid}body .link-card__title>svg{border-radius:18px;width:60px;height:60px;padding:15px}body .section__title>svg{border-radius:15px;width:48px;height:48px;padding:12px}body .cc .cc__tile{border-radius:17px;width:56px;height:56px}body .link-card__title{flex-direction:column;align-items:flex-start;gap:14px;font-size:1.15rem;line-height:1.4}body .link-card__meta{margin-top:10px;line-height:1.7}body .cc__head{align-items:center;gap:14px;padding-right:40px;display:flex}body .cc__head .cc__meta{flex:1;min-width:0;padding-right:0}body .cc .cc__body{gap:12px}body .cc .cc__excerpt,body .cc .cc__title{line-height:1.65}body .cc .cc__title{font-size:1.1rem}.page-head.majors-hero{padding:28px 0 54px}.majors-hero__sub{margin:8px 0 20px;font-size:1.05rem;line-height:1.7}
