/* One public-entry layout for all three assays. No assay-specific ID selectors. */
/* Shared workspace: the CLASH two-column geometry applies to every assay,
 * in both public and upload modes. Keep the right column for pipeline figures. */
body.analyzer #formAndImageContainer:not(:where(.analyzer-step-hidden)):has(.analyzer-sequencing-workflow.active) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
}
body.analyzer .analyzer-sequencing-workflow,
body.analyzer .analyzer-sequencing-form {
    width: 100%;
    min-width: 0;
    max-width: none;
}
@media (max-width: 1319px) {
    body.analyzer #formAndImageContainer:has(.analyzer-sequencing-workflow.active) {
        grid-template-columns: minmax(0, 1fr);
    }
    body.analyzer #formAndImageContainer:has(.analyzer-sequencing-workflow.active) #formSectionContainer {
        border-right: 0;
    }
    body.analyzer #formAndImageContainer .analyzer-sequencing-workflow.active {
        padding-right: 0;
    }
}

body.analyzer .analyzer-public-entry {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    container-type: inline-size;
}

body.analyzer .analyzer-public-entry-guidance {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    margin: 0 0 10px;
    color: #1769aa;
    font-size: 11px;
    font-weight: 700;
}

body.analyzer .analyzer-public-entry-guidance strong {
    margin-right: 3px;
    font-size: inherit;
    letter-spacing: .025em;
    text-transform: uppercase;
}

body.analyzer .analyzer-public-entry-row {
    display: grid;
    grid-template-columns: 165px minmax(0, 1fr) 157px;
    gap: 10px;
    align-items: start;
}

body.analyzer .analyzer-public-entry-row > label {
    width: auto;
    margin: 0;
    padding-top: 5px;
    float: none;
    font-size: 14px;
    font-weight: 400;
}

body.analyzer .analyzer-public-entry-row > textarea {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: 58px;
    margin: 0;
    padding: 10px 14px;
    box-sizing: border-box;
    border: 1px solid #c9ddf1;
    border-radius: 8px;
    background: #fff;
    font: inherit;
    font-size: 14px;
    line-height: 1.45;
    color: #1e293b;
    resize: vertical;
}

body.analyzer .analyzer-public-entry-row > button {
    width: 100%;
    min-height: 58px;
    margin: 0;
    padding: 12px 16px;
    border: 0;
    border-radius: 9px;
    background: #1769aa;
    color: #fff;
    cursor: pointer;
    font: inherit;
    font-size: 13.5px;
    font-weight: 700;
    box-shadow: 0 4px 12px rgba(23, 105, 170, .16);
}

body.analyzer .analyzer-public-entry-row > button:hover { background: #0f5f9d; }
body.analyzer .analyzer-public-entry-row > button:disabled {
    background: #8da6ba;
    box-shadow: none;
    cursor: wait;
}
body.analyzer .analyzer-public-entry-row > textarea:focus,
body.analyzer .analyzer-public-entry-row > button:focus-visible {
    outline: 3px solid rgba(0, 33, 165, .12);
    outline-offset: 2px;
    border-color: #1769aa;
}

body.analyzer .analyzer-public-entry-help,
body.analyzer .analyzer-public-entry-summary {
    margin: 12px 0 0;
    color: #536d87;
    font-size: 12px;
    line-height: 1.55;
    overflow-wrap: anywhere;
}
body.analyzer .analyzer-public-entry-summary { color: #1769aa; font-weight: 600; }
body.analyzer .analyzer-public-entry-summary.is-warning { color: #9b332c; }
body.analyzer .analyzer-public-entry-summary[hidden] { display: none; }

@container (max-width: 700px) {
    body.analyzer .analyzer-public-entry-row { grid-template-columns: minmax(0, 1fr) 157px; }
    body.analyzer .analyzer-public-entry-row > label { grid-column: 1 / -1; padding-top: 0; }
}
@container (max-width: 440px) {
    body.analyzer .analyzer-public-entry-row { grid-template-columns: minmax(0, 1fr); }
    body.analyzer .analyzer-public-entry-row > button { min-height: 46px; }
}
