/* /timeline = 即時新聞 (page-news.php), 2026-11-05. Same structure as HQ's instant-news page in sf colours:
   navy band with gold rule, stories on a thin vertical line with a dot each, time · section, one title line, small photo.
   Navy #192f65, gold #f8c623, ink #1d2230, rule #e6e8ee. Square edges, no pills. */
.sftl-band { display: flex; align-items: center; gap: 10px; width: 100%; box-sizing: border-box; margin: 0 0 8px; padding: 12px 18px;
	background: #192f65; border-bottom: 3px solid #f8c623; color: #fff;
	font-family: "Noto Serif TC", "Songti TC", "PMingLiU", serif; font-size: 26px; font-weight: 700; line-height: 1.2; }
.sftl-band svg { flex: none; color: #f8c623; }
.sftl-pg { margin-left: auto; font-family: inherit; font-size: 15px; font-weight: 400; color: #dfe4ee; }

.sftl-list { position: relative; list-style: none; margin: 0; padding: 0 0 0 26px; }
.sftl-list::before { content: ""; position: absolute; left: 6px; top: 0; bottom: 0; width: 1px; background: #d5dae3; }
.sftl-item { position: relative; display: flex; align-items: center; gap: 18px; padding: 14px 0; border-bottom: 1px solid #e6e8ee; }
.sftl-item::before { content: ""; position: absolute; left: -24px; top: 21px; width: 7px; height: 7px; background: #192f65; }
.sftl-text { flex: 1 1 auto; min-width: 0; }
.sftl-meta { margin: 0 0 4px; font-size: 14px; line-height: 1.4; color: #6b7280; }
.sftl-time { font-weight: 700; color: #192f65; font-variant-numeric: tabular-nums; }
.sftl-cat { margin-left: 12px; }
.sftl-h { margin: 0; font-size: 20px; font-weight: 500; line-height: 1.5; }
.sftl-h a { color: #1d2230; text-decoration: none; }
.sftl-h a:hover { color: #192f65; text-decoration: underline; text-underline-offset: 4px; }
.sftl-h a:focus-visible { outline: 3px solid #f8c623; outline-offset: 2px; }
.sftl-img { flex: none; display: block; width: 104px; aspect-ratio: 8 / 5; overflow: hidden; background: #f3f5f9; }
.sftl-img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sftl-item:has(.sftl-time.is-new)::before { width: 9px; height: 9px; left: -25px; top: 20px; background: #f8c623; border: 1px solid #192f65; box-sizing: border-box; }

@media (max-width: 600px) {
	.sftl-band { font-size: 22px; padding: 10px 14px; }
	.sftl-list { padding-left: 20px; }
	.sftl-list::before { left: 4px; }
	.sftl-item { gap: 12px; padding: 12px 0; }
	.sftl-item::before { left: -19px; top: 19px; }
	.sftl-h { font-size: 18px; }
	.sftl-img { width: 88px; }
}
