.snap-cohort-activity {
    background: var(--snap-cohort-surface);
    border: 1px solid var(--snap-cohort-border);
    border-radius: 14px;
    box-sizing: border-box;
    margin: 24px 0;
    padding: clamp(20px, 4vw, 40px);
}

.snap-cohort-activity--flat {
    background: transparent;
    border-width: 0;
    padding-inline: 0;
}

.snap-cohort-activity--compact {
    border-radius: 10px;
    padding: clamp(16px, 2.5vw, 24px);
}

.snap-cohort-activity--compact .snap-cohort-question {
    padding-block: 16px;
}

.snap-cohort-activity__header h2,
.snap-cohort-activity__instructions h3,
.snap-cohort-activity__result h3 {
    margin-top: 0;
}

.snap-cohort-eyebrow {
    color: var(--snap-cohort-accent-dark);
    font-size: .8rem;
    font-weight: 750;
    letter-spacing: .08em;
    margin-bottom: 6px;
    text-transform: uppercase;
}

.snap-cohort-activity__instructions,
.snap-cohort-activity__result {
    background: #f5f6fb;
    border-left: 4px solid var(--snap-cohort-accent);
    margin: 24px 0;
    padding: 16px 18px;
}

.snap-cohort-question {
    border: 0;
    border-top: 1px solid var(--snap-cohort-border);
    margin: 0;
    padding: 24px 0;
}

.snap-cohort-question legend {
    font-weight: 700;
    padding: 0 0 12px;
}

.snap-cohort-question input[type="text"],
.snap-cohort-question input[type="url"],
.snap-cohort-question textarea {
    border: 1px solid var(--snap-cohort-border);
    border-radius: 8px;
    box-sizing: border-box;
    display: block;
    margin: 8px 0 16px;
    max-width: 760px;
    min-height: 44px;
    padding: 10px 12px;
    width: 100%;
}

.snap-cohort-option {
    align-items: flex-start;
    display: flex;
    gap: 10px;
    margin: 10px 0;
}

.snap-cohort-option input {
    flex: 0 0 auto;
    margin-top: .25em;
}

.snap-cohort-activity__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 20px;
}

.snap-cohort-activity__buttons--center { justify-content: center; }
.snap-cohort-activity__buttons--end { justify-content: flex-end; }
.snap-cohort-activity__buttons--stretch .snap-cohort-button { flex: 1 1 12rem; }

.snap-cohort-activity__live {
    font-weight: 650;
    min-height: 1.5em;
}

@media (max-width: 600px) {
    .snap-cohort-activity__buttons .snap-cohort-button {
        width: 100%;
    }
}
