@font-face{font-family:Manrope;src:url(/fonts/Manrope-Variable.ttf)format("truetype");font-weight:200 800;font-style:normal;font-display:swap}:root{--background:#f6f8fb;--foreground:#162033;--muted:#667085;--line:#dde3ed;--surface:#fff;--surface-soft:#f0f4f8;--brand:#365de7;--brand-strong:#2445c5;--accent:#0f8f72;--error:#bf2f45;--shadow:0 14px 40px #1e2b461a}*{box-sizing:border-box}html{background:var(--background);min-height:100%}body{min-height:100%;color:var(--foreground);letter-spacing:0;margin:0;font-family:Manrope,Arial,sans-serif;font-size:16px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:var(--brand);font-weight:800;text-decoration:none}h1,h2,p{overflow-wrap:anywhere}.page-shell{place-items:center;width:min(100% - 24px,1000px);min-height:100vh;margin:0 auto;padding:24px 0;display:grid}.booking-widget{border:1px solid var(--line);background:var(--surface);width:min(100%,760px);box-shadow:var(--shadow);border-radius:8px}.widget-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.widget-header p{color:var(--muted);text-align:right;margin:0;font-size:.92rem;font-weight:800}.booking-place{align-items:center;gap:12px;min-width:0;display:flex}.organization-avatar{border:1px solid var(--line);object-fit:cover;background:var(--surface-soft);border-radius:8px;flex:none;width:44px;height:44px}.brand-line{align-items:center;gap:10px;min-width:0;display:flex}.brand-line img{border-radius:8px;flex:none}.brand-line div{gap:2px;min-width:0;display:grid}.brand-line span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.brand-line strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.12rem;font-weight:900;overflow:hidden}.steps{grid-template-columns:repeat(3,1fr);gap:8px;padding:14px 20px 0;display:grid}.steps button{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;gap:8px;font-size:.9rem;font-weight:900;display:flex}.steps button span{background:var(--surface-soft);width:22px;height:22px;color:var(--muted);border-radius:999px;place-items:center;font-size:.78rem;display:grid}.steps button.active{border-color:var(--brand);color:var(--brand)}.steps button.active span,.steps button.done span{background:var(--brand);color:#fff}.steps button:disabled{cursor:not-allowed;opacity:.62}.selection-summary{background:var(--surface-soft);color:var(--muted);border-radius:8px;margin:12px 20px 0;padding:10px 12px;font-size:.9rem;font-weight:800}.booking-form{gap:16px;padding:18px 20px 20px;display:grid}.step-panel{gap:14px;display:grid}.step-panel h2{margin:0;font-size:1.28rem}.field-label{color:var(--foreground);gap:7px;font-size:.88rem;font-weight:900;display:grid}input,select,textarea{border:1px solid var(--line);background:var(--surface);width:100%;min-height:44px;color:var(--foreground);border-radius:8px;outline:none;padding:9px 11px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #365de724}.segmented{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px;display:grid}.segmented button{min-height:38px;color:var(--muted);background:0 0;border:0;border-radius:6px;font-weight:900}.segmented button.active{background:var(--surface);color:var(--brand);box-shadow:0 6px 14px #1e2b461a}.choice-list-wrap,.choice-list{gap:8px;display:grid}.choice-row{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:8px;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:66px;padding:10px 12px;display:grid}.choice-row.selected{border-color:var(--brand);background:#f6f8ff;box-shadow:0 0 0 3px #365de71a}.choice-thumb{border:1px solid var(--line);background:#f8fafc;border-radius:8px;place-items:center;width:46px;height:46px;display:grid;overflow:hidden}.choice-thumb img{object-fit:cover;width:100%;height:100%}.choice-thumb i{background:#2f855a;border-radius:999px;width:10px;height:10px;display:block}.choice-copy{gap:2px;min-width:0;display:grid}.choice-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.choice-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.choice-row em{color:var(--accent);white-space:nowrap;font-size:.86rem;font-style:normal;font-weight:900}.select-line{grid-template-columns:minmax(110px,auto) minmax(0,1fr);align-items:center}.calendar{border:1px solid var(--line);border-radius:8px;padding:12px}.calendar-head{text-align:center;grid-template-columns:36px 1fr 36px;align-items:center;gap:8px;margin-bottom:10px;display:grid}.calendar-head button{border:1px solid var(--line);background:var(--surface);width:36px;height:34px;color:var(--foreground);border-radius:8px;font-size:1.35rem;line-height:1}.calendar-head strong{text-transform:capitalize}.weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.weekdays{margin-bottom:6px}.weekdays span{color:var(--muted);text-align:center;font-size:.76rem;font-weight:900}.calendar-grid button{aspect-ratio:1;background:var(--surface-soft);min-width:0;color:var(--foreground);border:1px solid #0000;border-radius:8px;font-size:.9rem;font-weight:900}.calendar-grid button.selected{border-color:var(--brand);background:var(--brand);color:#fff}.calendar-grid button:disabled{cursor:not-allowed;color:#b6bfcd;background:0 0;text-decoration:line-through}.calendar-status{color:var(--muted);text-align:center;margin:10px 0 0;font-size:.82rem;font-weight:800}.time-row,.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.quantity-line{grid-template-columns:minmax(130px,auto) 110px;align-items:center}.quantity-help{color:var(--muted);grid-column:1/-1;font-size:.8rem;font-weight:800}.inline-note{border:1px solid var(--line);background:var(--surface-soft);color:var(--muted);border-radius:8px;align-self:end;margin:0;padding:11px 12px;font-size:.9rem;font-weight:800}.wide-field{grid-column:1/-1}.agreement{border:1px solid var(--line);background:var(--surface-soft);color:var(--muted);border-radius:8px;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;padding:12px;font-size:.9rem;font-weight:700;line-height:1.45;display:grid}.agreement input{width:18px;min-height:18px;accent-color:var(--brand);margin:2px 0 0}.form-actions{justify-content:flex-end;gap:10px;display:flex}.submit-button,.secondary-button{border-radius:8px;min-height:46px;padding:0 18px;font-weight:900}.submit-button{background:var(--brand);color:#fff;border:0}.submit-button:hover{background:var(--brand-strong)}.secondary-button{border:1px solid var(--line);background:var(--surface);color:var(--foreground)}.submit-button:disabled{cursor:not-allowed;opacity:.55}.form-message{border-radius:8px;margin:0;padding:11px 12px;font-weight:800}.form-message.success{color:#08735b;background:#e8f8f3}.form-message.error{color:var(--error);background:#fff0f2}.submit-progress{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;gap:8px;padding:10px 12px;display:grid;overflow:hidden}.submit-progress span{background:#dce4f2;border-radius:999px;height:4px;display:block;position:relative;overflow:hidden}.submit-progress span:before{border-radius:inherit;background:var(--brand);content:"";width:35%;animation:1s ease-in-out infinite submit-progress;position:absolute;top:0;bottom:0;left:-35%}.submit-progress p{color:var(--muted);margin:0;font-size:.86rem;font-weight:900}@keyframes submit-progress{0%{transform:translate(0)}to{transform:translate(385%)}}.success-panel{text-align:center;justify-items:center;gap:12px;padding:54px 24px 58px;display:grid}.success-check{width:72px;height:72px;color:var(--accent);background:#e8f8f3;border-radius:999px;place-items:center;font-size:2.4rem;font-weight:900;display:grid}.success-panel h2{margin:4px 0 0;font-size:1.55rem}.success-panel p{max-width:360px;color:var(--muted);margin:0;font-weight:800;line-height:1.5}.closed-panel{text-align:center;gap:10px;padding:34px 20px 38px;display:grid}.closed-panel h2{margin:0;font-size:1.25rem}.closed-panel p{max-width:430px;color:var(--muted);margin:0 auto;font-weight:800;line-height:1.5}.organization-panel{gap:18px;padding:22px 20px 24px;display:grid}.organization-card-head{grid-template-columns:minmax(0,1fr) 128px;align-items:flex-start;gap:18px;display:grid}.organization-card-head img{border:1px solid var(--line);object-fit:cover;border-radius:8px;flex:none;width:128px;height:128px}.organization-card-head h2{margin:0;font-size:1.25rem}.organization-card-head p,.organization-empty{color:var(--muted);margin:5px 0 0;font-weight:500;line-height:1.5}.organization-contacts{gap:7px;display:grid}.organization-contacts h3{margin:0 0 3px;font-size:1rem}.organization-contacts p{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:8px;margin:0;font-weight:500;line-height:1.45;display:flex}.organization-contacts a{color:var(--brand);overflow-wrap:anywhere;font-weight:600}.text-link,.organization-contacts button,.widget-footer button{color:var(--brand);background:0 0;border:0;font-weight:700}.text-link{padding:0;text-decoration:underline;display:inline}.protected-text{overflow-wrap:anywhere;flex-wrap:wrap;min-width:0;display:inline-flex}.widget-footer{border-top:1px solid var(--line);text-align:center;padding:12px 20px 14px}.status-shell{text-align:center;place-content:center;justify-items:center;gap:14px;min-height:100vh;padding:28px;display:grid}.status-shell h1{margin:0;font-size:2.4rem}.status-shell p{max-width:520px;color:var(--muted);margin:0}.status-shell p.error{color:var(--error)}@media (max-width:720px){.page-shell{align-items:start;width:min(100% - 18px,1000px);padding-top:12px}.widget-header{flex-direction:column;align-items:flex-start;gap:10px;padding:16px}.widget-header p{text-align:left}.steps,.booking-form{padding-left:16px;padding-right:16px}.selection-summary{margin-left:16px;margin-right:16px}.organization-card-head{grid-template-columns:minmax(0,1fr) 104px}.organization-card-head img{width:104px;height:104px}.time-row,.contact-grid,.select-line,.quantity-line{grid-template-columns:1fr}.choice-row{grid-template-columns:46px minmax(0,1fr)}.choice-row em{white-space:normal;grid-column:2}}@media (max-width:460px){.booking-place{align-items:flex-start}.steps{gap:5px}.steps button{gap:5px;font-size:.78rem}.steps button span{width:20px;height:20px}.calendar{padding:8px}.calendar-grid,.weekdays{gap:3px}.organization-card-head{grid-template-columns:1fr}.organization-card-head img{aspect-ratio:16/9;grid-row:1;width:100%;height:auto}}
