/* opnF Read: built from the approved canvas mockups (assets built by tools/buildcss.py). */
.rd{--bg:#0a0a0a;--card:#131313;--card2:#181818;--line:#242424;--text:#d4d4d4;--white:#f5f5f5;--dim:#8a8a8a;--dim2:#5c5c5c;
--accent:#ff6b1a;--blue:#3b82f6;--green:#22c55e;--red:#ef4444;--purple:#a855f7;--yellow:#eab308;--cyan:#22d3ee;
color:var(--text);font:400 17px/1.7 'DM Sans',system-ui,sans-serif;box-sizing:border-box}
.rd *{box-sizing:border-box}
.rd h1{font-family:'Space Grotesk',sans-serif;color:var(--white);font-weight:600;line-height:1.2;margin:0}
.rd h2{font-family:'Space Grotesk',sans-serif;color:var(--white);font-weight:600;line-height:1.2;margin:0}
.rd h3{font-family:'Space Grotesk',sans-serif;color:var(--white);font-weight:600;line-height:1.2;margin:0}
.rd h4{font-family:'Space Grotesk',sans-serif;color:var(--white);font-weight:600;line-height:1.2;margin:0}
.rd p{margin:0 0 18px}
.rd a{color:var(--accent);text-decoration:none}
.rd code{font:500 .86em 'JetBrains Mono',monospace;background:#1c1c1c;border:1px solid var(--line);border-radius:5px;padding:1px 6px;color:#f0f0f0}
.rd .mono{font-family:'JetBrains Mono',monospace}
.rd .btn{display:inline-flex;align-items:center;justify-content:center;font:600 14px 'Space Grotesk',sans-serif;border-radius:8px;padding:9px 16px;background:var(--accent);color:#111}
.rd .btn.ghost{background:transparent;border:1px solid #333;color:var(--white)}
.rd .rd-grid{display:grid;grid-template-columns:740px 300px;gap:80px;align-items:start}
.rd .crumb{font:500 12px 'JetBrains Mono';color:var(--dim);letter-spacing:.04em;margin-bottom:22px}
.rd .crumb b{color:var(--text);font-weight:500}
.rd .eyebrow{font:600 12px 'JetBrains Mono';letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:14px}
.rd .h1{font-size:50px;letter-spacing:-.025em;line-height:1.08;margin-bottom:18px}
.rd .dek{font-size:20px;color:#b5b5b5;line-height:1.55;margin-bottom:24px}
.rd .meta{display:flex;align-items:center;gap:14px;font-size:14px;color:var(--dim);padding-bottom:26px;border-bottom:1px solid var(--line);margin-bottom:30px;flex-wrap:wrap}
.rd .ava{width:36px;height:36px;border-radius:50%;background:#1f1f1f;border:1px solid #333;display:grid;place-items:center;font:700 14px 'Space Grotesk';color:var(--accent)}
.rd .meta b{color:var(--white);font-weight:600}
.rd .tag{font:500 12px 'JetBrains Mono';color:#bdbdbd;border:1px solid #2c2c2c;border-radius:999px;padding:3px 10px}
.rd .body h2{font-size:30px;letter-spacing:-.015em;margin:46px 0 16px;scroll-margin-top:90px}
.rd .body h2 .hash{color:var(--dim2);font-weight:500;margin-right:10px}
.rd .body h3{font-size:21px;margin:30px 0 12px}
.rd ul.list{margin:0 0 20px;padding-left:22px}
.rd ul.list li{margin-bottom:6px}
.rd ul.list li::marker{color:var(--accent)}
.rd .blk{margin:0 0 26px}
.rd .tldr{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:12px;padding:20px 24px}
.rd .tldr h4{font:600 12px 'JetBrains Mono';letter-spacing:.14em;color:var(--blue);margin-bottom:10px}
.rd .tldr ul{margin:0;padding-left:20px}
.rd .tldr li{margin-bottom:6px}
.rd .tldr li::marker{color:var(--blue)}
.rd .term{background:#0f0f10;border:1px solid #262626;border-radius:12px;overflow:hidden;font:400 14px/1.65 'JetBrains Mono',monospace}
.rd .term .bar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#151516;border-bottom:1px solid #222;font-size:12px;color:var(--dim)}
.rd .term .dots i{display:inline-block;width:10px;height:10px;border-radius:50%;background:#333;margin-right:6px}
.rd .term .bar .t{flex:1}
.rd .chip{font:500 11.5px 'JetBrains Mono';color:#cfcfcf;border:1px solid #333;border-radius:6px;padding:3px 9px;background:#1a1a1a}
.rd .chip.run{color:var(--accent);border-color:#5a3015;background:#1d130c}
.rd .term pre{margin:0;padding:16px 18px;white-space:pre;overflow:hidden;color:#e5e5e5}
.rd .p{color:var(--accent)}
.rd .c{color:#6a6a6a}
.rd .o{color:#9a9a9a}
.rd .f{color:#60a5fa}
.rd .s{color:#4ade80}
.rd .n{color:#fb923c}
.rd .k{color:#c084fc}
.rd .ok{color:var(--green)}
.rd .code{background:#0f0f10;border:1px solid #262626;border-radius:12px;overflow:hidden;font:400 13.5px/1.7 'JetBrains Mono',monospace}
.rd .code .bar{display:flex;align-items:center;gap:10px;padding:0 10px 0 0;background:#151516;border-bottom:1px solid #222}
.rd .code .file{padding:10px 14px;color:var(--white);font-size:12.5px;border-right:1px solid #222;background:#0f0f10;border-bottom:1px solid #0f0f10;margin-bottom:-1px}
.rd .code .tab{padding:10px 14px;color:var(--dim);font-size:12.5px}
.rd .code .lang{margin-left:auto;font-size:11px;color:var(--dim);letter-spacing:.08em}
.rd .code table{border-collapse:collapse;width:100%;margin:8px 0}
.rd .code td{padding:0 16px 0 0;vertical-align:top;white-space:pre}
.rd .code td.ln{width:46px;text-align:right;color:#3e3e3e;padding:0 14px 0 0;user-select:none}
.rd .code tr.hl td{background:rgba(59,130,246,.10)}
.rd .code tr.hl td.ln{color:var(--blue);box-shadow:inset 3px 0 0 var(--blue)}
.rd .code tr.add td{background:rgba(34,197,94,.09)}
.rd .code tr.add td.ln{color:var(--green)}
.rd .code tr.del td{background:rgba(239,68,68,.09)}
.rd .code tr.del td.ln{color:var(--red)}
.rd table.cmp{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;font-size:15px}
.rd table.cmp th{font:600 13px 'Space Grotesk';color:var(--white);text-align:left;background:#151515;padding:13px 16px;border-bottom:1px solid var(--line)}
.rd table.cmp th .sw{color:var(--cyan)}
.rd table.cmp th .k8{color:var(--blue)}
.rd table.cmp td{padding:12px 16px;border-bottom:1px solid #1d1d1d;vertical-align:top;line-height:1.5}
.rd table.cmp tr:last-child td{border-bottom:0}
.rd table.cmp td:first-child{color:var(--dim);font:500 13px 'JetBrains Mono';width:150px}
.rd .y{color:var(--green);font-weight:700;margin-right:6px}
.rd .x{color:var(--red);font-weight:700;margin-right:6px}
.rd .m{color:var(--yellow);font-weight:700;margin-right:6px}
.rd .call{display:flex;gap:14px;border-radius:12px;padding:16px 18px;border:1px solid}
.rd .call .ic{flex:none;width:26px;height:26px;border-radius:7px;display:grid;place-items:center;font:700 14px 'JetBrains Mono'}
.rd .call h5{margin:0 0 4px;font:600 14px 'Space Grotesk';color:var(--white)}
.rd .call p{margin:0;font-size:15.5px;line-height:1.6}
.rd .call.note{background:#10151d;border-color:#1d2a3d}
.rd .call.note .ic{background:#172338;color:var(--blue)}
.rd .call.tip{background:#0f1913;border-color:#1b3324}
.rd .call.tip .ic{background:#14301e;color:var(--green)}
.rd .call.warn{background:#1c1610;border-color:#3b2a14}
.rd .call.warn .ic{background:#3a2810;color:var(--yellow)}
.rd .call.exam{background:#17111f;border-color:#2f1f45}
.rd .call.exam .ic{background:#2a1b40;color:var(--purple)}
.rd .ping{display:flex;gap:18px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 20px}
.rd .ping img{width:84px;flex:none}
.rd .ping .say{position:relative;background:#1b1b1b;border:1px solid #2a2a2a;border-radius:12px;padding:12px 16px;font-size:15.5px;line-height:1.55}
.rd .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.rd .stat{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px}
.rd .stat b{display:block;font:700 34px/1.1 'Space Grotesk';color:var(--white);letter-spacing:-.02em}
.rd .stat span{font-size:13.5px;color:var(--dim);line-height:1.45;display:block;margin-top:6px}
.rd .chart{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 22px}
.rd .chart h4{font-size:16px;margin-bottom:4px}
.rd .chart .sub{font-size:13px;color:var(--dim);margin-bottom:16px}
.rd .chart .legend{display:flex;gap:18px;font:500 12px 'JetBrains Mono';color:var(--dim);margin-top:10px}
.rd .chart .legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}
.rd .sample{font:600 10.5px 'JetBrains Mono';letter-spacing:.08em;color:var(--yellow);border:1px solid #4a3a10;background:#1d180a;border-radius:4px;padding:2px 7px;margin-left:8px;vertical-align:2px}
.rd .hbar{display:grid;grid-template-columns:120px 1fr 52px;align-items:center;gap:12px;margin:10px 0;font-size:14px}
.rd .hbar .track{height:22px;background:#1a1a1a;border-radius:5px;overflow:hidden}
.rd .hbar .fill{height:100%;border-radius:5px}
.rd .hbar .v{font:600 14px 'JetBrains Mono';color:var(--white);text-align:right}
.rd .diagram{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px}
.rd .cap{font-size:13.5px;color:var(--dim);margin-top:10px;text-align:center}
.rd .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rd .dcard{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px 20px;border-top:3px solid}
.rd .dcard h4{font-size:17px;margin-bottom:10px}
.rd .dcard ul{margin:0;padding-left:18px;font-size:15px;line-height:1.6}
.rd .dcard li{margin-bottom:5px}
.rd .quiz{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px 22px}
.rd .quiz .q{font:600 17px 'Space Grotesk';color:var(--white);margin:6px 0 14px}
.rd .opt{display:flex;align-items:center;gap:12px;border:1px solid #2a2a2a;border-radius:10px;padding:11px 14px;margin-bottom:8px;font-size:15px;background:#111}
.rd .opt i{font:600 12px 'JetBrains Mono';color:var(--dim);width:22px;height:22px;border-radius:6px;border:1px solid #333;display:grid;place-items:center;font-style:normal}
.rd .opt.right{border-color:#1f6b3a;background:#0f1d14}
.rd .opt.right i{background:var(--green);color:#06120a;border-color:var(--green)}
.rd .quiz .why{font-size:14.5px;color:#b8b8b8;margin-top:12px;line-height:1.6}
.rd .faq{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.rd .faq .qa{border-bottom:1px solid #1d1d1d;padding:15px 18px}
.rd .faq .qa:last-child{border-bottom:0}
.rd .faq .qq{display:flex;justify-content:space-between;font:600 16px 'Space Grotesk';color:var(--white)}
.rd .faq .qq span{color:var(--dim)}
.rd .faq .aa{font-size:15px;color:#b8b8b8;margin-top:8px;line-height:1.6}
.rd .verdict{background:#131313;border:1px solid #2b2b2b;border-radius:14px;padding:22px 24px}
.rd .verdict .row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:14px}
.rd .verdict .pick{border-radius:10px;padding:14px 16px;background:#101010;border:1px solid #262626;font-size:15px;line-height:1.55}
.rd .verdict .pick b{display:block;font:600 15px 'Space Grotesk';margin-bottom:4px}
.rd .try{display:flex;align-items:center;gap:20px;background:#0e1420;border:1px solid #1f3355;border-radius:14px;padding:20px 22px}
.rd .try img{width:72px}
.rd .try h4{font-size:19px;margin-bottom:4px}
.rd .try p{margin:0;font-size:15px;color:#b8c3d6}
.rd .src{font-size:14px;color:var(--dim);margin:0;padding-left:20px;line-height:1.8}
.rd .author{display:flex;gap:16px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px 20px}
.rd .author .ava{width:52px;height:52px;font-size:20px}
.rd .rel{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.rd .rcard{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;min-height:120px}
.rd .rcard .e{font:600 10.5px 'JetBrains Mono';letter-spacing:.12em;margin-bottom:8px}
.rd .rcard h4{font-size:16px;line-height:1.3}
.rd .rcard .rt{font-size:12.5px;color:var(--dim);margin-top:10px}
.rd .side{position:relative}
.rd .sbox{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin-bottom:18px}
.rd .sbox h6{margin:0 0 12px;font:600 11px 'JetBrains Mono';letter-spacing:.14em;color:var(--dim);text-transform:uppercase}
.rd .toc a{display:block;color:#a9a9a9;font-size:14.5px;line-height:1.4;padding:6px 0 6px 12px;border-left:2px solid #232323}
.rd .toc a.on{color:var(--white);border-left-color:var(--blue)}
.rd .toc a.sub{padding-left:24px;font-size:13.5px}
.rd .course{border-top:3px solid var(--blue)}
.rd .course .ct{display:flex;gap:12px;align-items:center;margin-bottom:10px}
.rd .course img{width:46px}
.rd .course h5{margin:0;font:600 17px 'Space Grotesk';color:var(--white)}
.rd .course .lvl{font:500 12px 'JetBrains Mono';color:var(--blue)}
.rd .course p{font-size:14px;color:#b5b5b5;margin:0 0 14px;line-height:1.55}
.rd .course .btn{width:100%}
.rd .certc{border-top:3px solid var(--accent)}
.rd .certc .row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid #1e1e1e;font-size:14.5px}
.rd .certc .row:last-child{border-bottom:0}
.rd .certc .row span{font:500 11.5px 'JetBrains Mono';color:var(--dim)}
.rd .share{display:flex;gap:8px}
.rd .share span{flex:1;text-align:center;font:500 12px 'JetBrains Mono';border:1px solid #2c2c2c;border-radius:8px;padding:8px 0;color:#bdbdbd}
.rd .anat{background:#0f0f10;border:1px solid #262626;border-radius:12px;padding:22px 20px 18px;font:500 18px 'JetBrains Mono'}
.rd .anat .cmd{display:flex;gap:10px;flex-wrap:wrap;color:var(--white)}
.rd .anat .cmd span{border-bottom:2px solid;padding-bottom:4px}
.rd .anat .keys{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px;font:400 13px 'DM Sans';color:#b5b5b5;line-height:1.45}
.rd .anat .keys b{display:block;font:600 12px 'JetBrains Mono';margin-bottom:3px}
.rd .steps{counter-reset:s;margin:0;padding:0;list-style:none}
.rd .steps li{position:relative;padding:0 0 18px 48px;border-left:1px dashed #2c2c2c;margin-left:15px}
.rd .steps li:last-child{border-left-color:transparent;padding-bottom:0}
.rd .steps li::before{counter-increment:s;content:counter(s);position:absolute;left:-16px;top:-2px;width:31px;height:31px;border-radius:50%;background:#1a1a1a;border:1px solid #333;color:var(--white);font:600 14px 'Space Grotesk';display:grid;place-items:center}
.rd .steps b{display:block;color:var(--white);font:600 16px 'Space Grotesk';margin-bottom:3px}
.rd .steps span{font-size:15px;color:#b5b5b5}
.rd .gloss dt{font:600 14px 'JetBrains Mono';color:var(--white)}
.rd .gloss dd{margin:2px 0 12px;font-size:15px;color:#b5b5b5}
.rd kbd{font:600 12.5px 'JetBrains Mono';color:var(--white);background:#1c1c1c;border:1px solid #363636;border-bottom-width:3px;border-radius:6px;padding:2px 8px}
.rd .quote{border-left:3px solid var(--accent);padding:4px 0 4px 22px;font:500 24px/1.4 'Space Grotesk';color:var(--white)}
.rd .quote small{display:block;font:400 14px 'DM Sans';color:var(--dim);margin-top:10px}
.rd .fig{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.rd .fig .ph{height:200px;background:#151515;border-bottom:1px dashed #2a2a2a;display:grid;place-items:center;font:500 13px 'JetBrains Mono';color:var(--dim)}
.rd .fig .fc{padding:10px 14px;font-size:13.5px;color:var(--dim);border-top:1px solid var(--line)}
.rd .tree{background:#0f0f10;border:1px solid #262626;border-radius:12px;padding:16px 18px;font:400 14px/1.75 'JetBrains Mono';color:#cfcfcf;white-space:pre}
.rd .tree .d{color:var(--blue)}
.rd .check{list-style:none;padding:0;margin:0}
.rd .check li{display:flex;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid #1d1d1d;font-size:15px}
.rd .check li i{width:20px;height:20px;border-radius:6px;border:1px solid #3a3a3a;flex:none;display:grid;place-items:center;font:700 12px 'JetBrains Mono';font-style:normal}
.rd .check li.done i{background:var(--green);border-color:var(--green);color:#06120a}
.rd .kitgrid{display:grid;grid-template-columns:1fr 1fr;gap:28px 40px}
.rd .kitsec{font:600 12px 'JetBrains Mono';letter-spacing:.16em;color:var(--accent);text-transform:uppercase;margin:44px 0 18px;padding-bottom:10px;border-bottom:1px solid var(--line);grid-column:1/-1}
.rd .kdesc{font-size:13.5px;color:var(--dim);margin:8px 0 0;line-height:1.5}
.rd .verdict h3{margin:0!important}
.rd .sample{white-space:nowrap}
.rd .jobs .job{margin-bottom:12px}
.rd .jobs .jn{font-size:13.5px;color:#b5b5b5;margin-bottom:2px}
.rd .jobs .hbar{grid-template-columns:22px 1fr 40px;margin:4px 0}
.rd .tocm{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:13px 16px;display:flex;justify-content:space-between;font:600 14px 'Space Grotesk';color:var(--white);margin-bottom:26px}
.rd .tocm span{color:var(--dim);font:500 12px 'JetBrains Mono'}
.rd .sev{display:inline-flex;align-items:center;gap:8px;font:700 12px 'JetBrains Mono';letter-spacing:.1em;border-radius:6px;padding:4px 10px}
.rd .sev.high{color:#fb923c;background:#2a1609;border:1px solid #5a2e10}
.rd .sev.crit{color:#f87171;background:#2a0f0f;border:1px solid #5c1d1d}
.rd .sev.med{color:#facc15;background:#241e08;border:1px solid #4d400f}
.rd .sev.low{color:#4ade80;background:#0e2014;border:1px solid #1d4a2b}
.rd .badge{font:700 11px 'JetBrains Mono';letter-spacing:.12em;border-radius:5px;padding:3px 9px}
.rd .badge.brk{background:#ef4444;color:#fff}
.rd .badge.upd{background:#132033;color:#60a5fa;border:1px solid #1f3355}
.rd .eyebrow.red{color:var(--red)}
.rd .cve{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.rd .cve .top{display:flex;align-items:center;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line)}
.rd .cve .id{font:700 20px 'JetBrains Mono';color:var(--white)}
.rd .cve .nick{font-size:14px;color:var(--dim)}
.rd .cve .score{margin-left:auto;text-align:right}
.rd .cve .score b{display:block;font:700 34px/1 'Space Grotesk';color:#fb923c}
.rd .meter{display:flex;gap:3px;margin-top:6px}
.rd .meter i{width:16px;height:6px;border-radius:2px;background:#262626}
.rd .cve dl{display:grid;grid-template-columns:repeat(3,1fr);margin:0}
.rd .cve dl div{padding:14px 20px;border-right:1px solid #1d1d1d;border-bottom:1px solid #1d1d1d}
.rd .cve dl div:nth-child(3n){border-right:0}
.rd .cve dt{font:500 11px 'JetBrains Mono';letter-spacing:.1em;color:var(--dim);text-transform:uppercase;margin-bottom:4px}
.rd .cve dd{margin:0;font-size:15px;color:var(--white);line-height:1.45}
.rd .cve .links{display:flex;gap:10px;padding:14px 20px;flex-wrap:wrap}
.rd .who{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;font-size:15px}
.rd .who th{font:600 12px 'JetBrains Mono';letter-spacing:.08em;color:var(--dim);text-align:left;background:#151515;padding:11px 16px;text-transform:uppercase}
.rd .who td{padding:11px 16px;border-top:1px solid #1d1d1d}
.rd .st{font:600 12px 'JetBrains Mono';border-radius:5px;padding:2px 8px}
.rd .st.bad{color:#f87171;background:#2a0f0f}
.rd .st.good{color:#4ade80;background:#0e2014}
.rd .st.chk{color:#facc15;background:#241e08}
.rd .tl{position:relative;margin:0;padding:0;list-style:none}
.rd .tl li{position:relative;padding:0 0 18px 28px;border-left:2px solid #262626;margin-left:6px}
.rd .tl li:last-child{padding-bottom:0;border-left-color:transparent}
.rd .tl li::before{content:'';position:absolute;left:-7px;top:5px;width:12px;height:12px;border-radius:50%;background:#0a0a0a;border:2px solid var(--blue)}
.rd .tl li.now::before{background:var(--red);border-color:var(--red)}
.rd .tl time{display:block;font:500 12.5px 'JetBrains Mono';color:var(--dim)}
.rd .tl span{font-size:15.5px;color:var(--text)}
.rd .todo{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px 20px}
.rd .todo h4{font-size:17px;margin-bottom:6px}
.rd .ulog{background:#0f1622;border:1px solid #1f3355;border-radius:12px;padding:14px 18px;font-size:15px}
.rd .ulog b{font:600 12px 'JetBrains Mono';color:#60a5fa;letter-spacing:.08em;margin-right:8px}
.rd .alert{display:flex;gap:18px;align-items:center;background:#170f0f;border:1px solid #3d1b1b;border-radius:14px;padding:18px 20px}
.rd .alert h4{font-size:18px;margin-bottom:4px}
.rd .alert p{margin:0;font-size:14.5px;color:#c9b3b3}
.rd .alert .in{display:flex;gap:8px;margin-left:auto}
.rd .alert .in span{font-size:14px;color:#777;border:1px solid #3a2a2a;border-radius:8px;padding:9px 14px;background:#0f0b0b;width:210px}
.rd .nitem{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid #1d1d1d}
.rd .nitem time{font:500 12.5px 'JetBrains Mono';color:var(--dim)}
.rd .nitem h4{font-size:18px;margin:6px 0 6px}
.rd .nitem p{margin:0;font-size:14.5px;color:#a9a9a9;line-height:1.55}
.rd .guide{display:flex;gap:16px;align-items:center;background:var(--card);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:12px;padding:16px 18px}
.rd .guide .e{font:600 10.5px 'JetBrains Mono';letter-spacing:.12em;color:var(--accent)}
.rd .guide h4{font-size:17px;margin:3px 0 0}
.rd .guide .go{margin-left:auto;font:600 13px 'Space Grotesk';color:var(--accent);white-space:nowrap}
.rd .soc{display:flex;gap:28px;align-items:flex-start}
.rd .tldr.red li::marker{color:var(--red)}
.rd .sq{width:500px;height:500px;flex:none;background:#0a0a0a;border:1px solid #262626;border-radius:6px;position:relative;overflow:hidden;padding:44px;display:flex;flex-direction:column}
.rd .sq .lg{height:22px;width:auto;align-self:flex-start}
.rd .sq .k{font:700 13px 'JetBrains Mono';letter-spacing:.16em;margin-top:auto}
.rd .sq h3{font-size:44px;line-height:1.05;letter-spacing:-.02em;margin:12px 0 16px}
.rd .sq p{font-size:18px;color:#bdbdbd;margin:0 0 24px;line-height:1.5}
.rd .sq .bar4{position:absolute;left:0;right:0;bottom:0;height:8px;display:flex}
.rd .sq .bar4 i{flex:1}
.rd .sq .cmd{font:500 17px 'JetBrains Mono';background:#141414;border:1px solid #2a2a2a;border-radius:10px;padding:14px 16px;color:#eee;margin-bottom:22px}
.rd .lc{width:560px;height:294px;background:#0a0a0a;border:1px solid #262626;border-radius:6px;position:relative;overflow:hidden;padding:34px 36px;display:flex;flex-direction:column}
.rd .lc h3{font-size:33px;line-height:1.1;letter-spacing:-.02em;margin:14px 0 0;max-width:430px}
.rd .lc .lg{height:20px;width:auto;margin-top:auto;align-self:flex-start}
.rd .lc img.pg{position:absolute;right:28px;bottom:30px;width:120px}
.rd .lc .bar4{position:absolute;left:0;right:0;bottom:0;height:6px;display:flex}
.rd .lc .bar4 i{flex:1}
.rd .ptext{width:560px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px;font-size:15px;line-height:1.6;white-space:pre-line}
.rd .ptext .h{font:600 11px 'JetBrains Mono';letter-spacing:.12em;color:var(--dim);margin-bottom:8px;display:block}
.rd .hub-hero{padding:10px 0 26px;border-bottom:1px solid var(--line);margin-bottom:26px}
.rd .hub-hero .h1{font-size:48px;margin-bottom:10px}
.rd .hub-hero .dek{max-width:720px;margin-bottom:22px}
.rd .ph-note{font:500 10.5px 'JetBrains Mono';color:#7c7c7c;border:1px dashed #2e2e2e;border-radius:4px;padding:1px 7px;margin-left:8px;vertical-align:4px}
.rd .filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.rd .search{flex:1;min-width:240px;max-width:380px;background:#111;border:1px solid #2a2a2a;border-radius:10px;padding:10px 14px;font-size:14.5px;color:#777}
.rd .fchip{white-space:nowrap;font:500 13px 'DM Sans';color:#c9c9c9;border:1px solid #2c2c2c;border-radius:999px;padding:7px 14px;background:#111;display:inline-flex;align-items:center;gap:7px}
.rd .fchip i{width:8px;height:8px;border-radius:50%;display:inline-block}
.rd .fchip.on{background:var(--white);color:#111;border-color:var(--white)}
.rd .fchip.drop{border-style:dashed}
.rd .feat{display:grid;grid-template-columns:1.15fr 1fr;gap:0;background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-bottom:30px}
.rd .feat .art{background:#0f0f10;border-right:1px solid var(--line);padding:18px;display:flex;align-items:center}
.rd .feat .txt{padding:28px 30px;display:flex;flex-direction:column}
.rd .feat .txt h2{font-size:30px;line-height:1.15;margin:10px 0 12px;letter-spacing:-.015em}
.rd .feat .txt p{font-size:16px;color:#b5b5b5;margin:0 0 18px}
.rd .feat .m{margin-top:auto;font-size:13.5px;color:var(--dim);display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.rd .e{font:600 11px 'JetBrains Mono';letter-spacing:.14em;text-transform:uppercase}
.rd .sec{display:flex;align-items:baseline;justify-content:space-between;margin:34px 0 16px}
.rd .sec h3{font-size:22px}
.rd .sec a{font:600 13px 'Space Grotesk'}
.rd .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rd .pcard{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.rd .cover{height:132px;background:#0d0d0e;border-bottom:1px solid var(--line);position:relative;padding:16px 18px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}
.rd .cover .cmd{font:500 13px 'JetBrains Mono';color:#e8e8e8;background:#151515;border:1px solid #262626;border-radius:8px;padding:8px 11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rd .cover .cmd b{color:var(--accent);font-weight:500}
.rd .cover .strip{position:absolute;left:0;right:0;top:0;height:4px}
.rd .cover .big{font:700 38px/1 'Space Grotesk';letter-spacing:-.02em}
.rd .pcard .b{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.rd .pcard h4{font-size:17.5px;line-height:1.3;margin:8px 0 8px}
.rd .pcard p{font-size:14px;color:#a9a9a9;margin:0 0 14px;line-height:1.55}
.rd .pcard .m{margin-top:auto;display:flex;gap:8px;align-items:center;font-size:12.5px;color:var(--dim);flex-wrap:wrap}
.rd .ctag{font:500 11px 'JetBrains Mono';color:#d0d0d0;border:1px solid #2f2f2f;border-radius:5px;padding:1px 7px}
.rd .hubgrid{display:grid;grid-template-columns:1fr 300px;gap:48px;align-items:start}
.rd .hubgrid .cards{grid-template-columns:repeat(2,1fr)}
.rd .certlist .row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid #1e1e1e;font-size:14.5px;color:var(--text)}
.rd .certlist .row:last-child{border-bottom:0}
.rd .certlist .row span{font:500 11.5px 'JetBrains Mono';color:var(--dim)}
.rd .mini{padding:10px 0;border-bottom:1px solid #1e1e1e}
.rd .mini:last-child{border-bottom:0}
.rd .mini div{font-size:14.5px;color:var(--white);margin-top:6px;line-height:1.4}
.rd .pager{display:flex;gap:8px;justify-content:center;margin-top:34px}
.rd .pager span{font:600 13px 'JetBrains Mono';width:38px;height:38px;border-radius:9px;border:1px solid #2c2c2c;display:grid;place-items:center;color:#bbb}
.rd .pager span.on{background:var(--white);color:#111;border-color:var(--white)}
.rd .pager span.w{width:auto;padding:0 14px}
.rd .series{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.rd .scard{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 22px}
.rd .scard h4{font-size:19px;margin:8px 0 12px}
.rd .steps5{display:flex;gap:6px;margin-bottom:12px}
.rd .steps5 i{flex:1;height:6px;border-radius:3px;background:#262626}
.rd .scard ol{margin:0;padding-left:20px;font-size:14.5px;color:#bdbdbd;line-height:1.75}
.rd .lead{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#140e0e;border:1px solid #3d1b1b;border-radius:16px;overflow:hidden;margin-bottom:10px}
.rd .lead .l{padding:26px 28px}
.rd .lead .l h2{font-size:28px;line-height:1.15;margin:12px 0 10px}
.rd .lead .l p{font-size:15.5px;color:#c9b3b3;margin:0 0 16px}
.rd .lead .r{padding:18px;border-left:1px solid #3d1b1b;display:flex;align-items:center}
.rd .lead .r .cve{width:100%}
.rd .strip-alert{display:flex;align-items:center;gap:14px;background:#1c0e0e;border:1px solid #4a1d1d;border-radius:12px;padding:12px 16px;margin-bottom:22px;font-size:14.5px}
.rd .strip-alert b{color:var(--white)}
.rd .strip-alert .go{margin-left:auto;font:600 13px 'Space Grotesk';color:#f87171}
.rd .topic-hero{border-bottom:1px solid var(--line);padding:10px 0 30px;margin-bottom:10px;display:grid;grid-template-columns:1fr 340px;gap:48px;align-items:center}
.rd .topic-hero .h1{font-size:52px}
.rd .pairs{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.rd .note-sample{font:600 10.5px 'JetBrains Mono';letter-spacing:.08em;color:var(--yellow);margin-left:6px}
.rd .th{overflow:hidden;position:relative;background:#0a0a0a}
.rd .pcard .th{border-bottom:1px solid var(--line)}
.rd .feat{grid-template-columns:600px 1fr}
.rd .lead2{display:grid;grid-template-columns:600px 1fr;background:#140e0e;border:1px solid #3d1b1b;border-radius:16px;overflow:hidden;margin-bottom:10px}
.rd .lead2 .l{padding:26px 28px}
.rd .lead2 .l h2{font-size:28px;line-height:1.15;margin:12px 0 10px}
.rd .lead2 .l p{font-size:15.5px;color:#c9b3b3;margin:0 0 16px}
.rd .nrow{display:grid;grid-template-columns:240px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid #1d1d1d;align-items:start}
.rd .nrow .th{border-radius:8px;border:1px solid #262626}
.rd .nm{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rd .nm .sev{font-size:10px;padding:2px 7px}
.rd .tagn{font:700 10px 'JetBrains Mono';letter-spacing:.1em;color:#cfcfcf;border:1px solid #333;border-radius:5px;padding:2px 7px}
.rd .nd{font:500 12px 'JetBrains Mono';color:var(--dim)}
.rd .nrow h4{font-size:18px;margin:8px 0 6px;line-height:1.3}
.rd .nrow p{margin:0;font-size:14.5px;color:#a9a9a9;line-height:1.55}
.rd .tids{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rd .tid{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px;display:flex;gap:14px}
.rd .tid .n{flex:none;font:700 26px/1 'Space Grotesk';color:var(--accent);width:28px}
.rd .tid p{margin:0;font-size:15.5px;line-height:1.55}
.rd .tid p b{color:var(--white)}
.rd .diff{border-top:1px solid var(--line);padding-top:22px;margin-top:26px}
.rd .diff .dh{display:flex;align-items:baseline;gap:14px;margin-bottom:8px}
.rd .diff .dn{font:600 12px 'JetBrains Mono';letter-spacing:.14em;color:var(--dim)}
.rd .diff h3{font-size:23px;margin:0}
.rd .diff .wins{display:flex;gap:8px;margin:10px 0 14px;flex-wrap:wrap}
.rd .win{font:600 12px 'JetBrains Mono';border-radius:6px;padding:3px 10px;border:1px solid}
.rd .win.sw{color:#22d3ee;border-color:#155e6b;background:#0b1a1d}
.rd .win.k8{color:#60a5fa;border-color:#1f3a66;background:#0c1424}
.rd .win.tie{color:#bdbdbd;border-color:#333;background:#141414}
.rd .pair{display:grid;grid-template-columns:1fr;gap:10px}
.rd .pair .term pre{font-size:13px}
.rd .setup{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rd .setup .s{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px}
.rd .setup .s .e{font:600 10.5px 'JetBrains Mono';letter-spacing:.12em;color:var(--accent)}
.rd .setup .s h4{font-size:16px;margin:6px 0 0;line-height:1.35}
.rd .fc{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.rd .fc .top{display:flex;align-items:center;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line)}
.rd .fc .big{font:700 30px/1 'Space Grotesk';color:var(--white);letter-spacing:-.02em}
.rd .fc .sub{font-size:14px;color:var(--dim);margin-top:5px}
.rd .fc .right{margin-left:auto;text-align:right}
.rd .fc dl{display:grid;grid-template-columns:repeat(3,1fr);margin:0}
.rd .fc dl div{padding:14px 20px;border-right:1px solid #1d1d1d;border-bottom:1px solid #1d1d1d}
.rd .fc dl div:nth-child(3n){border-right:0}
.rd .fc dt{font:500 11px 'JetBrains Mono';letter-spacing:.1em;color:var(--dim);text-transform:uppercase;margin-bottom:4px}
.rd .fc dd{margin:0;font-size:15px;color:var(--white);line-height:1.45}
.rd .fc .links{display:flex;gap:10px;padding:14px 20px;flex-wrap:wrap}
.rd .fc .chips{display:flex;gap:8px;flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid #1d1d1d}
.rd .kind{font:700 11px 'JetBrains Mono';letter-spacing:.12em;border-radius:6px;padding:4px 10px;border:1px solid}
.rd .samp{font:600 10.5px 'JetBrains Mono';letter-spacing:.08em;color:var(--yellow);margin-left:8px}
.rd .stline{display:flex;align-items:center;gap:10px;font:500 14px 'JetBrains Mono';color:#cfcfcf;padding:8px 0}
.rd .stline i{width:12px;height:12px;border-radius:50%;display:inline-block;flex:none}
.rd .chg{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rd .chg .col{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px}
.rd .chg h5{margin:0 0 10px;font:600 12px 'JetBrains Mono';letter-spacing:.12em}
.rd .chg ul{margin:0;padding-left:18px;font-size:15px;line-height:1.7}
.rd .quoteb{border-left:3px solid var(--accent);background:var(--card);border-radius:0 12px 12px 0;padding:18px 22px}
.rd .quoteb q{display:block;font:500 20px/1.45 'Space Grotesk';color:var(--white);quotes:'“' '”'}
.rd .quoteb .by{font-size:13.5px;color:var(--dim);margin-top:10px}
.rd .nums{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.rd .num{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px}
.rd .num b{display:block;font:700 34px/1.1 'Space Grotesk';color:var(--white)}
.rd .num span{font-size:13.5px;color:var(--dim);display:block;margin-top:6px;line-height:1.45}
.rd .num a{font:500 11.5px 'JetBrains Mono';color:var(--dim);display:block;margin-top:8px}
.rd .means{display:flex;gap:16px;background:#0f1622;border:1px solid #1f3355;border-radius:14px;padding:18px 20px}
.rd .means h4{font-size:17px;margin:0 0 6px}
.rd .means p{margin:0;font-size:15px;color:#b8c3d6}
.rd .means .links{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.rd-wrap{max-width:1120px;margin:0 auto;padding:36px 24px 80px}
.rd .crumb a{color:var(--dim)}
.rd .crumb a:hover{color:var(--white)}
.rd a.btn{color:#111}
.rd .side{position:sticky;top:96px}
.rd .h2a{color:inherit}
.rd .pcard a.pl{color:inherit;display:flex;flex-direction:column;height:100%}
.rd .pthumb{display:block;width:100%;aspect-ratio:1200/630;object-fit:cover;background:#0a0a0a;border-bottom:1px solid var(--line)}
.rd .pthumb.txt{display:flex;align-items:center;padding:20px;font:700 22px/1.15 'Space Grotesk';color:var(--white)}
.rd .nrow .pthumb{border:1px solid #262626;border-radius:8px}
.rd .feat .art{padding:0;background:#0a0a0a}
.rd .feat .art img{display:block;width:100%;height:auto}
.rd .lead2 img{display:block;width:100%;height:auto}
.rd .fchip a, .rd a.fchip{color:inherit}
.rd .search{display:block}
.rd form.search-f{flex:1;min-width:240px;max-width:380px;display:flex}
.rd form.search-f input{flex:1;background:#111;border:1px solid #2a2a2a;border-radius:10px;padding:10px 14px;font:400 14.5px 'DM Sans';color:#e5e5e5}
.rd select.fchip{appearance:none;cursor:pointer}
.rd details.tocm summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;width:100%}
.rd details.tocm summary::-webkit-details-marker{display:none}
.rd details.tocm{display:block}
.rd details.tocm .toc{margin-top:12px}
.rd .faq details summary{list-style:none;cursor:pointer}
.rd .faq details summary::-webkit-details-marker{display:none}
.rd .faq details[open] .qq span:before{content:'−'}
.rd .faq details:not([open]) .qq span:before{content:'+'}
.rd .opt{cursor:pointer;width:100%;text-align:left;color:inherit}
.rd .opt.wrong{border-color:#6b1f1f;background:#1d0f0f}
.rd .quiz .why{display:none}
.rd .quiz.done .why{display:block}
.rd .chip.copied{color:var(--green);border-color:#1f6b3a}
.rd .src a{color:var(--dim)}
.rd .empty{border:1px dashed #2c2c2c;border-radius:14px;padding:30px;text-align:center;color:var(--dim)}
.rd .pager a, .rd .pager span{font:600 13px 'JetBrains Mono';min-width:38px;height:38px;padding:0 12px;border-radius:9px;border:1px solid #2c2c2c;display:grid;place-items:center;color:#bbb}
.rd .pager .current{background:var(--white);color:#111;border-color:var(--white)}
.rd .eyebrow a{color:inherit}
.rd .flow{display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:center;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px 18px}
.rd .flow-box{background:#141414;border:1.5px solid #3a3a3a;border-radius:12px;padding:12px 16px;text-align:center;min-width:96px}
.rd .flow-box.acc{background:#17121f}
.rd .flow-box b{display:block;font:600 15px 'Space Grotesk';color:var(--white)}
.rd .flow-box span{display:block;font:500 11.5px 'JetBrains Mono';color:var(--dim);margin-top:4px}
.rd .flow-arrow{font:700 20px 'Space Grotesk'}
.rd .list{padding-left:22px;margin:0 0 18px}
.rd ol.list li{margin-bottom:6px}
.rd .nrow{color:inherit}
.rd .nrow:hover h4, .rd .pcard a.pl:hover h4, .rd a.guide:hover h4{color:var(--accent)}
.rd .rcard{color:inherit}
.rd .share a, .rd .share button{font:500 13px 'DM Sans';color:#c9c9c9;border:1px solid #2c2c2c;background:#111;border-radius:8px;padding:7px 12px;cursor:pointer}
.rd .certc a.row{color:inherit}
.rd button.chip{cursor:pointer;background:transparent}
.rd .body > h2{scroll-margin-top:96px}
.rd a.feat, .rd a.lead2, .rd a.strip-alert{text-decoration:none}
.rd .feat .art .pthumb{border-bottom:0;height:100%}
.rd select.fchip{flex:none;width:auto;font-family:'DM Sans'}

.rd .art-thumb{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:0 0 30px;background:#0a0a0a}
.rd .art-thumb .pthumb{border-bottom:0}
/* Card thumbnails: the four-color line is drawn inline by opnf_read_thumb_bar(). */
.rd .feat .art .tw{height:100%}
.rd .nrow .tw{border:1px solid #262626;border-radius:8px;overflow:hidden}
.rd .nrow .tw .pthumb{border:0;border-radius:0}
@media (max-width: 820px){
.rd{font-size:16px}
.rd .rd-grid{display:block}
.rd .h1{font-size:34px}
.rd .dek{font-size:17px}
.rd .body h2{font-size:25px;margin-top:38px}
.rd .two{grid-template-columns:1fr}
.rd .verdict .row{grid-template-columns:1fr}
.rd .stats{grid-template-columns:1fr 1fr}
.rd .rel{grid-template-columns:1fr}
.rd .term{font-size:12.5px}
.rd .code{font-size:12.5px}
.rd table.cmp{font-size:13.5px}
.rd table.cmp td:first-child{width:96px;font-size:11.5px}
.rd table.cmp td{padding:10px 10px}
.rd table.cmp th{padding:10px 10px}
.rd .hbar{grid-template-columns:86px 1fr 40px;font-size:13px}
.rd .ping img{width:60px}
.rd .try img{width:60px}
.rd .try{align-items:flex-start}
.rd .term .dots{display:none}
.rd .term .bar .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.rd .stat:last-child:nth-child(odd){grid-column:1/-1}
.rd .cve dl{grid-template-columns:1fr 1fr}
.rd .cve dl div:nth-child(3n){border-right:1px solid #1d1d1d}
.rd .cve dl div:nth-child(2n){border-right:0}
.rd .cve .top{flex-wrap:wrap}
.rd .alert{flex-direction:column;align-items:stretch}
.rd .alert .in{margin:0}
.rd .alert .in span{width:auto;flex:1}
.rd .guide{flex-wrap:wrap}
.rd .guide .go{margin-left:0}
.rd .feat{grid-template-columns:1fr}
.rd .lead2{grid-template-columns:1fr}
.rd .nrow{grid-template-columns:1fr;gap:12px}
.rd .nitem{grid-template-columns:1fr;gap:4px}
.rd .nitem time br{display:none}
.rd .nitem time .sev{margin:0 0 0 8px!important;display:inline-flex!important}
.rd .nitem time .note-sample{margin:0 0 0 8px!important;display:inline-flex!important}
.rd .hub-hero .h1{font-size:36px}
.rd .search{min-width:0;max-width:none;width:100%;flex:none}
.rd .filters{flex-wrap:wrap}
.rd .feat{grid-template-columns:1fr}
.rd .lead{grid-template-columns:1fr}
.rd .feat .art{border-right:0;border-left:0;border-bottom:1px solid var(--line)}
.rd .lead .r{border-right:0;border-left:0;border-bottom:1px solid var(--line)}
.rd .feat .txt h2{font-size:24px}
.rd .lead .l h2{font-size:24px}
.rd .cards{grid-template-columns:1fr}
.rd .hubgrid .cards{grid-template-columns:1fr}
.rd .hubgrid{display:block}
.rd .strip-alert{flex-wrap:wrap}
.rd .strip-alert .go{margin-left:0}
.rd .tids{grid-template-columns:1fr}
.rd .pair{grid-template-columns:1fr}
.rd .setup{grid-template-columns:1fr}
.rd form.search-f{flex:1 0 100%;max-width:none}
.rd .lead2 .l, .rd .feat .txt{padding:16px 18px 18px}
.rd .lead2 .l h2, .rd .feat .txt h2{font-size:17.5px;line-height:1.3;margin:8px 0 8px;letter-spacing:0}
.rd .lead2 .l p, .rd .feat .txt p{font-size:14px;line-height:1.55;margin:0 0 14px}
.rd-wrap{padding:22px 16px 60px}
.rd .side{position:static}
.rd .tocm-desk{display:none}
}
@media (min-width: 821px){ .rd details.tocm{display:none} }

/* 0.6.4: ELI5 */
.rd .e5{margin:16px 0 4px;--e5:#ff6b1a}
.rd .e5>summary{display:inline-flex;align-items:center;gap:9px;list-style:none;cursor:pointer;background:#111;border:1px solid var(--line);border-radius:999px;padding:5px 14px 5px 6px;font:600 14px 'Space Grotesk',sans-serif;color:var(--white);user-select:none}
.rd .e5>summary::-webkit-details-marker{display:none}
.rd .e5>summary img{height:26px;width:auto;display:block}
.rd .e5>summary i{font-style:normal;color:var(--e5);font-size:12px;transition:transform .2s}
.rd .e5>summary:hover{border-color:var(--e5)}
.rd .e5[open]>summary{border-color:var(--e5)}
.rd .e5[open]>summary i{transform:rotate(180deg)}
.rd .e5p{margin-top:12px;background:#111;border:1px solid var(--line);border-top:3px solid var(--e5);border-radius:14px;padding:22px 24px}
.rd .e5h{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.rd .e5h img{height:54px;width:auto;display:block}
.rd .e5h b{display:block;font:600 18px 'Space Grotesk',sans-serif;color:var(--white);line-height:1.3}
.rd .e5h span{font-size:14px;color:var(--dim)}
.rd .e5p h5{font:600 11px 'JetBrains Mono',monospace;letter-spacing:.16em;color:var(--e5);margin:0 0 10px}
.rd .e5p dl{margin:0 0 20px;display:grid;grid-template-columns:150px 1fr;border-top:1px solid var(--line)}
.rd .e5p dt,.rd .e5p dd{margin:0;padding:11px 0;border-bottom:1px solid var(--line);font-size:15.5px;line-height:1.55}
.rd .e5p dt{font:600 15px 'Space Grotesk',sans-serif;color:var(--white);padding-right:14px}
.rd .e5p dd{color:#bdbdbd}
.rd .e5p .idea{font-size:16px;line-height:1.7;color:var(--text);font-style:italic;margin:0}
.rd .e5f{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font:500 12.5px 'JetBrains Mono',monospace;color:var(--dim2)}
.rd .e5f a{color:var(--e5)}
.rd .e5sw{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.rd .e5sw>img{height:40px;width:auto;display:block;flex:none}
.rd .e5t{flex:1;min-width:0;line-height:1.4}
.rd .e5t b{display:block;font:600 16px 'Space Grotesk',sans-serif;color:var(--white)}
.rd .e5t span{font-size:14px;color:var(--dim)}
.rd .e5tog{flex:none;display:inline-flex;align-items:center;gap:10px;background:none;border:0;padding:6px 0;cursor:pointer;font:600 14px 'Space Grotesk',sans-serif;color:var(--white)}
.rd .e5tog i{position:relative;width:38px;height:22px;border-radius:999px;background:#2a2a2a;transition:background .2s}
.rd .e5tog i:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#bdbdbd;transition:transform .2s,background .2s}
.rd .e5tog[aria-checked="true"] i{background:var(--e5)}
.rd .e5tog[aria-checked="true"] i:after{transform:translateX(16px);background:#0a0a0a}
@media (max-width:640px){
.rd .e5p{padding:18px 16px}
.rd .e5p dl{grid-template-columns:1fr}
.rd .e5p dt{border-bottom:0;padding-bottom:2px}
.rd .e5p dd{padding-top:0}
.rd .e5sw{flex-wrap:wrap}
.rd .e5t{flex:1 1 calc(100% - 60px)}
.rd .e5tog{width:100%;justify-content:flex-start;border-top:1px solid var(--line);padding-top:10px}
}

/* 0.6.5: the Guides header on every Read page. Topic pages keep their course box beside it. */
.rd .hub-top{display:grid;grid-template-columns:1fr 340px;gap:48px;align-items:center;margin-bottom:22px}
.rd .hub-top .dek{margin-bottom:0}
@media (max-width:900px){
.rd .hub-hero:has(.hub-top){display:flex;flex-direction:column}
.rd .hub-top{display:contents}
.rd .hub-top .dek{margin-bottom:22px}
.rd .hub-top>:last-child{order:3;margin-top:22px!important}
}

/* 0.6.7: Read page headers without the eyebrow, and tighter. */
.rd-wrap:has(> .hub-hero){padding-top:28px}
.rd .hub-hero{padding:0 0 20px;margin-bottom:22px}
.rd .hub-hero .h1{margin-bottom:8px}
.rd .hub-hero .dek{margin-bottom:18px}
.rd .hub-top{margin-bottom:18px}
.rd .sec{margin:28px 0 14px}
@media (max-width:640px){.rd-wrap:has(> .hub-hero){padding-top:16px}}

/* 0.6.8: Load more under More news on /read/. */
.rd .loadmore{display:flex;justify-content:center;margin-top:24px}
.rd .loadmore .btn{min-width:180px;padding:11px 22px}
.rd .loadmore .btn.busy{opacity:.6;pointer-events:none}

/* 0.7.5: avatars never squeeze into an oval on narrow screens. */
.rd .ava{flex:none;aspect-ratio:1}
