:root{--bg:#f6f8f7;--panel:#ffffff;--line:#d8e6e6;--muted:#5f6b6b;--accent:#3b9bbf;--text:#0f2326;--max-width:1320px;--min-width:1120px;--radius:0}
*{box-sizing:border-box}
html,body{height:100%;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,'Noto Sans','Microsoft Yahei',sans-serif;line-height:1.45;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration:none}
.header-inner{max-width:var(--max-width);margin:22px auto 8px;padding:0 18px}
.masthead{font-weight:700;text-align:center;border-bottom:1px solid var(--line);padding:6px 0;margin-bottom:10px;color:var(--muted)}
.top-nav .nav-row{display:flex;gap:10px;justify-content:center;align-items:center;font-size:13px;color:var(--muted)}
.top-nav .nav-row .home{color:var(--text);font-weight:600}
.sub-nav .index-bar{margin-top:8px;text-align:center;font-size:12px;color:var(--muted);border-top:1px solid transparent}
.ad-container{max-width:var(--max-width);margin:12px auto;padding:6px 18px;min-height:28px;color:var(--muted);font-size:13px}
.page-wrap{display:block;padding:0 12px 40px}
.layout-grid{max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:1fr;gap:18px}
.article-main{background:transparent;border:1px solid transparent;padding:0}
.eyebrow{font-size:12px;color:var(--accent);border-left:3px solid var(--accent);padding-left:8px;margin-bottom:8px;display:inline-block}
.article-title{font-size:28px;margin:6px 0 10px;line-height:1.15;font-weight:700}
.meta-info{font-size:12px;color:var(--muted);margin-bottom:10px;display:flex;gap:12px;align-items:center}
.summary{background:transparent;padding:10px 0;margin-bottom:12px;color:var(--muted);font-size:14px}
.content{font-size:15px;color:var(--text);line-height:1.6}
.content > *:first-child{margin-top:0}
.block-title{font-size:13px;font-weight:700;color:var(--text);margin:18px 0 10px}
.faq .faq-body, .related .related-list{border-top:1px solid var(--line);padding-top:12px}
.side-column{background:transparent;padding:0 6px}
.side-box{border:1px solid var(--line);padding:10px;margin-bottom:12px;background:var(--panel);border-radius:var(--radius)}
.side-title{font-size:13px;color:var(--muted);margin-bottom:8px}
.index-list{list-style:none;padding:0;margin:0;font-size:13px;color:var(--text)}
.index-list li{padding:6px 0;border-top:1px dashed var(--line);line-height:1}
.tags{font-size:13px;color:var(--accent)}
.site-footer{border-top:1px solid var(--line);padding:14px 18px;margin-top:30px;color:var(--muted);font-size:13px;text-align:center}

/* Desktop rules: distinct two-column editorial grid, compact density */
@media (min-width:1024px){
  .header-inner{margin-top:28px}
  .layout-grid{grid-template-columns:9fr 3fr;align-items:start;gap:20px}
  .article-main{padding-right:6px}
  .article-title{font-size:34px}
  .content{font-size:15px}
  .side-column{position:static}
  .ad-container{min-height:34px}
}

/* Strong desktop container width enforcement (per合同要求): between 1120 and 1440 */
@media (min-width:1120px){
  :root{--max-width:1320px}
  .header-inner,.layout-grid,.ad-container{max-width:var(--max-width);margin-left:auto;margin-right:auto}
}

/* Mobile rules: single column, remove second-row nav and allow tags wrap */
@media (max-width:767px){
  .header-inner{padding:0 12px}
  .sub-nav{display:none}
  .masthead{font-size:15px;padding-bottom:4px}
  .top-nav .nav-row{font-size:13px;flex-wrap:wrap;gap:8px}
  .layout-grid{grid-template-columns:1fr;padding:0 4px}
  .article-title{font-size:20px;margin-top:6px}
  .meta-info{flex-direction:column;align-items:flex-start;gap:6px}
  .summary{font-size:15px}
  .side-column{order:3}
  .side-box{padding:10px}
  .faq .faq-body{display:block}
  .related .related-list{display:block}
  /* FAQ pattern: single column on mobile */
  .faq .faq-body > *{display:block;width:100%}
  .related .related-list > *{display:block;width:100%}
  .ad-container{padding-left:12px;padding-right:12px}
}

/* FAQ two-column on wider screens */
@media (min-width:1024px){
  .faq .faq-body{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .related .related-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
}

/* Visual signature: strict straight corners and thin lines */
*{border-radius:0}

/* Accessibility tweaks */
.article-title{word-break:break-word}
.content img{max-width:100%;height:auto}
