/* Shared reference: the gap above Allgemeines in the ZLW curriculum model. */
@media screen {
    body.has-app-shell {
        --sch-rule-heading-gap: 1.5rem;
    }

    /* Keep existing ZLW sections connected to the same portal-wide value. */
    body.has-app-shell.zlw-viewport {
        --zlw-rule-heading-gap: var(--sch-rule-heading-gap);
    }

    .has-app-shell:is(.teacher-timetable-area, .is-kor-area) .site-content
    :is(.teacher-panel, .subject-section, .info-panel):has(> :is(.teacher-panel-heading, .section-heading, h2)) {
        padding-top: var(--sch-rule-heading-gap);
    }

    .has-app-shell:is(.teacher-timetable-area, .is-kor-area) .site-content
    :is(.teacher-panel, .subject-section, .info-panel) > :is(.teacher-panel-heading, .section-heading, h2) {
        margin-top: 0;
        padding-top: 0;
    }

    .has-app-shell:is(.teacher-timetable-area, .is-kor-area) .site-content
    :is(.teacher-panel-heading, .section-heading) {
        align-items: flex-start;
    }

    .has-app-shell:is(.teacher-timetable-area, .is-kor-area) .site-content
    :is(.teacher-panel-heading, .section-heading) > :is(div, h2, .eyebrow),
    .has-app-shell:is(.teacher-timetable-area, .is-kor-area) .site-content
    :is(.teacher-panel-heading, .section-heading) > div > :is(h2, .eyebrow) {
        margin-top: 0;
    }

    .teacher-timetable-area .site-content :is(.dictation-header, .dictation-analysis-header) {
        min-height: 0;
        padding-top: var(--sch-rule-heading-gap);
        align-items: flex-start;
    }

    .teacher-timetable-area .site-content .timetable-additional {
        padding-top: var(--sch-rule-heading-gap);
    }

    .is-kor-area .site-content :is(.kor-task-sheet-panel, .kor-assessment-panel, .kor-solution-variant) {
        padding-top: var(--sch-rule-heading-gap);
    }

    .is-kor-area .site-content :is(.kor-panel-heading, .kor-assessment-heading) {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        min-height: 0;
        margin-top: 0;
        padding-top: 0;
    }

    /* Keep the title together so action buttons cannot add a row above it. */
    .is-kor-area .site-content .kor-task-sheet-heading-copy {
        display: flex;
        flex: 1 1 16rem;
        flex-direction: column;
        min-width: 0;
    }

    .is-kor-area .site-content :is(.kor-panel-heading, .kor-assessment-heading) :is(h2, .eyebrow),
    .is-kor-area .site-content .kor-solution-variant > h3,
    .teacher-timetable-area .site-content .timetable-additional > h3 {
        margin-top: 0;
    }

    .is-kor-area .site-content .kor-control-notes-heading {
        padding-top: var(--sch-rule-heading-gap);
    }
}
