:root { --paper:#e7e1d4; --light:#f7f3e9; --ink:#1e211e; --muted:#6f7068; --line:#aaa69b; --green:#315d4b; --orange:#d85a2c; --red:#a22d25; --yellow:#d9a52d; --serif:"Songti SC","STSong","Noto Serif CJK SC",serif; --sans:Inter,"PingFang SC","Microsoft YaHei",sans-serif; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--sans); }
body::before { content:""; position:fixed; inset:0; pointer-events:none; opacity:.22; background-image:radial-gradient(#393a34 .45px,transparent .45px); background-size:5px 5px; }
a { color:inherit; }
button,input,select,textarea { font:inherit; }
button,.file-button { cursor:pointer; }
.topbar { min-height:66px; padding:10px clamp(16px,4vw,56px); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--ink); background:rgba(231,225,212,.95); }
.brand { display:flex; align-items:center; gap:10px; text-decoration:none; }
.brand span { width:37px; height:37px; display:grid; place-items:center; color:var(--light); background:var(--ink); font:700 21px/1 var(--serif); }
.brand strong { font:700 16px/1 var(--serif); letter-spacing:.08em; }
.topbar nav { display:flex; gap:20px; font-size:11px; font-weight:700; }
main,footer { position:relative; width:min(1320px,calc(100% - 32px)); margin-inline:auto; }
.page-head { padding:58px 0 38px; display:grid; grid-template-columns:1fr minmax(260px,500px); gap:40px; align-items:end; border-bottom:2px solid var(--ink); }
.page-head p { margin:0; color:var(--muted); font-size:12px; line-height:1.8; }
.page-head > div > p { margin-bottom:9px; color:var(--orange); font-weight:900; letter-spacing:.16em; }
.page-head h1 { margin:0; font:700 clamp(38px,5vw,62px)/1 var(--serif); letter-spacing:-.04em; }
.summary { display:grid; grid-template-columns:repeat(5,1fr); gap:1px; border:1px solid var(--ink); border-top:0; background:var(--ink); }
.summary article { padding:18px 20px; display:flex; justify-content:space-between; align-items:end; background:var(--light); }
.summary span { color:var(--muted); font-size:10px; }
.summary strong { font:700 31px/1 var(--serif); }
.summary--warn strong { color:#986b00; }
.summary--risk strong { color:var(--red); }
.summary--review strong { color:#5b5673; }
.workspace { padding:42px 0 60px; display:grid; grid-template-columns:minmax(310px,.76fr) minmax(0,1.5fr); gap:20px; align-items:start; }
.editor,.archive { padding:26px; border:1px solid var(--ink); background:var(--light); }
.editor { position:sticky; top:14px; }
.panel-title { display:flex; gap:13px; align-items:center; margin-bottom:24px; }
.panel-title > span { width:34px; height:34px; display:grid; place-items:center; border:1px solid var(--ink); border-radius:50%; font-size:10px; font-weight:900; }
.panel-title p { margin:0 0 4px; color:var(--orange); font-size:8px; font-weight:900; letter-spacing:.14em; }
.panel-title h2 { margin:0; font:700 24px/1 var(--serif); }
form { display:grid; gap:15px; }
form label { display:grid; gap:6px; color:var(--muted); font-size:10px; font-weight:800; }
form label b { float:right; color:var(--red); font-size:9px; }
input,select,textarea { width:100%; min-width:0; padding:11px 10px; border:1px solid var(--line); border-radius:0; color:var(--ink); background:#fffdf7; outline:0; }
textarea { resize:vertical; line-height:1.55; }
input:focus,select:focus,textarea:focus { border-color:var(--ink); box-shadow:3px 3px 0 rgba(216,90,44,.28); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.form-row--three { grid-template-columns:repeat(3,1fr); }
.editor-actions,.archive-tools { display:flex; flex-wrap:wrap; gap:8px; }
.primary,.plain,.danger,.file-button { padding:10px 12px; border:1px solid var(--ink); border-radius:0; font-size:11px; font-weight:800; }
.primary { flex:1; color:#fff; background:var(--ink); box-shadow:4px 4px 0 var(--orange); }
.plain,.file-button { color:var(--ink); background:transparent; }
.danger { margin-left:auto; color:var(--red); border-color:var(--red); background:transparent; }
.file-button input { position:absolute; width:1px; height:1px; opacity:0; }
.privacy-note { margin:18px 0 0; padding-top:13px; border-top:1px dashed var(--line); color:var(--muted); font-size:9px; line-height:1.6; }
.filters { display:grid; grid-template-columns:160px 150px minmax(180px,1fr); gap:8px; }
.archive-tools { margin-top:10px; }
.filter-status { min-height:17px; margin:18px 0 9px; color:var(--muted); font-size:10px; }
.fact-list { display:grid; gap:9px; }
.fact-card { position:relative; padding:17px 18px; border:1px solid var(--line); background:#fffdf7; }
.fact-card--expired,.fact-card--invalid { border-left:5px solid var(--red); }
.fact-card--expiring { border-left:5px solid var(--yellow); }
.fact-card--conflict { box-shadow:inset 0 0 0 2px var(--red); }
.fact-card--duplicate { opacity:.68; }
.fact-card__head { display:flex; justify-content:space-between; gap:14px; }
.fact-card__head p { margin:0 0 4px; color:var(--muted); font-size:9px; }
.fact-card__head h3 { margin:0; font:700 18px/1.3 var(--serif); }
.badges { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:5px; }
.badge { padding:4px 6px; border:1px solid var(--line); color:var(--muted); font-size:8px; font-weight:900; white-space:nowrap; }
.badge--fresh { color:var(--green); border-color:var(--green); }
.badge--expiring { color:#846000; border-color:#a57a06; background:#fff5cc; }
.badge--expired,.badge--invalid,.badge--conflict { color:var(--red); border-color:var(--red); background:#fff0eb; }
.badge--duplicate { color:#5b5673; border-color:#77708f; }
.badge--verify-authoritative { color:var(--green); border-color:var(--green); background:#eef7f1; }
.badge--verify-corroborated { color:#31507a; border-color:#5d78a0; background:#edf4ff; }
.badge--verify-single { color:#5b5673; border-color:#77708f; background:#f2eff8; }
.badge--verify-conflict,.badge--verify-invalid { color:var(--red); border-color:var(--red); background:#fff0eb; }
.fact-card__claim { margin:15px 0 12px; font:700 15px/1.65 var(--serif); }
.fact-card__meta { display:flex; flex-wrap:wrap; gap:7px 16px; margin:0; color:var(--muted); font-size:9px; }
.fact-card__note { margin:10px 0 0; padding:9px 10px; background:var(--paper); color:var(--muted); font-size:9px; line-height:1.5; }
.fact-card__actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:13px; padding-top:10px; border-top:1px dashed var(--line); }
.fact-card__actions a,.fact-card__actions button { padding:0; border:0; border-bottom:1px solid currentColor; color:var(--ink); background:transparent; font-size:9px; font-weight:800; text-decoration:none; }
.fact-card__actions > span { color:var(--red); font-size:9px; }
.fact-card__actions button:last-child { margin-left:auto; color:var(--red); }
.empty { padding:56px 20px; border:1px dashed var(--line); color:var(--muted); text-align:center; }
.empty strong { display:block; margin-bottom:8px; color:var(--ink); font:700 22px/1 var(--serif); }
.rules { padding:44px 0 70px; border-top:2px solid var(--ink); }
.rules ol { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--ink); background:var(--light); }
.rules li { min-height:150px; padding:22px; border-right:1px solid var(--ink); }
.rules li:last-child { border:0; }
.rules strong { font:700 19px/1 var(--serif); }
.rules p { margin:12px 0 0; color:var(--muted); font-size:11px; line-height:1.7; }
footer { padding:22px 0 42px; display:flex; justify-content:space-between; border-top:1px solid var(--ink); color:var(--muted); font-size:9px; letter-spacing:.08em; }
.toast { position:fixed; left:50%; bottom:24px; z-index:20; padding:10px 15px; color:#fff; background:var(--ink); opacity:0; transform:translate(-50%,10px); pointer-events:none; transition:.2s; }
.toast.is-visible { opacity:1; transform:translate(-50%,0); }
@media (max-width:960px) { .summary{grid-template-columns:repeat(3,1fr)}.workspace{grid-template-columns:1fr}.editor{position:static}.rules ol{grid-template-columns:repeat(2,1fr)}.rules li:nth-child(2){border-right:0}.rules li:nth-child(-n+2){border-bottom:1px solid var(--ink)} }
@media (max-width:640px) { .topbar nav{gap:11px;font-size:9px}.page-head{padding-top:38px;grid-template-columns:1fr;gap:18px}.page-head h1{font-size:41px}.summary{grid-template-columns:repeat(2,1fr)}.workspace{padding-top:24px}.editor,.archive{padding:18px 14px}.form-row,.form-row--three{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.fact-card__head{display:block}.badges{justify-content:flex-start;margin-top:10px}.rules ol{grid-template-columns:1fr}.rules li,.rules li:nth-child(2){min-height:0;border-right:0;border-bottom:1px solid var(--ink)}footer{flex-direction:column;gap:8px} }
@media (prefers-reduced-motion:reduce) { *{transition:none!important} }
