.appointment-overlay{--background-color:var(--theme-color-grayscale-1000);--border-color:var(--theme-color-grayscale-200);--text-color:var(--theme-color-grayscale-0);z-index:10;display:grid;grid-template-columns:40px auto;position:fixed;top:50%;right:0;overflow:hidden;transform:translateY(-50%) translateX(calc(100% - 40px));will-change:transform;background-color:var(--background-color)}@media (min-width:768px){.appointment-overlay{border-top-left-radius:10px;border-bottom-right-radius:10px;transition:transform .2s ease-in-out;border:1px solid var(--border-color)}}@media(hover:hover){.appointment-overlay:not(.appointment-overlay--open):has(.appointment-overlay__trigger:hover){transform:translateY(-50%) translateX(calc(100% - 40px - 10px))}}.appointment-overlay--open{border-top-left-radius:10px;border-bottom-right-radius:10px;transform:translateY(-50%) translateX(0)}@media (max-width:767px){.appointment-overlay--open{bottom:10px;left:10px;right:10px;top:auto;grid-template-columns:1fr;transform:none}.appointment-overlay--open .appointment-overlay__trigger{display:none}}.appointment-overlay--open .appointment-overlay__content{display:block}.appointment-overlay__trigger{display:flex;align-items:center;justify-content:center;column-gap:10px;background-color:var(--border-color);color:var(--background-color);font-weight:700;padding:10px}@media (min-width:768px){.appointment-overlay__trigger{padding:30px 10px;transform:rotate(180deg);writing-mode:tb-rl}.appointment-overlay__trigger svg{transform:rotate(90deg)}}@media (max-width:767px){.appointment-overlay__trigger-text{position:absolute;width:1px;height:1px;overflow:hidden;white-space:nowrap;clip:rect(0 0 0 0);clip-path:inset(50%)}}.appointment-overlay__content{display:block;position:relative;max-width:347px}@media (max-width:767px){.appointment-overlay__content{border-top-left-radius:10px;border-bottom-right-radius:10px;max-width:none;display:none;padding:10px;border:1px solid var(--border-color);border-left-width:10px}.appointment-overlay__content .custom-image{position:absolute;width:1px;height:1px;overflow:hidden;white-space:nowrap;clip:rect(0 0 0 0);clip-path:inset(50%)}}.appointment-overlay__inner{padding:10px 30px}@media (max-width:767px){.appointment-overlay__inner{color:var(--theme-color-grayscale-0)}}.appointment-overlay__title{margin-bottom:20px}.appointment-overlay__close-button{position:absolute;top:10px;right:10px}