.booking-container,.bookings-container{background-color:#f8f9fa;min-height:100vh;padding:48px 16px}.booking-card,.bookings-card{background-color:#fff;border:1px solid #e0e0e0;border-radius:24px;max-width:1000px;margin:0 auto;overflow:hidden;box-shadow:0 10px 30px #00000026}.booking-header,.bookings-header{color:#fff;text-align:center;background-color:#152040;padding:48px 32px}.booking-header h1,.bookings-header h1{letter-spacing:-.02em;margin:0 0 12px;font-size:2.75rem;font-weight:700}.booking-header p,.bookings-header p{color:#ffc441;margin:0;font-size:1.35rem}.booking-content,.bookings-content{padding:48px 40px}.form-group label,.bookings-content label{color:#333;margin-bottom:10px;font-size:1.05rem;font-weight:600;display:block}.form-input{color:#333;border:2px solid #e0e0e0;border-radius:16px;outline:none;width:100%;padding:18px 20px;font-size:1.1rem;transition:border-color .2s}.form-input:focus{border-color:#2f4890}.calendar-wrapper{background-color:#fff;border:2px solid #e0e0e0;border-radius:16px;padding:20px}.calendar-nav{color:#333;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:1.2rem;font-weight:600;display:flex}.calendar-nav button{color:#2f4890;cursor:pointer;background:0 0;border:2px solid #2f4890;border-radius:12px;padding:8px 16px;font-weight:600}.calendar-nav button:hover{color:#fff;background-color:#2f4890}.custom-grid{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.weekday-header{color:#666;padding:8px 0;font-size:.95rem;font-weight:600}.day-cell{aspect-ratio:1;cursor:pointer;border:2px solid #0000;border-radius:12px;justify-content:center;align-items:center;font-size:1.1rem;font-weight:500;transition:all .2s;display:flex}.day-cell:hover{background-color:#f0f4ff;border-color:#2f4890}.day-cell.selected{color:#fff;background-color:#2f4890;font-weight:700}.day-cell.outside-month{color:#bbb}.session-options,.payment-options,.distance-options{flex-direction:column;gap:14px;display:flex}.option-label{cursor:pointer;color:#333;align-items:center;gap:14px;font-size:1.15rem;display:flex}.option-label input[type=radio],.option-label input[type=checkbox]{accent-color:#2f4890;cursor:pointer;width:24px;height:24px}.distance-options{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-top:8px;display:grid}.distance-label{cursor:pointer;color:#333;background-color:#fff;border:2px solid #e0e0e0;border-radius:12px;align-items:center;gap:12px;min-height:52px;padding:12px 16px;font-size:1.05rem;transition:all .2s;display:flex}.distance-label:hover{background-color:#f8f9fa;border-color:#2f4890}.distance-label input[type=checkbox]{accent-color:#2f4890;flex-shrink:0;width:22px;height:22px;margin:0}.distance-label span{flex:1;font-weight:500}@media (max-width:600px){.distance-options{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.distance-label{min-height:48px;padding:10px 14px;font-size:1rem}}.submit-button{color:#fff;cursor:pointer;background-color:#2f4890;border:none;border-radius:16px;width:100%;margin-top:16px;padding:20px 32px;font-size:1.25rem;font-weight:600;transition:all .2s}.submit-button:hover{background-color:#1e305f}.submit-button:disabled{cursor:not-allowed;background-color:#6b7ea3}.success-message{color:#2f6e2f;text-align:center;background-color:#e8f5e8;border-radius:12px;margin-top:24px;padding:16px;font-weight:500}.footer-note{text-align:center;color:#666;background-color:#f8f9fa;border-top:1px solid #e0e0e0;padding:24px 40px;font-size:.95rem}.bookings-content{grid-template-columns:1fr 1fr;gap:40px;display:grid}@media (max-width:900px){.bookings-content{grid-template-columns:1fr}}.bookings-list{background-color:#f8f9fa;border:2px solid #e0e0e0;border-radius:16px;min-height:420px;padding:24px}.booking-item{background:#fff;border-radius:12px;padding:18px 20px}
