﻿@media (max-width: 1000px) {
    body {
        background-color: #e4edf6;
    }

    .body-container {
        margin-top: 10px;
        padding-bottom: 40px;
        padding-right: 0px;
        padding-left: 0px;
        background-color: #e4edf6;
    }

    .page-container {
        display: flex;
        flex-direction: column;
        margin-top: -10px;
    }

    .pageheader-container {
        padding: 0.6em;
        display: flex;
        flex-direction: column;
        background-color: #1268b3;
    }

    .page-error-container {
        display: flex;
        flex-direction: column;
        background-color: #FE4D57;
        padding-top: 1em;
        padding-bottom: 0.5em;
        justify-content: center;
        position: relative;
        overflow: hidden;
    }

    .page-success-container {
        display: flex;
        flex-direction: column;
        background-color: #00B5A2;
        padding-top: 1em;
        padding-bottom: 0.5em;
        justify-content: center;
        position: relative;
        overflow: hidden;
    }

    .background-logo {
        position: absolute;
        top: -61px;
        left: -71px;
        /*transform: translateY(-50%);*/
        /*width: 100px;*/
        /*height: 100px;*/
        /*background-image: url('/white-sc-logo.png');*/
        /*background-repeat: no-repeat;*/
        /*background-size: contain;*/
        /*background-position: left center;*/
        opacity: 0.05;
        pointer-events: none;
        z-index: 0;
    }

    .background-img {
        height: 200px;
        object-fit: contain;
    }

    .pageheader-container-height {
        height: 100px;
    }

    .pageheader-text {
        color: white;
        font-size: 2.20rem;
    }

    .pagecontent-container {
        border-top-left-radius: 1.0em;
        border-top-right-radius: 1.0em;
        margin-top: -0.6em;
        z-index: 1;
    }
    .pagecontent-headers-adjust-x2 {
        margin-top: -3.6em;
    }
    .pagecontent-headers-adjust-x1 {
        margin-top: -2.1em;
        /*margin-top: -1.8em;*/
    }

    .headers-adjust-visible {
        margin-top: -0.6em;
        /*margin-top: -1.8em;*/
    }

    .pagecontent-success-header-adjust {
        /*margin-top: -2.1em;*/
        margin-top: -1.5em;
    }

    .success-filler {
        fill: #ffffff;
    }

    .sc_btn {
        background-color: #F37029;
        border: none;
        border-radius: 1.5rem;
    }

    .sc_btn {
        background-color: #F37029;
        border: none;
        border-radius: 1.5rem;
    }
}

@media (min-width: 1000px) {
    .success-filler {
        fill: #000000;
        stroke: #000000;
    }
}

.red-border {
    border: 1px solid red;
}

.grey-border {
    border: 1px solid grey;
}

.w-85 {
    width: 85% !important;
}

.stepper-content {
    position: relative;
}

ol.stepper {
    --default-line: white; /*lightgrey*/
    --default-b: white; /*#1268B3;*/ /*lightgrey;*/
    --default-c: #1268B3; /*white;*/ /*black;*/
    --active-line: #A990DD;
    --active-b: #1268B3; /*white;*/ /*purple;*/
    --active-c: white; /*#1268B3;*/ /*white;*/
    --circle: 1.75em; /* size of circle */
    --circle-border-b: white;
    --circle-border-c: #1268B3;
    --circle-border-w: 2px; /* circle border thickness*/
    --b: 3px; /* line thickness */
    --txt: black; /*white;*/ /*purple;*/

    display: flex;
    list-style: none;
    justify-content: space-between;
    background: linear-gradient(var(--default-line) 0 0) no-repeat 50% calc((var(--circle)))/95% var(--b);
    /*background: linear-gradient(var(--default-line) 0 0) no-repeat 50% calc((var(--circle) - var(--b)))/95% var(--b);*/
    counter-reset: step;
    margin: 5px;
    padding: 0;
    font-size: 12px;
    font-weight: bold;
    overflow: hidden;
}

ol.stepper li {
    display: grid;
    place-items: center;
    gap: 5px;
    position: relative;
}

/*Circle*/
ol.stepper li::before {
    content: counter(step) " ";
    counter-increment: step;
    display: grid;
    place-content: center;
    aspect-ratio: 1;
    height: var(--circle);
    border: var(--circle-border-w) solid var(--circle-border-b) !important;
    box-sizing: border-box;
    background: var(--active-b) !important;
    color: var(--active-c) !important;
    border-radius: 50%;
    font-family: monospace;
    font-size: 22px;
    z-index: 1;
}

ol.stepper li.active ~ li::before {
    background: var(--default-b) !important;
    color: var(--default-c) !important;
    border: var(--circle-border-w) solid var(--circle-border-c) !important;
}

/*Active line*/
ol.stepper li.active::after {
    content: "";
    position: absolute;
    height: var(--b);
    right: 50%;
    top: calc((var(--circle) - var(--b)));
    width: 100vw;
    background: var(--active-line) !important;
}

.items-left {
    place-items: start !important;
}

.button-container {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    width: 100%;
}

.button-container button {
    flex: 1;
    max-width: 48%;
}

.selfie-image-container {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}

.selfie-image {
    width: 300px;
    height: 240px;
}

.img-div {
    max-width: 100%;
    height: 100%;
}

.selfie-table {
    width: 100%;
}

.video-outer-container {
    /*top: 100px;*/
    /*left: 0;*/
    width: 101vw;
    height: 100%;
    margin-top: -2.9em;
    margin-left: -1.3em;
}

.video-inner-container {
    /*width: 100%;*/
    /*height: 100vw;*/
    position: relative;
    display: inline-block;

    /*border: 1px solid blue;*/
}

.video-stream-container {
    position: relative;
    width: 100%;
    max-width: 640px;
    display: inline-block;
    place-items: center;
    /*border: 1px solid green;*/
}

#div_selfie_snap_video {
    width: 100%;
    max-width: 640px;
    height: auto;
    max-height: 65vh;
    border-top-left-radius: 1.0em;
    border-top-right-radius: 1.0em;
}

#div_selfie_snap_canvas {
    display: none;
}

.centered_container {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.centered_tablecell {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    vertical-align: middle;
    justify-content: center;
    position: relative;
    height: 100%;
}

.tablecell {
    display: flex;
    flex-direction: row;
    vertical-align: middle;
    justify-content: center;
    position: relative;
    height: 100%;
}

.errorhr {
    width: 90%;
    height: 2px;
    border: none;
    background-color: black;
    display: block;
}

.text-xsmall {
    font-size: 10px;
}

.text-small {
    font-size: 12px;
}

.text-medium {
    font-size: 14px;
}

.text-large {
    font-size: 18px;
}

.centered-2x2-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    justify-items: center;
    text-align: center;
}

.grid-cell {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.selfie-overlay {
    position: absolute;
    top: calc(50% + 60px);
    left: 50%;
    transform: translate(-50%, -50%);
    width: 875px;
    height: 875px;
    max-height: 145vw;
    background-image: url('../selfie-overlay.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    pointer-events: none;
}

.rectangle-overlay {
    position: absolute;
    width: 70px;
    height: 5px;
    background-color: red;
    left: 50%;
    transform: translateX(-50%);
    top: 40%;
}

.busy-container {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    margin-bottom: 0px;
}

.locked-container {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    /*width: 100%;*/
    padding: 0.5em;
}

.error-border {
    border: 1px solid #FE4D57;
    border-radius: 20px;
}

.fs-20 {
    font-size: 20px !important;
}

.busy-image {
    width: 50px;
    height: 50px;
    margin-bottom: 10px;
}

.zi-10 {
    z-index: 10;
}

.error-msg {
    color: red;
}

.centre-text {
    text-align: center;
}