/* 协作台方向：研究阅读、证据联动和时间线共享语义主题；颜色来自 tokens.css，正式版顶栏与位置路径见 formal-theme.css。
   第 4 轮（规格 23.86）：删去已无元素使用的专题卡片样式（.topic-card…）；专题列表见 topic-list.css。 */
/* 旧语义变量映射到 tokens.css 设计令牌 v1.1；文字、链接与按钮底色使用文字主色以满足 4.5:1 对比度。
   令牌 v2.2：.ss-light 子树（演示幻灯、A4 纸面）重新解析别名，避免继承根元素上已按深色解析的值；深色别名只在屏幕上生效，打印为浅色。 */
:root,.ss-light{color-scheme:light;--bg:var(--ss-bg);--paper:var(--ss-surface);--text:var(--ss-ink-2);--heading:var(--ss-ink);--muted:var(--ss-muted);--line:var(--ss-line);--accent:var(--ss-primary-text);--brand:var(--ss-primary-text);--on-accent:var(--ss-on-primary-text);--tint:var(--ss-primary-soft);--warn:var(--ss-warn-text);--warn-bg:var(--ss-warn-softer);--danger:var(--ss-danger-text);--success:var(--ss-ok-text);--shadow:var(--ss-shadow-card)}
@media screen{html[data-theme=dark]{color-scheme:dark;--bg:var(--ss-bg);--paper:var(--ss-surface);--text:var(--ss-ink-2);--heading:var(--ss-ink);--muted:var(--ss-muted);--line:var(--ss-line);--accent:var(--ss-primary-text);--brand:var(--ss-primary-text);--on-accent:var(--ss-on-primary-text);--tint:var(--ss-primary-soft);--warn:var(--ss-warn-text);--warn-bg:var(--ss-warn-softer);--danger:var(--ss-danger-text);--success:var(--ss-ok-text);--shadow:var(--ss-shadow-card)}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 "Segoe UI","Microsoft YaHei","PingFang SC",sans-serif}h1,h2,h3,h4{color:var(--heading);overflow-wrap:anywhere}button,input,select,textarea{font:inherit}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;border:1px solid var(--line);background:var(--paper);color:var(--text);border-radius:8px;min-height:40px;padding:8px 16px;font-size:14px;font-weight:500;box-shadow:var(--shadow);transition:background-color 150ms ease-out,border-color 150ms ease-out,box-shadow 150ms ease-out,transform 150ms ease-out}button:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 2px 5px color-mix(in srgb, var(--ss-ink) 6%, transparent)}button:active{transform:scale(.98)}button:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.primary:hover{color:var(--on-accent);filter:brightness(.94);transform:translateY(-1px)}.primary:active{transform:scale(.98)}.quiet{background:transparent;border-color:transparent;padding:6px 10px;color:var(--muted);box-shadow:none}.danger{color:var(--danger)}.hidden{display:none!important}.skip{position:absolute;top:-100px}.skip:focus{top:0;z-index:100;background:var(--paper);padding:12px}
/* 页面框架：外壳为 main-shell（顶栏在其上方，见 formal-theme.css）。 */
.main-shell{min-height:calc(100vh - var(--ss-topbar-height));display:flex;flex-direction:column}main{padding:32px;flex:1;min-width:0;max-width:1720px;width:100%;margin:0 auto}footer{padding:16px 32px;color:var(--muted);font-size:12px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.between{justify-content:space-between}.titlebar{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px}.titlebar>div:first-child{min-width:0;flex:1}.titlebar>.row{justify-content:flex-end;flex:0 1 360px}.titlebar h1{font-size:28px;line-height:1.45;margin:0;font-weight:650;letter-spacing:-.5px}.titlebar p{font-size:14px;color:var(--muted);margin:8px 0 0}.titlebar button{white-space:nowrap}.eyebrow{font-size:12px;color:var(--brand);margin-bottom:12px;font-weight:600}.panel{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:var(--shadow);min-width:0}.section-label{font-size:15px;font-weight:600;margin:0 0 20px;color:var(--heading)}
/* 输入与探索入口。 */
.explore-hero{max-width:980px;margin:40px auto 0}.explore-hero h1{font-size:34px;font-weight:650;letter-spacing:-1px;line-height:1.4;margin:8px 0 16px}.subtitle{color:var(--muted);font-size:15px;max-width:760px}.query-panel{margin-top:28px;padding:24px;box-shadow:0 4px 16px color-mix(in srgb, var(--ss-ink) 3%, transparent)}.query-panel:focus-within{border-color:var(--accent)}.query-panel textarea{font-size:18px;min-height:110px;border:0;resize:vertical;padding:8px;background:transparent}.query-panel textarea:focus-visible{outline-offset:0;border-radius:8px}.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px;padding-top:20px;border-top:1px solid var(--line)}label.field{display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--muted)}input,select,textarea{border:1px solid var(--line);border-radius:8px;color:var(--text);background:var(--paper);padding:9px 12px;width:100%;min-width:0;font-size:14px;min-height:42px}textarea{resize:vertical;min-height:120px;line-height:1.8}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--accent);flex-shrink:0}input[type=date]{min-height:42px}.check{font-size:14px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;min-height:32px}.type-list{gap:12px 20px;margin:20px 0}.submit-row{border-top:1px solid var(--line);padding-top:20px;margin-top:20px;justify-content:space-between}.hint{color:var(--muted);font-size:12px;overflow-wrap:anywhere}details{min-width:0}summary{cursor:pointer;min-height:36px;padding:6px 0;font-size:14px}.advanced-sources{border-top:1px solid var(--line);padding-top:8px}.advanced-sources[open]{padding-bottom:12px}.examples{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0 32px}.example{text-align:left;padding:18px;line-height:1.8;min-height:106px;background:var(--paper);border-radius:12px;font-size:14px}.example small{display:block;color:var(--muted);font-size:12px;margin-bottom:8px}.history-row{padding:16px 0;border-bottom:1px solid var(--line);display:flex;gap:16px;align-items:center;justify-content:space-between;font-size:14px;flex-wrap:wrap}.history-row>div{min-width:0;overflow-wrap:anywhere}.history-row>a{flex:1;min-width:180px;overflow-wrap:anywhere}.badge{display:inline-flex;align-items:center;font-size:12px;line-height:1.6;padding:3px 8px;border:1px solid var(--line);border-radius:6px;color:var(--muted);white-space:normal;overflow-wrap:anywhere}.badge.blue{background:var(--tint);border-color:transparent;color:var(--brand)}.badge.warn{color:var(--warn);background:var(--warn-bg)}.badge.danger{color:var(--danger)}.badge.success{color:var(--success)}
/* 研究内容和证据始终保持连续阅读。 */
.tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin-bottom:24px;overflow:auto}.tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:none;padding:12px 0;color:var(--muted);box-shadow:none;white-space:nowrap}.tabs button.active{color:var(--accent);border-bottom-color:var(--accent)}.tabs button:focus-visible{outline-offset:-2px}.topic-header{position:sticky;top:0;background:var(--bg);z-index:10;padding-top:12px}.topic-header .titlebar{margin-bottom:16px}.topic-header .tabs{margin-bottom:24px;background:var(--bg)}.research-layout,.report-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:24px;align-items:start}.answer{white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.95;min-height:100px;color:var(--text)}.answer button{font-size:12px;min-height:24px;min-width:24px;padding:1px 6px;margin:0 3px;color:var(--brand);background:var(--tint);border:1px solid var(--line);vertical-align:baseline;line-height:1.7;box-shadow:none}.answer+form,.answer~.form-stack{border-top:1px solid var(--line);padding-top:24px;margin-top:24px}.evidence-sidebar{position:sticky;top:24px;max-height:calc(100vh - 48px);overflow:auto;scrollbar-gutter:stable}.evidence-card{padding:20px 0;border-bottom:1px solid var(--line);font-size:14px;overflow-wrap:anywhere;scroll-margin:16px}.evidence-card:first-of-type{padding-top:0}.evidence-card h3{font-size:15px;font-weight:600;line-height:1.65;margin:12px 0 8px}.evidence-card p{font-size:14px;line-height:1.85;margin:12px 0;color:var(--text)}.evidence-card.selected{background:var(--tint);border-radius:8px;outline:1px solid var(--accent);outline-offset:4px}.evidence-card .quote{white-space:pre-wrap}.evidence-card a{font-size:13px}.scope-line{font-size:12px;color:var(--muted);margin:8px 0 20px}.notice{border:1px solid var(--line);border-radius:8px;background:var(--warn-bg);color:var(--warn);padding:12px 16px;font-size:14px;margin:16px 0;overflow-wrap:anywhere}.empty{text-align:center;color:var(--muted);padding:48px 24px;font-size:14px}.loading{padding:48px;text-align:center;color:var(--muted)}.mobile-evidence{display:none}.evidence-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.evidence-heading .section-label{margin:0}.evidence-source{margin-top:8px}.evidence-meta{display:grid;gap:4px;margin:12px 0}.coverage-info{margin:12px 0}
/* 专题、资料列表和编辑器。 */
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.material-row{padding:20px 0;border-bottom:1px solid var(--line);display:flex;gap:16px;align-items:flex-start;font-size:14px;min-width:0}.material-row .details{flex:1;min-width:0}.material-row h3{margin:8px 0 12px;font-size:16px;font-weight:600;overflow-wrap:anywhere}.material-row .row{gap:8px}.material-row select{width:auto;font-size:14px}.material-row:hover{background:var(--bg)}.actions{margin-top:16px}.editor{min-height:540px;font-size:16px;line-height:1.95;margin-top:16px}.report-actions{padding:16px 0 24px;gap:8px}.report-actions a{font-size:13px;padding:8px}.step{padding:14px 0;border-bottom:1px solid var(--line);font-size:14px;display:flex;gap:16px;overflow-wrap:anywhere}.step time{color:var(--muted);white-space:nowrap;font-size:12px}.form-stack{display:grid;gap:16px}.form-stack>.primary{justify-self:start}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.login{max-width:440px;margin:64px auto;padding:32px}.login h1{font-size:26px;margin:0 0 12px}.login .form-stack{margin-top:28px}.login .primary{width:100%}.login .hint{margin-top:24px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.metric strong{display:block;font-size:28px;color:var(--heading);margin:8px 0}.metric span{color:var(--muted);font-size:12px}.admin-json{white-space:pre-wrap;font-size:12px;overflow-wrap:anywhere}.admin-sections{margin-bottom:24px}.admin-sections a{font-size:14px}.source-list{max-height:220px;overflow:auto;display:grid;gap:8px;padding:12px 4px}.source-capabilities{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.long-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.comparison article{overflow-wrap:anywhere}.toolbar{margin-bottom:20px}.toolbar input{max-width:340px}.toolbar select{max-width:200px}.selection-toolbar{position:sticky;top:0;background:var(--paper);padding:12px 0;z-index:2}.material-list-title{display:flex;align-items:center;gap:12px}.date-records{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0;font-size:14px}
/* 原文弹窗与窄屏证据抽屉。 */
dialog{border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--text);width:min(840px,calc(100vw - 32px));max-height:90dvh;padding:24px;box-shadow:0 12px 40px color-mix(in srgb, var(--ss-ink) 13%, transparent);overflow:auto}dialog::backdrop{background:color-mix(in srgb, var(--ss-ink) 40%, transparent)}dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}dialog h2{font-size:20px;line-height:1.5;margin:0}dialog>header button{flex-shrink:0}#evidence-drawer{margin:0 0 0 auto;height:100dvh;max-height:100dvh;width:min(460px,100vw);border-radius:12px 0 0 12px}#evidence-drawer>header{position:sticky;top:-24px;background:var(--paper);z-index:2;padding:16px 0}#toast{position:fixed;bottom:24px;right:24px;max-width:min(540px,calc(100vw - 48px));padding:16px 24px;background:var(--heading);color:var(--paper);border-radius:8px;z-index:100;box-shadow:var(--shadow);white-space:pre-wrap;font-size:14px}
/* 两种时间线共享同一条时间顺序和证据关联。 */
.timeline-controls{display:flex;gap:16px;align-items:end;flex-wrap:wrap;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:20px 0}.timeline-controls .field{flex:1;min-width:130px}.timeline-controls .timeline-search{flex:2}.segmented{display:flex;gap:4px;background:var(--bg);border:1px solid var(--line);padding:4px;border-radius:10px;flex-shrink:0}.segmented button{border:1px solid transparent;background:transparent;box-shadow:none;min-height:36px;padding:6px 14px}.segmented button[aria-pressed=true]{background:var(--paper);border-color:var(--line);box-shadow:var(--shadow);color:var(--brand)}.timeline-summary{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:12px;margin-bottom:24px}.timeline-workspace{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:24px;align-items:start}.timeline-workspace.overview{grid-template-columns:1fr}.timeline-year{font-size:20px;font-weight:650;margin:8px 0 24px;padding-left:16px;border-left:3px solid var(--accent)}.timeline-year small{font-size:12px;color:var(--muted);font-weight:400;margin-left:12px}.timeline-group+.timeline-group{margin-top:32px}.event-list{position:relative}.event-list:before{content:"";position:absolute;left:96px;top:0;bottom:0;width:2px;background:var(--line)}.event-row{position:relative;display:grid;grid-template-columns:80px minmax(0,1fr);gap:40px;padding:0 0 24px}.event-date{padding-top:22px;font-size:12px;color:var(--muted);text-align:right}.event-date strong{display:block;font-size:13px;color:var(--text);font-weight:500}.event-node{position:absolute;top:27px;left:89px;width:16px;height:16px;border-radius:50%;background:var(--accent);border:3px solid var(--paper);outline:1px solid var(--line);transition:transform 200ms ease-out,box-shadow 200ms ease-out}.event-row[data-status=verify] .event-node,.event-row[data-planned=true] .event-node{background:var(--paper);border:2px solid var(--warn)}.event-row[data-status=pending] .event-node{background:var(--paper);border:2px solid var(--accent)}.event-row[data-conflict=true] .event-node{border-color:var(--danger);background:var(--danger)}.event-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:20px;box-shadow:var(--shadow);min-width:0;transition:border-color 200ms ease-out,box-shadow 200ms ease-out}.event-row:hover .event-card,.event-row:focus-within .event-card,.event-row.selected .event-card{border-color:var(--accent)}.event-row:hover .event-node,.event-row:focus-within .event-node,.event-row.selected .event-node{box-shadow:0 0 0 4px var(--tint);transform:scale(1.15)}.event-card h3{font-size:17px;font-weight:600;line-height:1.65;margin:12px 0}.event-card .event-select{color:var(--heading);border:0;background:none;padding:0;min-height:44px;text-align:left;box-shadow:none;font:inherit;display:block;width:100%}.event-card .event-select:hover{color:var(--accent)}.event-card .event-state{font-size:14px;line-height:1.8;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere}.event-card .event-state p{margin:8px 0}.event-card .event-state strong{font-size:12px;font-weight:500;color:var(--muted);display:block}.event-card .event-extra{font-size:14px}.event-card .notice{font-size:13px;margin:12px 0}.event-card .event-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:16px;flex-wrap:wrap}.event-card .event-footer button{font-size:13px}.timeline-evidence{position:sticky;top:180px;max-height:calc(100vh - 208px);overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:20px}.timeline-evidence h2{font-size:16px;margin:0 0 12px}.timeline-evidence .event-evidence-title{font-size:14px;color:var(--muted);margin-bottom:16px}.overview .timeline-evidence{display:none}.overview .event-list:before{left:50%}.overview .event-row{display:block;padding-bottom:28px}.overview .event-date{display:none}.overview .event-node{left:calc(50% - 7px);top:30px}.overview .event-card{width:calc(50% - 32px)}.overview .event-row[data-side=right] .event-card{margin-left:calc(50% + 32px)}.overview .event-row .event-card:hover{box-shadow:0 3px 10px color-mix(in srgb, var(--ss-ink) 5%, transparent)}.overview .timeline-year{text-align:center;border:0;padding:0}.event-card-date{display:none;color:var(--muted);font-size:12px;margin-bottom:12px}.overview .event-card-date{display:block}
@media(min-width:1500px){.explore-hero{margin-top:60px}.query-panel{padding:28px}}
@media(max-width:1280px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}main{padding:28px 24px}.research-layout,.report-layout{grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr)}.timeline-workspace{grid-template-columns:minmax(0,1fr) 280px;gap:20px}.event-list:before{left:12px}.event-row{grid-template-columns:1fr;gap:8px;padding-left:36px}.event-date{text-align:left;padding:0}.event-date strong{display:inline}.event-node{left:5px;top:44px}.overview .event-row{padding-left:0}.titlebar>.row{flex-basis:280px}}
@media(max-width:1100px){.timeline-workspace{grid-template-columns:1fr}.timeline-evidence{display:none}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.titlebar{flex-wrap:wrap}.titlebar>.row{flex-basis:auto}.timeline-controls .segmented{width:100%}}
@media(max-width:900px){.research-layout,.report-layout{grid-template-columns:1fr}.evidence-sidebar{display:none}.mobile-evidence{display:inline-flex}.titlebar>.row{justify-content:flex-start}.topic-header{position:static}.timeline-controls{align-items:stretch}}
@media(max-width:800px){main{padding:24px 20px}.explore-hero{margin-top:16px}.explore-hero h1{font-size:28px;letter-spacing:-.4px}.titlebar h1{font-size:26px}.examples{grid-template-columns:1fr;gap:12px}.example{min-height:0}.titlebar{flex-direction:column;gap:16px}.titlebar>.row{width:100%}.metrics{gap:12px}.metric{padding:16px}.tabs{gap:24px;white-space:nowrap}.panel{padding:20px}.comparison{grid-template-columns:1fr}footer{padding:16px 20px}.overview .event-list:before{left:12px}.overview .event-row{padding-left:36px}.overview .event-node{left:5px}.overview .event-card{width:100%;margin-left:0!important}.overview .timeline-year{text-align:left;border-left:3px solid var(--accent);padding-left:16px}.event-card{padding:16px}}
@media(max-width:480px){.filter-grid{grid-template-columns:1fr}.submit-row{align-items:stretch;flex-direction:column}.type-list{gap:8px 16px}.query-panel{padding:16px}.query-panel textarea{font-size:16px}.metrics,.card-grid{grid-template-columns:1fr}.material-row{gap:12px}.tabs{gap:20px}.timeline-controls .field{flex-basis:100%}.segmented button{flex:1}.titlebar>.row{gap:8px}.titlebar button{padding:8px 12px}.badge{padding:2px 6px}.event-row{padding-left:30px}.event-card .row{gap:6px}.history-row>a{min-width:100%}.step{flex-direction:column;gap:4px}dialog{padding:20px;width:calc(100vw - 24px)}#evidence-drawer>header{top:-20px}.toolbar input,.toolbar select{max-width:none}.scope-line{align-items:flex-start}button{min-height:44px}.answer button{min-height:28px}footer{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.event-row:hover .event-node,.primary:hover,button:active{transform:none}}
@media print{.topbar,.page-crumbs,footer,button,.tabs,#toast,.timeline-controls{display:none!important}.main-shell{min-height:0}main{padding:0}.panel{border:0;box-shadow:none}.research-layout,.timeline-workspace{display:block}.evidence-sidebar,.timeline-evidence{display:block;position:static;max-height:none}.event-row{break-inside:avoid}.topic-header{position:static}}
/* 有日期的事件共享连续轴线；未知日期使用独立虚线，不暗示时间顺序。 */
.timeline-dated{position:relative}.timeline-dated:not(:empty):before{content:"";position:absolute;left:96px;top:24px;bottom:0;width:2px;background:var(--line)}.timeline-dated .event-list:before{display:none}.timeline-year{position:relative;z-index:1;background:var(--paper)}.timeline-group[data-year="时间待核实"]{margin-top:32px}.timeline-group[data-year="时间待核实"] .event-list:before{background:none;border-left:2px dashed var(--line)}.overview .timeline-dated:before{left:50%}
@media(max-width:1280px){.timeline-dated:not(:empty):before{left:12px}.overview .timeline-dated:not(:empty):before{left:50%}}
@media(max-width:800px){.overview .timeline-dated:not(:empty):before{left:12px}}
/* 每次探索独立的网络选择与分项诊断状态。 */
.network-control {margin:16px 0;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--paper);}
.network-switch {font-weight:600;}
.network-switch input {width:18px;height:18px;accent-color:var(--accent);}
.network-check {display:flex;align-items:flex-start;gap:8px;margin-top:8px;font-size:14px;overflow-wrap:anywhere;}
.network-check .badge {flex-shrink:0;}

/* 登录与注册的品牌组合；顶栏品牌见 formal-theme.css「顶栏」，标识配色见 app-shell.css。 */
.auth-brand{display:flex;align-items:center;gap:14px;margin-bottom:28px;color:var(--heading)}
.auth-brand img{display:block;width:48px;height:48px;object-fit:contain}
.auth-brand strong{display:block;font-size:26px;font-weight:650;letter-spacing:-.6px}
.auth-brand small{display:block;font-size:12px;color:var(--muted);margin-top:2px}
