:root{
  --bg:#f7f9f8; --card:#fff; --text:#1c2b24; --muted:#5d7268; --line:#e2eae5;
  --brand:#0b7a4b; --brand-soft:#e6f4ec; --tag:#f0e9ff; --tag-text:#5b3ec4;
}
@media (prefers-color-scheme:dark){:root{
  --bg:#0e1512; --card:#16211b; --text:#e7efea; --muted:#9db3a8; --line:#25342c;
  --brand:#3ddc8f; --brand-soft:#173026; --tag:#2a2340; --tag-text:#b7a5ff;
}}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;background:var(--bg);color:var(--text);line-height:1.65}
a{color:var(--brand)}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.small{font-size:.8rem;color:var(--muted)}
kbd{border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;padding:0 5px;font-size:.75em;background:var(--card)}

.site-header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;gap:18px;height:56px}
.brand{font-weight:700;text-decoration:none;color:var(--text);display:flex;align-items:center;gap:8px;font-size:.95rem}
.brand-mark{background:var(--brand);color:#fff;border-radius:8px;padding:2px 7px;font-size:.8rem;letter-spacing:.5px}
@media (prefers-color-scheme:dark){.brand-mark{color:#08130d}}
.main-nav{display:flex;gap:16px;margin-left:auto;font-size:.9rem}
.main-nav a{text-decoration:none;color:var(--muted)}
.main-nav a:hover{color:var(--brand)}
.search-trigger{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--card);color:var(--muted);border-radius:9px;padding:7px 12px;font-size:.88rem;cursor:pointer}
.search-trigger:hover{border-color:var(--brand);color:var(--brand)}
.search-trigger.big{width:100%;max-width:560px;justify-content:flex-start;padding:13px 18px;font-size:1rem;border-radius:12px}
@media (max-width:720px){.main-nav{display:none}}

.hero{background:linear-gradient(180deg,var(--brand-soft),transparent);padding:56px 0 30px;text-align:center}
.hero h1{margin:0 0 10px;font-size:2.1rem}
.hero-sub{color:var(--muted);max-width:640px;margin:0 auto 22px}
.hero-search{display:flex;justify-content:center}
.hero-stats{margin-top:18px;color:var(--muted);font-size:.9rem}
.hero-stats strong{color:var(--brand)}

.section{padding:34px 20px}
.section h2{font-size:1.35rem;margin:0 0 18px}
.h2-sub{font-size:.85rem;color:var(--muted);font-weight:400;margin-left:8px}

.path-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.path-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.path-card h3{margin:6px 0 4px;font-size:1.02rem}
.path-card p{margin:0 0 10px;color:var(--muted);font-size:.88rem}
.path-icon{font-size:1.5rem}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-block;background:var(--brand-soft);color:var(--brand);text-decoration:none;border-radius:99px;padding:3px 12px;font-size:.83rem}
.chip:hover{filter:brightness(.95)}

.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.cat-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:13px 15px;text-decoration:none;display:flex;flex-direction:column;gap:2px;transition:border-color .15s}
.cat-card:hover{border-color:var(--brand)}
.cat-zh{color:var(--text);font-weight:600;font-size:.95rem}
.cat-en{color:var(--muted);font-size:.76rem}
.cat-count{color:var(--brand);font-size:.78rem;margin-top:4px}

.about-llm{background:var(--card);border:1px solid var(--line);border-radius:14px;margin-bottom:40px}
.about-llm ul{margin:8px 0 0;padding-left:20px;color:var(--muted)}
.about-llm li{margin:4px 0}
.about-llm a{color:var(--brand)}
.codeblock{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px 16px;overflow-x:auto;font-size:.83rem;line-height:1.7;margin:12px 0}
.codeblock code{background:transparent;padding:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--text)}

.breadcrumb{padding-top:22px;color:var(--muted);font-size:.85rem}
.breadcrumb span{margin:0 4px}
.cat-page{padding-top:10px}
.cat-header{border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:20px}
.cat-header h1{margin:0 0 6px;font-size:1.6rem}
.cat-en-inline{color:var(--muted);font-size:.95rem;font-weight:400}
.cat-desc{margin:0 0 8px;color:var(--muted);max-width:760px}
.cat-meta{margin:0;color:var(--muted);font-size:.85rem}

.entry-list{list-style:none;margin:0;padding:0}
.entry{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin-bottom:10px}
.entry-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.entry-name{font-weight:650;text-decoration:none;font-size:1.02rem}
.entry-name:hover{text-decoration:underline}
.tag{background:var(--tag);color:var(--tag-text);border-radius:99px;padding:1px 9px;font-size:.72rem}
.anchor-link{color:var(--muted);text-decoration:none;font-size:.85rem;opacity:0;margin-left:2px}
.entry:hover .anchor-link{opacity:.7}
.entry:target{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}
.entry-desc{margin:5px 0 0;color:var(--muted);font-size:.9rem}
.entry-desc a{color:var(--brand)}
.entry-children{margin:8px 0 0;padding-left:18px;color:var(--muted);font-size:.86rem}
.entry-children li{margin:3px 0}
.entry code{background:var(--brand-soft);padding:0 4px;border-radius:4px;font-size:.85em}

.pager{display:flex;justify-content:space-between;gap:10px;margin-top:26px;padding-top:16px;border-top:1px solid var(--line);font-size:.9rem;flex-wrap:wrap}
.pager a{text-decoration:none}

.site-footer{border-top:1px solid var(--line);margin-top:30px;padding:26px 0 40px;color:var(--muted);font-size:.87rem}
.site-footer p{margin:6px 0}
.notfound{padding-top:70px;text-align:center}

.search-overlay{position:fixed;inset:0;z-index:50;background:rgba(10,20,15,.45);backdrop-filter:blur(3px);display:flex;justify-content:center;padding:12vh 16px 16px}
.search-overlay[hidden]{display:none}
.search-panel{background:var(--card);border:1px solid var(--line);border-radius:16px;width:100%;max-width:640px;height:fit-content;max-height:72vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.25)}
#search-input{border:none;outline:none;background:transparent;color:var(--text);font-size:1.05rem;padding:16px 20px;border-bottom:1px solid var(--line)}
.search-results{overflow-y:auto;padding:8px 12px}
.search-results .sr-empty{color:var(--muted);padding:18px 8px;text-align:center;font-size:.9rem}
.sr-item{display:block;padding:9px 10px;border-radius:10px;text-decoration:none}
.sr-item:hover,.sr-item.active{background:var(--brand-soft)}
.sr-name{font-weight:600;color:var(--text);font-size:.95rem}
.sr-name mark{background:transparent;color:var(--brand)}
.sr-cat{font-size:.74rem;color:var(--muted);margin-left:8px}
.sr-desc{display:block;color:var(--muted);font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.search-hint{margin:0;padding:8px 16px;border-top:1px solid var(--line);color:var(--muted);font-size:.75rem;text-align:center}
