.calendar-wrapper{
clear:both;
float:left;
width:100%;
height:33rem;
overflow:auto;
text-align:center;
}

.calendar-wrapper .content{
width:auto;
margin:.5rem auto;
padding:.5rem 0;
background:var(--light-background-color);
}

.calendar{
display:inline-block;
width:auto;
margin:.25rem;
padding:0;
text-align:left;
background:var(--base-background-color);
border-spacing:0;
position:relative;
border:0
}

.calendar th{
width:4rem !important;
margin:0;
text-align:center !important;
}

.calendar tbody tr:hover td{
background:none !important;
}

.calendar thead th{
width:4rem !important;
margin:0;
text-align:center !important;
}

.calendar tbody td{
width:4rem !important;
height:2rem !important;
margin:0;
padding:0;
position:relative;
overflow:hidden;
}

.calendar .td_inactiv{
background:var(--light-background-color);
}

.calendar td span[data-select="false"]{
background:var(--calendar-background-color);
}

.calendar td span[data-select="true"]{
background:var(--calendar-on-background-color);
}

.calendar .inactiv_before{
background:url('/asset/img/calendar/inactiv/before.svg') no-repeat top left;
position:absolute;
top:0;
left:0;
z-index:1;
width:100% !important;
height:2rem !important;
}

.calendar .td_activ{
color:var(--dark-font-color);
background:var(--active-background-color);
border:var(--asset-border-color) 1px solid;
}

.calendar .activ_before{
background:url('/asset/img/calendar/activ/before.svg') no-repeat top right;
position:absolute;
top:0;
right:0;
z-index:1;
width:100% !important;
height:2rem !important;
}

.calendar .td_closed{
color:var(--dark-font-color);
background:var(--disabled-background-color);
}

.calendar .day{
float:left;
display:block;
margin:0;
padding:.25rem;
position:absolute;
top:0;
left:0;
z-index:2;
width:100% !important;
height:100% !important;
text-align:center;
color:var(--dark-font-color);
}

.calendar .day_activ,
.calendar .day_inactiv,
.calendar .day_closed{
float:left;
display:block;
width:100% !important;
height:100% !important;
margin:0;
padding:0;
}

.calendar button{
background:transparent;
border:0;
border-radius:0;
margin:0;
padding:0;
font-weight:bold;
}

.calendar button .day{
color:var(--base-font-color);
font-size:var(--m-font-size);
text-decoration:underline;
}

.calendar button.selected_start{
float:left;
display:block;
width:100% !important;
height:2rem !important;
margin:0;
padding:0;
position:absolute;
top:0;
left:0;
z-index:2;
background:var(--calendar-selected-background-color);
}

.calendar button.selected_start:hover{
font-weight:bold;
}

.calendar button.data_select{
float:left;
display:block;
width:100% !important;
margin:0;
padding:0;
}

.calendar button.selected_end{
float:left;
display:block;
width:100% !important;
height:2rem !important;
margin:0;
padding:0;
position:absolute;
top:0;
left:0;
z-index:2;
background:var(--calendar-selected-background-color);
}

.calendar button.selected_end:hover{
font-weight:bold;
}

.calendar .selected{
background:var(--calendar-selected-background-color) !important;
color:#fff;
}

.calendar .selected:hover{
display:block;
position:absolute;
top:0;
left:0;
z-index:2;
width:100% !important;
height:2rem !important;
background:var(--calendar-selected-background-color);
color:#fff;
}

table.price_overview{
clear:both;
float:left;
table-layout:fixed;
width:100%;
margin:.5rem 0;
padding:0;
}

table.price_overview caption{
caption-side:top;
font-size:var(--s-font-size);
font-style:italic;
text-align:right;
padding:.5rem 0;
}

table.price_overview thead th{
vertical-align:bottom;
margin:0;
padding:0;
background:var(--asset-background-color);
border-bottom:var(--base-border-color) 2px solid;
overflow:hidden;
}

table.price_overview thead th{
text-align:left;
}

table.price_overview tbody td{
vertical-align:top;
}

table.price_overview thead th.seasonal,
table.price_overview tbody td.seasonal{
text-align:left;
}

table.price_overview thead th.seasonal_arrival_stay_min,
table.price_overview tbody td.seasonal_arrival_stay_min{
text-align:center;
}

table.price_overview thead th.seasonal_arrival_days,
table.price_overview tbody td.seasonal_arrival_days{
text-align:left;
}

table.price_overview thead th.seasonal_price,
table.price_overview tbody td.seasonal_price{
text-align:right;
}

table.price_overview tr:hover th[scope=row],
table.price_overview tr:hover th[scope=row] p,
table.price_overview tr:hover td,
table.price_overview tr:hover td p{
background:var(--light-theme-color);
color:var(--asset-font-color);
}

table.price_overview tr:nth-child(odd){
background:var(--asset-background-color);
}

table.price_overview tr:nth-child(even){
background:var(--light-background-color);
}

table.price_overview p{
padding:.25rem;
}

/* */
table.price_overview tbody td.seasonal .weekday{
display:inline-block;
text-align:left;
min-width:1.5rem;
}

table.price_overview tbody td.seasonal .date{
display:inline-block;
text-align:left;
}



table.price_additional_overview{
clear:both;
float:left;
width:100%;
margin:.5rem 0;
padding:0;
}

table.price_additional_overview caption{
caption-side:top;
font-size:var(--s-font-size);
font-style:italic;
text-align:right;
padding:.5rem 0;
}

table.price_additional_overview thead th{
vertical-align:bottom;
margin:0;
padding:0;
background:var(--asset-background-color);
border-bottom:var(--base-border-color) 2px solid;
}

table.price_additional_overview thead th{
text-align:left;
}

table.price_additional_overview thead th.additional_price,
table.price_additional_overview tbody td.additional_price{
text-align:right;
}

table.price_additional_overview tr:hover th[scope=row],
table.price_additional_overview tr:hover th[scope=row] p,
table.price_additional_overview tr:hover td,
table.price_additional_overview tr:hover td p{
background:var(--button-hover-background-color);
color:var(--button-hover-font-color);
}

table.price_additional_overview tr:nth-child(odd){
background:var(--asset-background-color);
}

table.price_additional_overview tr:nth-child(even){
background:var(--light-background-color);
}

table.price_additional_overview p{
padding:.25rem;
}