@charset "UTF-8";.quick-reservation-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#11111173;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem}.quick-reservation-modal{width:100%;max-width:480px;max-height:90vh;--txt-color: #111111;--bg-primary: #f5f6f8;--black-line: rgba(17, 17, 17, .12);--text-secondary: #686868;--green-normal: #1d7a4f;--yellow-normal: #8a6100;--error: #d93a4a;color-scheme:light;color:#111;background:#fff;border:1px solid rgba(17,17,17,.08);border-radius:22px;box-shadow:0 20px 60px #11111129;overflow:hidden;display:flex;flex-direction:column}.quick-reservation-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(17,17,17,.12)}.quick-reservation-modal .modal-header .artist-info{display:flex;align-items:center;gap:.75rem}.quick-reservation-modal .modal-header .artist-info .artist-avatar{width:44px;height:44px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.quick-reservation-modal .modal-header .artist-info .artist-avatar.placeholder{display:flex;align-items:center;justify-content:center;background:#f5f6f8;font-size:1.25rem;font-weight:700;color:#00a99b}.quick-reservation-modal .modal-header .artist-info .artist-details h2{font-size:1.1rem;font-weight:600;color:#111;margin:0}.quick-reservation-modal .modal-header .btn-close{width:36px;height:36px;background:transparent;border:1px solid rgba(17,17,17,.12);border-radius:50%;color:#686868;font-size:1rem;cursor:pointer;transition:all .2s}.quick-reservation-modal .modal-header .btn-close:hover{border-color:#d93a4a;color:#d93a4a}.quick-reservation-modal .modal-content{flex:1;overflow-y:auto;padding:1.5rem}.quick-reservation-modal .modal-content .loading-state,.quick-reservation-modal .modal-content .error-state,.quick-reservation-modal .modal-content .empty-state{text-align:center;padding:2rem}.quick-reservation-modal .modal-content .loading-state p,.quick-reservation-modal .modal-content .error-state p,.quick-reservation-modal .modal-content .empty-state p{color:#686868;margin-top:1rem}.quick-reservation-modal .modal-content .loading-state .error-message,.quick-reservation-modal .modal-content .error-state .error-message,.quick-reservation-modal .modal-content .empty-state .error-message{color:#d93a4a}.quick-reservation-modal .modal-content .loading-state .btn-retry,.quick-reservation-modal .modal-content .error-state .btn-retry,.quick-reservation-modal .modal-content .empty-state .btn-retry{margin-top:1rem;padding:.5rem 1.5rem;background:transparent;border:1px solid #00c7b7;color:#00a99b;border-radius:6px;cursor:pointer}.quick-reservation-modal .modal-content .loading-state .btn-retry:hover,.quick-reservation-modal .modal-content .error-state .btn-retry:hover,.quick-reservation-modal .modal-content .empty-state .btn-retry:hover{background:#00c7b714}.quick-reservation-modal .modal-content .calendar-view .btn-back{background:transparent;border:none;color:#00a99b;cursor:pointer;padding:.5rem 0;margin-bottom:1rem}.quick-reservation-modal .modal-content .calendar-view .btn-back:hover{text-decoration:underline}.quick-reservation-modal .modal-content .calendar-view .coming-soon{text-align:center;color:#686868;padding:2rem}.quick-reservation-modal .modal-content .section-title{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;color:#111;margin:0 0 .75rem}.quick-reservation-modal .modal-content .section-title .icon{font-size:1rem}.quick-reservation-modal .modal-content .earliest-slot-section{margin-bottom:1.5rem}.quick-reservation-modal .modal-content .slot-card{width:100%;display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:#f5f6f8;border:2px solid rgba(17,17,17,.12);border-radius:10px;cursor:pointer;transition:all .2s;text-align:left}.quick-reservation-modal .modal-content .slot-card:hover{border-color:#00a99b}.quick-reservation-modal .modal-content .slot-card.selected{border-color:#00c7b7;background:#00c7b714}.quick-reservation-modal .modal-content .slot-card.earliest.selected{border-color:#1d7a4f;background:#1d7a4f14}.quick-reservation-modal .modal-content .slot-card .slot-radio{font-size:1rem;color:#00a99b}.quick-reservation-modal .modal-content .slot-card .slot-time{flex:1;font-weight:600;color:#111}.quick-reservation-modal .modal-content .slot-card .btn-reserve-inline{padding:.5rem 1rem;background:#1d7a4f;color:#fff;border-radius:6px;font-size:.85rem;font-weight:600}.quick-reservation-modal .modal-content .other-slots-section{margin-bottom:1.5rem}.quick-reservation-modal .modal-content .other-slots-section .slots-list{display:flex;flex-direction:column;gap:.5rem}.quick-reservation-modal .modal-content .btn-show-calendar{width:100%;padding:.75rem;background:transparent;border:1px dashed rgba(17,17,17,.12);border-radius:8px;color:#686868;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}.quick-reservation-modal .modal-content .btn-show-calendar:hover{border-color:#00c7b7;color:#00a99b}.quick-reservation-modal .modal-content .duration-section{margin-bottom:1.5rem}.quick-reservation-modal .modal-content .duration-section .duration-options{display:flex;gap:.5rem;flex-wrap:wrap}.quick-reservation-modal .modal-content .duration-section .duration-options .duration-btn{padding:.75rem 1.25rem;background:#f5f6f8;border:2px solid rgba(17,17,17,.12);border-radius:8px;color:#111;font-weight:600;cursor:pointer;transition:all .2s}.quick-reservation-modal .modal-content .duration-section .duration-options .duration-btn:hover:not(.disabled){border-color:#00a99b}.quick-reservation-modal .modal-content .duration-section .duration-options .duration-btn.selected{border-color:#00c7b7;background:#00c7b714;color:#00a99b}.quick-reservation-modal .modal-content .duration-section .duration-options .duration-btn.disabled{opacity:.4;cursor:not-allowed}.quick-reservation-modal .modal-content .price-info{background:#f5f6f8;border:1px solid rgba(17,17,17,.12);border-radius:10px;padding:1rem 1.25rem}.quick-reservation-modal .modal-content .price-info .price-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.quick-reservation-modal .modal-content .price-info .price-row:not(:last-child){border-bottom:1px solid rgba(17,17,17,.12)}.quick-reservation-modal .modal-content .price-info .price-row .label{color:#686868;font-size:.9rem}.quick-reservation-modal .modal-content .price-info .price-row .value{color:#111;font-weight:600}.quick-reservation-modal .modal-content .price-info .price-row .value .max-time{margin-left:.5rem;font-size:.8rem;color:#686868;font-weight:400}.quick-reservation-modal .modal-content .price-info .price-row.total .value{font-size:1.1rem;color:#00a99b}.quick-reservation-modal .modal-content .price-info .price-row.balance .value{color:#1d7a4f}.quick-reservation-modal .duration-section .\!text-white{color:#111!important}.quick-reservation-modal .modal-footer{display:flex;gap:.75rem;padding:1.25rem 1.5rem;border-top:1px solid rgba(17,17,17,.12)}.quick-reservation-modal .modal-footer .btn-cancel,.quick-reservation-modal .modal-footer .btn-reserve{flex:1;padding:.875rem;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s}.quick-reservation-modal .modal-footer .btn-cancel{background:#fff;border:1px solid rgba(17,17,17,.16);border-radius:999px;color:#111}.quick-reservation-modal .modal-footer .btn-cancel:hover:not(:disabled){border-color:#1111114d;color:#111}.quick-reservation-modal .modal-footer .btn-reserve{background:linear-gradient(135deg,#00c7b7,#b9c3ff 60%,#ffb6e6);border:0 solid transparent;border-radius:999px;color:#fff;box-shadow:0 10px 24px #00c7b738}.quick-reservation-modal .modal-footer .btn-reserve:hover:not(:disabled){opacity:.9}.quick-reservation-modal .modal-footer .btn-reserve:disabled{opacity:.5;cursor:not-allowed}
