﻿/* Authority Theme */
:root {
    --global-font: 'Open Sans', sans-serif;
    --cui-primary: #fdcd02; /* Custom primary color override */
    --cui-primary-rgb: 253, 205, 2;
}

/* --------------- */

body {
    font-family: var(--global-font);
}

.wrapper {
    width: 100%;
    padding-left: var(--cui-sidebar-occupy-start, 0);
    padding-right: var(--cui-sidebar-occupy-end, 0);
    will-change: auto;
    transition: padding 0.15s;
}

@media (prefers-reduced-motion: reduce) {
    .wrapper {
        transition: none;
    }
}

.header > .container-fluid, .header > .container-sm, .header > .container-md, .header > .container-lg, .header > .container-xl, .header > .container-xxl,
.sidebar-header {
    min-height: calc(4rem + 1px);
}

.copyright-text {
    font-size: 0.9rem;
}

.logo-full {
    display: flex;
    align-items: center;
    gap: 8px;
}

.card-body {
    min-height: 210px;
}

.img-align-centre {
    display: block;
    margin: auto;
    width: 50%;
}

.fs-7 {
    font-size: 0.8rem !important;
}

.font-weight-bold {
    font-weight: bold;
}

.hidden {
    display: none;
}

.text-decoration-none {
    text-decoration: none !important;
}

.text-color-red {
    color: red;
}

.text-color-black {
    color: black;
}

.text-align-left {
    text-align: left;
}

.text-align-right {
    text-align: right;
}

.text-align-center {
    text-align: center;
}

.text-aling-justify {
    text-align: justify;
}

.text-font-9 {
    font-size: 9px;
}

.text-font-11 {
    font-size: 11px;
}

.text-font-12 {
    font-size: 12px;
}

.text-font-14 {
    font-size: 14px;
}

.text-line-height-18 {
    line-height: 18px;
}

.text-left {
    float: left;
}

.text-right {
    float: right;
}

.btn-block {
    display: block;
    width: 100%;
}

.image-upload > input {
    display: none;
}

/* ==== GENERAL STUFF ==============================
     ==================================================*/

.sign-up {
    font-weight: 600 !important;
    color: darkgray !important;
}

    .sign-up:hover {
        text-decoration: none !important;
        color: black !important;
    }


.inline-block {
    display: inline-block;
}

.border-bottom {
    border-bottom: 1px solid #CCC;
    margin-bottom: 15px;
}

.border-top {
    border-top: 1px solid #CCC;
}

.form-label {
    text-align: right;
}

.forgot-password {
    display: block;
    font-size: 14px;
    padding-bottom: 10px;
}

.field-validation-error {
    display: block;
    margin: 0 0 1em 0;
    padding: 0.625em 0;
    font-size: .875em;
    color: red;
}

img {
    vertical-align: middle;
    max-width: 100%;
    height: auto;
}
.creditcardimages {
    height: 40px;
    width: auto;
    margin-bottom: 5px;
}

.left {
    float: left !important;
}

.right {
    float: right !important;
}

.flex-justify-space-between {
    display: flex;
    justify-content: space-between;
}

.col-gap {
    flex-direction: column;
    display: flex;
    gap: 6px;
}

.border-circle {
    border-radius: 50%;
}

.border-white {
    border-color: #ffffff;
}

.btn-grey {
    background-color: #4A4A4A;
    color: #ffffff;
    text-decoration: none;
}

    .btn-grey:hover {
        background-color: #fff;
        color: #4A4A4A;
        border-color: #4A4A4A;
        font-weight: bolder;
    }

.bg-gradient-black {
    background-color: #000000;
    /*background-image: linear-gradient(180deg, #272727 10%, #000000 100%);*/
    background-size: cover;
}

.btn-black {
    background-color: #000000;
    color: #ffffff;
    text-decoration: none;
}

    .btn-black:hover {
        background-color: #fff;
        color: #000;
        border-color: #000;
        font-weight: bolder;
    }

.stripe-checkout-btn {
    background-color: #556CD6;
    font-weight: bold;
    color: #FFF;
    border: none;
    border-radius: 5px;
}

    .stripe-checkout-btn:hover {
        background-color: #4C68E7;
    }

/*General mobile view change goes here*/
@media only screen and (max-width: 64.0625em) {
    table {
        font-size: .875rem;
    }
}

/* ==== EVENT INDEX PAGE ==============================
     ==================================================*/
.event-row {
    margin-bottom: 30px !important;
    border: solid 1px #c6c6c6;
}

.event-info {
    height: 100%;
    color: black;
    padding: 5px 5px 7px 5px;
}

.row-relative {
    position: relative;
}

.event-info-button-container {
    position: relative;
    padding: 0 5px 0 5px;
    height: 100%;
}

.barcode {
    width: 100%;
    margin: 0 0 1.5rem;
    padding: 0 20px 0 20px;
}

.event-title {
    height: auto;
    font-size: 1.5em;
}


@media only screen and (min-width: 64.0625em) {
    .event-info-button-container .button {
        margin-bottom: 5px;
    }

    .stick-to-bottom {
        position: absolute !important;
        bottom: 0px;
    }
}

.event-index-banner {
    width: 100%;
    padding: 5px 5px 10px 5px;
}

.event-banner {
    width: 100%;
}

.event-reg-container {
    box-shadow: 0 0 10px 5px #c6c6c6;
    padding-bottom: 25px;
    margin-bottom: 100px;
}

@media only screen and (min-width: 767px) {
    .event-submit-button {
        margin-top: -30px;
        margin-bottom: -15px;
    }
}

a.event-alert-box-link {
    color: inherit;
    text-decoration: none;
}

.event-alert-positive {
    border-right: solid 0.5em green !important;
    border-left: solid 0.5em green !important;
    border-color: green;
}

.event-alert-negative {
    border-right: solid 0.5em red !important;
    border-left: solid 0.5em red !important;
    border-color: red;
}

.red {
    color: red
}

.green {
    color: green
}

/* Mobile styles */
@media (max-width: 767px) {
    [data-hide="phone"] {
        display: none;
    }

    .toggle-column {
        cursor: pointer;
        color: #0066cc;
        font-weight: bold;
    }

    .detail-row {
        background-color: #f9f9f9;
    }

    .detail-container {
        padding: 10px 10px 10px 10px;
    }

    .detail-item {
        display: flex;
        margin-bottom: 8px;
    }

    .detail-name {
        font-weight: bold;
        min-width: 150px;
    }

    .detail-value {
        flex: 1;
    }
}

/* Desktop styles */
@media (min-width: 768px) {
    .detail-row {
        display: none !important;
    }

    .toggle-column {
        cursor: default;
        color: inherit;
        font-weight: normal;
    }

        .toggle-column::after {
            content: none !important;
        }
}