﻿/* css rules to apply on document printing */
@media print {
    /* controls page margins for printed document, A4 is margin is left 45mm and top 30mm by default */
    @page {
        size: A4 portrait; /* 210 mm wide and 297 mm high */
        margin-top: 0cm;
        margin-bottom: 0cm;
        margin-left: 0cm;
        margin-right: 0cm;
    }

    body > div.page {
        margin-top: 0cm;
        margin-bottom: 0cm;
        margin-left: 0cm;
        margin-right: 0cm;
        width: 100%;
        height: auto;
    }

    @page vertical {
        size: A4 portrait;
    }

    @page horizontal {
        size: A4 landscape;
    }

    /* renders dataset header title for printed document */
    div.pull-left > span.h5.trn {
        color: white !important;
        opacity: 1 !important;
        background-color: transparent !important;
    }

    /* removes "expand"/"shrink" header button from print document */
    div.pull-right > span.h3.clickable {
        color: transparent !important;
        opacity: 0 !important;
        background-color: transparent !important;
    }

    /* removes "generate PDF" button and "result" label from printed document */
    .remove-on-html-print,
    button#generatePDFButton.btn,
    h5#results-title.trn {
        opacity: 0 !important;
        background-color: transparent !important;
        color: transparent !important;
        display: none !important;
        width: 0px !important;
        height: 0px !important;
    }

    /* some styling for printed document title */
    h3.print-title-header {
        margin-top: 1em;
        margin-bottom: 0em;
        text-align: center;
        vertical-align: middle;
        font-weight: bold;
        font-size: 18px;
        display: inline-block;
        width: 100%;
        padding-left: auto;
        padding-right: auto;
        padding-top: 0px;
        padding-bottom: 0px;
    }

    h5.print-subtitle-header {
        text-align: right;
        display: inline-block;
        width: 100%;
        padding-top: 0px;
        padding-bottom: 1.5em;
        padding-right: 3.5em;
        padding-left: auto;
        font-size: 14px;
        vertical-align: top;
    }

    hr.print-title-line {
        text-align: center;
        margin-left: auto;
        margin-right: auto;
        display: block;
        border-style: solid;
        border-top-width: 1px;
        width: 80%;
        height: 1px;
        color: darkgray;
        border-color: darkgray;
        margin-top: 1em;
    }
    
    script, style {
        display: none;
    }
    
    div.results-title-bar.bdc-blue {
        page-break-inside: avoid !important;
        break-inside: avoid !important;
        overflow: auto !important;
        position: relative !important;
    }
    
    table tr th {
        color: darkgray;
    }

    .content-wrapper,
    .content-card,
    .cd-block {
        display: block !important;
    }

    br {
        page-break-inside: auto !important;
        break-inside: auto !important;
        page-break-before: avoid !important;
        break-before: avoid !important;
        page-break-after: avoid !important;
        break-after: avoid !important;
    }

    div.content-wrapper div.content-card div.cd-block {
        display: block !important;
        width: 100% !important;
    }

    div.content-wrapper div.content-card div.cd-block,
    div.content-wrapper div.content-card h5,
    div.content-wrapper div.content-card strong {
        width: 100% !important;
        page-break-inside: avoid !important;
        break-inside: avoid !important;
        display: block !important;
        position: relative !important;
        break-before: auto !mportant;
        page-break-before: auto !important;
        break-after: auto !important;
        page-break-after: auto !important;
    }

    div.content-wrapper div.content-card div.cd-block::after,
    div.content-wrapper div.content-card h5::after,
    div.content-wrapper div.content-card strong::after {
        content: "";
        display: block;
        height: 0px;
        width: 0px;
        color: transparent;
        background-color: transparent;
        opacity: 0;
        visibility: hidden;
    }
    
    div.content-wrapper div.content-card h5 * {
        page-break-inside: avoid !important;
        break-inside: avoid !important;
        display: block !important;
        position: relative !important;

    }

    div.content-wrapper div.content-card div.cd-block span.cd-title.trn {
        position: relative !important;
        page-break-inside: avoid !important;
        break-inside: avoid !important;
        display: block !important;
        float: left;
    }

    div.content-wrapper div.content-card div.cd-block span.cd-value {
        position: relative !important;
        display: block !important;
        page-break-inside: avoid !important;
        break-inside: avoid !important;
        float: left;
    }
    
    div.content-wrapper div.content-card div.cd-block {
        zoom: 1;
    }

    div.content-wrapper div.content-card div.cd-block:before {
        display: table;
        clear: both;
    }
    
    div.content-wrapper div.content-card div.cd-block:after {
        display: table;
        clear: both;
        content: "";
        visibility: hidden;
        height: 0;
    }

    div.content-wrapper div.content-card div.cd-block::after {
        content: "";
        display: block;
        height: 0px;
        width: 0px;
        opacity: 0;
        color: transparent;
        background-color: transparent;
        visibility: hidden;
    }
}
