/* =========================================================
   user.board.css — 공지사항 · 이용가이드 · 자주 묻는 질문
   고객지원/약관 화면(.public-info)과 같은 여백·카드·본문 규칙을 따른다.
   ========================================================= */

.board { min-height:calc(100vh - 240px); padding:112px 0 80px; background:#F8FBF8; }
.board__container { max-width:1000px; }
.board__container--narrow { max-width:860px; }

.board__header { margin-bottom:28px; }
.board__eyebrow { margin-bottom:8px; color:var(--unc-brand-strong); font-size:0.75rem; font-weight:800; letter-spacing:.08em; }
.board__title { color:var(--unc-ink); font-size:2rem; line-height:1.25; letter-spacing:-.03em; word-break:keep-all; }
.board__lead { margin-top:12px; color:var(--unc-ink-3); font-size:1rem; line-height:1.7; word-break:keep-all; }

/* 아직 공개하지 않은 게시판임을 알린다. 주소를 아는 사람만 들어온다. */
.board__preparing {
	display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:0 0 20px; padding:14px 18px;
	border:1px dashed var(--unc-line); border-radius:14px; background:#fff;
	color:var(--unc-ink-3); font-size:0.875rem; line-height:1.6; word-break:keep-all;
}
.board__preparing-badge {
	flex:0 0 auto; padding:4px 10px; border-radius:999px;
	background:var(--unc-brand-soft); color:var(--unc-brand-strong); font-size:0.75rem; font-weight:800;
}

.board__empty {
	padding:56px 24px; border:1px solid var(--unc-line); border-radius:20px; background:#fff;
	color:var(--unc-muted); font-size:0.9375rem; text-align:center; word-break:keep-all;
}

/* ── 줄 목록 (공지사항) ───────────────────────────────── */
.board__list { border-top:2px solid var(--unc-ink); border-bottom:1px solid var(--unc-line); background:#fff; }
.board__row + .board__row { border-top:1px solid var(--unc-line); }
.board__row-link {
	display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 24px;
	color:var(--unc-ink); text-decoration:none;
}
.board__row-link:hover .board__row-title, .board__row-link:focus-visible .board__row-title { color:var(--unc-brand-strong); text-decoration:underline; }
.board__row-title { display:flex; align-items:center; gap:8px; min-width:0; font-size:1rem; line-height:1.5; word-break:keep-all; }
.board__row-date { flex:0 0 auto; color:var(--unc-muted); font-size:0.8125rem; }
.board__pin {
	flex:0 0 auto; padding:3px 8px; border-radius:6px;
	background:var(--unc-brand-soft); color:var(--unc-brand-strong); font-size:0.6875rem; font-weight:800;
}

/* ── 카드 목록 (이용가이드) ───────────────────────────── */
.board__cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.board__card { min-width:0; }
.board__card-link {
	display:flex; flex-direction:column; height:100%; overflow:hidden; text-decoration:none;
	border:1px solid var(--unc-line); border-radius:20px; background:#fff;
	box-shadow:0 8px 24px rgba(25,70,35,.04); transition:box-shadow .2s var(--unc-ease), transform .2s var(--unc-ease);
}
.board__card-link:hover, .board__card-link:focus-visible { box-shadow:0 14px 32px rgba(25,70,35,.10); transform:translateY(-2px); }
.board__card-thumb { display:block; aspect-ratio:16/9; background:var(--unc-bg-soft); }
.board__card-thumb img { width:100%; height:100%; object-fit:cover; }
.board__card-body { display:flex; flex-direction:column; align-items:flex-start; gap:8px; padding:22px 24px 24px; }
.board__card-title { color:var(--unc-ink); font-size:1.0625rem; font-weight:700; line-height:1.45; word-break:keep-all; }
.board__card-summary { color:var(--unc-ink-3); font-size:0.875rem; line-height:1.65; word-break:keep-all; }
.board__card-date { margin-top:auto; color:var(--unc-muted); font-size:0.8125rem; }

/* ── 상세 ─────────────────────────────────────────────── */
.board__crumb { margin-bottom:16px; font-size:0.8125rem; }
.board__crumb a { color:var(--unc-muted); text-decoration:none; }
.board__crumb a:hover { color:var(--unc-brand-strong); text-decoration:underline; }
.board__article { padding:40px; border:1px solid var(--unc-line); border-radius:20px; background:#fff; box-shadow:0 8px 24px rgba(25,70,35,.04); }
.board__article-head { padding-bottom:22px; margin-bottom:28px; border-bottom:1px solid var(--unc-line); }
.board__article-title { color:var(--unc-ink); font-size:1.625rem; line-height:1.35; letter-spacing:-.02em; word-break:keep-all; }
.board__article-meta { display:flex; flex-wrap:wrap; gap:8px 16px; margin-top:12px; color:var(--unc-muted); font-size:0.8125rem; }

/* 본문은 저장할 때 걸러진 HTML 이다. 약관 본문과 같은 읽기 규칙을 쓴다. */
.board__prose { color:var(--unc-ink-3); font-size:0.9375rem; line-height:1.8; overflow-wrap:anywhere; }
.board__prose p { margin:0 0 14px; }
.board__prose h2, .board__prose h3, .board__prose h4 { margin:32px 0 12px; color:var(--unc-ink); line-height:1.4; word-break:keep-all; }
.board__prose h2 { font-size:1.25rem; }
.board__prose h3 { font-size:1.125rem; }
.board__prose h4 { font-size:1rem; }
.board__prose > :first-child { margin-top:0; }
/* 사이트 기본 CSS 가 목록 점을 지운다. 본문은 글이므로 점과 번호를 되살린다 —
   에디터에서는 보이는데 사이트에서만 사라지면 글 쓰는 사람이 혼란스럽다. */
.board__prose ul, .board__prose ol { margin:0 0 14px; padding-left:22px; }
.board__prose ul, .board__prose ul li { list-style:disc outside; }
.board__prose ol, .board__prose ol li { list-style:decimal outside; }
.board__prose ul ul, .board__prose ul ul li { list-style:circle outside; }
.board__prose li { margin-bottom:6px; }
.board__prose li::marker { color:var(--unc-muted); }
.board__prose img { max-width:100%; height:auto; margin:8px 0; border-radius:12px; }
.board__prose iframe { width:100%; aspect-ratio:16/9; height:auto; margin:8px 0; border:0; border-radius:12px; }
.board__prose table { width:100%; margin:18px 0; border-collapse:collapse; }
.board__prose th, .board__prose td { padding:12px; border:1px solid var(--unc-line); text-align:left; vertical-align:top; }
.board__prose th { background:var(--unc-bg-soft); font-weight:700; }
.board__prose blockquote { margin:18px 0; padding:14px 18px; border-radius:12px; background:var(--unc-bg-soft); }
.board__prose a { color:var(--unc-brand-strong); }

/* ── 자주 묻는 질문 ───────────────────────────────────── */
.board__faq { border-top:2px solid var(--unc-ink); background:#fff; }
.board__faq-item { border-bottom:1px solid var(--unc-line); }
.board__faq-question {
	display:flex; align-items:center; justify-content:space-between; gap:16px; padding:22px 24px;
	color:var(--unc-ink); font-size:1rem; font-weight:700; line-height:1.5; cursor:pointer; word-break:keep-all;
	list-style:none;
}
.board__faq-question::-webkit-details-marker { display:none; }
.board__faq-question:hover { color:var(--unc-brand-strong); }
.board__faq-mark { position:relative; flex:0 0 auto; width:14px; height:14px; }
.board__faq-mark::before, .board__faq-mark::after {
	content:""; position:absolute; top:50%; left:0; width:14px; height:2px; border-radius:2px;
	background:var(--unc-muted); transform:translateY(-50%); transition:transform .2s var(--unc-ease);
}
.board__faq-mark::after { transform:translateY(-50%) rotate(90deg); }
.board__faq-item[open] .board__faq-mark::after { transform:translateY(-50%) rotate(0deg); }
.board__faq-answer { padding:0 24px 24px; }

/* ── 글에 연결된 지점 ─────────────────────────────────── */
.board-station { margin-top:36px; padding:28px 30px; border:1px solid var(--unc-line); border-radius:16px; background:var(--unc-bg-soft); }
.board-station__eyebrow { margin-bottom:8px; color:var(--unc-brand-strong); font-size:0.75rem; font-weight:800; letter-spacing:.08em; }
.board-station__name { color:var(--unc-ink); font-size:1.25rem; line-height:1.4; word-break:keep-all; }
.board-station__meta { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; margin-top:8px; color:var(--unc-muted); font-size:0.8125rem; }
.board-station__code { padding:3px 8px; border-radius:6px; background:#fff; border:1px solid var(--unc-line); font-weight:800; letter-spacing:.04em; }
.board-station__rows { display:grid; gap:14px; margin:20px 0 0; }
.board-station__row { display:grid; grid-template-columns:96px minmax(0,1fr); gap:16px; align-items:start; }
.board-station__row dt { color:var(--unc-muted); font-size:0.8125rem; }
.board-station__row dd { margin:0; min-width:0; color:var(--unc-ink-3); font-size:0.9375rem; line-height:1.7; word-break:keep-all; }
.board-station__link { margin-left:8px; color:var(--unc-brand-strong); font-size:0.8125rem; white-space:nowrap; }
.board-station__hours { margin:0; padding:0; list-style:none; display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:4px 18px; }
.board-station__hours li { display:flex; align-items:baseline; gap:10px; }
/* 영업시간은 그 지점의 현지 시각이다 — 한국 시각으로 읽지 않도록 밝혀 둔다. */
.board-station__timezone { margin:8px 0 0; color:var(--unc-muted, #6b7280); font-size:0.8125rem; }
/* 「월~금」처럼 묶인 요일이 들어온다. 폭을 고정하면 글자가 세로로 쪼개진다. */
.board-station__day { flex:0 0 auto; min-width:2.4em; color:var(--unc-ink); font-weight:700; white-space:nowrap; }
.board-station__closed { color:var(--unc-muted); }
.board-station__note { margin:18px 0 0; padding-top:16px; border-top:1px solid var(--unc-line); color:var(--unc-muted); font-size:0.8125rem; line-height:1.7; word-break:keep-all; }

/* ── 공통 하단 ────────────────────────────────────────── */
.board__pager { display:flex; align-items:center; justify-content:center; gap:14px; margin-top:32px; color:var(--unc-muted); font-size:0.875rem; }
.board__pager .btn { min-width:96px; }
.board__actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px; margin-top:28px; }
/* 글자가 긴 버튼(「이 지점으로 예약하기」)이 고정폭 160px 안에서 두 줄로 쪼개졌다.
   최소폭만 보장하고 글자만큼 늘어나게 둔다. */
.board__actions .btn { min-width:160px; width:auto; padding-left:20px; padding-right:20px; white-space:nowrap; }

@media (max-width:1024px) {
	.board__cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:768px) {
	.board { padding:88px 0 64px; }
	.board__title { font-size:1.625rem; }
	.board__cards { grid-template-columns:minmax(0,1fr); }
	.board__article { padding:28px 20px; }
	.board__article-title { font-size:1.375rem; }
	.board__row-link { flex-direction:column; align-items:flex-start; gap:6px; padding:18px 18px; }
	.board__faq-question { padding:18px; }
	.board__faq-answer { padding:0 18px 18px; }
	.board-station { padding:22px 18px; }
	.board-station__row { grid-template-columns:minmax(0,1fr); gap:4px; }
	.board-station__hours { grid-template-columns:minmax(0,1fr); }
	.board-station__link { margin-left:0; display:block; }
	.board__actions { flex-direction:column; }
	.board__actions .btn { width:100%; min-width:0; white-space:normal; }
}

/* ── 고객지원 화면 안의 대표 질문 ─────────────────────── */
.support-faq { padding:32px 36px; margin-bottom:20px; }
.support-faq__head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; }
.support-faq__head h2 { margin-top:8px; color:var(--unc-ink); font-size:1.25rem; line-height:1.4; }
.support-faq__head .btn { flex:0 0 auto; min-width:120px; }
/* 카드 안에 들어가므로 바깥 테두리 대신 목록만 보이게 한다. */
.support-faq__list { border-top:1px solid var(--unc-line); background:transparent; }
.support-faq__list .board__faq-question { padding:18px 0; font-size:0.9375rem; }
.support-faq__list .board__faq-answer { padding:0 0 18px; }

@media (max-width:768px) {
	.support-faq { padding:24px 20px; }
	.support-faq__head .btn { width:100%; }
}

/* 글을 읽고 바로 예약으로 넘어가는 자리. 지점 카드에서 가장 눈에 띄어야 한다. */
.board-station__cta { display:flex; align-items:center; justify-content:center; width:100%; margin-top:22px; }

/* 지점 위치 지도. 비율을 고정해 불러오는 동안 화면이 밀리지 않게 한다. */
.board-station__map { margin-top:20px; overflow:hidden; border:1px solid var(--unc-line); border-radius:12px; background:#fff; }
.board-station__map iframe { display:block; width:100%; aspect-ratio:16/10; border:0; }
@media (max-width:768px) { .board-station__map iframe { aspect-ratio:4/3; } }

/* ── 프로모션 조건 ────────────────────────────────────── */
.board-promo { margin:0 0 28px; padding:22px 24px; border:1px solid var(--unc-line); border-radius:16px; background:var(--unc-bg-soft); }
.board-promo__head { display:flex; align-items:center; gap:10px; margin:0 0 16px; }
.board-promo__eyebrow { color:var(--unc-brand-strong); font-size:0.75rem; font-weight:800; letter-spacing:.08em; }
.board-promo__state { padding:3px 10px; border-radius:999px; font-size:0.6875rem; font-weight:800; }
.board-promo__state--running { background:var(--unc-brand-soft); color:var(--unc-brand-strong); }
.board-promo__state--upcoming { background:#fff; border:1px solid var(--unc-line); color:var(--unc-muted); }
.board-promo__state--ended { background:#fff; border:1px solid var(--unc-line); color:var(--unc-muted); text-decoration:line-through; }
.board-promo__rows { display:grid; gap:12px; margin:0; }
.board-promo__row { display:grid; grid-template-columns:88px minmax(0,1fr); gap:16px; align-items:start; }
.board-promo__row dt { color:var(--unc-muted); font-size:0.8125rem; }
.board-promo__row dd { margin:0; min-width:0; color:var(--unc-ink); font-size:0.9375rem; line-height:1.6; font-weight:700; word-break:keep-all; }
.board-promo__hint { display:block; margin-top:2px; color:var(--unc-muted); font-size:0.8125rem; font-weight:400; }
@media (max-width:768px) {
	.board-promo { padding:18px; }
	.board-promo__row { grid-template-columns:minmax(0,1fr); gap:2px; }
}

/* 빌릴 수 있는 장비 */
.board-station__chips { margin-top:20px; padding-top:18px; border-top:1px solid var(--unc-line); }
.board-station__chips-title { margin:0 0 10px; color:var(--unc-ink); font-size:0.9375rem; font-weight:700; }
.board-station__chips ul { display:flex; flex-wrap:wrap; gap:6px; margin:0; padding:0; list-style:none; }
.board-station__chips li { padding:5px 11px; border-radius:999px; background:var(--unc-brand-soft); color:var(--unc-brand-strong); font-size:0.8125rem; font-weight:600; }

/* 이 지점의 요금제 — 길어서 접어 둔다 */
.board-station__rates { margin-top:20px; padding-top:18px; border-top:1px solid var(--unc-line); }
.board-station__rates > summary { display:flex; align-items:center; justify-content:space-between; gap:12px; color:var(--unc-ink); font-size:0.9375rem; font-weight:700; cursor:pointer; list-style:none; }
.board-station__rates > summary::-webkit-details-marker { display:none; }
.board-station__rates > summary:hover { color:var(--unc-brand-strong); }
.board-station__rates-mark { position:relative; flex:0 0 auto; width:12px; height:12px; }
.board-station__rates-mark::before, .board-station__rates-mark::after { content:""; position:absolute; top:50%; left:0; width:12px; height:2px; border-radius:2px; background:var(--unc-muted); transform:translateY(-50%); transition:transform .2s var(--unc-ease); }
.board-station__rates-mark::after { transform:translateY(-50%) rotate(90deg); }
.board-station__rates[open] .board-station__rates-mark::after { transform:translateY(-50%) rotate(0deg); }
.board-station__rate-list { margin:14px 0 0; padding:0; list-style:none; display:grid; gap:12px; }
.board-station__rate { padding:16px 18px; border:1px solid var(--unc-line); border-radius:12px; background:#fff; }

/* 요금제 하나. 머리는 늘 보이고 속은 접힌다 — 지점마다 요금제 수가 다르기 때문이다. */
.board-station__rate-fold > summary { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; cursor:pointer; list-style:none; }
.board-station__rate-fold > summary::-webkit-details-marker { display:none; }
.board-station__rate-fold > summary:hover .board-station__rate-name { color:var(--unc-brand-strong); }
.board-station__rate-fold > summary:focus-visible { outline:2px solid var(--unc-brand-strong); outline-offset:3px; border-radius:6px; }
.board-station__rate-mark { position:relative; flex:0 0 auto; width:11px; height:11px; margin-top:6px; }
.board-station__rate-mark::before, .board-station__rate-mark::after { content:""; position:absolute; top:50%; left:0; width:11px; height:2px; border-radius:2px; background:var(--unc-muted); transform:translateY(-50%); transition:transform .2s var(--unc-ease); }
.board-station__rate-mark::after { transform:translateY(-50%) rotate(90deg); }
.board-station__rate-fold[open] .board-station__rate-mark::after { transform:translateY(-50%) rotate(0deg); }
.board-station__rate-body { padding-top:2px; }

/* 요금제 머리: 이름(국문) · 영문 · 배지 · 결제방식이 한 줄에서 기준선을 맞춘다. */
.board-station__rate-head { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 8px; margin:0; min-width:0; }
.board-station__rate-name { color:var(--unc-ink); font-size:0.9375rem; font-weight:700; word-break:keep-all; }
.board-station__rate-name-en { color:var(--unc-muted); font-size:0.8125rem; font-weight:500; word-break:keep-all; }
.board-station__rate-tag { align-self:center; padding:2px 8px; border-radius:999px; background:var(--unc-brand-soft); color:var(--unc-brand-strong); font-size:0.6875rem; font-weight:800; white-space:nowrap; }
.board-station__rate-tag--promo { background:#FFF1E6; color:#B2560D; }
.board-station__rate-meta { flex-basis:100%; margin:2px 0 0; color:var(--unc-muted); font-size:0.8125rem; }
.board-station__rate-desc { margin:8px 0 0; color:var(--unc-ink-3); font-size:0.875rem; line-height:1.6; word-break:keep-all; white-space:pre-line; }

/* 보험·혜택. 글머리 점을 찍는 목록이 아니라, 이름과 설명이 한 덩어리인 항목이다.
   점만 찍어 두면 이름이 줄줄이 늘어서서 무엇이 포함되는지 읽히지 않았다. */
.board-station__rate-section { margin:14px 0 8px; padding-top:12px; border-top:1px solid var(--unc-line); color:var(--unc-muted); font-size:0.75rem; font-weight:800; letter-spacing:.04em; }
.board-station__rate-items { margin:0; padding:0; list-style:none; display:grid; gap:10px; }
.board-station__rate-item { padding-left:18px; position:relative; }
.board-station__rate-item::before { content:""; position:absolute; top:7px; left:2px; width:7px; height:7px; border-radius:50%; background:var(--unc-brand); }
.board-station__rate-item.is-extra::before { background:transparent; border:1.5px solid var(--unc-muted); }
.board-station__rate-item-name { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 8px; margin:0; color:var(--unc-ink); font-size:0.875rem; font-weight:700; word-break:keep-all; }
.board-station__rate-item-en { color:var(--unc-muted); font-size:0.75rem; font-weight:500; word-break:keep-all; }
.board-station__rate-item.is-extra .board-station__rate-item-name { color:var(--unc-ink-3); font-weight:600; }
.board-station__rate-item-desc { margin:3px 0 0; color:var(--unc-ink-3); font-size:0.8125rem; line-height:1.6; word-break:keep-all; white-space:pre-line; }
.board-station__rate-badge { align-self:center; padding:1px 7px; border-radius:999px; background:var(--unc-bg-soft); color:var(--unc-muted); font-size:0.6875rem; font-weight:700; white-space:nowrap; }
.board-station__rate-badge--extra { background:#FFF4E5; color:#8A5A00; }
.board-station__rates-note { margin:12px 0 0; color:var(--unc-muted); font-size:0.75rem; line-height:1.6; }

/* ── 지점 안내 디렉토리 ──────────────────────────────── */
/* 나라 목록은 마흔 곳이 넘는다. 한 나라에 큼직한 둥근 카드를 하나씩 주면 화면을
   한참 굴려야 겨우 훑는다. 이름과 지점 수만 한 줄에 담은 촘촘한 색인으로 둔다. */
.station-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:8px; margin:0; padding:0; list-style:none; }
.station-grid__link { display:flex; align-items:baseline; justify-content:space-between; gap:10px; padding:12px 14px; border:1px solid var(--unc-line); border-radius:10px; background:#fff; text-decoration:none; transition:border-color .16s var(--unc-ease), background-color .16s var(--unc-ease); }
.station-grid__link:hover, .station-grid__link:focus-visible { border-color:#CFE9D3; background:var(--unc-brand-soft); }
.station-grid__name { min-width:0; color:var(--unc-ink); font-size:0.9375rem; font-weight:700; word-break:keep-all; }
.station-grid__count { flex:0 0 auto; color:var(--unc-muted); font-size:0.75rem; }

.station-group { margin-bottom:28px; }
.station-group__title { margin:0 0 12px; color:var(--unc-ink); font-size:1.125rem; line-height:1.4; word-break:keep-all; }
.station-group__list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0; padding:0; list-style:none; }
.station-group__link { display:flex; align-items:baseline; gap:12px; padding:14px 18px; border:1px solid var(--unc-line); border-radius:12px; background:#fff; text-decoration:none; }
.station-group__link:hover, .station-group__link:focus-visible { border-color:var(--unc-brand); }
.station-group__code { flex:0 0 auto; padding:2px 8px; border-radius:6px; background:var(--unc-bg-soft); color:var(--unc-ink); font-size:0.75rem; font-weight:800; letter-spacing:.04em; }
.station-group__name { min-width:0; color:var(--unc-ink-3); font-size:0.9375rem; word-break:keep-all; }

/* 지점 화면에 붙는 관련 글 */
.station-posts { margin-top:32px; }
.station-posts__title { margin:0 0 14px; color:var(--unc-ink); font-size:1.125rem; }
.station-posts__list { margin:0; padding:0; list-style:none; display:grid; gap:10px; }
.station-posts__link { display:grid; gap:4px; padding:18px 20px; border:1px solid var(--unc-line); border-radius:12px; background:#fff; text-decoration:none; }
.station-posts__link:hover, .station-posts__link:focus-visible { border-color:var(--unc-brand); }
.station-posts__board { color:var(--unc-brand-strong); font-size:0.75rem; font-weight:800; }
.station-posts__name { color:var(--unc-ink); font-size:0.9375rem; font-weight:700; word-break:keep-all; }
.station-posts__summary { color:var(--unc-ink-3); font-size:0.875rem; line-height:1.6; word-break:keep-all; }
.station-posts__date { color:var(--unc-muted); font-size:0.8125rem; }

/* 근처 호텔 도시 */
.station-hotels { margin-top:32px; padding:24px 26px; border:1px solid var(--unc-line); border-radius:16px; background:#fff; }
.station-hotels__title { margin:0 0 8px; color:var(--unc-ink); font-size:1.125rem; }
.station-hotels__lead { margin:0 0 14px; color:var(--unc-ink-3); font-size:0.875rem; line-height:1.6; word-break:keep-all; }
.station-hotels__list { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }
.station-hotels__list li { display:inline-flex; align-items:baseline; gap:8px; padding:8px 14px; border:1px solid var(--unc-line); border-radius:999px; background:var(--unc-bg-soft); }
.station-hotels__city { color:var(--unc-ink); font-size:0.875rem; font-weight:700; }
.station-hotels__count { color:var(--unc-muted); font-size:0.75rem; }

@media (max-width:768px) {
	.station-group__list { grid-template-columns:minmax(0,1fr); }
	.station-hotels { padding:20px 18px; }
}

/* 이 지점의 차량 */
.board-station__cars { margin-top:20px; padding-top:18px; border-top:1px solid var(--unc-line); }
.board-station__cars-title { margin:0 0 10px; color:var(--unc-ink); font-size:0.9375rem; font-weight:700; }
.board-station__cars-title span { margin-left:4px; color:var(--unc-muted); font-weight:500; font-size:0.8125rem; }
.board-station__car-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(212px,1fr)); gap:10px; margin:0; padding:0; list-style:none; }

/* 차량 한 대. 등급 → 이름 → 사양 → 코드 순으로 위에서 아래로 읽힌다.
   네 가지를 똑같은 알약으로 늘어놓았더니 무엇부터 봐야 할지 알 수 없었다. */
.board-station__car { display:flex; flex-direction:column; min-width:0; padding:14px 16px 12px; border:1px solid var(--unc-line); border-radius:14px; background:#fff; transition:border-color .16s var(--unc-ease), box-shadow .16s var(--unc-ease); }
.board-station__car:hover { border-color:#CFE9D3; box-shadow:0 6px 16px rgba(15,126,24,.07); }
.board-station__car.is-green { border-color:#CFE9D3; background:linear-gradient(180deg,var(--unc-brand-soft) 0%,#fff 58%); }
.board-station__car-class { margin:0 0 3px; color:var(--unc-brand-strong); font-size:0.6875rem; font-weight:800; letter-spacing:.05em; }
.board-station__car-name { margin:0; color:var(--unc-ink); font-size:0.9375rem; font-weight:700; line-height:1.35; word-break:keep-all; }
.board-station__car-spec { margin:6px 0 0; color:var(--unc-ink-3); font-size:0.8125rem; line-height:1.55; word-break:keep-all; }
.board-station__car-foot { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin:12px 0 0; padding-top:10px; border-top:1px dashed var(--unc-line); }
.board-station__car-code { color:var(--unc-muted); font-size:0.6875rem; font-weight:800; letter-spacing:.09em; }
.board-station__car-ev { margin-left:auto; padding:2px 8px; border-radius:999px; background:var(--unc-brand-strong); color:#fff; font-size:0.6875rem; font-weight:800; }
.board-station__cars-note { margin:10px 0 0; color:var(--unc-muted); font-size:0.75rem; }

/* =========================================================
   지점 한 곳의 페이지 (station-page)
   검색으로 바로 들어오는 화면이라, 첫 눈에 ① 여기가 맞나 ② 지금 빌릴 수 있나
   ③ 예약은 어디서 하나가 보여야 한다. 그 뒤로 차량·요금제·장비를 각각 제 구역에
   나누어 둔다 — 한 덩어리에 쌓아 두면 무엇을 보고 있는지 알 수 없다.
   ========================================================= */
.station-page .board__crumb { margin-bottom:18px; }

.station-hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:28px; align-items:center; padding:30px 32px; border:1px solid var(--unc-line); border-radius:20px; background:#fff; box-shadow:0 8px 24px rgba(25,70,35,.04); }
.station-hero__main { min-width:0; }
.station-hero__name { margin:6px 0 0; color:var(--unc-ink); font-size:2rem; line-height:1.25; letter-spacing:-.03em; word-break:keep-all; }
.station-hero__meta { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; margin:14px 0 0; color:var(--unc-muted); font-size:0.875rem; }
.station-hero__code { padding:3px 10px; border-radius:8px; background:var(--unc-brand-soft); color:var(--unc-brand-strong); font-size:0.8125rem; font-weight:800; letter-spacing:.06em; }
.station-hero__address { margin:12px 0 0; color:var(--unc-ink-3); font-size:0.9375rem; line-height:1.7; word-break:keep-all; }
.station-hero__actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
/* 두 버튼을 나란히. 기본 .btn 이 한 줄을 다 먹어 세로로 쌓였다. */
.station-hero__actions .btn { flex:0 0 auto; width:auto; min-width:0; padding-left:22px; padding-right:22px; white-space:nowrap; }
.station-hero__map { min-width:0; }
.station-hero__map .board-station__map { margin:0; }
.station-hero__map iframe { display:block; width:100%; height:230px; border:0; border-radius:14px; }

/* 한 줄 요약 — 스크롤하지 않고도 답이 나오는 네 가지. */
.station-facts { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; margin:14px 0 0; padding:0; list-style:none; }
.station-facts li { display:flex; flex-direction:column; gap:4px; padding:14px 16px; border:1px solid var(--unc-line); border-radius:12px; background:#fff; }
.station-facts span { color:var(--unc-muted); font-size:0.75rem; }
.station-facts strong { color:var(--unc-ink); font-size:0.9375rem; font-weight:700; word-break:keep-all; }

.station-block { margin-top:26px; padding:26px 30px; border:1px solid var(--unc-line); border-radius:20px; background:#fff; }
.station-block__title { margin:0 0 16px; color:var(--unc-ink); font-size:1.125rem; font-weight:700; line-height:1.4; word-break:keep-all; }
/* 조각들은 카드 안에 있을 때의 위쪽 구분선을 스스로 갖는다. 제 구역에 홀로 설 때는 필요 없다. */
.station-block .board-station__cars,
.station-block .board-station__chips,
.station-block .board-station__rates { margin-top:0; padding-top:0; border-top:0; }
.station-block .board-station__rates > summary { display:none; }
.station-block .board-station__rate-list { margin-top:0; }
.station-block .board-station__rows { margin:0; }
.station-block .board-station__note { margin-top:16px; }
.station-block .station-hotels__list { margin:0 0 18px; }
.station-block .trip-hotels { margin:0; }

@media (max-width:900px) {
	.station-hero { grid-template-columns:minmax(0,1fr); gap:20px; padding:24px 20px; }
	.station-hero__map iframe { height:200px; }
	.station-hero__name { font-size:1.625rem; }
	.station-block { padding:22px 18px; }
}

/* 섹션 제목 옆의 개수, 지점 안내문, 장비 칩의 영문 병기 */
.station-block__title .station-block__count { margin-left:6px; color:var(--unc-muted); font-size:0.875rem; font-weight:500; }
.station-block .board-station__chips-title { display:none; }
.station-block .board-station__chips li { display:inline-flex; align-items:baseline; gap:6px; }
.board-station__chip-en { color:var(--unc-brand-strong); opacity:.62; font-size:0.75rem; font-weight:500; }

.station-notices { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:14px; }
.station-notices__item { padding:14px 16px; border:1px solid var(--unc-line); border-radius:12px; background:var(--unc-bg-soft); }
.station-notices__title { margin:0 0 6px; color:var(--unc-ink); font-size:0.875rem; font-weight:700; word-break:keep-all; }
.station-notices__item ul { margin:0; padding-left:16px; list-style:disc outside; color:var(--unc-ink-3); font-size:0.8125rem; line-height:1.7; }
.station-notices__item li::marker { color:var(--unc-brand); }

/* 지점 페이지의 요금제: 접지 않고 여러 열로 늘어놓는다. 좁아지면 한 열이 된다. */
.board-station__rates.is-open { margin:0; padding:0; border:0; }
.board-station__rate-list--grid { grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); align-items:start; }
/* 내용이 적은 요금제가 옆 카드 높이에 끌려 빈 상자로 늘어나지 않게 둔다. */
.board-station__rate-list--grid .board-station__rate { align-self:start; }
.board-station__rate-caveat { margin:8px 0 0; padding:8px 10px; border-radius:8px; background:var(--unc-brand-soft); color:var(--unc-brand-strong); font-size:0.75rem; line-height:1.6; word-break:keep-all; }
.board-station__rate-caveat strong { font-weight:800; }
