/*!
 * よやサポ 予約ページ（GMS Reserve）— 「ご予約の確認・キャンセル」の見た目
 * 予約ページのブロック（#gms-rsv）の中だけに効く。色や書体はブロック側の変数を使う。
 */
#gms-rsv .gmsr-mylink{margin-top:18px;text-align:center;animation:gmsr-fade 1.4s var(--ease,ease) 1.2s both}
#gms-rsv .gmsr-mybtn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border:1px solid rgba(142,107,53,.45);border-radius:999px;background:var(--gold-soft,#F4EEE3);color:var(--ink,#1F1B18);font-size:13px;font-weight:500;letter-spacing:.1em;transition:border-color .3s,color .3s,background-color .3s}
@media (hover:hover){#gms-rsv .gmsr-mybtn:hover{border-color:var(--gold,#8E6B35);background-color:#EDE3D2}}
#gms-rsv .gmsr-mine{display:grid;gap:22px;animation:gmsr-up .6s var(--ease,ease)}
#gms-rsv .gmsr-back{justify-self:start;font-size:13px;color:var(--muted,#6E655A);letter-spacing:.06em;padding:4px 0}
#gms-rsv .gmsr-mine .gmsr-step-h{grid-template-columns:minmax(0,1fr)}
#gms-rsv .gmsr-mine .gmsr-step-h .tx{border-left:0;padding-left:0}
#gms-rsv .gmsr-mylist{display:grid;gap:12px}
#gms-rsv .gmsr-mycard{position:relative;display:grid;gap:6px;background:var(--surface,#fff);border:1px solid var(--line2,#C3B6A3);border-left:3px solid var(--gold,#8E6B35);border-radius:var(--radius,2px);padding:16px 18px}
#gms-rsv .gmsr-mycard.cancelled{border-left-color:var(--line2,#C3B6A3);opacity:.7}
#gms-rsv .gmsr-mycard .top{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}
#gms-rsv .gmsr-mycard .d{font-family:var(--display,serif);font-size:18px;font-weight:600;letter-spacing:.06em}
#gms-rsv .gmsr-mycard .t{font-size:17px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:.04em}
#gms-rsv .gmsr-mycard.cancelled .d,#gms-rsv .gmsr-mycard.cancelled .t{text-decoration:line-through;color:var(--muted,#6E655A)}
#gms-rsv .gmsr-mycard .m{font-size:14px}
#gms-rsv .gmsr-mycard .code{font-size:12px;color:var(--muted,#6E655A);letter-spacing:.08em}
#gms-rsv .gmsr-mycard .note{font-size:13px;color:var(--ink2,#3A342E);line-height:1.8}
#gms-rsv .gmsr-mycard .gmsr-btn.cancel{justify-self:start;min-height:0;padding:10px 18px;font-size:13px;letter-spacing:.08em;color:var(--bad,#A1473B);border-color:rgba(161,71,59,.35);width:auto;min-width:0;display:inline-flex}
#gms-rsv .gmsr-mycard .gmsr-btn.cancel::after{display:none}
#gms-rsv .gmsr-pill{display:inline-block;font-size:11px;padding:1px 10px;border-radius:999px;background:var(--bad-soft,#F7E8E3);color:var(--bad,#A1473B);letter-spacing:.06em}
#gms-rsv .gmsr-mycf{display:grid;gap:10px;background:var(--bad-soft,#F7E8E3);padding:12px 14px;border-radius:var(--radius,2px);font-size:14px;color:var(--bad,#A1473B)}
#gms-rsv .gmsr-mycf .bar{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
#gms-rsv .gmsr-btn.sm{min-height:0;width:auto;min-width:0;display:inline-flex;padding:10px 18px;font-size:13.5px;letter-spacing:.1em}
#gms-rsv .gmsr-btn.sm::after{display:none}
#gms-rsv .gmsr-btn.danger{background:var(--bad,#A1473B);color:#fff}
#gms-rsv .gmsr-btn.danger::before{display:none}
#gms-rsv .gmsr-okmsg{background:#E6EFE8;color:var(--ok,#4F7355);padding:11px 14px;font-size:14px;border-left:2px solid var(--ok,#4F7355)}
#gms-rsv .gmsr-lookup{display:grid;gap:16px;border-top:1px solid var(--line,#DDD4C6);padding-top:22px;scroll-margin-top:16px}
#gms-rsv .gmsr-lk-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 16px;border:1px solid var(--line2,#C3B6A3);border-radius:var(--radius,2px);background:var(--surface,#fff);font-family:var(--display,serif);font-size:14px;letter-spacing:.02em;line-height:1.5;text-align:left;text-wrap:balance;word-break:auto-phrase;color:var(--ink,#1F1B18);transition:border-color .3s}
#gms-rsv .gmsr-lk-toggle::after{content:"";display:block;flex:none;width:8px;height:8px;border-right:1.5px solid var(--gold,#8E6B35);border-bottom:1.5px solid var(--gold,#8E6B35);transform:rotate(45deg) translate(-2px,-2px);transition:transform .3s}
#gms-rsv .gmsr-lookup.is-open .gmsr-lk-toggle{border-color:var(--gold,#8E6B35)}
#gms-rsv .gmsr-lookup.is-open .gmsr-lk-toggle::after{transform:rotate(-135deg) translate(-2px,-2px)}
#gms-rsv .gmsr-lk-body{display:grid;gap:16px;animation:gmsr-up .5s var(--ease,ease)}
#gms-rsv .gmsr-mine-foot{display:flex;justify-content:center;padding-top:8px;border-top:1px solid var(--line,#DDD4C6)}
#gms-rsv .gmsr-mine-foot .gmsr-btn{margin-top:22px}
#gms-rsv .gmsr-forget{justify-self:center;font-size:12px;color:var(--muted,#6E655A);text-decoration:underline;text-underline-offset:3px}
#gms-rsv .gmsr-done-my{margin-top:0}
/* リンクで作ったボタン（別ページへ移るもの） */
#gms-rsv a.gmsr-btn,#gms-rsv a.gmsr-mybtn,#gms-rsv a.gmsr-back{text-decoration:none}
#gms-rsv .gmsr-done-empty{gap:20px;padding:8px 0 12px}
#gms-rsv .gmsr-done-empty .gmsr-note{font-size:14px;color:var(--ink2,#3A342E)}
/* 次回のご予約 */
#gms-rsv .gmsr-nextlbl{justify-self:start;font-family:var(--display,serif);font-size:12px;letter-spacing:.2em;color:var(--gold,#8E6B35);border-bottom:1px solid var(--gold,#8E6B35);padding-bottom:2px;margin-bottom:2px}
#gms-rsv .gmsr-mycard.is-next{border-color:var(--gold,#8E6B35);box-shadow:0 16px 32px -24px rgba(80,55,20,.55)}
@media (min-width:600px){
  #gms-rsv .gmsr-lk-body{grid-template-columns:1fr 1fr;column-gap:20px}
  #gms-rsv .gmsr-lk-body .gmsr-note,#gms-rsv .gmsr-lk-body .gmsr-err,#gms-rsv .gmsr-lk-body > .gmsr-btn{grid-column:1 / -1}
  #gms-rsv .gmsr-lk-body > .gmsr-btn{justify-self:start}
  #gms-rsv .gmsr-lk-toggle{width:auto;justify-self:start;min-width:360px}
}
@media (hover:hover){#gms-rsv .gmsr-lk-toggle:hover{border-color:var(--gold,#8E6B35)}}

/* 予約完了：カレンダーに追加・お店の地図 */
#gms-rsv .gmsr-done-acts{display:grid;gap:18px;text-align:center}
#gms-rsv .gmsr-cal-add{display:grid;gap:8px;border:1px solid var(--line,#DDD4C6);border-radius:var(--radius,2px);padding:16px}
#gms-rsv .gmsr-cal-add .row{display:grid;grid-template-columns:1fr;gap:8px;margin-top:4px}
#gms-rsv .gmsr-cal-add .gmsr-btn.sm{width:100%;justify-content:center;min-height:46px;font-size:13.5px;letter-spacing:.06em}
#gms-rsv .gmsr-map-wrap{display:grid;gap:6px;justify-items:center}
#gms-rsv .gmsr-map-wrap .gmsr-note{font-size:12.5px}
@media (min-width:600px){#gms-rsv .gmsr-cal-add .row{grid-template-columns:1fr 1fr}}
