.booking-form{--uf-primary:#8f5034;--uf-primary-dark:#75402a;--uf-primary-soft:#f6eee9;--uf-text:#292725;--uf-text-muted:#716c65;--uf-text-light:#918b83;--uf-border:#e5e0d8;--uf-border-light:#eeeae4;--uf-bg:#f8f6f2;--uf-white:#fff;width:100%;color:var(--uf-text)}.booking-form>div{width:100%}.booking-form section{background:var(--uf-white);box-shadow:0 1px 2px #29272508;border:1px solid var(--uf-border)!important;border-radius:16px!important;padding:24px!important}.booking-form section+section{margin-top:24px}.booking-form h2{color:var(--uf-text);letter-spacing:-.01em;font-size:17px;font-weight:650;line-height:1.4;margin-bottom:20px!important}.booking-form h3{color:var(--uf-text);font-size:14px;font-weight:650;line-height:1.4}.booking-form label{color:#5f5952;line-height:1.4;display:block;margin-bottom:7px!important;font-size:12px!important;font-weight:600!important}.booking-form input,.booking-form select,.booking-form textarea{outline:none;width:100%;min-height:42px;line-height:1.4;transition:border-color .15s,box-shadow .15s,background-color .15s;color:var(--uf-text)!important;background:#fff!important;border:1px solid #dcd6ce!important;border-radius:10px!important;padding:10px 12px!important;font-size:13px!important}.booking-form input:hover,.booking-form select:hover,.booking-form textarea:hover{border-color:#c9c1b8!important}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{box-shadow:0 0 0 3px #8f503417;border-color:var(--uf-primary)!important}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#aaa39b;opacity:1}.booking-form input[type=date]{cursor:pointer}.booking-form input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.65}.booking-form input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}.booking-form input[type=number]{font-variant-numeric:tabular-nums}.booking-form input[type=number]::-webkit-inner-spin-button{opacity:.55}.booking-form input[type=number]::-webkit-outer-spin-button{opacity:.55}.booking-form input:disabled,.booking-form select:disabled,.booking-form textarea:disabled{cursor:not-allowed;color:#77716a!important;background:#f4f2ef!important;border-color:#e4dfd8!important}.booking-form .firm-results{z-index:50;border:1px solid var(--uf-border);background:#fff;border-radius:11px;width:100%;margin-top:5px;position:absolute;overflow:hidden;box-shadow:0 10px 25px #2927251a,0 2px 6px #2927250d}.booking-form .firm-results button{width:100%;color:var(--uf-text);text-align:left;cursor:pointer;background:0 0;border:0;padding:10px 13px;font-size:13px;transition:background .12s;display:block}.booking-form .firm-results button:hover{background:var(--uf-bg)}.booking-form p{color:var(--uf-text-muted)}.booking-form .helper-text{color:var(--uf-text-light);margin-top:6px;font-size:11px;line-height:1.5}.booking-form .form-card{border:1px solid var(--uf-border-light);background:#fff;border-radius:13px;padding:18px}.booking-form .form-card+.form-card{margin-top:16px}.booking-form .form-card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.booking-form table{border-collapse:separate;border-spacing:0;border:1px solid var(--uf-border);background:#fff;border-radius:12px;width:100%;overflow:hidden}.booking-form thead{background:var(--uf-bg)}.booking-form th{border-bottom:1px solid var(--uf-border);color:#625c55;letter-spacing:.02em;text-transform:uppercase;font-weight:650;line-height:1.4;padding:11px 13px!important;font-size:11px!important}.booking-form td{border-bottom:1px solid var(--uf-border-light);vertical-align:middle;padding:12px 13px!important}.booking-form tbody tr:last-child td{border-bottom:0}.booking-form tbody tr:hover{background:#fcfbf9}.booking-form table input{min-height:38px;border-radius:8px!important;padding:8px 10px!important;font-size:13px!important}.booking-form table td:nth-child(3) input{margin:0 auto;width:78px!important}.booking-form table td:nth-child(4) input{min-width:110px}.booking-form .payment-summary{border:1px solid var(--uf-border);background:var(--uf-bg);border-radius:12px;width:100%;max-width:360px;margin-top:20px;margin-left:auto;padding:16px}.booking-form .payment-summary-row{color:var(--uf-text-muted);justify-content:space-between;align-items:center;padding:7px 0;font-size:13px;display:flex}.booking-form .payment-summary-total{color:var(--uf-text);border-top:1px solid #ddd7cf;justify-content:space-between;align-items:center;margin-top:5px;padding-top:12px;font-size:14px;font-weight:700;display:flex}.booking-form .action-area{border-top:1px solid var(--uf-border-light);margin-top:22px;padding-top:18px}.booking-form .action-buttons{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.booking-form button{cursor:pointer;border-radius:9px;min-height:38px;font-size:12px;font-weight:600;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .1s}.booking-form button:active{transform:translateY(1px)}.booking-form button:disabled{cursor:not-allowed;opacity:.5}.booking-form .btn-primary{border:1px solid var(--uf-primary);background:var(--uf-primary);color:#fff;padding:9px 17px}.booking-form .btn-primary:hover{border-color:var(--uf-primary-dark);background:var(--uf-primary-dark)}.booking-form .btn-secondary{color:#4f4a45;background:#fff;border:1px solid #d8d2ca;padding:9px 17px}.booking-form .btn-secondary:hover{background:#f8f6f2;border-color:#c5bdb4}.booking-form .btn-dark{color:#fff;background:#292725;border:1px solid #292725;padding:9px 17px}.booking-form .btn-dark:hover{background:#151413}.booking-form .btn-add{color:var(--uf-primary);background:#fff;border:1px solid #d8d2ca;padding:7px 12px;font-size:12px}.booking-form .btn-add:hover{background:var(--uf-primary-soft);border-color:#c6a898}.booking-form .btn-remove{color:#b24b3d;background:#fff;border:1px solid #ead1cb;padding:7px 11px}.booking-form .btn-remove:hover{background:#fff7f5;border-color:#dfb5ad}.booking-form .save-message{color:#3f7d4f;text-align:right;margin-top:8px;font-size:12px;font-weight:500}.booking-form .empty-state{color:#918b83;text-align:center;background:#faf9f7;border:1px dashed #ddd7cf;border-radius:10px;padding:18px;font-size:12px}.booking-form .error-message{color:#b33f32;margin-top:8px;font-size:12px}.booking-form .payment-entry{border:1px solid var(--uf-border-light);background:#fff;border-radius:11px;grid-template-columns:minmax(0,1fr) 180px auto;align-items:end;gap:12px;padding:14px;display:grid}.booking-form .payment-entry+.payment-entry{margin-top:9px}.booking-form .service-entry{border:1px solid var(--uf-border-light);background:#fff;border-radius:12px;padding:16px}.booking-form .service-entry+.service-entry{margin-top:12px}@media (max-width:768px){.booking-form section{border-radius:13px!important;padding:18px!important}.booking-form h2{font-size:16px}.booking-form .payment-entry{grid-template-columns:1fr}.booking-form .payment-summary{max-width:none}.booking-form .action-buttons{justify-content:stretch}.booking-form .action-buttons button{flex:auto}}@media (max-width:640px){.booking-form section{padding:15px!important}.booking-form .form-card{padding:14px}.booking-form table{min-width:680px}.booking-form .action-buttons{flex-direction:column;align-items:stretch}.booking-form .action-buttons button{width:100%}}.booking-form button:focus-visible,.booking-form input:focus-visible,.booking-form select:focus-visible,.booking-form textarea:focus-visible{outline-offset:2px;outline:2px solid #8f503459}html.dark .booking-form{--uf-text:#efe9e0;--uf-text-muted:#b9b1a6;--uf-text-light:#978f83;--uf-border:#3f3a33;--uf-border-light:#38332d;--uf-bg:#16130e;--uf-white:#211d17}html.dark .booking-form label{color:#c4bcb0!important}html.dark .booking-form input,html.dark .booking-form select,html.dark .booking-form textarea{color:#efe9e0!important;background:#16130e!important;border-color:#3f3a33!important}html.dark .booking-form input::placeholder,html.dark .booking-form textarea::placeholder{color:#837c72}html.dark .booking-form input:hover,html.dark .booking-form select:hover,html.dark .booking-form textarea:hover{border-color:#4b453d!important}html.dark .booking-form input:disabled,html.dark .booking-form select:disabled,html.dark .booking-form textarea:disabled{color:#6b645a!important;background:#262219!important;border-color:#38332d!important}html.dark .booking-form .firm-results,html.dark .booking-form .form-card,html.dark .booking-form table,html.dark .booking-form .service-entry,html.dark .booking-form .payment-entry{background:#211d17}html.dark .booking-form tbody tr:hover{background:#28231c}html.dark .booking-form .btn-secondary,html.dark .booking-form .btn-add{color:#efe9e0;background:#211d17;border-color:#4b453d}html.dark .booking-form .btn-secondary:hover{background:#16130e;border-color:#5b554c}html.dark .booking-form .btn-remove{color:#e7a49a;background:#211d17;border-color:#7b2f27}html.dark .booking-form .btn-remove:hover{background:#33130f;border-color:#9d3a30}
