
.svh-booking-wrap{--svh-bg:#ffffff;--svh-line:#d7dfeb;--svh-text:#152238;--svh-muted:#66768c;--svh-primary:#4660f4;--svh-primary-2:#6a8bff;--svh-soft:#f7f9fc;--svh-available:#edf6ef;--svh-pending:#ecd776;--svh-confirmed:#efb2b6;--svh-today:#102047;--svh-shadow:0 18px 44px rgba(17,31,64,.08);margin:24px auto;max-width:1220px;color:var(--svh-text);font-family:inherit}
.svh-booking-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr);gap:28px;align-items:start}
.svh-calendar-card,.svh-form-card{background:rgba(255,255,255,.92);backdrop-filter:blur(6px);border:1px solid rgba(215,223,235,.96);border-radius:30px;padding:26px;box-shadow:var(--svh-shadow)}
.svh-calendar-toolbar{display:grid;grid-template-columns:72px 1fr 72px;align-items:center;gap:18px;margin-bottom:18px}
.svh-calendar-title-wrap{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:82px}
.svh-calendar-kicker{display:inline-block;padding:7px 12px;border-radius:999px;background:#eef2ff;color:var(--svh-primary);font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;margin-bottom:10px}
.svh-calendar-title{margin:0;font-size:clamp(30px,3vw,42px);line-height:1;color:#101b3a;font-weight:900}
.svh-calendar-subtitle{margin-top:8px;font-size:14px;color:#65748a;line-height:1.4;max-width:420px}
.svh-month-nav{width:58px;height:58px;border:0;border-radius:20px;background:linear-gradient(135deg,var(--svh-primary),var(--svh-primary-2));color:#fff;font-size:30px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 28px rgba(75,99,243,.24);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;margin:0 auto}
.svh-month-nav:hover{transform:translateY(-2px);box-shadow:0 18px 32px rgba(75,99,243,.28);filter:saturate(1.05)}
.svh-month-nav span{position:relative;top:-1px;line-height:1}
.svh-calendar-legend{display:flex;flex-wrap:wrap;gap:10px 16px;margin-bottom:18px;font-size:15px;color:#46556d}
.svh-calendar-legend span{display:inline-flex;align-items:center;gap:8px}
.svh-dot{width:16px;height:16px;border-radius:999px;display:inline-block;border:2px solid transparent;box-sizing:border-box}.svh-dot-available{background:#d9efdd}.svh-dot-pending{background:#ecd776}.svh-dot-confirmed{background:#efb7bc}.svh-dot-selected{background:#5970f4}.svh-dot-today{background:#0f1837}
.svh-calendar-head,.svh-calendar-body{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.svh-calendar-head{margin-bottom:10px}.svh-weekday{text-align:center;font-weight:800;color:#58677b;padding:8px 0 6px;font-size:16px}
.svh-day,.svh-day-empty{position:relative;min-height:60px;aspect-ratio:1/1;border-radius:20px;border:1px solid var(--svh-line);background:var(--svh-available);display:flex;align-items:center;justify-content:center;padding:0;box-sizing:border-box}.svh-day-empty{visibility:hidden}.svh-day{cursor:pointer;overflow:hidden;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}
.svh-day:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(20,35,70,.08)}
.svh-day-num{position:relative;z-index:3;font-weight:900;font-size:18px;line-height:1;white-space:nowrap;color:#11203a;display:flex;align-items:center;justify-content:center;width:100%;height:100%;letter-spacing:0}
.svh-day.is-disabled{opacity:1;cursor:not-allowed}.svh-status-available{background:var(--svh-available)}.svh-status-pending{background:#f8edbf}.svh-status-confirmed,.svh-status-blocked{background:#f8d6db}
.svh-day.is-today{border:3px solid var(--svh-today);box-shadow:inset 0 0 0 2px #fff,0 8px 18px rgba(16,32,71,.10)}.svh-day.is-today .svh-day-num{display:flex;flex-direction:column;gap:4px}.svh-day.is-today .svh-day-num::after{content:"DNES";display:block;font-size:10px;letter-spacing:.16em;font-weight:900}
.svh-day.is-selected,.svh-day.is-range{border-color:#6b7cf7;background:linear-gradient(135deg,#5870f5,#4a61ee)}.svh-day.is-selected .svh-day-num,.svh-day.is-range .svh-day-num{color:#fff}
.svh-day.is-checkin,.svh-day.is-checkout{border-color:#6b7cf7;background:var(--svh-available)}
.svh-day.is-checkin::after,.svh-day.is-checkout::after,.svh-day.svh-occ-start::after,.svh-day.svh-occ-end::after,.svh-day.svh-occ-split::after{content:"";position:absolute;left:0;right:0;z-index:1}
.svh-day.is-checkin::after,.svh-day.svh-occ-start::after{bottom:0;height:50%;background:linear-gradient(135deg,#5870f5,#4a61ee)}
.svh-day.is-checkout::after,.svh-day.svh-occ-end::after{top:0;height:50%;background:linear-gradient(135deg,#5870f5,#4a61ee)}
.svh-day.svh-status-confirmed.svh-occ-start::after,.svh-day.svh-status-confirmed.svh-occ-end::after,.svh-day.svh-status-confirmed.svh-occ-split::before,.svh-day.svh-status-confirmed.svh-occ-split::after,.svh-day.svh-status-blocked.svh-occ-start::after,.svh-day.svh-status-blocked.svh-occ-end::after,.svh-day.svh-status-blocked.svh-occ-split::before,.svh-day.svh-status-blocked.svh-occ-split::after{background:#efb0b8}
.svh-day.svh-status-pending.svh-occ-start::after,.svh-day.svh-status-pending.svh-occ-end::after,.svh-day.svh-status-pending.svh-occ-split::before,.svh-day.svh-status-pending.svh-occ-split::after{background:#e7cd67}
.svh-day.svh-occ-split::before{content:"";position:absolute;left:0;right:0;top:0;height:50%;z-index:1}.svh-day.svh-occ-split::after{bottom:0;top:auto;height:50%}
.svh-day.is-checkin .svh-day-num,.svh-day.is-checkout .svh-day-num{color:#13213b}
.svh-calendar-note{margin-top:16px;color:#55657b;font-size:15px;line-height:1.45}.svh-calendar-note strong{color:#1b2845}
.svh-form-card h3{margin:0 0 10px;font-size:clamp(30px,2.4vw,46px);line-height:1;color:#111b3a;font-weight:900}
.svh-help{margin:0 0 14px;color:#5d6b7a;font-size:17px;line-height:1.5}
.svh-form-highlight{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.svh-form-highlight span{display:inline-flex;align-items:center;gap:7px;background:#f4f7ff;border:1px solid #dce4ff;color:#4f5d78;padding:9px 12px;border-radius:14px;font-size:13px;font-weight:700}.svh-form-highlight strong{color:#23325a}
.svh-summary{display:grid;grid-template-columns:repeat(4,1fr);background:var(--svh-soft);border:1px solid var(--svh-line);border-radius:22px;overflow:hidden;margin-bottom:18px}.svh-summary-item{padding:14px 15px;min-height:78px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--svh-line)}.svh-summary-item:last-child{border-right:0}.svh-summary strong{display:block;font-size:12px;color:#667085;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.svh-summary span{font-size:18px;font-weight:900;color:#0f1a3a}.svh-summary-price-wrap span{color:#20346a}
.svh-field-row{margin-bottom:14px}.svh-field-row label{display:block;font-weight:800;font-size:17px;color:#1f2740}.svh-field-row input,.svh-field-row select,.svh-field-row textarea{width:100%;margin-top:8px;border:1px solid #cfd9e6;border-radius:18px;padding:16px 18px;font-size:16px;line-height:1.35;box-sizing:border-box;background:#fff;color:#152238;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;-webkit-appearance:none;appearance:none}.svh-field-row input::placeholder,.svh-field-row textarea::placeholder{color:#9aa6b7}.svh-field-row input:focus,.svh-field-row select:focus,.svh-field-row textarea:focus{outline:none;border-color:#7082ff;box-shadow:0 0 0 3px rgba(74,93,240,.14)}.svh-field-row textarea{min-height:132px;resize:vertical}.svh-two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.svh-submit-button{width:100%;border:0;background:linear-gradient(135deg,#4a5df0,#5b93ff);color:#fff;font-weight:900;letter-spacing:.08em;text-transform:uppercase;border-radius:18px;padding:18px;cursor:pointer;box-shadow:0 12px 24px rgba(74,93,240,.22);font-size:15px}.svh-submit-button:hover{filter:brightness(1.03)}.svh-form-message{margin-top:14px;padding:14px 16px;border-radius:14px;display:none}.svh-form-message.is-error,.svh-form-message.is-success{display:block}.svh-form-message.is-error{background:#fff1f1;color:#a11b1b}.svh-form-message.is-success{background:#eefaf1;color:#1f6c35}
.svh-admin-wrap .svh-badge{display:inline-block;padding:6px 11px;border-radius:999px;font-weight:700;font-size:12px}.svh-admin-wrap .svh-status-pending{background:#fff1c2;color:#694e00}.svh-admin-wrap .svh-status-confirmed{background:#dff3e5;color:#17563b}.svh-admin-wrap .svh-status-cancelled{background:#eee;color:#555}.svh-admin-wrap .svh-status-blocked{background:#ffd6d6;color:#8d1d1d}.svh-admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.svh-stat-card{background:#fff;border:1px solid #d9e3ef;border-radius:18px;padding:16px 18px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.svh-stat-card span{display:block;color:#667085;font-size:13px;margin-bottom:6px}.svh-stat-card strong{font-size:30px;line-height:1}.svh-admin-table-wrap{background:#fff;border:1px solid #d9e3ef;border-radius:18px;overflow:auto}.svh-admin-muted{color:#667085}.svh-actions{display:flex;flex-wrap:wrap;gap:6px}.svh-admin-form{max-width:980px}
@media (max-width:1100px){.svh-booking-grid{grid-template-columns:1fr}.svh-admin-stats{grid-template-columns:repeat(2,1fr)}}
@media (max-width:820px){.svh-calendar-card,.svh-form-card{padding:20px;border-radius:26px}.svh-calendar-toolbar{grid-template-columns:64px 1fr 64px;gap:12px}.svh-calendar-title-wrap{min-height:auto}.svh-calendar-title{font-size:clamp(28px,7vw,38px)}.svh-calendar-subtitle{font-size:13px}.svh-month-nav{width:56px;height:56px;border-radius:18px}.svh-calendar-legend{gap:10px 12px;font-size:14px}.svh-calendar-head,.svh-calendar-body{gap:8px}.svh-day{min-height:68px;border-radius:18px}.svh-day-num{font-size:18px}.svh-summary{grid-template-columns:1fr 1fr}.svh-summary-item:nth-child(2){border-right:0}.svh-summary-item:nth-child(-n+2){border-bottom:1px solid var(--svh-line)}.svh-two-col{grid-template-columns:1fr}.svh-help{font-size:16px}}
@media (max-width:560px){.svh-booking-wrap{margin:18px auto;padding:0 6px}.svh-calendar-card,.svh-form-card{padding:18px;border-radius:24px}.svh-calendar-toolbar{grid-template-columns:56px 1fr 56px;gap:8px}.svh-calendar-title{font-size:clamp(26px,9vw,34px)}.svh-calendar-kicker{padding:6px 10px;margin-bottom:8px}.svh-calendar-subtitle{display:none}.svh-month-nav{width:54px;height:54px;font-size:28px}.svh-calendar-legend{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;font-size:13px}.svh-calendar-legend span{gap:7px}.svh-dot{width:15px;height:15px}.svh-weekday{font-size:13px;padding:4px 0}.svh-calendar-head,.svh-calendar-body{gap:6px}.svh-day{min-height:54px;border-radius:17px}.svh-day-num{font-size:15px}.svh-day.is-today .svh-day-num::after{font-size:8px;letter-spacing:.12em;margin-top:2px}.svh-summary{grid-template-columns:1fr}.svh-summary-item{border-right:0;border-bottom:1px solid var(--svh-line);min-height:auto;padding:12px 14px}.svh-summary-item:last-child{border-bottom:0}.svh-form-card h3{font-size:clamp(26px,9vw,34px)}.svh-help{font-size:15px;margin-bottom:12px}.svh-form-highlight{margin-bottom:14px}.svh-form-highlight span{width:100%;justify-content:space-between}.svh-field-row label{font-size:16px}.svh-field-row input,.svh-field-row select,.svh-field-row textarea{padding:15px 16px;border-radius:16px}.svh-field-row textarea{min-height:120px}.svh-submit-button{padding:17px 14px;font-size:14px;letter-spacing:.05em}.svh-admin-stats{grid-template-columns:1fr}}

/* v1.5.1 hotfix */
.svh-day.is-disabled{opacity:.45;cursor:not-allowed;filter:saturate(.7)}
.svh-day.svh-occ-start:not(.is-disabled), .svh-day.svh-occ-end:not(.is-disabled), .svh-day.svh-occ-split:not(.is-disabled){cursor:pointer}
.svh-day.is-selection-anchor{box-shadow:0 0 0 3px rgba(34,49,99,.10),0 8px 18px rgba(20,35,70,.08)}
.svh-summary-item span{word-break:keep-all}
@media (max-width:560px){
  .svh-calendar-card,.svh-form-card{padding:16px;border-radius:22px}
  .svh-calendar-head,.svh-calendar-body{gap:5px}
  .svh-day{min-height:46px;border-radius:15px}
  .svh-day-num{font-size:13px;font-weight:800}
  .svh-weekday{font-size:12px}
  .svh-calendar-legend{grid-template-columns:1fr 1fr;gap:6px 8px;font-size:12px}
  .svh-calendar-legend span{min-width:0}
}

.svh-calendar-note{display:flex;flex-wrap:wrap;gap:6px;align-items:center;}
.svh-calendar-rate-base,.svh-calendar-rate-hint{color:#52607a;}
.svh-calendar-rate-hint{font-weight:600;}
