@font-face{font-family:'IBM Plex Sans';src:url('/static/fonts/IBMPlexSans-Variable.ttf') format('truetype');font-style:normal;font-weight:100 700;font-display:swap}
@font-face{font-family:Arial;src:url('/assets/arial.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--header-height:77px;--pku-red:#94070a;--ink:#252b33;--muted:#59636e;--blue:#2457a7;--blue-dark:#193f7c;--line:#d6dce2;--light:#f5f7f9;--selected:#edf3fc;--error:#a02b32}
*{box-sizing:border-box}html{font-size:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 16px)}body{margin:0;background:#fff;color:var(--ink);font:400 1rem/1.5 'IBM Plex Sans',sans-serif}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea,summary{touch-action:manipulation;outline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--blue)}button{cursor:pointer}button:disabled{cursor:default}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,p{margin:0}h1{font-size:1.875rem;font-weight:600;line-height:1.25;letter-spacing:-.4px;overflow-wrap:anywhere}h2{font-size:1.375rem;font-weight:600;line-height:1.35}h3,h4{font-size:1.125rem;font-weight:600;line-height:1.4}strong{font-weight:600}fieldset{border:0;margin:0;padding:0;min-width:0}button[hidden],[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.icon-library{position:absolute;width:0;height:0;overflow:hidden}.icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.skip-link{position:absolute;top:-80px;left:20px;z-index:50;background:#fff;padding:12px 18px}.skip-link:focus{top:10px}
.site-header{position:sticky;top:0;z-index:40;background:var(--pku-red);border-bottom:1px solid #7e0609}.header-inner{max-width:1248px;margin:auto;padding:0 32px;display:flex;align-items:center;flex-wrap:wrap;gap:24px 64px;min-height:76px}.brand{color:#fff;font-size:1.75rem;font-weight:600;letter-spacing:-.6px}.brand:hover{text-decoration:none}.main-nav{display:flex;gap:32px;flex-wrap:wrap}.nav-item{position:relative;min-height:76px;padding:12px 0;border:0;background:none;color:#f4e2e2;font-size:1rem}.nav-item:hover,.nav-item.active{color:#fff}.nav-item.active{font-weight:600}.site-header :focus-visible{outline-color:#fff}.nav-item.active::after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:#fff}.main-shell{max-width:1248px;margin:auto;padding:34px 32px 0;min-height:calc(100vh - 160px)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.page-heading p{color:var(--muted);margin-top:10px}.heading-actions,.run-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:9px 16px;border:1px solid transparent;border-radius:3px;font-size:1rem;font-weight:600;line-height:1.4;white-space:normal;text-align:center;text-decoration:none}.button:hover{text-decoration:none}.button.secondary{background:#fff;border-color:#b9c2cc;color:#354252}.button.secondary:hover{background:#f3f6fa;border-color:#8495aa}.button.primary{background:var(--blue);color:#fff}.button.primary:hover{background:var(--blue-dark)}.button:disabled,.button.primary:disabled{background:#eef0f3;border-color:var(--line);color:#687482}.text-button{border:0;background:none;padding:4px 0;color:var(--blue);font-size:.875rem;line-height:1.5;min-height:32px}.text-button:hover{text-decoration:underline}.text-button:disabled{color:var(--muted)}
.input-topline{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.dataset-field{width:360px;max-width:100%}.dataset-field label{display:block;font-weight:600;margin-bottom:8px}.field-hint{font-size:.875rem;color:var(--muted);line-height:1.5}.dataset-field .field-hint{margin-top:8px}.result-tabs{display:flex;gap:32px;border-bottom:1px solid var(--line)}.result-tab{position:relative;border:0;background:none;padding:12px 0 14px;min-height:48px;color:#414c59;font-size:1rem;font-weight:600;line-height:1.5}.result-tab:hover{color:var(--blue)}.result-tab.active{color:var(--blue);font-weight:700}.result-tab.active::after{content:'';height:3px;position:absolute;left:0;right:0;bottom:-1px;background:var(--blue)}.selection-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 40px;margin-top:26px}.input-method-description{margin-top:26px;font-size:1rem;color:var(--muted)}.selector-section{min-width:0}.field-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.field-title h2{font-size:1.25rem}.selection-count{background:none;border:0;border-radius:3px;color:var(--blue);padding:5px 8px;font-size:.875rem;line-height:1.5;min-height:32px}.selection-count[aria-pressed=true]{background:#e7effb;font-weight:600}.selection-count:hover{text-decoration:underline}.search-field{position:relative}.search-field>.icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}input[type=search],select,textarea{width:100%;border:1px solid #aeb9c6;background:#fff;border-radius:3px;line-height:1.5;font-size:1rem}input[type=search],select{min-height:44px;padding:9px 12px}.search-field input{padding-left:40px}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}select{cursor:pointer}textarea{padding:12px;resize:vertical;min-height:110px}.list-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;margin:8px 0}.list-toolbar>div{display:flex;flex-wrap:wrap;gap:16px}.option-list{height:300px;overflow:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);scrollbar-width:thin;scrollbar-color:#a3afbd #f4f6f8}.option-list.selected-only{height:auto;max-height:300px}.option-item{display:flex;align-items:center;gap:14px;padding:11px 12px;min-height:64px;border-bottom:1px solid #e4e8ed;cursor:pointer}.option-item:hover{background:#f6f8fb}.option-item.selected{background:var(--selected)}input[type=checkbox]{accent-color:var(--blue);width:18px;height:18px;flex-shrink:0;margin:0}.option-text{min-width:0}.option-name{display:block;font-size:1rem;font-weight:600;overflow-wrap:anywhere}.option-meta{display:block;font-size:.875rem;color:var(--muted);overflow-wrap:anywhere;margin-top:2px}.option-empty{padding:28px 18px;color:var(--muted)}.custom-input{margin-top:18px}.custom-input summary{cursor:pointer;color:var(--blue);padding:4px 0;font-size:1rem}.custom-input textarea{margin-top:12px}.custom-input .list-toolbar{align-items:flex-start}.custom-input .field-hint{flex:1;min-width:170px}
.run-section{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:30px;padding:22px 0;border-top:1px solid var(--line)}.run-section #input-summary{font-weight:600}.run-section .field-hint{margin-top:5px}.run-actions{justify-content:flex-end;flex-shrink:0}.input-preview{margin-top:24px}.input-preview summary{cursor:pointer;font-size:.875rem;color:var(--blue);padding:6px 0}.input-preview summary span{color:var(--muted);margin-left:8px}.input-preview .table-scroll{margin-top:14px}
.result-context{font-size:1rem;color:var(--ink);margin-top:-13px;margin-bottom:9px}.response-note{font-size:.875rem;color:var(--muted);margin-bottom:24px}.result-tabs{margin-bottom:24px}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.table-toolbar .search-field{width:360px;max-width:100%}.table-scroll,.chart-scroll{max-width:100%;overflow:auto;scrollbar-width:thin;scrollbar-color:#a3afbd #f4f6f8}table{border-collapse:collapse;width:100%;text-align:left;font-size:1rem}th{padding:12px 16px;background:var(--light);border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#46515d;font-size:.875rem;line-height:1.5;font-weight:600;vertical-align:middle}td{padding:14px 16px;border-bottom:1px solid #e1e6eb;color:var(--ink);vertical-align:middle;font-variant-numeric:tabular-nums}#prediction-table{table-layout:fixed}#prediction-table .result-row>td{padding-top:8px;padding-bottom:8px}#prediction-table .value-column{width:10.25rem}#prediction-table .action-column{width:7rem}.numeric{text-align:right;font-variant-numeric:tabular-nums}.entity-name{display:block;overflow-wrap:anywhere;font-weight:600}.row-subtext{display:block;font-size:.875rem;color:var(--muted);overflow-wrap:anywhere;margin-top:3px}.prediction-value{font-size:1rem;font-weight:600;color:var(--ink);white-space:nowrap}.row-detail-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;min-width:44px;padding:8px 0;background:none;border:0;color:var(--blue);font-size:.875rem}.row-detail-button:hover{text-decoration:underline}.row-detail-button .icon{width:16px;height:16px}.row-detail-button[aria-expanded=true] .icon{transform:rotate(90deg)}.result-row:hover>td{background:#f7f9fc}.result-row.selected>td{background:var(--selected)}.mobile-cell{display:none}.table-pagination{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px;font-size:.875rem;color:var(--muted)}.table-pagination>div{display:flex;gap:10px}.empty-table-cell{padding:35px 16px;text-align:center;color:var(--muted)}.preview-table td{overflow-wrap:anywhere}.preview-table{table-layout:fixed}
.section-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:24px 0}.section-toolbar p{margin-top:8px;font-size:.875rem;color:var(--muted)}.chart-scroll svg{display:block;height:auto;font-family:Arial}.chart-scroll text{font-family:Arial}.chart-select{cursor:pointer}.chart-select:focus-visible{outline:2px solid var(--blue);outline-offset:0}.chart-select:hover .row-background,.chart-select:focus-visible .row-background{fill:#edf3fc}.chart-caption{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin:16px 0;font-size:.875rem;color:var(--muted)}.legend-dot{width:9px;height:9px;border-radius:50%;background:#3768b1}
.detail-row>td{padding:0;border-bottom:1px solid #c5d2e2}.detail-panel{padding:24px;background:#f7f9fc;white-space:normal}.detail-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.detail-heading h2{font-size:1.25rem;overflow-wrap:anywhere}.detail-heading .button{font-size:.875rem;flex-shrink:0}.detail-values{display:flex;gap:40px;margin:22px 0}.detail-values span{display:block;font-size:.875rem;color:var(--muted);margin-bottom:5px}.detail-values strong{display:block;font-size:1.5rem;color:#284e7f;font-weight:600}.reference-panel{margin-top:24px}.reference-panel .section-toolbar{margin:0 0 14px}.reference-panel .chart-scroll{margin-top:18px}.reference-panel #download-reference{margin-top:12px}.pair-model-details{border-top:1px solid #ccd6e1;margin-top:24px;padding-top:16px}.pair-model-details>summary{cursor:pointer;font-size:1rem;color:#344a66}.pair-identifiers{margin:20px 0;font-size:.875rem}.pair-identifiers>div{display:flex;gap:20px;margin-bottom:7px;flex-wrap:wrap}.pair-identifiers dt{width:90px;font-weight:600}.pair-identifiers dd{margin:0;overflow-wrap:anywhere;min-width:0;flex:1}#similarity-note{margin-top:16px}
.notice{padding:16px 18px;color:#314e76;background:#edf3fc;margin-bottom:20px;overflow-wrap:anywhere}.notice.error{color:var(--error);background:#fcf0f1;border-left:3px solid #b54c53}.notice .text-button{margin-left:15px}.error-inline{color:var(--error)!important}.progress-panel{display:flex;align-items:center;gap:16px;padding:22px 0;margin-bottom:20px;border-bottom:1px solid var(--line)}.progress-panel p{margin-top:5px;color:var(--muted);font-size:.875rem}#progress-time{margin-left:auto;font-size:.875rem;white-space:nowrap}.spinner{width:22px;height:22px;border:2px solid #c8d6e9;border-top-color:var(--blue);border-radius:50%;flex-shrink:0;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.document-page{max-width:1120px;margin:auto}.help-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:44px;border-top:1px solid var(--line);padding-top:28px}.help-nav{display:flex;flex-direction:column;gap:24px;align-self:start;position:sticky;top:calc(var(--header-height) + 24px);max-height:calc(100dvh - var(--header-height) - 48px);overflow-y:auto;scrollbar-width:thin;padding:2px 6px 2px 2px}.help-nav-group{display:flex;flex-direction:column;gap:4px;min-width:0}.help-nav-group h2{font-size:1rem;font-weight:600;color:var(--muted);margin-bottom:4px}.help-nav a{font-size:1rem;padding:6px 0}.help-article{max-width:800px}.help-article section{margin-bottom:38px;scroll-margin-top:24px}.help-article h2{margin-bottom:16px}.help-article h3{margin-top:24px;margin-bottom:12px}.help-article p{font-size:1rem;line-height:1.75;margin:14px 0;color:#424e5b}code{font-size:.875rem;background:#f0f3f7;padding:2px 4px;color:#3f526c}.code-example{background:#f5f7fa;padding:18px 22px;margin:20px 0}.code-example>span{font-size:.875rem;color:var(--muted)}.code-example pre{font-size:.875rem;line-height:1.8;overflow:auto}.definition-list{margin:0}.definition-list>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding:16px 0;border-bottom:1px solid var(--line)}.definition-list dt{font-size:1rem;font-weight:600;color:#344e6c}.definition-list dd{margin:0;font-size:1rem;line-height:1.75;color:#424e5b}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:14px 22px;background:#263b56;color:#fff;border-radius:3px;z-index:30;max-width:90vw;font-size:1rem}
@media(max-width:900px){.header-inner{gap:20px 40px}.selection-controls{gap:28px}.run-section{align-items:flex-start;flex-wrap:wrap}.run-actions{margin-left:auto}.help-layout{grid-template-columns:160px minmax(0,1fr);gap:28px}.definition-list>div{grid-template-columns:1fr;gap:8px}}
@media(max-width:600px){.header-inner{padding:16px 20px 0;gap:8px;min-height:0}.brand{width:100%;font-size:1.75rem}.main-nav{gap:26px;width:100%}.nav-item{min-height:48px;padding:10px 0 13px}.main-shell{padding:26px 20px 0}.page-heading{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:24px}h1{font-size:1.75rem}.heading-actions{width:100%;gap:10px}.heading-actions .button{flex:1;padding:9px 12px}.input-topline{align-items:flex-end;flex-wrap:wrap;gap:14px}.dataset-field{width:100%}.input-topline #load-example{margin-left:auto}.selection-controls{grid-template-columns:1fr;gap:30px}.option-list{height:260px}.option-list.selected-only{max-height:260px}.result-tabs{gap:28px}.list-toolbar{gap:2px 10px}.list-toolbar>div{gap:14px}.run-section{gap:20px;margin-top:24px}.run-actions{width:100%;margin:0}.run-actions .button{flex:1}.run-section #input-summary{font-weight:400}.result-context{margin-top:-8px}.response-note{margin-bottom:18px}.table-toolbar{align-items:flex-start;flex-direction:column;gap:10px}.table-toolbar .search-field{width:100%}td,th{padding:12px 8px}td:first-child,th:first-child{padding-left:0}td:last-child,th:last-child{padding-right:0}#prediction-table .value-column{width:6.5625rem}#prediction-table .action-column{width:44px;padding-left:0}#prediction-table .cell-column{display:none}.mobile-cell{display:block}.row-detail-button .detail-word{display:none}.row-detail-button{padding:0}.table-pagination{flex-wrap:wrap;gap:14px}.table-pagination>div{margin-left:auto}.section-toolbar{flex-wrap:wrap;gap:16px}.chart-caption{justify-content:flex-start;gap:8px}.detail-panel{padding:18px 12px}.detail-heading{flex-wrap:wrap;gap:12px}.detail-heading .button{padding:8px 12px}.detail-values{gap:28px}.reference-panel .section-toolbar{gap:16px}.pair-identifiers>div{gap:8px}.help-layout{grid-template-columns:minmax(0,1fr);gap:28px}.help-nav{position:static;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:24px 20px;max-height:none;overflow:visible;padding:0}.document-page .page-heading p{margin-top:10px}.progress-panel{flex-wrap:wrap}.progress-panel>div{flex:1}#progress-time{width:100%;padding-left:38px}.toast{width:calc(100% - 40px);max-width:450px}}
.cell-filters{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:14px}.catalog-field{min-width:0}.catalog-field>label{display:block;font-weight:500;margin-bottom:8px}#cell-filter-note{margin-top:10px}
@media(max-width:900px){.cell-filters{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.spinner{animation:none}}

/* Home entry points and the model overview in Documentation. */
@media(min-width:901px){.home-page{display:flex;flex-direction:column;justify-content:space-evenly;min-height:calc(100svh - var(--header-height) - 34px);padding-bottom:32px}}
.home-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);align-items:center;gap:40px;padding:16px 0 36px}.home-intro-copy{min-width:0}.home-logo{display:block;max-width:100%;line-height:0}.home-logo img{display:block;width:100%;height:auto}.home-intro h1{font-size:2.5rem;line-height:1.2;letter-spacing:-.6px;text-wrap:balance}.home-lead{font-size:1.125rem;line-height:1.75;color:#424e5b;max-width:820px;margin-top:20px}
.home-text-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:1rem;line-height:1.5;padding:10px 0}.home-text-link .icon{width:17px;height:17px}
.home-entries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--line);padding:30px 0}.home-entries>div{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:0 32px}.home-entries>div:first-child{padding-left:0}.home-entries>div:last-child{padding-right:0}.home-entries>div+div{border-left:1px solid var(--line)}.home-entries h2{font-size:1.25rem;width:100%}.home-entry-link{display:flex;align-items:center;gap:16px;min-height:96px;color:var(--ink)}.home-entry-link:hover{color:var(--blue)}.home-entry-link>span{min-width:0;overflow-wrap:anywhere}.home-entry-emblem{display:block;flex:none;width:96px;height:96px;overflow:hidden}.home-entries p{font-size:1rem;line-height:1.65;color:#424e5b;margin:12px 0 18px}.home-entries .home-text-link{margin-top:auto;font-weight:600}
.home-about{padding:30px 0 12px;scroll-margin-top:24px}.home-about h2{font-size:1.5rem}.home-about p{font-size:1rem;line-height:1.75;color:#424e5b;margin:14px 0 4px}.home-about .home-text-link{font-weight:600}
.model-figure{max-width:720px;margin:28px auto 32px;min-width:0}.model-figure>a{display:block;line-height:0}.model-figure img{display:block;width:100%;height:auto}.model-figure figcaption{display:flex;flex-wrap:wrap;gap:4px 24px;margin-top:12px}.model-figure-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:1rem;line-height:1.5;padding:8px 0}.model-figure-link .icon{width:17px;height:17px;flex:none}
.model-description{margin:0}.model-description>div{margin:24px 0}.model-description dt{font-size:1.125rem;font-weight:600;color:#344a66;margin-bottom:8px}.model-description dd{margin:0;font-size:1rem;line-height:1.8}.help-workflow{padding-left:24px;margin:0 0 28px}.help-workflow li{padding-left:8px}.help-workflow li::marker{color:#43556d;font-weight:600}.help-workflow h3{margin-top:16px;margin-bottom:8px}
@media(max-width:900px){.home-entry-link{gap:12px;min-height:80px}.home-entry-emblem{width:80px;height:80px}.home-intro{grid-template-columns:minmax(0,1fr);gap:24px}.home-logo{width:320px}.home-entries>div{padding-inline:24px}}
@media(max-width:700px){.home-entry-link{gap:16px}.home-intro{padding:6px 0 28px}.home-intro h1{font-size:2rem;letter-spacing:-.4px}.home-lead{margin-top:18px}.home-entries{grid-template-columns:minmax(0,1fr);padding:0}.home-entries>div,.home-entries>div:first-child,.home-entries>div:last-child{padding:24px 0}.home-entries>div+div{border-left:0;border-top:1px solid var(--line)}.home-entries p{margin-bottom:8px}.home-about{padding-top:28px}.model-figure{margin-block:24px}}

#contribution-chart{margin-top:20px}

/* Use the supplied artwork intact; the header viewport shows its emblem. */
.brand{display:inline-flex;align-items:center;gap:.625rem}.brand-mark{display:block;flex:0 0 3.36rem;width:3.36rem;height:3rem;overflow:hidden;mix-blend-mode:lighten}.brand-mark img{display:block;width:auto;height:100%;max-width:none}

.compound-search>p{margin-top:12px}.compound-search>label{display:block;font-weight:500;margin:14px 0 8px}.compound-search-bar{display:flex;gap:10px;align-items:stretch}.compound-search-bar input{min-width:0;flex:1}.compound-search-bar .button{flex-shrink:0}.compound-match{display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.compound-match img{width:100%;height:auto;align-self:start}.compound-match-info{min-width:0}.compound-match h3{overflow-wrap:anywhere}.compound-match p{margin-top:8px;overflow-wrap:anywhere}.compound-match a{display:inline-block;margin-top:8px}.compound-match .button{margin-top:14px}.compound-smiles{margin-top:10px}.compound-smiles p{font-size:.875rem;overflow-wrap:anywhere}.compound-smiles summary{font-size:.875rem}#compound-search-results:empty{display:none}
.compound-match .field-hint{min-width:0}
@media(max-width:900px){.compound-match{grid-template-columns:minmax(0,1fr);gap:12px}.compound-match img{max-width:240px;justify-self:center}.compound-search-bar .button{padding:9px 12px}}
/* Result figures: compact controls and quiet, opaque scientific graphics. */
.figure-downloads{display:flex;align-items:center;gap:8px;flex-wrap:wrap;max-width:100%;flex-shrink:1}
.figure-downloads>span{font-size:.875rem;color:var(--muted);margin-right:4px}
.figure-downloads .button{padding:8px 12px;min-height:40px;font-size:.875rem}
.figure-controls{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin:0 0 24px}
.figure-controls label{display:flex;align-items:center;gap:10px;margin:0;color:var(--muted);font-size:.875rem;font-weight:400;min-width:0;max-width:100%}
.figure-controls select{width:auto;min-width:112px;max-width:240px;height:40px;padding:6px 30px 6px 10px;font-size:.875rem}
.figure-controls .button{min-height:40px;padding:8px 14px;font-size:.875rem}
.figure-controls .figure-checkbox{gap:8px;color:var(--ink)}
.figure-checkbox input{width:17px;height:17px;margin:0}
.figure-caption{margin:16px 0 28px;color:var(--muted);font-size:.875rem;line-height:1.65}
#ranking-chart,#heatmap-chart{padding-bottom:4px}
#ranking-view .section-toolbar,#heatmap-view .section-toolbar{flex-wrap:wrap}
@media(max-width:640px){.figure-controls{gap:12px 18px}.figure-downloads{flex-wrap:wrap}.figure-controls label{flex-wrap:wrap}.figure-controls select{max-width:100%}}

/* Input recovery uses the existing typography. */
.draft-recovery { padding: 1rem 0; border-block: 1px solid #d7dfe8; margin-bottom: 1.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.draft-recovery p { margin: 0; }
.draft-recovery > div { display: flex; flex-wrap: wrap; gap: 1rem; }
.detail-values { flex-wrap: wrap; gap: 2rem; }
.figure-export { position: relative; flex: 0 0 auto; margin-left: auto; font-size: 1rem; color: var(--ink); }
.figure-export > summary { list-style: none; cursor: pointer; border: 1px solid #c5ced7; border-radius: 3px; padding: 7px 14px; font-weight: 600; background: #fff; }
.figure-export > summary::-webkit-details-marker { display: none; }
.figure-export > summary::after { content: ' ▾'; color: var(--muted); }
.figure-export-panel { position: absolute; z-index: 20; right: 0; top: calc(100% + 8px); width: 300px; max-width: calc(100vw - 40px); padding: 18px; background: #fff; border: 1px solid #ccd5df; box-shadow: 0 5px 18px #d8dfe7; }
.figure-export-panel p { font-size: .875rem; line-height: 1.5; }
.figure-export-panel .export-heading { font-size: 1rem; font-weight: 600; margin: 0 0 12px; }
.figure-export-panel label { display: block; font-size: 1rem; margin: 10px 0; font-weight: 500; }
.figure-export-panel select, .figure-export-panel input[type=number] { width: 100%; min-width: 0; margin-top: 5px; font-size: 1rem; padding: 7px 10px; border: 1px solid #aeb9c6; border-radius: 3px; }
.figure-export-panel .export-names { display: flex; align-items: center; gap: 8px; }
.export-settings > summary { cursor: pointer; color: var(--blue); font-size: 1rem; margin-top: 14px; }
.export-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.export-note { margin: 12px 0 0 !important; color: var(--muted); }
.component-tools { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px; margin: 16px 0; }
.component-tools > label { display: flex; align-items: center; gap: 8px; }
#ranking-chart { max-height: 460px; overscroll-behavior: contain; }
#heatmap-chart { max-height: 480px; overscroll-behavior: contain; }
#reference-export { margin-top: 12px; width: fit-content; }
#reference-export .figure-export-panel { right: auto; left: 0; }
.structure-preview { padding: 0; border: 0; background: #fff; align-self: start; cursor: zoom-in; }
.compound-match-info > .text-button { margin: 12px 0 0 16px; font-size: 1rem; }
#structure-preview-dialog { width: min(720px, calc(100vw - 40px)); max-height: 85vh; border: 1px solid #b8c4d1; border-radius: 3px; padding: 24px; color: var(--ink); }
#structure-preview-dialog .section-toolbar { margin: 0 0 16px; }
#structure-preview-image { display: block; width: 100%; height: auto; }
@media(min-width:1100px) { .pair-figures { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 28px; align-items: start; } .pair-figures > * { min-width: 0; } .pair-figures .pair-model-details { margin-top: 24px; } }
@media(max-width:600px) { .figure-export-panel { width: 280px; padding: 14px; } #ranking-chart, #heatmap-chart { max-height: 65vh; } .compound-match-info > .text-button { display: block; margin-left: 0; } }
@media (max-width: 760px) { .draft-recovery { flex-direction: column; align-items: flex-start; } }

.figure-export-panel { max-height: min(75vh,640px); overflow: auto; }
.section-toolbar > [data-figure-controls], .component-tools > [data-figure-controls], .figure-downloads { margin-left: auto; }

/* Global destinations stay distinct from input modes and result views. */
.site-header{container:site-header / inline-size}
.header-inner{flex-wrap:nowrap;gap:40px}.main-nav{flex-wrap:nowrap;gap:28px}.nav-item{display:flex;align-items:center;white-space:nowrap}.nav-item:hover{text-decoration:none}
.menu-toggle{display:none;border:1px solid #d5a3a4;background:transparent;color:#fff;padding:8px 14px;min-height:44px;border-radius:3px;font-weight:600}
.help-article{min-width:0;overflow-wrap:anywhere}
.help-list{padding-left:24px;margin:14px 0 22px;color:#424e5b;line-height:1.75}
.help-list li{padding-left:4px;margin:10px 0}
.help-list li::marker{color:#43556d}
.help-table{width:100%;table-layout:fixed;margin:22px 0;font-size:1rem;line-height:1.65;color:#424e5b}
.help-table caption{text-align:left;font-weight:600;color:#344e6c;padding:0 0 12px}
.help-table th,.help-table td{white-space:normal;vertical-align:top;padding:14px 12px;border-bottom:1px solid var(--line);font-size:1rem}
.help-table th{font-weight:600;color:#344e6c}
.help-table th:first-child{width:32%;padding-left:0}
.help-table th:last-child,.help-table td:last-child{padding-right:0}
@media(max-width:600px){
  .help-table,.help-table caption,.help-table tbody,.help-table tbody tr{display:block}
  .help-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .help-table tbody tr{padding:14px 0;border-bottom:1px solid var(--line)}
  .help-table th,.help-table td,.help-table th:first-child,.help-table td:last-child{display:block;width:auto;padding:0;border:0;background:transparent}
  .help-table tbody th{margin-bottom:6px}
}
.help-details{margin:18px 0;padding:14px 0;border-block:1px solid var(--line)}
.help-details+.help-details{margin-top:-19px}
.help-details summary{cursor:pointer;color:var(--blue);font-size:1rem;font-weight:600;line-height:1.6}
.help-details>p:last-child{margin-bottom:0}
.help-nav a[aria-current]{font-weight:600;color:var(--blue-dark)}
.help-article section{scroll-margin-top:calc(var(--header-height) + 20px)}
@container site-header (max-width:75em){
  .header-inner{min-height:64px;padding:0 20px;gap:12px;flex-wrap:wrap;justify-content:space-between}
  .brand{width:auto;font-size:1.5rem;min-height:64px}.menu-toggle{display:block}
  .main-nav{display:none;width:100%;padding:0 0 12px;gap:0;flex-direction:column}
  .main-nav.is-open{display:flex}.nav-item{min-height:46px;padding:10px 12px;border-radius:3px}
  .nav-item.active{background:#7b080b}.nav-item.active::after{left:0;right:auto;top:10px;bottom:10px;width:3px;height:auto}
}
@media(max-width:600px){.result-tabs{gap:18px}.result-tab{white-space:normal;text-align:left}.main-shell{padding-top:22px}}

.main-shell.upload-shell{max-width:1440px}.upload-page{margin:auto}.upload-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:36px;align-items:start}.upload-sidebar{position:sticky;top:calc(var(--header-height) + 24px);max-height:calc(100vh - var(--header-height) - 40px);overflow:auto}.upload-navigation{padding-right:20px;border-right:1px solid var(--line)}.upload-nav-title{font-weight:600;padding:0 12px 16px;color:var(--ink)}.upload-menu-toggle{display:none}.upload-content{min-width:0;scroll-margin-top:20px}.upload-content .page-heading{align-items:baseline;flex-wrap:wrap}.upload-content .page-heading>a{flex-shrink:0}.upload-page p{font-size:1rem;line-height:1.65}.upload-input-panel{padding:0}.upload-input-panel>h2{margin-bottom:12px}.upload-input-panel>p{max-width:880px;color:var(--muted);margin-bottom:24px}
.mo-input-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 10px}.mo-input-intro p{color:var(--muted)}.mo-input-intro .button{flex-shrink:0}.upload-input-panel>.mo-format-note{max-width:none;color:var(--muted);margin-bottom:0}.mo-file-row,.mo-cancer-row{display:grid;grid-template-columns:230px minmax(0,1fr);align-items:center;gap:24px;padding:16px 0;border-bottom:1px solid var(--line)}.mo-file-heading>label,.mo-units-control>label,.mo-samples-heading>label{font-weight:600}.mo-file-meta{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:6px;color:var(--muted)}.mo-expression-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,200px);align-items:start;gap:18px}.mo-expression-controls>.mo-file-control{padding-top:32px}.mo-units-control>label{display:block;margin-bottom:8px}.mo-file-control,.mo-units-control,#mo-cancer-field{min-width:0}.mo-file-control input[type=file]{display:block;width:100%;min-width:0;min-height:44px;padding:6px;border:1px solid #aeb9c6;border-radius:3px;background:#fff;font:inherit}.mo-file-control input::file-selector-button{font:inherit;padding:4px 10px;margin-right:12px;color:var(--ink);background:var(--light);border:1px solid var(--line);border-radius:2px}.mo-field-hint,.mo-file-status{margin-top:6px;color:var(--muted);overflow-wrap:anywhere}.mo-file-status[data-validated=true]{color:#306451}.upload-field-error{margin-top:6px;color:var(--error);overflow-wrap:anywhere}#mo-input-form [aria-invalid=true]{border-color:var(--error)}#mo-input-form input,#mo-input-form select{scroll-margin-top:calc(var(--header-height) + 24px)}.mo-samples-heading{display:flex;gap:16px;justify-content:space-between;margin-bottom:8px}.mo-format-details{margin-top:16px;color:var(--muted)}.mo-format-details summary{cursor:pointer;color:var(--blue);min-height:36px;padding:6px 0}.mo-format-details p{margin:10px 0}.upload-page .mo-privacy-note{margin:0;color:var(--muted)}
.upload-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin:22px 0}.upload-note{color:var(--muted);margin:12px 0}.upload-summary{padding:18px 20px;background:var(--light);margin:24px 0;font-size:1rem;overflow-wrap:anywhere}.upload-next{margin-top:24px}.upload-next p{margin-top:12px;max-width:860px;color:var(--muted)}#upload-prediction-form{margin-top:26px}#upload-drug-options .option-item{min-height:50px}#upload-results{scroll-margin-top:calc(var(--header-height) + 20px)}.upload-result-filters{display:flex;gap:24px;margin:22px 0}.upload-result-filters label{flex:1;min-width:0;font-weight:600}.upload-result-filters input,.upload-result-filters select{margin-top:8px;font-weight:400}#upload-results table{min-width:560px}#upload-results td:first-child{overflow-wrap:anywhere;max-width:280px}
@media(max-width:700px){.upload-result-filters{flex-direction:column;gap:16px}.upload-actions .button{flex:1}.upload-page .page-heading{align-items:flex-start}}

.upload-steps{list-style:none;padding:0;margin:0}.upload-steps button{position:relative;display:flex;align-items:baseline;gap:10px;width:100%;min-height:44px;padding:10px 12px;border:0;background:none;border-radius:2px;color:#414c59;text-align:left;font-size:1rem;line-height:1.5}.upload-steps button>span:first-child{font-variant-numeric:tabular-nums;font-weight:600;flex:none}.upload-steps button:disabled{color:var(--muted)}.upload-steps button:hover:not(:disabled){background:#f5f7f9}.upload-steps button[aria-current]{color:var(--blue-dark);background:#edf3fc;font-weight:600}.upload-steps button[aria-current]::before{content:'';position:absolute;inset:8px auto 8px 0;width:3px;background:var(--blue)}.upload-page .section-toolbar p{margin:8px 0 0;color:var(--muted)}
.mo-sample-fields{padding:0;margin:0;min-width:0}.mo-sample-fields legend{font-weight:600;font-size:1rem;margin-bottom:8px}.mo-sample-choice{display:flex;flex-direction:column;gap:8px}.mo-sample-choice label{display:flex;align-items:center;gap:8px;font-weight:400}.mo-sample-choice input{flex:none;margin:0}#mo-cancer-field{max-width:400px}.upload-actions>span{color:var(--muted);flex:1;min-width:180px;font-size:1rem}
.mo-job{margin-top:28px;padding:24px 0;border-block:1px solid var(--line)}.mo-job .section-toolbar{margin:0 0 20px}.mo-job progress{display:block;appearance:none;width:100%;height:8px;border:0;background:#e8edf2;border-radius:0}.mo-job progress::-webkit-progress-bar{background:#e8edf2}.mo-job progress::-webkit-progress-value{background:var(--blue)}.mo-job progress::-moz-progress-bar{background:var(--blue)}#mo-progress-label{margin:10px 0;color:var(--muted)}#mo-job-error{margin:16px 0}#upload-result-draft{padding:12px 16px;background:var(--light)}#mo-feature-downloads{margin-top:12px}
@media(max-width:700px){.mo-sample-choice{flex-direction:column}.upload-page .section-toolbar>div{min-width:0}.upload-page .section-toolbar .button{white-space:normal}.upload-actions>span{min-width:100%}}

@media(max-width:1000px){.upload-layout{grid-template-columns:minmax(0,1fr);gap:18px}.upload-sidebar{position:static;max-height:none;overflow:visible}.upload-menu-toggle{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:44px;padding:9px 12px;background:#f5f7f9;border:1px solid var(--line);border-radius:3px;text-align:left;font-weight:600;color:#354252}.upload-navigation{display:none;padding:16px 0;border-right:0;border-bottom:1px solid var(--line)}.upload-navigation.is-open{display:block}.upload-nav-title{display:none}}

#upload-results>.result-tabs{flex-wrap:wrap}.upload-figure{max-width:900px}.upload-figure .figure-controls label,.upload-figure .figure-controls select{font-size:1rem}.upload-figure .section-toolbar{align-items:flex-start;flex-wrap:wrap}.upload-figure .section-toolbar>div:first-child{flex:1;min-width:200px}#upload-heatmap-chart{max-height:min(65vh,560px)}#upload-heatmap-chart svg{max-width:none}.upload-matrix-cell:focus-visible{outline:2px solid var(--blue);outline-offset:1px}#upload-heatmap-detail{min-height:1.65em;overflow-wrap:anywhere}

@media(max-width:360px){.brand-mark{flex-basis:2.5rem;width:2.5rem;height:2.23rem}}

@media(min-width:1001px) and (max-width:1250px){.mo-file-row,.mo-cancer-row{grid-template-columns:190px minmax(0,1fr);gap:18px}.mo-expression-controls{grid-template-columns:minmax(0,1fr)}.mo-expression-controls>.mo-file-control{padding-top:0}.mo-units-control{max-width:300px}}
@media(max-width:700px){.mo-input-intro{align-items:flex-start;flex-direction:column}.mo-file-row,.mo-cancer-row{grid-template-columns:minmax(0,1fr);gap:12px}.mo-expression-controls{grid-template-columns:minmax(0,1fr);gap:12px}.mo-expression-controls>.mo-file-control{padding-top:0}.mo-sample-choice{flex-direction:row;flex-wrap:wrap;gap:12px 20px}#mo-cancer-field{max-width:none}.mo-input-intro .button{min-width:0}.mo-file-control input[type=file]{overflow:hidden}}
