.appointment-wrap{max-width:820px}
.appointment-page{padding-block:64px 88px}
.appointment-page h1{margin:16px 0 12px}
.appointment-status{font-size:15px;line-height:1.7;margin:16px 0 22px}
.appointment-card{border:1px solid #38383c;border-radius:14px;background:#151517;padding:28px}
.appointment-details{margin:0}
.appointment-details>div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid #333337}
.appointment-details dt{font-size:13px;color:#a7a7ac}
.appointment-details dd{margin:0;white-space:pre-line;overflow-wrap:anywhere;color:#eeeef0;font-size:15px}
.appointment-window,.appointment-help{font-size:14px;line-height:1.7;margin-top:20px}
.appointment-actions,.appointment-cancel-check{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:20px}
.appointment-cancel-check{padding-top:16px;border-top:1px solid #39393d}
.appointment-cancel-check p{flex-basis:100%;color:#eeeef0}
.appointment-cancel-message{flex-basis:100%;min-width:0}
.appointment-secondary{min-height:44px;padding:9px 16px;border:1px solid #66666b;border-radius:999px;background:transparent;color:#e7e7eb}
.appointment-page [hidden]{display:none!important}
.appointment-page .text-link{display:inline-flex;align-items:center;min-height:44px;margin-top:9px}
@media(max-width:540px){
  .appointment-page{padding-block:38px 64px}
  .appointment-page h1{font-size:32px}
  .appointment-card{padding:19px}
  .appointment-details>div{grid-template-columns:minmax(0,1fr);gap:4px}
  .appointment-actions>*{width:100%}
}
