.text-tiny{
    font-size: .7em;
}
.text-small{
    font-size: .85em;
}
.text-big{
    font-size: 1.4em;
}
.text-huge{
    font-size: 1.8em;
}

/* CKEditor 表格：邊框 + 置中（後台 .explain 內文） */
.explain figure.table,
.explain .table {
    display: block;
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0.9em;
    margin-bottom: 0.9em;
}
.explain table {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px double #b3b3b3;
}
.explain table th,
.explain table td {
    min-width: 2em;
    padding: 0.4em;
    border: 1px solid #bfbfbf;
    overflow-wrap: break-word;
}

/* CKEditor 富文本：clearfix，避免浮動內容造成容器高度塌陷 */
.explain::after {
    content: '';
    display: table;
    clear: both;
}

.explain iframe {
    max-width: 100%;
}

.explain ol,
.explain ul {
    margin-left: 30px;
}

/* CKEditor：段落內圖片靠左 */
.explain p > img {
    display: block;
    margin-left: 0;
    margin-right: auto;
}

/* CKEditor：figure.image 置中（不含靠右的 side 樣式） */
.explain figure.image:not(.image-style-side) {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 0.9em;
    margin-bottom: 0.9em;
    text-align: center;
}

.explain figure.image:not(.image-style-side) img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
}

/* CKEditor：image-style-side 靠右（不用 float，避免跳窗背景高度塌陷） */
.explain figure.image.image-style-side {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    margin-left: auto !important;
    margin-right: 0 !important;
    margin-top: 0.9em;
    margin-bottom: 0.9em;
}

.explain figure.image.image-style-side img {
    display: block;
    margin-left: auto;
    margin-right: 0;
    margin-bottom: 0;
}