.chvs-schedules-manager #calendar-hours-wrapper{display:grid;grid-template-columns:minmax(280px,320px) minmax(360px,1fr);gap:28px;align-items:start}.chvs-schedules-manager #calendar-column{display:flex;flex-direction:column;gap:10px}.chvs-schedules-manager #hours-container-wrapper{min-width:0}.chvs-schedules-manager #hours-container>div{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(90px,1fr))!important;gap:8px!important}.chvs-schedules-manager .hour{display:flex;align-items:center;justify-content:center;min-height:42px;padding:7px;border:1px solid #b8cccc;border-radius:8px;background:#fff;cursor:pointer;text-align:center;font-weight:600}.chvs-schedules-manager .hour.blocked{background:#dc3232;color:#fff;border-color:#dc3232}.chvs-schedules-manager .hour.reserved{background:#2271b1;color:#fff;border-color:#2271b1;cursor:not-allowed}.chvs-schedules-manager #hours-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.chvs-schedules-manager #hours-buttons button{width:100%;margin:0}.chvs-schedules-manager .flatpickr-calendar.inline{width:100%;max-width:320px;box-shadow:0 8px 24px rgba(23,49,58,.12)}.chvs-schedules-manager .flatpickr-rContainer,.chvs-schedules-manager .flatpickr-days,.chvs-schedules-manager .dayContainer{width:100%;max-width:320px}.chvs-schedules-manager .flatpickr-day.full-block{background:#dc3232!important;color:#fff!important;border-color:#dc3232!important;border-radius:50%!important}.chvs-schedules-manager .flatpickr-day.partial-block{background:#ffb900!important;color:#172f38!important;border-color:#ffb900!important;border-radius:50%!important}.chvs-schedule-help{margin-top:-5px;color:#64767b}.chvs-schedule-legend{display:flex;flex-wrap:wrap;gap:8px;font-size:12px}.chvs-schedule-legend span{padding:5px 8px;border-radius:99px}.chvs-schedule-legend .full{background:#dc3232;color:#fff}.chvs-schedule-legend .partial{background:#ffb900;color:#172f38}.chvs-schedule-legend .reserved{background:#2271b1;color:#fff}@media(max-width:850px){.chvs-schedules-manager #calendar-hours-wrapper{grid-template-columns:1fr}.chvs-schedules-manager #hours-container-wrapper{min-width:0}}
.chvs-reservations-table form.chvs-reservation-actions>select[name="provider_id"]{grid-column:1/-1!important;grid-row:1!important}.chvs-reservations-table form.chvs-reservation-actions>button.chvs-approve{grid-column:1!important;grid-row:2!important}.chvs-reservations-table form.chvs-reservation-actions>button.secondary{grid-column:2!important;grid-row:2!important}
.chvs-reservations-table table.chvs-reservation-details,.chvs-reservations-table table.chvs-reservation-details tbody,.chvs-reservations-table table.chvs-reservation-details tr,.chvs-reservations-table table.chvs-reservation-details th,.chvs-reservations-table table.chvs-reservation-details td{border:0!important;border-top:0!important;border-right:0!important;border-bottom:0!important;border-left:0!important;outline:0!important;box-shadow:none!important}.chvs-reservations-table table.chvs-reservation-details{border-collapse:collapse!important;border-spacing:0!important}
.chvs-reservations-table>table.chvs-reservations-list>thead>tr>th:nth-child(1){width:42%}.chvs-reservations-table>table.chvs-reservations-list>thead>tr>th:nth-child(2){width:18%}.chvs-reservations-table>table.chvs-reservations-list>thead>tr>th:nth-child(3){width:40%}
.chvs-reservations-table .chvs-reservation-status,.chvs-reservations-table .chvs-reservation-management{box-sizing:border-box;overflow:hidden}.chvs-reservations-table .chvs-reservation-status .chvs-status{display:block;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.35}
.chvs-reservations-table form.chvs-reservation-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;grid-template-areas:"provider provider" "approve reject"!important;align-items:stretch!important;gap:8px!important;width:100%!important;max-width:280px!important;margin:0!important;padding:0!important;position:static!important}.chvs-reservations-table form.chvs-reservation-actions select{grid-area:provider!important;position:static!important;float:none!important;transform:none!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important}.chvs-reservations-table form.chvs-reservation-actions button{position:static!important;float:none!important;transform:none!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;white-space:nowrap}.chvs-reservations-table form.chvs-reservation-actions .chvs-approve{grid-area:approve!important}.chvs-reservations-table form.chvs-reservation-actions button.secondary{grid-area:reject!important}
.chvs-cm{--brand:#0f766e;--ink:#17313a;--line:#dbe7e7;color:var(--ink)}
.chvs-cm h2{font-size:30px;margin:0 0 20px}.chvs-cm section{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:20px;box-shadow:0 8px 28px rgba(15,118,110,.07)}
.chvs-cm fieldset{border:1px solid var(--line);border-radius:10px;padding:14px;margin:0 0 18px}.chvs-cm legend{font-weight:700;padding:0 6px}.chvs-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:4px 16px}
.chvs-cm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px}.chvs-cm label{display:block;font-weight:600;margin:0 0 14px}.chvs-cm label.check{font-weight:400;margin:8px 0}.chvs-cm input:not([type=checkbox]),.chvs-cm select,.chvs-cm textarea{box-sizing:border-box;width:100%;margin-top:6px;border:1px solid #b8cccc;border-radius:9px;padding:10px;background:#fff}.chvs-cm button{border:0;border-radius:9px;background:var(--brand);color:#fff;padding:10px 16px;font-weight:700;cursor:pointer}.chvs-cm button.secondary{background:#697b80}.chvs-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.chvs-tabs a{padding:9px 14px;border-radius:99px;background:#e9f5f3;color:var(--brand);text-decoration:none;font-weight:700}.chvs-tabs a.active{background:var(--brand);color:#fff}.chvs-table{overflow:auto}.chvs-table table{width:100%;border-collapse:collapse}.chvs-table th,.chvs-table td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.chvs-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.chvs-cards article{border:1px solid var(--line);border-radius:12px;padding:15px;background:#fff}.chvs-cards small{display:block;color:#64767b;margin-top:7px}.chvs-cards .chvs-edit{display:inline-block;margin:10px 10px 0 0;font-weight:700;color:var(--brand)}.chvs-cards form.inline{display:inline-block;margin-top:8px}.chvs-cards form.inline button.secondary{background:transparent;color:var(--brand);border:0;border-radius:0;padding:0;font:inherit;font-weight:700;line-height:inherit;text-decoration:underline;cursor:pointer}.chvs-cards form.inline button.secondary:hover,.chvs-cards form.inline button.secondary:focus{background:transparent;color:#095e58}.chvs-cm-alert{padding:12px 15px;border-radius:10px;margin-bottom:16px}.chvs-cm-alert.success{background:#e9f8f1;color:#17653f}.chvs-cm-alert.error{background:#fff0f0;color:#9c2424}@media(max-width:600px){.chvs-cm h2{font-size:24px}.chvs-cm section{padding:15px}.chvs-table table{min-width:700px}}
.chvs-cm input[type=checkbox]{accent-color:var(--brand)}.chvs-user-selector-row{display:flex;flex-direction:column;align-items:stretch;gap:8px}.chvs-user-selector-row>label{width:100%;margin-bottom:0}.chvs-user-loading{display:inline-flex;align-self:flex-start;align-items:center;gap:8px;color:var(--brand);font-weight:700;white-space:nowrap}.chvs-user-loading[hidden]{display:none}.chvs-user-loading-spinner{width:18px;height:18px;border:3px solid #b7d8d4;border-top-color:var(--brand);border-radius:50%;animation:chvs-user-loading-spin .7s linear infinite}@keyframes chvs-user-loading-spin{to{transform:rotate(360deg)}}
.chvs-cards form.inline{display:inline!important;margin:0!important;padding:0!important}.chvs-cards .chvs-edit,.chvs-cards form.inline button.secondary{appearance:none!important;-webkit-appearance:none!important;display:inline-block!important;box-sizing:content-box!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;margin:10px 10px 0 0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;color:var(--brand)!important;font-family:inherit!important;font-size:inherit!important;font-style:normal!important;font-weight:700!important;letter-spacing:normal!important;line-height:inherit!important;text-align:left!important;text-decoration:none!important;text-shadow:none!important;text-transform:none!important;vertical-align:baseline!important;cursor:pointer!important}.chvs-cards .chvs-edit:hover,.chvs-cards .chvs-edit:focus,.chvs-cards form.inline button.secondary:hover,.chvs-cards form.inline button.secondary:focus{background:transparent!important;color:#095e58!important;text-decoration:underline!important;outline-offset:2px}
.chvs-reservations-table table{min-width:1280px}.chvs-reservations-table th{white-space:nowrap}.chvs-reservations-table td{min-width:90px}.chvs-reservations-table td:last-child{min-width:460px}.chvs-status{display:inline-block;white-space:nowrap;font-weight:700;color:#334e56}.chvs-status-pending_review{color:#9a5b13}.chvs-status-confirmed{color:#17653f}.chvs-status-rejected,.chvs-status-cancelled{color:#9c2424}.chvs-reservation-actions button:disabled{cursor:not-allowed!important;opacity:.45!important;filter:grayscale(.35)}
.chvs-reservations-table>table.chvs-reservations-list{min-width:980px;table-layout:fixed}.chvs-reservations-list>thead>tr>th:nth-child(1){width:42%}.chvs-reservations-list>thead>tr>th:nth-child(2){width:14%}.chvs-reservations-list>thead>tr>th:nth-child(3){width:44%}.chvs-reservation-info{vertical-align:top}.chvs-reservation-title{display:block;margin-bottom:10px;line-height:1.4}.chvs-reservations-table table.chvs-reservation-details{width:100%;min-width:0;border:0;background:transparent}.chvs-reservation-details th,.chvs-reservation-details td{min-width:0!important;padding:4px 8px 4px 0!important;border:0!important;white-space:normal!important;vertical-align:top}.chvs-reservation-details th{width:135px;color:#334e56}.chvs-reservation-details td:last-child{min-width:0!important}.chvs-reservation-status,.chvs-reservation-management{vertical-align:top}
.chvs-reservations-table{container-type:inline-size;overflow:visible}.chvs-reservations-table>table.chvs-reservations-list{width:100%!important;min-width:0!important;table-layout:fixed}.chvs-reservations-table>table.chvs-reservations-list>thead>tr>th:nth-child(1){width:50%}.chvs-reservations-table>table.chvs-reservations-list>thead>tr>th:nth-child(2){width:18%}.chvs-reservations-table>table.chvs-reservations-list>thead>tr>th:nth-child(3){width:32%}.chvs-reservations-table>table.chvs-reservations-list>tbody>tr>td{min-width:0!important;overflow-wrap:anywhere}.chvs-reservations-table .chvs-reservation-management{overflow:visible}.chvs-reservations-table form.chvs-reservation-actions{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"provider" "approve" "reject"!important;width:100%!important;max-width:none!important}.chvs-reservations-table form.chvs-reservation-actions>select[name="provider_id"],.chvs-reservations-table form.chvs-reservation-actions>button.chvs-approve,.chvs-reservations-table form.chvs-reservation-actions>button.secondary{grid-column:1!important}.chvs-reservations-table form.chvs-reservation-actions>select[name="provider_id"]{grid-row:1!important}.chvs-reservations-table form.chvs-reservation-actions>button.chvs-approve{grid-row:2!important}.chvs-reservations-table form.chvs-reservation-actions>button.secondary{grid-row:3!important}@container (max-width:520px){.chvs-reservations-table>table.chvs-reservations-list,.chvs-reservations-table>table.chvs-reservations-list>tbody,.chvs-reservations-table>table.chvs-reservations-list>tbody>tr,.chvs-reservations-table>table.chvs-reservations-list>tbody>tr>td{display:block;width:100%!important}.chvs-reservations-table>table.chvs-reservations-list>thead{display:none}.chvs-reservations-table>table.chvs-reservations-list>tbody>tr{box-sizing:border-box;margin-bottom:16px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff}.chvs-reservations-table>table.chvs-reservations-list>tbody>tr>td{box-sizing:border-box;padding:8px 0!important;border:0}.chvs-reservations-table>table.chvs-reservations-list>tbody>tr>td[data-label]:before{display:block;margin-bottom:6px;color:#334e56;font-weight:700;content:attr(data-label)}.chvs-reservation-details th{width:105px}.chvs-reservations-table form.chvs-reservation-actions{max-width:100%!important}}
