/*==========================================
* 
* Helpers CSS
* 
==========================================*/



/* Override the default bootstrap behavior where horizontal description lists 
   will truncate terms that are too long to fit in the left column 
*/
.dl-horizontal dt {
    white-space: normal;
}


.well {
}

    .well .title:first-child,
    .well h1:first-child,
    .well h2:first-child,
    .well h3:first-child,
    .well h4:first-child {
        margin-top: 0;
    }

.well-light-blue {
    background: #e6f0f0;
    border-color: #a0d0e6;
}

.icon-circle {
    background: #335092;
    border: 2px solid #335092;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    color: #fff;
    display: inline-block;
    font-size: 14px;
    height: 40px;
    width: 40px;
    line-height: 35px;
    padding: 0;
    text-align: center;
    position: absolute;
    left: 0;
}

    .icon-circle .icon,
    .icon-circle .glyphicon,
    .icon-circle .fas,
    .icon-circle .far {
        line-height: 35px;
    }

.nopadding {
    padding: 0 !important;
    margin: 0 !important;
}


/*
Colors
*/
.black {
    color: #222 !important;
}

.light-gray {
    color: #bbb !important;
}

.med-gray {
    color: #888 !important;
}

.dark-gray {
    color: #444 !important;
}

.red {
    color: #c00 !important;
}

.white {
    color: #fff !important;
}


/*
Font Sizes
*/
.small {
    font-size: 0.9em;
}

.x-small {
    font-size: 0.8em;
}

.xx-small {
    font-size: 0.7em;
}

.xxx-small {
    font-size: 0.6em;
}

.large {
    font-size: 1.25em;
}

.x-large {
    font-size: 1.5em;
}

.xx-large {
    font-size: 1.75em;
}

.xxx-large {
    font-size: 2em;
}



/*
tables
*/
.table {
}

    .table .thead-gray th {
        color: #fff;
        background-color: #888;
        border-right: 1px solid #666;
    }

    .table .actions .icon {
        color: #1070a0;
        font-size: 22px;
        margin: 0 5px;
    }

        .table .actions .icon:hover {
            color: #058;
            cursor: pointer;
        }


/*
lists
*/
ul.double-line li,
ol.double-line li {
    margin-bottom: 15px;
}

ul.single-line li,
ol.single-line li {
    margin-bottom: 0;
}


/*
row-as-table
*/
@media (min-width: 768px) {
    .row-as-table {
        display: table;
        margin-bottom: 20px;
        height: 100%;
        width: calc(100% + 30px);
    }

        /*.row-as-table .col,*/
        .row-as-table [class*="col-"] {
            float: none;
            display: table-cell;
            height: 100%;
            position: relative;
            vertical-align: top;
        }
}


/*
margins & padding
*/
.ml-5,
.ml-05 {
    margin-left: 5px;
}

.ml-10 {
    margin-left: 10px;
}

.ml-20 {
    margin-left: 20px;
}

.mt-0 {
    margin-top: 0;
}

.mt-5,
.mt-05 {
    margin-top: 5px;
}

.marginT-10,
.mt-10 {
    margin-top: 10px;
}

.marginT-20,
.mt-20 {
    margin-top: 20px;
}

.marginT-30,
.mt-30 {
    margin-top: 30px;
}

.marginT-40,
.mt-40 {
    margin-top: 40px;
}

.marginT-50,
.mt-50 {
    margin-top: 50px;
}

.mr-5,
.mr-05 {
    margin-right: 5px;
}

.mr-10 {
    margin-right: 10px;
}

.mr-20 {
    margin-right: 20px;
}

.mr-30 {
    margin-right: 30px;
}

.mr-40 {
    margin-right: 40px;
}

.mr-50 {
    margin-right: 50px;
}

.pr-0 {
    padding-right: 0px;
}

.pl-0 {
    padding-left: 0px;
}

.pt-0 {
    padding-top: 0 !important;
}

.pr-05 {
    padding-right: 5px;
}

.pr-10 {
    padding-right: 10px;
}

.pr-20 {
    padding-right: 20px;
}

.pr-30 {
    padding-right: 30px;
}

.pr-40 {
    padding-right: 40px;
}

.pr-50 {
    padding-right: 50px;
}


.mb-5,
.mb-05 {
    margin-bottom: 5px;
}

.mb-10 {
    margin-bottom: 10px;
}

.mb-20 {
    margin-bottom: 20px;
}

.mb-30 {
    margin-bottom: 30px;
}

.mb-40 {
    margin-bottom: 40px;
}

.mb-50 {
    margin-bottom: 50px;
}
/*
END: margins & padding
*/


.ui-datepicker .ui-datepicker-title select {
    color: #000;
}

.text-mid-bold {
    font-weight: 600;
}

.border-blue {
    border: 1px solid blue;
}

.border-red {
    border: 1px solid red;
}

.border-green {
    border: 1px solid green;
}

.btn-xlarge {
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 20px 30px !important;
    font-size: 22px; /*change this to your desired size*/
    line-height: normal;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
}

.wellpanel {
    /*width: 100%;
    max-width: 1024px;
    margin: 10px auto;*/
    padding: 20px 30px;
}


/*
Modal popups
*/
.modal-backdrop.in {
    filter: alpha(opacity=75);
    opacity: .75;
}

@media(min-width: 992px) {
    .modal .modal-dialog {
        width: 100%;
        max-width: 800px;
        margin: 3% auto;
    }

    #session-timeout-dialog.modal .modal-dialog {
        width: 640px !important;
    }
}

.modal button.close {
    font-size: 2em;
    right: 10px;
}

/*
.modal button.close {
    background: #09c;
    border-radius: 50%;
    color: #fff;
    display: inline-block;
    filter: alpha(opacity=100);
    opacity: 1.0;
    height: 40px;
    width: 40px;
    position: absolute;
    right: -15px;
    top: -15px;
}

.modal button.close:hover {
    background: #1ad;
    color: #fff;
    filter: alpha(opacity=100);
    opacity: 1.0;
}
*/

.modal.subject-modal {
    margin-top: 150px;
    z-index: 9999;
}



/**
* Misc
*/
.totalPractice {
    font-size: 40px;
}

.list-checkmark {
    list-style-image: url("/Content/images/rsz_checkmark.png");
}

.modal-blue {
}

    .modal-blue .modal-content {
        background: #bde;
        border: 3px solid #2080b0;
        color: #005080;
    }

        .modal-blue .modal-content .modal-header {
            border-bottom: 1px solid #acd;
        }

    .modal-blue button.close {
        color: #005080;
        filter: alpha(opacity=60);
        opacity: .6;
    }

        .modal-blue button.close:hover {
            color: #005080;
            filter: alpha(opacity=100);
            opacity: 1.0;
        }

    .modal-blue .modal-content .well {
        background: #fff;
        border-color: #2080b0;
    }

/**
* Loading spinner
*/
@keyframes spinner {
    0% {
        transform: translate3d(-50%, -50%, 0) rotate(0deg);
    }

    100% {
        transform: translate3d(-50%, -50%, 0) rotate(360deg);
    }
}

.spinner {
    height: 100px;
    opacity: 1;
    position: relative;
    transition: opacity linear 0.1s;
}

    .spinner::before {
        animation: 2s linear infinite spinner;
        border: solid 5px #eee;
        border-bottom-color: #999;
        border-radius: 50%;
        content: "";
        height: 45px;
        left: 50%;
        opacity: inherit;
        position: absolute;
        top: 50%;
        transform: translate3d(-50%, -50%, 0);
        transform-origin: center;
        width: 45px;
        will-change: transform;
    }
/*
END: Loading spinner
*/


/**
* Loading message
*/
#loading {
    position: fixed;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 1000;
    /*display: block !important;*/
}

    #loading .loading-backdrop {
        position: absolute;
        left: 0;
        top: 0;
        z-index: 1001;
        background: #000;
        display: block;
        filter: alpha(opacity=60);
        opacity: 0.60;
        height: 100%;
        width: 100%;
    }

    #loading .loading-content {
        position: absolute;
        left: calc(50% - 200px);
        top: calc(50% - 200px);
        z-index: 1002;
        background: #fff;
        border: 4px solid #ddd;
        -moz-border-radius: 12px;
        -webkit-border-radius: 12px;
        border-radius: 12px;
        padding: 30px;
        text-align: center;
        width: 400px;
        /* drop shadow */
        -webkit-box-shadow: 4px 4px 16px 0px rgba(0,0,0,0.65);
        -moz-box-shadow: 4px 4px 16px 0px rgba(0,0,0,0.65);
        box-shadow: 4px 4px 16px 0px rgba(0,0,0,0.65);
    }

@media(max-height: 740px) {
    #loading .loading-content {
        top: 25%;
    }
}

#loading .loading-content .spinner {
}

#loading .loading-content .message {
    font-size: 1.15em;
}
/*
END: Loading message
*/




/* 
* Video Container (Responsive)
-----------------------------------*/
.video-container {
    height: 0;
    margin: 0 0 20px 0;
    overflow: hidden;
    position: relative;
    padding-bottom: 58%;
    padding-top: 0;
}

    .video-container iframe,
    .video-container object,
    .video-container embed {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
