/* Rooms and services payments table */
.room_row {
	background-color: #F5F5F5;
}

.current_room {
	color: #8a6d3b !important;
	background-color: #fcf8e3 !important;
	border: 1px solid #faebcc !important;
}

.unassigned_warning {
	background-color: #ec971f;
	text-align: center;
}

.unassigned_warning a {
	color: #fff;
}

.unassigned_warning a:hover {
	background-color: #ec971f !important;
	text-decoration: underline !important;
}

.daily_table {
	width: auto !important;
	margin-bottom: 50px;
}

.daily_day {
	height: auto;
    min-height: 38px;
    width: 100%;
    padding-top: 4px;
}

.daily_value_input {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    width: 45px;
}

table.daily_table td.daily_input_td {
	padding: 3px;
	min-width: 52px;
}

.daily_row {
	overflow: scroll;
	overflow-y: hidden;
}

#daily_room_list {
	width: 83px;
}

table.daily_values {
    margin-left: 168px;
}
.daily_values td.fixed_left, .daily_values th.fixed_left {
    background-color: #ffffff;
    border-top: 1px solid #dddddd !important;
    left: 0;
    margin-top: -1px;
    padding-bottom: 9px;
    padding-left: 8px;
    position: absolute;
    width: 170px;
}
.daily_values td.fixed_left {
    border-top: 0 none;
    padding-left: 8px;
    z-index: 10;
}

.daily_weekend {
	background-color: #fffdd2; 
}

.ico_room_state {
	border: 1px solid #000000;
	background-color: #CCCCCC;
	width: 15px;
	height: 15px;
	display: inline-block;
	border-radius: 20%;
}

.logo_ibizi {
	display: inline !important;
	margin-top: -10px;
}

.newbooking_button {
	padding: 10px;
}

.newres_collapse_item {
	cursor: pointer;
}

.toast-top-center {
	width: auto;
	margin-left: 50%;
	margin-right: 50%;
}

.configuration_status {
	min-height: 150px !important;
}

.cursor_pointer {
	cursor: pointer;
}

.text-white {
	color: #FFFFFF;
}

.mt-20 {
	margin-top: 20px;
}

.ml-5 {
	margin-left: 5px;
}
.text-black {
	color: #000000;
}

.text-bold {
	font-weight: bold;
}

.text-gray {
	color: #7e7878;
}

.text-small {
	font-size: 90%;
}

.clock {
	margin-top: 20px;
	width: 100%;
	height: auto;
	text-align: center;
	padding-top: 10px;
	padding-bottom: 10px;
	background-color: #FFFFFF;
	border-top: 1px solid #aeaeae;
	border-bottom: 1px solid #aeaeae;
}

.clock_date {
	font-size: 170%;
	color: #747474;
}

.clock_time {
	font-size: 130%;
}

.vertical-middle {
	vertical-align: middle !important;
}

.font-90 {
	font-size: 90% !important;
}
.font-110 {
	font-size: 110%;
}
.font-120 {
	font-size: 120%;
}

.font-150 {
	font-size: 150%;
}

.rate_enabled {
	background-color: #5cb85c;
}

.rate_disabled {
	background-color: #b85c5c !important;
}

.rate_unavailable {
	background-color: #eac55e;
}

.room_enabled {
	background-color: #5cb85c;
}

.room_disabled {
	background-color: #b85c5c !important;
}

.room_unavailable {
	background-color: #eac55e;
}

.legend_enabled {
	color: #5cb85c;
}

.legend_disabled {
	color: #b85c5c !important;
}

.legend_unavailable {
	color: #eac55e;
}

.daily_values td.fixed_left.daily_table_room,
.daily_values th.fixed_left.daily_table_room,
.daily_values td.fixed_left.daily_table_room a,
.daily_values th.fixed_left.daily_table_room a {
	background-color: #2e6da4;
	color: white;
}

.daily_values td.fixed_left.daily_table_rate {
	background-color: #8fb9de;
}

.no-padding {
	padding: 0 !important;
}

.no-margin-bottom {
	margin-bottom: 0 !important;
}

table.public_rates_table td {
    height: 80px;
}

table.daily_table td.fixed_left.daily_input_td {
	padding-left: 8px;
}

.width-100 {
	width: 100%;
}

.daily_values_loading {
	margin-top: 20px;
}


.margin-left-30 {
	margin-left: 30px;
}

.font-200 {
	font-size: 200%;
}

.font-300 {
	font-size: 300%;
}

.ebrating {
	height: 80px;
}

.ebrating_item {
	height: 80px;
	padding-top: 10px;
}

.ebrating_selected {
	border: 1px solid #CCCCCC;
	background-color: #eaeaff;
}

.rating_1 {
	background-color: #a94442;
}
.rating_2 {
	background-color: #8a6d3b;
}
.rating_3 {
	background-color: #777;
}
.rating_4 {
	background-color: #337ab7;
}
.rating_5 {
	background-color: #3c763d;
}

.reservation_bill_list {
	background-color: #f5f5f5;
	margin-top: 10px;
	padding: 5px;
	border: 1px solid #9c9c9c;
}

.z_index {
	z-index: 5;
}

th[st-sort]:not(.st-sort-ascent):not(.st-sort-descent):before {
	color: #9F9F9F;
	font-family: FontAwesome;
	content: "\f0dc";
	margin-right: 4px;
}
th[st-sort] {
	cursor: pointer;
}

.host_icon {
	margin-right: 1px;
}

.tooltip-inner {
    white-space:pre-wrap;
}

.background-primary-light {
	background-color: #cee8ff;
}

.personrule_button {
	padding: 5px;
	border: 1px solid #bcbcbc;
	border-radius: 5px;
	margin-right: 20px;
	color: #a19f9f;
	cursor: pointer;
	background-color: #f2f2f2;
}

.personrule_selected {
	background-color: #4cae4c;
	color: #ffffff;
	cursor: pointer;
}

.personrule_row {
	margin-top: 15px;
	margin-bottom: 20px;
}

.rate_roomtype_row {
	border: 1px solid #d1d1d1;
	padding: 15px;
	border-radius: 10px;
	padding-top: 10px;
	margin-bottom: 20px;
	background-color: #f7fbff;
}
hr{
	border-color: #ddd;
}

/* Reservation Details */
.reservation_services_text{
	font-size: 12px;
	color: #bb0000;
	display: block;
}

.current_booking {
	background-color: #e8f5ff !important;
}

.current_booking .table>tbody>tr>td, 
.current_booking .table>tbody>tr>th, 
.current_booking .table>tfoot>tr>td, 
.current_booking .table>tfoot>tr>th, 
.current_booking .table>thead>tr>td, 
.current_booking .table>thead>tr>th {
    border-color: #60a3de !important;
}

/* swal2 modal*/

.swal2-container {
    z-index: 10060 !important;
}

/* Gant Correction */

div.gantt-scrollable, 
div.gantt-scrollable-header{
	width: auto !important;
}

/* Forms */

.checkbox label.no-padding-left, .radio label.no-padding-left {
    padding-left: 0;
}

@media(max-width:992px) {
    .sm-text-center {
        text-align: center;
    }
	.sm-margin-bottom-15{
		margin-bottom: 15px;
	}

    .daily-occupation-date-wrapper {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }

    .daily-occupation-date-field,
    .daily-occupation-apply-wrapper {
        width: 100%;
        max-width: 260px;
        float: none;
        padding-left: 0;
        padding-right: 0;
        text-align: center;
    }

    .daily-occupation-date-toggle {
        width: 100%;
        display: block;
    }

    .daily-occupation-date-input {
        max-width: none;
    }

    .daily-occupation-apply-btn {
        width: 100%;
        max-width: none;
        margin-left: 0 !important;
    }

}
@media(min-width:992px) {

	.md-margin-top-25{
		margin-top: 25px;
	}

}
.hideToMobile {
    display: table-cell;
}
.showToMobile {
    display: table-column;
}
.showToMobileButton {
	display: none;
}
@media (max-width:767px) and (orientation: portrait){  /* Telefonos moviles en vertical*/
    .hideToMobile {
        display: table-column;
	}
	.showToMobile , .showToMobileButton {
        display: table-cell;
	}
	

}

table .habitaciones tr:nth-child(2n-1) td{
	background: #FFFFFF;

}
table .habitaciones tr:nth-child(2n) td {
	background: #F5F5F5;
}
table .habitaciones th {
	
	border-bottom: 0.5px solid  #5D6975 !important;
	background: #F5F5F5;
	width:30%;
	
}
table .habitaciones td {
	
	width:30%;
	
	
}
table .habitaciones tr { page-break-inside: avoid }

.panel-primary>.panel-heading{
	background-color: #003E9E;
	border-color: #003E9E;
}

.panel-primary {
	border-color: #003E9E;
}
.gantt-side-background-body{
	border-left: 1px solid #D5D5D5;
}
/* Modal extra large size - much taller for more vertical content */
.modal-xl {
    width: 90%;
    max-width: 1200px;
}

@media (min-width: 768px) {
    .modal-xl {
        width: 90%;
        max-width: 1200px;
    }
}

.modal-xl .modal-dialog {
    width: 90%;
    max-width: 1200px;
}

/* Make modal body much taller for more vertical content */
.modal-xl .modal-body {
    max-height: 77vh;
    overflow-y: auto;
    min-height: 68vh;
}

/* Fix date picker layout issues - ensure month/year text stays aligned */
.input-group {
    display: table !important;
    width: 100%;
}

.input-group .form-control {
    display: table-cell !important;
}

.input-group-addon {
    display: table-cell !important;
    width: 1%;
    white-space: nowrap;
    vertical-align: middle;
}

/* Fix datetime picker dropdown positioning */
.dropdown-menu {
    position: absolute !important;
    z-index: 1000;
}

/* Ensure date picker text elements don't wrap unexpectedly */
.datetimepicker table {
    table-layout: fixed;
    width: 100%;
}

.datetimepicker th, .datetimepicker td {
    white-space: nowrap;
    overflow: hidden;
}

/* Fix month/year header alignment in date picker */
.datetimepicker .datetimepicker-days .table-condensed thead tr:first-child th {
    text-align: center;
    font-weight: bold;
    white-space: nowrap;
    min-width: 200px;
    width: 100%;
}

/* Prevent month name from wrapping below year */
.datetimepicker .datetimepicker-days .table-condensed thead tr:first-child th .month {
    display: inline;
}

.datetimepicker .datetimepicker-days .table-condensed thead tr:first-child th .year {
    display: inline;
}

/* Override generic .switch styles applied elsewhere so the month/year header keeps table-cell layout */
.datetimepicker .switch {
    display: table-cell;
    width: auto;
}

/* Simple responsive fixes for bills report buttons and form */
@media (max-width: 991px) {
    /* Ensure buttons stack nicely on smaller screens */
    .panel-body .row .col-md-3 {
        margin-bottom: 15px;
    }
    
    /* Better form layout on tablets */
    .form-horizontal .form-group {
        margin-bottom: 20px;
    }
    
    /* Improve label positioning */
    .form-horizontal .control-label {
        text-align: left;
        padding-top: 7px;
    }
}

@media (max-width: 767px) {
    /* Stack buttons vertically on phones */
    .panel-body .row .col-md-3 {
        width: 100% !important;
        margin-bottom: 10px;
    }
    
    /* Stack form fields vertically */
    .form-horizontal .col-md-4 {
        width: 100% !important;
        margin-bottom: 10px;
    }
}