/* CKEditor 5 FO output. Keep this boundary narrow: rich content only. */
.ck5-legacy-article {
    overflow-wrap: anywhere;
}
.ck5-legacy-article img {
    display: inline-block;
    max-width: 100%;
    height: auto;
}
.ck5-legacy-article figure {
    max-width: 100%;
    margin: 1rem 0;
}
.ck5-legacy-article figure img {
    display: block;
}
.ck5-legacy-article figcaption {
    margin-top: .5rem;
    color: #666;
    text-align: center;
    overflow-wrap: anywhere;
}
.ck5-legacy-article table {
    width: 100%;
    max-width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}
.ck5-legacy-article th,
.ck5-legacy-article td {
    padding: .6rem .75rem;
    border: 1px solid #d9dfe5;
    vertical-align: top;
}
.ck5-legacy-article th {
    font-weight: 700;
    background: #f5f8fb;
}

.content-wrap .content-text figure.image,
.lt-vdo-note-rich-content.content-text figure.image,
.ck5-legacy-article figure.image {
    display: block;
    box-sizing: border-box;
    max-width: 100%;
    margin: 1rem auto;
}

.content-wrap .content-text figure.image img,
.lt-vdo-note-rich-content.content-text figure.image img,
.ck5-legacy-article figure.image img {
    display: block;
    box-sizing: border-box;
    width: auto;
    max-width: 100% !important;
    height: auto;
}

/* Presets describe the figure's layout width; intrinsic images must not upscale. */
.content-wrap .content-text figure.image.rh-w-25,
.lt-vdo-note-rich-content.content-text figure.image.rh-w-25,
.ck5-legacy-article figure.image.rh-w-25 { width: 25%; }
.content-wrap .content-text figure.image.rh-w-50,
.lt-vdo-note-rich-content.content-text figure.image.rh-w-50,
.ck5-legacy-article figure.image.rh-w-50 { width: 50%; }
.content-wrap .content-text figure.image.rh-w-75,
.lt-vdo-note-rich-content.content-text figure.image.rh-w-75,
.ck5-legacy-article figure.image.rh-w-75 { width: 75%; }
.content-wrap .content-text figure.image.rh-w-100,
.lt-vdo-note-rich-content.content-text figure.image.rh-w-100,
.ck5-legacy-article figure.image.rh-w-100 { width: 100%; }

.content-wrap .content-text figure.image.rh-image-left,
.lt-vdo-note-rich-content.content-text figure.image.rh-image-left,
.ck5-legacy-article figure.image.rh-image-left {
    margin-left: 0;
    margin-right: auto;
}
.content-wrap .content-text figure.image.rh-image-center,
.lt-vdo-note-rich-content.content-text figure.image.rh-image-center,
.ck5-legacy-article figure.image.rh-image-center {
    margin-left: auto;
    margin-right: auto;
}
.content-wrap .content-text figure.image.rh-image-right,
.lt-vdo-note-rich-content.content-text figure.image.rh-image-right,
.ck5-legacy-article figure.image.rh-image-right {
    margin-left: auto;
    margin-right: 0;
}

/* V2 inline images retain their percent width and soft line breaks. */
.content-wrap .content-text img.image_resized,
.lt-vdo-note-rich-content.content-text img.image_resized,
.ck5-legacy-article img.image_resized {
    display: inline-block;
    max-width: 100%;
    height: auto;
    margin: 0;
    vertical-align: bottom;
}

/* V2 stores the responsive figure width in the bounded inline style. */
.content-wrap .content-text figure.image.image_resized,
.lt-vdo-note-rich-content.content-text figure.image.image_resized,
.ck5-legacy-article figure.image.image_resized {
    max-width: 100%;
}
.content-wrap .content-text figure.image.image_resized img,
.lt-vdo-note-rich-content.content-text figure.image.image_resized img,
.ck5-legacy-article figure.image.image_resized img {
    width: 100%;
    max-width: 100%;
    height: auto;
}
.content-wrap .content-text figure.image.image_resized.rh-image-left,
.lt-vdo-note-rich-content.content-text figure.image.image_resized.rh-image-left,
.ck5-legacy-article figure.image.image_resized.rh-image-left {
    margin-left: 0;
    margin-right: auto;
}
.content-wrap .content-text figure.image.image_resized.rh-image-center,
.lt-vdo-note-rich-content.content-text figure.image.image_resized.rh-image-center,
.ck5-legacy-article figure.image.image_resized.rh-image-center {
    margin-left: auto;
    margin-right: auto;
}
.content-wrap .content-text figure.image.image_resized.rh-image-right,
.lt-vdo-note-rich-content.content-text figure.image.image_resized.rh-image-right,
.ck5-legacy-article figure.image.image_resized.rh-image-right {
    margin-left: auto;
    margin-right: 0;
}

/* Align intrinsic-size images inside the preset-width figure. */
.content-wrap .content-text figure.image.rh-image-left img,
.lt-vdo-note-rich-content.content-text figure.image.rh-image-left img,
.ck5-legacy-article figure.image.rh-image-left img {
    margin-left: 0;
    margin-right: auto;
}
.content-wrap .content-text figure.image.rh-image-center img,
.lt-vdo-note-rich-content.content-text figure.image.rh-image-center img,
.ck5-legacy-article figure.image.rh-image-center img {
    margin-left: auto;
    margin-right: auto;
}
.content-wrap .content-text figure.image.rh-image-right img,
.lt-vdo-note-rich-content.content-text figure.image.rh-image-right img,
.ck5-legacy-article figure.image.rh-image-right img {
    margin-left: auto;
    margin-right: 0;
}

.content-wrap .content-text figure.image figcaption,
.lt-vdo-note-rich-content.content-text figure.image figcaption,
.ck5-legacy-article figure.image figcaption {
    box-sizing: border-box;
    width: 100%;
    padding: .5rem 0 0;
    color: #666;
    font-size: .9em;
    line-height: 1.5;
    text-align: center;
    overflow-wrap: anywhere;
}

/* CKEditor table downcast is figure.table; keep wide tables scrollable, not the page. */
.content-wrap .content-text figure.table,
.lt-vdo-note-rich-content.content-text figure.table,
.ck5-legacy-article figure.table {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 1.5rem 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.content-wrap .content-text figure.table table,
.lt-vdo-note-rich-content.content-text figure.table table,
.ck5-legacy-article figure.table table {
    width: 100%;
    min-width: 28rem;
    border-collapse: collapse;
    border-spacing: 0;
}
.content-wrap .content-text figure.table th,
.content-wrap .content-text figure.table td,
.lt-vdo-note-rich-content.content-text figure.table th,
.lt-vdo-note-rich-content.content-text figure.table td,
.ck5-legacy-article figure.table th,
.ck5-legacy-article figure.table td {
    padding: .6rem .75rem;
    border: 1px solid #d9dfe5;
    text-align: left;
    vertical-align: top;
    line-height: 1.5;
}
.content-wrap .content-text figure.table th,
.lt-vdo-note-rich-content.content-text figure.table th,
.ck5-legacy-article figure.table th {
    font-weight: 700;
    background: #f5f8fb;
}
.content-wrap .content-text figure.table figcaption,
.lt-vdo-note-rich-content.content-text figure.table figcaption,
.ck5-legacy-article figure.table figcaption {
    padding: 0 0 .5rem;
    font-weight: 700;
    text-align: left;
}

/* CK5's finite indentBlock classes use the same 40px steps in BO and FO. */
.content-wrap .content-text .indent-1,
.lt-vdo-note-rich-content.content-text .indent-1,
.ck5-legacy-article .indent-1 { margin-left: 40px; }
.content-wrap .content-text .indent-2,
.lt-vdo-note-rich-content.content-text .indent-2,
.ck5-legacy-article .indent-2 { margin-left: 80px; }
.content-wrap .content-text .indent-3,
.lt-vdo-note-rich-content.content-text .indent-3,
.ck5-legacy-article .indent-3 { margin-left: 120px; }
.content-wrap .content-text .indent-4,
.lt-vdo-note-rich-content.content-text .indent-4,
.ck5-legacy-article .indent-4 { margin-left: 160px; }
.content-wrap .content-text .indent-5,
.lt-vdo-note-rich-content.content-text .indent-5,
.ck5-legacy-article .indent-5 { margin-left: 200px; }

/* Preserve the deployed CK4 font identifiers used by CK5 inline styles. */
.content-wrap .content-text [style*="NanumSquare"],
.lt-vdo-note-rich-content.content-text [style*="NanumSquare"],
.content-wrap .content-text [style*="Ownglyph_StudyHard-Rg"],
.lt-vdo-note-rich-content.content-text [style*="Ownglyph_StudyHard-Rg"],
.content-wrap .content-text [style*="Gyeonggi_Title_Medium"],
.lt-vdo-note-rich-content.content-text [style*="Gyeonggi_Title_Medium"] {
    font-synthesis: none;
}

@media screen and (max-width: 768px) {
    .content-wrap .content-text figure.image,
    .lt-vdo-note-rich-content.content-text figure.image {
        margin-top: 1rem;
        margin-bottom: 1rem;
    }
}

@media print {
    .content-wrap .content-text figure.image,
    .content-wrap .content-text figure.table,
    .lt-vdo-note-rich-content.content-text figure.image,
    .lt-vdo-note-rich-content.content-text figure.table {
        break-inside: avoid;
        page-break-inside: avoid;
        max-width: 100%;
    }

    .content-wrap .content-text figure.image img,
    .lt-vdo-note-rich-content.content-text figure.image img {
        max-width: 100% !important;
    }

    .content-wrap .content-text figure.table,
    .lt-vdo-note-rich-content.content-text figure.table {
        overflow: visible;
    }
    .content-wrap .content-text figure.table table,
    .lt-vdo-note-rich-content.content-text figure.table table {
        min-width: 0;
    }
}

/* Persistent collage v1/v2: percent geometry is inline data and must remain intact. */
.content-wrap .content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2),
.lt-vdo-note-rich-content.content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2),
.ck5-legacy-article figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2) {
    position: relative;
    display: block;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    height: auto;
    min-width: 0;
    min-height: 0;
    margin: 16px 0;
    padding: 0;
    border: 0;
    float: none;
    overflow: hidden;
    isolation: isolate;
    background: transparent;
    white-space: normal;
    user-select: none;
    -webkit-user-select: none;
}
.content-wrap .content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v1.rh-collage-ratio-1-1,
.lt-vdo-note-rich-content.content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v1.rh-collage-ratio-1-1,
.ck5-legacy-article figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v1.rh-collage-ratio-1-1 { aspect-ratio: 1 / 1; }
.content-wrap .content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v1.rh-collage-ratio-4-3,
.lt-vdo-note-rich-content.content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v1.rh-collage-ratio-4-3,
.ck5-legacy-article figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v1.rh-collage-ratio-4-3 { aspect-ratio: 4 / 3; }
.content-wrap .content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v1.rh-collage-ratio-16-9,
.lt-vdo-note-rich-content.content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v1.rh-collage-ratio-16-9,
.ck5-legacy-article figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v1.rh-collage-ratio-16-9 { aspect-ratio: 16 / 9; }
.content-wrap .content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v2.rh-collage-align-left,
.lt-vdo-note-rich-content.content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v2.rh-collage-align-left,
.ck5-legacy-article figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v2.rh-collage-align-left {
    margin-left: 0;
    margin-right: auto;
}
.content-wrap .content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v2.rh-collage-align-center,
.lt-vdo-note-rich-content.content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v2.rh-collage-align-center,
.ck5-legacy-article figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v2.rh-collage-align-center {
    margin-left: auto;
    margin-right: auto;
}
.content-wrap .content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v2.rh-collage-align-right,
.lt-vdo-note-rich-content.content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v2.rh-collage-align-right,
.ck5-legacy-article figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2).rh-collage-v2.rh-collage-align-right {
    margin-left: auto;
    margin-right: 0;
}
.content-wrap .content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2) > img.rh-collage-image,
.lt-vdo-note-rich-content.content-text figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2) > img.rh-collage-image,
.ck5-legacy-article figure.rh-collage:is(.rh-collage-v1, .rh-collage-v2) > img.rh-collage-image {
    position: absolute !important;
    display: block;
    box-sizing: border-box;
    min-width: 0;
    min-height: 0;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0;
    border: 0;
    float: none;
    object-fit: contain;
    object-position: center;
}
