/* ===== channels.css — generated by _deploy/build.py; do not hand-edit ===== */
/* Rendering cost controls for long lists (54+ cards). The film-grain overlay in style.css is a
   full-viewport fixed layer animated 6x/sec with mix-blend-mode:overlay, which forces the whole
   page to re-composite every frame; on GPU-limited machines that freezes long pages.
   Keep the look, but isolate the overlays and skip rendering off-screen cards. */
.grain{animation:none!important;mix-blend-mode:normal;opacity:.06;contain:strict}
.led{animation:none!important;opacity:1}
.scanlines,.vignette{contain:strict}
.post-item{content-visibility:auto;contain-intrinsic-size:auto 420px}
.chan-row{display:flex;flex-wrap:wrap;gap:10px;margin:-16px 0 30px;font-family:"Chakra Petch",sans-serif;font-size:11px;letter-spacing:.24em;text-transform:uppercase}
.chan-row a{display:inline-flex;align-items:center;gap:.5em;color:var(--dim);border:1px solid var(--edge);border-radius:2px;padding:7px 13px;transition:color .25s,border-color .25s,background .25s}
.chan-row a:hover{color:var(--ink);border-color:rgba(84,214,230,.5)}
.chan-row a.is-current{color:var(--ink);border-color:var(--teal);background:rgba(84,214,230,.08)}
.chan-row .chan-dot{width:.5em;height:.5em;border-radius:50%;background:currentColor;opacity:.9}
.card-flag,.post-flag{color:var(--amber)}
.card-flag--draft,.post-flag--draft{color:var(--red)!important}
.foot-links a{color:var(--teal)}
/* 7 filter chips (ALL + 6 channels): slightly tighter so the row fits on one line at desktop widths */
@media (max-width:1100px){.chan-row{gap:8px;letter-spacing:.18em}.chan-row a{padding:6px 11px}}
@media (max-width:720px){.chan-row{margin-top:-8px}.chan-row a{padding:6px 10px;letter-spacing:.14em;font-size:10.5px}}
/* "Originally published at <host>" line under the dek on syndicated posts */
.post-origin{margin-top:12px;font-family:"Chakra Petch",sans-serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}
.post-origin a{color:var(--teal);border-bottom:1px solid rgba(84,214,230,.35)}
.post-origin a:hover{color:var(--ink);border-bottom-color:currentColor}
/* pager: NEWER / OLDER links + "PAGE n / N" under a paginated index (lists split at PAGE_SIZE cards) */
.pager{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-top:40px;padding-top:24px;border-top:1px solid var(--edge);font-family:"Chakra Petch",sans-serif;font-size:11px;letter-spacing:.24em;text-transform:uppercase}
.pager a{display:inline-flex;align-items:center;color:var(--dim);border:1px solid var(--edge);border-radius:2px;padding:9px 14px;transition:color .25s,border-color .25s,background .25s}
.pager a:hover{color:var(--ink);border-color:var(--teal);background:rgba(84,214,230,.08)}
.pager-newer{justify-self:start}
.pager-older{justify-self:end}
.pager-label{justify-self:center;color:var(--dim);letter-spacing:.3em;white-space:nowrap}
@media (max-width:720px){.pager{gap:10px;letter-spacing:.16em}.pager a{padding:8px 11px}.pager-label{letter-spacing:.2em}}
.card-flag--engineering,.post-flag--engineering,.chan-row a.chan--engineering.is-current,.chan-row a.chan--engineering:hover{color:#54d6e6}
.chan-row a.chan--engineering.is-current{border-color:#54d6e6}
.card-flag--arkwright,.post-flag--arkwright,.chan-row a.chan--arkwright.is-current,.chan-row a.chan--arkwright:hover{color:var(--amber)}
.chan-row a.chan--arkwright.is-current{border-color:var(--amber)}
.card-flag--paydown,.post-flag--paydown,.chan-row a.chan--paydown.is-current,.chan-row a.chan--paydown:hover{color:#7ee787}
.chan-row a.chan--paydown.is-current{border-color:#7ee787}
.card-flag--saltlight,.post-flag--saltlight,.chan-row a.chan--saltlight.is-current,.chan-row a.chan--saltlight:hover{color:#f4b860}
.chan-row a.chan--saltlight.is-current{border-color:#f4b860}
.card-flag--ambervial,.post-flag--ambervial,.chan-row a.chan--ambervial.is-current,.chan-row a.chan--ambervial:hover{color:#d29bff}
.chan-row a.chan--ambervial.is-current{border-color:#d29bff}
.card-flag--hearth,.post-flag--hearth,.chan-row a.chan--hearth.is-current,.chan-row a.chan--hearth:hover{color:#ff7b72}
.chan-row a.chan--hearth.is-current{border-color:#ff7b72}
.post-body pre{margin:22px 0;padding:16px 18px;border:1px solid var(--edge);border-left:2px solid var(--amber);border-radius:4px;background:rgba(0,0,0,.45);overflow-x:auto;font:13px/1.55 "JetBrains Mono",ui-monospace,Consolas,monospace;color:var(--ink)}
.post-body code{font:.92em ui-monospace,Consolas,monospace;color:#ffd08a}
.post-body pre code{color:inherit;font-size:inherit}
.post-body table{width:100%;border-collapse:collapse;margin:22px 0;font-size:14px}
.post-body th,.post-body td{padding:8px 10px;border:1px solid var(--edge);text-align:left}
.post-body th{font-family:"Chakra Petch",sans-serif;letter-spacing:.12em;text-transform:uppercase;font-size:11px;color:var(--dim)}
.post-body h2{font-family:"Oswald",sans-serif;font-weight:600;font-size:24px;margin:34px 0 12px;color:var(--ink)}
.post-body ol,.post-body ul{margin:14px 0 14px 22px}
.post-body hr{border:0;border-top:1px solid var(--edge);margin:28px 0}
