/* Availability is private to the professional workspace. */
.availability-settings{margin-bottom:24px}.availability-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.availability-heading>div{min-width:0}.availability-heading h2{font-size:22px;margin:0}.availability-heading h3{margin:0;font-size:17px}.availability-heading .eyebrow{font-size:9px;margin:0 0 9px;letter-spacing:1px}.availability-heading>.primary,.availability-heading>.quiet{flex:none;font-size:12px;min-height:44px}.availability-note,.availability-heading p:not(.eyebrow){font-size:12px;line-height:1.7;color:#64705f;margin:13px 0 18px}.availability-week-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0 24px}.availability-week-summary>div{min-width:0;background:#f4f7ed;border-radius:12px;padding:14px}.availability-week-summary dt{font-size:11px;font-weight:650;margin-bottom:7px}.availability-week-summary dd{font-size:11px;line-height:1.7;color:#64705f;margin:0;overflow-wrap:anywhere}.availability-block-heading{padding-top:22px;border-top:1px solid #e6eadf;align-items:flex-start}.availability-block-heading p{margin-bottom:10px}.availability-block-list{display:grid;gap:9px;max-height:430px;overflow:auto;padding:2px}.availability-block{border:1px solid #e4dfd3;background:#fcfaf5;border-radius:12px;padding:13px 15px;display:flex;justify-content:space-between;align-items:center;gap:15px;min-width:0}.availability-block>div:first-child{min-width:0}.availability-block strong{font-size:12px;line-height:1.5;display:block;overflow-wrap:anywhere}.availability-block small{font-size:10px;line-height:1.7;display:block;color:#776f60;margin-top:4px}.availability-block-actions{display:flex;align-items:center;gap:4px;flex:none}.availability-block-actions .quiet{font-size:10px;min-height:44px;padding:8px}.availability-empty{font-size:12px;color:#64705f;line-height:1.7}.availability-intro{display:flex;align-items:center;gap:14px;margin:15px 0 20px}.availability-intro .ze-image{width:60px;height:74px;object-fit:contain;flex:none}.availability-intro p{font-size:12px;line-height:1.7;color:#64705f;margin:0}.availability-toggle{display:flex;align-items:flex-start;gap:11px;padding:14px;background:#eff5df;border:1px solid #dfe9c8;border-radius:12px;margin-bottom:18px;cursor:pointer}.availability-toggle input[type=checkbox]{width:20px;height:20px;min-height:20px;flex:none;padding:0;margin:2px 0;accent-color:#537b22}.availability-toggle strong{display:block;font-size:12px;line-height:1.5}.availability-toggle small{display:block;font-size:10px;line-height:1.6;color:#64705f;margin-top:4px}.availability-days-editor{display:grid;gap:12px}.availability-days-editor fieldset{border:1px solid #e0e6d8;border-radius:12px;margin:0;padding:12px;min-width:0}.availability-days-editor legend{padding:0 6px;font-size:12px;font-weight:700}.availability-periods{display:grid;gap:10px}.availability-period{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 40px;gap:9px;align-items:end}.availability-period label{display:flex;flex-direction:column;gap:5px;font-size:10px;color:#64705f;min-width:0}.availability-period input{min-width:0;width:100%;min-height:44px;padding:10px;font-size:14px}.availability-period .availability-remove-period{min-width:40px;min-height:44px;font-size:21px;padding:7px;color:#6e6557}.availability-day-off{font-size:11px;color:#788272;margin:2px 0 7px}.availability-days-editor fieldset>.quiet{min-height:44px;font-size:11px;padding-left:0}.availability-date-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.availability-date-grid>.field{min-width:0}.availability-date-grid input{width:100%;min-width:0}.availability-date-grid small,#availability-block-form .field>small{font-size:10px;color:#64705f;line-height:1.6;display:block;margin-top:6px}.availability-day{margin:0 0 14px;border:1px dashed #d7dfc7;padding:12px;border-radius:12px;background:#f7f9f1;min-width:0}.availability-day>p{display:flex;flex-wrap:wrap;gap:5px 10px;margin:0;font-size:10px;line-height:1.7}.availability-day>p>span{color:#6b7761}.availability-day>p>strong{font-size:10px;font-weight:600;overflow-wrap:anywhere}.availability-day>.quiet{font-size:10px;min-height:44px;padding:7px 0;text-align:left;white-space:normal}.availability-block.is-compact{display:block;margin-top:10px;padding:10px}.availability-block.is-compact strong{font-size:10px}.availability-block.is-compact small{font-size:9px}.availability-block.is-compact .availability-block-actions{margin-top:2px;flex-wrap:wrap}.availability-block.is-compact .quiet{font-size:9px;padding:5px;min-height:44px}.availability-lesson-warning{display:block;color:#94601e;font-size:10px;line-height:1.5;margin-top:5px;overflow-wrap:anywhere}
@media(min-width:1200px){.is-week .availability-day{padding:8px}.is-week .availability-day>p{display:block}.is-week .availability-day>p>span{display:block}.is-week .availability-day>.quiet{font-size:9px}.is-week .availability-block.is-compact{padding:7px}}
@media(max-width:1050px){.availability-week-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.availability-heading{align-items:flex-start;flex-direction:column;gap:10px}.availability-heading h2{font-size:20px}.availability-heading>.primary{width:100%}.availability-heading .eyebrow{font-size:8px;line-height:1.6}.availability-week-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.availability-week-summary>div{padding:12px}.availability-block{align-items:flex-start;flex-direction:column;gap:3px;padding:12px}.availability-block-actions{align-self:flex-end}.availability-block-heading>.quiet{padding-left:0}.availability-block-heading{gap:0}.availability-intro{gap:10px}.availability-intro .ze-image{width:48px;height:61px}.availability-intro p{font-size:11px}.availability-date-grid{gap:11px}.availability-date-grid .label{font-size:11px}.availability-date-grid input,.availability-period input{font-size:16px}.availability-toggle strong{font-size:11px}.availability-period{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;gap:6px}.availability-period .availability-remove-period{min-width:36px}.availability-days-editor fieldset{padding:10px}#availability-hours .actions,#availability-block-form .actions,#availability-remove .actions{flex-direction:column;align-items:stretch}#availability-hours .actions button,#availability-block-form .actions button,#availability-remove .actions button{min-height:48px;width:100%}.availability-day{padding:11px}.availability-block.is-compact .availability-block-actions{justify-content:flex-start}.availability-block.is-compact strong{font-size:11px}}
@media(max-width:380px){.availability-date-grid{grid-template-columns:1fr}.availability-period input{padding:9px 6px}.availability-week-summary{gap:6px}.availability-week-summary>div{padding:10px}.availability-week-summary dt{font-size:10px}.availability-week-summary dd{font-size:10px}}
