#page {
    width: 21cm;
    height: 29.7cm;
    position: relative;
    border: 1px solid #ccc;
    margin: auto;
    padding: 0;
    overflow-y: auto;
}

#page *:not(.bg) {
    background-color: transparent;
}

#page *:not(.border, hr) {
    border: none;
}

#page *:not(.shadow) {
    box-shadow: none;
}

#page::-webkit-scrollbar {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 5px;
    z-index: 5;
    background-color: none;
}

#page::-webkit-scrollbar-button {
    display: none;
    background-color: transparent;
}

#page::-webkit-scrollbar-thumb {
    background-color: transparent;
    border-radius: 5px;
}

#page:hover::-webkit-scrollbar-thumb {
    background-color: #aaa;
}

#page::-webkit-scrollbar-track {
    display: none;
}

#page::-webkit-scrollbar-track-piece {
    display: none;
}


@media screen {
    #page {
        filter: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
    }
}

@media print {
    @page {
        size: A4 portrait;
        marks: none;
        bleed: none;
        margin: 1.5cm !important;
    }

    header,
    nav,
    footer {
        display: none;
    }

    html,
    body,
    .container,
    #page {
        display: block;
        border: none;
        padding: 0;
        margin: auto;
        box-shadow: none;
        height: initial;
        width: 100% !important;
        filter: none !important;
        box-shadow: none !important;
    }

    body {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }
}