.book-schedule{--book-strip:color-mix(in oklab, var(--color-foreground) 10%, transparent);--book-lane:color-mix(in oklab, var(--color-foreground) 8%, transparent);--book-light:var(--color-primary)}.book-schedule__bay{isolation:isolate;background:color-mix(in oklab, var(--color-foreground) 3.5%, var(--color-background))}@media (min-width:1024px){.book-schedule__bay{max-height:calc(100svh - 6.5rem);position:sticky;top:6rem;overflow:auto}}.book-schedule__strip{border-bottom:1px solid var(--book-strip);grid-template-columns:auto auto 1fr auto;align-items:center;gap:.75rem 1rem;padding:1rem 1.25rem;display:grid}@media (min-width:640px){.book-schedule__strip{padding:1.1rem 1.5rem}}.book-schedule__light{background:var(--book-light);width:.55rem;height:.55rem;box-shadow:0 0 0 3px color-mix(in oklab, var(--color-primary) 22%, transparent);border-radius:999px}.book-schedule__meter{background:color-mix(in oklab, var(--color-foreground) 12%, transparent);width:2.75rem;height:.35rem;box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--color-foreground) 18%, transparent);border-radius:1px;display:block;position:relative;overflow:hidden}.book-schedule__meter:after{content:"";background:color-mix(in oklab, var(--color-primary) 70%, transparent);width:72%;position:absolute;inset:0 auto 0 0}.book-schedule__aperture{background:color-mix(in oklab, var(--color-foreground) 5%, var(--color-background));position:relative;overflow:hidden}.book-schedule__aperture-edge{pointer-events:none;z-index:1;box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--color-foreground) 10%, transparent);position:absolute;inset:0}.book-schedule__service{border-bottom:1px solid var(--book-lane)}.book-schedule__service:last-child{border-bottom:0}.book-schedule__marker{width:.45rem;height:.45rem;box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--color-foreground) 28%, transparent);background:0 0;border-radius:1px;margin-top:.55rem;transition:background-color .18s,box-shadow .18s;display:block}.book-schedule__service[aria-pressed=true] .book-schedule__marker{background:var(--color-primary);box-shadow:0 0 0 2px color-mix(in oklab, var(--color-primary) 28%, transparent)}.book-schedule__service:not([aria-pressed=true]) .book-schedule__marker{opacity:.45}@media (prefers-reduced-motion:no-preference){.book-schedule__light{animation:2.4s ease-in-out infinite book-session-pulse}}@keyframes book-session-pulse{0%,to{opacity:1;box-shadow:0 0 0 3px color-mix(in oklab, var(--color-primary) 22%, transparent)}50%{opacity:.72;box-shadow:0 0 0 5px color-mix(in oklab, var(--color-primary) 10%, transparent)}}
