/* Raumatech tech column — article content styles (from source serial),
   hosted inside the dark site frame. Content area keeps the light "paper" look for long-form reading. */
.paperwrap{max-width:900px;margin:34px auto 10px;padding:0 18px}
.paper{background:#f4f7fb;border-radius:12px;overflow:hidden;border:1px solid var(--line);
  box-shadow:0 18px 50px rgba(0,0,0,.45)}
.paper *, .sidx *{margin:0;padding:0;box-sizing:border-box}
.paper{font-family:"Calibri","Carlito","Microsoft YaHei","PingFang SC",sans-serif;color:#1a2332}

/* language notice (visible only when UI language != content language) */
.langnote{display:none;background:rgba(41,211,238,.08);border:1px solid rgba(41,211,238,.35);
  border-radius:8px;padding:10px 14px;font-size:13px;color:#9fdcec;margin:0 auto 14px;max-width:900px;line-height:1.7}
[data-lang="en"] .langnote{display:block}

/* zh/en visibility helpers
   !important: container rules such as ".sidx .cover .tags span{display:inline-block}"
   have equal-or-higher specificity and would otherwise re-show the hidden variant. */
.en-only{display:none !important}
[data-lang="en"] .en-only{display:inline !important}
[data-lang="en"] .zh-only{display:none !important}
[data-lang="zh"] .en-only{display:none !important}
/* container rules such as ".sidx .cover .tags span{display:inline-block}" outrank the
   generic helpers above, so scope the tag pills explicitly. */
.sidx .cover .tags .zh-only,
.sidx .cover .tags .en-only{display:none !important}
[data-lang="en"] .sidx .cover .tags .en-only{display:inline-block !important}

/* in-article episode nav
   NOTE: no position:sticky here — the ancestor .paper uses overflow:hidden for the
   rounded corners, which turns .paper into the scroll container and makes a sticky
   child offset itself by top:56px, overlapping the info bar below it. */
.epnav-inline{position:relative;z-index:20;background:#0a2d6b;color:#9db8dd;display:flex;
  align-items:center;gap:12px;padding:9px 26px;font-size:12.5px;letter-spacing:1px}
.epnav-inline .brand{color:#ffd35c;font-weight:700;letter-spacing:2px;font-size:12.5px;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis}
.epnav-inline .epnow{margin-left:auto;font-family:Consolas,monospace;color:#fff;white-space:nowrap}

/* article hero */
.paper .hero{background:linear-gradient(135deg,#0b3d91 0%,#1a5fb4 60%,#2a7fd4 100%);color:#fff;
  padding:44px 40px 34px;position:relative;overflow:hidden}
.paper .hero::after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;
  border:2px solid rgba(255,255,255,.12);border-radius:50%}
.paper .hero::before{content:"";position:absolute;right:-20px;top:-20px;width:180px;height:180px;
  border:2px solid rgba(255,255,255,.18);border-radius:50%}
.paper .ep-no{font-size:14px;letter-spacing:5px;opacity:.85;margin-bottom:12px;font-family:Consolas,monospace}
.paper .hero h1{font-size:32px;letter-spacing:1px;margin-bottom:12px;line-height:1.35}
.paper .hero .sub{font-size:14.5px;opacity:.9;line-height:1.8;max-width:720px}
.paper .hero .tags{margin-top:16px}
.paper .hero .tags span{display:inline-block;border:1px solid rgba(255,255,255,.45);border-radius:3px;
  padding:3px 12px;font-size:12px;margin-right:8px;letter-spacing:1px}

/* info bar */
.paper .nav{background:#0a2d6b;color:#9db8dd;padding:10px 40px;font-size:12.5px;letter-spacing:.5px;line-height:1.7}
.paper .nav b{color:#ffd35c}

/* sections */
.paper .sec{background:#fff;margin:20px;padding:28px 32px;border-radius:8px;
  border-top:3px solid #1a5fb4;box-shadow:0 2px 8px rgba(11,61,145,.08)}
.paper .sec h2{font-size:20px;color:#0b3d91;margin-bottom:14px;padding-left:13px;
  border-left:4px solid #f59e0b;line-height:1.45}
.paper .sec h3{font-size:16px;color:#1a5fb4;margin:20px 0 10px;line-height:1.5}
.paper .sec p{font-size:14.5px;line-height:1.95;color:#2b3648;margin-bottom:12px;text-align:justify}
.paper .sec li{font-size:14px;line-height:1.9;color:#2b3648;margin:6px 0 6px 4px}
.paper ul,.paper ol{padding-left:22px;margin-bottom:12px}

/* figures (inline SVG) */
.paper .fig{margin:22px 0;border:1px solid #dbe4f0;border-radius:8px;background:#fbfdff;
  padding:16px 12px 10px;text-align:center}
.paper .fig svg{width:100%;height:auto;display:block}
.paper .fig .cap{font-size:12.5px;color:#5a6b85;margin-top:8px;padding-top:8px;
  border-top:1px dashed #c9d6e8;text-align:left;line-height:1.7}
.paper .fig .cap b{color:#0b3d91}

/* tables */
.paper table{width:100%;border-collapse:collapse;margin:16px 0;font-size:13px}
.paper th{background:#0b3d91;color:#fff;padding:9px 10px;text-align:left;font-weight:600;letter-spacing:.5px}
.paper td{padding:8px 10px;border-bottom:1px solid #e3ebf5;color:#2b3648;line-height:1.7;vertical-align:top}
.paper tr:nth-child(even) td{background:#f5f9ff}
.paper td.num{font-family:Consolas,monospace;color:#b45309;white-space:nowrap}

/* formula blocks */
.paper .formula{background:#0d2440;color:#cfe3ff;border-radius:8px;padding:16px 20px;margin:16px 0;
  font-family:Consolas,monospace;font-size:14.5px;text-align:center;letter-spacing:1px;line-height:1.8}
.paper .formula .note{display:block;font-size:12.5px;color:#7fa3d4;margin-top:8px;
  font-family:"Microsoft YaHei",sans-serif;letter-spacing:0;text-align:center}

/* deep-dive callouts */
.paper .deep{background:#eef4fc;border-left:4px solid #1a5fb4;border-radius:0 8px 8px 0;
  padding:16px 20px;margin:18px 0}
.paper .deep .dt{font-size:12.5px;color:#1a5fb4;font-weight:700;letter-spacing:2px;margin-bottom:8px}
.paper .deep p,.paper .deep li{font-size:13.5px}

/* key-points block */
.paper .keys{background:#0b3d91;color:#eaf2ff;border-radius:8px;padding:26px 30px;margin:20px}
.paper .keys h2{color:#ffd35c;font-size:18px;margin-bottom:14px}
.paper .keys li{font-size:14px;line-height:2;margin:8px 0 8px 4px;color:#dbe8ff}

/* next-episode teaser */
.paper .next{background:#101d33;color:#9db8dd;padding:22px 40px 30px;font-size:13.5px;line-height:1.9}
.paper .next b{color:#ffd35c}

/* episode prev/next bar */
.epnav{display:flex;gap:10px;margin:6px auto 40px;max-width:900px;padding:0 18px}
.epnav a{flex:1;text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;
  padding:12px;color:var(--txt);font-size:13.5px;text-decoration:none;transition:border-color .15s}
.epnav a:hover{border-color:var(--cyan);color:var(--cyan)}
.epnav a.toc{flex:.8;color:var(--mut)}
.epnav .prev{text-align:left}.epnav .next{text-align:right}

/* series index page */
.sidx{max-width:980px;margin:30px auto 0;padding:0 18px}
.sidx .cover{background:linear-gradient(135deg,#0b3d91 0%,#1a5fb4 60%,#2a7fd4 100%);color:#fff;
  padding:52px 44px 40px;position:relative;overflow:hidden;border-radius:12px}
.sidx .cover::after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;
  border:2px solid rgba(255,255,255,.12);border-radius:50%}
.sidx .cover::before{content:"";position:absolute;right:-20px;top:-20px;width:180px;height:180px;
  border:2px solid rgba(255,255,255,.18);border-radius:50%}
.sidx .cover .kicker{font-size:13px;letter-spacing:5px;opacity:.85;margin-bottom:14px;font-family:Consolas,monospace}
.sidx .cover h1{font-size:36px;letter-spacing:2px;margin-bottom:12px;line-height:1.3}
.sidx .cover .sub{font-size:14.5px;opacity:.9;line-height:1.9;max-width:680px}
.sidx .cover .tags{margin-top:18px}
.sidx .cover .tags span{display:inline-block;border:1px solid rgba(255,255,255,.45);border-radius:3px;
  padding:3px 12px;font-size:12px;margin-right:8px;letter-spacing:1px}
.sidx .cstats{display:flex;background:#0a2d6b;color:#fff;border-radius:10px;margin-top:16px;overflow:hidden}
.sidx .cstats div{flex:1;text-align:center;padding:16px 8px;border-right:1px solid rgba(255,255,255,.15)}
.sidx .cstats div:last-child{border-right:none}
.sidx .cstats b{display:block;font-size:23px;color:#ffd35c;font-family:Consolas,monospace}
.sidx .cstats span{font-size:12px;color:#9db8dd;letter-spacing:1px}
.sidx .toc{margin:26px 0 6px}
.sidx .toc h2{font-size:20px;color:var(--txt);margin-bottom:16px;padding-left:12px;border-left:4px solid var(--cyan)}
.sidx .toc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.sidx .toc-card{display:block;background:var(--panel);border-radius:10px;padding:16px 18px;
  text-decoration:none;border:1px solid var(--line);border-top:3px solid var(--blue2);transition:transform .12s,border-color .15s}
.sidx .toc-card:hover{transform:translateY(-3px);border-color:var(--cyan)}
.sidx .toc-card .tn{font-family:Consolas,monospace;color:var(--cyan);font-weight:700;font-size:13px;letter-spacing:2px}
.sidx .toc-card h4{font-size:15px;color:var(--txt);margin:6px 0;line-height:1.5}
.sidx .toc-card p{font-size:12.5px;color:var(--mut);line-height:1.7}
.sidx .toc-card .tw{font-size:11.5px;color:var(--cyan);margin-top:8px;letter-spacing:1px;font-family:Consolas,monospace}

@media(max-width:720px){
  .paper .sec{margin:12px;padding:20px 18px}
  .paper .hero{padding:30px 22px 26px}
  .paper .nav,.paper .next{padding-left:22px;padding-right:22px}
  .paper .keys{margin:12px}
  .sidx .cstats{flex-wrap:wrap}
  .sidx .cstats div{flex:1 1 40%}
}

/* series footer strip inside article (source serials carry one) */
.paper .footer{background:#0a1526;color:#4a5f80;text-align:center;padding:14px;font-size:12px;letter-spacing:2px}
