/* 신청 화면: 신청 전 남은 자리 막대 · '← 프로그램 목록' 줄 오른쪽 장소 지도 버튼 */
.ba-back{display:flex;align-items:center;justify-content:space-between;gap:12px}
.ba-maplink{flex:none;display:inline-flex;align-items:center;gap:4px;min-height:36px;padding:6px 12px;border:1px solid var(--line,#e1e6ef);border-radius:999px;background:var(--card,#fff);color:var(--fg,#30332f);font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}
.ba-maplink[aria-expanded="true"]{background:var(--pri2,#eef2fd);border-color:transparent}
.ba-maplink:focus-visible{outline:2px solid var(--pri,#3f5fe0);outline-offset:2px}
/* 지도 카드는 위 버튼으로만 여닫음(접힘 제목 줄 숨김, 닫혀 있으면 자리도 비움) */
#courseMap .cm-disclosure>summary{display:none}
#courseMap .cm-disclosure:not([open]){display:none}
#courseMap:has(.cm-disclosure:not([open])){margin:0}

.jp-seatcell{display:inline-flex;align-items:center;gap:8px}
.jp-seatcell>span{display:flex;flex-direction:column;min-width:0}
.jp-seatcell small.is-soon{color:#c46f1c}.jp-seatcell small.is-full{color:#b8433a}
.jp-ring{flex:none;width:34px;height:34px;transform:rotate(-90deg)}
.jp-ring circle{fill:none;stroke:var(--pri2,#e7ecf3);stroke-width:4}
.jp-ring .jp-ring-fg{stroke:var(--ok,#3f8a5f);stroke-linecap:round;transition:stroke-dasharray .4s ease}
.jp-ring.is-soon .jp-ring-fg{stroke:#d9822b}.jp-ring.is-full .jp-ring-fg{stroke:#c0463a}
.jp-ring text{transform:rotate(90deg);transform-origin:18px 18px;font-size:13px;font-weight:800;fill:var(--fg,#252a36);text-anchor:middle;dominant-baseline:central;font-variant-numeric:tabular-nums}
@media (prefers-reduced-motion:reduce){.jp-ring .jp-ring-fg{transition:none}}
