.demo-steps{display:grid;grid-gap:var(--space-4);gap:var(--space-4);margin:0;padding:0;list-style:none;counter-reset:demo-step}.demo-steps li{position:relative;padding-left:40px;color:var(--text-secondary);font-size:.9375rem;line-height:1.55;counter-increment:demo-step}.demo-steps li:before{content:counter(demo-step);position:absolute;left:0;top:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--accent-subtle);color:var(--accent-ink);font-family:var(--font-text);font-weight:700;font-size:.8125rem}.demo-steps li:not(:last-child):after{content:"";position:absolute;left:13px;top:32px;bottom:calc(var(--space-4) * -1 + 4px);width:2px;background:var(--border-subtle)}.demo-steps li strong{display:block;color:var(--text-heading);font-weight:600}.demo-footnote{color:var(--text-muted);font-size:var(--text-sm-size)}.demo-form-card{padding:clamp(var(--space-5),3vw,var(--space-8));border:1px solid var(--border-subtle);border-radius:var(--radius-xl);background:var(--surface-raised);box-shadow:var(--shadow-2)}.demo-day{margin:0 0 var(--space-6)}.demo-day-head{margin:0 0 var(--space-3);color:var(--text-primary);font-family:var(--font-text);font-size:var(--text-base-size)}.demo-day-head span{color:var(--text-secondary);font-family:var(--font-text);font-size:var(--text-sm-size)}.demo-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));grid-gap:var(--space-2);gap:var(--space-2);margin:0;padding:0;list-style:none}.demo-slot{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface);color:var(--text-primary);font-family:var(--font-text);font-size:var(--text-sm-size);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.demo-slot:hover{border-color:var(--border-interactive);background:var(--accent-subtle)}.demo-slot:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.visually-hidden-input:checked+.demo-slot{border-color:var(--accent-line);background:var(--accent);color:var(--text-on-accent)}.demo-zone{margin:0 0 var(--space-5);color:var(--text-secondary);font-size:var(--text-sm-size)}.demo-confirm-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--border-subtle)}.demo-chosen{margin:0;color:var(--text-primary);font-size:var(--text-sm-size)}.demo-booking-card{margin:var(--space-5) 0;padding:var(--space-6);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-raised)}.demo-when{margin:0 0 var(--space-2);color:var(--text-primary);font-family:var(--font-text);font-size:var(--text-xl-size)}.demo-when-sub{margin:0;color:var(--text-secondary);font-size:var(--text-sm-size)}.demo-booking-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-5)}.demo-cancelled{color:var(--danger-strong)}@media (prefers-reduced-motion:reduce){.demo-slot{transition:none}}.visually-hidden-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.visually-hidden-input:focus-visible+.demo-slot{outline:2px solid var(--focus-ring);outline-offset:2px}.demo-slot-error{margin:var(--space-4) 0 0;color:var(--danger-strong);font-size:var(--text-sm-size)}.demo-day{border:0;padding:0;min-inline-size:0}