.picks-availability{margin:24px 0;padding:20px;border:1px solid #dfd3c8;border-radius:16px;background:#fffcf9}.picks-availability h3{margin:0 0 8px}.availability-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.picks-availability fieldset{border:1px solid #d8cbbc;border-radius:12px;padding:14px;margin:18px 0;min-width:0}.availability-week{display:flex;flex-wrap:wrap;gap:10px}.picks-availability .availability-week label{display:flex;align-items:center;gap:8px;margin:0;padding:10px;border:1px solid #d8cbbc;border-radius:8px}.availability-week input{min-height:24px;width:24px}.availability-date-range{display:flex;gap:14px;flex-wrap:wrap;align-items:end}.availability-date-range label{flex:1;min-width:160px}.availability-date-range button{margin-bottom:10px}.picks-availability [data-blackout-chips]{display:flex;flex-wrap:wrap;gap:8px}.blackout-chip{display:inline-flex;align-items:center;gap:8px;padding:4px 8px 4px 12px;border-radius:12px;background:#f7e5e9}.blackout-chip button{font-size:20px;min-width:36px;min-height:36px;padding:2px}.availability-publish{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:20px 0}.availability-publish span{font-size:.95rem}.availability-calendar-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;border-top:1px solid #dfd3c8;padding-top:24px}.availability-month-nav{display:flex;align-items:center;gap:14px}.availability-month-nav button{font-size:24px;min-width:44px}.availability-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:16px 0}.availability-weekday{text-align:center;font-size:.9rem;font-weight:700}.picks-availability .availability-day{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:80px;padding:12px 8px;border:1px solid #ded5cb;border-radius:10px;background:#f0ece7;color:#5d534b;min-width:0;margin:0}.availability-day span{font-size:1.1rem;font-weight:700}.availability-day small{font-size:.8rem;line-height:1.2}.picks-availability .availability-day.is-open{background:#e5f1e9;color:#245541;border-color:#a4c2b0}.picks-availability .availability-day.is-blocked{background:#f8e5ea;color:#7d4051;border-color:#d9b3bf}.picks-availability .availability-day[aria-pressed=true]{outline:3px solid #77583f;outline-offset:1px}.availability-day.other-month{opacity:.5}.availability-day:disabled{opacity:.4}.availability-selected{margin-top:24px}.availability-selected h4{font-size:1.2rem;margin:0 0 12px}.availability-times{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.availability-time{display:grid;gap:8px;padding:14px;border:1px solid #dfd3c8;border-radius:10px;background:#fff}.availability-time button{margin:0}.availability-day-notice{padding:12px;background:#fff2df;border-radius:10px}.picks-availability [data-blackout-error]:empty{display:none}.picks-availability [data-blackout-error]{color:#8a2929}@media(max-width:600px){.picks-availability{padding:14px}.availability-calendar{gap:5px}.picks-availability .availability-day{min-height:65px;padding:8px 4px}.availability-day small{font-size:.66rem}.availability-date-range{display:grid;grid-template-columns:1fr}.availability-date-range label{min-width:0}.availability-date-range button{margin:0}.availability-publish{display:grid}.availability-calendar-heading{align-items:start}.availability-month-nav{width:100%;justify-content:space-between}.picks-availability .availability-week label{padding:8px;gap:5px}.availability-week{gap:6px}}

.availability-settings{align-items:end}.picks-availability [data-blackout-chips]{max-height:220px;overflow-y:auto}.availability-legend{font-size:.9rem}@media(max-width:600px){.availability-day small{font-size:0;white-space:nowrap}.availability-day small::after{content:attr(data-short-status);font-size:.68rem;white-space:nowrap}}

.availability-day-editor{margin:20px 0;padding:16px;border:1px solid #ccb8a7;border-radius:12px;background:#fff}.day-hour-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.picks-appointments .day-hour-grid label{display:flex;align-items:center;gap:9px;padding:8px;margin:0}.day-hour-grid input[type=checkbox]{width:22px;height:22px;min-height:22px;flex:0 0 22px}.availability-day-editor [data-day-error]{color:#8a2929}.availability-day-editor [data-day-error]:empty{display:none}.availability-day small.availability-booked-count{font-size:.75rem!important;white-space:normal;font-weight:700}.availability-day small.availability-booked-count::after{content:none!important}
