.booking-page{background:linear-gradient(135deg,#f5f7ff 0%,#fff 100%);min-height:100vh;padding-top:120px;padding-bottom:60px}.booking-container{max-width:1200px;margin:0 auto;padding:0 20px}.booking-header{text-align:center;margin-bottom:50px}.booking-header h1{color:#181818;margin-bottom:10px;font-size:42px;font-weight:700}.booking-header p{color:#666;font-size:18px}.booking-content{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}.therapy-selection-panel h2{color:#181818;margin-bottom:25px;font-size:24px;font-weight:700}.therapy-grid{grid-template-columns:1fr;gap:12px;display:grid}.therapy-card{cursor:pointer;text-align:left;color:#3156fe;background:#fff;border:2px solid #e0e0e0;border-radius:10px;align-items:center;gap:15px;padding:16px 20px;font-size:16px;font-weight:500;transition:all .3s;display:flex}.therapy-card:hover{background:#f5f7ff;border-color:#3156fe}.therapy-card.selected{background:#f5f7ff;border-color:#3156fe;box-shadow:0 4px 12px #3156fe33}.therapy-icon{color:#0000;background:#fff;border:2px solid #e0e0e0;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;font-weight:700;transition:all .3s;display:flex}.therapy-card.selected .therapy-icon{color:#fff;background:#3156fe;border-color:#3156fe}.therapy-name{flex:1}.booking-form-panel{background:#fff;border-radius:15px;padding:30px;box-shadow:0 5px 20px #00000014}.booking-form{flex-direction:column;gap:25px;display:flex}.form-section{border:none;margin:0;padding:0}.form-section legend{color:#181818;margin-bottom:15px;padding:0;font-size:18px;font-weight:700}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:#333;font-size:14px;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:1px solid #e0e0e0;border-radius:8px;padding:12px 15px;font-family:inherit;font-size:14px;transition:all .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3156fe;outline:none;box-shadow:0 0 0 3px #3156fe1a}.form-group textarea{resize:vertical;min-height:100px}#recipe{display:none}.file-upload-area{position:relative}.file-upload-label{cursor:pointer;text-align:center;background:#3156fe0d;border:2px dashed #3156fe;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;padding:30px 20px;transition:all .3s;display:flex}.file-upload-label:hover{background:#3156fe1a;border-color:#5271ff}.file-upload-icon{margin-bottom:10px;font-size:40px}.file-upload-text strong{color:#3156fe;margin-bottom:5px;font-size:14px;font-weight:600;display:block}.file-upload-text p{color:#666;margin:0;font-size:12px}.form-actions{gap:15px;margin-top:20px;display:flex}.submit-button{color:#fff;cursor:pointer;background:#3156fe;border:none;border-radius:50px;flex:1;padding:14px 30px;font-size:16px;font-weight:600;transition:all .3s}.submit-button:hover{color:#181818;background:#ffde59}.cancel-link{color:#3156fe;background:0 0;border:2px solid #3156fe;border-radius:50px;justify-content:center;align-items:center;padding:14px 30px;font-size:16px;font-weight:600;text-decoration:none;transition:all .3s;display:flex}.cancel-link:hover{background:#f5f7ff}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#e74c3c;box-shadow:0 0 0 3px #e74c3c1a}.error-message{color:#e74c3c;margin-top:4px;font-size:12px;font-weight:500;display:block}.required{color:#e74c3c;font-weight:700}.therapy-error{text-align:center;margin-top:15px}@media (max-width:768px){.booking-content{grid-template-columns:1fr;gap:30px}.booking-header h1{font-size:32px}.therapy-grid{grid-template-columns:1fr}.booking-form-panel{padding:20px}.form-actions{flex-direction:column}.submit-button,.cancel-link{width:100%}}
