.situation-page { padding-top:32px; padding-bottom:42px; }
.situation-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:20px; }
.situation-heading>div { display:flex; align-items:baseline; gap:18px; }
.situation-heading h1 { font-family:var(--serif); font-size:30px; margin:0; }
.situation-heading p { margin:0; color:var(--muted); font-size:15px; }
.situation-heading>span { color:var(--muted); font-size:12px; }
.situation-hero { position:relative; isolation:isolate; min-height:246px; display:flex; align-items:flex-end; overflow:hidden; background:var(--media-bg); border-radius:6px; }
.situation-hero>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.situation-hero:after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#0b2037ed 0%,#0b20378c 65%,#0b203733); }
.situation-hero>div { padding:32px; max-width:760px; color:#fff; }
.situation-hero>div>span { font-size:12px; color:#d6e4f8; }
.situation-hero h2 { margin:8px 0 10px; font-size:32px; font-family:var(--serif); line-height:1.4; }
.situation-hero p { font-size:14px; line-height:1.8; margin:0; color:#e0e9f7; }
.situation-tabs { display:flex; gap:28px; border-bottom:1px solid var(--line); margin:22px 0; }
.situation-tabs a { display:flex; align-items:center; gap:8px; padding:12px 0; color:var(--muted); border-bottom:2px solid transparent; font-size:16px; white-space:nowrap; }
.situation-tabs a[aria-current=page] { color:var(--accent); border-color:var(--accent); font-weight:600; }
.situation-tabs a>span { font-size:11px; font-weight:400; font-variant-numeric:tabular-nums; }
.situation-filters { display:grid; grid-template-columns:minmax(160px,1fr) auto 136px 158px; gap:10px; margin:0 0 26px; }
.situation-filters input,.situation-filters select { width:100%; min-width:0; height:43px; padding:9px 12px; border:1px solid var(--line); border-radius:4px; background:var(--paper); color:var(--ink); font:inherit; font-size:14px; }
.situation-filters .button { min-height:43px; padding:8px 20px; }
.situation-results { display:flex; justify-content:space-between; align-items:baseline; gap:15px; padding-bottom:14px; border-bottom:1px solid var(--line); }
.situation-results h2 { font-family:var(--serif); font-size:23px; margin:0; }
.situation-results>span { font-size:13px; color:var(--muted); }
.situation-timeline { margin:0; padding:24px 0 4px; list-style:none; }
.situation-node { position:relative; display:grid; grid-template-columns:87px minmax(0,1fr); gap:28px; padding-bottom:26px; }
.situation-node:before { content:""; position:absolute; top:8px; bottom:0; left:86px; width:1px; background:var(--line); }
.situation-node:last-child:before { bottom:26px; }
.situation-node:after { content:""; position:absolute; top:10px; left:82px; width:9px; height:9px; border:2px solid var(--accent); border-radius:50%; background:var(--paper); }
.situation-node>time { padding:4px 22px 0 0; display:flex; flex-direction:column; align-items:flex-end; color:var(--muted); font-size:12px; font-variant-numeric:tabular-nums; }
.situation-node time>strong { font-size:18px; color:var(--ink); line-height:1.5; }
.situation-event { min-width:0; display:grid; grid-template-columns:258px minmax(0,1fr); gap:24px; padding:0 0 24px; border-bottom:1px solid var(--line); }
.situation-thumb { min-width:0; aspect-ratio:16/9; align-self:start; overflow:hidden; border-radius:4px; background:var(--soft); }
.situation-thumb img { display:block; width:100%; height:100%; object-fit:cover; transition:filter .18s; }
.situation-event:hover img { filter:brightness(1.06); }
.situation-event-copy { min-width:0; display:flex; flex-direction:column; }
.situation-event-meta { display:flex; flex-wrap:wrap; gap:6px 14px; color:var(--muted); font-size:11px; line-height:1.5; }
.situation-event-meta>span:first-child { color:var(--accent); }
.situation-event h3 { font-family:var(--serif); font-size:22px; line-height:1.5; margin:8px 0; overflow-wrap:anywhere; }
.situation-event:hover h3 { color:var(--accent); }
.situation-event-copy>p { color:var(--muted); font-size:13px; line-height:1.85; margin:0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.situation-event-bottom { display:flex; justify-content:space-between; gap:14px; margin-top:auto; padding-top:15px; font-size:11px; color:var(--muted); }
.situation-event-bottom>span:first-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.situation-event-bottom>span:last-child { color:var(--accent); white-space:nowrap; }
.situation-empty { padding:45px 10px; text-align:center; color:var(--muted); }
.situation-empty h1,.situation-empty h2 { color:var(--ink); font-size:24px; margin-bottom:10px; }
.situation-empty p { margin-bottom:16px; }
.situation-source { font-size:12px; color:var(--muted); line-height:1.8; margin:18px 0; }
.situation-detail { max-width:948px; padding-top:30px; padding-bottom:42px; }
.situation-detail-heading>span { font-size:12px; color:var(--accent); }
.situation-detail-heading h1 { font-family:var(--serif); font-size:32px; line-height:1.5; margin:12px 0 14px; overflow-wrap:anywhere; }
.situation-detail-heading>div { display:flex; flex-wrap:wrap; gap:8px 20px; font-size:12px; line-height:1.8; color:var(--muted); }
.situation-summary { border-left:3px solid var(--accent); background:var(--soft); padding:14px 18px; margin:24px 0; font-size:15px; line-height:1.85; }
.situation-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:26px 0; padding:18px 0; border-block:1px solid var(--line); }
.situation-facts dt { font-size:12px; color:var(--muted); margin-bottom:8px; }
.situation-facts dd { margin:0; font-size:16px; color:var(--ink); line-height:1.6; overflow-wrap:anywhere; }
.situation-detail-image { margin:24px 0; }
.situation-photo-placeholder { width:100%; aspect-ratio:16/9; background:var(--soft); border-radius:4px; }
.situation-detail-image>button { display:block; width:100%; border:0; background:var(--soft); padding:0; cursor:zoom-in; }
.situation-detail-image img { display:block; width:100%; height:auto; border-radius:4px; }
.situation-detail-image figcaption { font-size:11px; color:var(--muted); margin-top:8px; }
.situation-reading { font-family:var(--serif); font-size:19px; line-height:28pt; overflow-wrap:anywhere; }
.situation-reading>p { text-indent:2em; text-align:justify; text-align-last:left; margin:0 0 12pt; }
.situation-pager { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; margin:26px 0 0; padding-top:20px; border-top:1px solid var(--line); }
.situation-back-link { display:inline-flex; margin:40px 0 8px; }
.situation-date-sources { margin:24px 0 16px; font-family:var(--sans); font-size:13px; color:var(--muted); line-height:1.8; }
.situation-date-sources h2 { margin:0 0 8px; font-size:14px; font-weight:600; color:var(--ink); }
.situation-date-sources p { margin:0 0 8px; }
.situation-date-sources ul { margin:0; padding-left:18px; }
.situation-date-sources a { color:var(--accent); overflow-wrap:anywhere; }
.situation-pager a { min-width:0; }
.situation-pager a:last-child { text-align:right; }
.situation-pager span { display:block; color:var(--muted); font-size:12px; margin-bottom:8px; }
.situation-pager strong { font-size:15px; font-weight:500; line-height:1.7; overflow-wrap:anywhere; }
.situation-lightbox { width:calc(100vw - 32px); max-width:1500px; max-height:calc(100dvh - 32px); padding:42px 12px 12px; border:0; border-radius:5px; background:var(--media-bg); color:#fff; }
.situation-lightbox::backdrop { background:#091322dc; }
.situation-lightbox img { display:block; width:100%; max-height:calc(100dvh - 100px); object-fit:contain; }
.situation-lightbox>button { position:absolute; right:15px; top:9px; border:0; background:transparent; color:inherit; padding:4px 8px; font:inherit; cursor:pointer; }
.situation-image-missing:after { content:"资料配图暂不可用"; display:block; padding:30px 12px; color:var(--muted); font-size:13px; }
.situation-page :is(a,button,input,select):focus-visible,.situation-detail :is(a,button):focus-visible { outline:2px solid var(--focus); outline-offset:3px; }
@media(max-width:1000px) { .situation-event { grid-template-columns:210px minmax(0,1fr); gap:18px; }.situation-event h3 { font-size:20px; } }
@media(max-width:760px) {
  .situation-back-link { margin-top:32px; }
  .situation-page,.situation-detail { padding-top:23px; padding-bottom:30px; }
  .situation-heading { margin-bottom:16px; gap:10px; flex-wrap:wrap; }
  .situation-heading>div { gap:12px; }.situation-heading h1 { font-size:25px; }.situation-heading p { font-size:13px; }.situation-heading>span { font-size:11px; }
  .situation-hero { min-height:186px; }.situation-hero>div { padding:23px 20px; }.situation-hero h2 { font-size:25px; }.situation-hero p { font-size:12px; line-height:1.75; }
  .situation-tabs { gap:0; justify-content:space-between; margin:15px 0 18px; }.situation-tabs a { font-size:14px; gap:5px; padding:11px 0; }.situation-tabs a>span { font-size:10px; }
  .situation-filters { grid-template-columns:minmax(0,1fr) auto; gap:8px; margin-bottom:22px; }.situation-filters input { grid-column:1; }.situation-filters label { min-width:0; }.situation-filters :is(input,select) { font-size:12px; padding:8px 10px; height:40px; }.situation-filters .button { min-height:40px; padding:7px 16px; font-size:13px; }.situation-filters label:last-child { grid-column:2; }.situation-filters label:last-child select { max-width:150px; }
  .situation-results h2 { font-size:21px; }.situation-results>span { font-size:12px; }
  .situation-timeline { padding-top:20px; }.situation-node { grid-template-columns:minmax(0,1fr); padding-left:18px; padding-bottom:22px; gap:8px; }.situation-node:before { left:0; }.situation-node:after { left:-4px; top:9px; }.situation-node>time { flex-direction:row; gap:10px; align-items:baseline; padding:0; }.situation-node time>strong { font-size:15px; }.situation-node time>span { font-size:11px; }
  .situation-event { grid-template-columns:112px minmax(0,1fr); gap:13px; padding-bottom:19px; }.situation-event h3 { font-size:16px; line-height:1.5; margin:5px 0 6px; }.situation-event-meta { font-size:10px; gap:4px 10px; }.situation-event-meta>span:nth-child(2) { display:none; }.situation-event-copy>p { font-size:12px; line-height:1.7; -webkit-line-clamp:2; }.situation-event-bottom { font-size:10px; padding-top:8px; }.situation-event-bottom>span:first-child { display:none; }
  .situation-detail-heading h1 { font-size:26px; line-height:1.45; }.situation-detail-heading>div { gap:6px 12px; font-size:11px; }.situation-summary { font-size:14px; margin:20px 0; padding:12px 14px; }.situation-facts { gap:10px; margin:20px 0; padding:14px 0; }.situation-facts dt { font-size:11px; }.situation-facts dd { font-size:13px; }.situation-reading { font-size:18px; }.situation-pager { gap:18px; }.situation-pager strong { font-size:13px; }.situation-pager span { font-size:11px; }
}
@media(max-width:380px) { .situation-tabs a { font-size:12px; }.situation-event { grid-template-columns:92px minmax(0,1fr); gap:10px; }.situation-event h3 { font-size:15px; }.situation-event-copy>p { -webkit-line-clamp:1; } }
@media(prefers-reduced-motion:reduce) { .situation-thumb img { transition:none; } }
