.studio-public.view-booking{--primary:#d6bd7f;--primary-hover:#e6d39e;--bg-color:#131410;--card-bg:#1d1f19;--input-bg:#23261f;--border-color:#393e31;--text-muted:#b1b5a5;background:#131410;color:#f3f0e7;font-size:1rem}
.studio-public.view-booking .container{max-width:44rem;width:calc(100% - 1.5rem);margin:1rem auto;padding:1.2rem;border-radius:1.4rem;background:#191b16;border:1px solid #34392c}
.studio-public.view-booking .header{margin-bottom:1.6rem;text-align:left;display:grid;grid-template-columns:3.75rem 1fr;column-gap:.85rem;align-items:center}
.studio-public.view-booking .header img{grid-row:span 2;width:3.75rem;height:3.75rem;max-width:none;margin:0}.studio-public.view-booking .header h1{font-family:'Studio Display',Georgia,serif;font-size:1.8rem;letter-spacing:0}.studio-public.view-booking .header p{margin:.15rem 0 0;font-size:.875rem}
.studio-public.view-booking .booking-step-title{font-family:'Studio Display',Georgia,serif;font-size:1.7rem;margin-bottom:.6rem}.studio-public.view-booking .booking-hint{font-size:.9rem;line-height:1.6}.studio-public.view-booking #user-greeting{font-size:1rem!important;text-align:left!important;margin-bottom:1rem!important}
.studio-public.view-booking .gender-toggle{padding:.3rem;gap:.4rem;background:#22251c;border:1px solid #3c4133}.studio-public.view-booking .gender-toggle-btn{min-height:3rem;border:0;font-size:1rem;box-shadow:none}.studio-public.view-booking .gender-toggle-btn.active{background:#d6bd7f;color:#15170f;box-shadow:none}
.booking-category{color:#c8ccb9;font:600 .82rem/1.5 'Studio Sans',sans-serif;text-transform:uppercase;letter-spacing:.1em;margin:1.6rem 0 .65rem}
.booking-service{padding:1rem 0;border-bottom:1px solid #373d2e;transition:background .18s,border-color .18s}.booking-service.is-selected{background:#d6bd7f0b;border-bottom-color:#a38b52}.service-title-row{display:flex;gap:1rem;align-items:baseline;justify-content:space-between}.service-title-row h4{font-size:1rem;font-weight:600;line-height:1.5;min-width:0;overflow-wrap:anywhere}.service-title-row strong{white-space:nowrap;color:#ddc68f;font-size:.95rem;font-weight:600}.service-description{color:#bdc2b0;font-size:.9rem;line-height:1.6;margin:.4rem 0 .65rem;overflow-wrap:anywhere}
.service-choice-row{display:flex;gap:.5rem;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-top:.5rem}.service-choice-row>span{font-size:.875rem;color:#aeb69e}.service-choice-actions{display:flex;gap:.45rem;flex-wrap:wrap}.service-example,.service-add,.booking-add-another,.service-example-close{font:inherit;font-size:.875rem;min-height:2.85rem;padding:.6rem .75rem;cursor:pointer;border:1px solid #4b523e;border-radius:.65rem;background:transparent;color:#d0d4c3}.service-add{border-color:#716441;color:#e7d3a3}.service-add[aria-pressed=true]{background:#d6bd7f;color:#191b15;border-color:#d6bd7f}.service-example:hover{background:#2c3222}.booking-add-another{margin:.1rem 0 1rem;width:100%;border-style:dashed}.booking-add-another:hover{border-color:#d6bd7f}
.service-basket{position:sticky;bottom:.7rem;z-index:3;margin-top:1.4rem;background:#272b20f5;backdrop-filter:blur(16px);border:1px solid #746642;border-radius:1rem;padding:1rem;box-shadow:0 10px 25px #0004}.service-basket[hidden]{display:none}.service-basket>strong{font-size:.9rem;color:#e1cd98}.service-basket p{line-height:1.6;font-size:.9rem;margin:.6rem 0;overflow-wrap:anywhere}.service-basket .basket-note{font-size:.8rem;color:#b6bea7}.service-basket .btn{margin-top:.5rem;min-height:3rem;padding:.7rem;box-shadow:none}
#basket-items{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.basket-chip{font:inherit;font-size:.8rem;line-height:1.4;min-height:2.75rem;max-width:100%;overflow-wrap:anywhere;cursor:pointer;padding:.4rem .7rem;background:#343b2a;color:#e0e3d8;border:1px solid #4b573c;border-radius:.65rem;text-align:left}
.service-example-dialog{background:#1c1f18;color:#f3f0e7;width:calc(100% - 1.5rem);max-width:40rem;max-height:92dvh;border:1px solid #555c44;border-radius:1.2rem;padding:1rem;overflow:auto;margin:auto}.service-example-dialog::backdrop{background:#050704cc;backdrop-filter:blur(5px)}.service-example-dialog h2{font-family:'Studio Display',Georgia,serif;font-size:1.6rem;margin:1rem 0}.service-example-dialog img{display:block;width:100%;max-height:65dvh;object-fit:contain;border-radius:.7rem}.service-example-dialog p{font-size:.9rem;line-height:1.65;color:#c3cbb5;margin:1rem 0 .2rem}.service-example-close{display:block;margin-left:auto}
.studio-public.view-booking button:focus-visible,.studio-public.view-booking input:focus-visible{outline:2px solid #dcc790;outline-offset:3px}.studio-public.view-booking .time-slot{min-height:3rem}.studio-public.view-booking .btn{min-height:3rem}.studio-public.view-booking .privacy-box{font-size:.9rem}.studio-public.view-booking .privacy-box label{font-size:.875rem}.studio-public.view-booking #step-4 .booking-choice{font-size:.95rem}.studio-public.view-booking .btn-primary{background:#d6bd7f;color:#171910}
@media(min-width:768px){.studio-public.view-booking .container{padding:2rem 2.5rem;margin:2rem auto}.studio-public.view-booking .header{grid-template-columns:4.5rem 1fr}.studio-public.view-booking .header img{width:4.5rem;height:4.5rem}.studio-public.view-booking .header h1{font-size:2.3rem}.service-choice-row{flex-wrap:nowrap}.service-description{max-width:55ch}.service-basket{bottom:1rem}}
@media(prefers-reduced-motion:reduce){.booking-service{transition:none}}

.service-select{display:flex;align-items:center;gap:.75rem;width:100%;padding:.5rem 0;border:0;background:transparent;color:#f3f0e7;text-align:left;font:inherit;min-height:3.5rem;cursor:pointer}.service-select[disabled]{cursor:default;opacity:.55}.service-select:focus-visible{outline:2px solid #ddc68f;outline-offset:3px;border-radius:.4rem}.service-selection-dot{flex:none;width:1.4rem;height:1.4rem;display:grid;place-items:center;border:1.5px solid #818c73;border-radius:50%;color:#191b15;font-size:.9rem}.service-select[aria-pressed=true] .service-selection-dot{background:#d6bd7f;border-color:#d6bd7f}.service-select-text{flex:1;min-width:0}.service-select-name{display:block;font-size:1rem;line-height:1.5;font-weight:600;overflow-wrap:anywhere}.service-duration{display:block;color:#bdc5ae;font-size:.875rem;line-height:1.5;margin-top:.1rem}.service-select strong{flex:none;font-size:.95rem;color:#ddc68f;white-space:nowrap}.booking-service{padding:.75rem 0}.booking-service.is-selected{background:transparent}.service-description{margin:.35rem 0 .65rem 2.15rem;font-size:.9375rem;line-height:1.6}.service-photo-line{margin-left:2.15rem;display:flex;align-items:center;flex-wrap:wrap;gap:.4rem .75rem}.service-photo-line .service-example{color:#ddc68f;padding:.5rem 0;border:0;text-decoration:underline;text-underline-offset:.2rem;min-height:2.75rem;font-size:.9375rem}.service-photo-line>span{color:#bbc3ab;font-size:.875rem;line-height:1.55;flex:1 1 13rem}.booking-bottom-actions{position:sticky;bottom:.5rem;margin-top:1.25rem;padding:.9rem;background:#20251df7;border:1px solid #4b523e;border-radius:.9rem;z-index:3}.booking-bottom-actions .service-basket{position:static;margin:0;border:0;padding:0;background:transparent;box-shadow:none;backdrop-filter:none}.booking-bottom-actions .btn{margin-top:.6rem;padding:.85rem}.booking-bottom-actions .booking-add-another{margin:.5rem 0 0;border:0;padding:.6rem;font-size:.9375rem;color:#d4d8ca;min-height:2.85rem}.booking-bottom-actions .basket-note{margin:0;font-size:.875rem}.booking-bottom-actions #basket-summary{margin:.5rem 0}.booking-bottom-actions #basket-items{margin-top:0}.basket-chip{font-size:.875rem}#client-existing-requests{margin-bottom:1rem;color:#b8c2a6;font-size:.9375rem}#client-existing-requests>summary{padding:.75rem 0;cursor:pointer;min-height:2.75rem}.studio-public.view-booking .time-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-public.view-booking .booking-hint{font-size:1rem}@media(min-width:768px){.service-photo-line{flex-wrap:nowrap}.booking-bottom-actions{bottom:1rem}}

.booking-bottom-actions{position:static;background:#20251d}.booking-bottom-actions.has-selection{position:static}.booking-bottom-actions #basket-summary{margin:.35rem 0;font-weight:600}.booking-bottom-actions .basket-note{font-size:.875rem;color:#bcc6ac}

.studio-public.view-booking .form-group label{font-size:.875rem}

.booking-bottom-actions,.booking-bottom-actions.has-selection{position:static!important;bottom:auto!important;margin-top:1.5rem;padding:1.25rem 0 0;background:transparent;border:0;border-top:1px solid #3c4433;border-radius:0;box-shadow:none;backdrop-filter:none;z-index:auto}.booking-bottom-actions .service-basket{position:static!important;box-shadow:none;border:0;background:transparent;padding:0}.service-select-description{display:block;margin:.3rem 0 .4rem;color:#c6cdbb;font-size:.9375rem;line-height:1.6;font-weight:400;overflow-wrap:anywhere}.service-select{align-items:flex-start}.service-selection-dot{margin-top:.3rem}.service-select strong{margin-top:.15rem}.service-photo-line{margin-top:.35rem}
