/* 案例库列表页 + 案例详情页 */

/* ---------- 列表页 ---------- */
.lhead{background:var(--yellow);color:#141414;border-bottom:2px solid var(--line);padding:36px 0 26px}
.lhead h1{font:900 clamp(30px,4.6vw,52px)/1.1 "Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:-.04em}
.lhead p{margin-top:8px;font-size:16px}
.lhead .sb{max-width:640px;margin-top:20px}
.filters{border-bottom:2px solid var(--line);background:var(--card)}
.filters .wrap{display:flex;flex-direction:column;gap:10px;padding-top:16px;padding-bottom:16px}
.frow{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.frow .fl{font:700 11px var(--mono);letter-spacing:.08em;color:var(--muted);width:44px;flex:none}
.frow .pill{padding:4px 12px;font-size:13.5px;border-width:1.5px}
.frow select{border:1.5px solid var(--line);border-radius:999px;padding:4px 10px;background:var(--card);font:600 13.5px var(--sans)}
.count{font:700 13px var(--mono);color:var(--muted);padding:18px 0 4px;display:flex;justify-content:space-between;gap:10px}
.count button{font:700 13px var(--mono);text-decoration:underline}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;padding:10px 0 40px}
.cc{display:flex;flex-direction:column;gap:8px;padding:18px}
.cc .top2{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.cc .nm{font:900 19px/1.3 "Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:-.02em}
.cc .money{font:22px var(--black);white-space:nowrap}
.cc .money small{font:700 11px var(--mono);color:var(--muted)}
.cc .money.neg{font:700 12px var(--mono);color:#d93a3f;border:1.5px solid #d93a3f;border-radius:999px;padding:1px 8px}
.cc .money.na{font:700 12px var(--mono);color:var(--muted)}
.cc .one{font-size:14px;color:var(--ink2);flex:1}
.cc .m{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.empty{padding:60px 0;text-align:center;color:var(--muted)}

/* ---------- 网站地图 ---------- */
.catnav{position:sticky;top:62px;z-index:20;background:var(--card);border-bottom:2px solid var(--line)}
.catnav .wrap{display:flex;gap:8px;overflow-x:auto;padding-top:10px;padding-bottom:10px;scrollbar-width:none}
.catnav .wrap::-webkit-scrollbar{display:none}
.catnav .pill{padding:4px 12px;font-size:13.5px;border-width:1.5px;flex:none}
.cat{padding:28px 0 6px;scroll-margin-top:120px}
.cat h2{font:900 26px "Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:-.03em}
.cat>p{color:var(--muted);font-size:14px;margin-top:2px}
.sgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;padding:14px 0 10px}
.site{display:flex;flex-direction:column;gap:8px;padding:18px}
.site .hd{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.site .nm{font:900 19px/1.3 "Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif}
.site .nm i{font-style:normal;font-size:13px;margin-left:4px}
.site .host{font:500 11.5px var(--mono);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:45%}
.site .what{font-size:14.5px;font-weight:600}
.site dl{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;font-size:13px;color:var(--ink2)}
.site dt{font:700 11px var(--mono);color:var(--muted);padding-top:2px;white-space:nowrap}
.site .m{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}
.note{font-size:13px;color:var(--muted);padding:10px 0 30px}

/* ---------- 详情页 ---------- */
.crumb{font:700 13px var(--mono);padding:18px 0 0;display:flex;justify-content:space-between;gap:10px}
.crumb a:hover{text-decoration:underline}
.dhead{padding:16px 0 22px}
.dhead .m{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.dhead h1{font:900 clamp(26px,4vw,44px)/1.2 "Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:-.035em}
.dhead .sub{margin-top:10px;font-size:17px;color:var(--ink2)}
.dgrid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:22px;align-items:start;padding-bottom:30px}
.dgrid>.left{position:sticky;top:78px;display:flex;flex-direction:column;gap:14px}
.money-box{background:var(--yellow);color:#141414}
.money-box .lab{color:#141414;opacity:.65}
.money-box .big{font:44px/1.05 var(--black);letter-spacing:-.03em;margin:6px 0}
.money-box .big small{font:700 14px var(--mono);opacity:.7}
.money-box .txt{font-size:14px}
.money-box.neg{background:#ffd9d9}

.yt{position:relative;aspect-ratio:16/9;border:2px solid var(--line);border-radius:14px;overflow:hidden;background:#141414;cursor:pointer;color:#fff}
.yt img{width:100%;height:100%;object-fit:cover;display:block;opacity:.85;transition:opacity .15s}
.yt:hover img{opacity:1}
.yt .play{position:absolute;inset:0;display:grid;place-items:center}
.yt .play span{background:var(--yellow);color:#141414;border:2.5px solid #141414;border-radius:999px;padding:10px 20px;font:700 15px var(--sans);box-shadow:4px 4px 0 #141414}
.yt .note{position:absolute;left:10px;bottom:10px;font:700 11px var(--mono);background:rgba(0,0,0,.65);padding:3px 8px;border-radius:6px}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt.loading .play span::after{content:" …"}
.yt .blocked{display:none;position:absolute;inset:0;background:rgba(20,20,20,.92);padding:20px;flex-direction:column;justify-content:center;gap:8px;text-align:left}
.yt.blocked .blocked{display:flex}
.yt.blocked .play,.yt.blocked .note{display:none}
.yt .blocked b{font-size:17px}
.yt .blocked p{font-size:14px;opacity:.85}
.yt .blocked a{color:var(--yellow);font:700 13px var(--mono);text-decoration:underline}

.links{list-style:none;display:flex;flex-direction:column;gap:6px}
.links a{display:flex;gap:8px;align-items:baseline;font-size:14px}
.links a:hover span{text-decoration:underline}
.links i{font-style:normal;font:700 11px var(--mono);color:var(--muted);flex:none}

.sec{padding:16px 0;border-top:1px solid var(--hair)}
.sec:first-child{border-top:0;padding-top:0}
.sec h2{font:700 12px var(--mono);letter-spacing:.08em;color:var(--muted);margin-bottom:6px}
.sec .v{font-size:15.5px;line-height:1.75}
.sec ol,.sec ul{padding-left:1.3em;display:flex;flex-direction:column;gap:6px;font-size:15px;line-height:1.7}
.sec b{background:linear-gradient(transparent 60%,var(--yellow) 60%);color:var(--ink)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .sec b{background:none;color:var(--yellow)}}

.pn{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:10px 0 30px}
.pn a{padding:14px 16px}
.pn .k{font:700 11px var(--mono);color:var(--muted)}
.pn .t{font-weight:700}
.pn a:last-child{text-align:right}
.joinbar{display:flex;align-items:center;gap:18px;margin-bottom:36px;background:var(--pink);color:#141414}
.joinbar h3{font:900 20px "Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif}

@media (max-width:860px){
  .dgrid{grid-template-columns:1fr}
  .dgrid>.left{position:static}
  .pn{grid-template-columns:1fr}
  .pn a:last-child{text-align:left}
  .joinbar{flex-direction:column;text-align:center}
  .frow .fl{width:100%}
}

/* 失败复盘卡（案例库「失败复盘」筛选） */
.fc{display:flex;flex-direction:column;gap:10px;padding:18px}
.fc .top2{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.fc .nm{font:900 18px/1.3 "Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:-.02em}
.fc .cause{flex:none;font:700 12px var(--mono);color:#d93a3f;border:1.5px solid #d93a3f;border-radius:999px;padding:1px 8px;white-space:nowrap}
.fc dl{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;margin:0;font-size:14px;flex:1}
.fc dt{font:700 12px/1.9 var(--mono);color:var(--muted)}
.fc dd{margin:0;color:var(--ink2)}
.fc .m{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.fc .from{margin-left:auto;font:700 13px var(--mono);text-decoration:underline}

/* 未核实收入（cred=red） */
.cc .money.unv{color:var(--muted)}
.money-box .unv{font:700 12.5px/1.5 var(--mono);margin:0 0 8px;padding:6px 8px;border:1.5px dashed #141414;opacity:.8}

/* 打法页 */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(440px,1fr));gap:16px;padding:16px 0 40px}
@media (max-width:520px){.pgrid{grid-template-columns:1fr}}
.play{padding:20px;display:flex;flex-direction:column;gap:12px;scroll-margin-top:90px}
.play[hidden]{display:none}
.play .ph{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.play h2{font:900 21px/1.3 "Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:-.02em;margin:0}
.play .gist{margin:0;font-size:15px;font-weight:700}
.cnb{flex:none;font:700 12px var(--mono);border:2px solid #141414;border-radius:999px;padding:2px 10px;color:#141414;white-space:nowrap}
.cnb.ok{background:var(--mint)}.cnb.adapt{background:var(--yellow)}.cnb.hard{background:#ffd9d9}
.play .meta{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:14px}
.play .meta dt{font:700 12px/1.9 var(--mono);color:var(--muted)}.play .meta dd{margin:0}
.play .st.ok{color:var(--green);font-weight:700}.play .st.warn{color:var(--amber);font-weight:700}
.play .steps{margin:0;padding-left:22px;font-size:14.5px;line-height:1.65}
.play .steps li{margin:4px 0}
.play a.ref{text-decoration:underline;text-underline-offset:2px;font-weight:700}
.play .cnbox{background:var(--mint);color:#141414;border:2px solid #141414;border-radius:10px;padding:10px 12px;font-size:14px}
.play .cnbox b,.play .risk b{display:block;font:700 12px var(--mono);margin-bottom:2px}
.play .risk{margin:0;font-size:14px;color:var(--ink2);border-left:3px solid #d93a3f;padding-left:10px}
.play .used{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.play .used .fl{font:700 12px var(--mono);color:var(--muted);margin-right:4px}
.play .used a.tagc:hover{border-color:var(--line)}

/* AI 工具箱 */
.tgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:12px 0 8px;align-items:start}
@media (max-width:760px){.tgrid{grid-template-columns:1fr}}
.tcol{display:flex;flex-direction:column;gap:12px}
.tcol[hidden]{display:none}
.tcol h3{font:700 12px var(--mono);color:var(--muted);letter-spacing:.06em}
.tool{padding:16px;display:flex;flex-direction:column;gap:9px;scroll-margin-top:120px}
.tool[hidden]{display:none}
.tool:target{outline:3px solid var(--pink);outline-offset:2px}
.tool .th{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.tool .nm{font:900 18px/1.3 "Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif}
.tool .nm:hover{text-decoration:underline}
.acc{flex:none;font:700 11.5px var(--mono);border:2px solid #141414;border-radius:999px;padding:1px 8px;color:#141414;white-space:nowrap}
.acc.cn{background:var(--mint)}.acc.vpn{background:#e9e6dc}.acc.part{background:var(--yellow)}
.tool .what{margin:0;font-size:14.5px}
.tool dl{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;margin:0;font-size:13.5px}
.tool dt{font:700 12px/1.8 var(--mono);color:var(--muted)}.tool dd{margin:0;color:var(--ink2)}
.tool .tip{margin:0;font-size:14px;background:var(--amber-soft);border-radius:8px;padding:8px 10px}
.tool .tip b{display:block;font:700 12px var(--mono);margin-bottom:2px}
.tool .alt,.tool .used{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13.5px}
.tool .alt a{font-weight:700;text-decoration:underline;text-underline-offset:2px}
.tool .fl{font:700 12px var(--mono);color:var(--muted);margin-right:2px}
.tool .pl{font:700 13px var(--mono);text-decoration:underline}

/* 404 */
.nf{padding:60px 0 80px}
.nfbox{max-width:560px;margin:0 auto;padding:36px 28px;text-align:center}
.nfbox .code{font:64px/1 var(--black);color:var(--pink);-webkit-text-stroke:2px var(--line)}
.nfbox h1{font:900 26px "Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;margin:14px 0 6px}
.nfbox p{color:var(--muted)}
.nfl{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:18px}
