[data-template=learning] body{font-size:17px;line-height:1.78}[data-template=learning] ::-moz-selection{background:rgb(var(--accent));color:rgb(var(--card))}[data-template=learning] ::selection{background:rgb(var(--accent));color:rgb(var(--card))}[data-template=learning] a{color:rgb(var(--accent-deep));text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgb(var(--accent-deep) / .35)}[data-template=learning] a:hover{color:rgb(var(--accent));text-decoration-color:rgb(var(--accent))}[data-template=learning] .hero{border-bottom:1px solid rgb(var(--line))}[data-template=learning] .hero-inner{max-width:1200px;margin:0 auto;padding:78px 32px 72px;display:grid;grid-template-columns:1.02fr .98fr;gap:72px;align-items:center}.hero-copy{min-width:0}[data-template=learning] .eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:rgb(var(--accent));margin:0 0 20px;font-weight:500}[data-template=learning] .eyebrow:before{content:"";width:26px;height:1px;background:rgb(var(--accent))}.hero-series{margin:0 0 18px;font-family:var(--font-mono);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:rgb(var(--ink-3))}.hero-series b{color:rgb(var(--ink));font-weight:600}.hero-series .ep-no{color:rgb(var(--accent))}[data-template=learning] .hero-title{margin:0;font-size:clamp(42px,5.6vw,66px);line-height:1.04;font-weight:750;letter-spacing:-.028em;color:rgb(var(--ink))}[data-template=learning] .hero-sub{margin:24px 0 0;font-family:var(--font-mono);font-size:15px;line-height:1.7;color:rgb(var(--ink-2))}[data-template=learning] .hero-sub .soft{color:rgb(var(--ink-3))}[data-template=learning] .hero-meta{margin-top:36px;display:flex;flex-wrap:wrap;gap:8px}.meta-item{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgb(var(--ink-2));border:1px solid rgb(var(--line-2));background:rgb(var(--card));padding:6px 10px;border-radius:3px;white-space:nowrap}.meta-item.hot{color:rgb(var(--accent));border-color:rgb(var(--accent));background:rgb(var(--accent-soft));font-weight:600}.hd{background:rgb(var(--card));border:1px solid rgb(var(--line-2));border-radius:8px;overflow:hidden;box-shadow:0 1px #00000008}.hd-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;background:rgb(var(--panel));border-bottom:1px solid rgb(var(--line-2));font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:rgb(var(--ink-3))}.hd-bar b{color:rgb(var(--accent));font-weight:600;letter-spacing:.18em}.hd-body{padding:30px 32px 26px;display:flex;flex-direction:column}.hd-node{border:1px solid rgb(var(--line-2));border-radius:6px;background:rgb(var(--panel));padding:13px 16px 15px}.hd-node-tag{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:rgb(var(--ink-3))}.hd-node-tag:after{content:"";flex:1;height:1px;background:rgb(var(--line-2))}.hd-file{margin-top:10px;font-family:var(--font-mono);font-size:15px;font-weight:700;color:rgb(var(--ink));letter-spacing:-.01em}.hd-code{margin-top:9px;font-family:var(--font-mono);font-size:12.5px;line-height:1.7;color:rgb(var(--ink-2));white-space:pre-wrap}.hd-sub{margin-top:8px;font-family:var(--font-mono);font-size:11.5px;color:rgb(var(--ink-2))}.hd-out{margin-top:12px;background:rgb(var(--code-bg));color:rgb(var(--term-green));font-family:var(--font-mono);font-size:12px;padding:9px 11px;border-radius:4px;white-space:nowrap;overflow-x:auto}.hd-out .d{color:rgb(var(--term-dim, 127 154 116))}.hd-pipe{height:52px;display:flex;flex-direction:column;align-items:center;position:relative}.hd-pipe .l{width:1px;flex:1;background:linear-gradient(to bottom,rgb(var(--line-2)),rgb(var(--ink-3)))}.hd-pipe .h{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid rgb(var(--ink-3))}.hd-pipe .tag{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--accent));background:rgb(var(--card));border:1px solid rgb(var(--accent));border-radius:3px;padding:3px 8px;white-space:nowrap}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}[data-template=learning] .rise{animation:rise .65s cubic-bezier(.2,.7,.2,1) both}[data-template=learning] .rise-1{animation-delay:.04s}[data-template=learning] .rise-2{animation-delay:.1s}[data-template=learning] .rise-3{animation-delay:.16s}[data-template=learning] .rise-4{animation-delay:.22s}[data-template=learning] .rise-5{animation-delay:.28s}[data-template=learning] .rise-6{animation-delay:.4s}[data-template=learning] .rise-7{animation-delay:.52s}[data-template=learning] .rise-8{animation-delay:.64s}[data-template=learning] .rise-9{animation-delay:.76s}[data-template=learning] .series{border-bottom:1px solid rgb(var(--line));background:rgb(var(--panel))}[data-template=learning] .series-inner{max-width:1200px;margin:0 auto;padding:16px 32px 18px}[data-template=learning] .series-top{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:rgb(var(--ink-3));margin-bottom:8px}[data-template=learning] .series-top .t{color:rgb(var(--accent));font-weight:600}.series-list{display:flex;overflow-x:auto;scrollbar-width:thin}.ep{display:flex;align-items:baseline;gap:8px;font-family:var(--font-mono);font-size:12px;color:rgb(var(--ink-2));padding:9px 16px;white-space:nowrap;border:1px solid transparent;border-right:1px solid rgb(var(--line-2));text-decoration:none}.ep .num{color:rgb(var(--ink-3));font-size:10.5px}.ep:hover{background:rgb(var(--card));color:rgb(var(--ink))}.ep.active{background:rgb(var(--ink));color:rgb(var(--paper));border-right-color:rgb(var(--ink))}.ep.active .num{color:rgb(var(--accent))}.ep.planned{border-right-style:dashed;color:rgb(var(--ink-3));cursor:default;opacity:.7}.ep.planned:hover{background:transparent;color:rgb(var(--ink-3))}.article-wrap{max-width:1200px;margin:0 auto;padding:64px 32px 90px;display:grid;grid-template-columns:190px minmax(0,690px) 1fr;gap:60px}.rail{position:sticky;top:40px;align-self:start;max-height:calc(100vh - 70px);overflow:auto;scrollbar-width:thin}.rail-title{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgb(var(--ink-3));margin:0 0 14px}.rail a{display:flex;gap:10px;align-items:baseline;text-decoration:none;color:rgb(var(--ink-2));font-family:var(--font-mono);font-size:11.5px;line-height:1.5;padding:5px 0 5px 11px;border-left:2px solid rgb(var(--line))}.rail a .n{color:rgb(var(--ink-3));flex:none;font-size:10.5px}.rail a:hover{color:rgb(var(--ink))}.rail a.active{color:rgb(var(--accent));border-left-color:rgb(var(--accent))}.rail a.active .n{color:rgb(var(--accent))}.prose{min-width:0}.prose p{margin:0 0 24px;color:rgb(var(--ink))}.prose strong{font-weight:650;color:rgb(var(--ink))}.prose em{color:rgb(var(--ink-2))}.prose a{color:rgb(var(--accent-deep));text-decoration:underline;text-underline-offset:3px;text-decoration-color:#a8331f59}.prose a:hover{color:rgb(var(--accent));text-decoration-color:rgb(var(--accent))}.prose ul,.prose ol{margin:0 0 24px;padding-left:22px}.prose li{margin:0 0 10px;padding-left:4px}.prose li::marker{color:rgb(var(--accent))}.prose :not(pre)>code{font-family:var(--font-mono);font-size:.84em;background:rgb(var(--code-inline-bg));border:1px solid rgb(var(--code-inline-line));padding:1px 6px;border-radius:4px;color:rgb(var(--code-inline-ink));white-space:nowrap}.lede p:first-of-type{font-size:19px;line-height:1.7;color:rgb(var(--ink))}.lede .drop{color:rgb(var(--accent));font-weight:700;font-family:var(--font-mono)}[data-template=learning] .sec{scroll-margin-top:26px}[data-template=learning] .sec-head{display:flex;align-items:baseline;gap:18px;margin:66px 0 28px;padding-top:26px;border-top:1px solid rgb(var(--line))}[data-template=learning] .prose section.sec:first-of-type .sec-head{margin-top:10px;border-top:none;padding-top:0}[data-template=learning] .sec-num{font-family:var(--font-mono);font-size:13px;font-weight:600;color:rgb(var(--accent));flex:none}[data-template=learning] .sec-title{font-family:var(--font-sans);font-size:25px;font-weight:700;letter-spacing:-.018em;margin:0;line-height:1.25}[data-template=learning] .sec-head:after{content:"";flex:1;height:1px;background:rgb(var(--line));align-self:center}.wb{margin:30px 0;border-radius:8px;overflow:hidden;background:rgb(var(--code-bg));border:1px solid rgb(var(--code-line))}.wb-bar{display:flex;align-items:center;gap:12px;background:rgb(var(--code-panel));border-bottom:1px solid rgb(var(--code-line));padding:8px 14px}.wb-dots{display:inline-flex;gap:5px}.wb-dots i{width:7px;height:7px;border-radius:50%;background:#ffffff24}.wb-file{display:flex;gap:9px;align-items:center;font-family:var(--font-mono);font-size:12px;color:rgb(var(--code-dim))}.wb-file .dot{width:7px;height:7px;background:rgb(var(--accent));border-radius:50%;flex:none}.wb-badges{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.wb-badge{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:rgb(var(--code-dim));border:1px solid #3a3a35;padding:2px 7px;border-radius:3px;text-transform:uppercase;white-space:nowrap}.wb-code .astro-code{background:transparent!important;padding:16px 18px 18px 0!important;font-size:13px;line-height:1.9;counter-reset:ln}.wb-code .line{counter-increment:ln;position:relative;padding-left:3.4em}.wb-code .line:before{content:counter(ln,decimal-leading-zero);position:absolute;left:.8em;width:2.2em;text-align:right;color:rgb(var(--code-dim));opacity:.7;-webkit-user-select:none;-moz-user-select:none;user-select:none}.wb-runbar{display:flex;align-items:center;gap:12px;border-top:1px solid rgb(var(--code-line));background:rgb(var(--code-panel));padding:9px 14px;flex-wrap:wrap}.wb-run{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;background:transparent;border:1px solid #3a3a35;color:rgb(var(--code-dim));padding:5px 13px;border-radius:3px;cursor:pointer;transition:color .15s,border-color .15s}.wb-run:hover{color:rgb(var(--term-green));border-color:rgb(var(--term-green))}.wb-output{display:none;margin:0;padding:14px 18px 18px;font-family:var(--font-mono);font-size:13px;line-height:1.8;color:rgb(var(--term-green));border-top:1px dashed rgb(var(--code-line));white-space:pre-wrap}.wb-output.show{display:block;animation:rise .35s ease both}.wb-output .d{color:rgb(var(--term-dim, 127 154 116))}[data-template=learning] .term{margin:30px 0;background:rgb(var(--code-bg));border:1px solid rgb(var(--code-line));border-radius:8px;overflow:hidden}[data-template=learning] .term-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;background:rgb(var(--code-panel));border-bottom:1px solid rgb(var(--code-line));padding:8px 14px}.term-title{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--code-dim))}[data-template=learning] .term-cmt{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgb(var(--code-dim));border:1px solid #3a3a35;padding:2px 7px;border-radius:3px}[data-template=learning] .term-body{margin:0;padding:16px 18px;font-family:var(--font-mono);font-size:13px;line-height:1.8;color:rgb(var(--code-ink));white-space:pre-wrap}[data-template=learning] .term-body .p{color:rgb(var(--term-green))}[data-template=learning] .term-body .out{color:rgb(var(--code-dim))}[data-template=learning] .term-body .out.hl{color:rgb(var(--term-green))}[data-template=learning] .term-body .cmt{color:rgb(var(--code-cm))}[data-template=learning] .term-body .err{color:rgb(var(--code-kw))}[data-template=learning] .term-body .hl{color:rgb(var(--term-green))}[data-template=learning] .term-body .caret{display:inline-block;width:8px;height:15px;background:rgb(var(--term-green));vertical-align:text-bottom;animation:blink 1.1s steps(1) infinite}.snip{margin:22px 0;background:rgb(var(--panel));border:1px solid rgb(var(--line-2));border-radius:6px;padding:15px 18px;overflow-x:auto;font-family:var(--font-mono);font-size:13px;line-height:1.8;color:rgb(var(--ink));white-space:pre-wrap}.snip-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgb(var(--ink-3));margin:0 0 10px}.snip pre{margin:0;white-space:pre-wrap}.insight{margin:34px 0;padding:22px 26px;background:rgb(var(--card));border:1px solid rgb(var(--line-2));border-left:3px solid rgb(var(--accent));border-radius:0 8px 8px 0}.insight-label{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:rgb(var(--accent));margin-bottom:12px}.insight-label:before{content:"";width:8px;height:8px;background:rgb(var(--accent))}.insight p{margin:0;font-size:17.5px;font-weight:520;line-height:1.75}.insight p em{font-style:normal;color:rgb(var(--accent-deep));font-weight:650}.insight .src{margin-top:12px;font-family:var(--font-mono);font-size:11px;color:rgb(var(--ink-3))}.learnnote{margin:44px 0;border:1px solid rgb(var(--line-2));background:rgb(var(--card));border-radius:8px;overflow:hidden}.learnnote-head{display:flex;align-items:center;gap:10px;padding:11px 18px;background:rgb(var(--panel));border-bottom:1px solid rgb(var(--line-2))}.learnnote-head .sq{width:8px;height:8px;background:rgb(var(--accent));flex:none}.learnnote-head .tt{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgb(var(--ink));font-weight:600}.learnnote-head .sub{margin-left:auto;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--ink-3))}.learnnote-body{padding:6px 18px 18px}.learn-row{padding:16px 0 4px}.learn-row+.learn-row{border-top:1px dashed rgb(var(--line))}.learn-tag{display:flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:rgb(var(--ink-3));margin-bottom:9px}.learn-tag .g{width:8px;height:8px;flex:none}.learn-row p{margin:0 0 12px;font-size:15.5px;line-height:1.75;color:rgb(var(--ink))}.learn-row .mark{color:rgb(var(--accent));font-weight:600}[data-template=learning] .fig{margin:30px 0;border:1px solid rgb(var(--line-2));background:rgb(var(--card));border-radius:8px;overflow:hidden}[data-template=learning] .fig-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;background:rgb(var(--panel));border-bottom:1px solid rgb(var(--line-2));font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--ink-3))}[data-template=learning] .fig-bar .t{color:rgb(var(--ink));font-weight:600;letter-spacing:.14em}[data-template=learning] .fig-bar .g{color:rgb(var(--accent))}[data-template=learning] .fig pre.astro-code{background:transparent!important;color:rgb(var(--ink))!important;margin:0;padding:17px 20px;overflow-x:auto;font-family:var(--font-mono);font-size:13px;line-height:1.85}[data-template=learning] .fig-cap{padding:10px 20px 14px;border-top:1px dashed rgb(var(--line));font-size:13px;color:rgb(var(--ink-2))}[data-template=learning] .fig-cap .num{color:rgb(var(--accent));margin-right:6px;font-family:var(--font-mono)}.cv{display:flex;flex-direction:column;align-items:center;margin:30px 0}.cv .node{border:1px solid rgb(var(--line-2));background:rgb(var(--card));border-radius:5px;padding:12px 22px;font-family:var(--font-mono);font-size:13px;color:rgb(var(--ink));min-width:200px;text-align:center;box-shadow:0 1px #00000008}.cv .node b{color:rgb(var(--accent));font-weight:600}.cv .node .sm{display:block;font-size:11px;color:rgb(var(--ink-3));margin-top:3px}.cv .pipe{height:36px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.cv .pipe .l{width:1px;flex:1;background:rgb(var(--line-2))}.cv .pipe .h{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid rgb(var(--ink-3))}.cv .pipe .tag{font-family:var(--font-mono);font-size:10px;color:rgb(var(--ink-3));letter-spacing:.06em}.cmp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:28px 0}.cmp.three{grid-template-columns:repeat(3,minmax(0,1fr))}.cmp-card{border:1px solid rgb(var(--line-2));border-top:2px solid rgb(var(--ink));background:rgb(var(--card));border-radius:6px;padding:18px 20px}.cmp-card.warn{border-top-color:rgb(var(--accent))}.cmp-card.soft{border-top-color:rgb(var(--line-2))}.cmp-card h4{margin:0 0 9px;font-family:var(--font-mono);font-size:13.5px;font-weight:600;color:rgb(var(--ink))}.cmp-card h4 .n{color:rgb(var(--ink-3));margin-right:7px;font-size:11px}.cmp-card .cbody{margin:0;font-size:14px;color:rgb(var(--ink-2));line-height:1.7;white-space:pre-line}.cmp-card .cbody strong{color:rgb(var(--ink))}.cmp-card .cmd{display:inline-block;font-family:var(--font-mono);font-size:12.5px;background:rgb(var(--panel));border:1px solid rgb(var(--line-2));padding:2px 7px;border-radius:3px;color:rgb(var(--ink));margin:2px 0 8px}.cmp-card .path{font-family:var(--font-mono);font-size:12px;color:rgb(var(--accent-deep))}.learned{margin:54px 0 44px;background:rgb(var(--ink));color:rgb(var(--paper));border-radius:10px;padding:42px 46px;overflow:hidden;position:relative}.learned:before{content:"LEARNED";position:absolute;right:-14px;top:-30px;font-family:var(--font-mono);font-size:120px;font-weight:700;letter-spacing:-.04em;color:#ffffff0b;pointer-events:none}.learned-label{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:rgb(var(--accent));margin-bottom:26px}.learned-label:before{content:"";width:9px;height:9px;background:rgb(var(--accent))}.learned .lh{font-size:24px;font-weight:700;letter-spacing:-.018em;margin:0 0 30px;line-height:1.3;color:rgb(var(--paper))}.learned .chain-box{display:grid;grid-template-columns:1fr 1fr;gap:22px}.learned .chain-col{border:1px solid #2e2e2a;border-radius:8px;padding:20px 22px;background:#ffffff05}.learned .chain-col h5{margin:0 0 16px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:rgb(var(--ink-3));font-weight:600}.learned .cv{margin:0}.learned .cv .node{border-color:#33332e;background:#1e1e1b;color:rgb(var(--paper));min-width:0;padding:10px 14px;font-size:12.5px}.learned .cv .node b{color:rgb(var(--code-kw))}.learned .cv .node .sm{color:#7a7870}.learned .cv .pipe{height:30px}.learned .cv .pipe .l{background:#33332e}.learned .cv .pipe .h{border-top-color:#55554e}.learned .cv .pipe .tag{color:#7a7870}.learned .final-q{margin-top:30px;padding-top:24px;border-top:1px solid #2e2e2a;font-size:18px;line-height:1.8;color:rgb(var(--paper))}.learned .final-q em{font-style:normal;color:rgb(var(--code-kw));font-weight:650}.learned .final-q .en{display:block;margin-top:10px;font-family:var(--font-mono);font-size:12.5px;color:rgb(var(--ink-3));letter-spacing:.02em}.chapter-end{margin-top:54px}.chapter-end .end-label{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:rgb(var(--ink-3));margin-bottom:18px}.chapter-end .end-label:after{content:"";flex:1;height:1px;background:rgb(var(--line))}.next{margin:46px 0 0;border:1px solid rgb(var(--line-2));background:rgb(var(--card));border-radius:8px;overflow:hidden}.next-head{display:flex;align-items:center;gap:10px;padding:12px 20px;border-bottom:1px solid rgb(var(--line));font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgb(var(--ink-3))}.next-head .arr{color:rgb(var(--accent));font-size:13px}.next-head .n{margin-left:auto;color:rgb(var(--accent));font-weight:600}.next-body{padding:28px 30px 30px}.next-body h3{margin:0 0 10px;font-size:24px;letter-spacing:-.02em;color:rgb(var(--ink))}.next-body>p{margin:0;color:rgb(var(--ink-2));font-size:15.5px}.next-body .tag-row{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}.next .tag{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:rgb(var(--accent));border:1px solid rgb(var(--accent));border-radius:3px;padding:3px 9px}.next .ch-wrap{margin-top:24px;padding-top:20px;border-top:1px dashed rgb(var(--line))}.next .ch-wrap .q{margin-top:20px;font-size:15.5px;line-height:1.8;color:rgb(var(--ink))}.next .ch-wrap .q em{font-style:normal;color:rgb(var(--accent-deep));font-weight:650}.chh{display:flex;align-items:center;gap:0;flex-wrap:wrap;row-gap:12px}.chh .cell{font-family:var(--font-mono);font-size:12.5px;color:rgb(var(--ink));border:1px solid rgb(var(--line-2));background:rgb(var(--panel));padding:8px 13px;border-radius:4px}.chh .cell b{color:rgb(var(--accent));font-weight:600}.chh .glue{color:rgb(var(--ink-3));font-family:var(--font-mono);padding:0 8px}[data-template=learning] .refs{margin-top:60px;border-top:1px solid rgb(var(--line));padding-top:30px}[data-template=learning] .refs h3{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgb(var(--ink-3));margin:0 0 18px}[data-template=learning] .refs ul{list-style:none;margin:0;padding:0}[data-template=learning] .refs li{font-family:var(--font-mono);font-size:13px;padding:9px 0;border-bottom:1px dashed rgb(var(--line));display:flex;gap:12px;align-items:baseline}[data-template=learning] .refs li .n{color:rgb(var(--ink-3));flex:none}[data-template=learning] .refs li a{color:rgb(var(--ink-2));text-decoration:none}[data-template=learning] .refs li a:hover{color:rgb(var(--accent))}@media(max-width:1080px){.article-wrap{grid-template-columns:minmax(0,690px);justify-content:center;gap:0}.rail{display:none}}@media(max-width:860px){[data-template=learning] .hero-inner{grid-template-columns:1fr;gap:44px;padding:56px 24px 52px}[data-template=learning] .series-inner{padding:14px 20px 16px}.article-wrap{padding:46px 20px 70px}[data-template=learning] .sec-head{margin-top:50px}[data-template=learning] .sec-head:after{display:none}.learned{padding:34px 26px}.learned .chain-box{grid-template-columns:1fr}}@media(max-width:640px){[data-template=learning] .hero-title{font-size:38px}.cmp,.cmp.three{grid-template-columns:1fr}.next-body{padding:22px}.hd-body{padding:22px 18px}.learned:before{display:none}}[data-template=reading] body{background-image:radial-gradient(rgb(var(--ink) / .018) 1px,transparent 1.4px);background-size:26px 26px}[data-template=reading] body:before{content:"";position:fixed;top:0;left:0;right:0;z-index:60;height:3px;background:rgb(var(--ink))}[data-template=reading] ::-moz-selection{background:rgb(var(--ink));color:rgb(var(--paper))}[data-template=reading] ::selection{background:rgb(var(--ink));color:rgb(var(--paper))}[data-template=reading] a{color:inherit;text-decoration:none}[data-template=reading] .hero{position:relative;overflow:hidden;min-height:92vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:120px 24px 96px;text-align:center}.hero-eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:rgb(var(--ink-4));margin-bottom:56px}.hero-eyebrow .sep{color:rgb(var(--line-2));padding:0 12px}.moon{position:relative;width:clamp(180px,26vw,300px);aspect-ratio:1;border-radius:50%;margin-bottom:58px;background:radial-gradient(circle at 33% 28%,rgb(var(--paper) / .1),rgb(var(--paper) / 0) 42%),radial-gradient(circle at 68% 82%,#0000004d,#0000 52%),rgb(var(--moon));box-shadow:inset -8px -14px 30px #0000004d,0 0 0 1px rgb(var(--ink) / .18),0 0 110px rgb(var(--ink) / .12)}.moon:before,.moon:after{content:"";position:absolute;border-radius:50%}.moon:before{width:24%;height:24%;left:21%;top:24%;background:rgb(var(--paper) / .06);box-shadow:0 0 22px #00000038}.moon:after{width:12%;height:12%;right:17%;top:55%;background:rgb(var(--paper) / .045)}.moon .glint{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 38% 30%,rgb(var(--paper) / .16),rgb(var(--paper) / 0) 24%)}[data-template=reading] .hero-title{font-family:var(--font-serif);font-weight:400;font-size:clamp(2.9rem,8.2vw,6.4rem);line-height:.98;letter-spacing:.015em;text-transform:uppercase;color:rgb(var(--ink))}[data-template=reading] .hero-title .l{display:block}[data-template=reading] .hero-sub{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:clamp(1.1rem,2vw,1.4rem);line-height:1.55;color:rgb(var(--ink-2));max-width:440px;margin:26px auto 0}.hero-author{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;color:rgb(var(--ink-3));margin-top:34px}.hero-author:before,.hero-author:after{content:"—";color:rgb(var(--line-2));margin:0 12px;letter-spacing:0}[data-template=reading] .hero-meta{margin-top:52px;display:flex;justify-content:center;flex-wrap:wrap;gap:22px 46px}[data-template=reading] .hero-meta .hm{text-align:center}[data-template=reading] .hero-meta .hm dt{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:rgb(var(--ink-4))}[data-template=reading] .hero-meta .hm dd{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;color:rgb(var(--ink-2));margin-top:5px}.coins{position:absolute;bottom:34px;left:50%;transform:translate(-46%);display:flex;align-items:flex-end;gap:13px;opacity:.92}.coin{width:13px;height:13px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#e6e2d8,#aca79b 55%,#8b867b);box-shadow:inset -1px -1.5px 2px #0000002e,0 1px 2px rgb(var(--ink) / .14)}.coin.s{width:9px;height:9px;margin-bottom:3px}.coin.m{width:16px;height:16px}.coin.up{margin-bottom:9px}.coin.dn{margin-bottom:-2px}.coin.hi{background:radial-gradient(circle at 32% 28%,#ede9e0,#b4afa2 55%,#928d81);box-shadow:inset -1px -1.5px 2px #00000029,0 2px 4px rgb(var(--ink) / .12)}.ornament{text-align:center;margin:90px 0 6px;font-family:var(--font-mono);font-size:11px;letter-spacing:.9em;color:rgb(var(--ink-4))}.ornament b{font-weight:400;color:rgb(var(--line-2))}[data-template=reading] .article{max-width:700px;margin:0 auto;padding:0 26px}.prologue{margin:96px 0 0;font-family:var(--font-serif);font-weight:400;font-size:clamp(1.3rem,2.4vw,1.55rem);line-height:1.75;color:rgb(var(--ink))}.prologue em,[data-template=reading] .article p em{font-style:italic;color:rgb(var(--ink-2))}[data-template=reading] .article p{font-size:16.5px;line-height:1.9;color:rgb(var(--ink-2));margin:22px 0}[data-template=reading] .article p em{font-style:normal;border-bottom:1px solid rgb(var(--line-2))}[data-template=reading] .article p strong{font-weight:600;color:rgb(var(--ink))}[data-template=reading] .article ul,[data-template=reading] .article ol{margin:22px 0;padding-left:1.4em;color:rgb(var(--ink-2));line-height:1.9}[data-template=reading] .article li{margin:6px 0}[data-template=reading] .article li::marker{color:rgb(var(--line-2))}[data-template=reading] .article a{text-decoration:underline;text-decoration-color:rgb(var(--line-2));text-underline-offset:3px}[data-template=reading] .article a:hover{text-decoration-color:rgb(var(--ink-3))}[data-template=reading] .article :not(pre)>code{font-family:var(--font-mono);font-size:.86em;background:rgb(var(--code-inline-bg));border:1px solid rgb(var(--code-inline-line));color:rgb(var(--code-inline-ink));padding:1px 6px;border-radius:3px}[data-template=reading] .article blockquote{margin:22px 0;padding-left:1.2em;border-left:2px solid rgb(var(--line-2));color:rgb(var(--ink-2))}[data-template=reading] .sec{margin-top:96px}[data-template=reading] .sec-head{display:flex;align-items:baseline;gap:26px;margin-bottom:34px}[data-template=reading] .sec-num{font-family:var(--font-serif);font-weight:300;font-size:clamp(2.8rem,6vw,4rem);line-height:1;color:rgb(var(--paper-3));min-width:.9em}[data-template=reading] .sec-title{font-family:var(--font-serif);font-weight:500;font-size:clamp(1.25rem,2.4vw,1.55rem);letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--ink))}.sec-zh{display:block;font-family:var(--font-sans);font-weight:400;font-size:12.5px;letter-spacing:.14em;color:rgb(var(--ink-4));margin-top:7px}[data-template=reading] .pquote{max-width:600px;margin:52px auto;text-align:center}[data-template=reading] .pquote .ql{display:block;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:rgb(var(--ink-4));margin-bottom:18px}[data-template=reading] .pquote p{font-family:var(--font-serif);font-weight:400;font-style:italic;font-size:clamp(1.5rem,3vw,2.05rem);line-height:1.6;letter-spacing:.005em;color:rgb(var(--ink));margin:0}[data-template=reading] .pquote p strong{font-style:normal;font-weight:500}[data-template=reading] .pquote .en{display:block;margin-top:16px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:rgb(var(--ink-3))}[data-template=reading] .pquote .en:before{content:"— ";color:rgb(var(--line-2))}.callout{margin:44px 0;padding:22px 26px;border:1px solid rgb(var(--line-2));background:rgb(var(--paper-2))}.callout .cl{display:block;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:rgb(var(--ink-4));margin-bottom:10px}.callout p{font-family:var(--font-serif);font-style:italic;font-size:1.22rem;color:rgb(var(--ink));margin:0}[data-template=reading] .fig{position:relative;margin:52px 0;border:1px solid rgb(var(--line-2));background:rgb(var(--paper))}[data-template=reading] .fig:before,[data-template=reading] .fig:after{content:"";position:absolute;width:11px;height:11px;pointer-events:none}[data-template=reading] .fig:before{top:-1px;left:-1px;border-top:1px solid rgb(var(--ink-4));border-left:1px solid rgb(var(--ink-4))}[data-template=reading] .fig:after{bottom:-1px;right:-1px;border-bottom:1px solid rgb(var(--ink-4));border-right:1px solid rgb(var(--ink-4))}[data-template=reading] .fig-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 18px;border-bottom:1px solid rgb(var(--line));font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgb(var(--ink-3))}[data-template=reading] .fig-bar .t b{color:rgb(var(--ink));font-weight:600}[data-template=reading] .fig-bar .g{color:rgb(var(--ink-4))}[data-template=reading] .fig-body{padding:26px 28px}[data-template=reading] .fig-cap{padding:13px 18px;border-top:1px solid rgb(var(--line));font-size:13.5px;color:rgb(var(--ink-3));line-height:1.7}[data-template=reading] .fig-cap .num{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:rgb(var(--ink-4));margin-right:10px}.meta2{display:grid;grid-template-columns:1fr 1fr;gap:0}.meta2 .col{padding:4px 8px}.meta2 .col+.col{border-left:1px solid rgb(var(--line))}.meta2 .mh{font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;margin-bottom:16px}.meta2 .can .mh{color:rgb(var(--ink))}.meta2 .cant .mh{color:rgb(var(--ink-4))}.meta2 ul{list-style:none;margin:0;padding:0}.meta2 li{font-family:var(--font-serif);font-size:1.22rem;line-height:1.5;color:rgb(var(--ink-2));padding:6px 0;border-bottom:1px dashed rgb(var(--line))}.meta2 li:last-child{border-bottom:none}.meta2 .cant li{color:rgb(var(--ink-3))}.meta2 .mk{font-family:var(--font-mono);font-size:11px;color:rgb(var(--ink-4));margin-right:12px}[data-template=reading] .loop{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0;padding:6px 0}[data-template=reading] .loop .ln{font-family:var(--font-serif);font-size:1.12rem;color:rgb(var(--ink));border:1px solid rgb(var(--line-2));background:rgb(var(--paper));padding:10px 16px}[data-template=reading] .loop .ar{font-family:var(--font-mono);font-size:13px;color:rgb(var(--ink-3));padding:0 9px}[data-template=reading] .loop .back{width:100%;text-align:center;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;color:rgb(var(--ink-4));margin-top:16px}.btc{position:relative;margin:96px 0 40px;border:1px solid rgb(var(--line-2));background:rgb(var(--paper-2))}.btc:before,.btc:after{content:"";position:absolute;width:12px;height:12px;pointer-events:none}.btc:before{top:-1px;left:-1px;border-top:1px solid rgb(var(--ink-4));border-left:1px solid rgb(var(--ink-4))}.btc:after{bottom:-1px;right:-1px;border-bottom:1px solid rgb(var(--ink-4));border-right:1px solid rgb(var(--ink-4))}.btc-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 22px;border-bottom:1px solid rgb(var(--line));font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgb(var(--ink-3))}.btc-bar .g{color:rgb(var(--ink-4))}.btc-body{padding:34px 30px 30px}.btc-title{font-family:var(--font-serif);font-weight:500;font-size:1.9rem;color:rgb(var(--ink))}.btc-author{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgb(var(--ink-3));margin-top:8px}.btc dl{display:grid;grid-template-columns:auto 1fr;gap:8px 22px;margin:26px 0 0;padding-top:22px;border-top:1px dashed rgb(var(--line-2))}.btc dt{font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:rgb(var(--ink-4));padding-top:3px}.btc dd{font-size:15px;color:rgb(var(--ink-2));line-height:1.7}.btc-quote{margin-top:26px;padding-top:22px;border-top:1px solid rgb(var(--line));font-family:var(--font-serif);font-style:italic;font-size:1.25rem;line-height:1.7;color:rgb(var(--ink-2))}[data-template=reading] .series{margin-top:120px;border-top:1px solid rgb(var(--line));background:rgb(var(--paper-2))}[data-template=reading] .series-inner{max-width:1120px;margin:0 auto;padding:64px 26px 40px}[data-template=reading] .series-top{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:rgb(var(--ink-3))}[data-template=reading] .series-top .t b{color:rgb(var(--ink));font-weight:600}.rn-list{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:40px 0 0}.rn-card{position:relative;border:1px solid rgb(var(--line-2));background:rgb(var(--paper));padding:20px 20px 18px;min-height:150px;display:flex;flex-direction:column;justify-content:space-between;gap:10px}.rn-card:hover{border-color:rgb(var(--ink-4))}.rn-card .num{font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;color:rgb(var(--ink-4))}.rn-card .tt{font-family:var(--font-serif);font-size:1.25rem;line-height:1.35;color:rgb(var(--ink-2))}.rn-card.current{border-color:rgb(var(--ink));background:rgb(var(--ink));color:rgb(var(--paper))}.rn-card.current .num{color:rgb(var(--paper) / .5)}.rn-card.current .tt{color:rgb(var(--paper))}.rn-card.current:after{content:"· THIS NOTE";position:absolute;top:20px;right:18px;font-family:var(--font-mono);font-size:9px;letter-spacing:.18em;color:rgb(var(--paper) / .55)}.rn-card.planned{opacity:.75;border-style:dashed;cursor:default}.rn-card.planned .tt{color:rgb(var(--ink-4));font-style:italic}.rn-card.planned:hover{border-color:rgb(var(--line-2))}.rn-card.planned:hover .tt{color:rgb(var(--ink-4))}.reveal{opacity:0;transform:translateY(16px);transition:opacity var(--motion-slow) var(--ease-editorial),transform var(--motion-slow) var(--ease-editorial)}.reveal.in{opacity:1;transform:none}@keyframes rn-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}[data-template=reading] .rise{opacity:0;animation:rn-rise .9s cubic-bezier(.2,.7,.3,1) forwards}.r-1{animation-delay:.05s}.r-2{animation-delay:.18s}.r-3{animation-delay:.32s}.r-4{animation-delay:.46s}.r-5{animation-delay:.58s}.r-6{animation-delay:.7s}.r-7{animation-delay:.82s}@media(max-width:720px){.rn-list{grid-template-columns:1fr 1fr}[data-template=reading] .hero-meta{gap:18px 30px}[data-template=reading] .sec-head{gap:16px}.meta2 li{font-size:1.12rem}}@media(max-width:460px){.rn-list{grid-template-columns:1fr}[data-template=reading] .series-inner{padding:48px 16px 36px}[data-template=reading] .hero{padding:100px 20px 90px}[data-template=reading] .hero-meta{gap:16px 24px}.meta2{grid-template-columns:1fr}.meta2 .col+.col{border-left:none;border-top:1px solid rgb(var(--line));margin-top:16px;padding-top:16px}.btc-body{padding:26px 22px 24px}}[data-template=research] body{font-size:16px;line-height:1.7}[data-template=research] ::-moz-selection{background:rgb(var(--accent));color:rgb(var(--paper))}[data-template=research] ::selection{background:rgb(var(--accent));color:rgb(var(--paper))}[data-template=research] a{color:rgb(var(--accent));text-decoration:none}[data-template=research] a:hover{text-decoration:underline}.r-wrap{max-width:1140px;margin:0 auto;padding:0 clamp(20px,4vw,44px)}.r-hero{position:relative;min-height:82vh;display:flex;align-items:center;padding:120px 0 90px;overflow:hidden;border-bottom:1px solid rgb(var(--line));background:radial-gradient(900px 480px at 78% 18%,rgb(var(--accent) / .05),transparent 62%),linear-gradient(rgb(28 25 23 / .055) 1px,transparent 1px),linear-gradient(90deg,rgb(28 25 23 / .055) 1px,transparent 1px);background-size:auto,44px 44px,44px 44px}.r-ghost{position:absolute;right:clamp(-40px,-2vw,-20px);top:50%;transform:translateY(-52%);font-family:var(--font-mono);font-weight:700;line-height:.8;font-size:clamp(150px,22vw,320px);color:rgb(var(--accent) / .05);-webkit-text-stroke:1px rgb(var(--accent) / .13);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;letter-spacing:-.04em}.r-eyebrow{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.16em;color:rgb(var(--muted));text-transform:uppercase;margin-bottom:34px}.r-eyebrow .rule{width:56px;height:1px;background:rgb(var(--accent) / .34)}.r-hero h1{font-family:var(--font-serif);font-weight:700;font-size:clamp(52px,9.5vw,112px);line-height:.98;letter-spacing:-.02em;margin-bottom:10px;color:rgb(var(--ink))}.r-hero .en{font-family:var(--font-serif);font-weight:500;font-size:clamp(18px,2.4vw,30px);color:rgb(var(--muted));letter-spacing:.01em;margin-bottom:26px}.r-hero .en b{color:rgb(var(--ink));font-weight:600}.r-hero .sub{max-width:640px;font-size:clamp(17px,2vw,21px);color:rgb(var(--ink));margin-bottom:10px;font-weight:500}.r-hero .sub-2{max-width:640px;font-size:15px;color:rgb(var(--muted));margin-bottom:40px}.r-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:44px}.r-tag{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;color:rgb(var(--muted));border:1px solid rgb(var(--line));padding:6px 14px;border-radius:2px;text-transform:uppercase}.r-tag.g{color:rgb(var(--accent));border-color:rgb(var(--accent) / .34)}.r-meta{display:flex;flex-wrap:wrap;gap:34px;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.1em;color:rgb(var(--muted));text-transform:uppercase}.r-meta b{display:block;color:rgb(var(--ink));font-weight:600;font-size:14px;letter-spacing:.02em;text-transform:none;margin-top:3px}.r-section{padding:clamp(64px,8vw,96px) 0;border-bottom:1px solid rgb(var(--line))}.r-section:last-child{border-bottom:none}.r-kick{display:flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;color:rgb(var(--accent));text-transform:uppercase;margin-bottom:18px}.r-kick:before{content:"";width:30px;height:1px;background:rgb(var(--accent) / .34)}.r-h2{font-family:var(--font-serif);font-weight:700;font-size:clamp(32px,5vw,54px);line-height:1.04;letter-spacing:-.015em;margin-bottom:18px;max-width:20ch}.r-h2 .thin{color:rgb(var(--muted));font-weight:500}.r-lede{max-width:740px;font-size:clamp(16px,1.6vw,19px);color:rgb(var(--ink));margin-bottom:8px}.r-lede b{color:rgb(var(--ink));font-weight:700}.r-banner{margin-top:36px;padding:clamp(28px,4vw,44px);background:linear-gradient(135deg,rgb(var(--panel)),rgb(var(--paper)));border:1px solid rgb(var(--accent) / .34);border-radius:3px;position:relative;overflow:hidden}.r-banner:after{content:"";position:absolute;right:-30px;top:-30px;width:200px;height:200px;background:radial-gradient(circle,rgb(var(--accent) / .06),transparent 70%)}.r-banner .lead{position:relative;font-family:var(--font-serif);font-weight:700;font-size:clamp(24px,3.4vw,40px);line-height:1.2;letter-spacing:-.01em}.r-banner .lead b{color:rgb(var(--accent))}.r-banner .sub{position:relative;color:rgb(var(--muted));margin-top:12px;font-size:15px;max-width:60ch}.r-grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:36px}.r-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}.r-grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}.r-grid5{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:36px}.r-card{background:rgb(var(--paper));border:1px solid rgb(var(--line));border-radius:3px;padding:26px 24px}.r-card h4{font-family:var(--font-serif);font-weight:600;font-size:19px;margin-bottom:8px;letter-spacing:-.01em}.r-card-b p{color:rgb(var(--muted));font-size:14px}.r-card-b p b{color:rgb(var(--ink));font-weight:600}.r-card .num{font-family:var(--font-serif);font-weight:700;color:rgb(var(--accent));font-size:clamp(38px,4.4vw,54px);line-height:1;letter-spacing:-.02em;margin-bottom:6px}.r-card .num.w{color:rgb(var(--ink))}.r-card .num.r{color:rgb(var(--accent-deep))}.r-card .num.g{color:rgb(var(--accent))}.r-card .num.sm{font-size:clamp(26px,2.8vw,34px)}.r-card .num.xs{font-size:26px}.r-card .src{margin-top:14px;padding-top:12px;border-top:1px dashed rgb(var(--line));font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;color:rgb(var(--muted));text-transform:uppercase}.r-flow{display:flex;flex-direction:column;gap:0;margin-top:34px}.r-step{display:flex;align-items:center;gap:16px;border:1px solid rgb(var(--line));background:rgb(var(--paper));padding:16px 20px;border-radius:3px}.r-step .n{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;color:rgb(var(--muted));text-transform:uppercase;white-space:nowrap}.r-step .t{font-weight:600;font-size:15px;color:rgb(var(--ink))}.r-step .d{margin-left:auto;color:rgb(var(--muted));font-size:13.5px;text-align:right}.r-step.hot{border-color:rgb(var(--accent) / .5);background:rgb(var(--accent) / .05)}.r-step.hot .n,.r-step.hot .t{color:rgb(var(--accent))}.r-flow-arrow{align-self:center;width:1px;height:22px;background:rgb(var(--accent) / .3);position:relative}.r-flow-arrow:after{content:"";position:absolute;left:50%;bottom:-2px;width:7px;height:7px;border-left:1px solid rgb(var(--accent) / .3);border-bottom:1px solid rgb(var(--accent) / .3);transform:translate(-50%) rotate(-45deg)}.r-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgb(var(--line))}.r-stat{padding:26px 22px;border-right:1px solid rgb(var(--line))}.r-stat:last-child{border-right:none}.r-stat .k{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;color:rgb(var(--muted));text-transform:uppercase;margin-bottom:14px}.r-stat .v{font-family:var(--font-serif);font-weight:700;font-size:clamp(30px,3.6vw,44px);line-height:1;letter-spacing:-.02em;color:rgb(var(--ink))}.r-stat .v.g{color:rgb(var(--accent))}.r-stat .v.neg{color:rgb(var(--accent-deep))}.r-stat p{color:rgb(var(--muted));font-size:13px;margin-top:8px}.r-stat p b{color:rgb(var(--ink));font-weight:500}.r-table{width:100%;border-collapse:collapse;font-size:14px}.r-table th{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:rgb(var(--accent));text-transform:uppercase;text-align:left;padding:12px 18px;border-bottom:1px solid rgb(var(--accent) / .34)}.r-table th.num{text-align:right}.r-table td{padding:16px 18px;border-bottom:1px dashed rgb(var(--line));vertical-align:top;color:rgb(var(--muted))}.r-table td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;color:rgb(var(--ink))}.r-table td.model{font-family:var(--font-serif);font-weight:600;font-size:18px;color:rgb(var(--ink));white-space:nowrap}[data-template=research] .r-table td.rise{color:rgb(var(--accent));font-weight:600;white-space:nowrap}.r-table tr:last-child td{border-bottom:none}.r-bars{display:flex;flex-direction:column;gap:6px}.r-bar{display:grid;grid-template-columns:40% 1fr 52px;align-items:center;gap:12px}.r-bar .lbl{font-size:13px;color:rgb(var(--muted));text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.r-bar .track{position:relative;height:22px}.r-bar .track:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:rgb(var(--line))}.r-bar .bar{position:absolute;top:0;height:100%;border-radius:1px}.r-bar .bar.pos{background:rgb(var(--accent));right:50%}.r-bar .bar.neg{background:rgb(var(--steel));left:50%}.r-bar .val{font-family:var(--font-mono);font-size:11.5px;font-weight:700;color:rgb(var(--ink));text-align:left;font-variant-numeric:tabular-nums}.r-bars-zero{font-family:var(--font-mono);font-size:10.5px;color:rgb(var(--muted));text-align:center;margin-top:8px}.r-split{display:grid;grid-template-columns:1fr 1fr;gap:0}.r-split .cell{padding:clamp(22px,3vw,34px)}.r-split .cell+.cell{border-left:1px solid rgb(var(--line))}.r-split .lbl{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:rgb(var(--muted));text-transform:uppercase;margin-bottom:10px}.r-chain{display:flex;flex-direction:column;gap:8px}.r-chain .c{border:1px dashed rgb(var(--line));border-radius:3px;padding:10px 14px;font-size:14px;color:rgb(var(--muted));background:rgb(var(--panel))}.r-chain .c.bot{background:rgb(var(--term-green) / .12);border-color:#699b2d80;color:rgb(var(--ink));font-weight:600}.r-chain .c b{color:rgb(var(--ink));font-weight:600}.r-chain .sep{text-align:center;color:rgb(var(--steel));font-family:var(--font-mono);font-size:13px}.r-split .cell p{color:rgb(var(--muted));font-size:14.5px;line-height:1.6;margin-top:10px}.r-split .cell p b{color:rgb(var(--ink));font-weight:600}.r-bigstat{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-top:8px}.r-bigstat .v{font-family:var(--font-serif);font-weight:700;font-size:clamp(30px,3.6vw,44px);line-height:1;letter-spacing:-.02em;color:rgb(var(--ink))}.r-bigstat .v.g{color:rgb(var(--accent))}.r-bigstat .v.r{color:rgb(var(--accent-deep))}.r-bigstat .arr{font-family:var(--font-mono);color:rgb(var(--muted));font-size:15px}.r-bigstat .aft{font-family:var(--font-serif);font-weight:700;color:rgb(var(--muted));font-size:clamp(20px,2.4vw,28px)}.r-era{display:flex;align-items:baseline;gap:10px;margin-bottom:12px;font-size:13px;color:rgb(var(--muted))}.r-era .e-k{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:rgb(var(--muted));text-transform:uppercase}.r-era.now .e-k{color:rgb(var(--accent))}.r-era .e-sub{color:rgb(var(--muted));font-size:14px}.r-era.now .e-sub{color:rgb(var(--accent))}.r-chips{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0 18px}.r-chip{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;color:rgb(var(--muted));border:1px solid rgb(var(--line));padding:3px 10px;border-radius:2px;text-transform:uppercase}.r-table .tag{display:block;margin-top:6px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;color:rgb(var(--muted));text-transform:uppercase}.r-table td .hl{color:rgb(var(--accent));font-weight:600}.r-table td .rev{color:rgb(var(--accent-deep));font-weight:600}.r-src-list{display:flex;flex-direction:column;gap:0;margin-top:20px}.r-src-item{display:grid;grid-template-columns:40px 1fr auto;gap:16px;align-items:baseline;padding:18px 0;border-bottom:1px solid rgb(var(--line))}.r-src-item:last-child{border-bottom:none}.r-src-item .n{font-family:var(--font-serif);font-weight:700;color:rgb(var(--accent));font-size:22px}.r-src-item .t b{display:block;color:rgb(var(--ink));font-size:16px;margin-bottom:2px}.r-src-item .t span{display:block;color:rgb(var(--muted));font-size:13.5px}.r-src-item .t .pri{display:inline-block;margin-top:6px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;color:rgb(var(--accent));text-transform:uppercase;border:1px solid rgb(var(--accent) / .34);padding:1px 8px;border-radius:2px}.r-src-item .u{font-family:var(--font-mono);font-size:11px;color:rgb(var(--muted));white-space:nowrap}.r-src-item .t .pri.hist{color:rgb(var(--muted));border-color:rgb(var(--line))}.r-so{display:flex;gap:18px;align-items:flex-start;margin-top:44px;padding:20px 22px;background:rgb(var(--accent) / .06);border-left:2px solid rgb(var(--accent));border-radius:2px}.r-so-k{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;color:rgb(var(--accent));text-transform:uppercase;white-space:nowrap;padding-top:2px}.r-so-b{color:rgb(var(--ink));font-size:clamp(15px,1.5vw,17px)}.r-so-b p{color:rgb(var(--ink))}.r-so-b p b{color:rgb(var(--accent))}.r-plate{background:rgb(var(--paper));border:1px solid rgb(var(--line));border-radius:3px;margin-top:40px;overflow:hidden}.r-plate-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 24px 0}.r-fig{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.14em;color:rgb(var(--accent));text-transform:uppercase}.r-cap{font-family:var(--font-mono);font-size:11.5px;color:rgb(var(--muted))}.r-cap b{color:rgb(var(--ink));font-weight:600}.r-plate-body{padding:18px 24px 24px;overflow-x:auto}.r-concl-wrap{border-bottom:none}.r-concl{max-width:820px;margin:0 auto;text-align:center}.r-kick.center{justify-content:center}.r-kick.center:before{display:none}.r-concl-big{font-family:var(--font-serif);font-weight:700;font-size:clamp(34px,5vw,58px);line-height:1.08;letter-spacing:-.02em;margin-bottom:18px}.r-concl-big b{color:rgb(var(--accent))}.r-concl-sub{color:rgb(var(--muted));font-size:clamp(15px,1.6vw,18px);max-width:60ch;margin:0 auto}.r-watch{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;padding:72px 0 96px;border-bottom:1px solid rgb(var(--line))}.r-related{padding:clamp(56px,7vw,84px) 0;border-top:1px solid rgb(var(--line));border-bottom:1px solid rgb(var(--line));background:rgb(var(--paper))}.r-rel-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:28px}.r-rel-card{display:flex;flex-direction:column;gap:6px;border:1px solid rgb(var(--line));border-radius:3px;padding:20px 22px;text-decoration:none;transition:border-color .25s var(--ease-out, ease)}.r-rel-card:hover{border-color:rgb(var(--accent) / .5)}.r-rel-date{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;color:rgb(var(--muted));text-transform:uppercase}.r-rel-tt{font-family:var(--font-serif);font-weight:600;font-size:19px;color:rgb(var(--ink));line-height:1.25}.r-question{max-width:1140px;margin:0 auto;padding:clamp(40px,6vw,64px) clamp(20px,4vw,44px) 0}.r-question-t{font-family:var(--font-serif);font-weight:700;font-size:clamp(30px,4.5vw,50px);line-height:1.15;letter-spacing:-.01em;color:rgb(var(--ink));margin-top:6px;max-width:24ch}.r-openq{max-width:1140px;margin:0 auto;padding:clamp(56px,7vw,84px) clamp(20px,4vw,44px) 0}.r-openq-list{display:flex;flex-direction:column;gap:12px;margin-top:20px;list-style:none;padding:0}.r-openq-list li{position:relative;padding-left:22px;font-size:clamp(15px,1.5vw,17px);color:rgb(var(--ink));max-width:64ch}.r-openq-list li:before{content:"→";position:absolute;left:0;color:rgb(var(--accent))}.r-so-k.wrap{white-space:normal;line-height:1.5}.r-matrix{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgb(var(--line));border:1px solid rgb(var(--line));border-radius:3px;overflow:hidden;margin-top:36px}.r-quad{background:rgb(var(--paper));padding:28px 26px}.r-quad .q{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;color:rgb(var(--accent));text-transform:uppercase}.r-quad h4{font-family:var(--font-serif);font-weight:600;font-size:20px;margin-top:10px;letter-spacing:-.01em}.r-quad .en{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;color:rgb(var(--muted));text-transform:uppercase;margin-top:2px;margin-bottom:12px}.r-quad p{color:rgb(var(--muted));font-size:14px}.r-formula{margin-top:36px;padding:34px 28px;border:1px solid rgb(var(--line));border-radius:3px;background:rgb(var(--paper));text-align:center}.r-formula .eq{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;font-family:var(--font-serif);font-weight:700;font-size:clamp(22px,3vw,34px);line-height:1.3;color:rgb(var(--ink))}.r-formula .eq .op,.r-formula .eq .eq-res{color:rgb(var(--accent))}.r-formula .note{margin-top:16px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;color:rgb(var(--muted));text-transform:uppercase}.r-compare{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:36px}.r-compare .col{border:1px solid rgb(var(--line));border-radius:3px;padding:28px 26px;background:rgb(var(--paper))}.r-compare .head{display:flex;align-items:baseline;gap:10px;margin-bottom:16px}.r-compare .head .x{font-family:var(--font-serif);font-size:22px;font-weight:700}.r-compare .head h3{font-family:var(--font-serif);font-weight:600;font-size:19px}.r-compare .bad .head .x{color:rgb(var(--accent-deep))}.r-compare .good .head .x{color:rgb(var(--term-green))}.r-compare ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.r-compare ul li{color:rgb(var(--muted));font-size:14.5px;line-height:1.5}.r-compare ul li b{color:rgb(var(--ink));font-weight:600}.r-tl{display:flex;gap:0;margin-top:36px;position:relative}.r-tl-node{flex:1;text-align:center;position:relative;padding-top:18px}.r-tl-node:before{content:"";position:absolute;top:0;left:50%;width:9px;height:9px;border-radius:50%;background:rgb(var(--paper));border:2px solid rgb(var(--steel));transform:translate(-50%,-50%)}.r-tl-node .y{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;color:rgb(var(--muted));text-transform:uppercase}.r-tl-node .x{font-size:14px;color:rgb(var(--muted));margin-top:4px}.r-tl:before{content:"";position:absolute;top:0;left:12.5%;right:12.5%;height:1px;background:rgb(var(--line))}.r-tl-node.hot:before{background:rgb(var(--accent));border-color:rgb(var(--accent))}.r-tl-node.hot .y,.r-tl-node.hot .x{color:rgb(var(--accent))}.r-spark{width:100%;height:auto;display:block;margin-top:14px}.r-plate-body.flush{padding:0}.r-section>p{color:rgb(var(--muted));font-size:16px;line-height:1.8;margin-top:18px;max-width:70ch}.r-section>p b,.r-section>p strong{color:rgb(var(--ink));font-weight:600}.r-section>ul{color:rgb(var(--muted));font-size:15.5px;line-height:1.7;margin-top:14px;padding-left:1.4em;list-style:disc}.r-section>ul b,.r-section>ul strong{color:rgb(var(--ink))}.r-thesis{max-width:900px;margin:0 auto;text-align:center}.r-thesis-big{font-family:var(--font-serif);font-weight:700;font-size:clamp(34px,5.4vw,66px);line-height:1.08;letter-spacing:-.02em;margin:0 auto 22px;color:rgb(var(--ink))}.r-thesis-big .thin{color:rgb(var(--muted));font-weight:500}.r-thesis-echo{font-family:var(--font-mono);font-size:13.5px;letter-spacing:.06em;color:rgb(var(--muted));text-transform:uppercase}.r-thesis-note{margin:16px auto 0;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;color:rgb(var(--accent))}@media(max-width:860px){.r-split{grid-template-columns:1fr}.r-split .cell+.cell{border-left:none;border-top:1px solid rgb(var(--line))}.r-matrix,.r-compare{grid-template-columns:1fr}}@media(max-width:720px){.r-grid2,.r-grid3,.r-grid4,.r-grid5{grid-template-columns:1fr}.r-stat-grid{grid-template-columns:1fr 1fr}.r-tl{flex-direction:column;gap:0}.r-tl:before{display:none}.r-tl-node:before{top:0;left:0;transform:translateY(-50%)}.r-src-item{grid-template-columns:32px 1fr;gap:10px 12px}.r-src-item .u{grid-column:2;white-space:normal;overflow-wrap:anywhere}}[data-template=engineering] body{font-size:17px;line-height:1.78}[data-template=engineering] body:before{content:"";position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,rgb(var(--accent)) 0 90px,rgb(var(--ink)) 90px 100%);z-index:100}[data-template=engineering] ::-moz-selection{background:rgb(var(--accent));color:rgb(var(--card))}[data-template=engineering] ::selection{background:rgb(var(--accent));color:rgb(var(--card))}[data-template=engineering] a{color:rgb(var(--accent));text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgb(var(--accent) / .35)}[data-template=engineering] a:hover{color:rgb(var(--accent-deep));text-decoration-color:rgb(var(--accent-deep))}[data-template=engineering] .hero{border-bottom:1px solid rgb(var(--line))}[data-template=engineering] .hero-inner{max-width:1200px;margin:0 auto;padding:92px 28px 76px;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:72px;align-items:start}[data-template=engineering] .hero-copy{min-width:0}[data-template=engineering] .hero-copy .kicker{color:rgb(var(--accent));font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700}[data-template=engineering] .hero-copy .hero-title{margin:18px 0 20px;font-family:var(--font-serif);font-size:clamp(48px,6.4vw,88px);line-height:.96;font-weight:500;letter-spacing:-.035em;color:rgb(var(--ink))}[data-template=engineering] .hero-copy .hero-deck{margin:0;max-width:760px;font-size:21px;line-height:1.55;color:rgb(var(--ink-2))}[data-template=engineering] .hero-copy .hero-meta{margin-top:34px;display:flex;gap:20px;flex-wrap:wrap;font-family:var(--font-mono);font-size:11px;color:rgb(var(--muted))}[data-template=engineering] .hero-copy .hero-meta span:before{content:"· ";color:rgb(var(--accent))}[data-template=engineering] .hero-copy .hero-meta span:first-child:before{content:""}[data-template=engineering] .hero-side{border-left:1px solid rgb(var(--line));padding-left:28px}[data-template=engineering] .hero-side .label{font-family:var(--font-mono);font-size:10px;color:rgb(var(--muted));text-transform:uppercase;letter-spacing:.1em;margin-top:25px}[data-template=engineering] .hero-side .label:first-child{margin-top:0}[data-template=engineering] .hero-side strong{display:block;font-size:15px;font-weight:650;color:rgb(var(--ink));margin:7px 0 0;line-height:1.5}[data-template=engineering] .eng-layout{max-width:1152px;margin:0 auto;padding:64px 24px 110px;display:grid;grid-template-columns:180px minmax(0,720px) 220px;gap:16px;align-items:start}[data-template=engineering] .eng-layout.no-toc{grid-template-columns:minmax(0,720px) 220px}[data-template=engineering] .eng-layout.no-side{grid-template-columns:180px minmax(0,720px)}[data-template=engineering] .eng-layout.no-toc.no-side{grid-template-columns:minmax(0,720px)}[data-template=engineering] .toc{position:sticky;top:76px;font-size:12px;border-top:2px solid rgb(var(--ink));padding-top:13px}[data-template=engineering] .toc a{display:block;text-decoration:none;color:var(--muted);color:rgb(var(--muted));padding:7px 0;line-height:1.5}[data-template=engineering] .toc a:hover{color:rgb(var(--ink))}[data-template=engineering] .article{min-width:0}[data-template=engineering] .sidecard{position:sticky;top:76px;border-top:2px solid rgb(var(--ink));padding-top:14px}[data-template=engineering] .sidecard h4{font-size:13px;font-weight:650;color:rgb(var(--ink));margin:0 0 12px}[data-template=engineering] .sidecard h4+h4{margin-top:30px}[data-template=engineering] .sidecard ul{padding-left:17px;margin:0}[data-template=engineering] .sidecard li{font-size:12px;color:rgb(var(--muted));line-height:1.65;margin:0 0 7px}[data-template=engineering] .sec,[data-template=engineering] #tmap,[data-template=engineering] #tl,[data-template=engineering] #refs{scroll-margin-top:26px}[data-template=engineering] .lead{margin:0 0 28px}[data-template=engineering] .lead>p:first-child{font-size:22px;line-height:1.6;color:rgb(var(--ink));margin:0 0 20px}[data-template=engineering] .lead>p:not(:first-child){font-size:17px;color:rgb(var(--ink));margin:0 0 24px}[data-template=engineering] .lead p:first-child strong:first-child{color:rgb(var(--accent));font-weight:700}[data-template=engineering] .sec{margin-top:40px}[data-template=engineering] .sec h2{font-family:var(--font-serif);font-size:42px;font-weight:500;line-height:1.05;margin:80px 0 20px;letter-spacing:-.02em;color:rgb(var(--ink))}[data-template=engineering] .sec .number{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;border:1px solid rgb(var(--line));border-radius:50%;font:11px var(--font-mono);color:rgb(var(--accent));margin-right:7px;vertical-align:3px}[data-template=engineering] .article p{font-size:17px;line-height:1.78;color:rgb(var(--ink));margin:0 0 24px}[data-template=engineering] .article strong{font-weight:700}[data-template=engineering] .article em{color:rgb(var(--accent-deep));font-style:italic}[data-template=engineering] .article ul,[data-template=engineering] .article ol{margin:0 0 24px;padding-left:22px}[data-template=engineering] .article li{margin:0 0 10px;padding-left:4px}[data-template=engineering] .article li::marker{color:rgb(var(--accent))}[data-template=engineering] .article p>code,[data-template=engineering] .article li>code{font-family:var(--font-mono);font-size:.84em;background:rgb(var(--code-inline-bg));border:1px solid rgb(var(--code-inline-line));padding:1px 6px;border-radius:3px;color:rgb(var(--code-inline-ink));white-space:nowrap}[data-template=engineering] .article .mono{font-family:var(--font-mono);font-size:.92em;color:rgb(var(--ink));display:inline-block}[data-template=engineering] .article .katex{font-size:1.04em}[data-template=engineering] .article .katex-display{margin:30px 0}[data-template=engineering] .article .katex-display>.katex{font-size:1.15em}[data-template=engineering] .article table{width:100%;border-collapse:collapse;margin:30px 0;font-size:14px}[data-template=engineering] .article th,[data-template=engineering] .article td{text-align:left;padding:12px 10px;border-bottom:1px solid rgb(var(--line));vertical-align:top}[data-template=engineering] .article th{font:10px var(--font-mono);text-transform:uppercase;color:rgb(var(--muted));letter-spacing:.08em}[data-template=engineering] .series{border-top:1px solid rgb(var(--line-2));background:rgb(var(--paper-2))}[data-template=engineering] .series-inner{max-width:1200px;margin:0 auto;padding:44px 28px 40px}[data-template=engineering] .series-top{display:flex;justify-content:space-between;align-items:center;gap:16px;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgb(var(--muted));margin-bottom:18px}[data-template=engineering] .series-top .t b{color:rgb(var(--accent));font-weight:600}[data-template=engineering] .fn-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}[data-template=engineering] .fn-card{border:1px solid rgb(var(--line-2));background:rgb(var(--card));padding:13px 15px;text-decoration:none;display:block}[data-template=engineering] .fn-card .num{font-family:var(--font-mono);font-size:10.5px;color:rgb(var(--muted))}[data-template=engineering] .fn-card .tt{font-family:var(--font-mono);font-size:12px;color:rgb(var(--ink));font-weight:600;margin-top:7px;line-height:1.5;display:block}[data-template=engineering] .fn-card:hover{border-color:rgb(var(--accent))}[data-template=engineering] .fn-card:hover .tt{color:rgb(var(--accent-deep))}[data-template=engineering] .fn-card.current{border-color:rgb(var(--accent));background:rgb(var(--accent-soft))}[data-template=engineering] .fn-card.current .num{color:rgb(var(--accent))}[data-template=engineering] .fn-card.planned{border-style:dashed;opacity:.6;cursor:default}[data-template=engineering] .fn-card.planned:hover{border-color:rgb(var(--line-2))}[data-template=engineering] .fn-card.planned:hover .tt{color:rgb(var(--ink))}[data-template=engineering] .callout{margin:34px 0;padding:25px 28px;background:rgb(var(--card));border:1px solid rgb(var(--line));border-left:4px solid rgb(var(--accent))}[data-template=engineering] .callout .label{font:10px var(--font-mono);letter-spacing:.12em;color:rgb(var(--accent));text-transform:uppercase;margin-bottom:8px}[data-template=engineering] .callout p:last-child{margin-bottom:0}[data-template=engineering] .evidence{margin:34px 0;padding:22px;background:#eeeee8;border:1px solid rgb(var(--line))}[data-template=engineering] .evidence .evidence-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:12px;align-items:baseline}[data-template=engineering] .evidence .evidence-title{font-weight:700;color:rgb(var(--ink));font-size:14px}[data-template=engineering] .evidence .badge{font:10px var(--font-mono);border:1px solid #b9b6ad;padding:4px 7px;color:#555851;white-space:nowrap;letter-spacing:.06em}[data-template=engineering] .evidence p{font-size:14px;color:#555851;margin:0;line-height:1.7}[data-template=engineering] .fig{margin:42px 0;border:1px solid rgb(var(--line));background:rgb(var(--card))}[data-template=engineering] .fig.dark{background:#202522;border-color:#202522}[data-template=engineering] .fig .fig-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 16px;border-bottom:1px solid rgb(var(--line));font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgb(var(--muted))}[data-template=engineering] .fig.dark .fig-bar{border-bottom-color:#333a36;color:#aab7b1}[data-template=engineering] .fig .fig-bar .t{color:rgb(var(--ink));font-weight:600}[data-template=engineering] .fig.dark .fig-bar .t{color:#f1eee6}[data-template=engineering] .fig .fig-bar .g{color:rgb(var(--accent))}[data-template=engineering] .fig.dark .fig-bar .g{color:#d9a28e}[data-template=engineering] .fig .fig-body{padding:24px 26px}[data-template=engineering] .fig.dark .fig-body{display:flex;align-items:center;justify-content:center;min-height:260px;overflow:hidden;padding:0}[data-template=engineering] .fig.dark .fig-body svg{width:100%;height:100%;min-height:260px}[data-template=engineering] .fig .fig-body ul{list-style:none;margin:0;padding:0}[data-template=engineering] .fig .fig-body li{padding:6px 0;font-size:14.5px;color:rgb(var(--ink-2));border-bottom:1px dashed rgb(var(--line))}[data-template=engineering] .fig .fig-body li:last-child{border-bottom:none}[data-template=engineering] .fig .fig-body img{display:block;width:100%;height:auto;border:1px solid rgb(var(--line))}[data-template=engineering] .fig .fig-cap{font-size:12px;color:rgb(var(--muted));margin-top:9px;padding:0 4px;line-height:1.6}[data-template=engineering] .fig .fig-cap .num{font-family:var(--font-mono);color:rgb(var(--accent));margin-right:8px}[data-template=engineering] .quote{margin:38px 0;padding:4px 0 4px 22px;border-left:2px solid rgb(var(--accent))}[data-template=engineering] .quote .lbl{font:10px var(--font-mono);letter-spacing:.16em;color:rgb(var(--muted));text-transform:uppercase;margin-bottom:12px}[data-template=engineering] .quote blockquote{margin:0}[data-template=engineering] .quote p{font-family:var(--font-serif);font-size:27px;line-height:1.35;color:rgb(var(--ink));margin:0}[data-template=engineering] .quote p strong{font-weight:600;color:rgb(var(--accent-deep))}[data-template=engineering] .quote .en{display:block;margin-top:12px;font-family:var(--font-mono);font-size:12px;color:rgb(var(--muted));line-height:1.6}[data-template=engineering] .quote .en:before{content:"—— ";color:rgb(var(--accent))}[data-template=engineering] .flow{margin:38px 0;border-top:1px solid rgb(var(--line));border-bottom:1px solid rgb(var(--line))}[data-template=engineering] .flow .flow-row{display:grid;grid-template-columns:140px 1fr;min-height:66px;border-bottom:1px solid rgb(var(--line))}[data-template=engineering] .flow .flow-row:last-child{border-bottom:0}[data-template=engineering] .flow .flow-stage{padding:16px;font:11px var(--font-mono);color:rgb(var(--accent));letter-spacing:.04em;border-right:1px solid rgb(var(--line))}[data-template=engineering] .flow .flow-body{padding:16px 18px;font-size:14px;line-height:1.6;color:rgb(var(--ink-2))}[data-template=engineering] .endnote{margin-top:50px;padding:28px;background:rgb(var(--ink));color:#f4f0e8}[data-template=engineering] .endnote .label{font:10px var(--font-mono);letter-spacing:.12em;color:#b9c8c3;margin-bottom:10px}[data-template=engineering] .endnote p{font-size:15px;line-height:1.7;margin:0 0 12px}[data-template=engineering] .endnote p:last-child{margin-bottom:0}[data-template=engineering] .term{margin:28px 0;background:rgb(var(--code-bg));border:1px solid rgb(var(--code-line));border-radius:6px;overflow:hidden}[data-template=engineering] .term-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;background:rgb(var(--code-panel));border-bottom:1px solid rgb(var(--code-line));font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--code-dim))}[data-template=engineering] .term-cmt{font-family:var(--font-mono);font-size:10px;color:rgb(var(--code-dim))}[data-template=engineering] .term-body{position:relative;margin:0;padding:15px 17px;overflow-x:auto;font-family:var(--font-mono);font-size:12.5px;line-height:1.8;color:rgb(var(--code-ink));white-space:pre}[data-template=engineering] .term .err{color:rgb(var(--code-kw))}[data-template=engineering] .term .out{color:rgb(var(--code-dim))}[data-template=engineering] .term .cmt{color:rgb(var(--code-cm))}[data-template=engineering] .term .caret{display:inline-block;width:8px;height:14px;background:rgb(var(--term-green));vertical-align:text-bottom;animation:blink 1.1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.tmap{margin:44px 0}.tmap-cols{display:grid;grid-template-columns:1fr 1fr}.tmap-col{padding:22px 24px 24px}.tmap-col+.tmap-col{border-left:1px solid rgb(var(--line))}.tmap-col .ct{display:flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:18px}.tmap-col .ct .mk{width:8px;height:8px;flex:none}.tmap-col .ct .zh{font-size:12px;letter-spacing:.1em;color:rgb(var(--ink-4));margin-left:2px}.tmap-col.can .ct{color:rgb(var(--ink))}.tmap-col.can .ct .mk{background:rgb(var(--accent))}.tmap-col.cant .ct{color:rgb(var(--ink-3))}.tmap-col.cant .ct .mk{background:rgb(var(--ink-4))}.tmap-node{border:1px solid rgb(var(--line-2));background:rgb(var(--paper-2));padding:10px 14px;font-family:var(--font-mono);font-size:12.5px;font-weight:600;color:rgb(var(--ink))}.tmap-node .tag{color:rgb(var(--ink-4));font-weight:400}.tmap-arrow{text-align:center;font-family:var(--font-mono);font-size:13px;color:rgb(var(--accent));padding:6px 0 4px}.tmap-list{list-style:none;margin:12px 0;padding:0}.tmap-list li{display:flex;gap:10px;align-items:baseline;font-family:var(--font-mono);font-size:12.5px;color:rgb(var(--ink-2));padding:7px 0;border-bottom:1px dashed rgb(var(--line))}.tmap-list li:last-child{border-bottom:none}.tmap-list li .mk{color:rgb(var(--accent));flex:none}.tmap-list li.cant .mk{color:rgb(var(--ink-4))}.tmap-list li .tag{color:rgb(var(--ink-4));font-weight:400}.tmap-thesis{border-top:1px solid rgb(var(--line));background:rgb(var(--paper-2));padding:20px 24px;font-size:16.5px;font-weight:550;line-height:1.7;color:rgb(var(--ink))}.tmap-thesis em{font-style:normal;color:rgb(var(--accent-deep));font-weight:650}.tmap-thesis .en{display:block;margin-top:8px;font-family:var(--font-mono);font-size:12px;font-weight:400;color:rgb(var(--ink-3));line-height:1.6}.tmap-thesis .en:before{content:"—— ";color:rgb(var(--accent))}.broken-list{padding:8px 0;counter-reset:broken}.broken-list p{display:flex;gap:16px;align-items:baseline;padding:12px 22px;margin:0;font-size:15px;color:rgb(var(--ink-2));line-height:1.6;counter-increment:broken}.broken-list p:before{content:"0" counter(broken);font-family:var(--font-mono);font-size:11px;color:rgb(var(--accent));font-weight:600;flex:none}.broken-list p+p{border-top:1px dashed rgb(var(--line))}.broken-list p b{color:rgb(var(--ink))}.bars-body{padding:20px 24px 22px}.bar-row{margin-top:18px}.bar-row:first-child{margin-top:0}.bar-lbl{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--font-mono);font-size:12px;color:rgb(var(--ink));margin-bottom:8px}.bar-lbl .v{color:rgb(var(--accent));font-weight:600}.bar-lbl .v.gray{color:rgb(var(--ink-3))}.bar-track{height:5px;background:rgb(var(--line));position:relative;overflow:hidden}.bar-fill{position:absolute;top:0;bottom:0;left:0;background:rgb(var(--ink))}.bar-fill.accent{background:rgb(var(--accent))}.bars-note{margin-top:16px;font-family:var(--font-mono);font-size:10.5px;color:rgb(var(--ink-4));letter-spacing:.04em}[data-template=engineering] .loop{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0;margin:22px 0 6px}[data-template=engineering] .loop .ln{font-family:var(--font-mono);font-size:12.5px;color:rgb(var(--ink));border:1px solid rgb(var(--line-2));background:rgb(var(--card));padding:9px 15px;border-radius:3px}[data-template=engineering] .loop .ln b{color:rgb(var(--accent));font-weight:600}[data-template=engineering] .loop .ar{font-family:var(--font-mono);color:rgb(var(--ink-3));padding:0 7px}[data-template=engineering] .loop .back{width:100%;text-align:center;font-family:var(--font-mono);font-size:11px;color:rgb(var(--ink-4));margin-top:8px}.tl{margin:44px 0}.tl-body{padding:22px 26px 10px}.tl-item{display:grid;grid-template-columns:84px 1fr;gap:18px;position:relative;padding:0 0 20px}.tl-item:before{content:"";position:absolute;left:4px;top:8px;bottom:-4px;width:1px;background:rgb(var(--line))}.tl-item:last-child:before{display:none}.tl-item .dot{grid-column:1;grid-row:1;position:relative;z-index:1;width:9px;height:9px;background:rgb(var(--card));border:2px solid rgb(var(--accent));margin-top:5px}.tl-item .month{grid-column:2;grid-row:1;font-family:var(--font-mono);font-size:12px;font-weight:600;color:rgb(var(--ink-3));padding-top:2px}.tl-item .desc{grid-column:2;grid-row:2;font-size:14.5px;color:rgb(var(--ink-2));padding-top:1px}.tl-item .desc p{margin:0}.tl-item .desc b{color:rgb(var(--ink))}.tl-status{margin:6px 26px 24px;border:1px solid rgb(var(--accent));background:rgb(var(--accent-soft));padding:14px 18px}.tl-status .lbl{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:rgb(var(--accent-deep));font-weight:600;margin-bottom:6px}.tl-status p{margin:0;font-size:17px;font-weight:650;color:rgb(var(--ink))}[data-template=engineering] .refs{border-top:1px solid rgb(var(--line));margin-top:80px;padding-top:38px}[data-template=engineering] .refs-h{font-family:var(--font-serif);font-size:42px;font-weight:500;letter-spacing:-.02em;color:rgb(var(--ink));line-height:1.05}[data-template=engineering] .refs-h .zh{display:block;margin-top:10px;font:11px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:rgb(var(--muted))}[data-template=engineering] .refs-intro{margin-top:16px;font-size:13px;line-height:1.7;color:rgb(var(--ink-2))}[data-template=engineering] .refs-groups{margin-top:22px}[data-template=engineering] .refs-group+.refs-group{margin-top:34px}[data-template=engineering] .refs-g{font:10px var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:rgb(var(--muted));margin-bottom:10px}[data-template=engineering] .refs-g .zh{color:rgb(var(--accent));letter-spacing:.04em;margin-left:8px}[data-template=engineering] .refs-list{list-style:none;margin:0;padding:0}[data-template=engineering] .ref-item{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:17px 0;border-bottom:1px solid rgb(var(--line));font-size:13px}[data-template=engineering] .refs-group .ref-item:first-child{border-top:1px solid rgb(var(--line))}[data-template=engineering] .ref-item .ref-num{font:11px var(--font-mono);color:rgb(var(--accent));padding-top:1px}[data-template=engineering] .ref-item .ref-authors{font-size:12.5px;color:rgb(var(--ink-3));line-height:1.6}[data-template=engineering] .ref-item .ref-title{display:inline-block;margin-top:2px;font-size:14px;font-weight:650;color:rgb(var(--ink));text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgb(var(--accent) / .35);line-height:1.55}[data-template=engineering] .ref-item .ref-title:hover{color:rgb(var(--accent-deep));text-decoration-color:rgb(var(--accent-deep))}[data-template=engineering] .ref-item .ref-venue{margin-top:2px;font-size:12.5px;color:rgb(var(--muted));line-height:1.6}[data-template=engineering] .ref-item .ref-doi{display:inline-block;margin-top:3px;font-family:var(--font-mono);font-size:11px;color:rgb(var(--accent));text-decoration:none}[data-template=engineering] .ref-item .ref-doi:hover{text-decoration:underline}[data-template=engineering] .ref-item .ref-note{margin-top:5px;font-size:12.5px;color:rgb(var(--ink-4));line-height:1.6}[data-template=engineering] .sec sup.cite,[data-template=engineering] .lead sup.cite{line-height:0}[data-template=engineering] .sec sup.cite a,[data-template=engineering] .lead sup.cite a{font-family:var(--font-mono);font-size:.72em;font-weight:600;color:rgb(var(--accent));text-decoration:none}[data-template=engineering] .sec sup.cite a:hover,[data-template=engineering] .lead sup.cite a:hover{color:rgb(var(--accent-deep))}[data-template=engineering] .status{margin:44px 0 64px;border:1px solid rgb(var(--accent));background:rgb(var(--accent-soft));padding:24px 28px}[data-template=engineering] .status .lbl{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:rgb(var(--accent-deep));font-weight:600;margin-bottom:10px}[data-template=engineering] .status p{margin:0;font-size:clamp(18px,2.4vw,22px);font-weight:650;color:rgb(var(--ink));letter-spacing:-.01em;line-height:1.5}[data-template=engineering] .status .en{display:block;margin-top:10px;font-family:var(--font-mono);font-size:12px;color:rgb(var(--ink-3));line-height:1.7}[data-template=engineering] .status .en:before{content:"—— ";color:rgb(var(--accent))}@media(max-width:1000px){[data-template=engineering] .eng-layout{grid-template-columns:150px minmax(0,1fr);max-width:900px}[data-template=engineering] .eng-layout .sidecard{display:none}[data-template=engineering] .eng-layout.no-toc{grid-template-columns:minmax(0,1fr)}[data-template=engineering] .hero-inner{grid-template-columns:minmax(0,1fr) 240px;gap:40px}[data-template=engineering] .series-inner{padding:40px 20px 36px}[data-template=engineering] .fn-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){[data-template=engineering] body{font-size:16px}[data-template=engineering] .hero-inner{display:block;padding:58px 18px 48px}[data-template=engineering] .hero-side{border-left:0;border-top:1px solid rgb(var(--line));margin-top:35px;padding:22px 0 0}[data-template=engineering] .hero-side .label{margin-top:16px}[data-template=engineering] .hero-side .label:first-child{margin-top:0}[data-template=engineering] .hero-copy .hero-title{font-size:54px}[data-template=engineering] .hero-copy .hero-deck{font-size:18px}[data-template=engineering] .eng-layout{display:block;padding-top:35px;padding-left:18px;padding-right:18px}[data-template=engineering] .toc{position:relative;top:auto;margin-bottom:45px;padding-bottom:14px;border-bottom:1px solid rgb(var(--line))}[data-template=engineering] .toc a{display:inline-block;margin-right:13px}[data-template=engineering] .sec h2{font-size:36px;margin-top:58px}[data-template=engineering] .article p{font-size:16px}[data-template=engineering] .flow .flow-row{grid-template-columns:100px 1fr}[data-template=engineering] .series-inner{padding:36px 18px 32px}[data-template=engineering] .fn-list{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){[data-template=engineering] .term .caret{animation:none}}
