/* ============================================================
   v3-station.css — 駅ページ専用 chrome（ヒーロー/サマリー/地図/隣接駅/FAQ）
   旧: functions.php v3_station_page 内 <style> を外部化。
   カード表示は v3-list.css 側。
   ============================================================ */
.v3-st-hero{background:linear-gradient(135deg,#0a4f8e 0%,#1d3557 100%);color:#fff;padding:48px 16px 40px;text-align:center;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
.v3-st-hero h1{font-size:clamp(22px,4vw,32px);font-weight:700;margin:0 0 10px;color:#fff!important;background:transparent!important;padding:0!important;border:none!important;}
.v3-st-hero .lines{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin-top:12px;}
.v3-st-hero .line-tag{font-size:12px;padding:4px 10px;background:rgba(255,255,255,.18);border-radius:12px;}
.v3-st-hero .line-tag a{color:#fff;text-decoration:none;}
.v3-st-wrap{max-width:1120px;margin:0 auto;padding:32px 12px;}
.v3-st-summary{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:18px 22px;margin-bottom:24px;}
.v3-st-summary dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px 24px;margin:0;}
.v3-st-summary dt{font-size:12px;color:#6b7280;font-weight:600;margin-top:6px;}
.v3-st-summary dd{margin:0 0 4px;font-size:15px;color:#1a3a5c;font-weight:600;}
.v3-st-summary dd .unit{font-size:12px;color:#6b7280;font-weight:400;margin-left:4px;}
.v3-st-map{height:420px;width:100%;border-radius:10px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.08);margin-bottom:24px;background:#f1f5f9;color:transparent;}
.v3-st-map.leaflet-container{color:initial;background:#f1f5f9;}
.v3-st-map:not(.leaflet-container)>*{display:none;}
.v3-st-list h2,.v3-st-adj h2,.v3-st-faq h2{font-size:18px!important;font-weight:700;color:#2a3142!important;margin:32px 0 14px!important;background:transparent!important;border:none!important;padding:0!important;}
.v3-st-list h2::before,.v3-st-list h2::after,.v3-st-adj h2::before,.v3-st-adj h2::after,.v3-st-faq h2::before,.v3-st-faq h2::after{content:none!important;display:none!important;}
.v3-st-empty{padding:48px 20px;text-align:center;color:#999;background:#f5f7fa;border-radius:8px;}
.v3-st-adj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;}
.v3-st-adj-grid a{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;text-decoration:none;color:#1a1a1a;font-size:13px;}
.v3-st-adj-grid a:hover{border-color:#0a4f8e;}
.v3-st-adj-grid a.no-posts{opacity:.55;background:#f9fafb;}
.v3-st-adj-grid .cnt{font-size:12px;color:#666;}
.v3-st-faq details{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px 16px;margin-bottom:8px;}
.v3-st-faq summary{font-weight:600;color:#1a3a5c;cursor:pointer;list-style:none;font-size:14px;}
.v3-st-faq summary::-webkit-details-marker{display:none;}
.v3-st-faq summary::before{content:'Q. ';color:#0a4f8e;}
.v3-st-faq details[open] summary{margin-bottom:8px;}
.v3-st-faq .a{font-size:13px;color:#444;line-height:1.7;padding-left:1.4em;text-indent:-1.4em;margin:0;}
.v3-st-faq .a::before{content:'A. ';color:#e63946;font-weight:700;}
/* 同じ路線の前後駅（P5-2） */
.v3-st-adj-line-block{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px 18px;margin-bottom:14px;}
.v3-st-adj-line-block h3{font-size:14px;font-weight:700;color:#0a4f8e;margin:0 0 12px;padding:0;background:transparent;border:none;}
.v3-st-adj-pn{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;align-items:center;margin-bottom:12px;}
.v3-st-adj-pn .cell{padding:10px;background:#f8fafc;border-radius:6px;text-align:center;font-size:13px;}
.v3-st-adj-pn .cell a{color:#0a4f8e;text-decoration:none;font-weight:600;}
.v3-st-adj-pn .cell.current{background:#0a4f8e;color:#fff;font-weight:700;}
.v3-st-adj-pn .cell.empty{opacity:.4;}
.v3-st-adj-pn .cnt{display:block;font-size:11px;color:#666;margin-top:2px;}
.v3-st-adj-pn .cell.current .cnt{color:rgba(255,255,255,.85);}
.v3-st-adj-major{font-size:12px;color:#555;}
.v3-st-adj-major-label{font-weight:600;color:#1a3a5c;margin-right:8px;}
.v3-st-adj-major a{color:#0a4f8e;text-decoration:none;margin-right:10px;}
.v3-st-adj-major a:hover{text-decoration:underline;}
.v3-st-adj-no-posts{color:#999;opacity:.7;}
