.calendar-page,.booking-v2,.calendar-form,.booking-stage{min-width:0;max-width:100%}.calendar-grid,.booking-phone{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.calendar-day,.calendar-options,.calendar-member{margin:.8rem 0}.calendar-day summary{display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:space-between;padding:.9rem;cursor:pointer;background:var(--mist,#faf6ef);border-radius:12px}.calendar-day summary span{font-size:.88rem}.calendar-period{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;padding:.7rem;border:1px solid #d3c6b9;border-radius:12px;margin:.7rem 0}.calendar-form input,.calendar-form select,.booking-v2 input,.booking-v2 select{min-width:0;max-width:100%;min-height:44px}.calendar-absence{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #d3c6b9;padding:1rem 0;overflow-wrap:anywhere}.booking-v2 fieldset{border:0;padding:0;margin:0}.booking-v2 legend{font-weight:700;font-size:1.05rem;padding:0;margin:.6rem 0}.booking-steps{display:flex;gap:.5rem;flex-wrap:wrap;list-style:none;padding:0;font-size:.82rem}.booking-steps li{padding:.45rem .6rem;border-bottom:3px solid #d3c6b9}.booking-steps [aria-current]{border-color:#6d422e;font-weight:700;color:#452b20}.booking-services{display:grid;gap:.5rem;max-height:24rem;overflow-y:auto;padding:.2rem}.booking-service{display:flex;gap:.7rem;align-items:center;padding:.75rem;border:1px solid #b6a497;border-radius:12px;cursor:pointer}.booking-service input{min-height:24px;min-width:24px;flex:0 0 24px}.booking-service span{min-width:0}.booking-service small{display:block;color:#524439;margin-top:.2rem}.booking-service:has(input:checked){background:#f2e7da;border-color:#68462e}.booking-controls{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin:1rem 0}.booking-date{display:flex;align-items:end;flex-wrap:wrap;gap:.5rem}.booking-date .field{flex:1 1 180px}.booking-date button{margin-bottom:1rem}.booking-recap{padding:1rem;border:1px solid #b6a497;border-radius:14px;margin-top:1rem;background:#faf6ef;overflow-wrap:anywhere}.booking-recap p{margin:.35rem 0}.booking-v2 .slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:.5rem}.booking-v2 .slot{min-height:44px}.booking-v2 .slot input{min-height:24px;position:absolute}.booking-v2 .slot span{min-height:44px;display:grid;place-items:center}.booking-stage[hidden],[data-home-address][hidden],[data-time-fallback][hidden]{display:none!important}.calendar-options>summary,.calendar-member>summary{min-height:44px;padding:.7rem;cursor:pointer;font-weight:600}.calendar-page :focus-visible,.booking-v2 :focus-visible{outline:3px solid var(--indigo,#89562c);outline-offset:3px}.booking-change{border:2px solid #916127;padding:1rem;border-radius:12px;margin:1rem 0}.reschedule-form{max-width:580px}.booking-meta{overflow-wrap:anywhere}.booking-v2 .hint{line-height:1.5}@media(max-width:600px){.calendar-grid,.booking-phone{grid-template-columns:minmax(0,1fr)}.calendar-period{gap:.4rem}.booking-controls{flex-wrap:wrap}.booking-controls .btn{flex:1 1 160px}.booking-steps{font-size:.75rem}.calendar-day summary{display:block}.calendar-day summary span{display:block;margin-top:.3rem}.profile .booking{padding:1rem}.booking-service{padding:.7rem}.calendar-absence{flex-wrap:wrap}}

.booking-week-controls{display:flex;gap:.5rem;justify-content:space-between;flex-wrap:wrap}.booking-week{display:grid;grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:.4rem;margin:.7rem 0}.booking-week button{min-height:44px;border:1px solid #b6a497;border-radius:10px;background:#faf6ef;padding:.45rem .25rem;font:inherit;font-size:.8rem;color:#35281e}.booking-week button[aria-pressed=true]{background:#6d422e;color:#fff;border-color:#6d422e}.booking-week button:disabled{background:#f3f0ec;color:#666;border-style:dashed;cursor:default}.booking-week-controls button{min-height:44px}
