.academic-directory{margin:0 0 40px}.academic-toolbar{display:flex;align-items:flex-end;gap:20px;padding:24px;background:var(--tint);border-top:2px solid var(--red)}.academic-toolbar label{flex:1;max-width:740px;font-size:14px}.academic-toolbar input,.academic-intent input[type=search]{display:block;width:100%;margin-top:8px;padding:12px 14px;border:1px solid #969a94;border-radius:0;background:#fff;color:var(--ink);font:inherit}.academic-toolbar button{padding:12px 18px;background:white;border:1px solid var(--line);white-space:nowrap}.academic-hint,.academic-source{font-size:13px;color:var(--muted);margin:16px 0}.academic-source a{color:var(--red);text-decoration:underline}.academic-root{font-family:var(--serif);font-size:24px;color:var(--red);padding:20px 0 16px;border-bottom:1px solid var(--line)}.academic-tree ul{list-style:none;margin:0;padding:0}.academic-tree>ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}.academic-tree>ul>li{border-bottom:1px solid var(--line)}.academic-tree>ul>li:has(>.academic-branch[open]){grid-column:1/-1}.academic-branch>summary{list-style:none;display:flex;align-items:center;gap:12px;min-height:64px;cursor:pointer;padding:8px 12px}.academic-branch>summary::-webkit-details-marker{display:none}.academic-arrow{width:8px;height:8px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg);flex-shrink:0;margin:0 8px 0 0;color:var(--red)}.academic-branch[open]>summary>.academic-arrow{transform:rotate(135deg)}.academic-name{border:0;background:none;text-align:left;color:inherit;padding:8px 0;font:inherit;line-height:1.6;overflow-wrap:anywhere}.academic-name:hover{color:var(--red);text-decoration:underline}.academic-tree>ul>li>.academic-branch>summary>.academic-name{font-family:var(--serif);font-size:23px}.academic-code{font:12px ui-monospace,monospace;color:var(--muted);white-space:nowrap}.academic-count{font-size:12px;color:var(--muted);margin-left:auto;white-space:nowrap}.academic-branch>ul{margin:0 0 18px 27px;padding-left:24px;border-left:1px solid #c8cec3}.academic-branch>ul>li{position:relative}.academic-branch>ul>li::before{content:"";position:absolute;left:-24px;top:30px;width:20px;border-top:1px solid #c8cec3}.academic-leaf{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:54px;padding:0 12px;border-bottom:1px solid #eceee8}.academic-leaf .academic-name{font-size:15px}.academic-results{padding:0;margin:12px 0 24px;list-style:none;max-height:440px;overflow:auto;border:1px solid var(--line)}.academic-results[hidden]{display:none}.academic-results li+li{border-top:1px solid var(--line)}.academic-results button{display:block;text-align:left;width:100%;border:0;background:#fff;color:var(--ink);padding:14px 18px;font:inherit}.academic-results button:hover{background:var(--tint)}.academic-results strong,.academic-results span{display:block}.academic-results span{font-size:12px;color:var(--muted);margin-top:4px}.academic-dialog{width:min(760px,calc(100% - 32px));max-height:85vh;padding:30px;border:1px solid var(--line);color:var(--ink);background:white;overflow:auto}.academic-dialog::backdrop{background:rgba(20,25,20,.48)}.academic-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);margin-bottom:22px}.academic-dialog-heading h2{font-size:28px;overflow-wrap:anywhere}.academic-dialog-heading button{border:1px solid var(--line);background:white;padding:8px 12px;white-space:nowrap}.academic-dialog #academic-dialog-body>p:first-child{color:var(--muted);font-size:13px}.academic-dialog h3{font-family:var(--serif);font-size:21px;margin:24px 0 12px}.academic-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:var(--tint);padding:18px}.academic-facts dt{font-size:12px;color:var(--muted)}.academic-facts dd{margin:0;overflow-wrap:anywhere}.academic-dialog-children{list-style:none;padding:0}.academic-dialog-children button{border:0;background:transparent;color:var(--red);padding:9px 0;text-align:left;font:inherit}.academic-dialog-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.academic-dialog .primary-action{display:inline-block;background:var(--red);color:white;padding:10px 18px}.academic-intent>label{display:block;font-size:14px}.academic-selectors{display:grid;gap:18px;margin-top:20px}.academic-selectors label{display:block;font-size:14px}.academic-selectors label[hidden]{display:none}.academic-selectors select{display:block;width:100%;max-width:100%;margin-top:8px;padding:12px 34px 12px 12px;font:inherit;border:1px solid #969a94;border-radius:0;background:white;color:var(--ink)}.academic-selectors select:disabled{background:var(--tint);color:var(--muted)}.academic-selectors select:focus-visible{outline:3px solid var(--red);outline-offset:3px}.academic-selection{font-size:14px;padding:14px 16px;border-left:3px solid var(--red);background:var(--tint);overflow-wrap:anywhere;margin-top:22px}.academic-intent #intent-view[hidden]{display:none}.faculty-overview{margin-bottom:28px}.faculty-overview p{max-width:820px}.faculty-overview .text-link{margin-right:24px}.academic-statistics{display:flex;gap:28px;flex-wrap:wrap;padding:16px 0;border-block:1px solid var(--line);margin-bottom:28px;font-size:14px}.academic-statistics strong{font-size:22px;color:var(--red);margin-right:6px}
@media(max-width:767px){.academic-toolbar{padding:18px;gap:12px;align-items:stretch;flex-direction:column}.academic-toolbar button{align-self:flex-start;padding:8px 14px}.academic-tree>ul{grid-template-columns:1fr}.academic-branch>summary{gap:8px;padding:8px 0}.academic-tree>ul>li>.academic-branch>summary>.academic-name{font-size:21px}.academic-branch>ul{margin-left:10px;padding-left:14px}.academic-branch>ul>li::before{left:-14px;width:12px}.academic-leaf{padding:4px 0;gap:10px;align-items:flex-start}.academic-leaf .academic-code{padding-top:12px;font-size:10px}.academic-count{font-size:11px}.academic-dialog{padding:22px;max-height:90vh}.academic-dialog-heading h2{font-size:25px}.academic-facts{grid-template-columns:1fr}.academic-selectors select{font-size:14px}.academic-statistics{gap:14px}}
