.svh-calendar{--svh-ink:#173e3c;--svh-teal:#087c78;--svh-line:#d7e5e1;box-sizing:border-box;max-width:1100px;margin:24px auto;padding:24px;background:#fff;border:1px solid var(--svh-line);border-radius:14px;color:var(--svh-ink);font-family:inherit;font-size:16px;line-height:1.5}
.svh-calendar *{box-sizing:border-box}.svh-calendar [hidden]{display:none!important}
.svh-calendar .svh-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.svh-calendar .svh-month{font-size:25px;line-height:1.2;margin:0;font-weight:650;color:var(--svh-ink)}
.svh-calendar .svh-nav{display:flex;gap:6px}.svh-calendar button{font-family:inherit;cursor:pointer;text-transform:none;letter-spacing:normal;box-shadow:none}
.svh-calendar .svh-nav button,.svh-calendar .svh-retry{background:white;color:var(--svh-ink);border:1px solid #adc8c0;border-radius:6px;padding:7px 13px;font-size:15px;min-height:42px;line-height:1.3}
.svh-calendar .svh-nav button:hover,.svh-calendar .svh-retry:hover{background:#edf6f2}
.svh-calendar button:disabled{opacity:.4;cursor:default}.svh-calendar button:focus-visible,.svh-calendar input:focus-visible{outline:3px solid #d49c29;outline-offset:3px}
.svh-calendar .svh-jump{font-size:12px;display:flex;gap:6px;flex-direction:column;color:#4d6460}.svh-calendar .svh-month-input{font:inherit;font-size:14px;color:var(--svh-ink);padding:6px 8px;border:1px solid #adc8c0;background:white;border-radius:5px;max-width:190px}
.svh-calendar .svh-status{font-size:14px;margin:20px 0 14px;min-height:22px;color:#48625e}.svh-calendar .svh-status.svh-error{color:#8a281e;background:#fff1ed;padding:14px;border-left:3px solid #af4033;border-radius:4px}
.svh-calendar .svh-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.svh-calendar .svh-weekday{padding:6px;text-align:center;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#48625e}
.svh-calendar .svh-day{display:flex;align-items:flex-start;flex-direction:column;justify-content:space-between;gap:8px;min-height:86px;width:100%;padding:9px;background:#fafcfb;border:1px solid var(--svh-line);border-radius:6px;color:var(--svh-ink);text-align:left;font-size:16px;line-height:1.2}
.svh-calendar .svh-day.svh-booked{background:#edf6f2;border-color:#bfd9d0}.svh-calendar .svh-day:hover{border-color:var(--svh-teal);background:#e1f0e9}
.svh-calendar .svh-day[aria-pressed=true]{background:var(--svh-teal);color:white;border-color:var(--svh-teal)}
.svh-calendar .svh-day-count{font-size:11px;font-weight:500;line-height:1.3}.svh-calendar .svh-today .svh-day-number{text-decoration:underline;text-underline-offset:5px;font-weight:bold}
.svh-calendar .svh-agenda{margin-top:24px;padding:20px;background:#f6f9f7;border-radius:9px}.svh-calendar .svh-agenda h4{margin:0 0 14px;font-size:18px;line-height:1.4;color:var(--svh-ink)}
.svh-calendar .svh-bookings{list-style:none;margin:0;padding:0}.svh-calendar .svh-booking{display:flex;gap:20px;align-items:center;margin:0;padding:12px 0;border-top:1px solid var(--svh-line)}
.svh-calendar .svh-booking-time{min-width:125px;font-weight:600;font-size:16px}.svh-calendar .svh-booking-title{font-size:15px;color:#47635e}.svh-calendar .svh-empty{font-size:15px;margin:0;color:#47635e}
.svh-calendar .svh-note{font-size:13px;color:#586d68;margin:18px 0 0;line-height:1.6}
@media(max-width:650px){.svh-calendar{padding:14px;border-radius:10px}.svh-calendar .svh-toolbar{gap:12px}.svh-calendar .svh-month{font-size:20px;order:-1;width:100%}.svh-calendar .svh-jump{flex-direction:row;align-items:center;font-size:0}.svh-calendar .svh-month-input{font-size:13px;max-width:145px}.svh-calendar .svh-grid{gap:3px}.svh-calendar .svh-day{min-height:67px;padding:5px;gap:5px;font-size:14px}.svh-calendar .svh-day-count{font-size:9px}.svh-calendar .svh-weekday{padding:4px 0;font-size:10px}.svh-calendar .svh-agenda{padding:14px}.svh-calendar .svh-agenda h4{font-size:16px}.svh-calendar .svh-booking{gap:10px}.svh-calendar .svh-booking-time{min-width:115px;font-size:14px}.svh-calendar .svh-status{font-size:12px}}
.svh-calendar .svh-legend{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.svh-calendar .svh-room{display:inline-block;padding:3px 7px;border-radius:4px;color:#fff;font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap}.svh-calendar .svh-room-mh{background:#00485b}.svh-calendar .svh-room-br{background:#70277c}.svh-calendar .svh-room-cp{background:#3f4030}.svh-calendar .svh-room-unknown{background:#666}.svh-calendar .svh-day-rooms{display:flex;gap:3px;flex-wrap:wrap}.svh-calendar .svh-day-rooms:empty{display:none}.svh-calendar .svh-day-rooms .svh-room{font-size:10px;padding:2px 4px}.svh-calendar .svh-booking{flex-wrap:wrap}.svh-calendar .svh-booking>.svh-room{margin-left:auto}@media(max-width:650px){.svh-calendar .svh-day-rooms .svh-room{font-size:9px;padding:2px}.svh-calendar .svh-day{justify-content:flex-start}.svh-calendar .svh-legend .svh-room{font-size:11px}.svh-calendar .svh-booking>.svh-room{margin-left:0}}
.svh-calendar .svh-grid{gap:0;overflow-x:auto}.svh-calendar .svh-day{border-radius:0;min-height:120px;padding:3px;justify-content:flex-start;background:#fff!important;color:var(--svh-ink)!important;gap:4px;min-width:0}.svh-calendar .svh-day[aria-pressed=true]{outline:2px solid var(--svh-teal);outline-offset:-2px}.svh-calendar .svh-day-events{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left}.svh-calendar .svh-event{display:block;width:100%;color:#fff;padding:3px;font-size:12px;line-height:1.35;font-weight:400;text-transform:none;letter-spacing:normal;white-space:normal;overflow-wrap:anywhere}.svh-calendar .svh-event-time,.svh-calendar .svh-event-name{display:block}.svh-calendar .svh-event-time{font-size:11px}.svh-calendar .svh-day-number{font-size:12px}.svh-calendar .svh-weekday{border-bottom:1px solid var(--svh-line)}@media(max-width:650px){.svh-calendar .svh-grid{grid-template-columns:repeat(7,minmax(105px,1fr))}.svh-calendar .svh-event{font-size:11px}.svh-calendar .svh-day{min-height:120px}}
@media(max-width:650px){.svh-calendar .svh-grid{display:none!important}.svh-calendar .svh-agenda{margin-top:12px;padding:12px}.svh-calendar .svh-agenda h4{margin:22px 0 8px;font-size:16px}.svh-calendar .svh-agenda h4:first-child{margin-top:0}.svh-calendar .svh-booking{display:grid;grid-template-columns:1fr;gap:5px}.svh-calendar .svh-booking-time{min-width:0}.svh-calendar .svh-booking-title{overflow-wrap:anywhere}.svh-calendar .svh-booking>.svh-room{justify-self:start}.svh-calendar .svh-toolbar{min-width:0}.svh-calendar{width:100%;min-width:0}.svh-calendar .svh-month{letter-spacing:normal}}
