:root { --main: #1f3a5f; --sub: #f3f5f8; --line: #dde2ea; --muted: #6b7280; }
* { box-sizing: border-box; }
body { margin: 0; font-family: system-ui, -apple-system, "Hiragino Sans", "Noto Sans JP", sans-serif; color: #111; line-height: 1.6; }
header { background: var(--main); color: #fff; padding: 12px 16px 0; }
h1 { font-size: 1.2rem; margin: 0; }
.tag { font-size: .7rem; border: 1px solid #fff; border-radius: 4px; padding: 0 4px; vertical-align: middle; }
.lead { margin: 4px 0 8px; font-size: .85rem; opacity: .9; }
nav { display: flex; gap: 4px; overflow-x: auto; }
.tab { color: #fff; text-decoration: none; padding: 8px 12px; border-radius: 8px 8px 0 0; white-space: nowrap; font-size: .9rem; }
.tab.active { background: #fff; color: var(--main); font-weight: bold; }
main { padding: 8px 16px 24px; max-width: 960px; margin: 0 auto; }
h2 { font-size: 1.1rem; margin: 8px 0; }
h3 { font-size: 1rem; border-left: 4px solid var(--main); padding-left: 8px; margin: 20px 0 8px; }
#error { color: #b91c1c; margin: 0; }
.big { font-size: 1.2rem; margin: 0; }
.date, .meta, .note { color: var(--muted); font-size: .85rem; margin: 4px 0; }
small { color: var(--muted); font-size: .75em; margin-left: 2px; }
.scroll { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; font-size: .9rem; }
th, td { border-bottom: 1px solid var(--line); padding: 6px 4px; text-align: left; vertical-align: top; }
th { background: var(--sub); font-weight: normal; color: var(--muted); }
td.wait { white-space: nowrap; font-weight: bold; text-align: right; }
td.ll { font-size: .8rem; color: #333; }
.ja { display: block; }
.en { display: block; font-size: .75rem; color: var(--muted); }
tr.st-CLOSED, tr.st-REFURBISHMENT { color: var(--muted); }
tr.st-DOWN td.wait { color: #b45309; }
button { font: inherit; padding: 2px 10px; border: 1px solid var(--line); background: #fff; border-radius: 6px; cursor: pointer; }
details { border-bottom: 1px solid var(--line); padding: 4px 0; }
summary { cursor: pointer; }
footer { background: var(--sub); color: var(--muted); font-size: .75rem; padding: 12px 16px; }
footer a { color: var(--main); }
