#booking{max-width:700px;margin:50px auto;padding:30px;border-radius:16px;box-shadow:0 4px 24px var(--shadow-color);text-align:center;background:var(--card-bg);border:1px solid var(--border-color)}[data-theme=dark] #booking{background:radial-gradient(120% 120%at 0 0,rgba(236,72,153,.12),transparent 52%),radial-gradient(110% 120%at 100%0,rgba(59,130,246,.1),transparent 50%),radial-gradient(130% 120%at 100% 100%,rgba(34,211,238,.12),transparent 54%),radial-gradient(110% 120%at 8% 92%,rgba(244,114,182,.08),transparent 48%),linear-gradient(180deg,rgba(14,15,19,.96),rgba(17,18,23,.95));border-color:rgba(255,255,255,.07);box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 18px 32px rgba(0,0,0,.3)}[data-theme=dark] .booking-form input,[data-theme=dark] .booking-form textarea{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1);color:var(--text-primary)}[data-theme=dark] .booking-form input:focus,[data-theme=dark] .booking-form textarea:focus{border-color:var(--accent-color)}.booking-header{margin-bottom:32px}.booking-icon{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#2962ff,#1565c0);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:28px;color:#fff}#booking h2{font-size:28px;margin-bottom:8px;color:var(--text-primary);font-weight:700}#booking p{font-size:15px;margin-bottom:0;color:var(--text-secondary);line-height:1.5}.booking-services{margin-bottom:32px;text-align:left}.booking-services-title{font-size:16px;font-weight:700;margin-bottom:16px;color:var(--text-primary);text-align:center}.booking-services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.form-group input,.form-group textarea,.service-card{border:2px solid var(--border-color);font-family:inherit}.service-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 12px;border-radius:12px;background:var(--card-bg);cursor:pointer;transition:all .25s ease;text-align:center}.service-card:hover{border-color:var(--accent-color);background:color-mix(in srgb,var(--accent-color) 6%,var(--card-bg));transform:translateY(-2px)}.service-card.selected{border-color:var(--accent-color);background:color-mix(in srgb,var(--accent-color) 12%,var(--card-bg));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-color) 30%,transparent)}.service-card ion-icon{font-size:28px;color:var(--accent-color)}.form-group label,.service-card-title{font-size:14px;color:var(--text-primary)}.service-card-title{font-weight:700;line-height:1.3}.service-card-desc{font-size:12px;color:var(--text-secondary);line-height:1.4}.booking-form-wrapper{text-align:left}.booking-form,.form-group{display:flex;flex-direction:column;gap:20px}.form-group{gap:6px}.form-group label{font-weight:600}.form-group input,.form-group textarea{padding:12px 16px;border-radius:10px;font-size:15px;background:var(--bg-primary);color:var(--text-primary);transition:border-color .3s;resize:none}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent-color);outline:0}.booking-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;background:linear-gradient(135deg,var(--accent-color),#0056b3);color:#fff;border:0;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s}.booking-submit:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,123,255,.4)}.booking-submit:disabled{opacity:.45;cursor:not-allowed;transform:none!important;box-shadow:none!important}.required-star{color:#e74c3c}.field-counter,.field-msg{display:block;font-size:12px;margin-top:2px}.field-counter{text-align:right;color:var(--text-secondary)}.field-msg{min-height:16px}.booking-status{padding:12px 16px;border-radius:10px;font-size:14px;font-weight:500;text-align:center;display:none}.booking-status--success{display:block;background:rgba(46,204,113,.12);color:#27ae60;border:1px solid rgba(46,204,113,.25)}.booking-status--error{display:block;background:rgba(231,76,60,.12);color:#e74c3c;border:1px solid rgba(231,76,60,.25)}.booking-retry-countdown{margin-top:6px;font-weight:700;font-size:16px}.captcha-wrapper{width:100%;display:flex!important;justify-content:center}.h-captcha{text-align:center;width:100%!important}@media (max-width:768px){#booking{margin:0 8px;padding:20px;border-radius:12px;max-width:none}.booking-form{gap:16px}.booking-services-grid{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.service-card{flex-direction:row;width:auto;padding:6px 14px;border-radius:20px;gap:6px}.service-card ion-icon{font-size:16px}.service-card-title{font-size:12px;white-space:nowrap}.service-card-desc{display:none}.captcha-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;justify-content:flex-start}}