.elm-app .elm-booking-panel{margin-top:16px;border:1px solid #577565;border-radius:12px;overflow:hidden;background:#10241e;color:#fff}
.elm-app .elm-booking-panel>summary{padding:14px 16px;cursor:pointer;color:#fff!important;background:#243c35;font-size:1rem!important;font-weight:700;line-height:1.5;list-style:revert}
.elm-app .elm-booking-panel>summary:focus-visible{outline:3px solid #fff;outline-offset:-3px}.elm-booking-panel-body{padding:16px}.elm-app .elm-booking-panel .elm-booking-note{color:#d8e8e1!important}
.elm-app .elm-book-calendar>h4{font-size:1.05rem!important;color:#fff!important;line-height:1.4!important;margin:0 0 12px!important}
.elm-app .elm-book-calendar{padding:16px;margin-top:12px;background:#10241e;color:#fff;border:1px solid #436657;border-radius:12px}
.elm-book-calendar[hidden]{display:none!important}.elm-calendar-status,.elm-calendar-help{color:#d8e8e1!important;font-size:.9rem!important;line-height:1.5!important;margin:0 0 12px!important}
.elm-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.elm-app .elm-calendar-header h4{font-size:1.05rem!important;line-height:1.4!important;margin:0!important;color:#fff!important}
.elm-app .elm-calendar-nav{padding:6px 14px!important;min-height:40px;background:#29463b!important;color:#fff!important;font-size:1.4rem!important}
.elm-calendar-grid,.elm-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.elm-calendar-weekdays span{text-align:center;color:#c6d9d0;font-size:.8rem;padding:6px 0}
.elm-app button.elm-calendar-date{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:46px;padding:6px 0!important;background:#1d382e!important;border:1px solid #577565!important;border-radius:8px!important;color:#fff!important;font-size:1rem!important;line-height:1.1!important}
.elm-app .elm-calendar-date:disabled,.elm-app .elm-calendar-nav:disabled{opacity:.35;cursor:default}.elm-calendar-date.is-red{border-color:#a94e54!important}.elm-calendar-date:focus-visible{outline:3px solid #fff;outline-offset:2px}
.elm-calendar-dot{display:inline-block;flex-shrink:0;width:8px;height:8px;border-radius:50%;background:#48d991}.is-amber .elm-calendar-dot,.elm-calendar-dot.is-amber{background:#ffc14d}.is-red .elm-calendar-dot,.elm-calendar-dot.is-red{background:#ff6672}
.elm-calendar-legend{display:flex;flex-wrap:wrap;gap:8px 16px;color:#fff!important;font-size:.8rem!important;margin:14px 0!important}.elm-calendar-legend span{display:flex;align-items:center;gap:6px}
.elm-day-dialog{box-sizing:border-box;width:min(520px,calc(100vw - 24px));max-height:85vh;max-height:85dvh;overflow:auto;padding:24px;background:#10241e;color:#fff;border:1px solid #66897a;border-radius:16px;box-shadow:0 20px 80px #0009;font-family:inherit}
.elm-day-dialog::backdrop{background:#000b}.elm-day-dialog h3{font-size:1.2rem;color:#fff;margin:0 55px 12px 0;line-height:1.4}.elm-day-dialog p{font-size:.95rem;line-height:1.5;color:#dae8e1}.elm-day-dialog button{background:#fe5400;color:#fff;border:0;border-radius:8px;padding:12px 16px;font-size:.95rem;font-weight:700;cursor:pointer;line-height:1.3;white-space:normal}
.elm-slot-confirm{padding:14px;margin-top:12px;background:#1d382e;border:1px solid #779a87;border-radius:10px}.elm-slot-confirm button{width:100%;margin-top:8px}.elm-day-dialog .elm-slot-confirm-cancel{background:#365344}.elm-day-dialog button:disabled{opacity:.55;cursor:wait}.elm-day-dialog .elm-book-feedback{font-weight:600;color:#fff;overflow-wrap:anywhere}
.elm-day-dialog .elm-day-close{float:right;background:#29463b;padding:8px 12px;font-size:.85rem}.elm-day-slot{padding:16px 0;border-top:1px solid #4d6c5e}.elm-day-slot-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.elm-day-slot-head strong{color:#fff;font-size:1.05rem}.elm-day-slot-head span{color:#d8e8e1;font-size:.9rem}.elm-day-booked{overflow-wrap:anywhere}.elm-day-choose{width:100%}.elm-day-dialog button:focus-visible{outline:3px solid white;outline-offset:2px}
@media(max-width:480px){.elm-app .elm-book-calendar{padding:10px}.elm-calendar-grid{gap:4px}.elm-day-dialog{padding:18px}.elm-calendar-weekdays span{font-size:.75rem}}
