:root{--bg:#07111f;--bg2:#0a1728;--surface:#0d1c2e;--surface2:#12243a;--text:#eef7f4;--muted:#93a9b5;--line:rgba(255,255,255,.09);--green:#18c985;--green2:#079669;--cyan:#58d9db;--danger:#ff7a85;--shadow:0 24px 70px rgba(0,0,0,.32);--radius:22px;--header:rgba(7,17,31,.78)}html[data-theme="light"]{--bg:#f4f8f7;--bg2:#eaf2f0;--surface:#fff;--surface2:#f5faf8;--text:#10251f;--muted:#5b7169;--line:rgba(14,54,42,.12);--green:#087d57;--green2:#056947;--cyan:#0b8082;--shadow:0 20px 60px rgba(21,70,55,.12);--header:rgba(244,248,247,.82)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a{touch-action:manipulation}a{color:inherit}.shell{width:min(1180px,calc(100% - 32px));margin-inline:auto}.skip-link{position:fixed;left:16px;top:-60px;z-index:999;background:var(--green);color:#02150d;padding:10px 16px;border-radius:10px;font-weight:800}.skip-link:focus{top:16px}.site-header{height:76px;border-bottom:1px solid var(--line);background:var(--header);backdrop-filter:blur(20px);position:sticky;top:0;z-index:50}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center;text-decoration:none}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,var(--green),var(--cyan));color:#03221a;font-size:21px;font-weight:950;box-shadow:0 10px 30px rgba(24,201,133,.22)}.brand strong,.brand small{display:block}.brand strong{font-size:15px;letter-spacing:.1px}.brand small{font-size:11px;color:var(--muted);margin-top:-2px}.header-actions{display:flex;gap:9px}.icon-button{min-width:44px;height:44px;border:1px solid var(--line);border-radius:13px;color:var(--text);background:var(--surface);cursor:pointer;font-weight:800}.text-button{padding:0 13px;font-size:12px}.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(circle at 50% -20%,rgba(24,201,133,.15),transparent 46%),linear-gradient(180deg,var(--bg),var(--bg2))}.hero-content{padding:78px 0 42px;text-align:center;position:relative;z-index:2}.hero-orb{position:absolute;border-radius:999px;filter:blur(10px);opacity:.18;pointer-events:none}.orb-one{width:310px;height:310px;background:var(--green);left:-160px;top:40px}.orb-two{width:260px;height:260px;background:var(--cyan);right:-130px;bottom:-40px}.eyebrow,.section-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:850;color:var(--green);margin:0 0 13px}.eyebrow{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(24,201,133,.22);background:rgba(24,201,133,.08);padding:7px 12px;border-radius:999px}.live-dot{width:7px;height:7px;border-radius:99px;background:var(--green);box-shadow:0 0 0 5px rgba(24,201,133,.12)}h1{font-size:clamp(38px,7vw,72px);line-height:1.04;margin:17px auto 20px;max-width:880px;letter-spacing:-.045em}h1 span{color:var(--green)}.hero-content>p{max-width:780px;margin:0 auto;color:var(--muted);font-size:clamp(16px,2vw,19px)}.search-panel{max-width:990px;margin:38px auto 30px;text-align:left;padding:18px;border:1px solid var(--line);border-radius:26px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.search-box{height:68px;display:flex;align-items:center;gap:13px;padding:0 16px;border:1px solid var(--line);background:var(--bg);border-radius:17px;transition:.2s}.search-box:focus-within{border-color:var(--green);box-shadow:0 0 0 4px rgba(24,201,133,.1)}.search-box svg{width:23px;fill:none;stroke:var(--muted);stroke-width:2}.search-box input{flex:1;min-width:0;border:0;outline:0;color:var(--text);background:transparent;font-size:17px}.search-box input::placeholder{color:color-mix(in srgb,var(--muted) 76%,transparent)}kbd{border:1px solid var(--line);background:var(--surface2);color:var(--muted);border-radius:7px;padding:2px 8px;font-size:12px}.search-help{font-size:12px;color:var(--muted);margin:9px 4px 16px}.search-help button{border:0;background:transparent;color:var(--green);padding:0;cursor:pointer}.filter-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.filter-grid label,.sort-control{display:flex;flex-direction:column;gap:6px;font-size:11px;color:var(--muted);font-weight:750}.filter-grid select,.sort-control select{height:45px;border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:12px;padding:0 10px;outline:none;min-width:0}.filter-grid select:focus,.sort-control select:focus{border-color:var(--green)}.panel-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:15px}.button{min-height:43px;border-radius:12px;padding:0 16px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;font-weight:800;font-size:13px;cursor:pointer}.button.primary{background:linear-gradient(135deg,var(--green),var(--green2));color:#fff;box-shadow:0 10px 25px rgba(8,151,103,.2)}.button.ghost{border-color:var(--line);color:var(--text);background:var(--surface2)}.button.full{width:100%}.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);max-width:800px;margin:0 auto}.hero-stats div{padding:9px 18px;border-right:1px solid var(--line)}.hero-stats div:last-child{border:0}.hero-stats strong,.hero-stats span{display:block}.hero-stats strong{font-size:22px}.hero-stats span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:26px;padding-block:56px 80px}.result-toolbar{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px}.result-toolbar h2,.side-card h2,.section-heading h2{margin:0;line-height:1.2}.result-toolbar h2{font-size:25px}.sort-control{width:160px}.results-list{display:flex;flex-direction:column;gap:12px}.result-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:19px;display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:17px;align-items:start;transition:transform .18s,border-color .18s}.result-card:hover{transform:translateY(-2px);border-color:rgba(24,201,133,.32)}.eiin-box{border:1px solid rgba(24,201,133,.25);background:rgba(24,201,133,.08);color:var(--green);border-radius:13px;padding:10px 7px;text-align:center}.eiin-box small{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.eiin-box strong{font-size:17px;letter-spacing:.04em}.result-card h3{margin:0 0 3px;font-size:17px;line-height:1.32}.bn-name{margin:0;color:var(--muted);font-size:14px}.meta-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.tag{font-size:10px;border:1px solid var(--line);background:var(--surface2);color:var(--muted);padding:4px 8px;border-radius:999px}.tag.green{color:var(--green);border-color:rgba(24,201,133,.22)}.card-actions{display:flex;gap:7px}.small-button{height:36px;border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:10px;padding:0 10px;cursor:pointer;font-size:11px;font-weight:800}.small-button:hover{border-color:var(--green)}.state-card{border:1px dashed var(--line);border-radius:18px;background:var(--surface);min-height:230px;display:grid;place-items:center;align-content:center;text-align:center;padding:30px;color:var(--muted)}.state-card h3{color:var(--text);margin:8px 0}.state-card p{max-width:560px}.hidden{display:none!important}.spinner{width:35px;height:35px;border:3px solid var(--line);border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-icon{font-size:42px;color:var(--green)}.pagination{display:flex;justify-content:center;gap:7px;margin-top:22px;flex-wrap:wrap}.page-button{min-width:38px;height:38px;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:10px;cursor:pointer}.page-button.active{background:var(--green);color:#fff;border-color:var(--green)}.side-column{display:flex;flex-direction:column;gap:16px}.side-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:20px}.side-card p{color:var(--muted);font-size:13px}.side-heading{display:flex;justify-content:space-between;gap:10px}.link-button{border:0;background:transparent;color:var(--green);font-size:12px;cursor:pointer}.recent-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.recent-item{border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:11px;padding:10px 12px;text-align:left;cursor:pointer;font-size:12px}.muted{color:var(--muted)}.official-card{background:linear-gradient(145deg,rgba(24,201,133,.11),var(--surface))}.official-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:950;margin-bottom:13px}.check-list{list-style:none;padding:0;margin:13px 0 0}.check-list li{font-size:12px;color:var(--muted);margin:7px 0}.check-list li:before{content:'✓';color:var(--green);font-weight:900;margin-right:8px}.info-section{padding:75px 0;background:var(--bg2);border-block:1px solid var(--line)}.section-heading{margin-bottom:30px}.section-heading.centered{text-align:center}.section-heading>p:not(.section-kicker){color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.steps article{padding:25px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.steps span{font-size:11px;font-weight:900;color:var(--green);letter-spacing:.15em}.steps h3{margin:12px 0 7px}.steps p{color:var(--muted);font-size:13px}.faq-section{padding-block:75px}.faq-list{display:grid;gap:10px}.faq-list details{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:0 18px}.faq-list summary{padding:17px 0;cursor:pointer;font-weight:800;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';float:right;color:var(--green);font-size:20px}.faq-list details[open] summary:after{content:'−'}.faq-list details p{color:var(--muted);margin:0 0 18px;font-size:14px}footer{border-top:1px solid var(--line);background:var(--bg2);padding:35px 0}.footer-inner{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}.footer-inner p{margin:3px 0;color:var(--muted);font-size:12px}.footer-links{display:flex;gap:17px}.footer-links a{font-size:12px;color:var(--muted);text-decoration:none}.source-note{grid-column:1/-1;border-top:1px solid var(--line);padding-top:15px}.toast{position:fixed;z-index:100;left:50%;bottom:24px;transform:translate(-50%,120px);opacity:0;background:var(--text);color:var(--bg);font-weight:800;font-size:12px;border-radius:12px;padding:11px 17px;box-shadow:var(--shadow);transition:.25s}.toast.show{transform:translate(-50%,0);opacity:1}@media(max-width:980px){.filter-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.side-column{display:grid;grid-template-columns:repeat(3,1fr)}.hero-stats{grid-template-columns:repeat(2,1fr);gap:5px}.hero-stats div:nth-child(2){border-right:0}.steps{grid-template-columns:1fr}.result-card{grid-template-columns:78px minmax(0,1fr)}.card-actions{grid-column:2}}@media(max-width:700px){.shell{width:min(100% - 22px,1180px)}.site-header{height:66px}.brand small{display:none}.brand-mark{width:38px;height:38px}.hero-content{padding-top:52px}h1{font-size:42px}.search-panel{padding:12px;border-radius:20px}.search-box{height:58px}.search-box input{font-size:14px}.search-box kbd{display:none}.filter-grid{grid-template-columns:1fr 1fr}.panel-actions{justify-content:stretch}.panel-actions .button{flex:1}.hero-stats strong{font-size:19px}.content-grid{padding-block:40px}.result-toolbar{align-items:start;gap:14px}.result-toolbar h2{font-size:20px}.sort-control{width:130px}.result-card{grid-template-columns:1fr;padding:16px}.eiin-box{display:flex;align-items:center;justify-content:space-between;padding:8px 11px}.eiin-box small{display:inline}.card-actions{grid-column:1}.small-button{flex:1}.side-column{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}.source-note{grid-column:1}.text-button{display:none}}@media(max-width:430px){.filter-grid{grid-template-columns:1fr}.hero-stats{grid-template-columns:1fr 1fr}.hero-stats div{padding:8px}.result-toolbar{display:block}.sort-control{width:100%;margin-top:12px}.panel-actions{flex-direction:column}.search-help{line-height:1.8}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* National dataset status and data builder */
.dataset-status{margin-top:30px;border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:16px 18px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px}.dataset-status.sample{border-color:rgba(245,158,11,.36);background:linear-gradient(145deg,rgba(245,158,11,.09),var(--surface))}.dataset-status.full{border-color:rgba(24,201,133,.35);background:linear-gradient(145deg,rgba(24,201,133,.09),var(--surface))}.status-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--surface2);color:var(--green);font-weight:900}.dataset-status strong{display:block}.dataset-status p{margin:4px 0 0;color:var(--muted);font-size:12px}.stacked-button{margin-top:9px}.builder-main{padding-top:30px}.builder-hero{text-align:center;padding-block:60px 34px}.builder-hero>p{max-width:830px;margin:0 auto;color:var(--muted);font-size:17px}.builder-hero code,.number-list code{background:var(--surface2);border:1px solid var(--line);border-radius:6px;padding:2px 6px}.notice-card{max-width:900px;margin:28px auto 0;text-align:left;border:1px solid var(--line);background:var(--surface);padding:16px 18px;border-radius:15px}.notice-card p{margin:5px 0 0;color:var(--muted);font-size:13px}.notice-card.warning{border-color:rgba(245,158,11,.34);background:rgba(245,158,11,.07)}.builder-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:26px;padding-block:34px 60px}.builder-panel{min-width:0}.builder-side{display:flex;flex-direction:column;gap:16px}.sticky-card{position:sticky;top:92px}.top-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.source-cards{display:grid;gap:12px}.source-card{display:flex;justify-content:space-between;align-items:center;gap:18px;border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:17px}.source-card h3{margin:7px 0 3px;font-size:16px}.source-card p{margin:0;color:var(--muted);font-size:11px;overflow-wrap:anywhere}.source-badge{display:inline-flex;border:1px solid rgba(24,201,133,.24);background:rgba(24,201,133,.08);color:var(--green);font-size:9px;font-weight:850;padding:4px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.07em}.source-actions{display:flex;gap:8px;flex-shrink:0}.file-label{display:inline-flex;align-items:center;justify-content:center}.file-label input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.progress-track{height:8px;background:var(--surface2);border:1px solid var(--line);border-radius:999px;overflow:hidden;margin:16px 0}.progress-track span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--green),var(--green2));transition:width .25s}.file-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0 15px}.file-stats div{padding:10px 7px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);text-align:center}.file-stats strong,.file-stats span{display:block}.file-stats strong{font-size:16px}.file-stats span{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.number-list{margin:13px 0 0;padding-left:20px;color:var(--muted);font-size:13px}.number-list li{margin:9px 0}.diagnostics-section{padding-bottom:70px}.log-output{min-height:190px;max-height:430px;overflow:auto;border:1px solid var(--line);border-radius:15px;background:#030914;color:#b8c7db;padding:16px;white-space:pre-wrap;font:12px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace}.button:disabled{opacity:.48;cursor:not-allowed}.result-card .missing-id{color:var(--muted);font-size:11px;letter-spacing:0}.source-note-inline{margin-top:8px;color:var(--muted);font-size:10px}
@media(max-width:900px){.builder-grid{grid-template-columns:1fr}.sticky-card{position:static}.dataset-status{grid-template-columns:42px 1fr}.dataset-status .button{grid-column:1/-1}.source-card{align-items:flex-start;flex-direction:column}.source-actions{width:100%}.source-actions>*{flex:1}.builder-hero{padding-top:40px}}
@media(max-width:520px){.source-actions,.top-actions{flex-direction:column}.source-actions>*{width:100%}.dataset-status{grid-template-columns:1fr}.status-icon{display:none}.file-stats{grid-template-columns:1fr 1fr 1fr}.builder-hero h1{font-size:38px}}

/* Institution detail pages and finder links */
.institution-link{color:inherit;text-decoration:none;transition:color .2s ease}.institution-link:hover{color:var(--brand)}
.primary-small{background:linear-gradient(135deg,var(--brand),var(--brand-2));border-color:transparent;color:#fff!important}
.detail-page{min-height:100vh;background:var(--bg);color:var(--text)}
.detail-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px clamp(18px,4vw,64px);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(18px)}
.detail-header-actions{display:flex;align-items:center;gap:10px}.detail-header .brand{text-decoration:none}
.detail-shell{width:min(1160px,calc(100% - 32px));margin:0 auto;padding:28px 0 64px}
.breadcrumbs{display:flex;align-items:center;gap:8px;overflow:auto;padding:4px 0 22px;color:var(--muted);font-size:.92rem;white-space:nowrap}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs a:hover{color:var(--brand)}
.detail-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:32px;padding:clamp(26px,5vw,58px);border:1px solid var(--border);border-radius:28px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--brand) 15%,transparent),transparent 45%),var(--surface);box-shadow:var(--shadow)}
.detail-hero h1{max-width:900px;margin:10px 0 10px;font-size:clamp(2rem,5vw,4.4rem);line-height:1.04;letter-spacing:-.045em}.detail-bn-name{margin:0 0 12px;color:var(--brand);font-size:clamp(1.15rem,2.2vw,1.55rem)}.detail-summary{max-width:760px;margin:0;color:var(--muted);font-size:1.02rem;line-height:1.75}
.detail-identifier{min-width:210px;padding:22px;border:1px solid color-mix(in srgb,var(--brand) 35%,var(--border));border-radius:22px;background:color-mix(in srgb,var(--brand) 8%,var(--surface-2));text-align:center}.detail-identifier span{display:block;color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.detail-identifier strong{display:block;margin:7px 0 14px;font-size:2rem;letter-spacing:.04em}.detail-identifier button{width:100%;min-height:42px;border:0;border-radius:12px;background:var(--brand);color:#fff;font-weight:800;cursor:pointer}.detail-identifier.missing strong{font-size:1rem;letter-spacing:0}
.detail-section{margin-top:24px;padding:clamp(22px,4vw,38px);border:1px solid var(--border);border-radius:24px;background:var(--surface)}
.detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-fact{padding:18px;border:1px solid var(--border);border-radius:16px;background:var(--surface-2)}.detail-fact span{display:block;margin-bottom:6px;color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.detail-fact strong{display:block;overflow-wrap:anywhere;font-size:1rem;line-height:1.5}.detail-fact a{color:var(--brand);text-decoration:none}.detail-fact a:hover{text-decoration:underline}
.detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.primary-link,.secondary-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border-radius:14px;font-weight:800;text-decoration:none}.primary-link{background:linear-gradient(135deg,var(--brand),var(--brand-2));color:#fff}.secondary-link{border:1px solid var(--border);background:var(--surface-2);color:var(--text)}
.nearby-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.nearby-card{display:flex;flex-direction:column;gap:7px;padding:18px;border:1px solid var(--border);border-radius:17px;background:var(--surface-2);color:var(--text);text-decoration:none;transition:transform .2s ease,border-color .2s ease}.nearby-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--brand) 55%,var(--border))}.nearby-card span,.nearby-card small{color:var(--muted);line-height:1.45}
.detail-faq{display:grid;gap:10px}.detail-faq details{border:1px solid var(--border);border-radius:15px;background:var(--surface-2)}.detail-faq summary{padding:17px 18px;font-weight:800;cursor:pointer}.detail-faq p{margin:0;padding:0 18px 18px;color:var(--muted);line-height:1.7}
.source-panel{margin-top:24px;padding:22px;border:1px dashed color-mix(in srgb,var(--brand) 45%,var(--border));border-radius:20px;background:color-mix(in srgb,var(--brand) 6%,var(--surface))}.source-panel p{margin:8px 0 0;color:var(--muted);line-height:1.7}.source-panel a{color:var(--brand)}
.detail-footer{padding:28px 18px;border-top:1px solid var(--border);color:var(--muted);text-align:center}.detail-footer a{color:var(--brand)}
@media(max-width:800px){.detail-hero{grid-template-columns:1fr}.detail-identifier{width:100%}.nearby-grid{grid-template-columns:1fr 1fr}.detail-facts{grid-template-columns:1fr}.detail-header .brand small{display:none}}
@media(max-width:560px){.detail-shell{width:min(100% - 20px,1160px);padding-top:18px}.detail-header{padding:12px}.detail-header-actions .small-button{display:none}.detail-hero,.detail-section{padding:20px;border-radius:20px}.nearby-grid{grid-template-columns:1fr}.detail-hero h1{font-size:2.15rem}}
