/* ==============================================================================Override Css============================================================================= */
@media (max-width: 991px) {
  .lg-w-100 {
    width: 100% !important;
  }
}

@media (max-width: 768px) {
    .text-mobile-center {
      text-align: center !important;
    }
  
    .width-100 {
      width: 100% !important;
    }
}
.auth-bg-cover>.bg-overlay { 
  background-image: url('/tourist_village_system/static/src/img/sea_view.jpg');
  background-position: center;
  background-size: cover;
  opacity: 0.2;
  background-color: transparent;
}

body {
  font-family: 'Cairo', sans-serif !important;
}

strong {
  font-weight: 700 !important
}
th {
  font-weight: 700 !important
}
.nav-link {
  color: #45cb85;
  font-family: 'Cairo', sans-serif !important;
}
.nav-link:focus, .nav-link:hover {
  color: #45cb85;
}
.footer-social-link .list-inline-item a:hover {
  color: #45cb85;
}

.form-control, .select2-selection, .form-select, .choices__inner {
  border: 0 !important;
  background-color: rgba(243,246,249) !important;
}

.select2-container .select2-selection--multiple {
  border: 0 !important;
}

.form-label {
  font-size: 16px !important;
  font-weight: 600 !important;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Cairo', sans-serif !important;
  color: #000 !important;
}

.ff-secondary {
  font-family: 'Cairo', sans-serif !important;
}

#back-to-top {
  bottom: 80px !important
}
.modal-header{
  border-radius: 0 !important;
}

.o_auth_oauth_providers {
  text-align: center !important;
}

.alert {
  border: 0 !important;
}

.search_rooms_modal_form .choices .choices__inner{
  background: rgba(243,246,249);
  border: rgba(243,246,249);
}

.ribbon-box .ribbon-shape {
  padding: 12px 12px !important;
  top: 15px !important;
}

.swal2-styled.swal2-confirm {
  background-color: #45cb85;
  border-color: #45cb85;
}

.nav-pills .nav-link-success.active,
.nav-pills .show>.nav-link-success {
  color: #fff !important;
  background-color: #45cb85 !important;
}

.custom-verti-nav-pills .nav-link-success.active::before {
  border-left-color: #45cb85;
}

/* .nav-link:focus, .nav-link:hover{
  color: #45cb85;
} */

.nav-pills .nav-link-warning.active,
.nav-pills .show>.nav-link-warning {
  color: #fff !important;
  background-color: #FFBC0A !important;
}

.custom-verti-nav-pills .nav-link-warning.active::before {
  border-left-color: #FFBC0A !important;
}

.nav-pills .nav-link-primary.active,
.nav-pills .show>.nav-link-primary {
  color: #fff !important;
  background-color: #25a0e2 !important;
}

.custom-verti-nav-pills .nav-link-primary.active::before {
  border-left-color: #25a0e2 !important;
}

.nav-pills .nav-link-secondary.active,
.nav-pills .show>.nav-link-secondary {
  color: #fff !important;
  background-color: #878a99 !important;
}

.custom-verti-nav-pills .nav-link-secondary.active::before {
  border-left-color: #878a99 !important;
}

.nav-pills .nav-link-danger.active,
.nav-pills .show>.nav-link-danger {
  color: #fff !important;
  background-color: #f06548 !important;
}

.custom-verti-nav-pills .nav-link-danger.active::before {
  border-left-color: #f06548 !important;
}

.progress-nav .nav .nav-link.active,
.progress-nav .nav .nav-link.done {
  background-color: #45cb85 !important;
}

.form-check-input:checked {
  border-color: #45cb85 !important;
  background-color: #45cb85 !important;
}

form-check-input:checked[type=checkbox] {
  border-color: #45cb85 !important;
  background-color: #45cb85 !important;
}

.form-select:focus {
    border-color: #45cb85;
}

.timeline-box {
  width: calc(100% - 62px) !important; 
  max-width: calc(100% - 62px) !important; 
  padding: 0 !important;
  margin-right: 0 !important;
  }

.timeline-2 .timeline-year p {
  color: #ffffff !important;
  font-weight: bold !important;
}
.timeline-2 .timeline-year p.drafts {
  background-color: #45cb85 !important;
}
.timeline-2 .timeline-year p.confirms {
  background-color: #FFBC0A !important;
}
.timeline-2 .timeline-year p.dones {
  background-color: #25a0e2 !important;
}
.timeline-2 .timeline-year p.delivers {
  background-color: #878a99 !important;
}
.timeline-2 .timeline-year p.cancels {
  background-color: #f06548 !important;
}
.timeline-2 .date-confirm::after {
  background-color: #FFBC0A !important;
}
.timeline-2 .date-done::after {
  background-color: #25a0e2 !important;
}
.timeline-2 .date-deliver::after {
  background-color: #878a99 !important;
}
.timeline-2 .date-cancel::after {
  background-color: #f06548 !important;
}

/* It Belongs to slect all button */
.form-switch-custom .form-check-input::before {
  content: "\f0765";
  font-family: "Material Design Icons";
  top: -9px;
  position: absolute;
  font-size: 29px;
  left: -3px;
  color: #878a99;
  -webkit-transition: background-position 0.15s ease-in-out;
  transition: background-position 0.15s ease-in-out;
}

#pricing_select_all_rooms {
  width: 45px;
  height: 25px;
  margin-top: 38px;
  transform: rotate(90deg);
  margin-left: auto;
}

.form-switch-lg #is_village_package_input_edit,  .form-switch-lg #is_village_package_input  {
  width: 48px;
  height: 24px;
  left: 38px;
  top: 36px;
  position: relative;
}
.bg-room-background {
  background-image: url("/tourist_village_system/static/minimal/assets/images/demos/car4.jpg");
  background-color: transparent;
  background-position: center;
  background-size: cover;
  opacity: 1;
}

.step-arrow-nav .nav .nav-item-all-room.active,
.step-arrow-nav .nav .nav-item-available-room.active {
  color: #ffffff !important;
  background-color: #45cb85 !important;
}

.step-arrow-nav .nav .nav-item-inhouse-room.active {
  color: #ffffff !important;
  background-color: #25a0e2 !important;
}

.step-arrow-nav .nav .nav-item-approved-room.active {
  color: #ffffff !important;
  background-color: #FFBC0A !important;
}

.step-arrow-nav .nav .nav-item-checkout-room.active {
  color: #ffffff !important;
  background-color: #f06548 !important;
}

.step-arrow-nav .nav .nav-item-latecheckout-room.active {
  color: #ffffff !important;
  background-color: #ff0000 !important;
}

.village_all_rooms .nav-link.active,
.village_all_rooms .show>.nav-link {
  background-color: #45cb85 !important;
}

.village_all_rooms .inhouse_filter_btn.active,
.village_all_rooms .show>.inhouse_filter_btn {
  background-color: #25a0e2 !important;
}

.village_all_rooms .approved_filter_btn.active,
.village_all_rooms .show>.approved_filter_btn {
  background-color: #FFBC0A !important;
}

.village_all_rooms .checkout_filter_btn.active,
.village_all_rooms .show>.checkout_filter_btn {
  background-color: #f06548 !important;
}

.village_all_rooms .latecheckout_filter_btn.active,
.village_all_rooms .show>.latecheckout_filter_btn {
  background-color: #ff0000 !important;
}

.btn.disabled,
.btn:disabled,
fieldset:disabled .btn {
  cursor: not-allowed;
}

.highlight {
  background-color: yellow;
  font-weight: bold;
}

.custom-popup {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9999;
}

.o_login_auth em {
  display: none !important;
}

.btn-group>.btn-check:checked+.btn {
  z-index: 0;
}

.btn-ghost-secondary:active, .btn-ghost-secondary:focus, .btn-ghost-secondary:hover {
  color: #45cb85!important;
  background-color: rgba(69,203,133,.18)!important;
  border-color: transparent!important;
}
.profile-wid-bg::before {
  background: linear-gradient(to top,#221a52,#45cb85);
}
.form-control:focus {
  border-color: #45cb85 !important;
}
a {
  color: #45cb85;
}
a:hover {
  color: #45cb85;
}
a.linked-room:hover {
  color: #45cb85 !important;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #45cb85;
}
.select2-container .select2-selection--multiple .select2-selection__choice {
  background-color: #45cb85;
}
.auth-bg-cover {
  background: linear-gradient(-45deg,#009688 50%,#198754);
}
.auth-one-bg {
  background: url("/tourist_village_system/static/minimal/assets/images/demos/car4.jpg");
  background-position: center;
  background-size: cover;
}
.auth-one-bg .bg-overlay {
  background: linear-gradient(to right,#41319c,#45CB85);
  opacity: .5;
}

.select2-container .select2-selection--multiple .select2-selection__choice__remove:hover {
  background-color: #45cb85;
}

.ctext-wrap-content {
  background-color: #45cb85 !important;
}

.ctext-wrap-content p {
  margin-bottom: 0 !important;
}

/* contact-us odoo */
#contact-us-id #wrapwrap {
  overflow: hidden !important;
}

#contact-us-id footer#bottom {
  display: none !important;
}

#contact-us-id header#top nav{
  display: none !important;
}

/* .btn:first-child:hover, :not(.btn-check)+.btn:hover {
  color: #fff;
  background-color: #45cb85 !important;
  border-color: #45cb85 !important;
} */

/* =============================================================================Rooms Status===================================================================== */
  /*Checked In Status=================== */
  .card-border-primary {
    border-color: #25a0e2 !important
  }
  
  .card-border-primary .card-footer,
  .card-border-primary .card-header {
    border-color: #25a0e2
  }
  .checked_in_rooms .colored_icon_change {
    background-color: #25a0e2 !important;
    border-color: #25a0e2 !important;
  }
  
  .checked_in_rooms .colored_check_change:checked {
    background-color: #25a0e2 !important;
    border-color: #25a0e2 !important;
  }
  
  .checked_in_rooms .colored_text_change_collapse:not(.collapsed) {
    background-color: rgba(37, 160, 226, 0.1) !important;
    border-color: rgba(37, 160, 226, 0.1) !important;
    color: #25a0e2 !important;
  }
  
  .checked_in_rooms .colored_soft_head_change {
    background-color: rgba(37, 160, 226, 0.1) !important;
    border-color: rgba(37, 160, 226, 0.1) !important;
  }
  
  .checked_in_rooms .colored_soft_btn_change {
    color: #25a0e2 !important;
    background-color: rgba(37, 160, 226, 0.1) !important;
    border-color: transparent !important;
  }
  
  .checked_in_rooms .colored_text_change {
    color: #25a0e2 !important;
  }
  
  .checked_in_rooms .colored_btn_change {
    color: white !important;
    background-color: #25a0e2 !important;
    border-color: #25a0e2 !important;
  }
  
  /*Approved Status======================= */
  .approved_rooms .colored_text_change_collapse:not(.collapsed) {
    border-color: rgba(255, 188, 10, 0.18) !important;
    background-color: rgba(255, 188, 10, 0.18) !important;
    color: #ffbc0a !important;
  }
  .approved_rooms .colored_icon_change {
    background-color: #ffbc0a !important;
    border-color: #ffbc0a !important;
  }
  
  .approved_rooms .colored_check_change:checked {
    background-color: #ffbc0a !important;
    border-color: #ffbc0a !important;
  }
  
  .approved_rooms .colored_soft_head_change {
    background-color: rgba(255, 188, 10, 0.18) !important;
    border-color: rgba(255, 188, 10, 0.18) !important;
  }
  
  .approved_rooms .colored_soft_btn_change {
    color: #ffbc0a !important;
    background-color: rgba(255, 188, 10, 0.18) !important;
    border-color: transparent !important;
  }
  
  .approved_rooms .colored_text_change {
    color: #ffbc0a !important;
  }
  
  .approved_rooms .colored_btn_change {
    color: white !important;
    background-color: #ffbc0a !important;
    border-color: #ffbc0a !important;
  }
  
  
  /*Checked Out Status================= */
  .checked_out_rooms .colored_text_change_collapse:not(.collapsed),
  .late_check_out .colored_text_change_collapse:not(.collapsed) {
    background-color: rgba(240, 101, 72, 0.1) !important;
    border-color: rgba(240, 101, 72, 0.1) !important;
    color: #f06548 !important;
  }
  
  .checked_out_rooms .colored_icon_change {
    background-color: #f06548 !important;
    border-color: #f06548 !important;
  }
  
  .checked_out_rooms .colored_check_change:checked {
    background-color: #f06548 !important;
    border-color: #f06548 !important;
  }
  
  .checked_out_rooms .colored_soft_head_change {
    background-color: #fde8e4 !important;
    border-color: #fde8e4 !important;
  }
  
  .checked_out_rooms .colored_soft_btn_change {
    color: #b44c36 !important;
    background-color: rgba(240, 101, 72, 0.1) !important;
    border-color: transparent !important;
  }
  
  .checked_out_rooms .colored_text_change {
    color: #f06548 !important;
  }
  
  .checked_out_rooms .colored_btn_change {
    color: white !important;
    background-color: #f06548 !important;
    border-color: #f06548 !important;
  }
  
  /*===================== Late Checked Out Status ==========================*/
  .card-border-tally, .card-border-tally .card-footer, .card-border-tally .card-header {
    border-color: red !important;
  }
  .room_late_check_out .colored_text_change_collapse:not(.collapsed),
  .room_late_check_out .colored_text_change_collapse:not(.collapsed) {
    background-color: #ffafaf !important;
    border-color: #ffafaf !important;
    color: red!important;
  }
  
  .room_late_check_out .colored_icon_change, .late_check_out .colored_icon_change {
    background-color: red!important;
    border-color: red!important;
  }
  
  .room_late_check_out .colored_check_change:checked, .late_check_out .colored_check_change:checked {
    background-color: red!important;
    border-color: red!important;
  }
  
  .room_late_check_out .colored_soft_head_change, .late_check_out .colored_soft_head_change {
    background-color: #ffafaf !important;
    border-color: red!important;
  }
  
  .room_late_check_out .colored_soft_btn_change {
    color: red!important;
    background-color: #ff9e9e !important;
    border-color: transparent !important;
  }
  
  .room_late_check_out .colored_text_change {
    color: red!important;
  }
  
  .room_late_check_out .colored_btn_change {
    color: white !important;
    background-color: red!important;
    border-color: red!important;
  }
  
  
  /*Checked Out And In Status======================= */
  .card-border-outinally,
  .card-border-outinally .card-footer,
  .card-border-outinally .card-header {
    border-width: 1px !important;
    border-image: linear-gradient(90deg, #f06548 50%, #25a0e2 50%) 1 !important;
  }
  .checked_in_and_out_rooms .colored_icon_change {
    background-image: linear-gradient(90deg, #f06548 50%, #25a0e2 50%) !important;
    border-image: linear-gradient(90deg, #f06548 50%, #25a0e2 50%) !important;
    color: #fff !important;
  }
  
  .checked_in_and_out_rooms .colored_check_change:checked {
    background-image: linear-gradient(90deg, #f06548 50%, #25a0e2 50%) !important;
    border-image: #f06548 !important;
    color: #fff !important;
  
  }
  
  .checked_in_and_out_rooms .colored_text_change_collapse:not(.collapsed) {
    background-image: linear-gradient(90deg, rgba(240, 101, 72, 0.1) 50%, rgba(37, 160, 226, 0.1) 50%) !important;
    border-color: linear-gradient(90deg, rgba(240, 101, 72, 0.1) 50%, rgba(37, 160, 226, 0.1) 50%) !important;
    color: #fff !important;
  }
  
  .checked_in_and_out_rooms .colored_soft_head_change {
    background-image: linear-gradient(90deg, rgb(237 50 11 / 10%) 50%, rgba(37, 160, 226, 0.1) 50%) !important;
    border-width: 1px !important;
    border-image:linear-gradient(90deg, rgba(240, 101, 72, 0.1) 50%, rgba(37, 160, 226, 0.1) 50%) 1 !important;
  }
  
  .checked_in_and_out_rooms .colored_soft_btn_change {
    background: linear-gradient(90deg, rgba(240, 101, 72, 0.1) 50%, rgba(37, 160, 226, 0.1) 50%) !important;
    -webkit-background-clip: text;
    -webkit-text-fill-color: #f06548;
    border-color: transparent !important;
  }
  
  .checked_in_and_out_rooms .colored_text_change {
    background: linear-gradient(90deg, #f06548 50%, #25a0e2 50%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  
  .checked_in_and_out_rooms .colored_btn_change {
      color: #fff !important;
      background-image: linear-gradient(90deg, #f06548 50%, #25a0e2 50%) !important;
      border-color: transparent!important;
  }
  
  /*Checked In and approved Status======================= */
  .card-border-houseinapprov,
  .card-border-houseinapprov .card-footer,
  .card-border-houseinapprov .card-header {
    border-width: 1px !important;
    border-image: linear-gradient(90deg, #25a0e2 50%, #ffbc0a 50%) 1 !important;
  }
  .checked_in_and_approved_rooms .colored_icon_change {
    background-image: linear-gradient(90deg, #25a0e2 50%, #ffbc0a 50%) !important;
    border-image: linear-gradient(90deg, #25a0e2 50%, #ffbc0a 50%) !important;
    color: #fff !important;
  }
  
  .checked_in_and_approved_rooms .colored_check_change:checked {
    background-image: linear-gradient(90deg, #25a0e2 50%, #ffbc0a 50%) !important;
    border-image: #25a0e2 !important;
    color: #fff !important;
  }
  
  .checked_in_and_approved_rooms .colored_text_change_collapse:not(.collapsed) {
    background-image: linear-gradient(90deg, rgba(37, 160, 226, 0.1) 50%, rgba(255, 188, 10, 0.18) 50%) !important;
    border-color: linear-gradient(90deg, rgba(37, 160, 226, 0.1) 50%, rgba(255, 188, 10, 0.18) 50%) !important;
    color: #fff !important;
  }
  
  .checked_in_and_approved_rooms .colored_soft_head_change {
    background-image: linear-gradient(90deg, rgba(37, 160, 226, 0.1) 50%, rgba(255, 188, 10, 0.18) 50%) !important;
    border-width: 1px !important;
    border-image: linear-gradient(90deg, rgba(37, 160, 226, 0.1) 50%, rgba(255, 188, 10, 0.18) 50%) !important;
  }
  
  .checked_in_and_approved_rooms .colored_soft_btn_change {
    background: linear-gradient(90deg, rgba(37, 160, 226, 0.1) 50%, rgba(255, 188, 10, 0.18) 50%) !important;
    -webkit-background-clip: text;
    -webkit-text-fill-color: #ffbc0a;
    border-color: transparent !important;
  }
  
  .checked_in_and_approved_rooms .colored_text_change {
    background: linear-gradient(90deg, #25a0e2 50%, #ffbc0a 50%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  
  .checked_in_and_approved_rooms .colored_btn_change {
      color: #fff !important;
      background-image: linear-gradient(90deg, #25a0e2 50%, #ffbc0a 50%) !important;
      border-color: transparent!important;
  }
  
  
  /*Checked Out And approved Status==================== */
  .card-border-outvally,
  .card-border-outvally .card-footer,
  .card-border-outvally .card-header {
    border-width: 1px !important;
    border-image: linear-gradient(90deg, #f06548 50%, #ffbc0a 50%) 1 !important;
  }
  .checked_out_and_approved .colored_icon_change {
    background-image: linear-gradient(90deg, #f06548 50%, #ffbc0a 50%) !important;
    border-image: linear-gradient(90deg, #f06548 50%, #ffbc0a 50%) !important;
    color: #fff !important;
  }
  
  .checked_out_and_approved .colored_check_change:checked {
    background-image: linear-gradient(90deg, #f06548 50%, #ffbc0a 50%) !important;
    border-image: #f06548 !important;
    color: #fff !important;
  }
  
  .checked_out_and_approved .colored_text_change_collapse:not(.collapsed) {
    background-image: linear-gradient(90deg, rgba(240, 101, 72, 0.1) 50%, rgba(255, 188, 10, 0.18) 50%) !important;
    border-color: linear-gradient(90deg, rgba(240, 101, 72, 0.1) 50%, rgba(255, 188, 10, 0.18) 50%) !important;
    color: #000 !important;
  }
  
  .checked_out_and_approved .colored_soft_head_change {
    background-image: linear-gradient(90deg, rgb(237 50 11 / 10%) 50%, rgba(255, 188, 10, 0.18) 50%) !important;
    border-width: 1px !important;
    border-image:linear-gradient(90deg, rgba(240, 101, 72, 0.1) 50%, rgba(255, 188, 10, 0.18) 50%) 1 !important;
  }
  
  .checked_out_and_approved .colored_soft_btn_change {
    background: linear-gradient(90deg, rgba(240, 101, 72, 0.1) 50%, rgba(255, 188, 10, 0.18) 50%) !important;
    -webkit-background-clip: text;
    -webkit-text-fill-color: #f06548;
    border-color: transparent !important;
  }
  
  .checked_out_and_approved .colored_text_change {
    background: linear-gradient(90deg, #f06548 50%, #ffbc0a 50%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  
  .checked_out_and_approved .colored_btn_change {
    color: #fff !important;
    background-image: linear-gradient(90deg, #f06548 50%, #ffbc0a 50%) !important;
    border-color: transparent!important;
  }
  
  /*late Checked Out And approved Status========================= */
  .card-border-latinally,
  .card-border-latinally .card-footer,
  .card-border-latinally .card-header {
    border-width: 1px !important;
    border-image: linear-gradient(90deg, red 50%, #ffbc0a 50%) 1 !important;
  }
  .late_checked_out_and_approved .colored_icon_change {
    background-image: linear-gradient(90deg, red 50%, #ffbc0a 50%) !important;
    border-image: linear-gradient(90deg, red 50%, #ffbc0a 50%) !important;
    color: #fff !important;
  }
  
  .late_checked_out_and_approved .colored_check_change:checked {
    background-image: linear-gradient(90deg, red 50%, #ffbc0a 50%) !important;
    border: red !important;
    color: #fff !important;
  }
  
  .late_checked_out_and_approved .colored_text_change_collapse:not(.collapsed) {
    background-image: linear-gradient(90deg, #f98888 50%, rgba(255, 188, 10, 0.18) 50%) !important;
    border-color: linear-gradient(90deg, #f98888 50%, rgba(255, 188, 10, 0.18) 50%) !important;
    color: #000 !important;
  }
  
  .late_checked_out_and_approved .colored_soft_head_change {
    background-image: linear-gradient(90deg, #f98888 50%, rgba(255, 188, 10, 0.18) 50%) !important;
    border-width: 1px !important;
    border-image:linear-gradient(90deg, #f98888 50%, rgba(255, 188, 10, 0.18) 50%) 1 !important;
  }
  
  .late_checked_out_and_approved .colored_soft_btn_change {
    background: linear-gradient(90deg, #f98888 50%, rgba(255, 188, 10, 0.18) 50%) !important;
    -webkit-background-clip: text;
    -webkit-text-fill-color: red;
    border-color: transparent !important;
  }
  
  .late_checked_out_and_approved .colored_text_change {
    background: linear-gradient(90deg, red 50%, #ffbc0a 50%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  
  .late_checked_out_and_approved .colored_btn_change {
    color: #fff !important;
    background-image: linear-gradient(90deg, red 50%, #ffbc0a 50%) !important;
    border-color: transparent!important;
  }
  
  
  /* ==============================================================================Today Booking Records==================================================================== */
  /* Checked Out */
  .checked_out_stage .badge-soft-colored {
    color: #f06548;
    background-color: rgba(240, 101, 72, 0.1);
  }
  .checked_out_stage .text-colored {
    color: #f06548;
    background-color: rgba(240, 101, 72, 0.1);
  }
  .checked_out_stage .colored_btn_change {
    --vz-btn-color: #fff;
    --vz-btn-bg: #f06548;
    --vz-btn-border-color: #f06548;
    --vz-btn-hover-color: #fff;
    --vz-btn-hover-bg: #cc563d;
    --vz-btn-hover-border-color: #c0513a;
    --vz-btn-focus-shadow-rgb: 242, 124, 99;
    --vz-btn-active-color: #fff;
    --vz-btn-active-bg: #c0513a;
    --vz-btn-active-border-color: #b44c36;
    --vz-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --vz-btn-disabled-color: #fff;
    --vz-btn-disabled-bg: #f06548;
    --vz-btn-disabled-border-color: #f06548;
  }
  /* Checked In */
  .checked_in_stage .badge-soft-colored {
    color: #25a0e2;
    background-color: rgba(255, 188, 10, 0.1);
  }
  .checked_in_stage .text-colored {
    color: #25a0e2;
    background-color: rgba(255, 188, 10, 0.1);
  }
  .checked_in_stage .colored_btn_change {
      --vz-btn-color: #fff;
      --vz-btn-bg: #25a0e2;
      --vz-btn-border-color: #25a0e2;
      --vz-btn-hover-color: #fff;
      --vz-btn-hover-bg: #1f88c0;
      --vz-btn-hover-border-color: #1e80b5;
      --vz-btn-focus-shadow-rgb: 70, 174, 230;
      --vz-btn-active-color: #fff;
      --vz-btn-active-bg: #1e80b5;
      --vz-btn-active-border-color: #1c78aa;
      --vz-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
      --vz-btn-disabled-color: #fff;
      --vz-btn-disabled-bg: #25a0e2;
      --vz-btn-disabled-border-color: #25a0e2;
  }
  
  /* Approved */
  .approved_stage .badge-soft-colored {
    color: #ffbc0a;
    background-color: rgba(255, 188, 10, 0.18);
  }
  .approved_stage .text-colored {
    color: #ffbc0a;
    background-color: rgba(255, 188, 10, 0.18);
  }
  .approved_stage .colored_btn_change {
    --vz-btn-color: #fff;
    --vz-btn-bg: #FFBC0A;
    --vz-btn-border-color: #FFBC0A;
    --vz-btn-hover-color: #fff;
    --vz-btn-hover-bg: #d9a009;
    --vz-btn-hover-border-color: #cc9608;
    --vz-btn-focus-shadow-rgb: 255, 198, 47;
    --vz-btn-active-color: #fff;
    --vz-btn-active-bg: #cc9608;
    --vz-btn-active-border-color: #bf8d08;
    --vz-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --vz-btn-disabled-color: #fff;
    --vz-btn-disabled-bg: #FFBC0A;
    --vz-btn-disabled-border-color: #FFBC0A;
  }
  /* Late Checked Out */
  .late_checkout_stage .badge-soft-colored {
    color: red;
    background-color: #f98888;
  }
  .late_checkout_stage .text-colored {
    color: red;
  }
  .late_checkout_stage .colored_btn_change {
    --vz-btn-color: #fff;
    --vz-btn-bg: #FF0000;
    --vz-btn-border-color: #FF0000;
    --vz-btn-hover-color: #fff;
    --vz-btn-hover-bg: #d90000;
    --vz-btn-hover-border-color: #cc0000;
    --vz-btn-focus-shadow-rgb: 255, 0, 0;
    --vz-btn-active-color: #fff;
    --vz-btn-active-bg: #cc0000;
    --vz-btn-active-border-color: #bf0000;
    --vz-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --vz-btn-disabled-color: #fff;
    --vz-btn-disabled-bg: #FF0000;
    --vz-btn-disabled-border-color: #FF0000;
  }
  /* Cancel  */
  .canceled_stage .badge-soft-colored {
      color: #878a99;
      background-color: rgba(135, 138, 153, 0.1);
  }
  
  .canceled_stage .text-colored {
    color: #878a99;
  }
  
  .canceled_stage .colored_btn_change {
    --vz-btn-color: #fff;
      --vz-btn-bg: #878a99;
      --vz-btn-border-color: #878a99;
      --vz-btn-hover-color: #fff;
      --vz-btn-hover-bg: #737582;
      --vz-btn-hover-border-color: #6c6e7a;
      --vz-btn-focus-shadow-rgb: 153, 156, 168;
      --vz-btn-active-color: #fff;
      --vz-btn-active-bg: #6c6e7a;
      --vz-btn-active-border-color: #656873;
      --vz-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
      --vz-btn-disabled-color: #fff;
      --vz-btn-disabled-bg: #878a99;
      --vz-btn-disabled-border-color: #878a99;
  }
  /* Skip Limit  */
  .skip_limit_stage .badge-soft-colored {
      color: #343a40;
      background-color: rgba(52, 58, 64, 0.1);
  }
  
  .skip_limit_stage .text-colored {
    color: #343a40;
  }
  
  .skip_limit_stage .colored_btn_change {
    --vz-btn-color: #fff;
    --vz-btn-bg: #343a40;
    --vz-btn-border-color: #343a40;
    --vz-btn-hover-color: #fff;
    --vz-btn-hover-bg: #52585d;
    --vz-btn-hover-border-color: #484e53;
    --vz-btn-focus-shadow-rgb: 82, 88, 93;
    --vz-btn-active-color: #fff;
    --vz-btn-active-bg: #5d6166;
    --vz-btn-active-border-color: #484e53;
    --vz-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --vz-btn-disabled-color: #fff;
    --vz-btn-disabled-bg: #343a40;
    --vz-btn-disabled-border-color: #343a40;
  }
  /* ========= */
  .bg-outinally,  .ribbon-outinally {
    background-image: linear-gradient(90deg, #f06548 50%, #25a0e2 50%) !important;
  }
  .bg-outvally,  .ribbon-outvally {
    background-image: linear-gradient(90deg, #f06548 50%, #FFBC0A 50%) !important;
  }
  .bg-latinally,  .ribbon-latinally {
    background-image: linear-gradient(90deg, red 50%, #FFBC0A 50%) !important;
  }
  .bg-tally, .ribbon-tally {
    background-color: red !important;
  }
  .other_and_new_stage .none_display{
    display: none;
  
  }
  /* ========= */
  .progress-label .progress-bar .label:after {
    border-top-color: #45cb85;
  }
  /* .progress {
    --vz-progress-bg: #45cb85 !important;
  } */
  .progress-nav .nav .nav-link {
    background-color: rgba(0, 189, 157, 0.18) !important;
    color: #45cb85;
  }
  .progress-nav .nav .nav-link.active, .progress-nav .nav .nav-link.done {
    color: white;
  }
  /* ===========================================================================JQUERY PAGANATION======================================================================== */
  .simple-pagination ul {
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
    text-align: end;
  }
  
  .simple-pagination li {
    display: inline-block;
  }
  
  .simple-pagination li:not(:last-child) {
    margin-right: 5px;
  }
  
  .page-link:focus {
    z-index: 3;
    color: #45cb85;
    background-color: #eff2f7;
    outline: 0;
    box-shadow: 0 0 0 0 rgba(37, 160, 226, 0.25);
  }
  .page-link:hover{
    border-color: #45cb85 !important;
  }
  
  .simple-pagination li a,
  .simple-pagination li span {
    color: #666;
    padding: 5px 15px;
    text-decoration: none;
    border: 1px solid #EEE;
    background-color: #FFF;
    box-shadow: 0px 0px 10px 0px #EEE;
  }
  
  .simple-pagination .current {
    color: #FFF;
    background-color: #45cb85;
    border-color: #45cb85;
    border-radius: 0.25rem;
  }
  
  .simple-pagination .prev.current,
  .simple-pagination .next.current {
    color: #878a99;
    background-color: transparent;
    opacity: 0.65 !important;
    cursor: not-allowed;
  }
  /* =================================================================================Village Loader=================================================================== */
  .center-1 {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    background-color: white;
    z-index: 999999999;
  }
  .center-1 img{
    position: absolute;
    max-width: 512px;
    max-height: 512px;
    left: 33%;
    top: 33%;
  
  }
  /* ============================================================================DASHBOARD CHARTS==================================================================== */
  .dataTables_paginate {
    text-align: center !important; 
    float: none !important;
  }
  table.dataTable tr {
    border-color: #e9ebec ;
  }

  tbody, td, tfoot, th, thead, tr {
    border-color: #e9ebec ;
  }
  
  table.dataTable thead th, table.dataTable thead td {
    border-bottom-color: #e9ebec;
  }

/* reservation details */
.nav-book-details li {
  background-color: #fff !important;
}
.nav-link.approved_status:focus, .nav-link.approved_status:hover {
  background-color: rgba(255,190,11,.18)!important;
  color: #ffbe0b !important;
} 
.step-arrow-nav .nav .nav-link.approved_status.active {
  background-color: rgba(255,190,11,.18)!important;
  color: #ffbe0b;
}
.step-arrow-nav .nav .nav-link.approved_status.active::before {
  border-left-color: rgba(255,190,11,.18) !important;
}

.nav-link.in_house_status:focus, .nav-link.in_house_status:hover {
  background-color: rgba(37,160,226,.18)!important;
  color: #25a0e2 !important;
}
.step-arrow-nav .nav .nav-link.in_house_status.active {
  background-color: rgba(37,160,226,.18)!important;
  color: #25a0e2;
}
.step-arrow-nav .nav .nav-link.in_house_status.active::before {
  border-left-color: rgba(37,160,226,.18)!important;
}

.nav-link.checked_out_status:focus, .nav-link.checked_out_status:hover {
  background-color: rgba(240,101,72,.18)!important;
  color: #f06548 !important;
}
.step-arrow-nav .nav .nav-link.checked_out_status.active {
  background-color: rgba(240,101,72,.18)!important;
  color: #f06548;
}
.step-arrow-nav .nav .nav-link.checked_out_status.active::before {
  border-left-color: rgba(240,101,72,.18) !important;
}

.nav-link.canceled_status:focus, .nav-link.canceled_status:hover {
  background-color: rgba(135,138,153,.18)!important;
  color: #878a99 !important;
}
.step-arrow-nav .nav .nav-link.canceled_status.active {
  background-color: rgba(135,138,153,.18)!important;
  color: #878a99;
}
.step-arrow-nav .nav .nav-link.canceled_status.active::before {
  border-left-color: rgba(135,138,153,.18)!important;
}

.step-arrow-nav .nav .nav-link.pending_status.active, .nav-link.pending_status:focus, .nav-link.pending_status:hover {
  background-color: rgba(69,203,133,.18)!important;
  color: #45CB85 !important;
}
.step-arrow-nav .nav .nav-link.pending_status.active::before {
  border-left-color: rgba(69,203,133,.18) !important;
}

.step-arrow-nav .nav .nav-link.rejected_status.active, .nav-link.rejected_status:focus, .nav-link.rejected_status:hover {
  background-color: rgba(33,37,41,.18)!important;
  color: #212529 !important;
}
.step-arrow-nav .nav .nav-link.rejected_status.active::before {
  border-left-color: rgba(33,37,41,.18)!important;
}
/* reservation history */
.nav-link.approved_history:focus, .nav-link.approved_history:hover, .nav .nav-link.approved_history.active  {
  color: #ffbe0b !important;
} 
.nav-success.nav-tabs-custom .nav-link.approved_history.active::after {
  background-color: #ffbe0b;
}

.nav-link.in_house_history:focus, .nav-link.in_house_history:hover, .nav .nav-link.in_house_history.active {
  color: #25a0e2 !important;
}
.nav-success.nav-tabs-custom .nav-link.in_house_history.active::after {
  background-color: #25a0e2;
}

.nav-link.checked_out_history:focus, .nav-link.checked_out_history:hover, .nav .nav-link.checked_out_history.active {
  color: #f06548 !important;
}
.nav-success.nav-tabs-custom .nav-link.checked_out_history.active::after {
  background-color: #f06548;
}

.nav .nav-link.canceled_history.active, .nav-link.canceled_history:focus, .nav-link.canceled_history:hover {
  color: #878a99 !important;
}
.nav-success.nav-tabs-custom .nav-link.canceled_history.active::after {
  background-color: #878a99;
}

.nav .nav-link.pending_history.active, .nav-link.pending_history:focus, .nav-link.pending_history:hover {
  color: #45CB85 !important;
}
.nav-success.nav-tabs-custom .nav-link.pending_history.active::after {
  background-color: #45CB85;
}

.nav .nav-link.rejected_history.active, .nav-link.rejected_history:focus, .nav-link.rejected_history:hover {
  color: #212529 !important;
}
.nav-success.nav-tabs-custom .nav-link.rejected_history.active::after {
  background-color: #212529;
}
/* Override css */
.step-arrow-nav .nav .setup_nav.active {
  background-color: rgba(69,203,133,.18)!important;
  color: #45cb85 !important;
}
.step-arrow-nav .nav .setup_nav.done {
  background-color: rgba(69,203,133,.18)!important;
  color: #45cb85 !important;
}
.step-arrow-nav .nav .setup_nav.active::before {
  color: #45cb85 !important;
  border-left-color: rgba(69,203,133,.18)!important;
}
button[disabled], button[disabled='True'] {
  cursor: not-allowed !important;
  pointer-events: auto !important;
}
.bg-overlay-pattern-custom {
  background-image: url(/tourist_village_system/static/src/img/sea_view.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.2;
  background-color: transparent;
}

.select2-container .select2-selection--single .select2-selection__rendered {
  margin-right: 15px;
}

.room-pagination-wrapper .accordion-button:not(.collapsed) {
  background-color: rgba(69,203,133,.18);
  border-color: rgba(69,203,133,.18);
  color: #45cb85;
}

.step-arrow-nav .nav .nav-link::before {
  content: "";
  position: absolute;
  border: 18px solid transparent;
  right: -36px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.step-arrow-nav .nav .active-state {
  background-color: rgba(69,203,133,.18) !important;
  color: #45cb85 !important;
}
.step-arrow-nav .nav .active-state::before {
  border-left-color: rgba(69,203,133,.18) !important
}

#preloader {
  background-color: rgba(0, 0, 0, 0.3) !important;
}

.p-muted p {
  --vz-text-opacity: 1;
  color: #878a99 !important;
}

.mail-list a:hover {
  color: #45cb85;
}

/* ==============================================================================
   Village Cards Redesign — Buildings, Floors, Rooms
   Brand Color: #45CB85
   ============================================================================== */

/* =============================================================================
   BUILDING CARDS (.bc-*)
   ============================================================================= */
   .bc-hero-area {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, #2a9d63, #45CB85, #6edba3);
    min-height: calc(100vh - 375px);
}
.bc-hero-area img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}
.bc-hero-overlay {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(0deg, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.05) 50%, rgba(0,0,0,0.2) 100%);
}
.bc-hero-content {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 14px 16px;
}
.bc-hero-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.bc-build-num-badge {
    padding: 4px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 500;
    background: rgba(255,255,255,0.92);
    color: #1a7a45;
    letter-spacing: 0.5px;
}
.bc-hero-actions {
    display: flex;
    gap: 4px;
    align-items: center;
}
.bc-hero-actions .btn {
    width: 30px !important;
    height: 30px !important;
    padding: 4px !important;
    background: rgba(255,255,255,0.2) !important;
    border: none !important;
    color: #fff !important;
    border-radius: 6px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.bc-hero-actions .btn:hover {
    background: rgba(255,255,255,0.4) !important;
}
.bc-hero-actions .dropdown-btn {
    color: rgba(255,255,255,0.85) !important;
}
.bc-hero-actions .dropdown-btn .text-muted {
    color: rgba(255,255,255,0.85) !important;
}
.bc-hero-bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}
.bc-build-name {
    font-size: 22px;
    font-weight: 600;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-shadow: 0 1px 4px rgba(0,0,0,0.3);
}
.bc-hero-placeholder-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 52px;
    color: rgba(255,255,255,0.25);
}

/* Building Counters Bar */
.bc-counters-bar {
    display: flex;
    gap: 0;
    border: 1px solid rgba(0,0,0,0.08);
    border-radius: 0 0 10px 10px;
    overflow: hidden;
}
.bc-counter-item {
    flex: 1;
    padding: 12px 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    transition: background 0.15s;
}
.bc-counter-item:hover {
    background: rgba(69,203,133,0.05);
}
.bc-counter-item + .bc-counter-item {
    border-left: 1px solid rgba(0,0,0,0.08);
}
[dir="rtl"] .bc-counter-item + .bc-counter-item {
    border-left: none;
    border-right: 1px solid rgba(0,0,0,0.08);
}
.bc-counter-icon {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(69,203,133,0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.bc-counter-icon img {
    width: 18px;
    height: 18px;
    object-fit: contain;
}
.bc-counter-text {
    flex: 1;
}
.bc-counter-num {
    font-size: 17px;
    font-weight: 600;
    line-height: 1.2;
}
.bc-counter-label {
    font-size: 11px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}
.bc-counter-add {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 1.5px solid #45CB85;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #45CB85;
    font-size: 16px;
    flex-shrink: 0;
    transition: all 0.2s;
    padding: 0;
}
.bc-counter-add:hover {
    background: #45CB85;
    color: #fff;
}
.bc-card-shell {
    border: none !important;
    border-radius: 10px !important;
    overflow: hidden;
    transition: box-shadow 0.25s, transform 0.25s;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}
.bc-card-shell:hover {
    box-shadow: 0 6px 24px rgba(69,203,133,0.15);
    transform: translateY(-2px);
}


/* =============================================================================
   FLOOR CARDS (.fc-*)
   ============================================================================= */
.fc-hero-area {
    position: relative;
    min-height: calc(100vh - 375px);
    overflow: hidden;
    background: linear-gradient(135deg, #2a9d63, #45CB85, #6edba3);
    display: flex;
    align-items: center;
    justify-content: center;
}
.fc-hero-overlay {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(0deg, rgba(0,0,0,0.45) 0%, rgba(0,0,0,0.02) 50%, rgba(0,0,0,0.15) 100%);
}
.fc-hero-content {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 14px 16px;
}
.fc-hero-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.fc-floor-num-badge {
    padding: 4px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 500;
    background: rgba(255,255,255,0.92);
    color: #1a7a45;
    letter-spacing: 0.5px;
}
.fc-hero-actions {
    display: flex;
    gap: 4px;
    align-items: center;
}
.fc-hero-actions .btn {
    width: 30px !important;
    height: 30px !important;
    padding: 4px !important;
    background: rgba(255,255,255,0.2) !important;
    border: none !important;
    color: #fff !important;
    border-radius: 6px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.fc-hero-actions .btn:hover {
    background: rgba(255,255,255,0.4) !important;
}
.fc-hero-actions .dropdown-btn {
    color: rgba(255,255,255,0.85) !important;
}
.fc-hero-actions .dropdown-btn .text-muted {
    color: rgba(255,255,255,0.85) !important;
}
.fc-hero-bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}
.fc-floor-name {
    font-size: 20px;
    font-weight: 600;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-shadow: 0 1px 4px rgba(0,0,0,0.3);
}
.fc-hero-placeholder-icon {
    font-size: 48px;
    color: rgba(255,255,255,0.25);
    z-index: 0;
}

/* Floor Counters Bar */
.fc-counter-bar {
    display: flex;
    border: 1px solid rgba(0,0,0,0.08);
    border-radius: 0 0 10px 10px;
    overflow: hidden;
}
.fc-counter-item {
    flex: 1;
    padding: 14px 16px;
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
    transition: background 0.15s;
}
.fc-counter-item:hover {
    background: rgba(69,203,133,0.05);
}
.fc-counter-icon {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(69,203,133,0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.fc-counter-icon img {
    width: 20px;
    height: 20px;
    object-fit: contain;
}
.fc-counter-text {
    flex: 1;
}
.fc-counter-num {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.2;
}
.fc-counter-label {
    font-size: 11px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.fc-counter-add {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 1.5px solid #45CB85;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #45CB85;
    font-size: 16px;
    flex-shrink: 0;
    transition: all 0.2s;
    padding: 0;
}
.fc-counter-add:hover {
    background: #45CB85;
    color: #fff;
}
.fc-card-shell {
    border: none !important;
    border-radius: 10px !important;
    overflow: hidden;
    transition: box-shadow 0.25s, transform 0.25s;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}
.fc-card-shell:hover {
    box-shadow: 0 6px 24px rgba(69,203,133,0.15);
    transform: translateY(-2px);
}


/* =============================================================================
   ROOM CARDS (.rc-*)
   ============================================================================= */

/* Hero header gradients by room state */
.rc-hero-available   { background: linear-gradient(135deg, #2d6a4f, #40916c, #52b788) !important; }
.rc-hero-busy        { background: linear-gradient(135deg, #6b2737, #a4343a, #c44536) !important; }
.rc-hero-checkin     { background: linear-gradient(135deg, #1b4965, #2a6f97, #468faf) !important; }
.rc-hero-checkout    { background: linear-gradient(135deg, #7f4f24, #b08968, #ddb892) !important; }
.rc-hero-approved    { background: linear-gradient(135deg, #3c3489, #534ab7, #7f77dd) !important; }
.rc-hero-late        { background: linear-gradient(135deg, #791f1f, #a32d2d, #e24b4a) !important; }
.rc-hero-incomplete  { background: linear-gradient(135deg, #444441, #5f5e5a, #888780) !important; }

.rc-hero {
    position: relative;
    min-height: 180px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 14px 16px;
    overflow: hidden;
}
.rc-hero-img {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    z-index: 0;
}
.rc-hero-overlay {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(0deg, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.05) 50%, rgba(0,0,0,0.2) 100%);
    z-index: 1;
}
.rc-hero-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
    z-index: 2;
}
.rc-hero-type {
    padding: 4px 14px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    background: rgba(255,255,255,0.95);
    color: #2C2C2A;
}
.rc-hero-num {
    padding: 4px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 500;
    background: rgba(0,0,0,0.35);
    color: #fff;
}
.rc-hero-center {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 0;
    position: relative;
    z-index: 2;
}
.rc-hero-center i {
    font-size: 48px;
    color: rgba(255,255,255,0.4);
}
.rc-hero-bottom {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    position: relative;
    z-index: 2;
}
.rc-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 500;
}
.rc-hb-cancel-y { background: rgba(24,95,165,0.8); color: #fff; }
.rc-hb-cancel-n { background: rgba(0,0,0,0.4); color: rgba(255,255,255,0.7); }

/* Hero action buttons */
.rc-hero-actions {
    position: absolute;
    top: 14px;
    right: 16px;
    display: flex;
    align-items: center;
    gap: 4px;
    z-index: 3;
}
.rc-hero-actions .btn {
    background: rgba(255,255,255,0.2) !important;
    border: none !important;
    color: #fff !important;
    width: 30px;
    height: 30px;
    padding: 4px;
    border-radius: 6px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.rc-hero-actions .btn:hover {
    background: rgba(255,255,255,0.4) !important;
}
.rc-hero-actions .dropdown-btn {
    color: rgba(255,255,255,0.85) !important;
}
.rc-hero-actions .dropdown-btn .text-muted {
    color: rgba(255,255,255,0.85) !important;
}

/* Card body */
.rc-card-body {
    padding: 16px;
}
.rc-room-name {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 2px;
}
.rc-room-sub {
    font-size: 13px;
    color: #888;
    margin-bottom: 14px;
}

/* Info grid */
.rc-info-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 14px;
}
.rc-info-label {
    font-size: 11px;
    font-weight: 600;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 1px;
}
.rc-info-value {
    font-size: 14px;
    font-weight: 500;
}
.rc-v-green { color: #45CB85 !important; }
.rc-v-red   { color: #f06548 !important; }

/* Feature tags */
.rc-features-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 16px;
}
.rc-feat-tag {
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 11px;
    border: 1px solid rgba(0,0,0,0.1);
    color: #666;
    background: transparent;
}

/* Footer pricing */
.rc-footer-bar {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    border-top: 1px solid rgba(0,0,0,0.08);
    padding-top: 14px;
}
.rc-price-label {
    font-size: 11px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-bottom: 1px;
}
.rc-price-amount {
    font-size: 22px;
    font-weight: 600;
}
.rc-price-amount small {
    font-size: 12px;
    font-weight: 400;
    color: #999;
}

/* Status pills — uses existing Village status colors */
.rc-st-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 14px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 500;
}
.rc-sp-avail      { background: rgba(69,203,133,0.18); color: #45CB85; }
.rc-sp-busy       { background: rgba(240,101,72,0.1); color: #f06548; }
.rc-sp-checkin    { background: rgba(37,160,226,0.1); color: #25a0e2; }
.rc-sp-checkout   { background: rgba(240,101,72,0.1); color: #f06548; }
.rc-sp-approved   { background: rgba(255,188,10,0.18); color: #FFBC0A; }
.rc-sp-late       { background: rgba(255,0,0,0.1); color: red; }
.rc-sp-incomplete { background: rgba(135,138,153,0.1); color: #878a99; }

/* Room card shell */
.rc-card-shell {
    border: none !important;
    border-radius: 10px !important;
    overflow: hidden;
    transition: box-shadow 0.25s, transform 0.25s;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}
.rc-card-shell:hover {
    box-shadow: 0 6px 24px rgba(0,0,0,0.1);
    transform: translateY(-2px);
}


/* =============================================================================
   ONLINE MODULE ADDITIONS (.rc-hb-online-*, .rc-price-*)
   ============================================================================= */
.rc-hb-online-y { background: rgba(69,203,133,0.85); color: #fff; }
.rc-hb-online-n { background: rgba(0,0,0,0.4); color: rgba(255,255,255,0.7); }
.rc-price-blue  { color: #25a0e2 !important; }
.rc-price-na    { font-size: 18px; color: #999; text-decoration: line-through; font-weight: 400; }