/* 统一可读性：正文 16px、辅助文字至少 14px；在较窄视口换行，不缩小字体。 */
:root{--ink:#172b22;--muted:#4f6054}
.source-tags{flex-wrap:wrap}
.semantic-explanation{padding:0 29px 20px;font-size:16px;overflow-wrap:anywhere}
.semantic-explanation>p{font-size:14px;color:#4f6054}
#collector-secret{overflow-wrap:anywhere;user-select:all}
body{font:500 16px/1.75 "Microsoft YaHei","PingFang SC","Segoe UI",sans-serif;color:var(--ink)}
h1,h2,h3,strong{font-weight:700}
h1{font-size:34px;line-height:1.45}
h2,.panel-heading h2,.compact h2{font-size:21px;font-weight:700}
.brand{font-size:24px;font-weight:700}
.brand small{font-size:11px;letter-spacing:.65px;color:#c2d1c4}
.workspace-label,.workspace-label span,.sidebar-note,.sidebar-note p,.sidebar-footer,.sidebar-footer small,.source-tags span{font-size:14px;color:#b6c9bb;letter-spacing:0}
.workspace-label{margin-top:28px}
.sidebar{width:260px;padding:26px 20px}
.shell{margin-left:260px}
.sidebar .nav-item{font-size:17px;font-weight:600;color:#ccdacd;padding:11px 13px}
.sidebar .nav-item.active{color:#233c1c;font-weight:700}
.sidebar-note{margin-top:24px}
.sidebar-footer{margin-top:auto}
.avatar{font-size:16px;flex-shrink:0}
.topbar{height:auto;min-height:82px;gap:14px;padding:18px 28px;flex-wrap:wrap}
.topbar-right{gap:12px;flex-wrap:wrap}
.breadcrumb,.breadcrumb strong,.connection,.text-button,.topbar select{font-size:15px;font-weight:600;color:#415a43}
.text-button,.topbar select{min-height:42px}
.icon-button{height:42px;width:42px;font-size:25px;flex-shrink:0}
main{padding:30px 28px 24px}
.page-heading p{font-size:16px;color:#506151}
.eyebrow,.heading-meta,.heading-meta small{font-size:14px;color:#52664a}
.eyebrow{letter-spacing:1px}
.stat-label{font-size:16px;font-weight:600;color:#405540;gap:8px}
.stat-card{padding:22px}
.stat-number{font-size:44px;font-weight:700;letter-spacing:-1px}
.stat-footer,.accent .stat-footer{font-size:14px;color:#506347;line-height:1.7;align-items:flex-start;min-height:38px}
.mini-dot,.risk-dot{flex-shrink:0;margin-top:8px}
.panel-heading{align-items:flex-start;flex-wrap:wrap}
.panel-heading p{font-size:15px;color:#54634d;margin-top:8px}
.small-label,.count-badge,.demo-badge{font-size:14px;font-weight:600;color:#506744;white-space:normal}
.table-toolbar{flex-wrap:wrap;gap:14px}
.segmented{flex-wrap:wrap;gap:4px}
.segmented button{font-size:15px;font-weight:600;padding:8px 12px;color:#4b6041;min-height:40px}
.segmented button.selected{color:#2e4b23;font-weight:700}
.search{display:flex;padding:8px 12px}
.search input{font-size:15px;width:150px}
.table-wrap table{min-width:760px}
th{font-size:14px;font-weight:700;color:#45583e;padding:15px 16px}
td{font-size:16px;color:#34492f;padding:20px 16px}
.event-time,.score-wrap{font-size:16px;font-weight:600;color:#334a30}
.event-date{font-size:14px;color:#52664a}
.user-name{font-size:16px;font-weight:700;color:#2d452a}
.user-avatar{width:32px;height:32px;font-size:13px;font-weight:700;color:#526b40}
.badge{font-size:14px;font-weight:700;padding:5px 9px}
.badge.confirmed{color:#984124}.badge.suspicious{color:#76570a}.badge.suppressed{color:#3f6528}
.rule-tag{font-size:14px;font-weight:600;color:#456232;padding:4px 7px}
.status-tag{font-size:14px;font-weight:600;color:#4a6440;margin-top:9px}
.row-arrow{min-width:40px;min-height:40px;font-size:22px;color:#466633}
.table-bottom{font-size:14px;color:#536749;line-height:1.8;flex-wrap:wrap}
.filter-notice,.filter-notice button{font-size:14px;color:#42612b}
.filter-notice{flex-wrap:wrap;gap:8px}
.pipeline-panel h2{font-size:23px;font-weight:700}
.panel-kicker{font-size:13px;color:#bdd7a7;letter-spacing:1px}
.pipeline-item h3{font-size:16px;font-weight:600;color:#e8f3df}
.pipeline-item p{font-size:14px;color:#c0d2b4}
.step{font-size:14px;flex-shrink:0}
.step-check{font-size:15px;color:#c3e0a1}
.pipeline-foot{font-size:14px;color:#d0e5bb;gap:8px}
.scenario{padding:18px 20px}
.scenario strong{font-size:16px;font-weight:700;color:#3c542f}
.scenario small{font-size:14px;color:#556a46}
.scenario-code{font-size:15px;color:#456235;flex-shrink:0}
.footer{font-size:14px;color:#54654b;line-height:1.8;flex-wrap:wrap}
.error,.loading,.empty{font-size:16px;font-weight:500}
.empty{color:#58694f}
.audit-item p,.method>p,.method-grid p,.method-note{font-size:16px;color:#4a603d;line-height:1.9}
.method-grid h3{font-size:19px;font-weight:700;color:#3e5c2c}
.raw{font-size:14px;font-weight:500;line-height:1.9;color:#3f5632;max-height:340px}
.drawer{width:760px}
.drawer-header h2{font-size:25px}
.drawer-summary h3{font-size:24px;font-weight:700;overflow-wrap:anywhere}
.drawer-summary{flex-wrap:wrap}
.drawer-sub,.detail-score small,.feature small{font-size:14px;color:#526a42}
.detail-score{font-size:32px;font-weight:700;color:#395923}
.feature strong{font-size:18px;font-weight:700;color:#3b5b29}
.timeline-heading{flex-wrap:wrap;gap:10px}
.timeline-heading h3{font-size:18px;font-weight:700}
.timeline-heading span{font-size:14px;color:#526a42}
.evidence-top,.evidence-top time{font-size:14px;font-weight:600;color:#526b40}
.evidence-top{flex-wrap:wrap;align-items:flex-start}
.role-trigger{color:#91451b}.role-corroborating{color:#44632d}
.evidence-action{font-size:17px;font-weight:700;color:#365323}
.evidence-reason{font-size:16px;color:#4b603b;line-height:1.9}
.evidence-card details summary{font-size:14px;font-weight:600;color:#4a6635;padding:6px 0}
.drawer-note{font-size:14px;color:#4c6637;line-height:1.9}
.auth-card{width:560px;padding:36px}
.auth-card h1{font-size:29px;font-weight:700}
.auth-card>p{font-size:16px;color:#4f6043}
.auth-card>small{font-size:14px;color:#566a47}
.form-stack{gap:19px}
.form-stack label{font-size:16px;font-weight:600;color:#3f5831}
.form-stack input,.form-stack select,.form-stack textarea{font-size:16px;font-weight:500;line-height:1.7;min-height:46px;color:#293f23}
.form-stack input::placeholder,.form-stack textarea::placeholder,.search input::placeholder{color:#68775e;opacity:1}
.form-stack small{font-size:14px;color:#536b40}
.form-stack button,.button,.button-row button{font-size:16px;font-weight:600;min-height:46px;color:#395d23}
.form-stack p[role=status],.form-message{font-size:15px;font-weight:600;color:#795b21}
.scope-note,.case-summary{font-size:15px;color:#415f2f}
.scope-note{padding:15px 18px}
.management>h2{font-size:25px}
.management>p{font-size:16px;color:#4a603b}
.management h3,.case-editor h3{font-size:19px;font-weight:700;color:#385524}
.notice{font-size:15px;color:#70591f;line-height:1.9}
.result-box,.record-card{font-size:16px;color:#3c562c}
.record-card small,.record-card p,.management details{font-size:14px;color:#536a41}
.record-actions{flex-wrap:wrap}
.record-actions button{font-size:14px;font-weight:600;padding:9px 12px;min-height:40px;color:#45632f}
.case-editor p,.history-entry,.history-entry p{font-size:15px;color:#4e653b;line-height:1.9}
.history-entry strong{color:#34531f}
.history-entry small,.source-label{font-size:14px;color:#52693f}
.form-grid>*{min-width:0}
@media(max-width:1440px){
  .content-grid{grid-template-columns:minmax(0,1fr)}
  .right-column{grid-template-columns:1fr 1fr}
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-heading{gap:20px}.heading-meta{display:none}
}
@media(max-width:900px){
  .sidebar{width:220px;padding:24px 16px}.shell{margin-left:220px}
  .brand{font-size:21px}.brand small{font-size:10px}
  main{padding:24px 20px}.topbar{padding:16px 20px}
  .right-column{grid-template-columns:1fr}.method-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .sidebar{width:100%;padding:20px}.shell{margin-left:0}
  .sidebar .nav-item{font-size:15px;flex:1 0 40%;padding:10px;min-height:44px}
  .brand{font-size:24px}.brand small{font-size:11px}
  main{padding:24px 16px}.topbar{padding:14px 16px}
  .breadcrumb,.topbar select,.text-button{font-size:15px}
  .stats-grid{grid-template-columns:minmax(0,1fr)}
  .stat-number{font-size:40px}.stat-card{padding:22px}
  h1{font-size:28px}.page-heading p{font-size:16px}
  .segmented button{font-size:14px;padding:8px 10px}
  .search{display:flex;width:100%}.search input{width:100%;font-size:16px}
  .panel-heading h2{font-size:20px}
  .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .drawer-summary h3{font-size:22px}.drawer-header h2{font-size:23px}
  .auth-card{padding:26px}.auth-card h1{font-size:25px}
  .auth-screen{padding:16px;align-items:safe center}
  .evidence-card{padding:16px}.timeline-event{gap:10px}
  .footer{font-size:14px}
}
