/* Station-specific local review; official data and routes remain in site-app.js. */
:root{--fh-max:1192px;--fh-cut:0px;--fh-tab:0px}
html[data-theme="light"]{--fh-paper:#f8f6f8;--fh-surface:#fff;--fh-surface-2:#d6eefa;--fh-rule:#ded6e1;--fh-ink:#251c2a;--fh-muted:#665b69;--fh-accent:#5bb9e6;--fh-accent-ink:#0f6690;--fh-accent-soft:#d6eefa;--fh-hover:#f1ebf3;--fh-on-accent:#251c2a}
.fh-app{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","PingFang TC","Noto Sans TC",sans-serif}
.fh-header{background:var(--fh-surface);box-shadow:0 2px 16px rgba(52,33,66,.04)}
.fh-header__in{max-width:1192px}
.fh-h1,.fh-h2,.fh-h3,.fh-sechead,.fh-hero__title,.fh-ink__title,.fh-explore-grid strong{font-family:"Hiragino Mincho ProN","Yu Mincho","Noto Serif TC","Noto Serif JP",serif}
.fh-ink,.fh-hero,.fh-card,.fh-callout,.fh-empty,.fh-dialog,.fh-list,.fh-work,.fh-member,.fh-photo{border-radius:14px}
.fb-btn,.fh-input,.fh-select,.fh-seg,.fh-nav button,.fh-bottomnav button{border-radius:8px;min-height:44px}
.fh-sechead{border-bottom-color:var(--fh-rule)}
.fh-section .fh-list,.fh-hero,.fh-ink,.fh-callout,.fh-empty{box-shadow:0 8px 30px rgba(52,33,66,.06)}
.fh-hero{overflow:hidden;border:0;background:linear-gradient(125deg,#203c51,color-mix(in srgb,#203c51 65%,#5bb9e6));color:#fff}
.fh-hero::before{inset:0;width:auto;height:auto;border:0;background:radial-gradient(circle at 92% 10%,color-mix(in srgb,#5bb9e6 30%,transparent),transparent 44%);pointer-events:none}
.fh-hero__title,.fh-hero__date,.fh-hero__date b,.fh-hero .fh-meta,.fh-hero__facts{color:#fff}
.fh-hero .fb-btn{border-radius:8px;min-height:44px}
.fh-hero .fh-tag{border-radius:8px}
.fh-ink{border:1px solid var(--fh-rule);background:var(--fh-surface);color:var(--fh-ink)}
.fh-ink::before{display:none}
.fh-cols > div > .fh-section{min-width:0}
.fh-cols > div > .fh-section .fh-list{padding:0 18px;border:1px solid var(--fh-rule);background:var(--fh-surface)}
.fh-cols > div > .fh-section .fh-list>li:last-child{border-bottom:0}
.fh-news,.fh-event{min-height:68px}
.fh-photo{overflow:hidden}
.fh-theme-toggle,.fh-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:0 10px;border:1px solid var(--fh-rule);border-radius:8px;background:var(--fh-surface);color:var(--fh-ink);font:600 13px/1.2 var(--fh-font);cursor:pointer}
.fh-theme-toggle:hover,.fh-menu-toggle:hover{background:var(--fh-surface-2)}
.fh-menu-scrim:not([hidden]){position:fixed;inset:var(--fh-header) 0 0;z-index:31;display:block;border:0;background:rgba(37,28,42,.45)}
.fh-menu:not([hidden]){position:fixed;top:var(--fh-header);right:0;bottom:0;z-index:32;display:flex;flex-direction:column;gap:3px;width:min(86vw,340px);padding:20px;overflow:auto;border-left:1px solid var(--fh-rule);background:var(--fh-surface);box-shadow:-12px 0 34px rgba(37,28,42,.14)}
.fh-menu-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--fh-rule);font:700 20px/1.2 "Hiragino Mincho ProN","Yu Mincho",serif}
.fh-menu button{min-height:44px;border:0;border-radius:8px;background:transparent;color:var(--fh-ink);font:600 14px/1.2 var(--fh-font);text-align:left;cursor:pointer}
.fh-menu button:hover{background:var(--fh-surface-2)}
.fh-menu-head button{width:44px;text-align:center;font-size:26px}
.fh-explore-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.fh-explore-grid button{position:relative;display:grid;align-content:start;gap:11px;min-height:150px;padding:22px;border:1px solid var(--fh-rule);border-radius:14px;background:var(--fh-surface);color:var(--fh-ink);box-shadow:0 8px 30px rgba(52,33,66,.06);text-align:left;cursor:pointer}
.fh-explore-grid button:hover{transform:translateY(-2px);border-color:var(--fh-accent-ink)}
.fh-explore-grid strong{font-size:20px}
.fh-explore-grid small{color:var(--fh-muted);font-size:12px;line-height:1.4}
.fh-explore-grid button>span{position:absolute;top:18px;right:20px;color:var(--fh-accent-ink);font-size:19px}
@media(max-width:1000px){.fh-nav{display:none}.fh-bottomnav{display:grid}.fh-main{padding-bottom:calc(var(--fh-bottomnav) + 44px + env(safe-area-inset-bottom))}.fh-explore-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.fh-logo{margin-right:auto}.fh-header__grow{display:none}.fh-theme-toggle{padding:0}.fh-menu-label{display:none}.fh-explore-grid{gap:9px}.fh-explore-grid button{min-height:136px;padding:15px}.fh-explore-grid strong{font-size:17px}.fh-explore-grid small{font-size:11px}}

html[data-theme="light"] .fh-ink{--fh-ink:#251c2a;--fh-on-ink:#fff;--fh-paper:#f8f6f8;--fh-surface:#fff;--fh-surface-2:#f1ebf3;--fh-rule:#ded6e1;--fh-muted:#665b69;clip-path:none;background:#fff;color:#251c2a}
html[data-theme="light"] .fh-ink .fh-label{color:var(--fh-accent-ink)}
.fh-watch-card .fh-list{padding:16px!important;border:1px solid var(--fh-rule);border-radius:14px;background:var(--fh-surface)}
.fh-watch-card .fh-list li{border:0}
.fh-watch-card .fh-work{grid-template-columns:minmax(230px,42%) minmax(0,1fr) auto;gap:24px;padding:0}
.fh-watch-card .fh-work .fh-photo{width:100%;aspect-ratio:16/9}
.fh-watch-card .fh-work__title{font:700 20px/1.4 "Hiragino Mincho ProN","Yu Mincho","Noto Serif TC",serif}
@media(max-width:760px){.fh-watch-card .fh-work{grid-template-columns:1fr;gap:12px}.fh-watch-card .fh-work>svg{display:none}.fh-watch-card .fh-work__title{font-size:17px}}
.fh-hero .fb-outline{border-color:rgba(255,255,255,.65);background:transparent;color:#fff}
.fh-hero .fb-outline:hover{background:rgba(255,255,255,.16);color:#fff}

html[data-theme="light"]{--fh-paper:#f4fafe;--fh-hover:var(--fh-accent-soft)}

/* Reference layout: compact introduction, feature and briefing, then updates. */
.fh-main{width:min(calc(100% - 48px),1192px);max-width:none;padding:34px 0 110px}
.fh-compact-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}
.fh-compact-intro small,.fh-briefing>small{color:var(--fh-accent-ink);font-size:11px;font-weight:750;letter-spacing:.16em}
.fh-compact-intro h1{margin:5px 0;font:700 clamp(31px,4vw,48px)/1.26 "Hiragino Mincho ProN","Yu Mincho",serif}
.fh-compact-intro p{margin:0;color:var(--fh-muted);font-size:14px}
.fh-date-stamp{padding-bottom:6px;color:var(--fh-muted);font-size:13px;white-space:nowrap}
.fh-today-top{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(274px,.9fr);gap:17px;align-items:stretch}
.fh-feature-section{min-width:0}.fh-feature-section .fh-hero{height:100%;min-height:348px;padding:30px 34px;align-content:start}
.fh-hero__title{font-size:clamp(27px,3.2vw,39px);line-height:1.32}.fh-hero__actions{display:flex;flex-wrap:wrap;margin-top:auto}
.fh-hero p{color:#fff}.fh-hero small{color:#fff;letter-spacing:.14em;font-weight:700}
.fh-briefing{display:flex;flex-direction:column;gap:12px;min-width:0;padding:22px;border:1px solid var(--fh-rule);border-radius:14px;background:var(--fh-surface);box-shadow:0 8px 30px rgba(52,33,66,.06)}
.fh-briefing h2{margin:0;font:700 22px/1.35 "Hiragino Mincho ProN","Yu Mincho",serif}.fh-briefing p{color:var(--fh-muted);font-size:13px;line-height:1.6}.fh-briefing>.fb-link{align-self:start;margin-top:auto}
.fh-count-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.fh-count-grid div{display:grid;place-items:center;gap:4px;padding:12px;background:var(--fh-accent-soft);border-radius:8px}.fh-count-grid strong{color:var(--fh-accent-ink);font:700 30px/1 serif}.fh-count-grid span,.fh-briefing-meta{color:var(--fh-muted);font-size:12px}.fh-briefing-meta{display:flex;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid var(--fh-rule)}
.fh-updates{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);gap:17px;margin-top:46px}.fh-updates>.fh-section{min-width:0;margin:0}.fh-updates .fh-list{padding:0 18px;border:1px solid var(--fh-rule);border-radius:14px;background:var(--fh-surface)}.fh-updates .fh-list>li:last-child{border:0}
.fh-explore,.fh-watch-card,.fh-agenda-slot{margin-top:46px}.fh-agenda-slot>.fh-section:first-child{margin-top:0}.fh-explore-grid button:first-child{background:var(--fh-accent-soft)}
.fb-btn:not(.fb-ticket)::before{clip-path:none;border-radius:8px}.fb-tab{--_bg:var(--fh-accent-ink);--_fg:#fff;margin-inline-end:0}.fb-tab::after{display:none}.fb-outline{--_bg:var(--fh-accent-ink);--_fg:var(--fh-accent-ink);--_inner:var(--fh-surface)}.fb-outline::after{clip-path:none;border-radius:7px}.fb-link{--_fg:var(--fh-accent-ink);min-height:44px}.fh-hero .fb-outline{--_bg:rgba(255,255,255,.65);--_fg:#fff;--_inner:transparent}.fh-hero .fb-outline::after{background:transparent}
@media(max-width:900px){.fh-today-top{grid-template-columns:1fr}}
@media(max-width:760px){.fh-main{width:min(calc(100% - 32px),1192px);padding-top:22px}.fh-compact-intro{align-items:flex-start}.fh-compact-intro h1{font-size:30px}.fh-date-stamp{font-size:11px}.fh-feature-section .fh-hero{min-height:320px;padding:25px}.fh-updates{grid-template-columns:1fr;gap:28px}}
@media(max-width:430px){.fh-compact-intro{display:block}.fh-date-stamp{display:block;margin-top:5px}}

.fh-hero .fb-ghost,.fh-hero .fb-link{--_fg:#fff;color:#fff}.fh-hero .fb-ghost{box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.8)}
.fh-hero .fb-ticket{--_bg:#fff;--_fg:#251c2a;--_stub-fg:#251c2a}.fh-hero .fb-ticket::before{border-radius:8px}.fh-hero .fb-ticket[aria-pressed="true"]{--_bg:var(--fh-accent-soft);--_fg:#251c2a;--_stub-fg:#251c2a}

/* Align the page shell with the reference at all viewport widths. */
body{margin:0}
