@keyframes show{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes show-slide{0%{transform:translateY(3rem);opacity:0}to{transform:translateY(0);opacity:1}}.reservation-steps{margin-bottom:2.5rem}.reservation-steps__list{display:flex;align-items:flex-start;list-style:none;padding:0;margin:0}.reservation-steps__item{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;gap:.5rem}.reservation-steps__item:before{content:"";position:absolute;top:1.125rem;left:0;width:50%;height:2px;background-color:var(--color-border-light);z-index:0}.reservation-steps__item:first-child:before{display:none}.reservation-steps__item:after{content:"";position:absolute;top:1.125rem;right:0;width:50%;height:2px;background-color:var(--color-border-light);z-index:0}.reservation-steps__item:last-child:after{display:none}.reservation-steps__item--done .reservation-steps__number{background-color:#1180ff;border-color:#1180ff;color:#fff}.reservation-steps__item--done:before{background-color:#1180ff}.reservation-steps__item--active .reservation-steps__number{background-color:#2b3e6f;border-color:#2b3e6f;color:#fff}.reservation-steps__item--active .reservation-steps__label{color:var(--color-text-emphasis);font-weight:700}.reservation-steps__item--active:before{background-color:#1180ff}.reservation-steps__item:has(+.reservation-steps__item--done):after,.reservation-steps__item:has(+.reservation-steps__item--active):after{background-color:#1180ff}.reservation-steps__link{display:flex;flex-direction:column;align-items:center;gap:.4rem;text-decoration:none;color:var(--color-text-muted);width:100%}@media(hover:hover)and (pointer:fine){.reservation-steps__link:is(:hover,:active,:focus-visible) .reservation-steps__number{border-color:#1180ff}.reservation-steps__link:is(:hover,:active,:focus-visible) .reservation-steps__label{color:var(--color-text-emphasis)}}.reservation-steps__number{position:relative;z-index:1;flex:none;display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:50%;border:2px solid var(--color-border-light);background-color:#fff;font-size:.813rem;font-weight:700;line-height:1;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.reservation-steps__check{width:.8rem;height:.8rem}.reservation-steps__label{font-size:.813rem;text-align:center;line-height:1.3;padding:0 .25rem}@media screen and (max-width:575px){.reservation-steps__label{font-size:.75rem}}.reservation-cards{display:flex;flex-direction:column;gap:.5rem}.reservation-card{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.25rem 1rem;padding:1rem 1.25rem;border:1.5px solid var(--color-border-light);border-radius:10px;cursor:pointer;transition:border-color 225ms cubic-bezier(.25,1,.5,1),background-color 225ms cubic-bezier(.25,1,.5,1)}@media(hover:hover)and (pointer:fine){.reservation-card:is(:hover,:active,:focus-visible){border-color:#1180ff}}.reservation-card:has(input:checked){border-color:#1180ff;background-color:#1180ff0a}.reservation-card__info{flex:1;display:flex;flex-direction:column;gap:.15rem}.reservation-card__name{font-size:1rem;font-weight:600;color:var(--color-text-emphasis)}.reservation-card__info .reservation-card__name{flex:none}.reservation-card__meta{display:flex;flex-direction:column;align-items:end}.reservation-card__duration,.reservation-card__price{font-size:.938rem;font-weight:500;color:var(--color-text-muted);white-space:nowrap}.reservation-card__price{font-weight:700;color:var(--color-text-emphasis)}.reservation-card__desc{font-size:.875rem;color:var(--color-text-muted)}.reservation-card--staff{flex-wrap:nowrap;align-items:center;gap:.75rem 1rem}.reservation-card__photo{flex:none;width:3rem;height:3rem;border-radius:50%;overflow:hidden;background-color:var(--color-bg-subtle)}.reservation-card__photo img{width:100%;height:100%;object-fit:cover;display:block}.reservation-card__info{display:flex;flex-direction:column;gap:.1rem;flex:1;min-width:0}.reservation-card__role{font-size:.875rem;font-weight:500;color:var(--color-text-muted)}.reservation-summary{display:flex;flex-direction:column;gap:0;border:1.5px solid var(--color-border-light);border-radius:10px;overflow:hidden}.reservation-summary__item{display:flex;align-items:baseline;gap:1rem;padding:.75rem 1.25rem;border-bottom:1px solid var(--color-border-light)}.reservation-summary__item:last-child{border-bottom:none}.reservation-summary__label{flex:none;width:8rem;font-size:.875rem;font-weight:500;color:var(--color-text-muted)}.reservation-summary__value{font-size:.938rem;font-weight:600;color:var(--color-text-emphasis)}.reservation-summary__value--muted{font-size:.875rem;font-weight:500;color:var(--color-text-muted)}.reservation-day{padding:1.5rem 0;border-bottom:1px solid var(--color-border-light)}.reservation-day:last-of-type{border-bottom:none}.reservation-day__heading{display:flex;align-items:baseline;gap:.6rem;font-size:1.125rem;font-weight:700;color:var(--color-text-emphasis);margin:0 0 1rem}.reservation-day__date{font-size:.875rem;font-weight:500;color:var(--color-text-muted)}.reservation-day__slots{display:flex;flex-wrap:wrap;gap:.5rem}.reservation-slot{display:inline-flex;cursor:pointer}.reservation-slot__input{position:absolute;height:1px;width:1px;margin:0;padding:0;border:0;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.reservation-slot__label{display:inline-flex;align-items:center;justify-content:center;min-width:4.5rem;padding:.4rem .75rem;border-radius:6px;border:1.5px solid var(--color-border-light);font-size:.938rem;font-weight:500;color:var(--color-text);background-color:var(--color-bg);transition:border-color 225ms cubic-bezier(.25,1,.5,1),color 225ms cubic-bezier(.25,1,.5,1),background-color 225ms cubic-bezier(.25,1,.5,1);-webkit-user-select:none;user-select:none}@media(hover:hover)and (pointer:fine){.reservation-slot__label:is(:hover,:active,:focus-visible){border-color:#1180ff;color:#1180ff}}.reservation-slot__input:checked+.reservation-slot__label{border-color:#1180ff;background-color:#1180ff;color:#fff}.reservation-slot__input:focus-visible+.reservation-slot__label{outline:2px solid #1180ff;outline-offset:2px}.reservation-slot--unavailable{cursor:not-allowed}.reservation-slot--unavailable .reservation-slot__label{color:var(--color-text-muted);border-color:var(--color-border-light);background-color:var(--color-bg);opacity:.5}@media(hover:hover)and (pointer:fine){.reservation-slot--unavailable .reservation-slot__label:is(:hover,:active,:focus-visible){color:var(--color-text-muted);border-color:var(--color-border-light)}}
