:root{
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
  --bg:#F1F3EE; --paper:#FFFFFF; --ink:#1E2925; --soft:#56645D; --line:#D5DCD5;
  --cap:#7A2E1F; --cap-bg:#F6E9E4;
  --find:#2D6A4C; --find-bg:#E3F0E8;
  --know:#4E5A7A; --know-bg:#E7EAF2;
  --safe:#99561A; --safe-bg:#F8ECDD;
  --step-off:#D9DED8;
  --serif:"LZ Serif","Noto Serif SC","Songti SC","SimSun",serif;
  --sans:-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",sans-serif;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#141A17; --paper:#1D2521; --ink:#E6ECE7; --soft:#A5B2AA; --line:#34413B;
    --cap:#DE937B; --cap-bg:#3A2621;
    --find:#7CC59F; --find-bg:#1F3329;
    --know:#A9B6DA; --know-bg:#232A3A;
    --safe:#E6AA6A; --safe-bg:#3A2A18;
    --step-off:#37433D;
  }
}
:root[data-theme="dark"]{
  --bg:#141A17; --paper:#1D2521; --ink:#E6ECE7; --soft:#A5B2AA; --line:#34413B;
  --cap:#DE937B; --cap-bg:#3A2621;
  --find:#7CC59F; --find-bg:#1F3329;
  --know:#A9B6DA; --know-bg:#232A3A;
  --safe:#E6AA6A; --safe-bg:#3A2A18;
  --step-off:#37433D;
}
html{scroll-padding-top:env(safe-area-inset-top,0px);}
*,*::before,*::after{box-sizing:inherit;}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:18px;line-height:1.75;-webkit-text-size-adjust:100%;}
.wrap{max-width:780px;margin:0 auto;padding:40px 20px 64px;}
.eyebrow{font-size:14px;letter-spacing:.12em;color:var(--cap);margin:0 0 6px;}
h1{font-family:var(--serif);font-weight:700;font-size:clamp(30px,6vw,44px);line-height:1.25;margin:0 0 12px;}
.lede{color:var(--soft);margin:0 0 26px;max-width:36em;}
.ask{background:var(--paper);border:2px solid var(--ink);border-radius:14px;display:flex;align-items:center;padding:6px 6px 6px 18px;}
.ask input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font:inherit;font-size:20px;padding:12px 0;outline:none;}
.ask input::placeholder{color:var(--soft);}
.ask button{border:0;background:var(--ink);color:var(--paper);font:inherit;font-size:17px;border-radius:10px;padding:10px 18px;cursor:pointer;}
button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--cap);outline-offset:2px;}
.browse{margin-top:30px;}
.browse h2{font-size:15px;font-weight:600;color:var(--soft);margin:18px 0 8px;letter-spacing:.04em;}
.chips{display:flex;flex-wrap:wrap;gap:8px;}
.chip{border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;font-size:16px;border-radius:999px;padding:6px 15px;cursor:pointer;}
.chip:hover{border-color:var(--ink);}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink);}
.chip.safe{border-color:var(--safe);color:var(--safe);}
.chip.safe[aria-pressed="true"]{background:var(--safe);color:var(--paper);}
.safebar{margin-top:22px;background:var(--safe-bg);border-radius:8px;padding:14px 18px;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;}
.safebar p{margin:0;font-size:16px;color:var(--ink);}
.safebar button{border:0;background:var(--safe);color:#fff;font:inherit;font-size:15px;border-radius:8px;padding:6px 14px;cursor:pointer;}
.view{margin-top:34px;}
.back{border:0;background:none;color:var(--soft);font:inherit;font-size:15px;padding:0;cursor:pointer;margin-bottom:10px;}
.back:hover{color:var(--ink);}
/* home topic list */
.tlist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;}
.tcard{background:var(--paper);border-radius:8px;padding:16px 18px;cursor:pointer;border:1px solid transparent;text-align:left;font:inherit;color:inherit;width:100%;height:100%;}
.tcard:hover{border-color:var(--line);}
.tcard b{display:block;font-family:var(--serif);font-size:19px;margin-bottom:4px;}
.tcard span{font-size:15px;color:var(--soft);}
.tcard.safe b{color:var(--safe);}
/* overview */
.overview{background:var(--paper);border-radius:8px;padding:24px 24px 18px;border-top:5px solid var(--cap);}
.overview.safe{border-top-color:var(--safe);}
.overview .tag{font-size:13px;letter-spacing:.1em;color:var(--cap);margin:0 0 4px;}
.overview.safe .tag{color:var(--safe);}
.overview h2{font-family:var(--serif);font-size:26px;line-height:1.35;margin:0 0 12px;}
.overview p{margin:0 0 12px;}
.overview .count{font-size:15px;color:var(--soft);}
details.gloss{margin-top:6px;border-top:1px solid var(--line);padding-top:10px;}
details.gloss summary{cursor:pointer;font-size:16px;font-weight:600;}
details.gloss dl{margin:10px 0 0;font-size:16px;}
details.gloss dt{font-weight:600;margin-top:8px;}
details.gloss dd{margin:0;color:var(--soft);}
.sub{font-size:15px;color:var(--soft);margin:26px 0 4px;border-top:2px solid var(--ink);padding-top:12px;}
/* entries */
.list{list-style:none;margin:0;padding:0;}
.card{background:var(--paper);border-radius:6px;margin:14px 0;padding:20px 22px 16px;border-left:6px solid var(--line);}
.card.find{border-left-color:var(--find);} .card.know{border-left-color:var(--know);} .card.safe{border-left-color:var(--safe);}
.ktag{display:inline-block;font-size:13.5px;padding:0 10px;border-radius:4px;margin-bottom:8px;}
.ktag.find{background:var(--find-bg);color:var(--find);} .ktag.know{background:var(--know-bg);color:var(--know);} .ktag.safe{background:var(--safe-bg);color:var(--safe);}
.card h3{font-family:var(--serif);font-size:21px;line-height:1.4;margin:0 0 8px;}
.one{margin:0 0 14px;}
.ladder{display:flex;align-items:flex-end;gap:14px;margin:0 0 4px;}
.steps{display:flex;align-items:flex-end;gap:3px;height:32px;flex:none;}
.steps span{width:11px;background:var(--step-off);border-radius:2px 2px 0 0;}
.steps span.on{background:var(--cap);}
.steps span:nth-child(1){height:20%;}.steps span:nth-child(2){height:40%;}.steps span:nth-child(3){height:60%;}.steps span:nth-child(4){height:80%;}.steps span:nth-child(5){height:100%;}
.lvl{font-size:15px;line-height:1.5;}
.lvl b{font-weight:600;}
.lvl small{display:block;color:var(--soft);font-size:14px;}
.row{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;margin-top:12px;}
.more{border:0;background:none;color:var(--ink);font:inherit;font-size:16px;padding:4px 0;cursor:pointer;text-decoration:underline;text-underline-offset:4px;}
.orig{font-size:16px;color:var(--cap);text-decoration:none;font-weight:600;}
.orig:hover{text-decoration:underline;}
.nolink{font-size:14px;color:var(--soft);}
.detail{margin-top:8px;border-top:1px solid var(--line);padding-top:10px;}
.detail h4{font-size:16px;margin:12px 0 2px;font-weight:600;}
.detail p{margin:0;font-size:17px;}
.src{font-size:15px;color:var(--soft);word-break:break-word;}
.check{display:inline-block;margin-top:6px;font-size:13.5px;padding:0 8px;border-radius:4px;border:1px solid var(--line);color:var(--soft);}
.term{border:0;background:none;padding:0;font:inherit;color:inherit;border-bottom:1.5px dotted var(--soft);cursor:help;}
.def{display:block;margin:6px 0 4px;padding:8px 12px;background:var(--bg);border-radius:6px;font-size:15.5px;color:var(--ink);line-height:1.6;}
.empty{background:var(--paper);border-radius:8px;padding:22px 24px;}
.empty p{margin:0 0 10px;}
.card.official{border-left-color:var(--know);}
.ktag.official{background:var(--know-bg);color:var(--know);}
.overview.official{border-top-color:var(--know);}
.overview.official .tag{color:var(--know);}
#official{margin-top:56px;}
#official > h2.sec{font-family:var(--serif);font-size:15px;letter-spacing:.12em;color:var(--know);margin:0 0 10px;font-weight:600;}
.panel{background:var(--paper);border-radius:8px;padding:22px 24px;}
.panel h2{font-family:var(--serif);font-size:22px;margin:0 0 8px;}
.panel p{margin:0 0 12px;}
.links{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin:14px 0 6px;}
.links a{display:block;background:var(--bg);border-radius:8px;padding:10px 14px;color:var(--ink);text-decoration:none;font-size:16px;}
.links a:hover{outline:1.5px solid var(--line);}
.links a small{display:block;color:var(--soft);font-size:13.5px;word-break:break-all;}
.thinking{color:var(--soft);}
.hint{font-size:15px;color:var(--soft);margin:10px 0 0;}
.topbar{padding:0 0 14px;margin-bottom:6px;border-bottom:1px solid var(--line);}
.topbar .brand{border:0;background:none;padding:0;font-family:var(--serif);font-weight:700;font-size:18px;color:var(--ink);cursor:pointer;}
.hero{margin:0 0 18px;}
.hero img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:6px;}
.hero .ph{width:100%;aspect-ratio:16/9;border:2px dashed var(--line);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--soft);font-size:15px;background:var(--bg);}
dl.comp{margin:4px 0 16px;display:grid;grid-template-columns:minmax(110px,170px) 1fr;border-top:1px solid var(--line);}
dl.comp dt,dl.comp dd{margin:0;padding:10px 8px;border-bottom:1px solid var(--line);font-size:16px;line-height:1.65;}
dl.comp dt{font-weight:600;background:var(--bg);}
@media (max-width:520px){dl.comp{grid-template-columns:1fr;}dl.comp dt{border-bottom:0;padding-bottom:2px;}dl.comp dd{padding-top:2px;}}
footer{margin-top:52px;font-size:15px;color:var(--soft);border-top:1px solid var(--line);padding-top:18px;}
footer h2{font-family:var(--serif);font-size:18px;color:var(--ink);margin:0 0 6px;}
@media (max-width:520px){
  body{font-size:17px;}
  .wrap{padding:28px 16px 48px;}
  .ask input{font-size:18px;}
  .overview{padding:20px 18px 14px;}
  .card{padding:18px 16px 14px;}
}
@media (prefers-reduced-motion:no-preference){
  .detail,.def{animation:open .18s ease-out;}
  @keyframes open{from{opacity:0;transform:translateY(-4px);}to{opacity:1;transform:none;}}
}

/* ===== 正式版补充 ===== */
@font-face{font-family:"LZ Serif";src:url("../fonts/lz-serif.woff") format("woff");font-weight:600 900;font-display:swap;}
a.chip,a.tcard,.safebar a,.back,.topbar .brand{text-decoration:none;}
a.chip{display:inline-block;}
a.tcard{display:block;}
.safebar a{background:var(--safe);color:#fff;font-size:15px;border-radius:8px;padding:6px 14px;}
.back{display:inline-block;}
.topbar .brand{display:inline-block;}
.card h3 a{color:inherit;text-decoration:none;}
.card h3 a:hover{text-decoration:underline;text-underline-offset:4px;}
.overview h2 a{color:inherit;text-decoration:none;}
.overview h2 a:hover{text-decoration:underline;text-underline-offset:5px;}
.updated{display:block;font-size:13.5px;color:var(--soft);margin-top:6px;}
.belongs{margin:18px 0 0;font-size:15px;color:var(--soft);}
.belongs .chips{margin-top:6px;}

.legal{font-size:14px;}
.legal a{color:inherit;}

/* [editor] 网站外观 开始（由编辑后台生成，请在后台修改，不要手改这一段） */
.lz-red{color:#B3261E}.lz-green{color:#23704A}.lz-blue{color:#2C5AA0}.lz-orange{color:#B25E09}
@media (prefers-color-scheme:dark){.lz-red{color:#F2958B}.lz-green{color:#7CC59F}.lz-blue{color:#9DB8EC}.lz-orange{color:#F0B062}}
/* [editor] 网站外观 结束 */
