/* Scoped availability surfaces; the existing finder layout is untouched. */
.availability-open{display:inline-block;border:1px solid #799a70;border-radius:20px;background:#c8fb69;color:#19342b;padding:7px 11px;margin-left:10px;font-size:11px;font-weight:850;vertical-align:middle;white-space:nowrap}
.availability-dialog{width:min(760px,calc(100vw - 28px));max-height:calc(100dvh - 30px);padding:0;border:0;border-radius:23px;color:#19342b;box-shadow:0 24px 80px #09251b66;overflow-y:auto}.availability-dialog::backdrop{background:#0c261d9c;backdrop-filter:blur(4px)}.availability-content{padding:25px}.availability-heading{display:flex;justify-content:space-between;gap:12px;align-items:start}.availability-heading h2{margin:8px 0;font-size:25px}.availability-heading small{color:#4c854b;font-weight:850;letter-spacing:1px;font-size:10px}.availability-heading button{border:0;border-radius:50%;background:#f1f5ee;color:#375244;width:35px;height:35px;font-size:24px;flex:0 0 auto}.availability-content>p{font-size:12px;line-height:1.8;color:#65776a}.availability-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}.availability-fields label{display:grid;gap:7px;font-size:12px;font-weight:750;min-width:0}.availability-fields select,.availability-fields input{width:100%;min-width:0;max-width:100%;border:1px solid #dce8d9;border-radius:10px;padding:10px;background:white;color:#19342b;min-height:43px}.availability-fields button{grid-column:1/-1;background:#c8fb69;border:0;padding:12px;border-radius:10px;font-weight:850;color:#19342b}.availability-card{padding:18px;border:1px solid #dce8d9;border-radius:14px;margin-top:12px;overflow-wrap:anywhere;background:white}.availability-card h3{font-size:16px;margin:0 0 9px}.availability-card p{font-size:12px;line-height:1.7;margin:7px 0}.availability-card small{display:block;color:#65776a;font-size:11px;line-height:1.7}.availability-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.availability-actions a,.availability-actions button{font-size:12px;border:1px solid #dce8d9;border-radius:9px;padding:10px;background:#f6faf2;color:#245239;font-weight:750}.availability-actions a:first-child{background:#e6f7d6}.availability-footnote{border-top:1px solid #e3eade;padding-top:14px}#availabilityAdminPanel .toolbar input,#availabilityAdminPanel .toolbar select{border:1px solid #dce8d9;border-radius:8px;padding:8px;background:white;max-width:100%}#availabilityAdminPanel .toolbar{gap:12px}#availabilityAdminPanel .chip input{width:auto}#availabilityAdminPanel label{min-width:0}
@media(max-width:540px){.availability-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-content{padding:20px 16px}.availability-fields select,.availability-fields input{font-size:16px}.availability-open{font-size:10px;padding:6px 9px;margin-left:5px}section.hero[class~="shell"] .eyebrow{font-size:8px;letter-spacing:.6px}}
@media(max-width:370px){.availability-open{display:block;margin:7px 0 0}}

/* Simplified public reservation chooser. */
#availabilitySearch>.availability-quick-days{grid-column:1/-1;display:flex;gap:6px;overflow-x:auto;padding:3px 0 6px}
#availabilitySearch .availability-day-chip{grid-column:auto;flex:0 0 auto;padding:9px 11px;border:1px solid #dce8d9;background:#f6faf2;font-size:12px;min-height:40px}
#availabilitySearch .availability-day-chip[aria-pressed="true"]{background:#19342b;color:white;border-color:#19342b}
#availabilitySearch .availability-selection{grid-column:1/-1;margin:0;padding:12px;border-radius:10px;background:#f3f8ee;font-size:14px;font-weight:750;line-height:1.6;overflow-wrap:anywhere}
.availability-status{padding:12px 14px;background:#f3f7f0;border-radius:12px;margin:18px 0;font-size:13px!important;line-height:1.8}
.availability-section-heading{font-size:17px;margin:24px 0 10px}.availability-official-note{font-size:12px;color:#65776a;line-height:1.8;margin:0}.availability-official-card{background:#fbfdf9}.availability-official-card .availability-actions a{display:block;width:100%;text-align:center;min-height:44px;box-sizing:border-box;background:#c8fb69}
.availability-source-details{margin-top:24px;border-top:1px solid #e3eade;padding-top:14px;color:#65776a;font-size:12px}.availability-source-details summary{cursor:pointer;min-height:32px;line-height:1.7}

.availability-official-card .availability-actions a+a{background:#f6faf2;font-weight:600;font-size:11px}
