:root{--sft-bg-base:#f7f6f3;--sft-surface-card:#fff;--sft-surface-raised:#fff;--sft-surface-muted:#eeece8;--sft-brand:#2b60ca;--sft-brand-ink:#2b60ca;--sft-risk:#c0392f;--sft-success:#1e7a47;--sft-warn:#8f6011;--sft-text-primary:#16181d;--sft-text-secondary:#16181d9e;--sft-text-tertiary:#16181d99;--sft-hairline:#00000014;--sft-hairline-faint:#0000000f;--sft-cell-empty:#16181d0f;--sft-hairline-width:1px;--sft-card-shadow:0 2px 8px #0000000f;--sft-shadow-xs:0 1px 2px 0 #0000000a;--sft-shadow-sm:0 2px 8px #0000000f;--sft-shadow-md:0 2px 8px #0000000f;--sft-shadow-lg:0 8px 24px #00000014;--sft-shadow-xl:0 12px 32px #0000001a;--sft-ramp-0:#1d3a7c;--sft-ramp-1:#1e4495;--sft-ramp-2:#1d4eb0;--sft-ramp-3:#1c59cc;--sft-ramp-4:#1b66e7;--sft-ramp-5:#2d78ef;--sft-ramp-6:#4189f5;--sft-ramp-7:#569bfb;--sft-font-serif:ui-serif, "New York", Georgia, "Times New Roman", serif;--sft-font-mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;--sft-font-ui:-apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, sans-serif;--sft-serif-hero:42px;--sft-serif-xl:28px;--sft-serif-lg:24px;--sft-serif-md:19px;--sft-serif-sm:17px;--sft-mono-lg:22px;--sft-mono-md:16px;--sft-mono-sm:13px;--sft-mono-xs:11px;--sft-mono-2xs:10px;--sft-ui-title:28px;--sft-ui-lg:15px;--sft-ui-md:14px;--sft-ui-sm:13px;--sft-ui-xs:12px;--sft-ui-caption:11px;--sft-tracking-caption:.9px;--sft-tracking-caps:1.1px;--sft-tracking-title:-.4px;--sft-gutter:20px;--sft-radius-card:12px;--sft-radius-control:10px;--sft-radius-sheet:20px;--sft-field-padding:12px;--sft-card-padding-mini:14px;--sft-card-padding-midi:16px;--sft-card-grid-gap-mini:10px;--sft-card-grid-gap-midi:16px;--sft-card-text-min-height:104px;--sft-card-media-min-height:144px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--sft-bg-base:#0b0d12;--sft-surface-card:#12151c;--sft-surface-raised:#1a1e28;--sft-surface-muted:#1a1e28;--sft-brand:#2b60ca;--sft-brand-ink:#5b8def;--sft-risk:#e5544b;--sft-success:#3fb26f;--sft-warn:#e09a3c;--sft-text-primary:#f2f4f8;--sft-text-secondary:#ebf0fa9e;--sft-text-tertiary:#ebf0fa80;--sft-hairline:#ffffff17;--sft-hairline-faint:#ffffff12;--sft-cell-empty:#ffffff0d;--sft-hairline-width:1px;--sft-card-shadow:none;--sft-shadow-xs:none;--sft-shadow-sm:none;--sft-shadow-md:none;--sft-shadow-lg:none;--sft-shadow-xl:none;--sft-ramp-0:#1d3a7c;--sft-ramp-1:#1e4495;--sft-ramp-2:#1d4eb0;--sft-ramp-3:#1c59cc;--sft-ramp-4:#1b66e7;--sft-ramp-5:#2d78ef;--sft-ramp-6:#4189f5;--sft-ramp-7:#569bfb}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--sft-bg-base:#0b0d12;--sft-surface-card:#12151c;--sft-surface-raised:#1a1e28;--sft-surface-muted:#1a1e28;--sft-brand:#2b60ca;--sft-brand-ink:#5b8def;--sft-risk:#e5544b;--sft-success:#3fb26f;--sft-warn:#e09a3c;--sft-text-primary:#f2f4f8;--sft-text-secondary:#ebf0fa9e;--sft-text-tertiary:#ebf0fa80;--sft-hairline:#ffffff17;--sft-hairline-faint:#ffffff12;--sft-cell-empty:#ffffff0d;--sft-hairline-width:1px;--sft-card-shadow:none;--sft-shadow-xs:none;--sft-shadow-sm:none;--sft-shadow-md:none;--sft-shadow-lg:none;--sft-shadow-xl:none;--sft-ramp-0:#1d3a7c;--sft-ramp-1:#1e4495;--sft-ramp-2:#1d4eb0;--sft-ramp-3:#1c59cc;--sft-ramp-4:#1b66e7;--sft-ramp-5:#2d78ef;--sft-ramp-6:#4189f5;--sft-ramp-7:#569bfb}.sft-mono{font-family:var(--sft-font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.sft-serif{font-family:var(--sft-font-serif);font-weight:600}:root{--page-x:clamp(16px, 4vw, 48px);--section-y:clamp(24px, 4vw, 44px);--max:1160px;--touch:44px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--sft-bg-base);color:var(--sft-text-primary);font-family:var(--sft-font-ui);font-size:var(--sft-ui-lg);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}h1,h2,h3,h4{font-family:var(--sft-font-serif);letter-spacing:var(--sft-tracking-title);color:var(--sft-text-primary);text-wrap:balance;margin:0;font-weight:600;line-height:1.15}p{text-wrap:pretty;margin:0}a{color:var(--sft-brand-ink);text-decoration:none}a:hover{text-underline-offset:.15em;text-decoration:underline}p a,li a,td a,dd a,.summary a{text-underline-offset:.15em;text-decoration:underline;-webkit-text-decoration-color:var(--sft-hairline);text-decoration-color:var(--sft-hairline)}p a:hover,li a:hover,td a:hover{text-decoration-color:currentColor}button,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--sft-brand-ink);outline-offset:2px}img,svg{max-width:100%}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.caption{font-family:var(--sft-font-ui);font-size:var(--sft-ui-caption);text-transform:uppercase;letter-spacing:var(--sft-tracking-caption);color:var(--sft-text-tertiary);font-weight:600}.num,.sft-mono{font-family:var(--sft-font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.muted{color:var(--sft-text-secondary)}.small{font-size:var(--sft-ui-sm)}.lead{color:var(--sft-text-secondary);max-width:720px;line-height:1.55}.hairline{border:0;border-top:var(--sft-hairline-width) solid var(--sft-hairline);margin:0}.site{flex-direction:column;min-height:100vh;display:flex}.site main{flex:1}.inner{width:100%;max-width:var(--max);padding-left:var(--page-x);padding-right:var(--page-x);margin:0 auto}.section{padding-top:var(--section-y);padding-bottom:var(--section-y)}.section+.section{border-top:var(--sft-hairline-width) solid var(--sft-hairline)}.section h2{font-size:clamp(22px, 2.4vw, var(--sft-serif-xl))}.section h2+p,.section .lead{margin-top:10px}.section h3{font-size:var(--sft-serif-md);margin-top:28px}.grid3{grid-template-columns:1fr;gap:0;display:grid}@media (min-width:800px){.grid3{grid-template-columns:repeat(3,1fr);gap:32px}}.grid3>div{border-top:var(--sft-hairline-width) solid var(--sft-hairline);padding:16px 0}.grid3 h3{font-size:var(--sft-serif-md);margin-top:0}.grid3 p{color:var(--sft-text-secondary);font-size:var(--sft-ui-md);margin-top:8px;line-height:1.55}.hdr{border-bottom:var(--sft-hairline-width) solid var(--sft-hairline);background:var(--sft-bg-base)}.hdr__row{justify-content:space-between;align-items:center;gap:16px;height:56px;display:flex}.hdr__brand{color:var(--sft-text-primary);font-family:var(--sft-font-serif);font-weight:600;font-size:var(--sft-ui-lg);letter-spacing:-.2px;flex-shrink:0;align-items:center;gap:10px;display:inline-flex}.hdr__brand:hover{text-decoration:none}.hdr__brand img{width:24px;height:24px}.hdr__brand em{color:var(--sft-brand-ink);font-style:normal}.hdr__tag{color:var(--sft-text-secondary);font-family:var(--sft-font-ui);font-size:var(--sft-ui-sm);margin-left:4px;font-weight:400;display:none}.hdr__nav{scrollbar-width:none;gap:4px;min-width:0;display:flex;overflow-x:auto}.hdr__nav::-webkit-scrollbar{display:none}@media (max-width:799px){.hdr__nav a{white-space:nowrap;padding:0 8px}}.hdr__nav a{min-height:var(--touch);color:var(--sft-text-secondary);font-weight:500;font-size:var(--sft-ui-sm);align-items:center;padding:0 10px;display:inline-flex}.hdr__nav a:hover{color:var(--sft-text-primary);text-decoration:none}@media (min-width:800px){.hdr__tag{display:inline}.hdr__nav a{padding:0 14px}}.ftr{border-top:var(--sft-hairline-width) solid var(--sft-hairline);font-size:var(--sft-ui-sm);color:var(--sft-text-secondary);padding:40px 0 44px}.ftr__grid{grid-template-columns:1fr;gap:24px;display:grid}@media (min-width:800px){.ftr__grid{grid-template-columns:1.4fr 1fr 1fr;gap:48px}}.ftr a{color:var(--sft-text-secondary)}.ftr a:hover{color:var(--sft-text-primary)}.ftr__links{flex-direction:column;gap:8px;margin-top:10px;display:flex}.ftr p{line-height:1.55}.ftr__bottom{border-top:var(--sft-hairline-width) solid var(--sft-hairline);font-size:var(--sft-ui-xs);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin-top:28px;padding-top:18px;display:flex}.crumbs{font-size:var(--sft-ui-sm);color:var(--sft-text-tertiary);flex-wrap:wrap;gap:6px;padding-top:16px;display:flex}.crumbs a{color:var(--sft-text-secondary)}.crumbs ol{margin:0;padding:0;display:contents}.crumbs li{list-style:none}.crumbs li+li:before{content:"/";color:var(--sft-text-tertiary);margin-right:6px}.phead{padding-top:16px;padding-bottom:var(--section-y)}.phead h1{font-size:clamp(28px, 3.4vw, var(--sft-serif-hero));margin-top:8px}.phead__meta{color:var(--sft-text-secondary);font-size:var(--sft-ui-md);flex-wrap:wrap;gap:6px 14px;margin-top:12px;display:flex}.phead__meta a{color:var(--sft-text-primary);text-underline-offset:.15em;text-decoration:underline;-webkit-text-decoration-color:var(--sft-hairline);text-decoration-color:var(--sft-hairline)}.stat-strip{border-top:var(--sft-hairline-width) solid var(--sft-hairline);border-bottom:var(--sft-hairline-width) solid var(--sft-hairline);grid-template-columns:repeat(2,1fr);margin:20px 0 0;display:grid}@media (min-width:800px){.stat-strip{grid-template-columns:repeat(4,1fr)}}.stat-strip>div{min-width:0;padding:14px 16px 14px 0}.stat-strip>div+div{border-left:var(--sft-hairline-width) solid var(--sft-hairline);padding-left:16px}@media (max-width:799px){.stat-strip>div:nth-child(odd){border-left:0;padding-left:0}.stat-strip>div:nth-child(n+3){border-top:var(--sft-hairline-width) solid var(--sft-hairline)}}.stat-strip dt{order:2}.stat-strip dd{font-size:var(--sft-mono-lg);overflow-wrap:anywhere;margin:0 0 4px}.stat-strip dd .num{font-size:var(--sft-mono-lg)}.stat-strip dd small{font-family:var(--sft-font-ui);font-size:var(--sft-ui-sm);color:var(--sft-text-secondary);margin-top:2px;display:block}.stat-strip dd span.plain{font-family:var(--sft-font-ui);font-size:var(--sft-ui-lg)}.stat-strip>div{flex-direction:column;display:flex}.summary{background:var(--sft-surface-card);border:var(--sft-hairline-width) solid var(--sft-hairline);border-radius:var(--sft-radius-card);box-shadow:var(--sft-card-shadow);padding:var(--sft-card-padding-midi) 20px;font-size:clamp(16px,1.4vw,18px);line-height:1.55}.summary p+p{margin-top:10px}.summary .caption{margin-bottom:10px}.bars{gap:14px;margin-top:20px;display:grid}.bar{grid-template-columns:1fr;gap:6px;display:grid}@media (min-width:800px){.bar{grid-template-columns:160px 1fr;align-items:center}}.bar__label{font-size:var(--sft-ui-md);color:var(--sft-text-secondary)}.bar__label strong{color:var(--sft-text-primary);font-weight:600}.bar__track{background:var(--sft-cell-empty);border-radius:4px;width:100%;height:22px;display:flex;overflow:hidden}.bar__seg{min-width:0;height:100%}.legend{font-size:var(--sft-ui-sm);color:var(--sft-text-secondary);flex-wrap:wrap;gap:8px 16px;margin-top:14px;display:flex}.legend span:before{content:"";vertical-align:-1px;background:var(--c);border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}:root{--dest-sixth:var(--sft-ramp-2);--dest-college:var(--sft-ramp-6);--dest-fe:var(--sft-warn);--dest-appr:var(--sft-success);--dest-work:var(--sft-text-tertiary);--dest-other:#16181d2e;--dest-none:var(--sft-risk);--dest-he:var(--sft-ramp-2)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--dest-other:#ebf0fa38}}.tbl{border-collapse:collapse;width:100%;font-size:var(--sft-ui-md);margin-top:16px}.tbl th,.tbl td{text-align:left;border-bottom:var(--sft-hairline-width) solid var(--sft-hairline-faint);vertical-align:top;padding:9px 10px 9px 0}.tbl thead th{border-bottom-color:var(--sft-hairline);font-family:var(--sft-font-ui);font-weight:600;font-size:var(--sft-ui-caption);letter-spacing:var(--sft-tracking-caption);text-transform:uppercase;color:var(--sft-text-tertiary)}.tbl td.n,.tbl th.n{text-align:right;font-family:var(--sft-font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;padding-left:10px}.tbl td.n{font-size:var(--sft-mono-sm)}.tbl td small{color:var(--sft-text-tertiary);font-size:var(--sft-ui-xs);display:block}.tbl td:first-child{min-width:150px}.tbl--wide{min-width:860px}.tbl--wide td:first-child{min-width:220px}.tbl-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (max-width:799px){.tbl{font-size:var(--sft-ui-sm)}.tbl th,.tbl td{padding:8px 8px 8px 0}}.note{font-size:var(--sft-ui-sm);color:var(--sft-text-secondary);margin-top:12px;line-height:1.5}.rows{margin-top:12px}.row{border-top:var(--sft-hairline-width) solid var(--sft-hairline-faint);grid-template-columns:1fr;gap:4px 24px;padding:12px 0;display:grid}@media (min-width:800px){.row{grid-template-columns:1.4fr 1fr 1fr;align-items:baseline}}.row h3{font-family:var(--sft-font-ui);font-weight:600;font-size:var(--sft-ui-lg);margin:0}.row h3 a{color:var(--sft-text-primary);text-decoration:none}.row h3 a:hover{text-decoration:underline}.row p{color:var(--sft-text-secondary);font-size:var(--sft-ui-sm)}.row .num{color:var(--sft-text-primary)}.chips{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.chips a,.chip{border:var(--sft-hairline-width) solid var(--sft-hairline);min-height:34px;color:var(--sft-text-primary);font-size:var(--sft-ui-sm);background:0 0;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-weight:500;text-decoration:none;display:inline-flex}.chips a:hover{border-color:var(--sft-text-tertiary);text-decoration:none}.chips a .num,.chip .num{color:var(--sft-text-tertiary);font-size:var(--sft-mono-xs)}.tag{height:22px;font-size:var(--sft-ui-xs);color:var(--sft-text-secondary);background:var(--sft-surface-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 8px 0 6px;font-weight:500;display:inline-flex}.tag:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.tag--good{color:var(--sft-success);background:color-mix(in srgb, var(--sft-success) 12%, transparent)}.tag--warn{color:var(--sft-warn);background:color-mix(in srgb, var(--sft-warn) 12%, transparent)}.tag--bad{color:var(--sft-risk);background:color-mix(in srgb, var(--sft-risk) 12%, transparent)}.tag--info{color:var(--sft-brand-ink);background:color-mix(in srgb, var(--sft-brand-ink) 12%, transparent)}.hero{padding-top:clamp(32px,6vw,80px);padding-bottom:clamp(24px,4vw,48px)}.hero h1{max-width:820px;margin-top:12px;font-size:clamp(32px,4.6vw,56px);line-height:1.05}.hero h1 em{color:var(--sft-brand-ink);font-style:normal}.hero__lead{color:var(--sft-text-secondary);max-width:640px;margin-top:18px;font-size:clamp(16px,1.4vw,19px);line-height:1.5}.search{max-width:640px;margin-top:28px;position:relative}.search input{width:100%;height:50px;padding:0 var(--sft-field-padding);border:var(--sft-hairline-width) solid var(--sft-hairline);border-radius:var(--sft-radius-control);background:var(--sft-surface-card);font-size:17px}.search input:focus{border-color:var(--sft-brand-ink);box-shadow:0 0 0 3px color-mix(in srgb, var(--sft-brand-ink) 18%, transparent);outline:none}.search__list{z-index:20;background:var(--sft-surface-raised);border:var(--sft-hairline-width) solid var(--sft-hairline);border-radius:var(--sft-radius-card);box-shadow:var(--sft-shadow-lg);max-height:420px;margin:0;padding:6px 0;list-style:none;position:absolute;top:54px;left:0;right:0;overflow-y:auto}.search__list:empty{display:none}.search__list a{color:var(--sft-text-primary);padding:10px 16px;text-decoration:none;display:block}.search__list a:hover,.search__list a:focus{background:var(--sft-surface-muted)}.search__list small{color:var(--sft-text-tertiary);font-size:var(--sft-ui-xs);display:block}.search__hint{font-size:var(--sft-ui-sm);color:var(--sft-text-tertiary);margin-top:8px}.stats{max-width:760px;margin-top:36px}.regions{grid-template-columns:1fr;gap:20px 32px;margin-top:20px;display:grid}@media (min-width:800px){.regions{grid-template-columns:repeat(3,1fr)}}.regions h3{font-size:var(--sft-serif-sm);margin-top:0}.regions ul{font-size:var(--sft-ui-md);margin:8px 0 0;padding:0;line-height:1.75;list-style:none}.regions ul a{color:var(--sft-text-primary);text-decoration:none}.regions ul a:hover{text-decoration:underline}.prose{max-width:720px;line-height:1.6}.prose h2{font-size:var(--sft-serif-lg);margin-top:32px}.prose h3{font-size:var(--sft-serif-md);margin-top:24px}.prose p,.prose ul{margin-top:12px}.prose li{margin-top:4px}.map-wrap{margin-top:20px}.map{border:var(--sft-hairline-width) solid var(--sft-hairline);border-radius:var(--sft-radius-card);background:var(--sft-surface-muted);justify-content:center;align-items:center;height:clamp(320px,50vh,520px);display:flex;position:relative;overflow:hidden}.map--live{display:block}.map__show{font:inherit;font-weight:500;font-size:var(--sft-ui-md);color:var(--sft-text-primary);background:var(--sft-surface-card);border:var(--sft-hairline-width) solid var(--sft-hairline);border-radius:var(--sft-radius-control);cursor:pointer;min-height:var(--touch);padding:10px 16px}.map__show:hover{border-color:var(--sft-text-tertiary)}.maplibregl-popup-content{font-family:var(--sft-font-ui);font-size:var(--sft-ui-sm);color:#16181d;border-radius:var(--sft-radius-control);padding:10px 12px;line-height:1.4}.maplibregl-popup-content a{color:#2b60ca}.maplibregl-ctrl-attrib{font-size:10px}.near{grid-template-columns:1fr;gap:10px;max-width:640px;margin-top:20px;display:grid}@media (min-width:800px){.near{grid-template-columns:1fr auto auto}}.near input,.near select{height:48px;padding:0 var(--sft-field-padding);border:var(--sft-hairline-width) solid var(--sft-hairline);border-radius:var(--sft-radius-control);background:var(--sft-surface-card);color:var(--sft-text-primary);font-size:16px}.near input:focus,.near select:focus{border-color:var(--sft-brand-ink);box-shadow:0 0 0 3px color-mix(in srgb, var(--sft-brand-ink) 18%, transparent);outline:none}.btn{border-radius:var(--sft-radius-control);background:var(--sft-brand);color:#fff;height:48px;font:inherit;font-weight:600;font-size:var(--sft-ui-lg);cursor:pointer;border:0;padding:0 18px}.btn:hover{filter:brightness(.95)}.near__results{margin-top:20px}.near__results:empty{display:none}.map-page{grid-template-rows:auto 1fr;grid-template-columns:1fr;height:calc(100vh - 57px);min-height:520px;display:grid}@media (min-width:900px){.map-page{grid-template-rows:1fr;grid-template-columns:380px 1fr}}.map-side{border-right:var(--sft-hairline-width) solid var(--sft-hairline);background:var(--sft-bg-base);flex-direction:column;min-height:0;max-height:46vh;display:flex;overflow-y:auto}@media (min-width:900px){.map-side{max-height:none;overflow-y:hidden}}.map-side__head{padding:14px var(--sft-gutter) 10px;border-bottom:var(--sft-hairline-width) solid var(--sft-hairline)}.map-side__head h1{font-size:var(--sft-serif-lg)}.map-side__head .small{margin-top:6px}.map-search{grid-template-columns:1fr auto;gap:8px;margin-top:12px;display:grid;position:relative}.map-search input{height:44px;padding:0 var(--sft-field-padding);border:var(--sft-hairline-width) solid var(--sft-hairline);border-radius:var(--sft-radius-control);background:var(--sft-surface-card);color:var(--sft-text-primary);font-size:15px}.map-search input:focus{border-color:var(--sft-brand-ink);box-shadow:0 0 0 3px color-mix(in srgb, var(--sft-brand-ink) 18%, transparent);outline:none}.map-search .btn{height:44px;padding:0 14px}.map-search .search__list{top:48px}.map-search .search__list button{text-align:left;width:100%;font:inherit;color:var(--sft-text-primary);cursor:pointer;background:0 0;border:0;padding:10px 16px;display:block}.map-search .search__list button:hover{background:var(--sft-surface-muted)}.map-search .search__list small{color:var(--sft-text-tertiary);font-size:var(--sft-ui-xs);display:block}.map-toggles{font-size:var(--sft-ui-sm);color:var(--sft-text-secondary);flex-wrap:wrap;gap:6px 16px;margin-top:10px;display:flex}.map-toggles label{align-items:center;gap:6px;display:inline-flex}#map-count{margin-top:10px}.map-list{flex:1;min-height:0}@media (min-width:900px){.map-list{overflow-y:auto}}.map-item{text-align:left;width:100%;padding:10px var(--sft-gutter);border:0;border-bottom:var(--sft-hairline-width) solid var(--sft-hairline-faint);font:inherit;color:var(--sft-text-primary);cursor:pointer;background:0 0;display:block}.map-item:hover{background:var(--sft-surface-muted)}.map-item--on{background:color-mix(in srgb, var(--sft-brand-ink) 10%, transparent)}.map-item__name{font-weight:600;font-size:var(--sft-ui-md);display:block}.map-item__meta{color:var(--sft-text-tertiary);font-size:var(--sft-ui-xs);margin-top:2px;display:block}.map-item__nums{color:var(--sft-text-secondary);font-size:var(--sft-ui-sm);margin-top:4px;display:block}.map-card{padding:14px var(--sft-gutter);border-bottom:var(--sft-hairline-width) solid var(--sft-hairline);background:var(--sft-surface-card);position:relative}.map-card h2{font-size:var(--sft-serif-md);margin-top:4px}.map-card__close{width:32px;height:32px;color:var(--sft-text-tertiary);cursor:pointer;background:0 0;border:0;font-size:22px;position:absolute;top:8px;right:12px}.map-card__facts{grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0 0;display:grid}.map-card__facts div{flex-direction:column-reverse;display:flex}.map-card__facts dd{font-size:var(--sft-mono-md);margin:0}.map-card__ring{border-top:var(--sft-hairline-width) solid var(--sft-hairline);margin-top:10px;padding-top:10px}.map-card__ring div{margin-top:2px}.map-card__ring p{margin-top:4px}.map-card__go{align-items:center;margin-top:12px;text-decoration:none;display:inline-flex}.map-main{min-height:0;position:relative}.map--page{border:0;border-radius:0;height:100%}.map-note{color:var(--sft-text-tertiary);background:color-mix(in srgb, var(--sft-bg-base) 80%, transparent);border-radius:4px;max-width:70%;margin:0;padding:2px 6px;font-size:10px;display:none;position:absolute;bottom:6px;left:10px}@media (min-width:900px){.map-note{display:block}}.journey{margin-top:20px}.journey__radio{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.journey__strip{border-bottom:var(--sft-hairline-width) solid var(--sft-hairline);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-items:end;gap:6px;padding-bottom:4px;display:grid;overflow-x:auto}.journey__step{--on:0;cursor:pointer;border-radius:var(--sft-radius-control);flex-direction:column;align-items:center;gap:4px;min-width:0;padding:6px 2px 8px;display:flex}.journey__step:hover .journey__shape{filter:brightness(.92)}.journey__shape{width:100%;max-width:72px;height:calc(34px + var(--i) * 9px);background:var(--c);opacity:calc(.45 + .55 * var(--on));outline:calc(2px * var(--on)) solid var(--sft-brand-ink);outline-offset:2px;transition:opacity var(--dur,.16s), height .16s;border-radius:4px 4px 2px 2px;display:block}.journey__step--ks3{--c:var(--sft-ramp-6)}.journey__step--ks4{--c:var(--sft-ramp-4)}.journey__step--ks5{--c:var(--sft-ramp-2)}.journey__step--he{--c:var(--sft-ramp-0)}.journey__label{font-family:var(--sft-font-ui);font-size:var(--sft-ui-sm);font-weight:calc(400 + 200 * var(--on));color:var(--sft-text-primary);white-space:nowrap}.journey__age{font-family:var(--sft-font-mono);font-size:var(--sft-mono-2xs);color:var(--sft-text-tertiary);white-space:nowrap}.journey__radio:focus-visible~.journey__strip{outline:2px solid var(--sft-brand-ink);outline-offset:4px}.journey__panels{margin-top:18px}.journey__panel{display:none}.journey__radio:first-of-type:checked~.journey__strip .journey__step:first-child{--on:1}.journey__radio:first-of-type:checked~.journey__panels .journey__panel:first-child{display:block}.journey__radio:nth-of-type(2):checked~.journey__strip .journey__step:nth-child(2){--on:1}.journey__radio:nth-of-type(2):checked~.journey__panels .journey__panel:nth-child(2){display:block}.journey__radio:nth-of-type(3):checked~.journey__strip .journey__step:nth-child(3){--on:1}.journey__radio:nth-of-type(3):checked~.journey__panels .journey__panel:nth-child(3){display:block}.journey__radio:nth-of-type(4):checked~.journey__strip .journey__step:nth-child(4){--on:1}.journey__radio:nth-of-type(4):checked~.journey__panels .journey__panel:nth-child(4){display:block}.journey__radio:nth-of-type(5):checked~.journey__strip .journey__step:nth-child(5){--on:1}.journey__radio:nth-of-type(5):checked~.journey__panels .journey__panel:nth-child(5){display:block}.journey__radio:nth-of-type(6):checked~.journey__strip .journey__step:nth-child(6){--on:1}.journey__radio:nth-of-type(6):checked~.journey__panels .journey__panel:nth-child(6){display:block}.journey__radio:nth-of-type(7):checked~.journey__strip .journey__step:nth-child(7){--on:1}.journey__radio:nth-of-type(7):checked~.journey__panels .journey__panel:nth-child(7){display:block}.journey__radio:nth-of-type(8):checked~.journey__strip .journey__step:nth-child(8){--on:1}.journey__radio:nth-of-type(8):checked~.journey__panels .journey__panel:nth-child(8){display:block}.journey__radio:nth-of-type(9):checked~.journey__strip .journey__step:nth-child(9){--on:1}.journey__radio:nth-of-type(9):checked~.journey__panels .journey__panel:nth-child(9){display:block}.journey__grid{grid-template-columns:1fr;gap:20px;display:grid}@media (min-width:800px){.journey__grid{grid-template-columns:1.2fr 1fr;gap:40px}}.journey__grid h3{font-size:var(--sft-serif-md);margin-top:6px}.journey__facts{grid-template-columns:repeat(2,1fr);gap:12px 20px;margin:14px 0 0;display:grid}.journey__facts div{border-top:var(--sft-hairline-width) solid var(--sft-hairline-faint);flex-direction:column-reverse;padding-top:8px;display:flex}.journey__facts dd{font-size:var(--sft-mono-md);margin:0 0 4px}.journey__facts dd .num{font-size:var(--sft-mono-lg)}.journey__facts dd .plain{font-family:var(--sft-font-ui);font-size:var(--sft-ui-md)}.journey__facts dd small{font-family:var(--sft-font-ui);font-size:var(--sft-ui-xs);color:var(--sft-text-secondary);margin-top:2px;display:block}.journey__dest{margin-top:16px}.journey__dest ul{margin:8px 0 0;padding:0;list-style:none}.journey__dest li{border-top:var(--sft-hairline-width) solid var(--sft-hairline-faint);font-size:var(--sft-ui-md);padding:6px 0}.journey__dest li .num{min-width:3.2em;display:inline-block}.journey__dest li small{color:var(--sft-text-tertiary);font-size:var(--sft-ui-xs);margin-left:6px}.journey__quiet{color:var(--sft-text-secondary);margin-top:12px;line-height:1.55}.journey__milestones{margin:8px 0 0;padding:0;list-style:none}.journey__milestones li{border-top:var(--sft-hairline-width) solid var(--sft-hairline-faint);font-size:var(--sft-ui-md);color:var(--sft-text-secondary);padding:8px 0 8px 18px;line-height:1.5;position:relative}.journey__milestones li:before{content:"";background:var(--sft-brand-ink);border-radius:50%;width:7px;height:7px;position:absolute;top:15px;left:2px}.sankey-wrap{margin-top:20px;overflow-x:auto}.sankey{width:100%;min-width:720px;height:auto;font-family:var(--sft-font-ui);display:block;overflow:visible}.sankey__link{opacity:.55;transition:opacity .12s}.sankey--focus .sankey__link{opacity:.12}.sankey--focus .sankey__link.is-on{opacity:.9}.sankey__link:hover{opacity:.95}.sankey__node{cursor:default}.sankey__school .sankey__node{cursor:pointer}.sankey__school:hover .sankey__node,.sankey__school:focus .sankey__node{fill:var(--sft-brand-ink)}.sankey__label{fill:var(--sft-text-primary);font-size:12px}.sankey__label--school{fill:var(--sft-text-primary)}.sankey__school:hover .sankey__label{fill:var(--sft-brand-ink);text-decoration:underline}.sankey__count{font-family:var(--sft-font-mono);fill:var(--sft-text-tertiary);font-size:11px}.sankey__school{outline:none}.uni-list{gap:6px;margin:18px 0 0;padding:0;list-style:none;display:grid}.uni{border-bottom:var(--sft-hairline-width) solid var(--sft-hairline-faint);font-size:var(--sft-ui-md);grid-template-columns:minmax(0,1fr) 44px;grid-template-areas:"name n""track track";align-items:center;column-gap:10px;padding:6px 0;display:grid}@media (min-width:800px){.uni{grid-template-columns:260px minmax(0,1fr) 44px;grid-template-areas:"name track n";padding:4px 0}}.uni__name{color:var(--sft-text-primary);grid-area:name}.uni--rg .uni__name{font-weight:600}.uni__rg{font-family:var(--sft-font-ui);font-size:var(--sft-ui-caption);letter-spacing:var(--sft-tracking-caption);text-transform:uppercase;color:var(--sft-text-tertiary);border-bottom:none;margin-left:8px;text-decoration:none}.uni__track{background:var(--sft-cell-empty);border-radius:3px;grid-area:track;height:10px;display:block;overflow:hidden}.uni__bar{background:var(--dest-he);border-radius:3px;height:100%;display:block}.uni--rg .uni__bar{background:var(--sft-ramp-1,var(--dest-he))}.uni__n{text-align:right;font-size:var(--sft-mono-sm);color:var(--sft-text-secondary);grid-area:n}.uni-head{gap:20px;display:grid}@media (min-width:800px){.uni-head{grid-template-columns:260px minmax(0,1fr);align-items:start}}.uni-logo{border:var(--sft-hairline-width) solid var(--sft-hairline);border-radius:var(--sft-radius-card);box-sizing:border-box;background:#fff;justify-content:center;align-items:center;width:260px;max-width:100%;padding:20px;display:flex}.uni-logo img{width:100%;height:auto;display:block}.uni__name a{color:inherit;text-underline-offset:.15em;text-decoration:underline;-webkit-text-decoration-color:var(--sft-hairline);text-decoration-color:var(--sft-hairline)}.uni__name a:hover{text-decoration-color:currentColor}.row h3 .tag{vertical-align:middle;margin-left:8px}.rg-grid{grid-template-columns:1fr;gap:0;margin:8px 0 0;padding:0;list-style:none;display:grid}@media (min-width:640px){.rg-grid{grid-template-columns:1fr 1fr;gap:0 32px}}@media (min-width:1000px){.rg-grid{grid-template-columns:1fr 1fr 1fr}}.rg-card{border-top:var(--sft-hairline-width) solid var(--sft-hairline-faint);grid-template-columns:96px minmax(0,1fr);align-items:center;gap:14px;padding:14px 0;display:grid}.rg-card h3{font-family:var(--sft-font-ui);font-weight:600;font-size:var(--sft-ui-md);margin:0;line-height:1.3}.rg-card h3 a{color:var(--sft-text-primary);text-decoration:none}.rg-card h3 a:hover{text-decoration:underline}.rg-card p{margin:3px 0 0;line-height:1.4}.rg-card__logo{box-sizing:border-box;border:var(--sft-hairline-width) solid var(--sft-hairline);background:#fff;border-radius:8px;justify-content:center;align-items:center;width:96px;height:64px;padding:8px;display:flex}.rg-card__logo img{width:auto;max-width:100%;height:auto;max-height:100%;display:block}.rg-card__initial{font-family:var(--sft-font-serif);color:var(--sft-text-tertiary);font-size:28px}a.tag{text-decoration:none}.rg-card__logo--dark,.uni-logo--dark{background:#16181d;border-color:#16181d}.sphere-wrap{grid-template-columns:1fr;align-items:center;gap:24px;margin-top:20px;display:grid}@media (min-width:800px){.sphere-wrap{grid-template-columns:340px 1fr;gap:40px}}.sphere{max-width:100%;height:auto;margin:0 auto;display:block}.sphere__cell--empty{fill:var(--sft-cell-empty)}.sphere__cell{stroke:var(--sft-hairline);stroke-width:.7px}.sphere__line{stroke:var(--sft-hairline);stroke-width:1px}.sphere__label{font-family:var(--sft-font-ui);letter-spacing:.02em;fill:var(--sft-text-secondary);font-size:7px;font-weight:500}.sphere__figure{font-family:var(--sft-font-serif);fill:var(--sft-text-primary);font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.sphere__caption{font-family:var(--sft-font-ui);fill:var(--sft-text-tertiary);font-size:7.5px}.fields{gap:8px;margin-top:16px;display:grid}.field{font-size:var(--sft-ui-sm);color:var(--sft-text-secondary);grid-template-columns:1fr 120px 44px;align-items:center;gap:12px;display:grid}.field__bar{background:var(--sft-cell-empty);border-radius:2px;height:4px;overflow:hidden}.field__bar>span{background:var(--sft-brand-ink);height:100%;display:block}.field .num{text-align:right;color:var(--sft-text-primary)}.outcomes{margin-top:16px}.outcomes__group{border-top:var(--sft-hairline-width) solid var(--sft-hairline);padding:4px 0}.outcomes__group summary{cursor:pointer;font-weight:600;font-size:var(--sft-ui-lg);align-items:baseline;gap:12px;padding:10px 0;list-style:none;display:flex}.outcomes__group summary>span:first-of-type{margin-right:auto}.outcomes__group summary::-webkit-details-marker{display:none}.outcomes__group summary:before{content:"+";font-family:var(--sft-font-mono);color:var(--sft-text-tertiary);margin-right:10px}.outcomes__group[open] summary:before{content:"–"}.outcomes__group ul{font-size:var(--sft-ui-md);margin:0 0 12px;padding:0 0 0 20px;line-height:1.5}.outcomes__group li{margin:6px 0}.outcomes__group li small{color:var(--sft-text-tertiary);font-size:var(--sft-ui-xs)}.stages{border-top:var(--sft-hairline-width) solid var(--sft-hairline);border-bottom:var(--sft-hairline-width) solid var(--sft-hairline);grid-template-columns:repeat(2,1fr);margin-top:20px;display:grid}@media (min-width:800px){.stages{grid-template-columns:repeat(4,1fr)}}.stage{flex-direction:column;gap:4px;min-width:0;padding:14px 16px 14px 0;display:flex}.stage+.stage{border-left:var(--sft-hairline-width) solid var(--sft-hairline);padding-left:16px}@media (max-width:799px){.stage:nth-child(odd){border-left:0;padding-left:0}.stage:nth-child(n+3){border-top:var(--sft-hairline-width) solid var(--sft-hairline)}}.stage__head{flex-direction:column;gap:2px;display:flex}.stage__years{font-family:var(--sft-font-serif);font-weight:600;font-size:var(--sft-serif-md)}.stage__n{font-size:var(--sft-mono-lg);margin-top:6px}.stage small{color:var(--sft-text-secondary);font-size:var(--sft-ui-xs);line-height:1.4}.uni-all{border-top:var(--sft-hairline-width) solid var(--sft-hairline-faint);margin-top:20px;padding-top:12px}.uni-all summary{cursor:pointer;font-weight:600;font-size:var(--sft-ui-md);color:var(--sft-text-primary)}.uni-all .tbl{font-size:var(--sft-ui-sm)}.course-stage{margin-top:24px}.course-stage h3{margin:0 0 8px;font-size:18px}.course-modules{margin:0;padding:0;list-style:none}.course-modules li{border-bottom:var(--sft-hairline-width) solid var(--sft-hairline-faint);font-size:var(--sft-ui-md);justify-content:space-between;gap:16px;padding:7px 0;display:flex}.course-module__title a{color:var(--sft-text-primary)}.course-module__main{flex:1;min-width:0}.course-outcomes{margin-top:4px}.course-outcomes summary{cursor:pointer;font-size:var(--sft-ui-sm);color:var(--sft-text-secondary)}.course-outcomes ul{font-size:var(--sft-ui-sm);color:var(--sft-text-secondary);margin:6px 0 2px;padding-left:18px}.course-outcomes li{font-size:var(--sft-ui-sm);border:0;padding:2px 0;display:list-item}.course-fields{margin:0 0 6px}.course-module__meta{white-space:nowrap;color:var(--sft-text-tertiary);font-family:var(--sft-font-mono);font-size:var(--sft-mono-xs)}.course-module__meta code{background:0 0;padding:0;font-family:inherit}.course-optional{margin-top:10px}.course-optional summary{cursor:pointer;font-size:var(--sft-ui-sm);color:var(--sft-text-secondary)}.occ-subjects{max-width:720px;margin-top:12px}.occ-subject{border-top:var(--sft-hairline-width) solid var(--sft-hairline-faint);grid-template-columns:minmax(0,220px) 1fr;align-items:center;gap:2px 16px;padding:8px 0;display:grid}.occ-subject__ideas{grid-column:1/-1}.lede{font-family:var(--sft-font-serif);font-size:var(--sft-serif-lg);letter-spacing:var(--sft-tracking-title);text-wrap:balance;max-width:720px;margin-top:16px;font-weight:600;line-height:1.15}@media (min-width:800px){.lede{font-size:var(--sft-serif-xl)}}.insight{background:var(--sft-surface-card);border:calc(var(--sft-hairline-width) * 2) solid var(--sft-hairline);border-radius:var(--sft-radius-card);box-shadow:var(--sft-card-shadow);padding:var(--sft-card-padding-mini);margin-top:16px}.insight__text{min-height:var(--sft-card-text-min-height);flex-direction:column;display:flex}.insight__value{font-size:var(--sft-mono-lg);margin-top:6px;font-weight:500;line-height:1.2}.insight__detail{font-size:var(--sft-ui-xs);color:var(--sft-text-secondary);margin-top:4px;line-height:1.35}.insight__media{display:none}@media (min-width:800px){.insight{padding:var(--sft-card-padding-midi);margin-top:20px}.insight--media{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 32px;display:grid}.insight__media{min-height:var(--sft-card-media-min-height);justify-content:center;align-items:center;display:flex}.insight__detail{font-size:var(--sft-ui-md)}}.btns{flex-direction:column;gap:8px;margin-top:12px;display:flex}@media (min-width:800px){.btns{flex-direction:row;margin-top:14px}}a.btn{justify-content:center;align-items:center;min-height:48px;text-decoration:none;display:inline-flex}a.btn:hover{text-decoration:none}.btn{border-radius:var(--sft-radius-card)}.btn--outline{color:var(--sft-brand-ink);border:var(--sft-hairline-width) solid var(--sft-hairline);border-radius:var(--sft-radius-control);background:0 0}.btn--outline:hover{filter:none;border-color:var(--sft-text-tertiary)}.contents{flex-wrap:wrap;gap:0 20px;margin-top:12px;display:flex}.contents a{min-height:var(--touch);font-size:var(--sft-ui-sm);align-items:center;font-weight:500;display:inline-flex}.phead .stat-strip+.note{margin-top:8px}.sec{grid-template-columns:1fr;gap:0 64px;display:grid}@media (min-width:800px){.sec:not(.sec--one){grid-template-columns:400px minmax(0,1fr)}.sec__b{padding-top:52px}}.sec .caption+h2{margin-top:6px}.sec h2{margin-bottom:14px}.key{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.key b{font-size:var(--sft-mono-lg);font-weight:500;line-height:1.2}.key span{max-width:280px}.cmp{font-size:var(--sft-ui-sm);color:var(--sft-text-secondary);gap:8px;margin-top:16px;display:grid}.cmp__row{grid-template-columns:96px minmax(0,1fr) 52px;align-items:center;gap:10px;display:grid}@media (min-width:800px){.cmp__row{grid-template-columns:120px minmax(0,1fr) 56px}}.cmp__label--me{color:var(--sft-text-primary);font-weight:600}.cmp__track{background:var(--sft-cell-empty);border-radius:5px;height:10px;display:block;overflow:hidden}.cmp__fill{background:var(--sft-text-tertiary);border-radius:5px;height:10px;display:block}.cmp__fill--ks4{background:var(--sft-ramp-4)}.cmp__fill--ks5{background:var(--sft-ramp-2)}.cmp__fill--he{background:var(--sft-ramp-0)}.cmp__val{text-align:right;font-size:var(--sft-mono-sm)}.sec .means,.sec__b>p:first-child{margin-top:14px}.sec__b>p:first-child{margin-top:0}.term{font-size:var(--sft-ui-sm);color:var(--sft-text-secondary);margin-top:10px;line-height:1.5}.term dfn{color:var(--sft-text-primary);font-style:normal;font-weight:600}.src{font-size:var(--sft-ui-xs);color:var(--sft-text-tertiary);margin-top:12px;line-height:1.45}.ctx{border-radius:var(--sft-radius-control);background:var(--sft-surface-muted);font-size:var(--sft-ui-md);margin-top:14px;padding:12px 14px;line-height:1.5}.fold{margin-top:14px}.fold summary{cursor:pointer;min-height:var(--touch);align-items:center;gap:10px;list-style:none;display:flex}.fold summary::-webkit-details-marker{display:none}.fold__line{border-top:var(--sft-hairline-width) solid var(--sft-hairline-faint);flex:1}.fold__count{font-size:var(--sft-mono-xs);color:var(--sft-text-tertiary)}.fold summary:after{content:"+";font-family:var(--sft-font-mono);font-size:var(--sft-mono-md);color:var(--sft-text-secondary)}.fold[open] summary:after{content:"–"}.fold__body{padding-bottom:12px}.fold__body>.tbl{margin-top:4px}.fold__body>p{font-size:var(--sft-ui-md);color:var(--sft-text-secondary)}.lrows{border-top:var(--sft-hairline-width) solid var(--sft-hairline);margin-top:12px}.lrow{border-top:var(--sft-hairline-width) solid var(--sft-hairline-faint);min-height:52px;color:var(--sft-text-primary);font-size:var(--sft-ui-md);flex-direction:column;justify-content:center;gap:2px;padding:10px 0;text-decoration:none;display:flex}.lrow:first-child{border-top:0}a.lrow:hover{text-decoration:none}a.lrow:hover .lrow__title{text-decoration:underline}.lrow__title{font-weight:600}a.lrow .lrow__title{color:var(--sft-brand-ink)}.lrow__title--me,a.lrow .lrow__title--me{color:var(--sft-text-primary)}.lrow__meta{font-size:var(--sft-ui-sm);color:var(--sft-text-secondary);line-height:1.45}.steps{flex-direction:column;gap:10px;margin:14px 0 0;padding:0;list-style:none;display:flex}.steps li{font-size:var(--sft-ui-md);grid-template-columns:92px minmax(0,1fr);gap:10px;display:grid}.steps li .num{font-size:var(--sft-mono-sm);font-weight:500}.steps--n li{grid-template-columns:24px minmax(0,1fr)}.skill{border-top:var(--sft-hairline-width) solid var(--sft-hairline-faint);font-size:var(--sft-ui-md);align-items:center;gap:12px;padding:10px 0;display:flex}.skill:first-child{border-top:0}.skill__name{flex:1;min-width:0}.skill__track{background:var(--sft-hairline);border-radius:999px;flex:none;width:120px;height:3px;position:relative}.skill__fill{border-radius:inherit;background:var(--sft-ramp-4);position:absolute;top:0;bottom:0;left:0;right:auto}.skill__val{text-align:right;width:44px;font-size:var(--sft-mono-xs);color:var(--sft-text-tertiary)}.sphere__figure{font-size:42px}.sphere__caption{letter-spacing:var(--sft-tracking-caps);text-transform:uppercase;font-size:10px;font-weight:600}
