/* RNA-seq V2: a flat default path with detail revealed only when requested. */
body.analyzer #RNAseq_uploadForm > div,
body.analyzer #RNAseq_uploadForm > section,
body.analyzer #RNAseq_preprocessingSettings,
body.analyzer #RNAseq_advancedSettings {
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

body.analyzer #RNAseq_uploadForm section,
body.analyzer #rnaseq_public_panel section {
    display: grid;
    grid-template-columns: 210px minmax(0, 1fr);
    align-items: center;
    gap: 8px 16px;
    margin: 0 0 10px;
}

body.analyzer #RNAseq_uploadForm section > label:first-child,
body.analyzer #rnaseq_public_panel section > label:first-child { width: auto; margin: 0; }

body.analyzer #RNAseq_uploadForm .uniform-width,
body.analyzer #rnaseq_public_panel .uniform-width { width: 100%; max-width: none; }

body.analyzer #RNAseq_preprocessingSettings {
    margin: 12px 0 16px;
    padding: 13px 0 3px;
    border-top: 1px solid #dce5ec;
    border-bottom: 1px solid #dce5ec;
}

.rnaseq-preprocessing-note {
    grid-column: 2;
    margin: -3px 0 4px;
    color: #596b79;
    font-size: .84rem;
    line-height: 1.45;
}

body.analyzer .RNAseq_sample {
    margin: 0;
    padding: 12px 0 4px;
    border: 0;
    border-top: 1px solid #dce5ec;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

body.analyzer .RNAseq_sample h4 { margin: 0 0 10px; color: #213546; }
body.analyzer .RNAseq_sample .template-download { margin: 0 0 10px; padding: 0; border: 0; background: transparent; color: #596b79; font-size: .84rem; }
body.analyzer .RNAseq_sample .template-download hr { display: none; }
body.analyzer .RNAseq-manual-adapter-field[hidden] { display: none !important; }

body.analyzer #DESeq2Groups { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; }
body.analyzer #controlGroup,
body.analyzer #treatmentGroup { min-width: 0; }

.rnaseq-advanced-settings {
    margin: 14px 0;
    padding: 10px 0;
    border-top: 1px solid #dce5ec !important;
    border-bottom: 1px solid #dce5ec !important;
}
.rnaseq-advanced-settings > summary { cursor: pointer; color: #1769aa; font-weight: 700; }
.rnaseq-advanced-settings[open] > summary { margin-bottom: 12px; }
.rnaseq-check-option { display: inline-flex; align-items: center; gap: 7px; }

.rnaseq-public-summary,
.rnaseq-public-note { color: #596b79; }
.rnaseq-public-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    justify-content: space-between;
    gap: 10px 18px;
    margin: 12px 0 10px;
}
.rnaseq-public-toolbar-group { display: grid; gap: 4px; min-width: 260px; }
.rnaseq-public-toolbar-group label { color: #445b6d; font-size: .82rem; font-weight: 700; }
.rnaseq-public-toolbar-group select { width: 100%; }
.rnaseq-public-select-visible { width: auto; margin: 0; }
.rnaseq-public-table-wrap { width: 100%; overflow-x: auto; border-top: 1px solid #dce5ec; border-bottom: 1px solid #dce5ec; }
.rnaseq-public-sample-table { width: 100%; min-width: 920px; border-collapse: collapse; font-size: .86rem; }
.rnaseq-public-sample-table th,
.rnaseq-public-sample-table td { padding: 10px 8px; border: 0; border-bottom: 1px solid #e7edf2; background: transparent; text-align: left; vertical-align: top; }
.rnaseq-public-sample-table th { color: #486071; cursor: default; font-size: .75rem; letter-spacing: .02em; text-transform: uppercase; }
.rnaseq-public-sample-table tbody tr { background: transparent; }
body.analyzer .rnaseq-public-sample-table tr.rnaseq-public-sample {
    display: table-row;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}
.rnaseq-public-sample-table tbody tr:last-child td { border-bottom: 0; }
body.analyzer .rnaseq-public-sample-table tr.is-selected { background: #f3f8fc; }
.rnaseq-public-sample-table strong,
.rnaseq-public-sample-table small { display: block; }
.rnaseq-public-sample-table small { margin-top: 3px; color: #687c8b; line-height: 1.35; }
.rnaseq-public-sample-table .rnaseq-public-blocker { max-width: 290px; color: #9b332c; }
.rnaseq-public-sample-table select { min-width: 112px; }
.rnaseq-public-replicate { width: 72px; min-width: 72px; }
.rnaseq-public-group-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.rnaseq-public-group-fields label { display: grid; gap: 4px; color: #445b6d; font-size: .82rem; font-weight: 700; }
.rnaseq-public-group-fields input { width: 100%; }
.rnaseq-protocol-autofill {
    margin: 12px 0 16px;
    padding: 12px 14px;
    border: 1px solid #cfe0ec;
    border-radius: 10px;
    background: #f5f9fc;
    color: #334f62;
    line-height: 1.5;
}
.rnaseq-protocol-autofill:empty { display: none; }
.rnaseq-protocol-autofill strong { color: #173f5a; }
.rnaseq-protocol-autofill ul { margin: 7px 0 0 18px; padding: 0; }
.rnaseq-protocol-autofill a { overflow-wrap: anywhere; }
.rnaseq-protocol-autofill details { margin-top: 12px; }
.rnaseq-protocol-autofill summary { cursor: pointer; color: #365c73; font-size: .9em; }
.rnaseq-protocol-autofill details strong::before { display: none !important; }
.rnaseq-public-next-step { color: #365c73; font-size: .92em; line-height: 1.5; margin-top: 10px; }
#rnaseq_public_submit:disabled { opacity: .6; cursor: not-allowed; }
.rnaseq-protocol-autofill.is-warning { border-color: #e6d6aa; background: #fffaf0; }
.rnaseq-protocol-autofill.is-success { border-color: #b8dcc9; background: #f2fbf6; }
.rnaseq-protocol-autofill.is-loading strong::before {
    content: '';
    display: inline-block;
    width: 0.8em;
    height: 0.8em;
    margin-right: 0.55em;
    border: 2px solid #9db8c8;
    border-top-color: #176b91;
    border-radius: 50%;
    vertical-align: -0.08em;
    animation: rnaseq-protocol-spin 0.8s linear infinite;
}
@keyframes rnaseq-protocol-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
    .rnaseq-protocol-autofill.is-loading strong::before { animation: none; }
}
body.analyzer #rnaseq_public_settings > label {
    display: flex; align-items: flex-start; gap: 8px;
    float: none; width: auto; margin: 14px 0; line-height: 1.5;
}
body.analyzer #rnaseq_public_settings > label input[type="checkbox"] {
    flex: 0 0 auto; float: none; width: auto; margin: 4px 0 0;
}
body.analyzer #rnaseq_public_submit { display: block; margin: 12px 0; }
body.analyzer .rnaseq-public-selection-budget,
body.analyzer .rnaseq-public-submit-feedback {
    margin: 10px 0;
    padding: 10px 12px;
    border-radius: 8px;
    background: #eef6ff;
    color: #24415e;
}
body.analyzer .rnaseq-public-selection-budget:empty,
body.analyzer .rnaseq-public-submit-feedback:empty { display: none; }
body.analyzer .rnaseq-public-selection-budget.is-error,
body.analyzer .rnaseq-public-submit-feedback.is-error {
    background: #fff1f1;
    color: #982c2c;
}
body.analyzer .rnaseq-public-submit-feedback.is-success {
    background: #edf9f0;
    color: #246638;
}
body.analyzer .rnaseq-public-sample-table tr[hidden],
body.analyzer #rnaseq_public_group_names[hidden],
body.analyzer #rnaseq_public_confirmation_panel[hidden] { display: none !important; }
body.analyzer #rnaseq_public_confirmation_panel { margin-top: 18px; }

@media (max-width: 979px) {
    body.analyzer #RNAseq_uploadForm section,
    body.analyzer #rnaseq_public_panel section { grid-template-columns: minmax(0, 1fr); }
    .rnaseq-preprocessing-note { grid-column: 1; }
    body.analyzer #DESeq2Groups { grid-template-columns: minmax(0, 1fr); }
    .rnaseq-public-group-fields { grid-template-columns: minmax(0, 1fr); }
}
