:root{color-scheme:light dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;--bg: rgba(127, 127, 127, .06);--border: rgba(127, 127, 127, .25);--muted: rgba(127, 127, 127, .85)}body{margin:0}#app{height:100vh}.app{height:100%;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--bg)}.title{font-weight:650;letter-spacing:.2px;white-space:nowrap}.topbarLinks{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:13px;white-space:nowrap}.topbarLink{color:inherit;text-decoration:none;opacity:.9}.topbarLink:hover{text-decoration:underline;opacity:1}.topbarLink:focus-visible{outline:2px solid rgba(79,124,255,.8);outline-offset:2px;border-radius:6px}.topbarLinkSep{opacity:.5;-webkit-user-select:none;user-select:none}.tabs{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.tabSep{opacity:.45;-webkit-user-select:none;user-select:none}.tab{padding:8px 10px;border-radius:999px;border:1px solid var(--border);background:#7f7f7f1a;cursor:pointer;font-size:13px;white-space:nowrap}.tab.active{background:#4f7cff40;border-color:#4f7cff73}.main{flex:1;overflow:auto;padding:14px}.mainInner{max-width:1400px;width:100%;margin:0 auto}.pane{display:grid;gap:14px}.card{border:1px solid var(--border);border-radius:14px;padding:12px;background:var(--bg);min-width:0}.cardTitle{font-weight:600;margin-bottom:10px}.subTitle{font-weight:600;margin:10px 0 6px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}button{padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:#7f7f7f1f;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.input,input[type=number],input[type=text],select{padding:7px 9px;border-radius:10px;border:1px solid var(--border);background:#7f7f7f0d;min-width:160px}select{color:CanvasText}select option{color:CanvasText;background-color:Canvas}.textarea{width:100%;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;padding:10px;border-radius:12px;border:1px solid var(--border);background:#7f7f7f0d}.field{display:grid;gap:4px}.label{font-size:12px;opacity:.9}.checkbox{display:flex;align-items:center;gap:8px;font-size:13px}.checkbox.disabled{opacity:.5}.checkboxGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.opGroups{display:grid;gap:16px;margin-top:8px}.opGroup{padding-top:6px;border-top:1px solid rgba(127,127,127,.2)}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px 14px}.section.fullWidth{grid-column:1 / -1}.mutationWeightsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 14px}.resultsColumns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"table fit" "stats pareto";gap:14px;align-items:start}.resultsFixed{height:360px}@media(max-width:900px){.topbar{flex-wrap:wrap}.topbarLinks{margin-left:0;flex-wrap:wrap;width:100%;justify-content:flex-end}.resultsColumns{grid-template-columns:minmax(0,1fr);grid-template-areas:"table" "fit" "stats" "pareto"}.resultsFixed{height:340px}}.resultsCard--table{grid-area:table}.resultsCard--fit{grid-area:fit}.resultsCard--stats{grid-area:stats}.resultsCard--pareto{grid-area:pareto}.gridCell{min-height:320px;display:flex;flex-direction:column;min-width:0}.tableWrap{overflow:auto;flex:1;min-width:0;border-radius:12px;border:1px solid rgba(127,127,127,.18)}.table{width:100%;border-collapse:collapse;font-size:13px}.table.fixed{table-layout:fixed}.table thead th{position:sticky;top:0;background:#7f7f7f1f;border-bottom:1px solid rgba(127,127,127,.25);text-align:left;padding:8px 10px}.table thead th.num{text-align:right}.table td{border-bottom:1px solid rgba(127,127,127,.18);padding:7px 10px;vertical-align:top}.table.tight td{padding:6px 8px}.selectedRow{background:#ffd16626}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;font-variant-numeric:tabular-nums}.monoWrap{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.monoEllipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.num{text-align:right;white-space:nowrap}.equationCell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bigEq{padding:8px 10px;border-radius:12px;border:1px solid rgba(127,127,127,.18);background:#7f7f7f0d}.smallText{font-size:12px;opacity:.9}.muted{color:var(--muted);font-size:13px}.statusChip{padding:6px 10px;border-radius:999px;border:1px solid rgba(127,127,127,.2);background:#7f7f7f1a;font-size:12px;cursor:default;-webkit-user-select:none;user-select:none}.statusLine{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.controlsBar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.buttonGroup{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.toolbarField{display:flex;align-items:center;gap:8px;white-space:nowrap}.itersInput{min-width:120px;width:120px;padding:8px 10px}.spacer{flex:1}.plotWrap{flex:1;min-height:260px;min-width:0}.eqHeader{display:flex;gap:10px;align-items:flex-start}.eqHeader .bigEq{flex:1;min-width:0}.errorText{color:#ff6b6b;font-size:13px}.details{margin-top:10px}.hiddenFileInput{display:none}.dropzone{margin:10px 0;padding:16px 14px;border-radius:14px;border:1px dashed rgba(127,127,127,.35);background:#7f7f7f0a;cursor:pointer;-webkit-user-select:none;user-select:none}.dropzone.active{border-color:#4f7cffa6;background:#4f7cff1f}.dropzoneTitle{font-weight:600;margin-bottom:4px}
