/* feedeek.com — Neo-Brutalism / 重型无衬线
   刻意避开 Claude 默认审美(暖米底 + 衬线标红 + 数据卡 + 钢印 + 撕裂线 + 等宽)。
   冷底 + 电光靛蓝 + 荧光黄 + 珊瑚 + 硬黑边硬阴影 + 超粗无衬线。 */

:root{
  --bg:#e9eaf2;
  --bg-2:#dfe1ed;
  --paper:#ffffff;
  --ink:#121019;
  --ink-2:#3b3850;
  --indigo:#3826e6;
  --indigo-d:#2a1bc0;
  --lime:#d6fb3c;
  --coral:#ff5a36;
  --sky:#21c7e8;
  --line:#121019;
  --sh:5px 5px 0 var(--ink);
  --sh-lg:8px 8px 0 var(--ink);
  --sh-sm:3px 3px 0 var(--ink);
  --disp:"Space Grotesk","Noto Sans SC",system-ui,sans-serif;
  --sans:"Noto Sans SC",system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;
  --wrap:1200px;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background-color:var(--bg);color:var(--ink);
  background-image:radial-gradient(rgba(18,16,25,.055) 1.3px,transparent 1.3px);
  background-size:22px 22px;
  font-family:var(--sans);font-size:17px;line-height:1.72;font-weight:400;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--ink);text-decoration:none}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
h1,h2,h3,h4{font-family:var(--disp);font-weight:700;line-height:1.08;margin:0;letter-spacing:-.02em}
strong,b{font-weight:700}
.hl-lime{background:var(--lime);box-shadow:.12em 0 0 var(--lime),-.12em 0 0 var(--lime)}
.hl-coral{color:var(--coral)}
.hl-indigo{color:var(--indigo)}

/* ===== 按钮(硬阴影) ===== */
.btn{display:inline-flex;align-items:center;gap:.45em;font-family:var(--disp);font-weight:700;font-size:1rem;cursor:pointer;
  padding:.8rem 1.4rem;min-height:48px;border:2.5px solid var(--ink);background:var(--paper);color:var(--ink);
  box-shadow:var(--sh-sm);transition:transform .1s ease,box-shadow .1s ease}
.btn:hover{transform:translate(-2px,-2px);box-shadow:var(--sh);text-decoration:none}
.btn:active{transform:translate(0,0);box-shadow:1px 1px 0 var(--ink)}
.btn-indigo{background:var(--indigo);color:#fff}
.btn-lime{background:var(--lime);color:var(--ink)}
.btn-coral{background:var(--coral);color:#fff}
.btn-lg{font-size:1.1rem;padding:1rem 1.7rem;min-height:56px}

/* ===== 顶栏 ===== */
.bar{background:var(--indigo);color:#fff;border-bottom:3px solid var(--ink);font-size:.84rem;font-weight:500}
.bar .wrap{display:flex;gap:.8rem;align-items:center;justify-content:center;flex-wrap:wrap;padding:.5rem 24px;text-align:center}
.bar b{background:var(--lime);color:var(--ink);padding:.05em .45em;font-family:var(--disp);font-weight:700;letter-spacing:.02em}
.bar a{color:#fff;text-decoration:underline;text-underline-offset:2px}

.nav{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:3px solid var(--ink)}
.nav-in{display:flex;align-items:center;gap:1.2rem;height:74px}
.brand{display:flex;align-items:center;gap:.6rem;font-family:var(--disp);font-weight:700;font-size:1.5rem;letter-spacing:-.03em}
.brand .blk{width:34px;height:34px;background:var(--lime);border:2.5px solid var(--ink);box-shadow:var(--sh-sm);display:flex;align-items:center;justify-content:center;font-size:1rem;transform:rotate(-3deg)}
.brand small{display:block;font-size:.58rem;letter-spacing:.2em;color:var(--ink-2);font-weight:700;margin-top:-2px}
.nav-links{display:flex;gap:.3rem;margin-left:.8rem}
.nav-links a{padding:.4rem .7rem;font-weight:600;font-size:.96rem;color:var(--ink)}
.nav-links a:hover{background:var(--lime);text-decoration:none}
.nav-links a[aria-current]{background:var(--ink);color:#fff}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:.8rem}
.langpick{position:relative}
.langpick>summary{list-style:none;cursor:pointer;font-weight:600;font-size:.9rem;padding:.4rem .5rem;border:2px solid var(--ink);background:var(--paper)}
.langpick>summary::-webkit-details-marker{display:none}
.langmenu{position:absolute;right:0;top:120%;background:var(--paper);border:2.5px solid var(--ink);box-shadow:var(--sh);padding:.3rem;min-width:140px;z-index:30}
.langmenu a{display:block;padding:.4rem .55rem;font-weight:500}
.langmenu a:hover{background:var(--lime)}

/* ===== HERO ===== */
.hero{padding:54px 0 60px}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center}
.hero-tag{display:inline-block;background:var(--ink);color:var(--lime);font-family:var(--disp);font-weight:700;font-size:.8rem;letter-spacing:.04em;padding:.4rem .8rem;margin-bottom:1.4rem;transform:rotate(-1deg)}
.hero h1{font-size:4.1rem;font-weight:700;letter-spacing:-.035em;margin-bottom:1.3rem}
.hero h1 .mk{background:var(--lime);padding:0 .1em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.hero h1 .ck{color:var(--coral)}
.hero-sub{font-size:1.2rem;font-weight:500;color:var(--ink-2);max-width:27em;margin:0 0 1.9rem;line-height:1.55}
.hero-cta{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1.6rem}
.hero-by{font-size:.94rem;font-weight:500;color:var(--ink-2)}
.hero-by a{font-weight:700;border-bottom:2.5px solid var(--lime)}

/* 邀请徽章(BNB2001,非钢印,色块硬边) */
.invite{margin-top:.4rem;background:var(--paper);border:3px solid var(--ink);box-shadow:var(--sh);padding:1.1rem 1.2rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.invite .iv-l{flex:1;min-width:170px}
.invite .iv-k{font-family:var(--disp);font-weight:700;font-size:.72rem;letter-spacing:.08em;color:var(--ink-2);margin-bottom:.2rem}
.invite .iv-code{font-family:var(--disp);font-weight:700;font-size:1.7rem;letter-spacing:.02em;background:var(--lime);border:2.5px solid var(--ink);padding:.05em .35em;display:inline-block;transform:rotate(-1.5deg)}
.invite .btn{flex:none}

/* HERO 对比模块(色块硬边,非米色账本) */
.compare{background:var(--paper);border:3px solid var(--ink);box-shadow:var(--sh-lg)}
.compare-top{background:var(--ink);color:#fff;padding:.9rem 1.2rem;display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.compare-top .t{font-family:var(--disp);font-weight:700;font-size:1.05rem}
.compare-top .amt{font-family:var(--disp);font-weight:700;color:var(--lime);font-size:1rem}
.compare-body{padding:1.1rem 1.2rem 1.3rem}
.crow{display:grid;grid-template-columns:74px 1fr 76px;align-items:center;gap:.7rem;padding:.55rem 0}
.crow .cn{font-family:var(--disp);font-weight:700;font-size:.92rem}
.crow .cn small{display:block;font-family:var(--sans);font-size:.66rem;font-weight:500;color:var(--ink-2)}
.cbar{height:26px;border:2.5px solid var(--ink);background:var(--bg-2);position:relative;overflow:hidden}
.cbar i{position:absolute;left:0;top:0;height:100%;background:var(--coral);display:block}
.crow .cv{font-family:var(--disp);font-weight:700;font-size:1.02rem;text-align:right}
.crow.win{background:var(--lime);margin:0 -1.2rem;padding:.6rem 1.2rem}
.crow.win .cbar i{background:var(--indigo)}
.crow.win .cn::after{content:"赢";background:var(--ink);color:var(--lime);font-family:var(--disp);font-size:.6rem;padding:.05em .4em;margin-left:.35em;vertical-align:middle}
.compare-foot{border-top:2.5px solid var(--ink);padding:.7rem 1.2rem;font-size:.74rem;font-weight:500;color:var(--ink-2)}
.compare-foot a{font-weight:700;border-bottom:2px solid var(--indigo)}

/* ===== 区块 ===== */
.sec{padding:60px 0;border-top:3px solid var(--ink)}
.sec-lab{display:inline-block;font-family:var(--disp);font-weight:700;font-size:.8rem;letter-spacing:.06em;background:var(--coral);color:#fff;padding:.25rem .7rem;margin-bottom:1.1rem;transform:rotate(-1deg)}
.sec h2{font-size:2.5rem;font-weight:700;letter-spacing:-.03em;margin-bottom:.7rem;max-width:16em}
.sec .dek{font-size:1.12rem;font-weight:500;color:var(--ink-2);max-width:36em;margin:0}

/* 三道:大数字色块 */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:2.2rem}
.gcard{background:var(--paper);border:3px solid var(--ink);box-shadow:var(--sh);padding:1.4rem 1.4rem 1.5rem}
.gcard:nth-child(1){background:#fff}
.gcard:nth-child(2){background:var(--lime)}
.gcard:nth-child(3){background:var(--sky)}
.gcard .gn{font-family:var(--disp);font-weight:700;font-size:3rem;line-height:.9;letter-spacing:-.04em}
.gcard h3{font-size:1.3rem;margin:.7rem 0 .5rem}
.gcard p{font-size:.97rem;font-weight:500;margin:0}

/* 五条通道:卡片色块 */
.chs{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:2rem}
.ch{background:var(--paper);border:3px solid var(--ink);box-shadow:var(--sh);padding:1.3rem 1.4rem}
.ch.full{grid-column:1 / -1;background:var(--indigo);color:#fff}
.ch-h{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem;border-bottom:2.5px solid var(--ink);padding-bottom:.6rem;margin-bottom:.8rem}
.ch.full .ch-h{border-color:#fff}
.ch-name{font-family:var(--disp);font-weight:700;font-size:1.5rem;letter-spacing:-.02em}
.ch-rank{font-family:var(--disp);font-weight:700;font-size:.78rem;background:var(--ink);color:#fff;padding:.1em .5em}
.ch.full .ch-rank{background:var(--lime);color:var(--ink)}
.ch-num{font-family:var(--disp);font-weight:700;font-size:1.15rem}
.ch-num .l{color:var(--coral)}
.ch.full .ch-num .l{color:var(--lime)}
.ch p{font-size:.97rem;font-weight:500;margin:0 0 .7rem}
.ch.full p{color:#eceaff}
.ch-tags{display:flex;flex-wrap:wrap;gap:.45rem}
.ch-tag{font-family:var(--disp);font-weight:700;font-size:.72rem;border:2px solid var(--ink);padding:.18rem .5rem;background:var(--bg)}
.ch.full .ch-tag{border-color:#fff;background:transparent;color:#fff}
.ch.full a{color:var(--lime);font-weight:700;border-bottom:2px solid var(--lime)}

/* 继续读:大列表 */
.reads{margin-top:1.8rem;border:3px solid var(--ink);box-shadow:var(--sh);background:var(--paper)}
.read{display:grid;grid-template-columns:64px 1fr auto;gap:1rem;align-items:center;padding:1.15rem 1.3rem;border-bottom:2.5px solid var(--ink);transition:background .1s}
.read:last-child{border-bottom:none}
.read:hover{background:var(--lime)}
.read .rn{font-family:var(--disp);font-weight:700;font-size:1.8rem;letter-spacing:-.04em}
.read .rt{font-family:var(--disp);font-weight:700;font-size:1.3rem;letter-spacing:-.02em}
.read .rt span{display:block;font-family:var(--sans);font-size:.92rem;font-weight:500;color:var(--ink-2);margin-top:.15rem}
.read .rg{font-family:var(--disp);font-weight:700;font-size:1.4rem}

/* 编者按 */
.note{background:var(--ink);color:#fff;border:3px solid var(--ink);box-shadow:var(--sh);padding:1.8rem 2rem;margin-top:.5rem}
.note .nt{font-family:var(--disp);font-weight:700;color:var(--lime);font-size:.85rem;letter-spacing:.06em;margin-bottom:.9rem}
.note p{margin:0 0 .9rem;font-weight:500;color:#e7e6f2}
.note p:last-child{margin:0}
.note b{color:var(--lime)}

/* 收尾 */
.end{padding:66px 0;border-top:3px solid var(--ink);background:var(--lime)}
.end h2{font-size:2.9rem;font-weight:700;letter-spacing:-.035em;text-align:center;max-width:18em;margin:0 auto 1rem}
.end p{text-align:center;font-weight:500;font-size:1.15rem;max-width:34rem;margin:0 auto 2rem}
.end .invite{max-width:560px;margin:0 auto;background:var(--paper)}

/* ===== Footer ===== */
.foot{background:var(--ink);color:#cfcde0;border-top:3px solid var(--ink)}
.foot-in{padding:42px 0 46px}
.foot-top{display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;align-items:flex-start;padding-bottom:1.6rem;border-bottom:2px solid #2c2940}
.foot .brand{color:#fff}
.foot .brand small{color:#7d79a0}
.foot-links{display:flex;gap:1.1rem;flex-wrap:wrap;font-family:var(--disp);font-weight:600;font-size:.84rem}
.foot-links a{color:#b3b0cc}
.foot-links a:hover{color:var(--lime)}
.foot-fine{margin:1.4rem 0 0;font-size:.82rem;font-weight:500;line-height:1.7;color:#8d8aa8;max-width:62em}
.foot-fine b{color:#cfcde0}
.foot-fine .risk{color:#c98}
.foot-sign{margin-top:1.3rem;font-family:var(--disp);font-weight:600;font-size:.8rem;color:#6f6c92}

/* ===== 文章页 ===== */
.article{max-width:760px;margin:0 auto;padding:44px 24px 10px}
.article .kicker{display:inline-block;font-family:var(--disp);font-weight:700;font-size:.8rem;background:var(--coral);color:#fff;padding:.2rem .6rem}
.article h1{font-size:2.7rem;font-weight:700;letter-spacing:-.03em;line-height:1.08;margin:.8rem 0 1rem}
.article .lede{font-size:1.22rem;font-weight:500;color:var(--ink-2);line-height:1.6;background:var(--lime);border:3px solid var(--ink);box-shadow:var(--sh-sm);padding:1rem 1.2rem;margin-bottom:1.6rem}
.article .meta{font-family:var(--disp);font-weight:600;font-size:.84rem;display:flex;gap:1.2rem;flex-wrap:wrap;padding:.7rem 0;border-top:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);margin-bottom:1.8rem}
.article-cover{margin:0 0 1.8rem;border:3px solid var(--ink);box-shadow:var(--sh)}
.article-cover figcaption{font-family:var(--disp);font-weight:600;font-size:.78rem;padding:.5rem .6rem;border-top:2.5px solid var(--ink);background:var(--paper)}
.prose{font-size:1.08rem;line-height:1.82;color:#1d1b28}
.prose h2{font-family:var(--disp);font-weight:700;font-size:1.7rem;letter-spacing:-.02em;margin:2.3rem 0 .8rem}
.prose h3{font-family:var(--disp);font-weight:700;font-size:1.28rem;margin:1.7rem 0 .6rem}
.prose p{margin:0 0 1.05rem}
.prose ul,.prose ol{margin:0 0 1.1rem;padding-left:1.3rem}
.prose li{margin:.4rem 0}
.prose a{color:var(--indigo);font-weight:700;border-bottom:2.5px solid var(--lime)}
.prose strong{font-weight:700}
.prose table{width:100%;border-collapse:collapse;margin:1.4rem 0;font-size:.94rem;border:3px solid var(--ink)}
.prose th,.prose td{border:2px solid var(--ink);padding:.6rem .7rem;text-align:left;vertical-align:top}
.prose th{background:var(--ink);color:#fff;font-family:var(--disp);font-weight:700}
.prose tbody tr:nth-child(even){background:var(--bg)}
.toc{background:var(--sky);border:3px solid var(--ink);box-shadow:var(--sh-sm);padding:1.1rem 1.3rem;margin-bottom:1.9rem}
.toc strong{font-family:var(--disp);font-weight:700;font-size:.82rem;letter-spacing:.04em;display:block;margin-bottom:.5rem}
.toc ol{margin:0;padding-left:1.3rem;font-weight:600}
.toc li{margin:.3rem 0}
.toc a{color:var(--ink)}
.handson{background:var(--paper);border:3px solid var(--ink);box-shadow:var(--sh);padding:1.2rem 1.4rem;margin:1.8rem 0}
.handson .ht{font-family:var(--disp);font-weight:700;font-size:.85rem;color:var(--coral);margin-bottom:.5rem}
.handson p{margin:0;font-weight:500}
.callout-cta{background:var(--indigo);color:#fff;border:3px solid var(--ink);box-shadow:var(--sh);padding:1.3rem 1.4rem;margin:1.9rem 0}
.callout-cta p{margin:0 0 .9rem;font-weight:500;color:#eceaff}
.callout-cta .btn{margin:0}

/* ===== 响应式 ===== */
@media(max-width:920px){
  .hero-grid{grid-template-columns:1fr;gap:34px}
  .hero h1{font-size:3rem}
  .grid3{grid-template-columns:1fr}
  .chs{grid-template-columns:1fr}
}
@media(max-width:560px){
  body{font-size:16px}
  .hero{padding:34px 0 40px}
  .hero h1{font-size:2.35rem}
  .nav-in{flex-wrap:wrap;height:auto;padding-top:10px;padding-bottom:10px;row-gap:10px}
  .nav-links{order:3;flex-basis:100%;margin-left:0;gap:.1rem;border-top:2px solid var(--ink);padding-top:8px;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .nav-links a{white-space:nowrap;font-size:.9rem;padding:.45rem .6rem}
  .sec h2{font-size:1.95rem}
  .end h2{font-size:2.1rem}
  .article h1{font-size:2rem}
  .read{grid-template-columns:44px 1fr;gap:.7rem}
  .read .rg{display:none}
  .invite{flex-direction:column;align-items:flex-start}
}

/* ===== 迭代① 打磨:动效 + 信息密度 + 质感 ===== */
.gcard,.ch,.compare,.invite{transition:transform .13s ease,box-shadow .13s ease}
.gcard:hover,.ch:hover{transform:translate(-3px,-3px);box-shadow:var(--sh-lg)}
.ch.full:hover{transform:translate(-3px,-3px)}
.crow .cbar{position:relative}
.cl{position:absolute;right:6px;top:50%;transform:translateY(-50%);font-family:var(--disp);font-weight:700;font-size:.7rem;color:var(--ink)}

/* 签名跑马灯 */
.marquee{background:var(--lime);border-bottom:3px solid var(--ink);overflow:hidden;white-space:nowrap}
.marquee-track{display:inline-block;padding:.5rem 0;font-family:var(--disp);font-weight:700;font-size:.92rem;letter-spacing:.01em;animation:mq 28s linear infinite;will-change:transform}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee-track span{padding:0 1.25rem}
.marquee-track .st{color:var(--coral)}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* 封面占位纹理(图未生成时不难看) */
.article-cover img{width:100%;background:repeating-linear-gradient(45deg,var(--bg-2),var(--bg-2) 12px,var(--bg) 12px,var(--bg) 24px)}

@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}.gcard:hover,.ch:hover{transform:none}}

/* ===== 迭代② 打磨:可达性 + hero 贴纸 + 徽章质感 ===== */
/* focus 可见(键盘可达) */
a:focus-visible,.btn:focus-visible,summary:focus-visible,.read:focus-visible,.langpick>summary:focus-visible{
  outline:3px solid var(--ink);outline-offset:3px;border-radius:1px}
.btn-indigo:focus-visible{outline-color:var(--lime)}

/* hero 贴纸(stuck-on badge) */
.compare{position:relative}
.sticker{position:absolute;top:-50px;right:-16px;width:94px;height:94px;border-radius:50%;
  background:var(--coral);color:#fff;border:3px solid var(--ink);box-shadow:var(--sh-sm);
  display:flex;align-items:center;justify-content:center;text-align:center;
  font-family:var(--disp);font-weight:700;font-size:.86rem;line-height:1.1;letter-spacing:-.01em;
  transform:rotate(-11deg);z-index:6}
.sticker b{font-size:1.05rem}
.amt-note{font-family:var(--disp);font-weight:700;font-style:normal;color:var(--lime);font-size:.82rem;margin-left:.5em;letter-spacing:.01em}

/* 邀请徽章:左侧荧光条 + 标签反白 */
.invite{position:relative;padding-left:1.5rem}
.invite::before{content:"";position:absolute;left:0;top:0;bottom:0;width:10px;background:var(--lime);border-right:3px solid var(--ink)}
.invite .iv-k{display:inline-block;background:var(--ink);color:var(--lime);padding:.12em .5em;letter-spacing:.04em}

@media(max-width:620px){.sticker{display:none}}

/* 移动端宽表横向滚动(表自身滚,不撑破页面) */
@media(max-width:600px){
  .prose table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
  .prose td,.prose th{white-space:nowrap}
}

/* 移动端隐藏跑马灯装饰(与 .sticker 一致,减 INP/降杂讯) */
@media(max-width:560px){.marquee{display:none}}

