.appointment-planner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 14px;margin-top:24px;padding:22px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}
.appointment-planner>label{font-size:13px;font-weight:600}
.appointment-planner>input{min-height:46px;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:4px;background:var(--cream);color:var(--ink);font:inherit}
.appointment-planner>.button{grid-column:1/-1;justify-self:start}
.appointment-status,.appointment-result{grid-column:1/-1;font-size:12px;line-height:1.7;color:var(--muted)}
.appointment-status[data-state=error]{color:#8c3828}
.appointment-status[data-state=success],.appointment-result[data-state=success]{color:var(--forest)}
.appointment-slots{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:9px}
.appointment-slot{min-width:76px;padding:10px 14px;border:1px solid var(--line);border-radius:4px;background:var(--cream);color:var(--forest);font-size:13px}
.appointment-slot:hover,.appointment-slot[aria-pressed=true]{border-color:var(--forest);background:var(--forest);color:var(--paper)}
.appointment-planner .button:disabled{opacity:.55}
@media(max-width:560px){.appointment-planner{grid-template-columns:1fr}.appointment-planner>.button{width:100%;justify-content:center}.appointment-planner>input{width:100%}}
