.report
{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    margin: 1em;
    justify-content: space-between;
}

.report .intervals
{
    margin: 1em 3em 1em 1em;
    min-width: 17rem;
}

.report .totals
{
    margin: 1em 1em 1em 3em;
    min-width: 13rem;
}

.report .intervals .row,
.report .totals .row
{
    flex-wrap: nowrap;
    justify-content: space-between;
}

.report .totals .row *:last-child
{
    text-align: end;
}

.report .intervals .col,
.report .totals .col
{
    white-space: nowrap;
}

summary::marker
{
    font-size: calc(1.275rem + .3vw);
}

summary h4
{
    display:inline;
}

@media print 
{
    .header,
    .footer
    {
        display:none;
    }

    #main
    {
        width: 100%;
        margin-left: 1em!important;
        margin-right: 1em!important;
    }

    .report
    {
        display: block;
        break-after: page; 
        break-before: avoid-page; 
        break-inside: avoid-page;
    }

    .report .totals,
    .report .intervals
    {
        margin-left: 2em;
        margin-right: 4em;
    }

    .report .totals .row,
    .report .intervals .row
    {
        width: 57.5%;
        /*text-align: start!important;*/
    }

    details:not([open])
    {
        display:none;
        visibility: collapse;
    }

    summary::marker
    {
        display: none;
        visibility: hidden;
    }

    summary
    { 
        list-style: none 
    }

}