:root{--calendar-accent:var(--link);--calendar-border:var(--ink);--calendar-muted:var(--muted)}.calendar-page{max-width:72ch}.calendar-page__intro{color:var(--calendar-muted)}.calendar{border:2px solid var(--calendar-border);border-radius:var(--radius);display:grid;gap:var(--space-3);padding:var(--space-4)}.calendar__controls{display:grid;gap:var(--space-1)}.calendar__controls select{background:0 0;border:1px solid var(--calendar-border);color:inherit;font:inherit;padding:.4rem .5rem}.calendar__days{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(8rem,1fr))}.calendar-form [type=submit],.calendar__day-btn,.calendar__slot-btn{background:0 0;border:1px solid var(--calendar-border);color:inherit;cursor:pointer;font:inherit;min-height:44px;padding:.42rem .65rem}.calendar__day-btn[aria-pressed=true],.calendar__slot-btn.slot--selected{background:var(--ink);border-color:var(--ink);color:var(--bg)}.calendar__slots{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr))}.slot--available{opacity:1}.slot--disabled{cursor:not-allowed;opacity:.45}.slot--loading{opacity:.65}.calendar__status{color:var(--calendar-muted)}.calendar-form{border-top:1px solid var(--calendar-border);display:grid;gap:var(--space-2);padding-top:var(--space-3)}.calendar-form input,.calendar-form textarea{background:0 0;border:1px solid var(--calendar-border);color:inherit;font:inherit;padding:.45rem .55rem;width:100%}.calendar-form button:focus-visible,.calendar-form input:focus-visible,.calendar-form textarea:focus-visible,.calendar__controls select:focus-visible,.calendar__day-btn:focus-visible,.calendar__slot-btn:focus-visible{outline:3px solid var(--calendar-accent);outline-offset:2px}@media (width <= 48rem){.calendar{padding:var(--space-3)}}.calendar-form__note{color:var(--calendar-muted);font-size:var(--step-n1);margin:0}.calendar-form[hidden]{display:none}.calendar-form [type=submit]{background:var(--ink);border-color:var(--ink);border-radius:999px;color:var(--bg);font-weight:700}