$font-family: "Noto Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
$font-white: #fff;
$font-white-50: rgb(255 255 255 / 50%);
$font-white-75: rgb(255 255 255 / 75%);
$font-black: #222;
$black: #000;
$main-text-color: #fff;
$color-danger : #dc3545!important;
$yellow: #fde501;
$yellow-orange: #FFD24F;
$transition : .3s ease !important;
$main-color: #3ab49a;
$main-color-50: #3ab49aaa;
$main-color-00: #3ab49a00;
$main-text-color: #fff;

// main ui stuff
#bingo_status_container {
    padding: 10px 20px;
}

.card_status {
    display: inline-grid;
    grid-template-columns: 33% 33% 33%;
    width: 100%;
    height: 50px;
    border: 1px solid #666;
    margin-top: 5px;
    font-size: 0.8em;
}

.card_placeholder {
    display: inline-block;
    width: 100%;
    height: 50px;
    border: 1px dotted #e9e9e9;
    margin-top: 5px;
}

.card_status_img {
    grid-column-start: 1;
    grid-column: 1;
    background-color: #FFFFFF;
    //background-image: url(https://msr.skale.today/assets/images/afp/stampcard/MSR_masthead.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.card_status.completed .card_status_details {
    grid-column: 1;
    grid-column-start: 2;
    text-align: center;
    height: 50px;
    line-height: 50px;
}

.card_status.incomplete .card_status_details {
    grid-column: 2;
    grid-column-start: 2;
    grid-column-end: 4;
    text-align: center;
    height: 50px;
    line-height: 50px;
    cursor: pointer;
}

.card_status_details span {
    vertical-align: middle;
}

.card_status_buttons {
    grid-column: 1;
    grid-column-start: 3;
    text-align: center;
}

.card_status_buttons button {
    width: 80%;
    height: 80%;
    border-radius: 5px;
    background-color: #144F89;
    color: #FFFFFF;
    border: none;
    font-weight: bold;
    height: 40px;
    margin: 5px auto;
}

.card_status_buttons.redeemed {
    text-align: center;
    height: 50px;
    line-height: 50px;
}

.rewards_container {
    text-align: center;
}

span.rewards_icon {
    font-size: 3em;
}

.rewards_full {
    display: inline-block;
    width: 80%;
    text-align: center;
    vertical-align: top;
    font-size: 0.8em;
}

.rewards_half {
    display: inline-block;
    width: 45%;
    text-align: center;
    vertical-align: top;
    font-size: 0.8em;
}


// Grid status home page

#card_box_default {
    display:none;
}

#bingo_card {
    width: 80vw;
    max-width: 400px;
    text-align: center;
    line-height: calc(300% / 3);
    margin: 10px auto;
    display: grid;
    grid-column-gap: 2.5%;
    grid-row-gap: 2.5%;
    &.theme-grid{
        display: grid;
        grid-column-gap: 2.5%;
        grid-row-gap: 2.5%;

        .card_box {
            position:relative;
            flex-direction: column;
        }
    }
    &.theme-map{
        display: block;
        grid-column-gap: unset;
        grid-row-gap: unset;
        position: relative;

        .card_box {
            position:absolute;
            transform: translate(-50%, -50%);
            top:0;
            left:0;
            width: 75px;
            height: 75px;
        }
    }
}


.card_box {
    display: flex;
    justify-content: center;
    align-items: center;

    &:focus .card-inner,
    &:hover .card-inner {
        transform: translate(1px, 1px);
    }
    &.disabled {
        opacity: 1; // or 0.2 to fade out
    }

    .card-inner{
        cursor: pointer;
        width: 100%;
        height: 100%;
        border-radius: 15%;
        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-size: contain;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin: 0 auto;

        &.status {
            background: transparent;
        }

        * {
            display: block;
            //margin: 0 5px;
        }
        p {
            display: none;
            font-size: .65rem;
            line-height: 1.2;
            margin-top:5px;
            @media screen and (max-width: 420px) {
                font-size: 2.3vw;
            }

        }
        img {
            width: 100%;
            height: 100%;
            object-fit: contain;
        }

    }


}


.btn-refresh {
    margin: 0 auto;
    display: inline-block;
    text-align: center;
    font-size: .75rem;
    color: white;
    background: black;
    padding: 8px 14px;
    border-radius: 20px;
    box-shadow: 3px 3px 3px rgb(0 0 0 / 30%);
    font-weight: bold;
    transition: .3s;

    &:hover {
        box-shadow: 1px 1px 3px rgb(0 0 0 / 30%);

        i {
            // transform: rotate(360deg);
            -webkit-animation: spin .3s ease;
            -moz-animation: spin .3s ease;
            animation: spin .3s ease;
        }
    }

    //i {
    //    transition: $transition;
    //}

    &.refreshing {
        box-shadow: none;
        background: rgba(0, 0, 0, 0.25);

        i {
            -webkit-animation: spin .3s ease infinite;
            -moz-animation: spin .3s ease infinite;
            animation: spin .3s ease infinite;
        }
    }

    @-moz-keyframes spin {
        100% {
            -moz-transform: rotate(360deg);
        }
    }
    @-webkit-keyframes spin {
        100% {
            -webkit-transform: rotate(360deg);
        }
    }
    @keyframes spin {
        100% {
            -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
        }
    }
}

.grid_status {
    background: #F2F2F2;
    border-radius: 20px;
    width: 90vw;
    max-width: 400px;
    margin: 25px auto;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: $black;
    padding: 10px 0 15px;
    line-height: 1.25;
    .title {
        color: $black;
        font-weight: 800;

    }
    .icon {
        width: 15%;
        text-align: center;
        margin-right: 5%;
        img {
            width: 100%;
        }
    }
    .content {
        width: 80%;
        text-align: left;
        font-size: 0.75rem;
        & > * {
            margin: 5px auto;
        }
        & > *:first-child {
            margin-top: 0;
        }
        & > *:last-child {
            margin-bottom: 0;
        }
    }
    ul {
        padding-left: 15px;
    }
    .header {
        font-size: .8rem;

    }
    p.sub_header {
        color: #808080;
        font-weight: 700;
    }
}

.grid_status_row {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: start;
    width: 90%;
    margin: 10px auto;

}



// progress bar
.step-item{
    height:2rem;
    width:2rem;
    position:relative;
    margin-right:1rem;
    .step-ico{
        width: 2rem;
        height: 2rem;
        position: relative;
        border-radius: 998px;

        &.btn-primary{
            &:hover, &:active, &:focus, &:target{
                opacity: 1 !important;
            }
        }

        i.fas{
            position:absolute;
            left:50%;
            top:50%;
            transform:translate(-50%,-50%);
        }

        img {
            height: 90%;
            width: 90%;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
        }
    }


    .step-txt{
        text-align:center;
        display:inline-block;
        margin:4px auto 0;
        overflow: visible;
        height: 10px;
        position: absolute;
        left: 50%;
        bottom: -1rem;
        transform: translateX(-50%);
    }
}
