.liff{background:var(--color-paper);flex-direction:column;min-height:100dvh;display:flex}.liff__head{align-items:center;column-gap:var(--space-sm);padding:var(--space-md) var(--space-md) var(--space-sm);grid-template-columns:minmax(0,1fr) auto;display:grid}.liff__title{font-size:var(--text-md);grid-column:1;margin:0}.liff__head>.btn{grid-area:1/2}.liff__note{margin:var(--space-3xs) 0 0;max-width:52ch;color:var(--color-muted);font-size:var(--text-sm);grid-column:1/-1}.liff__body{align-content:start;gap:var(--space-md);min-width:0;padding:0 var(--space-md) var(--space-lg);flex:1;display:grid}@media (min-width:48rem){.liff__head,.liff__body{width:100%;max-width:44rem;margin-inline:auto}.liff .action-bar{justify-content:center}.liff .action-bar>*{max-width:44rem}}.step-head{gap:var(--space-2xs);display:grid}.step-head__index{align-items:center;gap:var(--space-xs);color:var(--color-accent-text);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;font-weight:600;display:flex}.step-head__index:after{content:"";height:var(--rule-hair);background:var(--color-rule);flex:1}.step-head__title{font-size:var(--text-md);margin:0}.step-head__note{color:var(--color-muted);font-size:var(--text-sm);margin:0}.participant-card{gap:var(--space-sm);padding:var(--space-md);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper);display:grid}.participant-card__name{align-items:center;gap:var(--space-xs);font-weight:600;display:flex}.participant-card__index{border-radius:var(--radius-pill);background:var(--color-accent-soft-2);width:1.5rem;height:1.5rem;color:var(--color-accent-text);font-family:var(--font-mono);font-size:var(--text-xs);flex:none;place-items:center;font-weight:600;display:grid}.therapist-choice{gap:var(--space-xs);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.therapist-choice__card{align-content:start;gap:var(--space-2xs);min-width:0;padding:var(--space-2xs);border:2px solid var(--color-rule);border-radius:var(--radius-md);background:var(--color-paper);cursor:pointer;transition:transform var(--dur-short) var(--ease-out);display:grid;position:relative}.therapist-choice__card:hover{background:var(--color-paper-2);border-color:var(--color-rule-2)}.therapist-choice__card:active{transform:translateY(1px)}.therapist-choice__card:focus-within{outline:2px solid var(--color-focus);outline-offset:2px}.therapist-choice__card[data-selected=true]{border-color:var(--color-accent);background:var(--color-accent-soft)}.therapist-choice__photo{aspect-ratio:4/5;border-radius:var(--radius-sm);background:var(--color-paper-3);width:100%;color:var(--color-accent-text);font-family:var(--font-display);font-size:var(--text-lg);place-items:center;font-weight:700;display:grid;overflow:hidden}.therapist-choice__photo img{object-fit:cover;width:100%;height:100%}.therapist-choice__photo--any{color:var(--color-muted)}.therapist-choice__name{min-width:0;color:var(--color-ink);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.therapist-choice__mark{border-radius:var(--radius-pill);background:var(--color-paper);width:1.5rem;height:1.5rem;color:var(--color-accent-text);place-items:center;display:grid;position:absolute;inset-block-start:var(--space-2xs);inset-inline-end:var(--space-2xs)}@media (min-width:48rem){.therapist-choice{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.therapist-choice__card{transition:none}}.slot-grid{gap:var(--space-xs);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.slot-chip{place-items:center;gap:var(--space-3xs);min-width:0;min-height:3.5rem;padding:var(--space-xs);border:var(--rule-hair) solid var(--tone-success-line);border-radius:var(--radius-sm);background:var(--tone-success-soft);color:var(--tone-success);cursor:pointer;font-weight:700;display:grid}.slot-chip span{font-size:var(--text-xs);font-weight:500}.slot-chip[data-state=partial]{border-color:var(--tone-warning-line);background:var(--tone-warning-soft);color:var(--tone-warning)}.slot-chip[data-state=unavailable]{border-color:var(--color-rule);background:var(--color-paper-3);color:var(--color-muted);cursor:not-allowed}.slot-chip[aria-pressed=true]{outline:3px solid var(--color-accent);outline-offset:1px}.partial-modal__row{justify-content:space-between;gap:var(--space-sm);border-block-end:var(--rule-hair) solid var(--color-rule);margin:0;padding-block-end:var(--space-xs);display:flex}.partial-modal__row strong{color:var(--tone-danger)}.partial-modal__row[data-ready=true] strong{color:var(--tone-success)}.summary-total{justify-content:space-between;align-items:baseline;gap:var(--space-md);border-block-start:var(--rule-hair) solid var(--color-rule);padding-block-start:var(--space-sm);display:flex}.summary-total dt{font-weight:600}.summary-total dd{font-family:var(--font-display);font-size:var(--text-md);font-variant-numeric:tabular-nums;margin:0;font-weight:700}.booking-code{gap:var(--space-2xs);padding:var(--space-lg) var(--space-md);border-radius:var(--radius-md);background:var(--color-accent-soft);text-align:center;justify-items:center;display:grid}.booking-code__label{color:var(--color-accent-text);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:600}.booking-code__value{font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:.04em;overflow-wrap:anywhere;font-weight:600}.qr-panel{justify-items:center;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-md);background:var(--color-paper-sunk);display:grid}.qr-panel img{aspect-ratio:1;object-fit:contain;border-radius:var(--radius-sm);width:min(15rem,70vw)}.appointment-row{align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-md);border:0;border-block-end:var(--rule-hair) solid var(--color-rule);color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;grid-template-columns:3.5rem minmax(0,1fr) auto;display:grid}.appointment-row:last-child{border-block-end:0}@media (hover:hover) and (pointer:fine){.appointment-row:hover{background:var(--color-paper-2)}}.appointment-row:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px}.appointment-row:active{background:var(--color-paper-3)}.appointment-row:disabled{opacity:.55;cursor:not-allowed}.appointment-row__date{justify-items:center;gap:var(--space-3xs);padding:var(--space-2xs);border-radius:var(--radius-sm);background:var(--color-paper-2);display:grid}.appointment-row__day{font-family:var(--font-display);font-size:var(--text-base);font-variant-numeric:tabular-nums;font-weight:700;line-height:1}.appointment-row__month{color:var(--color-muted);font-size:var(--text-xs)}.appointment-row__main{min-width:0}.appointment-row__title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:block;overflow:hidden}.appointment-row__meta{color:var(--color-muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.liff{overflow-wrap:anywhere;width:100%;min-width:0}.liff :where(.stack,.card,.card__body,.field,.participant-card,.stepper,.action-bar__summary){min-width:0;max-width:100%}.liff :where(input,select,textarea){min-width:0;max-width:100%;scroll-margin-block:5rem;font-size:max(16px,1rem)}body:has(.liff) .overlay-scrim :where(input,select,textarea){min-width:0;max-width:100%;scroll-margin-block:5rem;font-size:max(16px,1rem)}.liff__head,.liff__body{padding-inline-start:max(var(--space-md), env(safe-area-inset-left));padding-inline-end:max(var(--space-md), env(safe-area-inset-right))}.liff .action-bar{flex-wrap:wrap;padding-block-end:max(var(--space-sm), env(safe-area-inset-bottom));padding-inline-start:max(var(--space-md), env(safe-area-inset-left));padding-inline-end:max(var(--space-md), env(safe-area-inset-right))}.liff .action-bar__summary{flex:5rem}.liff .partial-modal__row{overflow-wrap:anywhere;flex-wrap:wrap;min-width:0}body:has(.liff) .partial-modal__row{overflow-wrap:anywhere;flex-wrap:wrap;min-width:0}body:has(.liff) .dialog{overflow-wrap:anywhere;min-width:0;max-width:100%}.liff .summary-total{flex-wrap:wrap}.liff__body{grid-template-columns:minmax(0,1fr)}.liff__body>*{min-width:0}.liff .liff__body--slip{padding-block-end:calc(6rem + env(safe-area-inset-bottom))}.liff .slip-summary__amount{gap:var(--space-xs);flex-wrap:wrap;align-items:baseline;display:flex}.liff .slip-summary__amount strong{font-size:var(--text-md);font-variant-numeric:tabular-nums}.liff .slip-form{scroll-margin-block:var(--space-md);outline:none}.liff .slip-form:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.liff .slip-input{display:none}.liff .slip-selection{justify-items:start;gap:var(--space-sm);display:grid}.liff .slip-selection__preview{object-fit:contain;border-radius:var(--radius-sm);background:var(--color-paper-2);width:min(100%,15rem);max-height:20rem}.liff .slip-selection__name{overflow-wrap:anywhere;max-width:100%}.liff .slip-action-bar{padding-block-end:calc(var(--space-sm) + env(safe-area-inset-bottom))}.liff .slip-action-bar>.btn{width:100%}.liff .appointment-list-item{border-block-end:var(--rule-hair) solid var(--color-rule)}.liff .appointment-list-item:last-child{border-block-end:0}.liff .appointment-list-item .appointment-row{border-block-end:0;grid-template-columns:3rem minmax(0,1fr)}.liff .appointment-list-item .badge{grid-column:2;justify-self:start}.liff .appointment-list-item__action{padding:0 var(--space-md) var(--space-md)}.liff .appointment-list-item__status{padding:0 var(--space-md) var(--space-md);color:var(--color-muted);font-size:var(--text-sm);margin:0}.liff .slip-summary__instruction{color:var(--tone-danger);font-weight:600}
