.booking-opening{background:#edf1e8;padding:12px 14px;font-weight:650;font-size:14px}.booking-message{padding:14px;border-radius:8px;line-height:1.5;font-size:15px;scroll-margin-top:110px}.booking-message.error{background:#fff0ed;color:#92382c;border:1px solid #dba496}.booking-message.info{background:#edf1e8;color:#344b30}.booking-message.success{background:#edf5e9;color:#344b30;border:1px solid #a4b59a}input[aria-invalid=true]{border:2px solid #ac4a39!important}.availability-calendar{margin:22px 0;padding:16px;border:1px solid #dbded4;border-radius:12px;background:#fffdf8}.availability-heading h3{font-size:18px;margin:0 0 12px}.calendar-mode{display:flex;gap:6px}.calendar-mode button{padding:8px 12px;border:1px solid #cbd3c3;border-radius:7px;font:inherit;font-size:13px;background:#fff;color:#3c4c36;cursor:pointer}.calendar-mode button[aria-pressed=true]{background:#52664a;color:#fff}.calendar-mode button:disabled{opacity:.45;cursor:default}.calendar-help,.calendar-state{font-size:12px;line-height:1.5;color:#5f665b;margin:10px 0}.calendar-nav{display:flex;align-items:center;justify-content:space-between;margin:15px 0 10px}.calendar-nav h4{font-size:17px;margin:0;text-transform:capitalize}.calendar-nav button{width:38px;height:38px;border:1px solid #d6dacd;border-radius:7px;background:#fff;color:#34462f;font-size:20px;cursor:pointer}.calendar-nav button:disabled{opacity:.35;cursor:default}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-week span{text-align:center;font-size:12px;color:#66705d;padding:6px 0}.calendar-day{min-width:0;min-height:44px;padding:7px 0;border:1px solid #dce2d5;border-radius:6px;background:#f6faef;color:#36502e;font:inherit;font-size:14px;cursor:pointer}.calendar-day.booked{background:#fae8e4;border-color:#e3b8ae;color:#a24030;text-decoration:line-through;text-decoration-thickness:2px}.calendar-day.closed,.calendar-day.unknown{background:#f0efeb;border-color:#e0dfd9;color:#99988f}.calendar-day:disabled{cursor:not-allowed}.calendar-day.selected{background:#52664a!important;color:#fff!important;border-color:#52664a!important;text-decoration:none}.calendar-day.in-stay{background:#e4eedc;border-color:#96ae85}.calendar-day:focus-visible,.calendar-nav button:focus-visible,.calendar-mode button:focus-visible{outline:3px solid #94ae82;outline-offset:2px}.calendar-legend{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:11px;margin:14px 0}.calendar-legend span:before{content:"";display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:5px;background:#dce9cc}.calendar-legend .legend-booked:before{background:#d99180}.calendar-legend .legend-closed:before{background:#d4d1c7}@media(max-width:480px){.availability-calendar{padding:12px}.calendar-day{min-height:44px;font-size:13px}.calendar-help{font-size:12px}}
