.allegra-calendar-container {
max-width: 1100px;
margin: 0 auto 4rem auto;
padding: 3rem 1.5rem;
background: #F8F5F2;
border-radius: 1.5rem;
}
.allegra-calendar-card {
background: #ffffff;
border-radius: 18px;
box-shadow: 0 18px 45px rgba(15, 23, 42, 0.06);
padding: 1.5rem;
}
.allegra-calendar-header {
margin-bottom: 0.75rem;
}
.allegra-calendar-title {
font-size: 1.4rem;
font-weight: 700;
margin: 0 0 0.25rem 0;
}
.allegra-calendar-subtitle {
margin: 0;
font-size: 0.9rem;
color: #6b7280;
}
.allegra-calendar-filters {
display: flex;
justify-content: flex-start;
gap: 1rem;
align-items: flex-end;
margin-bottom: 1rem;
flex-wrap: wrap;
}
@media (min-width: 640px) {
.allegra-calendar-filters {
flex-wrap: nowrap;
}
}
.allegra-filter-group label span {
display: block;
font-size: 0.95rem;
color: #6b7280;
margin-bottom: 0.25rem;
}
.allegra-calendar-date {
border-radius: 999px;
border: 1px solid #d1d5db;
padding: 0.35rem 0.75rem; font-size: 0.85rem;
min-width: 9rem;
background: #C9A46D;
color: #ffffff;
border-color: #C9A46D;
}
.allegra-calendar-date::placeholder {
color: rgba(255, 255, 255, 0.9);
}
.allegra-calendar-date:focus {
outline: none;
box-shadow: 0 0 0 3px rgba(201, 164, 109, 0.35);
}
.allegra-filter-button {
border-radius: 999px;
border: none;
padding: 0.45rem 1.25rem;
font-size: 0.9rem;
cursor: pointer; background: #C9A46D;
color: #ffffff;
font-weight: 500;
}
.allegra-filter-button:hover {
background: #b8925a;
}
.allegra-calendar-table-wrapper {
overflow-x: auto;
font-size: 12px;
margin-top: 0.5rem;
}
.allegra-calendar-table {
border-collapse: collapse;
width: 100%;
min-width: 600px;
}
.allegra-calendar-table th,
.allegra-calendar-table td {
border: 1px solid #e5e7eb;
padding: 2px 4px;
text-align: center;
white-space: nowrap;
}
.allegra-cal-accommodation-header {
background: #f9fafb;
position: sticky;
left: 0;
z-index: 3;
text-align: left;
}
.allegra-cal-accommodation {
position: sticky;
left: 0;
background: #ffffff;
text-align: left;
min-width: 190px;
z-index: 2;
font-weight: 500;
}
.allegra-calendar-table thead th,
.allegra-calendar-table tfoot th {
background: #f9fafb;
font-weight: 600;
font-size: 10px;
}
.allegra-cal-day {
font-size: 11px;
}
.allegra-cal-month {
font-size: 10px;
color: #6b7280;
}
.allegra-cal-occupied {
background: #b6e6a3;
}
.allegra-cal-free {
background: #ffffff;
}
.allegra-calendar-legend {
margin-top: 0.75rem;
font-size: 12px;
color: #4b5563;
}
.allegra-cal-box {
display: inline-block;
width: 14px;
height: 14px;
border: 1px solid #d1d5db;
margin-right: 4px;
vertical-align: middle;
}
.allegra-calendar-legend .allegra-cal-occupied {
background: #fca5a5;
}  #ui-datepicker-div.ui-datepicker,
.ui-datepicker {
background: #F8F5F2 !important;
border: 1px solid rgba(17, 24, 39, 0.12);
padding: 0.6rem 0.65rem;
border-radius: 0.85rem; font-size: 0.85rem;
box-shadow: 0 18px 45px rgba(15, 23, 42, 0.14);
z-index: 9999 !important;
}
.ui-datepicker .ui-datepicker-header {
position: relative;
margin-bottom: 0.35rem;
background: #C9A46D !important;
border-radius: 0.7rem; padding: 0.55rem 2.75rem;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 30px;
height: 30px;
line-height: 30px;
border-radius: 999px;
text-align: center;
cursor: pointer;
color: #ffffff;
border: none;
background: rgba(255, 255, 255, 0.18);
}
.ui-datepicker .ui-datepicker-prev:hover,
.ui-datepicker .ui-datepicker-next:hover {
background: rgba(255, 255, 255, 0.28);
}
.ui-datepicker .ui-datepicker-prev {
left: 0.25rem;
}
.ui-datepicker .ui-datepicker-next {
right: 0.25rem;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
display: inline-block;
margin-top: 0; font-size: 1.15rem;
font-weight: 700;
} .ui-datepicker .ui-icon {
background: none !important;
text-indent: 0;
width: auto;
height: auto;
overflow: visible;
}
.ui-datepicker-title {
text-align: center;
margin: 0;
color: #ffffff;
font-weight: 700;
font-size: 0.95rem;
line-height: 1.2;
}
.ui-datepicker table {
width: 100%;
border-collapse: collapse;
}
.ui-datepicker th {
padding: 0.1rem;
font-weight: 500;
color: rgba(17, 24, 39, 0.75);
font-size: 0.75rem;
}
.ui-datepicker td {
text-align: center;
padding: 0;
}
.ui-datepicker td a {
display: block;
padding: 0.2rem 0;
border-radius: 999px;
text-decoration: none;
color: #111827;
font-size: 0.85rem;
}
.ui-datepicker td a:hover {
background: #e5e7eb;
}
.ui-datepicker-current-day a {
background: #C9A46D;
color: #ffffff;
}  .allegra-calendar-filters {
display: flex;
flex-wrap: wrap;
align-items: flex-end;
gap: 1rem;
margin-bottom: 1rem;
}
.allegra-calendar-filters form {
display: flex;
flex-wrap: wrap;
align-items: flex-end;
gap: 1rem;
margin: 0;
}
.allegra-filter-group label {
display: flex;
align-items: center;
gap: 0.5rem;
}
.allegra-filter-group label span {
margin: 0;
font-size: 0.85rem;
color: #6b7280;
} .allegra-calendar-date {
border-radius: 999px;
border: 1px solid #d1d5db;
padding: 0.35rem 0.75rem;
min-width: 130px;
background: #C9A46D;
color: #ffffff;
border-color: #C9A46D;
font-size: 0.85rem;
} .allegra-filter-actions .allegra-filter-button {
border-radius: 999px;
border: none;
background: #C9A46D;
color: #ffffff;
padding: 0.5rem 1.25rem;
cursor: pointer;
font-weight: 500;
}
.allegra-filter-actions .allegra-filter-button:hover {
background: #b8925a;
} .allegra-cal-accommodation-header,
.allegra-cal-accommodation {
text-align: left;
} .allegra-cal-occupied {
background: #fca5a5;
} .allegra-calendar-editor-box{background:#fff;border-radius:14px;padding:14px 16px;box-shadow:0 10px 22px rgba(0,0,0,0.05);font-size:0.9rem;color:#444;}