:root{--capacity-low: #f5f2ed;--capacity-medium: #e3d5c1;--capacity-high: #b08968;--capacity-full: #594231}.booking-calendar.svelte-jaesw5{width:100%}.schedule-container.svelte-jaesw5{max-width:1100px;margin:0 auto 2rem}.schedule-loading.svelte-jaesw5{text-align:center;color:#ffffffb3;padding:2rem;background:#fff;border-radius:16px}.schedule-capacity-note.svelte-jaesw5{text-align:center;font-size:.85rem;color:#fffc;margin-bottom:1rem;font-style:italic}.two-week-grid.svelte-jaesw5{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.5rem}.schedule-week.svelte-jaesw5{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 20px #00000026;overflow-x:auto}.schedule-header.svelte-jaesw5{text-align:center;margin-bottom:1rem}.schedule-header.svelte-jaesw5 h3:where(.svelte-jaesw5){margin:0;color:#1a1a2e;font-size:1.3rem}.schedule-grid.svelte-jaesw5{display:grid;grid-template-columns:80px repeat(7,1fr);gap:2px;min-width:600px;opacity:1!important}.schedule-col.svelte-jaesw5{display:flex;flex-direction:column;gap:2px}.time-col.svelte-jaesw5 .schedule-cell:where(.svelte-jaesw5){background:#f8f9fa;font-weight:500;color:#6c757d;font-size:.7rem}.schedule-cell.svelte-jaesw5{padding:.5rem .4rem;text-align:center;font-size:.8rem;min-height:42px;display:flex;align-items:center;justify-content:center;border-radius:4px;position:relative;overflow:hidden;border:none;background:transparent}.schedule-cell.header.svelte-jaesw5{background:#1a1a2e;color:#fff;font-weight:600;min-height:50px}.schedule-cell.time.svelte-jaesw5{font-size:.75rem;white-space:nowrap;color:#6c757d;font-weight:500}.schedule-cell.empty.svelte-jaesw5{background:#f5f5f5}.schedule-col.closed-day.svelte-jaesw5{opacity:.7}.schedule-cell.header.closed-header.svelte-jaesw5{background:#6c757d}.schedule-cell.closed-column.svelte-jaesw5{background:linear-gradient(135deg,#e9ecef,#dee2e6);flex-direction:column;gap:.25rem;color:#6c757d;font-size:.8rem;min-height:auto;padding:1rem .5rem}.closed-label.svelte-jaesw5{font-weight:600;font-size:.9rem;color:#495057}.closed-reason.svelte-jaesw5{font-size:.75rem;font-style:italic;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis}.schedule-cell.available.svelte-jaesw5{background:#e8f5e9;cursor:pointer;transition:all .2s ease}.schedule-cell.available.svelte-jaesw5:hover{background:#c8e6c9;transform:scale(1.02)}.capacity-bar.svelte-jaesw5{position:absolute;left:0;top:0;bottom:0;width:var(--fill, 0%);background:var(--capacity-low);border-radius:4px 0 0 4px;transition:width .3s ease}.schedule-cell.fill-low.svelte-jaesw5 .capacity-bar:where(.svelte-jaesw5){background:var(--capacity-low)}.schedule-cell.fill-low.svelte-jaesw5{border:2px solid var(--capacity-medium)}.schedule-cell.selected.svelte-jaesw5{outline:4px solid #1976d2;outline-offset:-4px;background:#e3f2fd!important}.schedule-cell.selected.svelte-jaesw5 .capacity-bar:where(.svelte-jaesw5){background:#1976d2}.schedule-cell.past.svelte-jaesw5{background:#f5f5f5!important;cursor:not-allowed;opacity:.5}.schedule-cell.past.svelte-jaesw5:hover{transform:none;background:#f5f5f5!important}.hour-modal-overlay.svelte-jaesw5{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1001;padding:1rem}.hour-modal.svelte-jaesw5{background:#fff;padding:1.5rem;border-radius:12px;max-width:360px;width:100%;position:relative;box-shadow:0 10px 40px #0000004d}.hour-modal-close.svelte-jaesw5{position:absolute;top:.5rem;right:.75rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#999;line-height:1}.hour-modal-close.svelte-jaesw5:hover{color:#333}.hour-modal-title.svelte-jaesw5{font-size:1.2rem;font-weight:600;color:#1a1a2e;margin:0 0 .25rem;text-align:center}.hour-modal-subtitle.svelte-jaesw5{font-size:.95rem;color:#6c757d;margin:0 0 1rem;text-align:center}.hour-modal-options.svelte-jaesw5{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.hour-modal-option.svelte-jaesw5{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;transition:all .15s ease}.hour-modal-option.svelte-jaesw5:hover{background:#e9ecef;border-color:#dee2e6}.hour-modal-option.selected.svelte-jaesw5{background:#e3f2fd;border-color:#1976d2}.hour-modal-option.svelte-jaesw5 input[type=radio]:where(.svelte-jaesw5){-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border:2px solid #adb5bd;border-radius:50%;flex-shrink:0;position:relative}.hour-modal-option.svelte-jaesw5 input[type=radio]:where(.svelte-jaesw5):checked{border-color:#1976d2;background:#1976d2}.hour-modal-option.svelte-jaesw5 input[type=radio]:where(.svelte-jaesw5):checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;background:#fff;border-radius:50%}.option-time.svelte-jaesw5{font-weight:600;color:#1a1a2e;font-size:.95rem;min-width:70px}.option-instructor.svelte-jaesw5{color:#6c757d;font-size:.9rem}.hour-modal-confirm.svelte-jaesw5{width:100%;padding:.75rem;background:#b08968;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.hour-modal-confirm.svelte-jaesw5:hover{background:#96745a}.selection-summary.svelte-jaesw5{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;max-width:1100px;margin:0 auto 1.5rem;padding:1rem 1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 10px #00000014;border:2px solid transparent;transition:border-color .2s ease}.selection-summary.has-selections.svelte-jaesw5{border-color:#1976d2}.selection-summary-content.svelte-jaesw5{flex:1}.selection-count.svelte-jaesw5{font-weight:600;color:#1a1a2e;font-size:.9rem}.selection-list.svelte-jaesw5{margin-top:.5rem;font-size:.85rem;color:#6c757d}.selection-list.svelte-jaesw5 ul:where(.svelte-jaesw5){list-style:disc;margin:0;padding-left:1.25rem}.selection-list.svelte-jaesw5 li:where(.svelte-jaesw5){margin-bottom:.25rem}.booking-controls.svelte-jaesw5{display:flex;align-items:center;gap:1rem}.session-selector.svelte-jaesw5,.people-selector.svelte-jaesw5{display:flex;align-items:center;gap:.5rem}.session-selector.svelte-jaesw5 label:where(.svelte-jaesw5),.people-selector.svelte-jaesw5 label:where(.svelte-jaesw5){font-size:.9rem;color:#6c757d;font-weight:500}.session-selector.svelte-jaesw5 select:where(.svelte-jaesw5),.people-selector.svelte-jaesw5 select:where(.svelte-jaesw5){padding:.5rem .75rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.9rem;background:#fff;cursor:pointer;transition:border-color .2s ease}.session-selector.svelte-jaesw5 select:where(.svelte-jaesw5):focus,.people-selector.svelte-jaesw5 select:where(.svelte-jaesw5):focus{outline:none;border-color:#1976d2}.session-selector.svelte-jaesw5 input[type=number]:where(.svelte-jaesw5){width:60px;padding:.5rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.9rem;text-align:center}.session-selector.svelte-jaesw5 input[type=number]:where(.svelte-jaesw5):focus{outline:none;border-color:#1976d2}.btn-proceed.svelte-jaesw5{padding:.6rem 1.25rem;background:#b08968;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s,transform .15s}.btn-proceed.svelte-jaesw5:hover:not(:disabled){background:#96745a;transform:translateY(-1px)}.btn-proceed.svelte-jaesw5:disabled{background:#ccc;cursor:not-allowed}.btn-proceed.btn-book-now.svelte-jaesw5{background:#2e7d32}.btn-proceed.btn-book-now.svelte-jaesw5:hover:not(:disabled){background:#1b5e20}.schedule-legend.svelte-jaesw5{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-top:.5rem}.legend-item.svelte-jaesw5{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#fffc}.legend-bar.svelte-jaesw5{width:30px;height:10px;border-radius:3px}.legend-bar.low.svelte-jaesw5{background:#e8f5e9;border:1px solid #c8e6c9}.legend-bar.medium.svelte-jaesw5{background:#f5b942}.legend-bar.high.svelte-jaesw5{background:#e67e22}.legend-bar.full.svelte-jaesw5{background:#5d4037}.legend-color.svelte-jaesw5{width:16px;height:16px;border-radius:4px}.legend-color.empty.svelte-jaesw5{background:#e9ecef}.legend-color.closed.svelte-jaesw5{background:linear-gradient(135deg,#dee2e6,#adb5bd)}.booking-options.svelte-jaesw5{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:1100px;margin:2rem auto 0}.booking-option.svelte-jaesw5{background:#fffffff2;border-radius:12px;padding:1.5rem;text-align:center;box-shadow:0 4px 15px #0000001a}.booking-option.svelte-jaesw5 h4:where(.svelte-jaesw5){color:#1a1a2e;margin:0 0 .5rem;font-size:1.1rem}.booking-option.svelte-jaesw5 .price:where(.svelte-jaesw5){font-size:2rem;font-weight:700;color:#b08968;margin:0 0 .5rem}.booking-option.svelte-jaesw5 .price:where(.svelte-jaesw5) span:where(.svelte-jaesw5){font-size:1rem;font-weight:400;color:#6c757d}.booking-option.svelte-jaesw5 .option-desc:where(.svelte-jaesw5){color:#555;font-size:.9rem;margin:0;line-height:1.5}@media (max-width: 768px){.selection-summary.svelte-jaesw5{flex-direction:column;align-items:stretch;gap:1rem;padding:1rem}.booking-controls.svelte-jaesw5{flex-direction:column;gap:.75rem}.session-selector.svelte-jaesw5,.people-selector.svelte-jaesw5{width:100%;justify-content:space-between}.btn-proceed.svelte-jaesw5{width:100%}.schedule-grid.svelte-jaesw5{grid-template-columns:50px repeat(7,1fr)}.schedule-cell.svelte-jaesw5{min-height:36px;font-size:.7rem}.schedule-cell.time.svelte-jaesw5{font-size:.6rem}.schedule-legend.svelte-jaesw5{gap:1rem}.legend-item.svelte-jaesw5{font-size:.7rem}.hour-modal.svelte-jaesw5{padding:1.25rem}.hour-modal-option.svelte-jaesw5{padding:.6rem .75rem}}
