body.mce-content-body {
    box-sizing: border-box;
    max-width: 100%;
    margin: 0;
    padding: 12px;
}

body.mce-content-body,
.document-content {
    color: #17233c;
    font-family: "Times New Roman", Times, serif;
    font-size: 12pt;
    line-height: 17px;
    position: relative;
    isolation: isolate;
}

body.mce-content-body p,
.document-content p { margin: 0 0 1px; }
body.mce-content-body table { width: 100%; max-width: 100%; border-collapse: collapse; outline: 1px dashed #9ba8be; }
.document-content table { width: 100%; max-width: 100%; border-collapse: collapse; }
body.mce-content-body th,
body.mce-content-body td { min-width: 28px; padding: 4px 6px; border: 1px dotted #9ba8be; vertical-align: top; }
.document-content th,
.document-content td { min-width: 28px; padding: 4px 6px; border: 0; vertical-align: top; }
body.mce-content-body img,
.document-content img { max-width: 100%; height: auto; }
body.mce-content-body img.document-image-float-left,
.document-content img.document-image-float-left { float: left; max-width: 48%; margin: 0 14px 10px 0; }
body.mce-content-body img.document-image-float-right,
.document-content img.document-image-float-right { float: right; max-width: 48%; margin: 0 0 10px 14px; }
/*
 * The editor and document preview share a stacking context. This keeps a
 * signature, stamp, or watermark inside the document when it is placed
 * behind or above text, including browser printouts.
 */
body.mce-content-body img.document-image-background,
.document-content img.document-image-background {
    position: absolute;
    z-index: -1;
}
body.mce-content-body img.document-image-foreground,
.document-content img.document-image-foreground {
    position: absolute;
    z-index: 1;
}

/* Keeps template preview and the browser printout equally compact: 17 px line
   height for the 12 pt document font, i.e. about one extra pixel per line. */
.document-content,
.document-content * { line-height: 17px !important; }

/* Passport layouts preserve the original form geometry independently of
   the compact contract text styles. All borders come from the HTML editor. */
.document-content .passport-translation,
.document-content .passport-translation * { line-height: normal !important; color: #000; }
.passport-print { max-width: 190mm; padding: 8mm; }
.passport-copy + .passport-copy { margin-top: 24px; }
.document-content .passport-translation table { min-width: 0; table-layout: fixed; }
.document-content .passport-translation td { min-width: 0; }
@media print {
    @page passport-translation { size: A4; margin: 10mm; }
    .passport-print { padding: 0; min-height: 0; page: passport-translation; }
    .passport-copy + .passport-copy { break-before: page; margin-top: 0; }
    .passport-translation tr { break-inside: avoid; }
}
