.booking-root{display:grid;gap:22px}.booking-root .card{padding:26px;min-width:0}.booking-root h2{margin-bottom:14px}.booking-root p{line-height:1.65}.booking-tabs,.booking-actions,.booking-filters{display:flex;gap:10px;flex-wrap:wrap}.booking-tabs{margin-bottom:2px}.booking-filters .field{flex:1;min-width:200px}.booking-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.booking-package,.booking-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-bottom:1px solid #e2e6d9}.booking-package:last-child,.booking-row:last-child{border-bottom:0}.booking-package p,.booking-row p{margin:6px 0}.booking-row h3{font-size:17px;margin:5px 0}.booking-row .booking-actions{justify-content:flex-end}.booking-slot-grid,.booking-email-grid,.booking-offers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.booking-slot,.booking-email-grid article,.booking-offers form{border:1px solid #dce3d2;border-radius:16px;padding:20px;background:#fbfcf7;min-width:0}.booking-slot{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.booking-slot>span{font-size:22px;font-weight:600}.booking-slot p{margin:0;font-size:14px}.booking-slot .btn{margin-top:8px}.booking-small{font-size:12px;line-height:1.5;opacity:.85;margin:16px 0 0}.booking-empty{text-align:center;padding:32px 12px;background:#f3f5ed;border-radius:16px}.booking-offers input,.booking-offers textarea{margin:6px 0 14px;width:100%;box-sizing:border-box}.booking-offers label{display:block;font-size:13px}.booking-offers h3{margin:0}.booking-check{display:flex;align-items:center;gap:10px;margin:20px 0}.booking-check input{width:18px;height:18px;flex-shrink:0}.booking-email-preview{border:0;width:100%;height:530px;background:#f5f4ed;border-radius:14px}.booking-root .form-grid{gap:15px}.booking-email-grid .eyebrow{font-size:10px}.booking-email-grid p{font-size:13px}.booking-root select,.booking-root input{max-width:100%}.appointment-card p{color:#fafbf4;font-size:14px;line-height:1.65}.appointment-card .booking-small{color:#ced8c3;font-size:12px;opacity:1}.appointment-card .btn{margin-top:12px;background:var(--paper);color:var(--sage-deep);border-color:var(--paper);font-weight:600}.appointment-card .btn:focus-visible{outline-color:#f3e4b9}.bottom-nav:has(button[data-page="appointments"]){overflow-x:auto;justify-content:flex-start}.bottom-nav:has(button[data-page="appointments"]) button{min-width:80px;flex:1}
@media(max-width:1000px){.booking-columns{grid-template-columns:1fr}.booking-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.booking-root .card{padding:20px}.booking-slot-grid,.booking-email-grid,.booking-offers{grid-template-columns:1fr}.booking-package,.booking-row{align-items:flex-start;flex-direction:column}.booking-row .booking-actions{justify-content:flex-start}.booking-tabs .btn{flex:1;font-size:12px;padding:10px}.booking-root .form-grid{grid-template-columns:1fr}.booking-filters .field{min-width:0;width:100%;flex:auto}.booking-slot .btn{width:100%}}

.booking-dashboard{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;padding:24px}.booking-dashboard h3{margin:8px 0}.booking-dashboard p{margin:0;color:#637061}@media(max-width:600px){.booking-dashboard{align-items:flex-start;flex-direction:column}}

.booking-offers textarea{min-height:110px;resize:vertical;line-height:1.6}

.booking-group-heading{margin:32px 0 10px;padding-top:22px;border-top:1px solid #dce3d2;font-size:21px}

.booking-offer-details summary{cursor:pointer;color:var(--sage-deep);font-size:13px}.booking-offer-details p{white-space:pre-line;font-size:13px;color:var(--muted)}

.booking-app-access{color:var(--sage-deep);font-size:14px;line-height:1.5;margin:10px 0 16px}.booking-app-access span{margin-right:4px}
