.slots{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:1rem;gap:1rem}.slots.slots .slots-day,.slots.slots .slots-rooms>*,.slots.slots .slots-tile{display:grid;width:auto;max-width:none;min-height:0;flex:0 0 auto;align-self:stretch;justify-self:stretch;margin:0;border:1px solid transparent;box-shadow:none;background:none;color:var(--ink);font:inherit;font-weight:500;white-space:nowrap;text-decoration:none;cursor:pointer;transform:none}.slots.slots :is(button,a):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.slots-top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 1.5rem}.slots-top>*{min-width:0}.slots-days{display:flex;gap:.5rem;overflow-x:auto;padding:.25rem .125rem}.slots.slots .slots-day{position:relative;flex:0 0 auto;display:grid;justify-items:center;grid-gap:.375rem;gap:.375rem;min-width:3.5rem;padding:0;border:0;background:none;color:var(--ink)}.slots-weekday{font-size:.875rem;font-weight:500;color:var(--muted)}.slots-num{display:grid;place-items:center;width:3rem;height:3rem;border-radius:50%;background:color-mix(in srgb,var(--line) 45%,transparent);font-size:1.125rem;font-weight:600}.slots .slots-day:is([aria-pressed=true],[aria-current]) .slots-weekday{color:var(--accent)}.slots .slots-day:is([aria-pressed=true],[aria-current]) .slots-num{background:var(--accent);color:var(--accent-ink)}.slots-day[data-closed=true] .slots-num{opacity:.45;text-decoration:line-through}.slots-dot{position:absolute;top:1.45rem;right:.3rem;width:.5rem;height:.5rem;border:2px solid var(--panel-top);border-radius:50%;background:var(--espresso)}.slots-rooms{display:inline-grid;grid-template-columns:1fr 1fr;justify-self:start;padding:.25rem;border:1px solid var(--line);border-radius:62.4375rem;background:var(--panel-top)}.slots.slots .slots-rooms>*{place-items:center;min-height:2.5rem;padding:0 1.25rem;border:0;border-radius:62.4375rem;background:none;color:var(--ink);font-weight:500}.slots.slots .slots-rooms>:is([aria-pressed=true],[aria-current]){background:var(--ink);color:var(--accent-ink)}.slots-empty,.slots-note{margin:0;color:var(--muted)}.slots-parts{display:grid;grid-gap:1rem;gap:1rem}.slots-part{display:grid;grid-gap:.5rem;gap:.5rem}.slots .slots-part-head{margin:0;font:600 .75rem/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.slots-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.5rem;gap:.5rem}@media (max-width:639px){.slots-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.375rem}.slots.slots .slots-tile{min-height:3.25rem;padding:.375rem .125rem}.slots .slots-time{font-size:.875rem}.slots .slots-tag{font-size:.75rem}}@media (min-width:640px){.slots-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1100px){.slots-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.slots.slots .slots-tile{display:grid;align-content:center;width:100%;grid-gap:.125rem;gap:.125rem;justify-items:center;min-height:3.75rem;padding:.5rem .25rem;border:1px solid var(--line);border-radius:.75rem;background:var(--panel-top);color:var(--ink);transition:border-color .15s,background .15s}.slots.slots .slots-tile:hover:not(:disabled){border-color:var(--accent)}.slots-time{font-size:1rem;font-weight:600}.slots-tag{font-size:.875rem;color:var(--muted)}.slots.slots .slots-tile[data-state=few] .slots-tag{color:var(--accent);font-weight:600}.slots.slots .slots-tile[data-state=full]{border-style:dashed;background:transparent}.slots.slots .slots-tile[data-state=booked],.slots.slots .slots-tile[data-state=waiting]{border-color:var(--espresso)}.slots.slots .slots-tile[data-state=booked] .slots-tag,.slots.slots .slots-tile[data-state=waiting] .slots-tag{color:var(--espresso);font-weight:600}.slots.slots .slots-tile:disabled{cursor:not-allowed}.slots.slots .slots-tile[data-state=passed]{background:repeating-linear-gradient(135deg,transparent 0 6px,color-mix(in srgb,var(--line) 55%,transparent) 6px 7px);color:var(--muted)}.slots.slots .slots-tile:is([aria-pressed=true],[aria-current]){border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.slots.slots .slots-tile:is([aria-pressed=true],[aria-current]) .slots-tag{color:var(--accent-ink)}.slots-legend{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin:0;padding:0;list-style:none;font-size:.875rem;color:var(--muted)}.slots-legend li{display:inline-flex;align-items:center;gap:.5rem}.slots-legend li:before{content:"";width:1.25rem;height:.875rem;border:1px solid var(--line);border-radius:.25rem;background:var(--panel-top)}.slots-legend [data-state=few]:before{border-color:var(--accent)}.slots-legend [data-state=full]:before{border-style:dashed;background:transparent}.slots-legend [data-state=booked]:before{border-color:var(--espresso);border-width:2px}.slots-legend [data-state=passed]:before{background:repeating-linear-gradient(135deg,transparent 0 3px,var(--line) 3px 4px)}.slots-bar{position:-webkit-sticky;position:sticky;bottom:max(.75rem,env(safe-area-inset-bottom));z-index:40;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.5rem;padding:.875rem 1rem;border:1px solid var(--line);border-radius:1rem;background:var(--panel-top);box-shadow:0 8px 28px rgba(92,47,31,.14)}.slots-bar-text{display:grid;grid-gap:.125rem;gap:.125rem;min-width:0}.slots-bar-text span{font-size:.875rem;color:var(--muted)}.slots-form{display:grid;grid-gap:.5rem;gap:.5rem;justify-items:end}.slots-late{display:flex;gap:.5rem;align-items:flex-start;max-width:22rem;font-size:.875rem;color:var(--danger)}.slots-link{font-weight:600;color:var(--ink)}@media (max-width:639px){.slots-form{width:100%;justify-items:stretch}.slots.slots .slots-form button{width:100%;max-width:none;justify-self:stretch}}@media (max-width:640px){.desk .slots-bar{bottom:calc(var(--desk-tabbar-h) + .5rem + env(safe-area-inset-bottom))}}.slots-main{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:1rem;gap:1rem;min-width:0}.slots-open{font-size:.875rem;color:var(--muted)}.slots .slots-day:is([aria-pressed=true],[aria-current]) .slots-open{color:var(--ink);font-weight:600}.slots-bar-text span{display:flex;gap:.375rem;align-items:flex-start}.slots-bar-text svg{flex:none;margin-top:.125rem;width:1rem;height:1rem}.slots .slots-bar-head{margin:0;font:600 1rem/1.3 var(--sans);letter-spacing:0;color:var(--ink)}.slots-bar-empty{display:flex;gap:.5rem;align-items:center;margin:0;color:var(--muted)}@media (max-width:1099px){.slots .slots-bar-head,.slots-bar[data-empty]{display:none}}@media (min-width:1100px){.slots[data-review]{grid-template-columns:minmax(0,1fr) var(--slots-side,20rem);align-items:start;gap:1.5rem}.slots[data-review] .slots-grid{grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr))}.slots[data-review] .slots-bar{position:-webkit-sticky;position:sticky;top:1rem;bottom:auto;display:grid;align-items:start;justify-content:stretch;grid-gap:.875rem;gap:.875rem;padding:1.125rem;background:var(--desk-card,var(--panel-top));box-shadow:var(--desk-shadow,none)}.slots[data-review] .slots-bar-text{gap:.5rem}.slots[data-review] .slots-bar-text strong{font-size:1.0625rem}.slots[data-review] .slots-form{justify-items:stretch}.slots.slots[data-review] .slots-form button{width:100%;max-width:none}}