:root{--paper:#fcfbf8;--ink:#252b2a;--muted:#66716d;--rule:#d6dad3;--accent:#346759;--wash:#edf1eb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,'Times New Roman',serif;line-height:1.65}a{color:var(--accent);text-underline-offset:4px}header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 3.5%;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:10}header a{text-decoration:none;color:var(--ink);font-variant:small-caps;letter-spacing:.05em}.brand{font-size:19px;white-space:nowrap}nav{display:flex;gap:26px;font-size:16px}main{max-width:1120px;margin:auto;padding:0 32px}section{padding:65px 0;border-bottom:1px solid var(--rule);scroll-margin-top:20px}.hero{max-width:800px;margin:auto;text-align:center;padding-top:44px}.edition{text-align:right;font-variant:small-caps;color:var(--muted);border-bottom:1px solid #929b95;padding-bottom:10px;letter-spacing:.06em}h1{font-weight:400;font-size:clamp(40px,5.3vw,65px);line-height:1.16;margin:38px 0 18px;letter-spacing:-.035em}sup{font-size:24px;color:var(--accent)}.subtitle{font-style:italic;font-size:23px;color:#59665f}.byline{font-variant:small-caps;letter-spacing:.1em;margin:26px}.abstract{max-width:650px;margin:34px auto 22px;text-align:justify}.abstract h2{text-align:center;font-size:17px;font-weight:400;margin-bottom:5px}.abstract p{margin-top:0}.keywords{font-size:14px;color:var(--muted)}.hero-search{max-width:580px;display:flex;margin:32px auto;border-bottom:1px solid #748179}.hero-search input{background:transparent;border:0;padding:12px 0;font-style:italic;flex:1;min-width:0;font-size:17px}.hero-search button{border:0;background:none;font-size:24px}.summary{display:grid;grid-template-columns:repeat(3,1fr);margin:36px 0 22px;border-block:1px solid var(--rule);padding:20px 0}.summary div+div{border-left:1px solid var(--rule)}.summary strong{display:block;font-size:32px;font-weight:400}.summary span{font-size:13px;color:var(--muted);font-variant:small-caps;letter-spacing:.04em}.note{font-size:13px;color:var(--muted);text-align:left}.section-heading{display:flex;align-items:baseline;gap:17px}.section-heading>span{color:var(--accent);font-size:15px}h2{font-weight:400;font-size:32px;line-height:1.25;margin:0 0 16px}h3{font-size:20px;font-weight:400;margin:7px 0}.intro{color:var(--muted);max-width:850px;margin-top:0}.tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--rule);margin:27px 0 24px}.tabs button{border:0;background:none;border-bottom:2px solid transparent;border-radius:0;padding:10px 17px;color:var(--muted)}.tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--rule);border-radius:3px;background:transparent;padding:7px 13px;font-size:14px}button:hover:not(:disabled){background:var(--wash)}button:disabled{cursor:default;opacity:.45}input,select{border:1px solid #c9d0c9;background:#fff;padding:9px 10px;border-radius:3px;font-size:14px;width:100%;min-width:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.filters{display:grid;grid-template-columns:2fr 1.5fr 1.5fr 1.2fr .7fr .7fr;gap:12px;align-items:end}.filters label,.profile-controls label{font-size:12px;color:var(--muted);display:flex;flex-direction:column;gap:5px}.filters>button{justify-self:start;grid-column:1/-1}.notice{border-left:2px solid var(--accent);padding:10px 15px;background:var(--wash);font-size:14px}.table-toolbar,.pagination{display:flex;align-items:center;justify-content:space-between;font-size:14px;margin:19px 0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px;min-width:760px}th{text-align:left;font-weight:400;border-block:1px solid #89978f;background:#f0f2ed;padding:12px 10px}th button{padding:0;border:0;white-space:nowrap}td{padding:14px 10px;border-bottom:1px solid var(--rule);vertical-align:top}td small{display:block;color:var(--muted);margin-top:3px}td a{text-decoration:none}tbody tr:hover{background:#f5f6f0}.empty{text-align:center!important;color:var(--muted);padding:55px 24px;border:1px dashed var(--rule);font-size:16px}.empty strong{display:block;font-weight:400;font-size:22px;margin-bottom:8px}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px 50px}.method-grid article>span{color:var(--accent);font-size:13px}.method-grid p,details p{font-size:15px;color:#58635e}details{border-top:1px solid var(--rule);padding:17px 0}summary{cursor:pointer}.citation{padding:20px 24px;background:var(--wash);font-size:15px}.citation p{margin-top:0}footer{max-width:1184px;margin:auto;padding:40px 32px;display:flex;justify-content:space-between;gap:25px;font-size:13px;color:var(--muted)}footer strong{font-size:17px;font-weight:400;color:var(--ink)}footer>div:last-child{display:flex;gap:20px;flex-wrap:wrap}.skip{position:absolute;left:10px;top:-80px;z-index:30;background:white;padding:10px}.skip:focus{top:10px}.profile-controls{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:20px}.profile-controls label{flex:1;min-width:180px}.bars{display:grid;gap:14px}.bar-row{display:grid;grid-template-columns:minmax(140px,2fr) 3fr 60px;align-items:center;gap:18px;font-size:14px}.bar-track{background:var(--wash);height:17px}.bar-fill{background:var(--accent);height:100%}.bar-value{text-align:right;font-variant-numeric:tabular-nums}.chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.statline{padding:15px 0;color:var(--muted);font-size:14px}.profile-box{border:1px solid var(--rule);padding:24px}.compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.source-stamp{font-size:12px;color:var(--muted)}@media(max-width:950px){header{flex-direction:column;gap:9px;padding:12px 20px;position:relative}nav{gap:20px;flex-wrap:wrap;justify-content:center;font-size:14px}.filters{grid-template-columns:repeat(3,1fr)}.chart-grid{grid-template-columns:1fr}html{scroll-padding-top:10px}}@media(max-width:600px){main{padding:0 20px}section{padding:40px 0}.hero{padding-top:25px}.subtitle{font-size:19px}.abstract{text-align:justify}.summary strong{font-size:27px}.summary span{font-size:11px}.section-heading{gap:10px}h2{font-size:27px}.filters{grid-template-columns:1fr 1fr}.search-label{grid-column:1/-1}.tabs button{padding:9px 10px;font-size:13px}.method-grid{grid-template-columns:1fr;gap:18px}footer{flex-direction:column}.bar-row{grid-template-columns:minmax(110px,2fr) 2fr 38px;gap:8px;font-size:12px}.pagination{gap:8px}nav{gap:15px}.byline{margin:20px}.hero-search input{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.text-button{border:0;padding:0;text-align:left;color:var(--accent);font-size:14px}.text-button:hover{text-decoration:underline}.badge{display:inline-block;padding:1px 6px;background:var(--wash);font-size:11px;color:var(--muted);margin-top:5px}.filters{grid-template-columns:2fr 1.5fr 1.5fr 1.2fr}@media(max-width:950px){.filters{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.filters{grid-template-columns:1fr 1fr}}
#trend-content.scroll{max-height:460px;overflow-y:auto;padding-right:12px}#coverage-content{max-height:540px;overflow-y:auto;padding-right:12px}td details{padding:5px 0;border:0}td summary{font-size:12px;color:var(--muted)}

.author-block{margin:26px 0 34px}.author-block .byline{margin:0 0 7px}.author-block .affiliation{font-size:15px;color:var(--muted);line-height:1.6;margin:0 0 6px}.author-block>a{font-size:14px}

/* Shared prose alignment at every viewport width. Last lines follow normal typesetting. */
.abstract p,.intro,.note,.method-grid p,details p,.citation p,#research-progress{text-align:justify;text-justify:inter-word;hyphens:auto;overflow-wrap:break-word}
.intro{max-width:none}.method-grid>*{min-width:0}.source-links{text-align:center;font-size:14px}
#placement-summary{padding:22px 0}td p{font-size:13px}td a{overflow-wrap:anywhere}
header nav{justify-content:flex-end;flex-wrap:wrap}main,section,.profile-box{min-width:0}
@media(max-width:950px){header nav{justify-content:center}}
.citation-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,5fr);gap:40px;margin-top:42px}.citation-panel{min-width:0;border-top:1px solid var(--ink)}.citation-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--rule)}.citation-heading h3{margin:0;font-size:17px;font-variant:small-caps;letter-spacing:.04em}.citation-heading button{color:var(--accent);font-variant:small-caps;letter-spacing:.03em;white-space:nowrap}.reference-text{padding-left:28px;text-indent:-28px;margin:20px 0;line-height:1.8;font-size:17px;text-align:left;overflow-wrap:anywhere}.reference-text a{color:inherit;text-decoration:none}.reference-text a:hover{text-decoration:underline}.bibtex-block{border:1px solid var(--rule);background:#fff;padding:18px;margin:20px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace}.bibtex-block code{font:inherit}#citation-feedback{min-height:1.65em;margin-bottom:0}@media(max-width:760px){.citation-grid{grid-template-columns:1fr;gap:28px;margin-top:30px}.reference-text{font-size:16px}.bibtex-block{font-size:12px;padding:14px}}
/* Coverage map: logo discs on a quiet land base. Circles are positioned with CSS transforms (see map.js). */
.map-controls{display:flex;flex-wrap:wrap;gap:14px 32px;align-items:flex-end;margin:0 0 18px}.map-controls .tabs{margin:0 0 14px}
.map-control-group{display:flex;flex-direction:column;gap:6px}.map-control-label{font-size:12px;color:var(--muted);font-variant:small-caps;letter-spacing:.06em}
.map-toggle-group{display:inline-flex;border:1px solid var(--rule);background:#fff}.map-toggle{border:0;border-radius:0;border-right:1px solid var(--rule);background:transparent;padding:9px 15px;font-size:13.5px;color:var(--muted)}.map-toggle:last-child{border-right:0}.map-toggle.active{background:var(--ink);color:#fcfbf8}.map-toggle:hover:not(.active){background:var(--wash)}
.map-stage{position:relative;width:100%}
.map-svg{display:block;width:100%;height:auto;overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none}.map-svg.zoomed{cursor:grab}.map-svg.zoomed:active{cursor:grabbing}
.map-land{fill:#e4e6e0;stroke:#fcfbf8;stroke-width:.6;stroke-linejoin:round}.map-grid{fill:none;stroke:#eceee8;stroke-width:.6}
.map-dot{cursor:pointer;outline:none}.map-dot-body{transform-box:fill-box;transform-origin:center;transition:transform .18s ease}.map-dot:hover .map-dot-body,.map-dot:focus-visible .map-dot-body{transform:scale(1.18)}
.map-dot circle{stroke:#fcfbf8;stroke-width:1}.map-hit{fill:transparent;stroke:none!important}.map-shade{fill:rgba(37,43,42,.18);stroke:none!important}.map-mono-disc{fill:#fff;stroke:none!important}.map-dot image{pointer-events:none}
.map-mono{font-family:inherit;font-weight:600;fill:var(--ink);text-anchor:middle;dominant-baseline:central;pointer-events:none}
.map-dot:hover .map-ring,.map-dot:focus-visible .map-ring,.map-dot.selected .map-ring{stroke:var(--ink);stroke-width:1.5}.map-dot.selected .map-dot-body{transform:scale(1.18)}
.map-cluster-halo{fill:rgba(52,103,89,.16);stroke:none!important}.map-cluster-disc{fill:var(--accent);stroke:#fcfbf8;stroke-width:1.5}.map-cluster-count{fill:#fff;font-weight:600;text-anchor:middle;dominant-baseline:central;pointer-events:none;font-family:inherit}.map-cluster:hover .map-cluster-disc,.map-cluster:focus-visible .map-cluster-disc{fill:#2a5447}.map-legend-text{font-size:12px;fill:var(--muted);dominant-baseline:central}
.map-card-list{list-style:none;margin:0 0 10px;padding:0;font-size:13.5px}.map-card-list li{display:flex;justify-content:space-between;gap:12px;padding:3px 0;border-bottom:1px dotted var(--rule)}.map-card-list .text-button{font-size:13.5px;white-space:normal;text-align:left}.map-card-count{color:var(--muted);font-variant-numeric:tabular-nums}.map-card-more{color:var(--muted)}
.map-labels text{fill:var(--ink);paint-order:stroke;stroke:#fcfbf8;stroke-width:3px;stroke-linejoin:round;pointer-events:none;font-family:inherit}
@keyframes map-pop{from{opacity:0;transform:scale(.2)}}@media(prefers-reduced-motion:no-preference){.map-enter .map-dot-body{animation:map-pop .6s cubic-bezier(.2,.7,.2,1) backwards;animation-delay:calc(var(--i) * 10ms)}}
.map-zoom{position:absolute;top:8px;right:8px;z-index:4;display:flex;flex-direction:column;box-shadow:0 2px 8px rgba(37,43,42,.08)}.map-zoom button{width:34px;height:34px;padding:0;border:1px solid var(--rule);border-radius:0;margin-top:-1px;background:#fff;color:var(--ink);font-size:18px;line-height:1}.map-zoom button:hover:not(:disabled){background:#f3f3ef}.map-zoom button:disabled{color:#b9bdb6;cursor:default;opacity:1}
.map-zoom-hint{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);z-index:4;padding:6px 12px;background:rgba(37,43,42,.82);color:#fff;font-size:13px;white-space:nowrap;opacity:0;transition:opacity .2s ease;pointer-events:none}.map-zoom-hint.show{opacity:1}
.map-card{position:absolute;z-index:5;width:260px;padding:14px 16px 14px;background:#fff;border:1px solid var(--rule);box-shadow:0 6px 20px rgba(37,43,42,.1);font-size:14px;color:var(--ink)}.map-card.below{position:static;width:auto;margin-top:12px;box-shadow:none;background:var(--wash);border-color:transparent}
.map-card-name{font-weight:600;line-height:1.25;margin:0}.map-card-meta{color:var(--muted);font-size:13px;margin:3px 0 10px}.map-card dl{display:grid;gap:3px;margin:0 0 10px}.map-card dl div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px dotted var(--rule);padding-bottom:2px}.map-card dt{color:var(--muted)}.map-card dd{margin:0;font-variant-numeric:tabular-nums}
.map-card-actions{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center}.map-card-open{background:none;border:0;padding:0;font-size:13.5px;color:var(--accent)}.map-card-open:hover{text-decoration:underline;text-underline-offset:3px}.map-card-close{margin-left:auto;border:0;background:none;padding:0 4px;font-size:20px;line-height:1;color:var(--muted)}
.map-legend{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 40px;margin-top:16px;font-size:13.5px;color:var(--muted)}.map-legend-head{display:block;font-variant:small-caps;letter-spacing:.04em;color:var(--ink);margin-bottom:6px}.map-legend-size svg{display:block;overflow:visible}.map-legend-size text{font-family:inherit;font-size:11px;fill:var(--muted)}.map-legend-ring{fill:none;stroke:var(--muted);stroke-width:1}
.map-legend-key{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px}.map-legend-key .map-legend-head{flex-basis:100%}.map-key{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.map-key-ring{display:inline-block;width:12px;height:12px;border-radius:50%;border:3px solid var(--c);background:#fff;box-sizing:border-box}
.map-note{color:var(--muted);font-size:14px;line-height:1.55;margin:14px 0 0;max-width:62em}
@media (max-width:640px){.map-controls{gap:10px}.map-control-group,.map-toggle-group{width:100%}.map-toggle{flex:1;padding:9px 6px;font-size:12.5px;text-align:center}.map-zoom button{width:38px;height:38px}.map-legend{gap:10px 24px}}

.chart-tip{position:absolute;z-index:40;max-width:300px;background:var(--ink);color:#fcfbf8;padding:9px 12px;font-size:13px;line-height:1.5;border-radius:3px;box-shadow:0 6px 18px rgba(37,43,42,.25);pointer-events:none}.chart-tip-line{display:flex;align-items:center;gap:7px}.chart-tip strong{font-weight:600}.chart-tip .muted{opacity:.75}.chart-tip-dot,.chart-legend-dot{display:inline-block;width:9px;height:9px;border-radius:50%;flex:none}
.chart-svg{display:block;font-family:inherit}.chart-label{fill:var(--ink);font-size:13px}.chart-axis{fill:var(--muted);font-size:12px}.chart-value{fill:var(--ink);font-size:12.5px;font-variant-numeric:tabular-nums}.chart-row.clickable,.chart-col.clickable,.chart-cell.clickable,text.clickable{cursor:pointer}.chart-row:hover rect:not(:first-child),.chart-row:focus rect:not(:first-child){filter:brightness(.88)}.chart-row:focus,.chart-col:focus,.chart-cell:focus{outline:none}.chart-row:focus-visible rect:first-child,.chart-col:focus-visible .chart-hit{fill:rgba(52,103,89,.08)}.chart-col:hover .chart-hit{fill:rgba(52,103,89,.07)}.chart-empty{color:var(--muted);font-size:14px;padding:20px 0}
.chart-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0 0 10px}.chart-legend-item{border:0;background:none;padding:3px 2px;display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink)}.chart-legend-item.off{opacity:.4;text-decoration:line-through}
.chart-table{margin-top:8px;border:0;padding:6px 0}.chart-table summary{font-size:13px;color:var(--muted)}.chart-table table{min-width:0;font-size:13px;margin-top:8px}.chart-table th,.chart-table td{padding:6px 8px}.chart-table tbody th{text-align:left;font-weight:400;background:none;border:0;border-bottom:1px solid var(--rule)}
.ranked-row{display:grid;grid-template-columns:24px auto 1fr 52px 52px;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--rule);font-size:14px}.ranked-row:has(.chart-legend-dot){grid-template-columns:24px 9px 1fr 52px 52px}.ranked-rank{color:var(--muted);font-variant-numeric:tabular-nums}.ranked-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.ranked-count,.ranked-share{text-align:right;font-variant-numeric:tabular-nums}.ranked-share{color:var(--muted)}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0}.tile{border-top:1px solid var(--ink);padding:12px 0 4px}.tile strong{display:block;font-size:30px;font-weight:400;line-height:1.1}.tile span{display:block;font-size:13px;color:var(--muted);margin-top:4px}.tile small{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.inline-select{font-size:13px;color:var(--muted);display:flex;flex-direction:column;gap:5px;min-width:200px;margin-bottom:14px}.inline-select select{width:auto}.coverage-grid{margin-top:8px}

.pick-list{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--muted);flex:1;min-width:220px}.pick-list input{font-size:13px;padding:6px 9px}.profile-controls{align-items:end}.profile-controls .inline-select{margin-bottom:0;min-width:160px;flex:0 0 auto}
.profile-head h3{margin:6px 0 4px;font-size:26px}.profile-meta{margin:0 0 6px;color:var(--muted);font-size:14px}.profile-meta .text-button{font-size:14px}
.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 40px;margin-top:10px}.profile-panel{min-width:0}.profile-panel h4{font-weight:400;font-size:16px;margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid var(--rule)}
.hire-row{display:grid;grid-template-columns:48px 1.3fr 1.2fr 1.4fr;gap:10px;padding:7px 0;border-bottom:1px solid var(--rule);font-size:13.5px;align-items:baseline}.hire-year{color:var(--muted);font-variant-numeric:tabular-nums}.hire-pos{color:var(--muted)}.hire-row .text-button{font-size:13.5px;white-space:normal}
.stats-grid{display:grid;gap:0;margin:16px 0 24px;border-top:1px solid var(--ink)}.stats-row{display:grid;grid-template-columns:minmax(150px,1.4fr) repeat(var(--n),minmax(0,1fr));gap:10px;padding:8px 0;border-bottom:1px solid var(--rule);font-size:14px;align-items:center}.stats-header{font-size:13px}.stats-name{display:flex;align-items:center;gap:7px;min-width:0}.stats-name span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-label{color:var(--muted)}.stats-value{font-variant-numeric:tabular-nums}
.compare-dest .profile-panel h4{border-bottom-color:var(--c,var(--rule));border-bottom-width:2px}
@media(max-width:950px){.profile-grid{grid-template-columns:1fr}.hire-row{grid-template-columns:44px 1fr;row-gap:2px}.hire-row .hire-pos{grid-column:2}}
.col-filters th{padding:6px 6px;background:#f7f8f4}.col-filter{font-size:12.5px;padding:5px 7px}
.filters label[hidden]{display:none}
.roster-line{display:block;margin-top:5px}.entity-panel{grid-column:1/-1}.entity-head{margin:0 0 6px;font-size:15px}.entity-roles{margin:0 0 8px}.entity-roles .badge{margin:0 6px 4px 0}.entity-sub{margin:12px 0 4px;font-size:13.5px;color:var(--muted)}.entity-sub .text-button{font-size:13.5px}
.university-filters{grid-template-columns:2fr 1fr 1fr;margin:18px 0}.dept-list{list-style:none;margin:0;padding:0;font-size:13.5px}.dept-list li{padding:2px 0}.dept-list small{display:inline;margin-left:6px;color:var(--muted)}#university-chart{margin-top:30px}@media(max-width:600px){.university-filters{grid-template-columns:1fr}}
.read-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:40;pointer-events:none}.read-progress span{display:block;height:100%;background:#2d5da8;transform-origin:0 50%;transform:scaleX(0)}header nav a{white-space:nowrap}header nav a:hover,header nav a.active{color:#2d5da8}
@media(min-width:951px){header{gap:clamp(16px,2.5vw,48px)}header nav{flex-wrap:nowrap;gap:clamp(12px,1.55vw,26px);font-size:clamp(13.5px,1.12vw,16px)}}
header.stacked{flex-direction:column;gap:6px;padding-top:14px;padding-bottom:12px}header.stacked nav{justify-content:center}header.stacked.wrap nav{flex-wrap:wrap}
