.sheet__scrim{z-index:var(--z-overlay);background:var(--color-overlay);justify-content:center;align-items:flex-end;transition:opacity .22s;animation:.22s backwards sheet-scrim-in;display:flex;position:fixed;inset:0}.sheet__scrim--out{opacity:0}.sheet{background:var(--color-surface);width:100%;max-width:560px;max-height:88vh;color:var(--color-text);border-radius:var(--radius-lg) var(--radius-lg) 0 0;outline:none;flex-direction:column;transition:transform .24s cubic-bezier(.32,.72,0,1);animation:.28s cubic-bezier(.32,.72,0,1) backwards sheet-up;display:flex;transform:translateY(0);box-shadow:0 -8px 32px #00000047}.sheet--out{transform:translateY(100%)}.sheet__grabwrap{padding:var(--space-2) 0;cursor:grab;touch-action:none;justify-content:center;display:flex}.sheet__grab{background:var(--color-border-strong);border-radius:999px;width:40px;height:5px}.sheet__head{padding:0 var(--space-4) var(--space-3);border-bottom:1px solid var(--color-border)}.sheet__title{font-size:var(--fs-500);margin:0;font-weight:800}.sheet__sub{color:var(--color-text-muted);font-size:var(--fs-400);margin:2px 0 0}.sheet__body{padding:var(--space-3) var(--space-4);gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.sheet__footer{gap:var(--space-2);padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--color-border);background:var(--color-surface);flex:none;display:flex}.sheet__footer>*{flex:1}.sheet__footer .btn{min-height:56px}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheet-scrim-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.sheet,.sheet__scrim{animation:none}.sheet{transition:none}}.appt-sheet__section{gap:var(--space-2);flex-direction:column;display:flex}.appt-sheet__heading{font-size:var(--fs-300);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);margin:0;font-weight:700}.appt-sheet__row{justify-content:space-between;align-items:baseline;gap:var(--space-3);border-bottom:1px solid var(--color-border);padding:4px 0;display:flex}.appt-sheet__row-label{color:var(--color-text-muted);font-size:var(--fs-400)}.appt-sheet__row-value{text-align:right;font-weight:600}.appt-sheet__muted{color:var(--color-text-muted);font-size:var(--fs-300);margin:0}.appt-sheet__contact{align-items:center;gap:var(--space-2);display:flex}.appt-sheet__actions{gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border);flex-wrap:wrap;display:flex}.appt-sheet__actions .appt-actions{gap:var(--space-2);flex-basis:100%;display:flex}.appt-sheet__actions>.btn,.appt-sheet__actions .appt-actions .btn{flex:1}.appt-svc{gap:var(--space-2);flex-direction:column;display:flex}.appt-svc__preview{font-weight:700;font-size:var(--fs-400);margin:0}.appt-svc__soft{gap:var(--space-2);flex-direction:column;display:flex}.appt-svc__actions{gap:var(--space-2);display:flex}.appt-svc__actions .btn{flex:1}.appt-loyalty{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.appt-loyalty__label{color:var(--color-text-muted);font-size:var(--fs-400);align-items:center;gap:6px;display:inline-flex}.appt-loyalty__dots{gap:3px;display:inline-flex}.appt-loyalty__dot{background:var(--color-border-strong);border-radius:999px;width:8px;height:8px}.appt-loyalty__dot.is-filled{background:var(--accent)}.appt-loyalty__count{font-weight:700;font-size:var(--fs-400)}.appt-dur{gap:var(--space-2);flex-direction:column;display:flex}.appt-dur__stepper{align-items:center;gap:var(--space-3);display:flex}.appt-dur__btn{border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);width:44px;height:44px;color:var(--color-text);font-size:var(--fs-600);cursor:pointer;line-height:1}.appt-dur__btn:disabled{opacity:.4;cursor:default}.appt-dur__value{text-align:center;min-width:5rem;font-weight:700;font-size:var(--fs-500)}.appt-dur__note{color:var(--color-text-muted);font-size:var(--fs-300);margin:0}.appt-dur__actions{gap:var(--space-2);display:flex}.appt-dur__actions .btn{flex:1}
