.sign-in-button img{
    top:10px;
}
.sign-in-button{
    box-shadow: none !important;
}
.or-separator {
    font-weight: bold;
    color: #555;
    padding: 1rem;
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: center;
}

.itinerary-card{
    background:#fff;
    border-radius:16px;
    padding:24px;
    box-shadow:0 2px 12px rgba(0,0,0,0.08);
    height:100%;
}

.itinerary-title{
    font-size:22px;
    font-weight:700;
    margin-bottom:10px;
    color:#222;
}

.itinerary-date-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:12px;
}

.itinerary-date{
    font-size:15px;
    font-weight:600;
    color:#f37021;
}

.date-divider{
    color:#999;
    flex:1;
    text-align:center;
}
.itinerary-address-row{
    display:flex;
    flex-direction:column;
    align-items:start;
}
.itinerary-state-city-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
.itinerary-location{
    font-size:15px;
    color:#444;
    margin-bottom:6px;
}

.itinerary-address{
    font-size:14px;
    color:#777;
    margin-bottom:20px;
}

.activity-card{
    border:1px solid #ececec;
    border-radius:12px;
    padding:15px;
    margin-bottom:15px;
    background:#fafafa;
}

.activity-top{
    display:flex;
    justify-content:space-between;
    gap:10px;
    margin-bottom:8px;
    flex-wrap:wrap;
}

.activity-title{
    font-size:16px;
    font-weight:600;
    color:#222;
}

.activity-time{
    font-size:14px;
    font-weight:500;
    color:#f37021;
}

.activity-description{
    font-size:14px;
    color:#666;
    line-height:1.6;
}
.or-separator span {
    background: #fff;
    padding: 0 10px;
    position: relative;
    top: 0px;
}
.or-separator::before,
.or-separator::after {
    content: '';
    flex: 1;               /* make the lines stretch */
    border-bottom: 1px solid #ccc;
    margin: 0 10px;        /* space around the "OR" */
}
.forgot-password a {
    text-decoration: none;
    color: #1e9ff2; /* bootstrap primary */
}
.forgot-password a:hover {
    color: #0056b3;
}
.login-icon {
    position: absolute;
    left: 15px;
    top: 15px;
}
.capital{
    text-transform: capitalize;
}
td{
    vertical-align: middle;
}
.ticketcard{
    cursor: pointer;
    background-color: #500104;
    color: #fff;
    padding: 15px 15px;
    margin: 10px 0px;
    text-transform: capitalize;
}
.ticketcard:hover{
    background-color: #733436;
}
/* .modal-header{
    background-color: #500104;
    color: #fff;
} */
.ticketModalContent{
    background-color: #fbf2cf; 
    box-shadow: 0px 0px 10px 0px #d7cd9f;
}



.ticketcard.selected {
    background-color: #733436 !important;
    border: 2px solid #fff;
}
.pay_receipt_details{
    display: flex;
    justify-content: space-between;
}
input:disabled,
select:disabled {
    background: #fff !important;
    color: #000 !important;
    opacity: 1 !important;
    cursor: default !important;
    border: 1px solid #ccc;
}
.event_date[readonly] {
    background-color: #eceff1!important;
    color: #000 !important;
    opacity: 1 !important;          /* prevents faded look */
    border: 1px solid #ccc !important;
}
div.dataTables_length select {
    width: auto;
    display: inline-block;
}
.ticketsTable-thead th{
    background: #500104;
    color: #fff!important;
}

.req-star{
    color:#dc3545;
    font-weight:700;
}
.required-label{
    color:#dc3545!important;
    font-weight: 600;
}
#ticketReplyModal .modal-body {
    max-height: 100vh;
    overflow: hidden; /* important */
}

/* Ticket table scroll area */
.ticket-details-scroll {
    max-height: 300px;   /* adjust as needed */
    overflow-y: auto;
}
table.dataTable tbody td.dataTables_empty {
    text-align: center;
    font-weight: 500;
    color: #6c757d; /* optional */
}
.form-control{
    border-color: #cacfe7 !important;
}
.form-control:focus,
.form-control.is-invalid:focus {
    outline: none !important;
    box-shadow: none !important;
    border-color: #cacfe7 !important;
}
.td-center{
    text-align: center!important;
    vertical-align: center!important;
}
.table-responsive {
    scrollbar-width: thin;
    scrollbar-color: #500104 #f1f1f1;
}
.page-link{
    color: #500104 !important;
    border: 1px solid #500104 !important;
}
.page-item.active .page-link{
    background-color: #500104 !important;
    border-color: #500104 !important;
    color: #fff !important;
    border: 1px solid #500104 !important;
}

/* Select2 */
.select2-container--default .select2-selection--single:focus,
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-selection.is-invalid {
    outline: none !important;
    box-shadow: none !important;
    border-color: inherit !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #000 !important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b{
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #666;
}

.select2-container .select2-selection--single{
    height: 50px!important;
}
.select2-container--default .select2-selection--single .select2-selection__arrow{
    height: 50px!important;
    position: absolute!important;
    top: 1px!important;
    right: 5px!important;
    width: 30px!important;
}
.select2-selection__rendered{
    padding: 10px!important;
}
.select-wrapper select{
    min-height: 44px!important;
}
select{
    height: 44px!important;
}
.required-label-class::after{
    content:" *";
    color:#dc3545;
    font-weight:700;
}
.checkbox:disabled + .checkbox-container-label {
    cursor: default !important;
}
.download-button{
    background-color: #500104;
    color: white;
    border: none;
    border-radius: 10px;
    padding: 8px 20px;
    font-weight: 600;
    cursor: pointer;
    margin-right: 5px;
}
.reg-row{
    padding: 1rem;
}
.reg-header{
    border: 1px solid #dee2e6;
    padding: 1rem;
}
.reg-class{
    border: 1px solid #dee2e6;
    border-top:0px;
    padding: 1rem;
    color: #747688;
    font-size: 14px;
}
.event-banner{
    height: 524px;
    border-radius: 30px;
}
.readonly-checkbox {
    pointer-events: none;   /* prevents click */
    cursor: default;
}
.custom-checkbox {
    accent-color: #500104;
}
.heading{
    background-color: #500104;
    color: #fff;
    padding: 1rem; 
    border: 1px solid #e3ebf3;
    font-weight: 900;
    font-size: larger;
}
.heading-info{
    padding: 1rem; 
    border: 1px solid #e3ebf3;
    font-weight: 400;
    font-size: larger;
}
.heading-div{
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.resident-icon::before{
    color:#ff7b00!important;
    font-size: 20px;
    font-weight: 700;
}
.light{
    color:#747688;
}
.warning{
    color:#ffc107;
}
.danger{
    color:#ff0000;
}
.success{
    color:#02a002;
}