*,:before,:after{box-sizing:border-box;transition:none!important;animation:none!important}:root{--page:#f5f6f3;--surface:#fff;--surface-muted:#eef1ed;--ink:#17201c;--muted:#68716d;--line:#d8ddd9;--line-strong:#aeb7b1;--accent:#205c43;--accent-strong:#174833}html{color:var(--ink);background:var(--page);scroll-behavior:auto;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{background:var(--page);margin:0;font-size:15px;line-height:1.45}main{width:100%;max-width:1600px;margin:0 auto;padding:52px 40px 56px}h1,h2,p{margin-top:0}h1{letter-spacing:-.035em;margin-bottom:6px;font-size:clamp(28px,3vw,38px);font-weight:650;line-height:1.1}h2{letter-spacing:-.01em;margin-bottom:10px;font-size:16px;font-weight:650}.intro{max-width:560px;color:var(--muted);margin-bottom:36px;font-size:16px}label{color:var(--muted);font-size:13px;font-weight:600;display:block}.add-form{max-width:760px;margin-bottom:18px}.input-row{gap:10px;margin-top:7px;display:flex}.school-search{flex:1;min-width:0;position:relative}.suggestion-panel{z-index:10;border:1px solid var(--line-strong);background:var(--surface);border-radius:7px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden;box-shadow:0 10px 28px #17201c1a}.suggestion-panel ul{margin:0;padding:0;list-style:none}.suggestion-panel li+li{border-top:1px solid var(--line)}.suggestion-panel button{text-align:left;white-space:normal;border:0;border-radius:0;width:100%;min-height:0;padding:10px 12px}.suggestion-panel button.active{background:var(--surface-muted);outline:0}.suggestion-panel span,.suggestion-panel small{display:block}.suggestion-panel small{color:var(--muted);margin-top:3px;font-size:12px}.suggestion-panel p{margin:0;padding:10px;font-size:14px}input,button,.file-button{border:1px solid var(--line-strong);background:var(--surface);min-height:42px;color:var(--ink);font:inherit;border-radius:6px}input{outline:0;width:100%;padding:9px 12px}button,.file-button{cursor:pointer;white-space:nowrap;padding:9px 14px;font-size:14px;font-weight:600;line-height:1}button:hover,.file-button:hover{border-color:var(--ink);background:var(--surface-muted)}.primary-button{border-color:var(--accent);background:var(--accent);color:#fff}.primary-button:hover{border-color:var(--accent-strong);background:var(--accent-strong)}button:disabled{cursor:default;opacity:.5}button:focus-visible,input:focus-visible,.file-button:focus-within,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.toolbar{flex-wrap:wrap;gap:7px;margin-bottom:18px;display:flex}.toolbar .file-button{border-color:var(--line);min-height:34px;color:var(--muted);padding:7px 10px;font-size:13px;text-decoration:none}.toolbar button{border-color:var(--line);min-height:34px;color:var(--muted);padding:7px 10px;font-size:13px}.file-button{align-items:center;display:inline-flex}.file-button input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.status{min-height:21px;color:var(--muted);margin-bottom:10px;font-size:13px}.filter-panel{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin-bottom:12px;padding:14px}.filter-heading-row{align-items:center;gap:12px;display:flex}.filter-heading-row h2{margin:0}.filter-panel.open .filter-heading-row{margin-bottom:13px}.filter-toggle{min-height:0;color:var(--ink);background:0 0;border:0;border-radius:0;align-items:center;gap:7px;padding:0;font-size:16px;font-weight:650;line-height:1.3;display:inline-flex}.filter-toggle:hover{color:var(--accent);background:0 0}.filter-chevron{color:var(--muted);font-size:12px}.result-count{color:var(--muted);white-space:nowrap;margin:0 0 0 auto;font-size:13px}.reset-filters{min-height:0;color:var(--muted);background:0 0;border:0;border-radius:0;padding:3px 0;font-size:12px}.reset-filters:hover{color:var(--ink);text-underline-offset:2px;background:0 0;text-decoration:underline}.filter-grid{grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px 18px;display:grid}.text-filter input{margin-top:7px}.slider-label{justify-content:space-between;gap:10px;display:flex}.slider-label output{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.slider-filter input{min-height:42px;accent-color:var(--accent);background:0 0;border:0;margin:0;padding:0}.table-wrap{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:1420px;font-size:13px}table.without-college-factual{min-width:1240px}.rank-detail{color:var(--muted);margin-top:3px;font-size:11px;font-weight:500;line-height:1.2;text-decoration:none;display:block}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:11px 12px}tbody tr:last-child td{border-bottom:0}th{background:var(--surface-muted);color:#4e5853;letter-spacing:.045em;text-transform:uppercase;font-size:11px;font-weight:700;line-height:1.35}.sort-button{width:100%;min-height:0;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-align:left;text-transform:inherit;white-space:normal;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:flex-start;gap:5px;padding:0;display:flex}.sort-button:hover{color:var(--ink);background:0 0}.sort-arrow{color:var(--muted);opacity:.55;flex:none;margin-top:1px;font-size:13px;line-height:1}.sort-button.active .sort-arrow{color:var(--accent);opacity:1}tbody tr:not(.editor-row):hover td{background:#fafbf9}a{color:var(--accent);text-underline-offset:2px;text-decoration-color:#205c4359}.actions{align-items:center;gap:12px;display:inline-flex}.actions button{min-height:0;color:var(--muted);background:0 0;border:0;border-radius:0;padding:2px 0;font-size:12px}.actions button:hover{color:var(--ink);text-underline-offset:2px;background:0 0;text-decoration:underline}.empty{color:var(--muted);text-align:center;padding:48px 24px}.editor-row td{background:var(--surface-muted);padding:20px}.edit-form{grid-template-columns:repeat(5,minmax(160px,1fr));gap:14px;display:grid}.edit-form input{margin-top:5px}.edit-actions{align-items:end;gap:8px;display:flex}.notes{border-top:1px solid var(--line);max-width:900px;color:var(--muted);margin-top:34px;padding-top:24px;font-size:13px;line-height:1.6}.notes p{margin-bottom:8px}@media (max-width:700px){main{padding:32px 18px 40px}.intro{margin-bottom:28px}.input-row{display:block}.school-search{width:100%}.input-row button{width:100%;margin-top:10px}.filter-heading-row{flex-wrap:wrap;align-items:flex-start}.result-count{margin-left:auto}.filter-grid,.edit-form{grid-template-columns:1fr}}
