body {
    --margin: 5mm;
    --main-color: #41228e;
    --active-color: #008b6e;
    --secondary-color: #e9ecef;
    --background-color: #FFFFFF;
    --border-radius: 5px;
    --text-color: #1C1C1C;
    --active-text-color: var(--background-color);
    --active-background-color: var(--main-color);
    --border: 1px solid #D3D3D3;

    width: 100%;
    height: 100%;
    margin: 0;
    padding: calc(var(--margin) / 4);
    background-color: #FAFAFA;
    box-sizing: border-box;

    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    color: var(--text-color, #1C1C1C);

    --yesIcon: url("data:image/svg+xml,%3Csvg role='presentation' aria-hidden='true' version='1.1' width='12' height='12' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m27.043 43.615 19.398 18.383 45.851-46.545c3.7942-3.8476 6.1811-6.9471 10.866-2.1198l15.195 15.569c4.9876 4.9342 4.7383 7.8377 0 12.469l-63.218 62.203c-9.9397 9.7259-8.2118 10.314-18.276 0.33844l-35.412-35.199c-2.1019-2.2801-1.8704-4.578 0.42751-6.8402l17.635-18.294c2.672-2.8145 4.8095-2.5651 7.5171 0z' fill='%232B5F2E' stroke-width='1.7813'/%3E%3C/svg%3E%0A");
    --noIcon: url("data:image/svg+xml,%3Csvg role='presentation' aria-hidden='true' version='1.1' width='12' height='12' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m5.5643 36.223c-4.6005-4.4976-8.3065-7.3272-2.5345-12.881l18.615-18.012c5.8997-5.9124 9.3501-5.6168 14.909 0l25.026 24.853 24.941-24.727c4.5579-4.5821 7.3907-8.2562 12.992-2.5339l18.125 18.455c5.9636 5.8491 5.6654 9.2909 0 14.781l-24.983 24.811 24.983 24.853c5.6442 5.4479 5.9423 8.8897 0 14.781l-18.189 18.455c-5.6016 5.7224-8.5195 2.1116-12.992-2.5128l-24.877-24.832-25.09 24.938c-5.4951 5.5745-8.9455 5.8702-14.909 0l-18.615-18.012c-5.772-5.5534-2.1299-8.4463 2.5345-12.881l25.026-24.79z' fill='%23B00020' stroke-width='2.1207'/%3E%3C/svg%3E%0A");
    --otherIcon: url("data:image/svg+xml,%3Csvg role='presentation' aria-hidden='true' version='1.1' width='12' height='12' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='61' cy='61' r='30' fill='none' stroke='%23025D92' stroke-linecap='round' stroke-width='60'/%3E%3C/svg%3E");
}

.logo,
.page {
    max-width: 210mm;
}

.page {
    display: block;
    margin: calc(var(--margin) / 2) auto;
    padding: var(--margin);
    /*min-height: 297mm;*/
    border: 1px #D3D3D3 solid;
    border-radius: 5px;
    background: white;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
    position: relative;
}

@media screen and (min-width: 210mm){
    .page {
        width: 100%;
    }
}

.custom-layout .page::before {
    content: ' ';
    display: block;
    margin: calc(-1 * var(--margin)) var(--margin) var(--margin) calc(-1 * var(--margin));
    width: 472px;
    height: 276px;
    background: transparent url('../images/top-left.svg') no-repeat top left;
    float: left;
    shape-outside: polygon(calc(0% - var(--margin)) calc(0% - var(--margin)), calc(100% - var(--margin)) calc(0% - var(--margin)), calc(90% - var(--margin)) calc(5% - var(--margin)), calc(77% - var(--margin)) calc(15% - var(--margin)), calc(67% - var(--margin)) calc(35% - var(--margin)), calc(62% - var(--margin)) calc(44% - var(--margin)), calc(56% - var(--margin)) calc(49% - var(--margin)), calc(32% - var(--margin)) calc(60% - var(--margin)), calc(16% - var(--margin)) calc(76% - var(--margin)), calc(0% - var(--margin)) calc(100% - var(--margin)));
    shape-margin: calc(var(--margin) / 2);
}

body .logo-update-btn {
    display: block;
    margin: 20px auto 0;
    max-width: 100%;
    height: auto;
    background-color: transparent;
    border: 0 none;
    padding: 0.5rem;
    cursor: pointer;
    border: 1px solid transparent;
    border-radius: var(--border-radius);
    transition-property: border, box-shadow;
    transition-duration: 0.2s;
    transition-timing-function: ease-in-out;
}

body .logo-update-btn:is(.highlight, :hover, :focus, :active) {
    border-color: var(--main-color);
    box-shadow: 0 0 5px 0px var(--main-color);
}

body .logo-update-btn.highlight {
    border-style: dashed;
    border-width: 2px;
}

body.custom-layout .logo-update-btn {
    display: none;
}

.page h1~h1,
.page h2~h2 {
    page-break-before: always;
    page-break-after: avoid;
}

h1,
h2,
h3,
h4,
h5 {
    page-break-after: avoid;
}

table,
figure,
button,
img {
    page-break-inside: avoid;
}

h1+p,
h2+p,
h3+p,
h4+p,
h5+div,
h1+div,
h2+div,
h3+div,
h4+div,
h5+p {
    page-break-before: avoid;
}

.form-group-wrapper {
    page-break-after: avoid;
    page-break-inside: avoid;
}

@media screen and (min-width: 450px) {
    body {
        --margin: 20mm;
    }
}

@page {
    size: A4;
    margin: 20mm;
}

@media print {

    html,
    body {
        width: 210mm;
        height: 297mm;

        background-color: transparent;
    }

    .page {
        margin: 0;
        padding: 0;
        border: initial;
        border-radius: initial;
        box-shadow: initial;
        background: initial;
        page-break-after: always;
    }

    body .logo {
        margin: 10mm 0 20mm;
    }

    test-info+test-info::before,
    .no-print,
    .js .no-print-if-js,
    .no-js .no-print-if-no-js {
        display: none !important;
    }


    .logo-container {
        order: 1;
    }

    .checklist-metadata-container {
        order: 2;
    }

    .results-container {
        order: 3;
    }

    .checklist-container {
        order: 4;
    }
}

/* Utilities */
.mt-0 {
    margin-top: 0;
}

.mb-0 {
    margin-bottom: 0;
}

.mb-1 {
    margin-bottom: 1rem;
}

.mb-2 {
    margin-bottom: 2rem;
}

.mb-3 {
    margin-bottom: 3rem;
}

.mb-4 {
    margin-bottom: 4rem;
}

.mb-5 {
    margin-bottom: 5rem;
}

.block {
    display: block;
}

.d-flex {
    display: flex;
}

.f-column {
    flex-direction: column;
}

.f-row {
    flex-direction: row;
}

/* Forms */
/* form{
    display: flex;
    flex-direction: column;
    align-items: center;
} */

input,
button,
select,
optgroup,
textarea {
    margin: 0;
}

.form-control {
    display: block;
    width: 100%;
    margin: 0;
    font-weight: 400;
    color: #212529;
    background-color: #fff;
    background-clip: padding-box;
    border: 0.125rem solid #ced4da;
    appearance: none;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    outline: transparent;
}

.form-floating {
    --fast-transition: 0.1s;
    margin: 1.5rem 0;
}

.form-floating>.form-control,
.form-floating>.form-select {
    line-height: 1.25;
}

.form-floating input.form-control,
.form-floating textarea.form-control {
    border-left: 0;
    border-right: 0;
    border-top: 0;
    border-radius: 0;
    border-width: 1px;
}

.form-floating {
    position: relative;
}

.form-floating>.form-control,
.form-floating>.form-select {
    height: auto;
}

.form-floating label {
    position: absolute;
    bottom: 0.5rem;
    left: 0;
    right: 0;
    top: auto;
    pointer-events: none;
    transform-origin: 0 0;
    transition: color var(--fast-transition) ease-in-out, font-weight var(--fast-transition) ease-in-out, bottom var(--fast-transition) ease-in-out;
    display: block;
    font-weight: normal;
    white-space: nowrap;
    overflow: hidden;
    max-width: 100%;
    text-overflow: ellipsis;
    color: rgb(117, 117, 117);
    background-color: white;
}

.form-floating.as-label label {
    bottom: 2.2rem;
    color: var(--main-color);
    font-weight: bold;
}


.form-floating>.form-control-line {
    display: block;
    content: '';
    width: 0;
    height: 1px;
    background-color: var(--main-color, #41228e);
    margin: -1px auto 0;
    transition: width 0.3s ease-in-out;
}

.form-floating.as-label>label~.form-control-line {
    width: 100%;
}

.form-floating>.form-control::placeholder,
.form-floating>.form-control[type="date"]::-webkit-datetime-edit {
    transition: color 0.3s ease-in-out;
}

.form-floating:not(.as-label)>.form-control::placeholder,
.form-floating:not(.as-label)>.form-control::-webkit-datetime-edit {
    color: transparent;
    transition: none;
}


.form-floating input.form-control,
.form-floating textarea.form-control,
.form-floating select.form-select,
.form-floating label {
    font-size: 1rem;
}

.form-floating>.form-select,
.form-floating>.form-control {
    padding: 0.5rem 0;
    transition: padding var(--fast-transition) ease-in-out;
}

.form-floating.as-label>.form-select,
.form-floating.as-label>.form-control {
    padding: 2.2rem 0 0.5rem;
}

.form-floating select.form-select {
    border-left: 0;
    border-right: 0;
    border-top: 0;
    border-radius: 0;
    border-width: 1px;
}

.form-floating select.form-select:focus {
    box-shadow: none;
}

.test-name {
    margin: 4rem 0 1rem;
}

.form-group {
    margin: 2rem 0;
}

fieldset {
    border: none;
    margin: 0;
    padding: 0;
}

.file-previews {
    --gap: 1.5rem;
    --numberOfColumns: 1;
    display: grid;
    grid-gap: var(--gap);
    grid-auto-flow: dense;
    width: 100%;
    grid-template-columns: repeat(auto-fit, minmax(calc(((100% - (var(--gap) * (var(--numberOfColumns) - 1))) / var(--numberOfColumns))), 1fr));
    margin: 1.5rem 0 0;
}

@media screen and (min-width: 450px) {
    .file-previews {
        --numberOfColumns: 2;
    }
}

@media screen and (min-width: 968px) {
    .file-previews {
        --numberOfColumns: 3;
    }
}

.file-previews .thumbnail-wrapper{
    position: relative;
}

.file-previews .thumbnail-wrapper button.thumbnail,
.file-previews .loading-thumbnail {
    display: flex;
    align-items: center;
}
.file-previews .loading-thumbnail {
    justify-content: center;
}


.file-previews .thumbnail-wrapper button.thumbnail {
    background-color: transparent;
    border: 0 none;
    padding: 0;
    cursor: pointer;
    overflow: hidden;
    border-radius: 5px;
    transition: all 0.2s ease-in-out;
}

.file-previews .thumbnail-wrapper button.thumbnail:is(:hover, :focus, :active) {
    box-shadow: 0 0 10px 2px #C1C1C1;
}

.file-previews img {
    max-width: 100%;
    height: auto;
    transform-origin: 50% 50%;
    transform: scale(1);
    transition: all 0.2s ease-in-out;
}

.file-previews .thumbnail-wrapper button.thumbnail:is(:hover, :focus, :active) img {
    transform: scale(1.025);
}

.file-previews .thumbnail-wrapper button.remove-image{
    position: absolute;
    top: 0;
    right: 0;
    width: 44px;
    height: 44px;
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
}

.file-previews .thumbnail-wrapper button.remove-image:is(:hover, :focus, :active),
.file-previews .thumbnail-wrapper:is(:hover, :focus, :active) button.remove-image,
.file-previews .thumbnail-wrapper:has(button.thumbnail:is(:hover, :focus, :active)) button.remove-image{
    opacity: 1;
}

/* tests radios */
.test-results-wrapper {
    display: grid;
    grid-gap: 1rem;
    grid-auto-flow: dense;
    grid-template-rows: 1fr;
    grid-template-columns: 1fr;
    justify-content: left;
    margin-bottom: 1rem;
}

.test-result-option {
    --bg-color: #FFFFFF;
    --text-color: #1C1C1C;
    --border-color: #C1C1C1;

    --bg-active-color: #FFFFFF;
    --text-active-color: #1C1C1C;
    --border-active-color: #C1C1C1;
    --active-shadow-color: rgb(193 193 193 / 75%);

    --icon-size: 24px;

    display: flex;
    justify-content: stretch;
    align-items: stretch;
}

.test-result-option.test-result-positive {
    --border-color: #2B5F2E;

    --bg-active-color: #2B5F2E;
    --text-active-color: #FFFFFF;
    --border-active-color: #2B5F2E;
    --active-shadow-color: rgb(43 95 46 / 75%);
}

.test-result-option.test-result-negative {
    --border-color: #B00020;

    --bg-active-color: #B00020;
    --text-active-color: #FFFFFF;
    --border-active-color: #B00020;
    --active-shadow-color: rgb(176 0 32 / 75%);
}

.test-result-option.test-result-not-applicable {
    --border-color: #025D92;

    --bg-active-color: #025D92;
    --text-active-color: #FFFFFF;
    --border-active-color: #025D92;
    --active-shadow-color: rgb(2 93 146 / 75%);
}

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
    width: 1px;
    height: 1px;
    overflow: hidden;
    white-space: nowrap;
    clip-path: inset(50%);
    clip: rect(0 0 0 0);
    position: absolute;
    margin: -1px;
    padding: 0;
    border: 0 none;
    pointer-events: none;
}
.visually-hidden-focusable:not(:focus):not(:focus-within) {
    display: inline-block;
}

.test-result-option input[type=radio] {
    clip-path: inset(50%);
    padding: 0;
    border: 0 none;
    pointer-events: none;
}

.visually-hidden-focusable:focus,
.visually-hidden-focusable:focus-within {
    background-color: white;
    padding: 0.5rem 1rem;
    font-weight: bold;
    display: block;
    color: #41228e;
    border-radius: 5px;
    box-shadow: 0px 0px 10px black;
    display: inline-block;
}

.test-result-option label {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    background: var(--bg-color);
    border: 2px solid var(--border-color);
    border-radius: var(--border-radius, 10px);
    padding: 0.7rem calc(1.5rem + var(--icon-size) / 2);
    margin: 0 1rem 0 calc(0 + var(--icon-size) / 2);
    box-shadow: 0px 3px 10px -2px rgb(161 170 166 / 50%);
    position: relative;
    width: 100%;
    font-size: .9rem;
}

.test-result-option input[type=radio]:not(:disabled)+label {
    cursor: pointer;
}

.test-result-option input[type=radio]:focus+label,
.test-result-option input[type=radio]:hover:not(:checked)+label {
    outline: 1px solid var(--border-active-color);
    box-shadow: 0px 0px 7px var(--active-shadow-color);
}

.test-result-option input[type=radio]:checked+label {
    background: var(--bg-active-color);
    color: var(--text-active-color);
}
.test-result-option input[type=radio]:checked:is(:hover, :focus-visible, :active)+label {
    box-shadow: 0px 0px 7px var(--active-shadow-color);
}

@media print{
    .test-result-option input[type=radio]:checked+label{
        box-shadow: none;
    }
}

.test-result-option input[type=radio]+label::after {
    display: block;
    transition: background-position 0.2s ease-in-out;
    background-position: 200% 50%;
    color: #3d3f43;
    border: 2px solid var(--border-active-color);
    content: "";
    position: absolute;
    top: 50%;
    left: calc(-1 * (var(--icon-size) / 2) - 2px);
    transform: translateY(-50%);
    height: var(--icon-size);
    width: var(--icon-size);
    text-align: center;
    border-radius: 50%;
    background-color: white;
    background-repeat: no-repeat;
    background-size: 50% auto;
    box-shadow: 0px 0px 8px -1px rgb(0 0 0 / 50%);
    opacity: 1;
}

.test-result-option input[type=radio]:checked+label::after {
    background-position: 50% 50%;
}

.test-result-option.test-result-positive input[type=radio]:checked+label::after {
    background-image: url("data:image/svg+xml,%3Csvg version='1.1' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m27.043 43.615 19.398 18.383 45.851-46.545c3.7942-3.8476 6.1811-6.9471 10.866-2.1198l15.195 15.569c4.9876 4.9342 4.7383 7.8377 0 12.469l-63.218 62.203c-9.9397 9.7259-8.2118 10.314-18.276 0.33844l-35.412-35.199c-2.1019-2.2801-1.8704-4.578 0.42751-6.8402l17.635-18.294c2.672-2.8145 4.8095-2.5651 7.5171 0z' fill='%232B5F2E' stroke-width='1.7813'/%3E%3C/svg%3E%0A");
}

.test-result-option.test-result-negative input[type=radio]:checked+label::after {
    background-image: url("data:image/svg+xml,%3Csvg version='1.1' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m5.5643 36.223c-4.6005-4.4976-8.3065-7.3272-2.5345-12.881l18.615-18.012c5.8997-5.9124 9.3501-5.6168 14.909 0l25.026 24.853 24.941-24.727c4.5579-4.5821 7.3907-8.2562 12.992-2.5339l18.125 18.455c5.9636 5.8491 5.6654 9.2909 0 14.781l-24.983 24.811 24.983 24.853c5.6442 5.4479 5.9423 8.8897 0 14.781l-18.189 18.455c-5.6016 5.7224-8.5195 2.1116-12.992-2.5128l-24.877-24.832-25.09 24.938c-5.4951 5.5745-8.9455 5.8702-14.909 0l-18.615-18.012c-5.772-5.5534-2.1299-8.4463 2.5345-12.881l25.026-24.79z' fill='%23B00020' stroke-width='2.1207'/%3E%3C/svg%3E%0A");
}

.test-result-option.test-result-not-applicable input[type=radio]:checked+label::after {
    background-image: url("data:image/svg+xml,%3Csvg version='1.1' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='61' cy='61' r='30' fill='none' stroke='%23025D92' stroke-linecap='round' stroke-width='60'/%3E%3C/svg%3E");
}

.show-only-when-printing {
    display: none;
}

@media print {

    .test-result-option input[type=radio]:not(:checked),
    .test-result-option input[type=radio]:not(:checked)+label,
    .test-result-option input[type=radio]:not(:checked)+label:after {
        display: none;
    }

    .test-result-option input[type=radio]:checked+label {
        color: var(--border-active-color);
        background-color: transparent;
    }

    .test-result-option input[type=radio]:checked+label::after {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .test-result-option.test-result-positive input[type=radio]:checked+label::after {
        background-image: none;
        content: url("data:image/svg+xml,%3Csvg aria-role='presentation' version='1.1' width='12' height='12' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m27.043 43.615 19.398 18.383 45.851-46.545c3.7942-3.8476 6.1811-6.9471 10.866-2.1198l15.195 15.569c4.9876 4.9342 4.7383 7.8377 0 12.469l-63.218 62.203c-9.9397 9.7259-8.2118 10.314-18.276 0.33844l-35.412-35.199c-2.1019-2.2801-1.8704-4.578 0.42751-6.8402l17.635-18.294c2.672-2.8145 4.8095-2.5651 7.5171 0z' fill='%232B5F2E' stroke-width='1.7813'/%3E%3C/svg%3E%0A");
    }

    .test-result-option.test-result-negative input[type=radio]:checked+label::after {
        background-image: none;
        content: url("data:image/svg+xml,%3Csvg aria-role='presentation' version='1.1' width='12' height='12' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m5.5643 36.223c-4.6005-4.4976-8.3065-7.3272-2.5345-12.881l18.615-18.012c5.8997-5.9124 9.3501-5.6168 14.909 0l25.026 24.853 24.941-24.727c4.5579-4.5821 7.3907-8.2562 12.992-2.5339l18.125 18.455c5.9636 5.8491 5.6654 9.2909 0 14.781l-24.983 24.811 24.983 24.853c5.6442 5.4479 5.9423 8.8897 0 14.781l-18.189 18.455c-5.6016 5.7224-8.5195 2.1116-12.992-2.5128l-24.877-24.832-25.09 24.938c-5.4951 5.5745-8.9455 5.8702-14.909 0l-18.615-18.012c-5.772-5.5534-2.1299-8.4463 2.5345-12.881l25.026-24.79z' fill='%23B00020' stroke-width='2.1207'/%3E%3C/svg%3E%0A");
    }

    .test-result-option.test-result-not-applicable input[type=radio]:checked+label::after {
        background-image: none;
        content: url("data:image/svg+xml,%3Csvg aria-role='presentation' version='1.1' width='12' height='12' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='61' cy='61' r='30' fill='none' stroke='%23025D92' stroke-linecap='round' stroke-width='60'/%3E%3C/svg%3E");
    }

    .test-results-wrapper {
        grid-gap: 0;
        margin-bottom: 0;
    }

    .test-result-facts .file-previews:empty {
        display: block !important;
        margin: 0;
    }

    .test-result-notes-preview:empty::after,
    .test-result-facts .file-previews:empty::after,
    .test-results:not(:has(input[type=radio]:checked))::after {
        color: #1C1C1C;
        display: block;
        content: attr(data-empty-message);
    }

    .show-only-when-printing {
        display: block;
    }

    .test-results:not(:has(input[type=radio]:checked)) {
        padding: 2.5rem 2rem 2rem;
    }
}

/* Labels */
.form-group-wrapper {
    padding: 3rem 0 2rem;
}

.form-group {
    border: var(--border, 2px solid var(--main-color, #41228e));
    padding: 2.5rem 2rem 2rem;
    margin: 0;
    border-radius: var(--border-radius, 10px);
    position: relative;
}

.form-group.test-results {
    padding: 3.5rem 3rem 2rem;
}

.test-results-label {
    margin: 0;
    position: absolute;
    top: 0;
    left: 0;
    color: var(--main-color, #41228e);
    background: var(--background-color, white);
    border: var(--border, 2px solid var(--main-color, #41228e));;
    border-radius: var(--border-radius, 10px);
    padding: 0.7rem 1rem;
    transform: translate(2rem, -50%);
}

.test-results-legend,
.test-results-facts,
.test-results-notes {
    font-size: 1.05rem;
    font-weight: bold;
}

/* Evidences controls */
.test-results-facts-browse-btn {
    display: none;
    justify-content: center;
    align-items: center;
    color: var(--text-color, black);
    background-color: transparent;
    border: 2px solid var(--main-color, #41228e);
    border-radius: var(--border-radius, 10px);
    padding: 0.7rem 1.5rem;
    margin: 0.5rem 0;
    /* box-shadow: 0px 3px 10px -2px rgb(161 170 166 / 50%); */
    font-size: .9rem;
    cursor: pointer;
    font-weight: bold;
}
.test-results-facts-browse-btn:after {
    content: "";
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
    background: transparent no-repeat center center;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 231.883 202.32' %3E%3Cpath fill='%235cb0ff' d='M118.77 98.32c24.262 0 44-19.738 44-44s-19.738-44-44-44-44 19.738-44 44 19.738 44 44 44zm-28-48h24v-24a4 4 0 1 1 8 0v24h24a4 4 0 1 1 0 8h-24v24a4 4 0 1 1-8 0v-24h-24a4 4 0 1 1 0-8z'/%3E%3Cpath d='M8 162.451c0-17.574 14.309-31.871 31.898-31.871h80.086c17.59 0 31.898 14.297 31.898 31.871v4h8v-4c0-21.984-17.898-39.871-39.898-39.871H39.898c-22 0-39.898 17.887-39.898 39.871s17.898 39.869 39.898 39.869h31.004v-8H39.898C22.309 194.32 8 180.023 8 162.451zm183.984-39.871H160.98v8h31.004c17.59 0 31.898 14.297 31.898 31.869s-14.309 31.871-31.898 31.871h-80.086C94.309 194.32 80 180.023 80 162.449v-4h-8v4c0 21.984 17.898 39.871 39.898 39.871h80.086c22 0 39.898-17.887 39.898-39.871s-17.898-39.869-39.898-39.869zm-73.214-16.26c28.672 0 52-23.326 52-52s-23.328-52-52-52-52 23.326-52 52 23.328 52 52 52zm0-96c24.262 0 44 19.738 44 44s-19.738 44-44 44-44-19.738-44-44 19.738-44 44-44z' fill='%231c71da'/%3E%3Cpath fill='%23fff' d='M90.77 58.32h24v24a4 4 0 1 0 8 0v-24h24a4 4 0 1 0 0-8h-24v-24a4 4 0 1 0-8 0v24h-24a4 4 0 1 0 0 8z'/%3E%3Cg fill='%23ff5d5d'%3E%3Cpath d='M199.022 22.144a3.99 3.99 0 0 1-2.828-1.171 4 4 0 0 1 0-5.657l14.143-14.142a4 4 0 0 1 5.656 0 4 4 0 0 1 0 5.657L201.85 20.972c-.78.781-1.805 1.171-2.828 1.171z'/%3E%3Cpath d='M213.164 22.142c-1.023 0-2.048-.391-2.828-1.171L196.193 6.828a4 4 0 0 1 5.656-5.657l14.143 14.143a4 4 0 0 1 0 5.657c-.78.781-1.805 1.171-2.828 1.171z'/%3E%3C/g%3E%3Cpath fill='%2300d40b' d='M205.022 122.144a14.02 14.02 0 0 1-14-14 14.02 14.02 0 0 1 14-14 14.02 14.02 0 0 1 14 14 14.02 14.02 0 0 1-14 14zm0-20a6.01 6.01 0 0 0-6 6 6.01 6.01 0 0 0 6 6 6.01 6.01 0 0 0 6-6 6.01 6.01 0 0 0-6-6z'/%3E%3Cpath fill='%23ffc504' d='M22.336 112.769a3.99 3.99 0 0 1-2.828-1.171L8.193 100.284a4 4 0 0 1 0-5.657l11.314-11.314a4 4 0 0 1 5.656 0l11.313 11.314a4 4 0 0 1 0 5.657l-11.313 11.314c-.78.781-1.805 1.171-2.828 1.171zm-5.657-15.314l5.657 5.657 5.656-5.657-5.656-5.657-5.657 5.657z'/%3E%3C/svg%3E");
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 231.883 202.32' %3E%3Cpath fill='%235cb0ff' d='M118.77 98.32c24.262 0 44-19.738 44-44s-19.738-44-44-44-44 19.738-44 44 19.738 44 44 44zm-28-48h24v-24a4 4 0 1 1 8 0v24h24a4 4 0 1 1 0 8h-24v24a4 4 0 1 1-8 0v-24h-24a4 4 0 1 1 0-8z'/%3E%3Cpath d='M8 162.451c0-17.574 14.309-31.871 31.898-31.871h80.086c17.59 0 31.898 14.297 31.898 31.871v4h8v-4c0-21.984-17.898-39.871-39.898-39.871H39.898c-22 0-39.898 17.887-39.898 39.871s17.898 39.869 39.898 39.869h31.004v-8H39.898C22.309 194.32 8 180.023 8 162.451zm183.984-39.871H160.98v8h31.004c17.59 0 31.898 14.297 31.898 31.869s-14.309 31.871-31.898 31.871h-80.086C94.309 194.32 80 180.023 80 162.449v-4h-8v4c0 21.984 17.898 39.871 39.898 39.871h80.086c22 0 39.898-17.887 39.898-39.871s-17.898-39.869-39.898-39.869zm-73.214-16.26c28.672 0 52-23.326 52-52s-23.328-52-52-52-52 23.326-52 52 23.328 52 52 52zm0-96c24.262 0 44 19.738 44 44s-19.738 44-44 44-44-19.738-44-44 19.738-44 44-44z' fill='%231c71da'/%3E%3Cpath fill='%23fff' d='M90.77 58.32h24v24a4 4 0 1 0 8 0v-24h24a4 4 0 1 0 0-8h-24v-24a4 4 0 1 0-8 0v24h-24a4 4 0 1 0 0 8z'/%3E%3Cg fill='%23ff5d5d'%3E%3Cpath d='M199.022 22.144a3.99 3.99 0 0 1-2.828-1.171 4 4 0 0 1 0-5.657l14.143-14.142a4 4 0 0 1 5.656 0 4 4 0 0 1 0 5.657L201.85 20.972c-.78.781-1.805 1.171-2.828 1.171z'/%3E%3Cpath d='M213.164 22.142c-1.023 0-2.048-.391-2.828-1.171L196.193 6.828a4 4 0 0 1 5.656-5.657l14.143 14.143a4 4 0 0 1 0 5.657c-.78.781-1.805 1.171-2.828 1.171z'/%3E%3C/g%3E%3Cpath fill='%2300d40b' d='M205.022 122.144a14.02 14.02 0 0 1-14-14 14.02 14.02 0 0 1 14-14 14.02 14.02 0 0 1 14 14 14.02 14.02 0 0 1-14 14zm0-20a6.01 6.01 0 0 0-6 6 6.01 6.01 0 0 0 6 6 6.01 6.01 0 0 0 6-6 6.01 6.01 0 0 0-6-6z'/%3E%3Cpath fill='%23ffc504' d='M22.336 112.769a3.99 3.99 0 0 1-2.828-1.171L8.193 100.284a4 4 0 0 1 0-5.657l11.314-11.314a4 4 0 0 1 5.656 0l11.313 11.314a4 4 0 0 1 0 5.657l-11.313 11.314c-.78.781-1.805 1.171-2.828 1.171zm-5.657-15.314l5.657 5.657 5.656-5.657-5.656-5.657-5.657 5.657z'/%3E%3C/svg%3E")/"";
    margin-left: 0.8rem;
}
.test-results-facts-browse-btn:is(:hover, :active, :focus) {
    box-shadow: 0px 3px 10px -2px var(--main-color, #41228e);
    color: var(--active-text-color, white);
    background-color: var(--main-color, #41228e);
    border: 2px solid var(--main-color, #41228e);
    outline: 1px solid var(--main-color, #41228e);
}

.test-results-facts-browse-btn:is(:hover, :active, :focus):after{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 231.883 202.32'%3E%3Cpath fill='transparent' d='M118.77 98.32c24.262 0 44-19.738 44-44s-19.738-44-44-44-44 19.738-44 44 19.738 44 44 44zm-28-48h24v-24a4 4 0 1 1 8 0v24h24a4 4 0 1 1 0 8h-24v24a4 4 0 1 1-8 0v-24h-24a4 4 0 1 1 0-8z'/%3E%3Cpath d='M8 162.451c0-17.574 14.309-31.871 31.898-31.871h80.086c17.59 0 31.898 14.297 31.898 31.871v4h8v-4c0-21.984-17.898-39.871-39.898-39.871H39.898c-22 0-39.898 17.887-39.898 39.871s17.898 39.869 39.898 39.869h31.004v-8H39.898C22.309 194.32 8 180.023 8 162.451zm183.984-39.871H160.98v8h31.004c17.59 0 31.898 14.297 31.898 31.869s-14.309 31.871-31.898 31.871h-80.086C94.309 194.32 80 180.023 80 162.449v-4h-8v4c0 21.984 17.898 39.871 39.898 39.871h80.086c22 0 39.898-17.887 39.898-39.871s-17.898-39.869-39.898-39.869zm-73.214-16.26c28.672 0 52-23.326 52-52s-23.328-52-52-52-52 23.326-52 52 23.328 52 52 52zm0-96c24.262 0 44 19.738 44 44s-19.738 44-44 44-44-19.738-44-44 19.738-44 44-44z' fill='%23FFFFFF'/%3E%3Cpath fill='%23fff' d='M90.77 58.32h24v24a4 4 0 1 0 8 0v-24h24a4 4 0 1 0 0-8h-24v-24a4 4 0 1 0-8 0v24h-24a4 4 0 1 0 0 8z'/%3E%3Cg fill='%23FFFFFF'%3E%3Cpath d='M199.022 22.144a3.99 3.99 0 0 1-2.828-1.171 4 4 0 0 1 0-5.657l14.143-14.142a4 4 0 0 1 5.656 0 4 4 0 0 1 0 5.657L201.85 20.972c-.78.781-1.805 1.171-2.828 1.171z'/%3E%3Cpath d='M213.164 22.142c-1.023 0-2.048-.391-2.828-1.171L196.193 6.828a4 4 0 0 1 5.656-5.657l14.143 14.143a4 4 0 0 1 0 5.657c-.78.781-1.805 1.171-2.828 1.171z'/%3E%3C/g%3E%3Cpath fill='%23FFFFFF' d='M205.022 122.144a14.02 14.02 0 0 1-14-14 14.02 14.02 0 0 1 14-14 14.02 14.02 0 0 1 14 14 14.02 14.02 0 0 1-14 14zm0-20a6.01 6.01 0 0 0-6 6 6.01 6.01 0 0 0 6 6 6.01 6.01 0 0 0 6-6 6.01 6.01 0 0 0-6-6z'/%3E%3Cpath fill='%23FFFFFF' d='M22.336 112.769a3.99 3.99 0 0 1-2.828-1.171L8.193 100.284a4 4 0 0 1 0-5.657l11.314-11.314a4 4 0 0 1 5.656 0l11.313 11.314a4 4 0 0 1 0 5.657l-11.313 11.314c-.78.781-1.805 1.171-2.828 1.171zm-5.657-15.314l5.657 5.657 5.656-5.657-5.656-5.657-5.657 5.657z'/%3E%3C/svg%3E");
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 231.883 202.32'%3E%3Cpath fill='transparent' d='M118.77 98.32c24.262 0 44-19.738 44-44s-19.738-44-44-44-44 19.738-44 44 19.738 44 44 44zm-28-48h24v-24a4 4 0 1 1 8 0v24h24a4 4 0 1 1 0 8h-24v24a4 4 0 1 1-8 0v-24h-24a4 4 0 1 1 0-8z'/%3E%3Cpath d='M8 162.451c0-17.574 14.309-31.871 31.898-31.871h80.086c17.59 0 31.898 14.297 31.898 31.871v4h8v-4c0-21.984-17.898-39.871-39.898-39.871H39.898c-22 0-39.898 17.887-39.898 39.871s17.898 39.869 39.898 39.869h31.004v-8H39.898C22.309 194.32 8 180.023 8 162.451zm183.984-39.871H160.98v8h31.004c17.59 0 31.898 14.297 31.898 31.869s-14.309 31.871-31.898 31.871h-80.086C94.309 194.32 80 180.023 80 162.449v-4h-8v4c0 21.984 17.898 39.871 39.898 39.871h80.086c22 0 39.898-17.887 39.898-39.871s-17.898-39.869-39.898-39.869zm-73.214-16.26c28.672 0 52-23.326 52-52s-23.328-52-52-52-52 23.326-52 52 23.328 52 52 52zm0-96c24.262 0 44 19.738 44 44s-19.738 44-44 44-44-19.738-44-44 19.738-44 44-44z' fill='%23FFFFFF'/%3E%3Cpath fill='%23fff' d='M90.77 58.32h24v24a4 4 0 1 0 8 0v-24h24a4 4 0 1 0 0-8h-24v-24a4 4 0 1 0-8 0v24h-24a4 4 0 1 0 0 8z'/%3E%3Cg fill='%23FFFFFF'%3E%3Cpath d='M199.022 22.144a3.99 3.99 0 0 1-2.828-1.171 4 4 0 0 1 0-5.657l14.143-14.142a4 4 0 0 1 5.656 0 4 4 0 0 1 0 5.657L201.85 20.972c-.78.781-1.805 1.171-2.828 1.171z'/%3E%3Cpath d='M213.164 22.142c-1.023 0-2.048-.391-2.828-1.171L196.193 6.828a4 4 0 0 1 5.656-5.657l14.143 14.143a4 4 0 0 1 0 5.657c-.78.781-1.805 1.171-2.828 1.171z'/%3E%3C/g%3E%3Cpath fill='%23FFFFFF' d='M205.022 122.144a14.02 14.02 0 0 1-14-14 14.02 14.02 0 0 1 14-14 14.02 14.02 0 0 1 14 14 14.02 14.02 0 0 1-14 14zm0-20a6.01 6.01 0 0 0-6 6 6.01 6.01 0 0 0 6 6 6.01 6.01 0 0 0 6-6 6.01 6.01 0 0 0-6-6z'/%3E%3Cpath fill='%23FFFFFF' d='M22.336 112.769a3.99 3.99 0 0 1-2.828-1.171L8.193 100.284a4 4 0 0 1 0-5.657l11.314-11.314a4 4 0 0 1 5.656 0l11.313 11.314a4 4 0 0 1 0 5.657l-11.313 11.314c-.78.781-1.805 1.171-2.828 1.171zm-5.657-15.314l5.657 5.657 5.656-5.657-5.656-5.657-5.657 5.657z'/%3E%3C/svg%3E")/"";
}

.test-result-facts input[type=file][hidden]+.test-results-facts-browse-btn {
    display: flex;
}

.test-result-facts {
    display: flex;
    flex-direction: column;
}

.test-result-facts.highlight{
    border-style: dashed;
}

.test-result-facts .file-previews-input-wrapper {
    order: 2;
}

.test-result-facts .file-previews {
    order: 1;
    margin-bottom: 2rem;
}

.test-result-facts .file-previews:empty {
    display: none;
}
.test-result-notes textarea{
    border-radius: var(--border-radius, 10px);
    padding: 1.5rem;
    box-sizing: border-box;
}
.test-result-notes textarea{
    border: var(--border, 1px solid rgba(65, 34, 142, 0.5));
}
.test-result-notes textarea:is(:hover, :focus, :active){
    border: 1px solid var(--main-color, #41228e);
}
textarea[resizable] {
    max-width: 100%;
}

test-info {
    margin-bottom: 2rem;
    display: block;
}

test-info+test-info::before {
    content: ' ';
    display: block;
    border-top: 1px solid #D3D3D3;
    width: calc(2 * var(--margin) + 100%);
    margin: 0 calc(-1 * var(--margin));
}

/* evaluation results */
@media screen {
    #evaluationResultsPage {
        background-color: white;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        overflow: hidden;
        max-width: none;
        z-index: 10;
        box-sizing: border-box;
        height: 0;
        opacity: 1;
        transition-property: padding, height;
        transition-duration: 0.3s;
        transition-timing-function: ease-in-out;
        padding-bottom: 3px;
        border-bottom: 1px solid transparent;

        --progress: 0%;
    }

    #evaluationResultsPage .page{
        box-shadow: none;
        border: none;
        padding: 0 var(--margin);
        transition: visibility 0s linear 0.3s;
        visibility: hidden;
    }

    #evaluationResultsPage[aria-hidden="false"] .page{
        transition: visibility 0s linear;
        visibility: visible;
    }

    #evaluationResultsPage.open {
        border-bottom: 1px solid rgba(211, 211, 211, 0.7);
        height: 100vh;
        opacity: 1;
        overflow: auto;
    }
    #evaluationResultsPage::after{
        --height: 3px;
        display: block;
        content: '';
        width: calc(var(--progress, 0%));
        height: var(--height);
        position: fixed;
        left: 0;
        top: 0;
        background-color: var(--main-color);
        transition-property: top, width;
        transition-duration: 0.3s;
        transition-timing-function: ease-in-out;
    }
    #evaluationResultsPage.open::after{
        top: calc(100vh - var(--height));
    }
}

#evaluationResults {
    --box-size: 2rem;
    --border: 1px solid #CCCCCC;

    margin-top: 4rem;
}

#evaluationResults ul {
    list-style: none;
    padding: 0;
    margin-top: 0;
}

#evaluationResults ul li {
    page-break-inside: avoid;
}

#evaluationResults a:is(:scope, :link, :visited) {
    text-decoration: none;
    color: var(--text-color, black);
}

#evaluationResults a:is(:hover, :focus, :active) {
    text-decoration: underline;
}

#evaluationResults a.test-group {
    display: block;
    border: var(--border);
    font-weight: bold;
    padding: 1rem 0.5rem 1rem calc(1 * var(--box-size, 1rem) - var(--box-size, 1rem) / 4);
}

#evaluationResults a.test-item {
    display: flex;
    flex-direction: row;
    align-items: stretch;
}

#evaluationResults a.test-item .test-title-prefix{
    order: 1;
}
#evaluationResults a.test-item .test-title {
    display: block;
    margin-left: var(--box-size, 1rem);
    order: 2;
    padding: 0.5rem;
    flex-grow: 1;
}

#evaluationResults a.test-item .final-test-results-wrapper {
    order: 3;
    display: flex;
    flex-direction: row;
    align-items: stretch;
}

#evaluationResults .test-results-container {
    display: flex;
    flex-direction: row;
}

#evaluationResults .test-results-container .test-result-item {
    width: var(--box-size, 1rem);
    min-height: var(--box-size, 1rem);
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    box-sizing: border-box;
    border-left: var(--border);
    position: relative;
}
#evaluationResults .test-results-container .test-result-item::after{    
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left:0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}

#evaluationResults ul li ul li {
    border-bottom: var(--border);
}

#evaluationResults .final-test-results-wrapper.test-results-labels .test-result-item {
    border-top: var(--border);
}

#evaluationResults .final-test-results-wrapper.test-results-labels .test-result-item:last-child,
#evaluationResults ul li ul li {
    border-right: var(--border);
}

#evaluationResults ul li:last-child ul li:last-child {
    border-bottom: var(--border);
}

#evaluationResults a.test-item{
    border-left: var(--border);
}

#evaluationResults a.test-item .test-results-container .test-result-item::after {
    padding: calc(var(--box-size, 1rem) / 4);
}

#evaluationResults a.test-item .test-results-container .test-result-item.test-result-item-P[data-current="true"]::after {
    content: url("data:image/svg+xml,%3Csvg role='presentation' aria-hidden='true' version='1.1' width='12' height='12' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m27.043 43.615 19.398 18.383 45.851-46.545c3.7942-3.8476 6.1811-6.9471 10.866-2.1198l15.195 15.569c4.9876 4.9342 4.7383 7.8377 0 12.469l-63.218 62.203c-9.9397 9.7259-8.2118 10.314-18.276 0.33844l-35.412-35.199c-2.1019-2.2801-1.8704-4.578 0.42751-6.8402l17.635-18.294c2.672-2.8145 4.8095-2.5651 7.5171 0z' fill='%232B5F2E' stroke-width='1.7813'/%3E%3C/svg%3E%0A");
    content: url("data:image/svg+xml,%3Csvg role='presentation' aria-hidden='true' version='1.1' width='12' height='12' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m27.043 43.615 19.398 18.383 45.851-46.545c3.7942-3.8476 6.1811-6.9471 10.866-2.1198l15.195 15.569c4.9876 4.9342 4.7383 7.8377 0 12.469l-63.218 62.203c-9.9397 9.7259-8.2118 10.314-18.276 0.33844l-35.412-35.199c-2.1019-2.2801-1.8704-4.578 0.42751-6.8402l17.635-18.294c2.672-2.8145 4.8095-2.5651 7.5171 0z' fill='%232B5F2E' stroke-width='1.7813'/%3E%3C/svg%3E%0A") / "";
}

#evaluationResults a.test-item .test-results-container .test-result-item.test-result-item-N[data-current="true"]::after {
    content: url("data:image/svg+xml,%3Csvg role='presentation' aria-hidden='true' version='1.1' width='12' height='12' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m5.5643 36.223c-4.6005-4.4976-8.3065-7.3272-2.5345-12.881l18.615-18.012c5.8997-5.9124 9.3501-5.6168 14.909 0l25.026 24.853 24.941-24.727c4.5579-4.5821 7.3907-8.2562 12.992-2.5339l18.125 18.455c5.9636 5.8491 5.6654 9.2909 0 14.781l-24.983 24.811 24.983 24.853c5.6442 5.4479 5.9423 8.8897 0 14.781l-18.189 18.455c-5.6016 5.7224-8.5195 2.1116-12.992-2.5128l-24.877-24.832-25.09 24.938c-5.4951 5.5745-8.9455 5.8702-14.909 0l-18.615-18.012c-5.772-5.5534-2.1299-8.4463 2.5345-12.881l25.026-24.79z' fill='%23B00020' stroke-width='2.1207'/%3E%3C/svg%3E%0A");
    content: url("data:image/svg+xml,%3Csvg role='presentation' aria-hidden='true' version='1.1' width='12' height='12' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m5.5643 36.223c-4.6005-4.4976-8.3065-7.3272-2.5345-12.881l18.615-18.012c5.8997-5.9124 9.3501-5.6168 14.909 0l25.026 24.853 24.941-24.727c4.5579-4.5821 7.3907-8.2562 12.992-2.5339l18.125 18.455c5.9636 5.8491 5.6654 9.2909 0 14.781l-24.983 24.811 24.983 24.853c5.6442 5.4479 5.9423 8.8897 0 14.781l-18.189 18.455c-5.6016 5.7224-8.5195 2.1116-12.992-2.5128l-24.877-24.832-25.09 24.938c-5.4951 5.5745-8.9455 5.8702-14.909 0l-18.615-18.012c-5.772-5.5534-2.1299-8.4463 2.5345-12.881l25.026-24.79z' fill='%23B00020' stroke-width='2.1207'/%3E%3C/svg%3E%0A") / "";
}

#evaluationResults a.test-item .test-results-container .test-result-item.test-result-item-NA[data-current="true"]::after {
    content: url("data:image/svg+xml,%3Csvg role='presentation' aria-hidden='true' version='1.1' width='12' height='12' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='61' cy='61' r='30' fill='none' stroke='%23025D92' stroke-linecap='round' stroke-width='60'/%3E%3C/svg%3E");
    content: url("data:image/svg+xml,%3Csvg role='presentation' aria-hidden='true' version='1.1' width='12' height='12' viewBox='0 0 122 122' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='61' cy='61' r='30' fill='none' stroke='%23025D92' stroke-linecap='round' stroke-width='60'/%3E%3C/svg%3E") / "";
}

#evaluationResults .final-test-results-wrapper.test-results-labels {
    font-weight: bold;
    font-size: 0.95rem;
    display: flex;
    flex-direction: row;
}
#evaluationResults .final-test-results-wrapper.test-results-labels .test-results-container{
    margin-left: auto;
}

.tests-results-summary-wrapper table{
    width: 100%;
    border: 1px solid var(--main-color);
    border-bottom-left-radius: var(--border-radius);
    border-bottom-right-radius: var(--border-radius);
    margin: 4rem 0;
    border-spacing: 0;
}
.tests-results-summary-wrapper table caption{
    background-color: var(--main-color);
    color: white;
    font-weight: bold;
    border: 1px solid var(--main-color);
    border-top-left-radius: var(--border-radius);
    border-top-right-radius: var(--border-radius);
}
@media print {
    .tests-results-summary-wrapper table caption{
        background-color: transparent;
        color: var(--main-color);
    }

    .test-result-facts {
        display: block;
    }
}
.tests-results-summary-wrapper table td,
.tests-results-summary-wrapper table th{
    padding: 0.5rem 0.75rem;
    border-bottom: 1px dashed var(--main-color);
}
.tests-results-summary-wrapper table tfoot td,
.tests-results-summary-wrapper table tfoot th{
    border-bottom: 0 none;
    font-weight: bold;
}
.tests-results-summary-wrapper table th {
    text-align: start;
}
.tests-results-summary-wrapper table td{
    text-align: center;
}

.app-menu-container{
    --btnSize: 60px;
    position: fixed;
    right: calc(30px + var(--scrollbar-width, 0));
    bottom: 15px;
    z-index: 100;
}

.menu-button {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 10;
    cursor: pointer;
    font-size: 1.25rem;
    line-height: 1;
    background-color: transparent;
    border: 1px solid transparent;
    margin: 0;
    padding: 0;
    width: var(--btnSize, 60px);
    height: var(--btnSize, 60px);
    border-radius: 50%;
    overflow: hidden;
    box-shadow: 0 0 8px -3px #1c1c1c;
    transition: box-shadow 0.2s ease-in-out;
}
.app-menu-container:has(.menu-entry-results[aria-expanded="true"]){
    right: calc(30px + var(--scrollbar-width, 0));
}
@media screen and (min-width: 1250px) {
    .app-menu-container {
        --btnSize: 80px;
        right: calc(15px + var(--scrollbar-width, 0));
        bottom: 20px;
    }
    .app-menu-container:has(.menu-entry-results[aria-expanded="true"]){
        right: calc(15px + 2 * var(--scrollbar-width, 0));
    }
}

.menu-button .burger-btn-icon {
    display: block;
    position: relative;
}
.menu-button .burger-btn-icon .donut-percent{
    font-size: 0.55em;
    line-height: 1;
    font-weight: bold;
}
.menu-button .burger-btn-icon .donut-data{
    font-size: 0.23em;
    line-height: 1;
    text-align: center;
    text-anchor: middle;
    color: #666;
    fill: #666;
}
.menu-button .burger-btn-icon .donut-ring{
    stroke: #EBEBEB;
}
.menu-button .burger-btn-icon .donut-segment{
    --circumference: 120px;
    stroke: var(--main-color);
    stroke-dasharray: calc(var(--progress, 0)*(var(--circumference, 1)/100)) calc(var(--circumference, 1) - (var(--progress, 0)*(var(--circumference, 1)/100)));
    stroke-dashoffset: calc(var(--circumference, 0)*25/100);
    transition: stroke-dasharray 0.2s ease-in-out;
}

.menu-button .burger-btn-icon .donut-text-wrapper,
.menu-button .burger-btn-icon .donut-checklist{
    transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
}
.menu-button .burger-btn-icon .donut-text-wrapper{
    transform: translate(0, 0);
}
.menu-button .burger-btn-icon .donut-checklist{
    transform: matrix(1.6,0,0,1.6,-16,-50);
    color: var(--main-color);
}
.menu-button:is(:hover, :active, :focus-visible){
    box-shadow: 0 0 8px -1px #1c1c1c;
}
.menu-button:is(:hover, :active, :focus-visible,[aria-expanded="true"]) .burger-btn-icon .donut-text-wrapper{
    transform: translate(0, 30px);
}
.menu-button:is(:hover, :active, :focus-visible,[aria-expanded="true"]) .burger-btn-icon .donut-checklist{
    transform: matrix(1.6,0,0,1.6,-16,-15);
    opacity: 1;
}
.menu-button[aria-expanded="true"]:is(:hover, :active, :focus-visible) .burger-btn-icon .donut-checklist{
    opacity: 0;
}

.menu-button .burger-btn-icon .closeIcon .close-dash{
    opacity: 0;
    transition-property: opacity, transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-in-out;
    color: var(--main-color);
}
.menu-button .burger-btn-icon .closeIcon .tl{
    transform: matrix(1, 0, 0, 1, -20, -20);
}
.menu-button .burger-btn-icon .closeIcon .tr{
    transform: matrix(1, 0, 0, 1, 20, -20);
}
.menu-button .burger-btn-icon .closeIcon .br{
    transform: matrix(1, 0, 0, 1, 20, 20);
}
.menu-button .burger-btn-icon .closeIcon .bl{
    transform: matrix(1, 0, 0, 1, -20, 20);
}

.menu-button[aria-expanded="true"]:is(:hover, :active, :focus-visible) .burger-btn-icon .closeIcon{
    opacity: 1;
}
.menu-button[aria-expanded="true"]:is(:hover, :active, :focus-visible) .burger-btn-icon .donut-checklist{
    opacity: 0;
}
.menu-button[aria-expanded="true"]:is(:hover, :active, :focus-visible) .burger-btn-icon .closeIcon .tl,
.menu-button[aria-expanded="true"]:is(:hover, :active, :focus-visible) .burger-btn-icon .closeIcon .tr,
.menu-button[aria-expanded="true"]:is(:hover, :active, :focus-visible) .burger-btn-icon .closeIcon .br,
.menu-button[aria-expanded="true"]:is(:hover, :active, :focus-visible) .burger-btn-icon .closeIcon .bl{
    opacity: 1;
    transform: matrix(1, 0, 0, 1, 0, 0);
}
.menu-button .donut-percent{
    fill: var(--main-color);
}

.app-menu{
    position: absolute;
    right: calc(var(--btnSize, 60px) / 2);
    bottom: calc(var(--btnSize, 60px) / 2);
    list-style: none;
    padding: 0;
    margin: 0;
    transition: visibility 0s linear 0.3s;
    visibility: hidden;
}
.app-menu[aria-hidden="false"]{
    transition: visibility 0s linear;
    visibility: visible;
}
.app-menu::after{
    display: block;
    content: ' ';
    width: var(--btnSize, 60px);
    height: var(--btnSize, 60px);
    position: absolute;
    top: calc(-1*var(--btnSize, 60px) / 2);
    right: calc(-1*var(--btnSize, 60px) / 2);
    border-radius: 50%;
    z-index: 2;
    /* background-color: var(--main-color); */
    transition: all .3s ease;
    opacity: 0;
}
.app-menu[aria-hidden="false"]::after{
    /* transform: scale3d(2.5, 2.5, 1); */
    opacity: 1;
    transition-timing-function: cubic-bezier(.68, 1.55, .265, 1);
}

.app-menu .menu-entry-item{
    --btnSize: 45px;
    --distance: 80px;
    position: absolute;
    right: calc(var(--btnSize, 48px) / -2);
    bottom: calc(var(--btnSize, 48px) / -2);
    z-index: 3;
    display: block;
    text-decoration: none;
    color: var(--main-color);
    font-size: 1em;
    width: var(--btnSize, 48px);
    height: var(--btnSize, 48px);
    border-radius: 50%;
    text-align: center;
    background-color: hsla(0,0%,0%,.1);
    transition: transform .3s ease, background .2s ease, color .2s ease, fill .2s ease;
    cursor: pointer;
    overflow: hidden;
}
.app-menu[aria-hidden="false"] .menu-entry-item{
    transform: translate(calc(var(--distance, 80px) * var(--xC,0)),calc(var(--distance, 80px) * var(--yC,0)));
}
.app-menu .menu-entry-item:is(:hover, :active, :focus,[aria-expanded="true"]){
    background-color: var(--main-color);
    color: white;
}

.app-menu .menu-entry-item.menu-entry-results:is(:scope, :hover, :active, :focus) .results-checlist-icon{
    opacity: 1;
    transition: opacity 0.2s ease-in-out;
}
.app-menu .menu-entry-item.menu-entry-results[aria-expanded="true"]:is(:scope, :hover, :active, :focus) .results-checlist-icon{
    opacity: 0;
}

.app-menu .menu-entry-item.menu-entry-results .close-dash{
    opacity: 0;
    transition-property: opacity, transform;
    transition-duration: 0.3s;
    transition-timing-function: ease-in-out;
    color: white;
}
.app-menu .menu-entry-item.menu-entry-results .tl{
    transform: matrix(1, 0, 0, 1, -20, -20);
}
.app-menu .menu-entry-item.menu-entry-results .tr{
    transform: matrix(1, 0, 0, 1, 20, -20);
}
.app-menu .menu-entry-item.menu-entry-results .br{
    transform: matrix(1, 0, 0, 1, 20, 20);
}
.app-menu .menu-entry-item.menu-entry-results .bl{
    transform: matrix(1, 0, 0, 1, -20, 20);
}

.app-menu .menu-entry-item.menu-entry-results[aria-expanded="true"]:is(:scope, :hover, :active, :focus) .closeIcon{
    opacity: 1;
}
.app-menu .menu-entry-item.menu-entry-results[aria-expanded="true"]:is(:scope, :hover, :active, :focus) .closeIcon .tl,
.app-menu .menu-entry-item.menu-entry-results[aria-expanded="true"]:is(:scope, :hover, :active, :focus) .closeIcon .tr,
.app-menu .menu-entry-item.menu-entry-results[aria-expanded="true"]:is(:scope, :hover, :active, :focus) .closeIcon .br,
.app-menu .menu-entry-item.menu-entry-results[aria-expanded="true"]:is(:scope, :hover, :active, :focus) .closeIcon .bl{
    opacity: 1;
    transform: matrix(1, 0, 0, 1, 0, 0);
}

.toast{
    background-color: rgb(51, 51, 51, 0.94);
    color: #fff;
    position: fixed;
    top: 0%;
    left: 50%;
    translate: -50% -100%;
    padding: 0.75rem 1rem;
    border-radius: var(--border-radius);
    font-weight: bold;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.toast.show{
    top: 20%;
    translate: -50% 0;
    opacity: 1;
}