/* knowledge-arch-blueprint — 奶油纸 + 建筑蓝图风 */
.tpl-knowledge-arch-blueprint{
  --kb-bg:#F0EAE0;
  --kb-ink:#1a1a1a;
  --kb-ink2:#555;
  --kb-ink3:#aaa;
  --kb-rust:#B5392A;
  --kb-rust-soft:rgba(181,57,42,.08);
  --kb-line:#cec8be;
  background:var(--kb-bg);
  color:var(--kb-ink);
  font-family:'Inter','Noto Sans SC',-apple-system,sans-serif;
}
.tpl-knowledge-arch-blueprint .slide{background:var(--kb-bg);color:var(--kb-ink);padding:64px 80px}
.tpl-knowledge-arch-blueprint .kb-grid-bg{position:absolute;inset:0;pointer-events:none;opacity:.35;background-image:linear-gradient(rgba(26,26,26,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(26,26,26,.06) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse at center,black 40%,transparent 85%)}
.tpl-knowledge-arch-blueprint .slide > *{position:relative;z-index:2}
.tpl-knowledge-arch-blueprint .kb-kicker{font-size:13px;font-weight:800;letter-spacing:4px;text-transform:uppercase;color:var(--kb-rust);margin-bottom:12px}
.tpl-knowledge-arch-blueprint .kb-h1{font-size:66px;font-weight:900;line-height:1.08;color:#111;margin:0 0 14px;letter-spacing:-.02em}
.tpl-knowledge-arch-blueprint .kb-h1 span.rust{color:var(--kb-rust)}
.tpl-knowledge-arch-blueprint .kb-sub{font-size:20px;color:#666;line-height:1.55;max-width:780px}
.tpl-knowledge-arch-blueprint .kb-insight{display:inline-block;background:var(--kb-rust);color:#fff;border-radius:10px;padding:16px 22px;font-size:14px;font-weight:700;line-height:1.5;max-width:340px;box-shadow:0 8px 24px rgba(181,57,42,.22)}
.tpl-knowledge-arch-blueprint .kb-insight .kk{font-size:10px;letter-spacing:2px;opacity:.7;display:block;margin-bottom:6px;font-weight:800}
.tpl-knowledge-arch-blueprint .kb-section-label{font-size:11px;font-weight:800;letter-spacing:3.5px;text-transform:uppercase;color:#aaa;margin:30px 0 12px;display:flex;align-items:center;gap:14px}
.tpl-knowledge-arch-blueprint .kb-section-label::after{content:'';flex:1;height:1px;background:var(--kb-line)}
.tpl-knowledge-arch-blueprint .kb-pipeline{display:flex;align-items:stretch;gap:14px;margin-top:24px}
.tpl-knowledge-arch-blueprint .kb-step{flex:1;border:2px solid #1a1a1a;border-radius:12px;padding:22px 18px;background:#fff;position:relative;min-height:200px;display:flex;flex-direction:column}
.tpl-knowledge-arch-blueprint .kb-step.hero{background:var(--kb-rust);border-color:var(--kb-rust);color:#fff;flex:1.25;box-shadow:0 10px 32px rgba(181,57,42,.28);transform:translateY(-10px)}
.tpl-knowledge-arch-blueprint .kb-step-num{font-size:10px;font-weight:800;letter-spacing:2.5px;color:#bbb;margin-bottom:8px;text-transform:uppercase}
.tpl-knowledge-arch-blueprint .kb-step.hero .kb-step-num{color:rgba(255,255,255,.6)}
.tpl-knowledge-arch-blueprint .kb-step-title{font-size:22px;font-weight:900;line-height:1.15;color:#111;margin-bottom:8px}
.tpl-knowledge-arch-blueprint .kb-step.hero .kb-step-title{color:#fff}
.tpl-knowledge-arch-blueprint .kb-step-body{font-size:13px;line-height:1.55;color:#555;margin-top:auto}
.tpl-knowledge-arch-blueprint .kb-step.hero .kb-step-body{color:rgba(255,255,255,.88)}
.tpl-knowledge-arch-blueprint .kb-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}
.tpl-knowledge-arch-blueprint .kb-card{background:#fff;border:2px solid #1a1a1a;border-radius:12px;padding:22px 24px}
.tpl-knowledge-arch-blueprint .kb-card h4{font-size:20px;font-weight:900;margin-bottom:6px}
.tpl-knowledge-arch-blueprint .kb-card p{font-size:14px;color:#555;line-height:1.55}
.tpl-knowledge-arch-blueprint .kb-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;font-size:12px;color:#666}
.tpl-knowledge-arch-blueprint .kb-legend .d{display:flex;align-items:center;gap:8px}
.tpl-knowledge-arch-blueprint .kb-legend .b{width:14px;height:14px;border:2px solid #1a1a1a;border-radius:3px}
.tpl-knowledge-arch-blueprint .kb-legend .b.rust{background:var(--kb-rust);border-color:var(--kb-rust)}
.tpl-knowledge-arch-blueprint .kb-footer{position:absolute;left:80px;right:80px;bottom:36px;display:flex;justify-content:space-between;font-size:11px;color:#999;letter-spacing:.15em;text-transform:uppercase;border-top:1px solid var(--kb-line);padding-top:16px}
.tpl-knowledge-arch-blueprint .kb-mono{font-family:'JetBrains Mono',monospace}
.tpl-knowledge-arch-blueprint .kb-codebox{background:#1a1a1a;color:#f0eae0;border-radius:12px;padding:22px 26px;font-family:'JetBrains Mono',monospace;font-size:14px;line-height:1.8;margin-top:20px;border:2px solid #1a1a1a}
.tpl-knowledge-arch-blueprint .kb-codebox .cm{color:#7a766c}
.tpl-knowledge-arch-blueprint .kb-codebox .kw{color:#e8a87c}
.tpl-knowledge-arch-blueprint .kb-codebox .st{color:#b3d1bc}
.tpl-knowledge-arch-blueprint .kb-codebox .hl{color:var(--kb-rust);background:rgba(255,255,255,.08);padding:0 4px;border-radius:3px}
.tpl-knowledge-arch-blueprint .kb-big-num{font-family:'Playfair Display',Georgia,serif;font-size:200px;font-weight:900;line-height:.9;color:var(--kb-rust);letter-spacing:-.04em}

/* Asymmetric advantage deck */
.asym-deck .slide{background:var(--kb-bg);}
.asym-deck .cover-top{display:flex;justify-content:space-between;align-items:flex-start;gap:44px;margin-bottom:42px;}
.asym-deck .small-h1{font-size:54px;}
.asym-deck .final-title{font-size:70px;}
.asym-deck .hero-card{background:var(--kb-rust-soft);border-color:var(--kb-rust);}
.asym-deck .signal-grid,.asym-deck .path-grid,.asym-deck .lever-grid,.asym-deck .downside-grid,.asym-deck .check-grid{display:grid;gap:14px;margin-top:24px;}
.asym-deck .signal-grid{grid-template-columns:repeat(4,1fr);}
.asym-deck .signal-grid div,.asym-deck .path-grid div,.asym-deck .lever-grid div,.asym-deck .downside-grid div,.asym-deck .check-grid div{background:#fff;border:2px solid #1a1a1a;border-radius:12px;padding:18px 20px;box-shadow:5px 5px 0 rgba(26,26,26,.08);}
.asym-deck .signal-grid b,.asym-deck .lever-grid b,.asym-deck .downside-grid b{display:block;font-size:25px;font-weight:900;color:var(--kb-rust);margin-bottom:6px;}
.asym-deck .signal-grid span,.asym-deck .lever-grid span,.asym-deck .downside-grid span{font-size:15px;line-height:1.5;color:#555;}
.asym-deck .rule-box{margin-top:24px;border:3px solid var(--kb-rust);background:var(--kb-rust);color:#fff;border-radius:12px;padding:18px 24px;font-size:25px;font-weight:900;line-height:1.35;}
.asym-deck .path-grid{grid-template-columns:repeat(4,1fr);}
.asym-deck .path-grid div{background:#1a1a1a;color:#f0eae0;border-color:#1a1a1a;font-size:20px;font-weight:900;text-align:center;min-height:86px;display:flex;align-items:center;justify-content:center;}
.asym-deck .lever-grid{grid-template-columns:repeat(2,1fr);}
.asym-deck .downside-grid{grid-template-columns:repeat(5,1fr);}
.asym-deck .downside-grid div{min-height:184px;}
.asym-deck .model-box{background:var(--kb-rust);color:#fff;border-radius:14px;padding:24px 28px;margin-top:24px;box-shadow:8px 8px 0 rgba(181,57,42,.2);}
.asym-deck .model-box b{display:block;font-size:26px;margin-bottom:8px;}
.asym-deck .model-box span{font-size:22px;line-height:1.45;font-weight:800;}
.asym-deck .tag-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px;}
.asym-deck .tag-row span{background:#1a1a1a;color:#f0eae0;border-radius:999px;padding:11px 17px;font-weight:900;font-size:15px;}
.asym-deck .veto-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px;}
.asym-deck .veto-grid div{background:#fff;border:2px solid var(--kb-rust);border-radius:12px;padding:22px;box-shadow:5px 5px 0 rgba(181,57,42,.12);}
.asym-deck .veto-grid b{display:block;font-size:25px;font-weight:900;color:var(--kb-rust);margin-bottom:8px;}
.asym-deck .veto-grid span{font-size:16px;line-height:1.55;color:#555;}
.asym-deck .check-grid{grid-template-columns:repeat(5,1fr);}
.asym-deck .check-grid div{font-size:16px;font-weight:900;min-height:100px;display:flex;align-items:center;justify-content:center;text-align:center;}
.asym-deck .final-formula{display:inline-block;background:var(--kb-rust);color:#fff;border-radius:16px;padding:24px 34px;font-size:30px;font-weight:900;box-shadow:10px 10px 0 rgba(181,57,42,.18);margin:26px 0;}
.asym-deck .final-sub{margin:0 auto;font-size:22px;}
@media (max-width:900px){
  .asym-deck .cover-top{display:block;}
  .asym-deck .kb-h1,.asym-deck .final-title{font-size:46px!important;}
  .asym-deck .signal-grid,.asym-deck .path-grid,.asym-deck .lever-grid,.asym-deck .downside-grid,.asym-deck .check-grid,.asym-deck .veto-grid,.asym-deck .kb-grid-2{grid-template-columns:1fr;}
}
