:root{--post-surface:var(--bg-card);--post-surface-alt:var(--bg-raised);--post-border:rgba(255,255,255,.07);--post-border-strong:rgba(255,255,255,.08);--post-badge-bg:rgba(11,11,13,.82);--post-badge-fg:var(--fg-muted)}
  html.light{--post-border:rgba(17,16,16,.08);--post-border-strong:rgba(17,16,16,.1);--post-badge-bg:rgba(255,255,255,.94);--post-badge-fg:var(--fg)}
    .post-hero{padding:120px 0 60px}
    .back-link{display:inline-flex;align-items:center;gap:8px;color:var(--fg-muted);text-decoration:none;font-size:.9rem;margin-bottom:32px;transition:color .2s}
    .back-link:hover{color:var(--accent)}
    .post-header{margin-bottom:28px}
    .post-category-badge{display:inline-block;padding:4px 12px;background:var(--accent-soft);border:1px solid var(--accent-glow);border-radius:999px;color:var(--accent);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px}
    .post-title{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;color:var(--fg);line-height:1.2;margin:0 0 16px}
    .post-deck{font-size:1.1rem;color:var(--fg-muted);line-height:1.7;margin:0 0 20px;max-width:760px}
    .post-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
  .post-meta-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;background:var(--post-surface);border:1px solid var(--post-border);border-radius:999px;font-size:.8rem;color:var(--fg-muted)}
    .post-meta-pill span:first-child{color:var(--fg-dim)}
    .post-featured-image{position:relative;border-radius:var(--radius-lg);overflow:hidden;margin-bottom:32px}
    .post-featured-image img{width:100%;max-height:480px;object-fit:cover;display:block}
  .image-brand-badge{position:absolute;bottom:10px;right:10px;display:flex;align-items:center;gap:4px;padding:4px 9px;background:var(--post-badge-bg);border:1px solid var(--post-border);border-radius:6px;font-size:.72rem;color:var(--post-badge-fg);backdrop-filter:blur(10px)}
  .image-brand-badge.compact{font-size:.68rem;padding:4px 8px}
    .image-brand-badge img{width:12px;height:12px}
    .post-layout{display:grid;grid-template-columns:1fr 300px;gap:40px;align-items:start}
    @media(max-width:900px){.post-layout{grid-template-columns:1fr}.post-sidebar{display:none}}
    .post-article{}
    .post-prose{font-size:1rem;line-height:1.8;color:var(--fg-muted)}
    .post-prose h2,.post-prose h3,.post-prose h4{color:var(--fg);margin:1.8em 0 .7em;line-height:1.3}
    .post-prose h2{font-size:1.5rem}
    .post-prose h3{font-size:1.2rem}
    .post-prose p{margin:0 0 1.2em}
    .post-prose a{color:var(--accent);text-decoration:underline}
    .post-prose ul,.post-prose ol{padding-left:1.5em;margin:0 0 1.2em}
    .post-prose li{margin-bottom:.4em}
    .post-prose blockquote{border-left:3px solid var(--accent);padding-left:1.2em;margin:1.5em 0;color:var(--fg-muted);font-style:italic}
  .post-prose code{background:var(--post-surface);padding:2px 6px;border-radius:4px;font-size:.88em}
  .post-prose pre{background:var(--post-surface);padding:1.2em;border-radius:var(--radius);overflow-x:auto;margin:1.5em 0;border:1px solid var(--post-border)}
    .post-prose pre code{background:none;padding:0}
    .post-sidebar{display:flex;flex-direction:column;gap:16px;position:sticky;top:100px}
  .post-rail-card{background:var(--post-surface);border:1px solid var(--post-border);border-radius:var(--radius);padding:20px}
    .rail-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--fg-dim);margin-bottom:8px}
    .rail-title{font-size:1rem;font-weight:700;color:var(--fg);margin:0 0 12px}
    .author-avatar{width:48px;height:48px;background:var(--accent-soft);border:2px solid var(--accent-glow);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--accent);font-size:1.1rem;margin-bottom:10px}
    .rail-copy{font-size:.82rem;color:var(--fg-muted);line-height:1.6;margin:0}
    .toc-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
    .toc-list a{font-size:.85rem;color:var(--fg-muted);text-decoration:none;padding:4px 8px;border-radius:var(--radius-sm);display:block;transition:all .2s}
    .toc-list a:hover{color:var(--accent);background:var(--accent-soft)}
    .share-buttons{display:flex;flex-direction:column;gap:8px}
  .share-btn{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;background:var(--post-surface-alt);border:1px solid var(--post-border-strong);border-radius:var(--radius-sm);font-size:.83rem;color:var(--fg-muted);text-decoration:none;cursor:pointer;font-family:inherit;transition:all .2s}
    .share-btn:hover{border-color:var(--accent);color:var(--accent)}
    .a11y-controls{display:flex;flex-direction:column;gap:10px}
    .a11y-row{display:flex;gap:6px}
  .a11y-btn{flex:1;padding:7px;background:var(--post-surface-alt);border:1px solid var(--post-border-strong);border-radius:var(--radius-sm);color:var(--fg-muted);cursor:pointer;font-family:inherit;font-size:.83rem;transition:all .2s}
    .a11y-btn:hover{border-color:var(--accent);color:var(--accent)}
  .a11y-select{width:100%;padding:8px;background:var(--post-surface-alt);border:1px solid var(--post-border-strong);border-radius:var(--radius-sm);color:var(--fg-muted);font-family:inherit;font-size:.83rem}
    .font-size-readout{text-align:center;font-size:.78rem;color:var(--fg-dim)}
    .post-container{padding:40px 0 80px}
    .related-posts{}
    .related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:20px}
    .related-card-item{}
  .related-posts-title{font-size:28px;font-weight:700;margin-bottom:24px;color:var(--fg)}
  .related-card{display:block;text-decoration:none;color:inherit;background:var(--post-surface);border:1px solid var(--post-border);border-radius:var(--radius-lg);overflow:hidden;transition:transform .2s,border-color .2s,box-shadow .2s}
  .related-card:hover{transform:translateY(-3px);border-color:var(--accent-glow);box-shadow:var(--shadow)}
  .related-image{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--post-surface-alt)}
    .related-image img{width:100%;height:100%;object-fit:cover}
    .related-content{padding:16px}
    .related-title{font-size:.98rem;font-weight:700;color:var(--fg);margin:0 0 8px;line-height:1.4}
    .related-excerpt{font-size:.83rem;color:var(--fg-muted);margin:0 0 10px;line-height:1.5}
    .related-meta{font-size:.78rem;color:var(--fg-dim)}
