.hero.svelte-u8m1mv{padding:70px 0 62px;background:linear-gradient(135deg,#fff,#f4f8ff 48%,#fff9f0);border-bottom:1px solid #eef1f6}.hero-inner.svelte-u8m1mv{text-align:center}.hero.svelte-u8m1mv h1:where(.svelte-u8m1mv){margin:0;font-size:clamp(38px,5vw,56px);line-height:1.05;letter-spacing:-.04em}.hero.svelte-u8m1mv h1:where(.svelte-u8m1mv) span:where(.svelte-u8m1mv){color:var(--color-primary)}.hero.svelte-u8m1mv p:where(.svelte-u8m1mv){max-width:660px;margin:22px auto 0;color:var(--color-muted);font-size:19px;line-height:1.55}.facts.svelte-u8m1mv{margin:42px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:620px}.fact-card.svelte-u8m1mv{background:#fff;border:1px solid var(--color-border);border-radius:12px;padding:18px 12px;display:grid;place-items:center;box-shadow:0 8px 20px #0f172a0d}.fact-icon.svelte-u8m1mv{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;margin-bottom:10px;font-weight:800}.fact-icon.blue.svelte-u8m1mv{background:#eaf2ff;color:var(--color-primary)}.fact-icon.green.svelte-u8m1mv{background:#e5f9ef;color:#16a260}.fact-icon.orange.svelte-u8m1mv{background:#fff0d9;color:#a56610}.fact-icon.gray.svelte-u8m1mv{background:#eef1f5;color:#344054}.fact-card.svelte-u8m1mv strong:where(.svelte-u8m1mv){font-size:15px}.fact-card.svelte-u8m1mv span:where(.svelte-u8m1mv){color:var(--color-muted);font-size:12px;margin-top:2px}@media(max-width:900px){.facts.svelte-u8m1mv{grid-template-columns:repeat(2,1fr)}}.booking-section{padding:58px 0 80px}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:start}.booking-section h2{font-size:20px;margin:0 0 14px}.booking-state-card{background:#fff;border:1px solid var(--color-border);border-radius:14px;padding:18px;color:var(--color-muted)}.booking-state-card.error{color:#dc2626}.section-subtitle{margin:-8px 0 18px;color:var(--color-muted);font-size:14px}.building-list{display:grid;gap:26px}.building-block{display:grid;gap:14px}.building-head h3{margin:0;font-size:28px;font-weight:900;letter-spacing:-.03em}.building-head p{margin:6px 0 0;color:var(--color-muted);font-size:15px}.room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.room-list{display:grid;gap:14px}.public-room-card{width:100%;text-align:left;background:#fff;border:1px solid var(--color-border);border-radius:14px;padding:18px;display:grid;gap:16px;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.public-room-card:hover,.public-room-card.selected{border-color:var(--color-primary);box-shadow:0 8px 22px #2563c91f;transform:translateY(-1px)}.public-room-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.public-room-card-head h4{margin:0;font-size:18px;font-weight:900}.public-room-card-head p{margin:8px 0 0;color:var(--color-muted);font-size:14px;line-height:1.4}.public-room-card-price{text-align:right;color:var(--color-primary);white-space:nowrap}.public-room-card-price strong{display:block;font-size:24px;font-weight:900;line-height:1}.public-room-card-price span{display:block;margin-top:4px;font-size:12px;color:var(--color-muted)}.room-availability{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid var(--color-border)}.room-availability strong{font-size:15px}.room-availability span{color:var(--color-muted);font-size:13px}.availability-panel{background:#fff;border:1px solid var(--color-border);border-radius:16px;padding:18px;box-shadow:0 8px 20px #0f172a0a}.booking-mode-panel{background:#fff;border:1px solid var(--color-border);border-radius:16px;padding:18px;margin-bottom:18px;box-shadow:0 8px 20px #0f172a0a}.booking-mode-head h3{margin:0;font-size:17px;font-weight:900}.booking-mode-head p{margin:6px 0 14px;color:var(--color-muted);font-size:14px}.booking-mode-options{display:grid;gap:10px}.booking-mode-card{width:100%;border:1px solid var(--color-border);border-radius:14px;background:#f8fafc;padding:14px;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.booking-mode-card:hover,.booking-mode-card.selected{background:#fff;border-color:var(--color-primary);box-shadow:0 8px 18px #2563c91a}.booking-mode-icon{width:42px;height:42px;border-radius:12px;background:#eaf2ff;color:var(--color-primary);display:grid;place-items:center;flex:0 0 auto}.booking-mode-card strong{display:block;font-size:14px;font-weight:900;color:var(--color-text)}.booking-mode-card span{display:block;margin-top:4px;font-size:13px;color:var(--color-muted);line-height:1.35}.booking-time-panel{background:#fff;border:1px solid var(--color-border);border-radius:16px;padding:18px;margin-top:18px;box-shadow:0 8px 20px #0f172a0a}.booking-time-title{display:flex;align-items:flex-start;gap:12px}.booking-time-icon{width:42px;height:42px;border-radius:12px;background:#eaf2ff;color:var(--color-primary);display:grid;place-items:center;flex:0 0 auto}.booking-time-head h3{margin:0;font-size:17px;font-weight:900}.booking-time-head p{margin:6px 0 0;color:var(--color-muted);font-size:14px}.booking-time-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.booking-time-field{display:grid;gap:6px}.booking-time-field span{font-size:13px;font-weight:800;color:#334155}.booking-time-field input{width:100%;height:44px;border:1px solid var(--color-border);border-radius:12px;padding:0 12px;font:inherit;background:#fff}.booking-time-field input:focus{outline:2px solid rgba(37,99,201,.2);border-color:var(--color-primary)}.booking-summary-panel{background:#fff;border:1px solid var(--color-border);border-radius:16px;padding:18px;margin-top:18px;box-shadow:0 8px 20px #0f172a0a}.booking-summary-head h3{margin:0;font-size:17px;font-weight:900}.booking-summary-head p{margin:6px 0 14px;color:var(--color-muted);font-size:14px}.booking-summary-list{display:grid;gap:10px}.booking-summary-row{display:flex;gap:10px;align-items:flex-start;color:var(--color-primary)}.booking-summary-row div{display:grid;gap:2px}.booking-summary-row span{color:var(--color-muted);font-size:12px}.booking-summary-row strong{color:var(--color-text);font-size:14px}.booking-summary-price{border-top:1px solid var(--color-border);margin-top:16px;padding-top:16px;display:grid;gap:10px}.booking-summary-price-row,.booking-summary-total{display:flex;align-items:center;justify-content:space-between;gap:14px}.booking-summary-price-row span{color:var(--color-muted);font-size:14px}.booking-summary-price-row strong{color:var(--color-text);font-size:14px}.booking-summary-total{border-top:1px solid var(--color-border);margin-top:4px;padding-top:12px}.booking-summary-total span{font-weight:900;color:var(--color-text)}.booking-summary-total strong{font-size:22px;color:var(--color-primary)}.booking-summary-error{color:#dc2626;font-weight:800;margin:0}.booking-summary-button{width:100%;margin-top:18px}.booking-place-panel{background:#fff;border:1px solid var(--color-border);border-radius:16px;padding:18px;margin-top:18px;box-shadow:0 8px 20px #0f172a0a}.booking-place-title{display:flex;align-items:flex-start;gap:12px}.booking-place-icon{width:42px;height:42px;border-radius:12px;background:#eaf2ff;color:var(--color-primary);display:grid;place-items:center;flex:0 0 auto}.booking-place-head h3{margin:0;font-size:17px;font-weight:900}.booking-place-head p{margin:6px 0 0;color:var(--color-muted);font-size:14px}.booking-place-list{display:grid;gap:10px;margin-top:18px}.booking-place-card{width:100%;border:1px solid var(--color-border);border-radius:14px;background:#f8fafc;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.booking-place-card:hover,.booking-place-card.selected{background:#fff;border-color:var(--color-primary);box-shadow:0 8px 18px #2563c91a}.booking-place-card-main{display:flex;align-items:center;gap:12px}.booking-place-card-icon{width:36px;height:36px;border-radius:11px;background:#eef2f7;color:var(--color-primary);display:grid;place-items:center;flex:0 0 auto}.booking-place-card strong{display:block;font-size:14px;font-weight:900;color:var(--color-text)}.booking-place-card span{display:block;margin-top:3px;font-size:13px;color:var(--color-muted)}.booking-place-check{width:30px;height:30px;border-radius:999px;background:var(--color-primary);color:#fff;display:grid;place-items:center;flex:0 0 auto}@media(max-width:1100px){.room-grid{grid-template-columns:1fr}}@media(max-width:900px){.booking-grid{grid-template-columns:1fr}}@media(max-width:700px){.public-room-card-head{flex-direction:column}.public-room-card-price{text-align:left}.room-availability{flex-direction:column;align-items:flex-start}.booking-time-fields{grid-template-columns:1fr}}.calendar.svelte-1qo5hbn{overflow:hidden}.calendar-header.svelte-1qo5hbn{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:#f8fafc;border-bottom:1px solid var(--color-border);font-size:17px}.calendar-header.svelte-1qo5hbn button:where(.svelte-1qo5hbn){border:0;background:transparent;font-size:32px;cursor:pointer;color:#1f2937}.weekdays.svelte-1qo5hbn{display:grid;grid-template-columns:repeat(7,1fr);height:46px;align-items:center;text-align:center;color:var(--color-muted);font-weight:800;font-size:13px;border-bottom:1px solid var(--color-border)}.days.svelte-1qo5hbn{display:grid;grid-template-columns:repeat(7,1fr)}.day.svelte-1qo5hbn{min-height:88px;background:#fff;border:0;border-right:1px solid #d9dee8;border-bottom:1px solid #d9dee8;display:grid;place-items:center;color:#1f2937;position:relative;cursor:pointer;font:inherit}.day.past.svelte-1qo5hbn,.day.outside.svelte-1qo5hbn{background:#e5e9f0;color:#8b95a5;cursor:default}.day.svelte-1qo5hbn:hover:not(:disabled),.day.selected.svelte-1qo5hbn{background:#fff;color:var(--color-primary);box-shadow:inset 0 0 0 2px #2563c947}.day.selected.svelte-1qo5hbn{background:#eaf2ff}.day.svelte-1qo5hbn:disabled{cursor:default}.day.svelte-1qo5hbn:nth-child(7n){border-right:0}.day.selected.svelte-1qo5hbn span:where(.svelte-1qo5hbn){font-weight:900}.legend.svelte-1qo5hbn{height:50px;display:flex;align-items:center;justify-content:center;gap:26px;background:#fff;color:var(--color-muted);border-top:1px solid var(--color-border);font-size:14px}.legend.svelte-1qo5hbn span:where(.svelte-1qo5hbn){display:inline-flex;align-items:center;gap:8px}.legend.svelte-1qo5hbn i:where(.svelte-1qo5hbn){width:11px;height:11px;border-radius:999px}.legend.svelte-1qo5hbn .free:where(.svelte-1qo5hbn){background:var(--color-success)}.legend.svelte-1qo5hbn .busy:where(.svelte-1qo5hbn){background:var(--color-danger)}.booking-mode-panel.needs-selection.svelte-1gdm5d5{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b1f}.booking-mode-head.svelte-1gdm5d5{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.mode-warning.svelte-1gdm5d5{color:#b45309;font-weight:800}.auto-badge.svelte-1gdm5d5{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#eef4ff;color:var(--color-primary);padding:6px 10px;font-size:12px;font-weight:800;white-space:nowrap}.booking-place-card.svelte-yjj01p{display:flex;flex-direction:column;align-items:stretch;gap:14px;position:relative}.booking-place-card-top.svelte-yjj01p{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;width:100%}.booking-place-card-main.svelte-yjj01p{display:flex;align-items:flex-start;gap:12px;flex:1}.place-timeline.svelte-yjj01p{width:100%;height:8px;display:flex;overflow:hidden;border-radius:999px;background:#e5e7eb}.place-timeline-segment.svelte-yjj01p{height:100%;flex-shrink:0;transition:background .2s ease}.place-timeline-segment.free.svelte-yjj01p{background:#22c55e}.place-timeline-segment.blocked.svelte-yjj01p{background:#ef4444}.place-timeline-segment.unavailable.svelte-yjj01p{background:#cbd5e1}.place-timeline-wrap.svelte-yjj01p{position:relative;width:100%}.selected-time-overlay.svelte-yjj01p{position:absolute;top:-5px;bottom:-5px;z-index:2;border-left:2px solid var(--color-primary);border-right:2px solid var(--color-primary);background:#2563eb29;border-radius:6px;pointer-events:none}.selected-time-overlay.error.svelte-yjj01p{border-left-color:#dc2626;border-right-color:#dc2626;background:#dc26262e}.place-timeline.svelte-yjj01p{position:relative;z-index:1}.how-section.svelte-16jqu6h{padding:54px 0 58px;background:#f8fafc;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.how-title.svelte-16jqu6h{text-align:center;margin-bottom:34px;font-size:26px}.how-grid.svelte-16jqu6h{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:850px;margin-inline:auto}.how-card.svelte-16jqu6h{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-card);padding:32px 28px 30px;text-align:center;box-shadow:0 6px 18px #0f172a0d}.step-number.svelte-16jqu6h{width:52px;height:52px;border-radius:999px;display:grid;place-items:center;margin:0 auto 20px;background:#eaf2ff;color:var(--color-primary);font-weight:800;font-size:22px}.how-card.svelte-16jqu6h h3:where(.svelte-16jqu6h){margin:0 0 14px;font-size:17px}.how-card.svelte-16jqu6h p:where(.svelte-16jqu6h){margin:0;color:var(--color-muted);font-size:15px;line-height:1.45}@media(max-width:900px){.how-grid.svelte-16jqu6h{grid-template-columns:1fr}}
