.blog-prose{font-size:17px;line-height:1.7;color:var(--km-ink)}.blog-prose h2{font-size:clamp(26px,3vw,36px);letter-spacing:-.025em;line-height:1.15;margin:64px 0 20px}.blog-prose h2,.blog-prose h3{font-family:var(--km-font-display);font-weight:600;scroll-margin-top:80px}.blog-prose h3{font-size:22px;letter-spacing:-.015em;line-height:1.25;margin:40px 0 14px}.blog-prose p{margin:0 0 22px}.blog-prose a{color:var(--km-accent);text-decoration:underline;text-underline-offset:3px}.blog-prose a:hover{text-decoration-thickness:2px}.blog-prose strong{font-weight:600;color:var(--km-ink)}.blog-prose ol,.blog-prose ul{margin:0 0 22px;padding-left:1.4em}.blog-prose li{margin:0 0 8px}.blog-prose blockquote{margin:32px 0;padding:16px 24px;border-left:3px solid var(--km-accent);background:var(--km-paper);font-style:italic;color:var(--km-ink-soft)}.blog-prose code{font-family:var(--km-font-mono);font-size:.92em;padding:2px 6px;border-radius:4px;background:var(--km-paper);border:1px solid var(--km-line)}.blog-prose pre{font-family:var(--km-font-mono);font-size:14px;line-height:1.55;margin:28px 0;padding:18px 22px;border-radius:12px;background:#0a0a0a;color:#fafaf7;overflow-x:auto}.blog-prose pre code{background:none;border:none;padding:0;color:inherit}.blog-prose img{max-width:100%;height:auto;margin:32px 0;border-radius:12px;display:block}.blog-prose figure{margin:32px 0}.blog-prose figcaption{font-size:13px;color:var(--km-ink-faded);margin-top:10px;text-align:center}.blog-prose table{width:100%;border-collapse:collapse;margin:28px 0;font-size:15px}.blog-prose td,.blog-prose th{padding:10px 14px;border-bottom:1px solid var(--km-line);text-align:left}.blog-prose th{font-weight:600;background:var(--km-paper)}.blog-prose hr{margin:48px 0;border:none;border-top:1px solid var(--km-line)}.blog-prose .rh-callout{margin:32px 0;padding:20px 24px;border-radius:12px;border:1px solid var(--km-line);background:var(--km-paper)}.blog-prose .rh-callout-title{font-weight:600;margin-bottom:6px;font-family:var(--km-font-display)}.blog-prose .rh-callout-tip{border-color:var(--km-accent);background:rgba(255,69,0,.04)}.blog-prose .rh-callout-warning{border-color:#d97706;background:rgba(217,119,6,.04)}.blog-prose .rh-callout-note{border-color:var(--km-line-strong)}.blog-prose .rh-takeaway{margin:32px 0;padding:24px 28px;border-radius:14px;background:var(--km-ink);color:#fff}.blog-prose .rh-takeaway-title{font-family:var(--km-font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--km-accent);margin-bottom:10px}.blog-prose .rh-step{margin:24px 0;padding:18px 20px 18px 64px;position:relative;border-left:3px solid var(--km-accent);background:var(--km-paper);border-radius:0 10px 10px 0}.blog-prose .rh-step-number{position:absolute;left:16px;top:18px;font-family:var(--km-font-mono);font-weight:600;font-size:18px;color:var(--km-accent)}.blog-prose .rh-stat{display:inline-block;margin:24px 14px 24px 0;padding:18px 22px;border-radius:14px;background:var(--km-paper);border:1px solid var(--km-line);text-align:center}.blog-prose .rh-stat-number{display:block;font-family:var(--km-font-display);font-size:36px;font-weight:600;letter-spacing:-.02em;color:var(--km-accent)}.blog-prose .rh-stat-label{display:block;font-size:13px;color:var(--km-ink-soft);margin-top:4px}.blog-prose .rh-stat-source{display:block;font-family:var(--km-font-mono);font-size:10px;color:var(--km-ink-faded);margin-top:6px;letter-spacing:.04em}.blog-prose .rh-pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0}.blog-prose .rh-cons,.blog-prose .rh-pros{padding:20px 24px;border-radius:12px;border:1px solid var(--km-line)}.blog-prose .rh-pros{background:rgba(61,170,102,.05);border-color:rgba(61,170,102,.4)}.blog-prose .rh-cons{background:rgba(255,69,0,.04);border-color:rgba(255,69,0,.3)}.blog-prose .rh-checklist{list-style:none;padding:0;margin:24px 0}.blog-prose .rh-checklist-item{position:relative;padding:8px 0 8px 32px;margin:0}.blog-prose .rh-checklist-item:before{content:"✓";position:absolute;left:0;top:8px;color:var(--km-accent);font-weight:600}.blog-prose .rh-verdict{margin:32px 0;padding:24px 28px;border-radius:14px;border:2px solid var(--km-ink)}.blog-prose .rh-verdict-title{font-family:var(--km-font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--km-ink-faded);margin-bottom:8px}.blog-prose .rh-verdict-rating{font-family:var(--km-font-display);font-size:22px;font-weight:600;color:var(--km-accent);margin-bottom:8px}.blog-prose .rh-comparison{margin:28px 0}.blog-prose .rh-toc{margin:32px 0;padding:24px 28px;border-radius:12px;background:var(--km-paper);border:1px solid var(--km-line)}.blog-prose .rh-toc-title{font-family:var(--km-font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--km-ink-faded);margin-bottom:12px}.blog-prose .rh-toc-sub{padding-left:16px}.blog-prose .rh-difficulty{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0;padding:18px 22px;border-radius:12px;background:var(--km-paper);border:1px solid var(--km-line)}.blog-prose .rh-difficulty-badge,.blog-prose .rh-difficulty-prereqs,.blog-prose .rh-difficulty-time{font-family:var(--km-font-mono);font-size:12px;color:var(--km-ink-soft);letter-spacing:.04em}.blog-prose .rh-difficulty-badge{color:var(--km-accent);font-weight:600;text-transform:uppercase}.blog-prose .rh-data-bar{margin:14px 0}.blog-prose .rh-data-bar-label{display:flex;justify-content:space-between;font-size:13px;color:var(--km-ink-soft);margin-bottom:4px}.blog-prose .rh-data-bar-track{height:8px;background:var(--km-line);border-radius:4px;overflow:hidden}.blog-prose .rh-data-bar-fill{display:block;height:100%;background:var(--km-accent)}.blog-prose .rh-data-bar-value{font-family:var(--km-font-mono);font-size:12px;color:var(--km-ink-faded)}.blog-prose .rh-video{position:relative;margin:32px 0;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:12px}.blog-prose .rh-video iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0}.km-toc-grid{max-width:var(--km-content-max);margin:0 auto;padding:0 var(--km-page-pad-x) 60px;display:grid;grid-template-columns:240px 1fr;gap:60px}.km-toc-aside{display:block}@media (max-width:880px){.km-toc-grid{grid-template-columns:1fr;gap:0}}@media (max-width:720px){.blog-prose .rh-pros-cons{grid-template-columns:1fr}}