/* AIDRUG.WORK shared interface: workspace, tools, forms and results. */
:root {
  --ui-ink:#243b43; --ui-muted:#71848a; --ui-line:#e2e9ec;
  --ui-accent:#087f81; --ui-accent-hover:#066c6e; --ui-soft:#edf7f5;
  --ui-surface:#fff; --ui-canvas:#f5f7f9; --ui-radius:12px;
  --border:var(--ui-line); --muted:var(--ui-muted); --blue:var(--ui-accent);
  --shadow:0 2px 8px #243b4304;
  --font-page:25px; --font-section:17px; --font-card:15px;
  --font-body:14px; --font-help:13px; --font-label:12px;
}
html { background:var(--ui-canvas); scrollbar-gutter:stable; }
body { color:var(--ui-ink); background:var(--ui-canvas); -webkit-font-smoothing:antialiased; }
body [hidden] { display:none !important; }
body :is(a,button,input,select,textarea,summary) { -webkit-tap-highlight-color:transparent; }
body :is(a,button,input,select,textarea,summary):focus-visible { outline:3px solid #77c3bd88; outline-offset:3px; }
body :is(h1,h2,h3,h4) { color:var(--ui-ink); letter-spacing:-.02em; }
body h1 { font-weight:700; }
body :is(.subtitle,.muted,.cell-sub,.form-context,.stat-note) { color:var(--ui-muted); }
body :is(.btn,.tool-card,.rw-workspace,.rw-next,.rw-stage) { transition:background-color .16s,border-color .16s,box-shadow .16s; }

/* App frame */
body .sidebar { width:218px; padding:24px 14px 16px; border-right:1px solid var(--ui-line); background:#fff; color:#64777e; scrollbar-width:thin; scrollbar-color:#dce5e8 transparent; }
body .sidebar .brand { padding:0 9px; gap:9px; margin:0 0 24px; min-height:34px; }
body .brand-name { font-size:18px; letter-spacing:-.6px; font-weight:750; color:#28464d; }
body .brand-domain { color:var(--ui-accent); }
body .brand-mark { width:30px; height:32px; border-radius:9px; background:#e9f5f1; color:var(--ui-accent); font-size:22px; transform:none; box-shadow:none; }
body .sidebar .workspace-switch { margin:0 0 16px; padding:12px; border:1px solid var(--ui-line); background:#f8fafb; border-radius:10px; gap:9px; min-height:62px; }
body .workspace-switch > span:nth-child(2) { flex:1; min-width:0; text-align:left; }
body .workspace-switch strong { color:#35515a; font-weight:600; }
body .workspace-switch small { color:#8b9b9f; margin-top:3px; font-size:12px!important; line-height:1.5; }
body .workspace-icon { width:28px; height:30px; flex-shrink:0; border-radius:7px; color:var(--ui-accent); background:#e9f3f1; }
body .sidebar nav { display:grid; gap:3px; padding-bottom:4px; }
body .sidebar .nav-section-label { margin:15px 12px 7px; color:#99a6ac; font-size:11px!important; font-weight:500; letter-spacing:.06em; }
body .sidebar nav a { padding:8px 12px; gap:10px; border-radius:8px; min-height:36px; font-weight:450; color:#677c83; box-shadow:none; }
body .sidebar nav a:hover { background:#f5f8f9; color:#264b52; }
body .sidebar nav a.active { background:#eaf5f2; color:#087f81; font-weight:650; box-shadow:none; }
body .sidebar nav .nav-symbol { width:20px; height:20px; display:grid; place-items:center; flex-shrink:0; color:#8a9ba1; }
body .sidebar nav .active .nav-symbol { color:var(--ui-accent); }
.ui-icon { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; display:block; }
.brand-mark img { display:block; width:100%; height:100%; border-radius:inherit; }
body .brand-mark { flex:0 0 32px; width:32px; height:32px; }
.auth-brand .brand-mark { flex:0 0 42px; }
.account-avatar .ui-icon { width:17px; height:17px; }
.account-large-avatar .ui-icon { width:28px; height:28px; }
.engine-symbol .ui-icon { width:24px; height:24px; }
body .workspace { margin-left:218px; min-width:0; width:calc(100% - 218px); max-width:calc(100vw - 218px); }
body .topbar { height:62px; padding:0 34px; background:#ffffffed; backdrop-filter:blur(12px); border-bottom:1px solid var(--ui-line); }
body .breadcrumb strong { color:#72858c; font-weight:500; }
body .topbar-right { gap:12px; }
body .account-button { border:0; border-left:1px solid var(--ui-line); border-radius:0; background:transparent; padding:0 0 0 16px; gap:8px; }
body .icon-button { width:32px; height:32px; display:inline-grid; place-items:center; border-radius:8px; color:#7d9095; }
body .icon-button:hover { color:var(--ui-accent); background:#f0f6f5; }
body main#main { padding:30px 34px 42px; max-width:1560px; min-width:0; width:100%; }
body .page-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:0 0 24px; }
body .page-heading h1 { margin-bottom:5px; line-height:1.35; }
body .page-heading > div:first-child { min-width:0; }
body .page-heading-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:10px; flex-shrink:0; margin-left:auto; }
body .page-heading .subtitle { line-height:1.7; }
body .section-eyebrow { display:none; }
body :is(.section-heading,.rw-section-title) { margin-bottom:16px; align-items:center; }
body .site-footer { color:#94a3a8; border-top:0; padding:18px 34px 24px; background:transparent; }
body .site-footer > div { gap:12px; flex-wrap:wrap; }
body .site-footer a { color:#8d9da3; }

/* One compact module switch across every research area. */
body #main .research-switch { display:flex!important; grid-template-columns:none!important; flex-wrap:wrap; gap:4px; padding:5px; margin:0 0 24px; border:1px solid var(--ui-line); border-radius:11px; background:#eef2f4; box-shadow:none; }
body #main .research-switch a { display:flex; flex:1 1 auto; align-items:center; justify-content:center; gap:8px; min-height:39px; padding:8px 11px; border:1px solid transparent; border-radius:7px; background:transparent; color:#71838b; box-shadow:none; transform:none; }
body #main .research-switch a:hover { background:#ffffff9c; color:#37545c; }
body #main .research-switch a.active { color:var(--ui-accent); background:#fff; border-color:#dfe8e8; box-shadow:0 1px 3px #243b4308; }
body #main .research-switch a strong { font-size:13px!important; font-weight:550; white-space:nowrap; }
body #main .research-switch a.active strong { font-weight:650; }
body #main .research-switch small { display:none; }
body #main .research-switch .research-switch-icon { width:21px; height:21px; border-radius:0; background:transparent; color:inherit; font-size:17px; margin:0; }

/* Reusable controls */
body .btn { min-height:39px; border-radius:8px; border-color:#dce5e8; background:#fff; color:#526c76; padding:9px 15px; font-weight:550; box-shadow:none; line-height:1.4; }
body .btn:hover:not(:disabled) { color:var(--ui-accent); border-color:#9bc7c3; background:#fbfdfd; box-shadow:0 2px 5px #087f8106; }
body .btn.primary { color:#fff; background:var(--ui-accent); border-color:var(--ui-accent); box-shadow:0 2px 5px #087f8112; }
body .btn.primary:hover:not(:disabled) { color:#fff; background:var(--ui-accent-hover); border-color:var(--ui-accent-hover); }
body .btn.small { min-height:32px; padding:6px 11px; }
body :is(.btn.danger,.text-link.danger,.project-delete-button) { color:#b96363; }
body .btn.danger:hover { background:#fff6f5; border-color:#e3b7b1; color:#a85050; }
body .text-link { color:#158487; font-weight:500; }
body .tag { border-radius:5px; padding:3px 7px; line-height:1.4; font-weight:500; background:#f0f3f6; color:#788b96; }
body .tag.green { color:#42856d; background:#edf6f1; }
body .tag.orange { color:#a88045; background:#fcf5e9; }
body .tag.red { color:#b86969; background:#fcf0f0; }
body .tag.blue { color:#5c7fa5; background:#eff4fa; }
body .tag.purple { color:#8a75a6; background:#f5f1fa; }
body :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),select,textarea,.input) { border:1px solid #dce5e9; border-radius:8px; background:#fff; color:#36535e; min-height:41px; padding:10px 12px; box-shadow:none; max-width:100%; line-height:1.5; }
body :is(input,textarea)::placeholder { color:#a1afb6; opacity:1; }
body :is(input,select,textarea):hover:not(:disabled) { border-color:#b8cecf; }
body :is(input,select,textarea):focus { border-color:#75b7b1; outline:none; box-shadow:0 0 0 3px #087f810d; }
body :is(input,select,textarea)[aria-invalid=true] { border-color:#d38c86; box-shadow:0 0 0 3px #d38c860e; }
body :is(input,select,textarea):disabled { background:#f5f7f8; color:#9ba9af; cursor:not-allowed; }
body input:is([type=checkbox],[type=radio]) { width:16px; height:16px; min-height:16px; padding:0; margin:0; accent-color:var(--ui-accent); flex:0 0 16px; cursor:pointer; vertical-align:middle; }
body textarea { min-height:108px; }
body :is(.plugin-sequence,.sequence-summary,.solid-smiles,pre,code) { font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace; }
body :is(.field,.plugin-field) { min-width:0; gap:8px; }
body :is(.field>label,.plugin-field>label) { color:#5a717b; font-weight:550; line-height:1.5; }
body :is(.field small,.plugin-field small) { color:#8c9ca4; line-height:1.65; }
body .field-required { border:0; padding:0; background:transparent; color:#bd7c75; font-size:11px!important; margin-left:4px; }
body :is(.form-grid,.plugin-fields) { gap:20px; align-items:start; }
body .form-actions { gap:10px; border-color:#e9eef0; margin-top:22px; padding-top:20px; }
body :is(.scope-switch,.input-tabs) { display:inline-flex; align-items:center; flex-wrap:wrap; gap:3px; padding:4px; border:1px solid #e1e8eb; background:#f2f5f6; border-radius:8px; }
body :is(.scope-switch,.input-tabs) button { border:0; border-radius:5px; padding:7px 12px; color:#7a8b93; background:transparent; min-height:30px; line-height:1.4; box-shadow:none; }
body :is(.scope-switch button.active,.scope-switch button[aria-pressed=true],.input-tabs button[aria-pressed=true]) { color:#087f81; background:#fff; box-shadow:0 1px 3px #243b430d; font-weight:600; }
body .advanced-settings { border:1px solid #e4ebee; border-radius:9px; background:#fff; margin:16px 0 0; overflow:hidden; }
body .advanced-settings>summary { padding:13px 16px; color:#6d858d; font-weight:500; background:#fafcfc; cursor:pointer; }
body .advanced-settings[open]>summary { border-bottom:1px solid #e8eef0; }
body .advanced-settings>:not(summary) { margin:16px; }
body .advanced-settings .plugin-fields { margin:18px; }
body .advanced-settings .advanced-settings { margin-inline:0; }
body :is(.notice,.automatic-steps) { border-radius:9px; border:1px solid #dceae7; padding:13px 16px; background:#f3f9f7; color:#65877e; line-height:1.7; }
body .notice.warning { border-color:#eddfc4; background:#fffaf1; color:#a0814e; }
body .compute-ack { border-radius:9px; border:1px solid #e1eae8; background:#f7faf9; padding:16px; }
body .plugin-check { gap:9px; }
body .plugin-check input { margin-top:3px; }
body .plugin-check span { min-width:0; }
body .compute-ack h4 { font-size:13px!important; font-weight:550; margin-bottom:12px; }
body .file-pick { background:#fafcfc; border:1px dashed #cbdcde; border-radius:9px; padding:13px; gap:12px; align-items:center; }
body .file-pick>span { overflow-wrap:anywhere; color:#8c9da3; }

/* Software directory */
body #main .tool-filterbar { display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:14px 16px; border:1px solid var(--ui-line); border-radius:11px; background:#fff; margin:0 0 26px; }
body #software-catalog .tool-filterbar>.scope-switch { grid-column:auto; margin:0; flex-shrink:0; }
body #software-catalog #software-category { width:180px; min-width:150px; max-width:210px; margin:0; }
body #software-catalog .tool-search { margin-left:auto; min-width:160px; max-width:290px; flex:1; }
body #software-catalog .tool-count { font-size:12px!important; color:#99a7ae; white-space:nowrap; }
body #main .tool-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; align-items:stretch; grid-auto-rows:auto; }
body #main .tool-group { margin-bottom:28px; }
body #main .tool-group>.panel-header { padding:0 2px 13px; border:0; background:transparent; }
body #main .tool-group h2 { font-size:15px!important; font-weight:600; }
body #main .tool-card { border:1px solid var(--ui-line); border-radius:11px; background:#fff; box-shadow:var(--shadow); padding:20px; min-width:0; }
body #main .tool-card:hover { transform:none; border-color:#b4d1ce; box-shadow:0 5px 16px #1f4c4806; }
body #main .software-catalog-card { padding:20px!important; gap:12px; min-height:245px; }
body #main .software-catalog-head { min-height:25px; align-items:center; }
body #main .software-catalog-head h3 { color:#294c54; font-weight:650; }
body #main .software-catalog-card>p { color:#87979e; line-height:1.75; font-size:13px!important; }
body #main .software-catalog-card .software-io { border-top:1px solid #eef2f4; padding-top:12px; gap:14px; display:grid; grid-template-columns:1fr 1fr; }
body #main .software-catalog-card .software-io>div { background:transparent; border:0; padding:0; }
body #main .software-catalog-card .software-io dt { font-size:11px!important; color:#a0adb2; margin-bottom:5px; }
body #main .software-catalog-card .software-io dd { color:#6e848d; font-size:12px!important; line-height:1.6; }
body #main .software-catalog-foot { padding-top:5px; color:#9aa9af; font-size:11px!important; }
body #main .software-catalog-foot>.text-link { font-size:12px!important; }
body #main .software-shared-context { color:#8c9ea5; font-size:11px!important; }
body #main .workflow-card { display:flex; flex-direction:column; min-height:178px; gap:10px; text-align:left; }
body #main .workflow-card h3 { margin:0; }
body #main .workflow-card p { color:#82969e; line-height:1.7; font-size:13px!important; margin:0; }
body #main .workflow-card .workflow-steps { color:#79919a; font-size:12px!important; line-height:1.8; padding-top:12px; margin-top:auto; border-top:1px solid #edf2f3; }
body #main .workflow-card .tool-open { margin-top:auto; font-size:13px!important; color:#26878a; }

/* Shared software workspace */
body .tool-breadcrumb { margin-bottom:16px; }
body .tool-breadcrumb a { background:transparent; color:#7a9299; padding:0; font-size:13px!important; }
body .plugin-workspace { max-width:1200px; margin:0 auto; }
body .plugin-workspace .plugin-title { display:flex; flex-direction:row; align-items:center; gap:16px; padding:0 0 20px; border:0; border-radius:0; background:transparent; box-shadow:none; margin:0; }
body .plugin-title h1 { margin:0 0 6px; }
body .plugin-title p { margin:0; color:#8798a0; line-height:1.7; font-size:13px!important; }
body .plugin-title>.chips { margin-left:auto; flex-shrink:0; }
body .plugin-workspace .capability-summary { display:grid; grid-template-columns:1fr 1.3fr 1.6fr .65fr; gap:0; margin:0 0 20px; padding:15px 0; border:1px solid var(--ui-line); border-radius:10px; background:#fff; box-shadow:none; }
body .plugin-workspace .capability-summary>div { background:transparent; padding:0 18px; border:0; border-radius:0; box-shadow:none; min-width:0; }
body .plugin-workspace .capability-summary>div+div { border-left:1px solid #edf1f3; }
body .plugin-workspace .capability-summary span { font-size:11px!important; color:#9ba9af; margin-bottom:5px; }
body .plugin-workspace .capability-summary strong { font-size:13px!important; color:#637e87; font-weight:500; line-height:1.65; }
body .plugin-workspace .plugin-tabs { display:flex; gap:26px; padding:0; border:0; border-bottom:1px solid var(--ui-line); border-radius:0; background:transparent; margin:0 0 22px; width:auto; }
body .plugin-tabs a { color:#8a9ca3; border:0; border-bottom:2px solid transparent; border-radius:0; background:transparent; padding:10px 1px 12px; box-shadow:none; }
body .plugin-tabs a.active { color:var(--ui-accent); border-color:var(--ui-accent); background:transparent; box-shadow:none; font-weight:600; }
body .plugin-workspace .compute-layout { grid-template-columns:minmax(0,1fr) 270px; gap:20px; }
body .plugin-workspace .compute-aside { top:84px; }
body .panel { border:1px solid var(--ui-line); border-radius:11px; background:#fff; box-shadow:var(--shadow); }
body .panel-header { padding:18px 20px; border-bottom:1px solid #edf1f3; background:#fff; gap:12px; }
body .panel-header>h3 { font-size:15px!important; font-weight:600; margin:0; }
body .panel-header>.subtitle { font-size:12px!important; color:#a2afb5; }
body .panel-body { padding:22px; }
body .plugin-settings-form .plugin-fields { gap:20px; }
body .plugin-settings-form .plugin-parameter-section { padding-top:22px; margin-top:22px; border-top:1px solid #eef2f3; }
body .form-section-title { margin:0 0 18px; font-size:14px!important; color:#436670; }
body .plugin-submit-actions { background:#fff; flex-wrap:wrap; }
body .plugin-submit-actions>.text-link { margin-right:auto; }
body .compute-aside>.panel,body #antibody-project-context>.panel { border-top:1px solid var(--ui-line); }
body .compute-aside .panel-body { padding:19px; }
body .integration-kv { gap:11px 12px; }
body .integration-kv dt { color:#99a8ae; }
body .integration-kv dd { color:#6a838c; }

/* Projects, process overview, tasks and data */
body .rw { max-width:1440px; }
body :is(.rw-workspaces,.rw-project-grid,.rw-next-grid) { gap:16px; }
body :is(.rw-workspace,.rw-project-card,.rw-next,.rw-stage) { border-radius:11px; border-color:var(--ui-line); box-shadow:var(--shadow); }
body .rw-workspace { padding:24px; min-height:205px; }
body .rw-workspace:hover { transform:none; box-shadow:0 5px 16px #1f4c4806; }
body .rw-glyph { width:38px; height:38px; margin-bottom:17px; border-radius:10px; font-size:22px; }
body .rw-workspace p { min-height:40px; margin:9px 0 22px; color:#8a9da4; }
body .rw-stage { padding:20px; }
body .rw-stage-number { color:#9aafb2; margin-bottom:14px; }
body .rw-stage p { color:#8b9da4; }
body .rw-project-card { padding:21px; }
body .rw-project-card h3 { margin-top:15px; }
body .rw-project-card p { color:#8a9da4; margin-bottom:24px; }
body .rw-card-top small { color:#a5b0b6; font-size:12px!important; }
body .rw-search input { border-radius:8px; }
body .rw-project-tabs { gap:20px; margin-bottom:24px; }
body .rw-project-tabs a { padding:11px 2px 13px; color:#8a9da4; }
body .rw-project-tabs a.active { color:var(--ui-accent); }
body .rw-details { padding:20px; border:1px solid var(--ui-line); border-radius:10px; background:#fff; }
body .rw-metrics { gap:44px; }
body .rw-metrics strong { color:#426a70; }
body .rw-stage-banner { background:#f1f8f5; border-color:#deece6; }
body .stats-grid { gap:14px; }
body .stat-card { padding:20px; border:1px solid var(--ui-line); border-radius:10px; box-shadow:none; }
body .stat-value { color:#426871; font-weight:600; }
body .table-wrap { border-radius:0 0 11px 11px; }
body th { padding:12px 17px; background:#f8fafb; color:#9aa9b1; border-bottom:1px solid #e9eef1; font-size:12px!important; font-weight:500; }
body td { padding:15px 17px; color:#68818c; border-bottom:1px solid #edf1f3; vertical-align:middle; }
body tbody tr:hover { background:#fafcfc; }
body .cell-name { color:#466670; font-weight:500; }
body .cell-sub { font-size:12px!important; line-height:1.6; }
body .task-management-toolbar { padding:14px 16px; border:1px solid var(--ui-line); border-radius:10px; background:#fff; gap:10px; }
body .task-management-toolbar>.input { min-width:0; }
body .task-select-cell { width:42px; padding-right:4px; }
body .table-footer { padding:14px 18px; border-color:#edf1f3; font-size:12px!important; }
body .progress-track { background:#eef3f4; }
body .progress-fill { background:#43a6a0; }
body .empty { padding:46px 24px; color:#99aab1; }
body .integration-log { border:1px solid #e0e9eb; background:#f7fafb; color:#617d88; border-radius:8px; padding:18px; }
body .result-summary>div { border-radius:9px; border-color:var(--ui-line); padding:16px; }
body :is(.protein-result-frame,.result-structure-frame) { border-color:var(--ui-line); border-radius:10px; }

/* Dialogs, project inputs, AI panels */
body dialog { border:1px solid #e2e9eb; border-radius:15px; box-shadow:0 24px 90px #153d4926; }
body dialog::backdrop { background:#18353f45; backdrop-filter:blur(3px); }
body .dialog-head { padding:21px 24px; border-color:#e9eef0; background:#fff; }
body .dialog-head h2 { font-size:18px!important; }
body .dialog-body { padding:24px; }
body .target-form-hero { border-color:#e1ece9; background:#f6faf8; border-radius:10px; }
body .target-form-kicker { font-size:11px!important; color:#8aa19f; letter-spacing:.04em; }
body .target-optional-details { border-color:var(--ui-line); border-radius:9px; }
body .target-optional-details>summary { background:#fafcfc; }
body .target-file-pick { border-radius:9px; border-color:#d8e4e5; background:#fafcfc; }
body .assistant-context span { background:#eef7f4; color:#6c9c91; }
body .research-qa { border-color:var(--ui-line); }
body .research-qa-composer { border-color:#dce7e7; border-radius:13px; }
body .research-qa-chat-head { border-color:var(--ui-line); background:#fff; }

@media(min-width:1600px) { body main#main { padding:36px 46px 48px; } body .topbar { padding-inline:46px; } }
@media(max-width:1150px) {
  body .sidebar { width:202px; padding-inline:11px; }
  body .workspace { margin-left:202px; width:calc(100% - 202px); max-width:calc(100vw - 202px); }
  body main#main { padding:26px 25px 36px; }
  body .topbar { padding-inline:25px; }
  body #main .tool-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body .plugin-workspace .compute-layout { grid-template-columns:minmax(0,1fr) 245px; gap:16px; }
  body #software-catalog .tool-search { max-width:none; }
  body #software-catalog .tool-count { margin-left:auto; }
}
@media(max-width:980px) {
  body .plugin-workspace .compute-layout { grid-template-columns:minmax(0,1fr); }
  body .plugin-workspace .compute-aside { position:static; }
  body .plugin-workspace .capability-summary { grid-template-columns:1fr 1.4fr; row-gap:14px; }
  body .plugin-workspace .capability-summary>div:nth-child(3) { border-left:0; }
  body #software-catalog .tool-search { flex-basis:220px; }
  body #main .research-switch a { flex-basis:28%; }
  body .page-heading { flex-wrap:wrap; }
}
@media(max-width:760px) {
  html { scrollbar-gutter:auto; }
  body .sidebar { width:218px; }
  body .workspace { width:100%; max-width:100vw; margin-left:0; }
  body main#main { padding:22px 17px 32px; }
  body .topbar { height:58px; padding-inline:17px; }
  body .topbar-right { gap:7px; }
  body .account-button { padding-left:8px; }
  body .account-button>span:last-child { display:none; }
  body .breadcrumb { max-width:calc(100vw - 180px); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  body #main .research-switch { margin-bottom:20px; }
  body #main .research-switch a { padding:8px; gap:5px; }
  body #main .research-switch a strong { font-size:12px!important; }
  body #main .research-switch .research-switch-icon { font-size:16px; width:17px; }
  body .page-heading { gap:14px; margin-bottom:20px; }
  body .page-heading-actions { width:100%; justify-content:flex-start; margin:0; }
  body #main .tool-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  body #main .software-catalog-card { min-height:245px; padding:16px!important; }
  body #software-catalog .tool-filterbar { padding:12px; }
  body #software-catalog .tool-filterbar>.scope-switch { flex:1; }
  body #software-catalog #software-category { min-width:115px; width:130px; }
  body #software-catalog .tool-search { flex:1 1 100%; order:3; width:100%; }
  body #software-catalog .tool-count { margin:0; font-size:11px!important; }
  body .plugin-workspace .plugin-title { gap:10px; align-items:flex-start; }
  body .plugin-title>.chips { max-width:140px; }
  body .plugin-workspace .capability-summary { padding:13px 0; }
  body .plugin-workspace .capability-summary>div { padding-inline:13px; }
  body .panel-header { padding:16px 18px; }
  body .panel-body { padding:18px; }
  body .plugin-submit-actions>.text-link { flex-basis:100%; text-align:left; }
  body .task-management-toolbar { padding:12px; }
  body .site-footer { padding:18px; }
}
@media(max-width:520px) {
  body #main .tool-grid { grid-template-columns:minmax(0,1fr); }
  body #main .software-catalog-card { min-height:220px; }
  body .plugin-title { flex-wrap:wrap; }
  body .plugin-title>.chips { margin-left:0; max-width:none; }
  body .page-heading h1 { font-size:23px!important; }
  body .rw-metrics { gap:24px; flex-wrap:wrap; }
}
@media(prefers-reduced-motion:reduce) { body *,body *::before,body *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
body #software-catalog .tool-filterbar>.scope-switch { width:auto; max-width:100%; flex:0 0 auto; }
body #main .software-catalog-category { font-size:11px; color:#9aadb2; margin-top:-6px; }
body #main .software-flat-grid { margin:0; }
/* Keep explanatory copy readable and remove legacy card sizing/decorations. */
body #main :is(.software-catalog-card>p,.software-catalog-category,.software-shared-context,.software-io dd,.software-io dt,.plugin-title p,.capability-summary span,.capability-summary strong,.field small,.plugin-field small,.rw-workspace p,.rw-stage p,.rw-project-card p) { color:#647780; }
body .plugin-workspace .capability-summary>div { min-height:0; }
body .plugin-workspace .plugin-title::before,body .plugin-workspace .plugin-title::after { content:none; }
body .plugin-workspace .plugin-tabs a { padding:10px 1px 12px; border-radius:0; min-height:0; background:transparent; box-shadow:none; }
body .plugin-workspace .plugin-tabs a.active { background:transparent; box-shadow:none; border-bottom:2px solid var(--ui-accent); }
body .rw-glyph .ui-icon { width:23px; height:23px; }
body #main .research-switch .ui-icon { width:18px; height:18px; }
body .empty .btn { display:flex; width:fit-content; margin:15px auto 0; }
body .workflow-generator .empty { padding:30px 20px; }
body #main .workflow-generator #antibody-plan-form.unified-plan-form { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); align-items:start; gap:20px; width:100%; margin:0; }
body #antibody-plan-form.unified-plan-form>.field { margin:0; }
body #antibody-plan-form.unified-plan-form>.form-actions { grid-column:1/-1; width:100%; border:0; margin:0; padding:0; justify-self:stretch; justify-content:flex-end; }
body .task-management-toolbar { display:flex; flex-wrap:wrap; align-items:center; }
body .task-management-toolbar>#task-view { flex:0 1 200px; }
body .task-management-toolbar>#task-selection-count { margin-right:auto; background:transparent; color:#83989f; padding-inline:4px; }
body .task-management-toolbar>[data-bulk-task],body .task-management-toolbar>[data-empty-trash] { width:auto; }
@media(max-width:760px) {
 body #main .workflow-generator #antibody-plan-form.unified-plan-form { grid-template-columns:minmax(0,1fr); }
 body #antibody-plan-form.unified-plan-form>.form-actions { grid-column:1; }
 body .task-management-toolbar>#task-view { flex:1 1 55%; }
 body .task-management-toolbar>#task-selection-count { margin-left:auto; margin-right:0; }
}
body .task-center-panel .task-toolbar-stack { padding:18px 20px; }
body .task-center-panel .task-management-toolbar { padding:0 0 14px; margin:0 0 14px; border:0; border-bottom:1px solid #edf1f3; border-radius:0; background:transparent; }
body .task-center-panel .task-toolbar-stack>.toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:0; }
body .task-center-panel .task-toolbar-stack>.toolbar>select { flex:1 1 140px; min-width:130px; width:auto; }
body .task-center-panel .task-toolbar-stack>.toolbar>input { flex:1.5 1 200px; width:auto; min-width:150px; }
body .task-center-panel #job-visible-count { flex:0 0 auto; margin-left:auto; font-size:12px!important; }
body .task-center-panel .cell-sub { font-weight:400; color:#8c9fa7; }
@media(max-width:760px) { body .task-center-panel .task-toolbar-stack { padding:15px; } }
body .plugin-workspace .plugin-tabs :is(a,button) { padding:10px 1px 12px!important; border-radius:0!important; border:0!important; border-bottom:2px solid transparent!important; background:transparent!important; color:#758b94!important; box-shadow:none; }
body .plugin-workspace .plugin-tabs :is(a,button).active { background:transparent!important; color:var(--ui-accent)!important; border-bottom-color:var(--ui-accent)!important; box-shadow:none; }
body .dialog-head .target-form-kicker { display:none; }
body #main .task-center-panel .task-toolbar-stack>.toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
body #main .task-center-panel .task-toolbar-stack>.toolbar>select { flex:0 1 150px; min-width:120px; width:auto; }
body #main .task-center-panel .task-toolbar-stack>.toolbar>input { flex:1 1 190px; min-width:160px; width:auto; }
body #main .task-center-panel #job-visible-count { width:auto; min-height:24px; margin-left:auto; }

.modal-sequence{max-width:440px;min-width:220px;overflow-wrap:anywhere;font-family:ui-monospace,monospace;font-size:.875rem;line-height:1.65}.rw-inline>select#modal-import-job{flex:1;min-width:220px}.rw-candidates th{white-space:nowrap}

/* Keep daily work in view; reveal direction lists and secondary actions on demand. */
body .sidebar #navigation { gap:6px; }
body .sidebar .nav-group { min-width:0; }
body .sidebar .nav-group>summary {
  display:flex; align-items:center; gap:10px; min-height:40px;
  padding:8px 12px; border-radius:8px; color:#677c83; cursor:pointer;
  list-style:none; user-select:none;
}
body .sidebar .nav-group>summary::-webkit-details-marker { display:none; }
body .sidebar .nav-group>summary::after {
  content:'›'; margin-left:auto; font-size:18px; line-height:1; color:#86999f;
  transition:transform .16s;
}
body .sidebar .nav-group[open]>summary::after { transform:rotate(90deg); }
body .sidebar .nav-group>summary:hover { background:#f5f8f9; color:#264b52; }
body .sidebar .nav-group.current>summary { color:var(--ui-accent); }
body .sidebar .nav-group-links {
  display:grid; gap:3px; margin:6px 0 8px 21px; padding-left:9px;
  border-left:1px solid var(--ui-line);
}
body .sidebar .nav-group-links a { padding-inline:9px; }
body .rw-projects-home .rw-section { margin-top:0; }
body .rw-project-toolbar {
  display:flex; align-items:center; justify-content:space-between;
  gap:12px; margin-bottom:22px;
}
body .rw-scope-filter select { width:200px; }
body .rw-project-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
body .rw-project-card { padding:20px; }
body .rw-project-card h3 { margin-top:12px; }
body .rw-project-card p { margin:6px 0 16px; }
body .rw-project-menu { position:relative; margin-left:auto; }
body .rw-project-menu>summary {
  cursor:pointer; list-style:none; padding:5px 9px; border-radius:6px;
  color:#71848a; font-size:13px!important;
}
body .rw-project-menu>summary::-webkit-details-marker { display:none; }
body .rw-project-menu>summary:hover { background:#f0f5f5; color:var(--ui-accent); }
body .rw-project-menu>div {
  position:absolute; right:0; top:100%; z-index:5; min-width:132px;
  padding:5px; border:1px solid var(--ui-line); border-radius:9px;
  background:#fff; box-shadow:0 8px 25px #243b4314;
}
body .rw-project-menu button { display:flex; width:100%; padding:8px 10px; text-align:left; }
body .rw-project-menu button:hover { background:#f5f8f9; border-radius:5px; }
body .rw-workspace-links { display:flex; flex-wrap:wrap; gap:10px 24px; margin:-8px 0 26px; }
body .rw-workspace-links .text-link { color:#667e85; }
body .rw-workspace-links .text-link:hover { color:var(--ui-accent); }
body .rw-project-count { color:#819399; font-size:13px; font-weight:400; margin-left:5px; }
body .rw-all-projects { margin-top:18px; }
body .rw-path-disclosure { border-top:1px solid var(--ui-line); margin-top:32px; padding-top:16px; }
body .rw-path-disclosure>summary { cursor:pointer; color:#647d84; padding:8px 0; }
body .rw-path-disclosure>.rw-stages { margin-top:18px; }
body .research-context { display:flex; align-items:center; gap:12px; margin:0 0 22px; }
body .research-context>label { color:#71848a; white-space:nowrap; }
body .research-context>select { width:210px; }
body #main .software-catalog-card { min-height:185px; gap:10px; }
body #main .software-catalog-card .tool-open { padding-top:6px; font-size:13px; }
body .config-layout { display:flex; flex-direction:column; gap:16px; max-width:920px; }
body .config-layout>.config-context { margin:0; }
body .config-context .compute-aside { position:static; border:0; box-shadow:none; margin:0; }
body .config-project { margin:0 0 18px; }
body .config-project>.plugin-field { margin:16px; }
body .plugin-workspace>.software-details { max-width:920px; margin:18px 0 0; border:0; border-top:1px solid var(--ui-line); border-radius:0; background:transparent; }
body .plugin-workspace>.software-details>summary { padding:14px 0; background:transparent; }
body .software-details>.capability-summary { margin:16px; }
body .software-details>.software-origin { margin:16px; }
body .config-layout .mode-choice { margin-bottom:18px; }
body .config-layout [data-optional-inputs] { margin-bottom:18px; }
body .config-layout [data-primary-inputs] { margin-top:0; }
body .config-layout .form-actions { justify-content:flex-end; }
body #refresh:disabled { opacity:.55; cursor:progress; }
body #refresh[aria-busy="true"] { animation:refresh-turn .9s linear infinite; }
@keyframes refresh-turn { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion:reduce) { body #refresh[aria-busy="true"] { animation:none; } }
body #main[aria-busy=true]>.loading-state { padding:50px 20px; }
@media(max-width:700px) {
  body .rw-project-grid { grid-template-columns:minmax(0,1fr); }
  body .rw-project-toolbar { align-items:stretch; flex-direction:column; }
  body .rw-scope-filter select,body .rw-project-toolbar .rw-search input { width:100%; }
  body .rw-workspace-links { gap:8px 20px; }
  body .rw-focused-workspace .page-heading-actions { margin-left:0; justify-content:flex-start; }
  body .research-context>select { width:auto; flex:1; min-width:0; }
}
