/* ======================================================================
   字体版权风险自查 · 独立设计（活字字帖 / 印章主题）
   浅色 = 宣纸米黄 + 墨色 + 朱砂印章；深色 = 深褐纸 + 暖光
   ====================================================================== */
.flc{
  --ink:#2b2118; --sub:#6f6152; --faint:#a89a89;
  --bg:#f6f1e6; --card:#fffdf7; --card2:#f1e9da; --line:#e2d6c2; --line2:#ece2d2;
  --pri:#9a3412; --pri-2:#c2570f; --pri-soft:#f7ead9; --pri-ink:#7c2d12;
  --seal:#b91c1c; --seal-soft:#fbe9e7;
  --ok:#15803d; --ok-soft:#e9f5ec;
  --warn:#b45309; --warn-soft:#fdf3e0;
  --bad:#b91c1c; --bad-soft:#fbe9e9;
  --r:6px;
  --shadow:0 1px 0 rgba(43,33,24,.06),0 10px 26px rgba(43,33,24,.08);
  color:var(--ink);
  font-family:"Songti SC",STSong,SimSun,-apple-system,"PingFang SC","Microsoft YaHei",serif;
  font-size:15px; line-height:1.8;
  background:
    repeating-linear-gradient(0deg,transparent 0 33px,rgba(154,52,18,.045) 33px 34px),
    radial-gradient(760px 360px at 92% -120px, rgba(185,28,28,.05), transparent 60%),
    var(--bg);
  padding:0 16px 56px;
}
:root[data-theme="dark"] .flc{
  --ink:#ece3d3; --sub:#b3a691; --faint:#7d715d;
  --bg:#191510; --card:#221c15; --card2:#2a231a; --line:#3b3226; --line2:#312a20;
  --pri:#fb923c; --pri-2:#fdba74; --pri-soft:rgba(251,146,60,.12); --pri-ink:#fed7aa;
  --seal:#f87171; --seal-soft:rgba(248,113,113,.12);
  --ok:#4ade80; --ok-soft:rgba(74,222,128,.10);
  --warn:#fbbf24; --warn-soft:rgba(251,191,36,.10);
  --bad:#f87171; --bad-soft:rgba(248,113,113,.12);
  --shadow:0 1px 0 rgba(0,0,0,.4),0 12px 30px rgba(0,0,0,.45);
  background:
    repeating-linear-gradient(0deg,transparent 0 33px,rgba(251,146,60,.05) 33px 34px),
    var(--bg);
}
.flc *{box-sizing:border-box;}
.flc b{font-weight:700;}
.flc-wrap{max-width:1080px;margin:0 auto;}

/* ---------- 首屏：字帖样张 ---------- */
.flc-hero{
  margin-top:22px;display:flex;align-items:stretch;gap:0;
  border:1px solid var(--line);border-radius:var(--r);overflow:hidden;
  background:var(--card);box-shadow:var(--shadow);
}
.flc-aa{
  flex:0 0 150px;display:flex;align-items:center;justify-content:center;
  background:var(--pri);color:#fff9f0;
  font-size:64px;font-weight:900;letter-spacing:-2px;
  font-family:Georgia,"Times New Roman",serif;
  position:relative;
}
.flc-aa::after{content:"Aa";position:absolute;right:8px;bottom:6px;font-size:16px;opacity:.4;}
:root[data-theme="dark"] .flc-aa{color:#2a1206;}
.flc-hero-body{padding:22px 26px;flex:1;}
.flc-hero h1{margin:0 0 6px;font-size:clamp(23px,3.4vw,31px);font-weight:900;letter-spacing:.02em;}
.flc-hero h1 span{color:var(--seal);}
.flc-hero p{margin:0;color:var(--sub);font-size:14.5px;max-width:720px;}
.flc-hero p em{font-style:normal;color:var(--pri-ink);font-weight:700;}

/* ---------- 工作台 ---------- */
.flc-desk{display:grid;grid-template-columns:1.05fr .95fr;gap:16px;margin-top:18px;}
@media (max-width:920px){.flc-desk{grid-template-columns:1fr;}.flc-aa{flex-basis:100px;font-size:44px;}}
.flc-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:18px 20px;}
.flc-card h2{margin:0 0 10px;font-size:16px;font-weight:900;letter-spacing:.04em;display:flex;align-items:center;gap:8px;}
.flc-card h2::before{content:"";width:4px;height:16px;background:var(--seal);border-radius:2px;}
.flc-tip{font-size:12.5px;color:var(--sub);margin:-4px 0 10px;}
.flc-in{
  width:100%;padding:11px 14px;border-radius:var(--r);border:1px solid var(--line);
  background:var(--card2);color:var(--ink);font-size:15px;outline:none;font-family:inherit;
}
.flc-in:focus{border-color:var(--pri-2);box-shadow:0 0 0 3px var(--pri-soft);}
.flc-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;}
.flc-chip{
  border:1px solid var(--line);background:var(--card2);color:var(--sub);border-radius:3px;
  padding:3px 10px;font-size:12.5px;cursor:pointer;font-family:inherit;transition:all .15s;
}
.flc-chip:hover{border-color:var(--pri-2);color:var(--pri-ink);}
.flc-uses{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;margin-top:12px;}
@media (max-width:560px){.flc-uses{grid-template-columns:1fr;}}
.flc-use{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink);cursor:pointer;user-select:none;
  border:1px dashed var(--line);border-radius:var(--r);padding:6px 10px;background:var(--card);transition:all .15s;}
.flc-use:has(input:checked){border-style:solid;border-color:var(--pri);background:var(--pri-soft);}
.flc-use input{accent-color:var(--pri);width:15px;height:15px;cursor:pointer;}
.flc-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;align-items:center;}
.flc-btn{border:none;border-radius:var(--r);padding:9px 20px;font-size:14px;font-weight:800;cursor:pointer;font-family:inherit;transition:all .15s;}
.flc-btn-go{background:var(--seal);color:#fff;letter-spacing:.06em;}
.flc-btn-go:hover{filter:brightness(1.08);}
.flc-btn-ghost{background:var(--card2);color:var(--pri-ink);border:1px solid var(--line);}
.flc-btn-ghost:hover{border-color:var(--pri-2);}
.flc-msg{margin-top:10px;font-size:13px;min-height:20px;font-weight:700;}
.flc-msg.err{color:var(--bad);}
.flc-msg.ok{color:var(--ok);}

/* ---------- 结果：判定书 ---------- */
.flc-res{display:none;}
.flc-res.show{display:block;}
.flc-verdict{position:relative;border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;background:var(--card2);}
.flc-lvl{display:inline-block;border-radius:3px;padding:2px 12px;font-size:13px;font-weight:900;letter-spacing:.1em;color:#fff;}
.flc-lvl-0{background:var(--ok);}
.flc-lvl-1{background:var(--warn);}
.flc-lvl-2{background:var(--bad);}
.flc-stamp{
  position:absolute;top:10px;right:12px;width:64px;height:64px;border:3px solid var(--seal);border-radius:50%;
  display:flex;align-items:center;justify-content:center;color:var(--seal);font-size:14px;font-weight:900;
  transform:rotate(14deg);letter-spacing:.05em;opacity:.85;text-align:center;line-height:1.2;
}
.flc-kv{margin:12px 0 0;font-size:14px;}
.flc-kv dt{float:left;clear:left;width:76px;color:var(--faint);font-weight:700;}
.flc-kv dd{margin:0 0 6px 84px;color:var(--ink);}
.flc-note{margin-top:10px;font-size:13.5px;color:var(--sub);border-left:3px solid var(--pri);padding:6px 12px;background:var(--pri-soft);border-radius:0 var(--r) var(--r) 0;}
.flc-alt{margin-top:12px;font-size:13.5px;}
.flc-alt .flc-chip{background:var(--card);cursor:default;}
.flc-empty{color:var(--faint);font-size:14px;text-align:center;padding:40px 0;}

/* ---------- SEO 问答 ---------- */
.flc-faq{margin-top:32px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px 24px;box-shadow:var(--shadow);}
.flc-faq h2{margin:0 0 10px;font-size:19px;font-weight:900;}
.flc-faq h3{margin:18px 0 4px;font-size:15.5px;font-weight:800;color:var(--pri-ink);}
.flc-faq p{margin:0;color:var(--sub);font-size:14px;}
.flc-faq p b{color:var(--ink);}

/* ---------- 字库筛选 / 双字体对比 / 风险评分仪表 ---------- */
.flcx-panel{margin-top:16px;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:20px 22px;}
.flcx-head h2{margin:0 0 4px;font-size:18px;font-weight:900;}
.flcx-head p{margin:0 0 14px;color:var(--sub);font-size:13.5px;}
.flcx-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px;}
.flcx-in{flex:1 1 240px;min-width:0;padding:9px 12px;border:1px solid var(--line);border-radius:6px;background:var(--card2);color:var(--ink);font-size:14px;font-family:inherit;}
.flcx-in:focus{outline:2px solid var(--pri-soft);border-color:var(--pri);}
.flcx-lv{display:flex;gap:6px;flex-wrap:wrap;}
.flcx-chip{cursor:pointer;border:1px solid var(--line);background:var(--card2);color:var(--sub);border-radius:999px;padding:5px 12px;font-size:13px;font-family:inherit;}
.flcx-chip.on{background:var(--pri);border-color:var(--pri);color:#fff9f0;font-weight:700;}
:root[data-theme="dark"] .flcx-chip.on{color:#2a1206;}
.flcx-count{color:var(--faint);font-size:12.5px;}
.flcx-tablescroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.flcx-tab{width:100%;border-collapse:collapse;font-size:13.5px;min-width:520px;}
.flcx-tab th,.flcx-tab td{padding:8px 10px;border-bottom:1px solid var(--line2);text-align:left;vertical-align:middle;}
.flcx-tab th{background:var(--card2);color:var(--sub);font-size:12.5px;font-weight:700;white-space:nowrap;}
.flcx-alias{display:block;color:var(--faint);font-size:11.5px;line-height:1.4;}
.flcx-badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;}
.flcx-badge.r0{background:var(--ok-soft);color:var(--ok);}
.flcx-badge.r1{background:var(--warn-soft);color:var(--warn);}
.flcx-badge.r2{background:var(--bad-soft);color:var(--bad);}
.flcx-empty{padding:18px;border:1px dashed var(--line);border-radius:8px;color:var(--sub);text-align:center;font-size:13.5px;}
.flcx-cmp{margin-top:14px;}
.flcx-cmpempty{padding:16px;border:1px dashed var(--line);border-radius:8px;color:var(--sub);font-size:13px;}
.flcx-cmpbody[hidden]{display:none;}
.flcx-cmpgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.flcx-cmpcard{background:var(--card2);border:1px solid var(--line2);border-radius:8px;padding:12px;min-width:0;}
.flcx-cmpcard h3{margin:0 0 4px;font-size:15px;font-weight:900;word-break:break-word;}
.flcx-cmpcard svg{display:block;width:100%;max-width:180px;margin:0 auto;}
.flcx-cmpcard dl{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;margin:6px 0 0;font-size:12.5px;}
.flcx-cmpcard dt{color:var(--faint);}
.flcx-cmpcard dd{margin:0;color:var(--ink);word-break:break-word;}
.flcx-note{color:var(--faint);font-size:12px;line-height:1.6;margin:10px 0 0;}
.flcx-verdict{border-left:3px solid var(--pri);background:var(--pri-soft);padding:9px 12px;border-radius:0 6px 6px 0;font-size:13px;margin-top:10px;}
.flcx-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px;}
.flcx-btn{cursor:pointer;border:1px solid var(--line);background:var(--card2);color:var(--ink);border-radius:6px;padding:7px 14px;font-size:13px;font-family:inherit;}
.flcx-btn:hover{border-color:var(--pri);color:var(--pri-ink);}
.flcx-msg{font-size:12.5px;color:var(--sub);}
.flcx-msg.err{color:var(--bad);}
.flcx-msg.ok{color:var(--ok);}
.flcx-cb{width:18px;height:18px;accent-color:var(--pri);}
@media(max-width:720px){
  .flcx-panel{padding:16px;}
  .flcx-cmpgrid{grid-template-columns:1fr;}
  .flcx-tab{min-width:460px;}
}
