div.hc_availabilities{margin:0;padding:0}div.hc_availabilities .calendar-legend{background:#f8f9fa;border-radius:8px;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin-bottom:1.5rem;padding:1rem}div.hc_availabilities .calendar-legend .legend-item{align-items:center;color:#374151;display:flex;font-size:.9rem;gap:.5rem}div.hc_availabilities .calendar-legend .legend-item .legend-color{border:1px solid #d1d5db;border-radius:4px;display:inline-block;height:20px;width:20px}div.hc_availabilities .calendar-legend .legend-item .legend-color.legend-available{background-color:#10b981}div.hc_availabilities .calendar-legend .legend-item .legend-color.legend-unavailable{background-color:#dc2626}div.hc_availabilities .calendar-container{margin:0 auto;max-width:100%;width:100%}div.hc_availabilities .calendar-container #aupa-availability-calendar{min-height:266px;width:100%}div.hc_availabilities .calendar-container .simple-calendar-wrapper{align-items:flex-start;display:flex;flex-wrap:nowrap;gap:1rem;justify-content:center;margin:0 auto;max-width:800px;width:100%}div.hc_availabilities .calendar-container .simple-calendar-month{background:#fff;border:1px solid #e5e7eb;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.1);flex:1;flex-basis:calc(50% - 0.5rem);max-width:320px;min-width:200px;padding:.5rem}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:.5rem;padding-bottom:.35rem}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-header .calendar-title{color:#111827;flex:1;font-size:.85rem;font-weight:600;text-align:center}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-header .calendar-nav-next,div.hc_availabilities .calendar-container .simple-calendar-month .calendar-header .calendar-nav-prev{background:none;border:none;border-radius:3px;color:#187f87;cursor:pointer;font-size:1rem;line-height:1;padding:.15rem .3rem;transition:background-color .2s}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-header .calendar-nav-next:hover,div.hc_availabilities .calendar-container .simple-calendar-month .calendar-header .calendar-nav-prev:hover{background-color:#f3f4f6}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-header .calendar-nav-next:active,div.hc_availabilities .calendar-container .simple-calendar-month .calendar-header .calendar-nav-prev:active{background-color:#e5e7eb}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-header .calendar-nav-placeholder{width:1.5rem}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-header{display:grid;gap:.1rem;grid-template-columns:repeat(7,1fr);margin-bottom:.3rem}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-header .calendar-day-header{color:#6b7280;font-size:.65rem;font-weight:600;padding:.25rem 0;text-align:center}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-grid{display:grid;gap:.1rem;grid-template-columns:repeat(7,1fr)}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-grid .calendar-day-empty{aspect-ratio:1}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-grid .calendar-day{align-items:center;aspect-ratio:1;border-radius:2px;cursor:default;display:flex;justify-content:center;position:relative;transition:background-color .2s}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-grid .calendar-day .calendar-day-number{font-size:.7rem;font-weight:500;z-index:1}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-grid .calendar-day.calendar-day-past{opacity:.5}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-grid .calendar-day.calendar-day-available{background-color:#d1fae5;color:#065f46}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-grid .calendar-day.calendar-day-available:hover{background-color:#a7f3d0}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-grid .calendar-day.calendar-day-unavailable{background-color:#fee2e2;color:#991b1b}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-grid .calendar-day.calendar-day-unavailable:hover{background-color:#fecaca}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-grid .calendar-day.calendar-day-today{border:2px solid #187f87;font-weight:700}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-grid .calendar-day.calendar-day-today.calendar-day-available{background-color:#10b981;color:#fff}div.hc_availabilities .calendar-container .simple-calendar-month .calendar-days-grid .calendar-day.calendar-day-today.calendar-day-unavailable{background-color:#dc2626;color:#fff}div.hc_availabilities .calendar-loading{color:#6b7280;font-size:1rem;padding:3rem 1rem;text-align:center}div.hc_availabilities .calendar-loading p{margin:0}div.hc_availabilities .calendar-loading:before{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#187f87;content:"";display:inline-block;height:20px;margin-right:.5rem;vertical-align:middle;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}div.hc_availabilities .no-availability-message{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;margin:1rem 0;padding:2rem 1rem;text-align:center}div.hc_availabilities .no-availability-message p{color:#6b7280;font-size:1rem;font-style:italic;line-height:1.6;margin:0}div.hc_availabilities .no-availability-message:before{content:"ℹ️";display:block;font-size:2rem;font-style:normal;margin-bottom:.5rem}@media(max-width:1024px){div.hc_availabilities .calendar-container .simple-calendar-wrapper{flex-wrap:wrap;gap:.75rem}div.hc_availabilities .calendar-container .simple-calendar-month{flex-basis:calc(50% - 0.375rem);min-width:180px}}@media(max-width:767px){div.hc_availabilities .calendar-legend{gap:1rem;padding:.75rem}div.hc_availabilities .calendar-container .simple-calendar-wrapper{flex-direction:column;gap:1rem}div.hc_availabilities .calendar-container .simple-calendar-month{flex-basis:100%;max-width:100%;min-width:100%}}
