:root{--primary:#0b1f3a;--primary-dark:#071527;--bg:#ffffff;--bg-soft:#f5f7fa;--text:#1a1a1a;--text-muted:#6b7280;--accent:#f7931a;--up:#0a7d3a;--down:#c92a2a;--border:#e5e7eb;--header-text:#f8fafc;font-size:16px}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,'PingFang SC','Microsoft YaHei',sans-serif;font-size:16px;line-height:1.8;color:var(--text);background:var(--bg)}
a{color:var(--primary);text-decoration:none}
a:hover{color:var(--accent)}
img{max-width:100%;height:auto;display:block}
ul,ol{list-style:none}
.u-wrap{width:100%;padding:0 16px;margin:0 auto}
.u-main{min-height:60vh;padding-top:20px;padding-bottom:40px}
@media(min-width:768px){.u-wrap{max-width:720px}}
@media(min-width:1024px){.u-wrap{max-width:1200px}}
.site-header{position:sticky;top:0;z-index:100;background:var(--primary-dark);color:var(--header-text);box-shadow:0 1px 4px rgba(7,21,39,.35)}
.site-header__inner{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding-top:10px;padding-bottom:10px}
.site-header__logo{color:var(--header-text);font-size:20px;font-weight:700;letter-spacing:.02em}
.site-header__logo:hover{color:var(--accent)}
.site-header__logo img{max-height:32px;width:auto}
.site-header__toggle{display:flex;flex-direction:column;gap:4px;margin-left:auto;background:none;border:0;cursor:pointer;padding:6px}
.site-header__toggle span{display:block;width:20px;height:2px;background:var(--header-text)}
.site-header__nav{display:none;flex-basis:100%;flex-wrap:wrap;gap:2px 4px}
.site-header__nav.is-open{display:flex}
.site-header__nav-link{color:var(--header-text);font-size:14px;padding:6px 10px;border-radius:4px}
.site-header__nav-link:hover{background:rgba(248,250,252,.12);color:var(--header-text)}
.site-header__nav-link.is-current{color:var(--accent)}
.site-header__search{display:flex;flex-basis:100%;margin-top:4px}
.site-header__search input{flex:1;border:0;border-radius:4px 0 0 4px;padding:7px 10px;font-size:14px;min-width:0}
.site-header__search button{border:0;background:var(--accent);color:#fff;padding:7px 16px;font-size:14px;border-radius:0 4px 4px 0;cursor:pointer}
@media(min-width:768px){.site-header__toggle{display:none}.site-header__nav{display:flex;flex-basis:auto;flex:1}.site-header__search{flex-basis:200px;margin-top:0}}
@media(min-width:1024px){.site-header__search{flex-basis:240px}}
.crumb{font-size:13px;color:var(--text-muted);margin-bottom:12px}
.crumb a{color:var(--text-muted)}
.crumb a:hover{color:var(--accent)}
.layout{display:block}
@media(min-width:1024px){.layout{display:grid;grid-template-columns:repeat(12,1fr);gap:32px}.layout__main{grid-column:span 8;min-width:0}.layout__side{grid-column:span 4}.layout_index-top{grid-template-columns:7fr 5fr}}
.layout__side{margin-top:32px}
@media(min-width:1024px){.layout__side{margin-top:0}}
.section{margin-bottom:36px}
.section__hd{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid var(--primary);padding-bottom:8px;margin-bottom:16px}
.section__title{font-size:22px;line-height:1.4;color:var(--primary)}
.section__more{font-size:14px;color:var(--text-muted)}
.cards{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:768px){.cards{grid-template-columns:repeat(2,1fr)}.cards_3{grid-template-columns:repeat(3,1fr)}}
.card{border:1px solid var(--border);border-radius:6px;overflow:hidden;background:var(--bg);transition:box-shadow .2s}
.card:hover{box-shadow:0 4px 12px rgba(11,31,58,.1)}
.card__thumb{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--bg-soft)}
.card__body{padding:12px 14px}
.card__title{font-size:17px;line-height:1.4;margin-bottom:6px}
.card__summary{font-size:14px;color:var(--text-muted);margin-bottom:8px}
.card__meta{font-size:13px;color:var(--text-muted);display:flex;flex-wrap:wrap;gap:4px 12px}
.card__meta time{color:var(--text-muted)}
.card_flag{display:inline-block;font-size:12px;padding:0 6px;border-radius:3px;background:var(--bg-soft);color:var(--text-muted)}
.card_flag_top{background:#fdf1e0;color:var(--accent)}
.headline{border:1px solid var(--border);border-radius:6px;overflow:hidden}
.headline__thumb{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--bg-soft)}
.headline__body{padding:14px 16px}
.headline__title{font-size:24px;line-height:1.4;margin-bottom:8px}
.headline__summary{color:var(--text-muted);margin-bottom:10px}
.flash{border-left:2px solid var(--border);padding-left:16px}
.flash__item{position:relative;padding-bottom:16px}
.flash__item::before{content:'';position:absolute;left:-21px;top:8px;width:8px;height:8px;border-radius:50%;background:var(--accent)}
.flash__time{font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums}
.flash__title{font-size:15px;line-height:1.6}
.cat-news-timeline .card__thumb{display:none}
.newslist{border-left:2px solid var(--border);padding-left:16px}
.newslist__item{position:relative;padding-bottom:20px}
.newslist__item::before{content:'';position:absolute;left:-21px;top:9px;width:8px;height:8px;border-radius:50%;background:var(--accent)}
.newslist__time{font-size:13px;color:var(--text-muted)}
.newslist__title{font-size:16px;line-height:1.6}
.newslist__summary{font-size:14px;color:var(--text-muted)}
.catlist{display:grid;gap:16px}
.catlist__item{display:flex;gap:14px;border-bottom:1px solid var(--border);padding-bottom:16px}
.catlist__thumb{width:160px;flex:none;border-radius:4px;object-fit:cover;aspect-ratio:16/10;background:var(--bg-soft)}
.catlist__body{min-width:0}
.catlist__title{font-size:18px;line-height:1.4;margin-bottom:4px}
.catlist__summary{font-size:14px;color:var(--text-muted);margin-bottom:6px}
.catlist__meta{font-size:13px;color:var(--text-muted);display:flex;flex-wrap:wrap;gap:4px 12px}
.catlist__tags a{color:var(--accent)}
@media(max-width:480px){.catlist__thumb{width:110px}}
.intro{font-size:14px;color:var(--text-muted);background:var(--bg-soft);border-radius:4px;padding:10px 14px;margin-bottom:16px}
.subcats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.subcats a{font-size:14px;padding:4px 12px;border:1px solid var(--border);border-radius:16px}
.subcats a:hover{border-color:var(--accent);color:var(--accent)}
.page-title{font-size:26px;line-height:1.4;margin-bottom:8px}
.article{font-size:16px;line-height:1.8}
.article h1{font-size:28px;line-height:1.4;margin-bottom:12px}
.article__meta{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--text-muted);border-bottom:1px solid var(--border);padding-bottom:14px;margin-bottom:18px}
.article__meta a{color:var(--text-muted)}
.article__summary{background:var(--bg-soft);border-left:3px solid var(--accent);padding:10px 14px;font-size:14px;color:var(--text-muted);margin-bottom:18px}
.article__body{max-width:760px}
.article__body p{margin-bottom:1em}
.article__body img{border-radius:4px;margin:1em auto}
.article__body h2,.article__body h3{margin:1.2em 0 .6em;line-height:1.4;color:var(--primary)}
.table-scroll{overflow-x:auto;margin:1em 0}
.article__body table{border-collapse:collapse;min-width:480px;font-size:14px}
.article__body th,.article__body td{border:1px solid var(--border);padding:8px 12px;text-align:left}
.article__body th{background:var(--bg-soft)}
.risk-box{margin-top:24px;background:#fdf6ec;border:1px solid #f3d9ad;border-radius:6px;padding:12px 16px;font-size:14px;color:#8a5a12}
.article__tags{margin-top:20px;font-size:14px;color:var(--text-muted)}
.article__tags a{display:inline-block;margin:0 8px 8px 0;padding:2px 10px;background:var(--bg-soft);border-radius:14px;font-size:13px}
.prevnext{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:24px;padding-top:16px;border-top:1px solid var(--border);font-size:14px}
.prevnext span{color:var(--text-muted)}
.side-box{border:1px solid var(--border);border-radius:6px;padding:14px 16px;margin-bottom:24px;background:var(--bg)}
.side-box__title{font-size:17px;line-height:1.4;color:var(--primary);border-bottom:2px solid var(--accent);padding-bottom:6px;margin-bottom:10px}
.side-box__list li{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:7px 0;border-bottom:1px dashed var(--border);font-size:14px}
.side-box__list li:last-child{border-bottom:0}
.side-box__list a{flex:1;min-width:0}
.side-box__list time,.side-box__meta{font-size:12px;color:var(--text-muted);flex:none}
.side-box__empty{font-size:14px;color:var(--text-muted)}
.tagcloud{display:flex;flex-wrap:wrap;gap:8px}
.tagcloud a{font-size:13px;padding:3px 12px;background:var(--bg-soft);border-radius:14px;color:var(--text-muted)}
.tagcloud a:hover{background:var(--accent);color:#fff}
.pager{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:32px 0}
.pager__link{min-width:36px;padding:6px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;text-align:center;color:var(--primary)}
.pager__link:hover{border-color:var(--accent);color:var(--accent)}
.pager__link_current{background:var(--primary);border-color:var(--primary);color:var(--header-text)}
.site-footer{background:var(--bg-soft);border-top:1px solid var(--border);padding:32px 0;font-size:14px;color:var(--text-muted)}
.site-footer__cols{display:grid;gap:24px;margin-bottom:20px}
@media(min-width:768px){.site-footer__cols{grid-template-columns:2fr 1fr}}
.site-footer__col h4{font-size:15px;color:var(--primary);margin-bottom:10px}
.site-footer__links{display:flex;flex-wrap:wrap;gap:6px 18px}
.site-footer__risk{border-left:3px solid var(--accent);padding-left:12px;margin-bottom:12px}
.topic-hero{position:relative;border-radius:6px;overflow:hidden;margin-bottom:24px;background:var(--primary);color:var(--header-text)}
.topic-hero__banner{width:100%;max-height:280px;object-fit:cover;opacity:.6}
.topic-hero__body{padding:16px}
.topic-hero__title{font-size:26px;line-height:1.4;margin-bottom:6px}
.topic-grid{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:768px){.topic-grid{grid-template-columns:repeat(2,1fr)}.topic-grid_3{grid-template-columns:repeat(3,1fr)}}
.tagcloud-page{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.tagcloud-page a{padding:4px 14px;background:var(--bg-soft);border-radius:16px}
.tagcloud-page a:hover{background:var(--accent);color:#fff}
.search-form{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.search-form input[type=text]{flex:1;min-width:160px;border:1px solid var(--border);border-radius:4px;padding:8px 12px;font-size:15px}
.search-form select{border:1px solid var(--border);border-radius:4px;padding:8px;font-size:14px;background:var(--bg)}
.search-form button{border:0;background:var(--primary);color:var(--header-text);padding:8px 24px;border-radius:4px;font-size:15px;cursor:pointer}
.search-form button:hover{background:var(--accent)}
.search-hint{font-size:14px;color:var(--text-muted);margin-bottom:16px}
.search-hl{color:var(--accent)}
.notfound{text-align:center;padding:60px 0}
.notfound__code{font-size:64px;font-weight:700;color:var(--primary);line-height:1.2}
.notfound__text{color:var(--text-muted);margin:12px 0 24px}
.btn{display:inline-block;background:var(--primary);color:var(--header-text);padding:10px 28px;border-radius:4px;font-size:15px;border:0;cursor:pointer}
.btn:hover{background:var(--accent);color:#fff}
.btn_ghost{background:var(--bg);color:var(--primary);border:1px solid var(--primary)}
.up{color:var(--up)}
.down{color:var(--down)}
/* ---- 增量修补追加（detail.html）---- */
.comments__list{margin-bottom:24px}
.comments__item{border-bottom:1px dashed var(--border);padding:12px 0}
.comments__item:last-child{border-bottom:0}
.comments__head{font-size:14px;color:var(--text-muted);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:4px}
.comments__head a{color:var(--primary);font-weight:600}
.comments__time{font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}
.comments__body{font-size:15px;line-height:1.8}
.comments__replies{border-left:2px solid var(--border);margin-top:10px;padding-left:14px}
.comments__item_reply{border-bottom:0;padding:8px 0}
.comments__empty{font-size:14px;color:var(--text-muted);padding:12px 0}
.comments__form{background:var(--bg-soft);border:1px solid var(--border);border-radius:6px;padding:14px 16px;margin-bottom:24px}
.comments__form .side-box__title{margin-bottom:12px}
.comments__row{margin-bottom:10px}
.comments__row input[type=text],.comments__row input[type=email],.comments__row input[type=url]{flex:1;min-width:140px}
.comments__input{border:1px solid var(--border);border-radius:4px;padding:8px 10px;font-size:14px;width:100%}
.comments__row{display:flex;gap:10px;flex-wrap:wrap}
.comments__textarea{width:100%;border:1px solid var(--border);border-radius:4px;padding:8px 10px;font-size:14px;font-family:inherit;line-height:1.8;resize:vertical}
.comments__msg{font-size:14px;padding:8px 12px;border-radius:4px;margin-bottom:10px}
.comments__msg_ok{background:#e8f5ee;color:var(--up)}
.comments__msg_err{background:#fbeaea;color:var(--down)}
