@media (max-width:768px){.post-hero-inner{padding:40px 0 32px}}.post-cta-bar{background:var(--post-accent,var(--g-hero));position:relative;overflow:hidden}.post-cta-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:22px;padding:38px 0;display:flex}.post-cta-inner p{font-family:var(--f-body);color:#fff;margin:0;font-size:1.15rem;font-weight:700}.post-cta-bar .btn-primary{background:var(--on-accent);color:var(--post-accent-c-lt,var(--acc-solid));border-color:#0000}.post-cta-bar .btn-primary:hover{color:var(--post-accent-c,var(--blue));background:#ffffffe6}.post-header{background:var(--g-hero);padding:120px 0 60px;position:relative;overflow:hidden}.post-tag-row{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.post-meta-row{color:#ffffff80;flex-wrap:wrap;align-items:center;gap:16px;font-size:.82rem;display:flex}.post-thumb-wrap{z-index:2;max-width:860px;margin:-40px auto 0;padding:0 24px;position:relative}.post-thumb{border-radius:var(--r-lg);justify-content:center;align-items:center;height:360px;font-size:4rem;display:flex;overflow:hidden;box-shadow:0 24px 64px #0000004d}.post-body ul,.post-body ol{margin:16px 0 22px 22px}.post-body li{color:var(--sub);margin-bottom:8px;padding-left:4px;font-size:1.05rem;line-height:1.8}.post-body li::marker{color:var(--post-accent-c,var(--blue))}.post-body strong{color:var(--ink);font-weight:700}.post-body em{font-style:italic}.post-body hr{border:none;border-top:1px solid var(--border);margin:32px 0}.post-body img{border-radius:var(--r-md);width:100%;margin:24px 0}.post-page{--post-accent-c:var(--post-accent-c-dk);min-height:100vh}:root[data-theme=light] .post-page{--post-accent-c:var(--post-accent-c-lt)}.post-back-bar{background:var(--surface-solid);border-bottom:1.5px solid var(--border2);padding:12px 0}.post-back-link{color:var(--muted);align-items:center;gap:7px;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .18s;display:inline-flex}.post-back-link:hover{color:var(--blue)}.post-crumbs{background:var(--surface-solid);border-bottom:1px solid var(--border2);padding:13px 0}.post-crumbs .container{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.post-crumbs a{color:var(--muted);white-space:nowrap;font-size:.82rem;font-weight:500;text-decoration:none;transition:color .18s}.post-crumbs a:hover{color:var(--post-accent-c,var(--blue))}.post-crumb-sep{color:var(--faint);font-size:.9rem}.post-crumb-cur{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;max-width:min(52vw,540px);font-size:.82rem;overflow:hidden}.post-hero{background:linear-gradient(180deg, var(--paper) 0%, #fff 100%);border-bottom:1px solid var(--border2);padding:44px 0 38px;position:relative;overflow:hidden}.post-hero:before{content:"";background:var(--post-accent,var(--g-hero));height:4px;position:absolute;inset:0 0 auto}.post-hero:after{content:"";background:var(--post-accent,var(--g-hero));opacity:.07;filter:blur(64px);pointer-events:none;border-radius:50%;width:380px;height:380px;position:absolute;top:-150px;right:-110px}.post-hero-inner{max-width:820px;position:relative}.post-tags{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.post-tags .tag{letter-spacing:.04em;text-transform:uppercase;color:var(--post-accent-c,var(--blue));background:color-mix(in srgb, var(--post-accent-c,var(--blue)) 10%, var(--surface-solid));border:1px solid color-mix(in srgb, var(--post-accent-c,var(--blue)) 22%, transparent);border-radius:999px;padding:5px 11px;font-size:.72rem;font-weight:700;text-decoration:none;transition:background .18s,transform .18s}.post-tags .tag:hover{background:color-mix(in srgb, var(--post-accent-c,var(--blue)) 18%, var(--surface-solid));transform:translateY(-1px)}.post-title{font-family:var(--f-body);letter-spacing:-.022em;color:var(--ink);font-size:clamp(1.7rem,1.05rem + 2.7vw,2.65rem);font-weight:800;line-height:var(--lh-title);margin-bottom:16px}.post-excerpt{font-family:var(--f-body);color:var(--muted);max-width:720px;margin-bottom:22px;font-size:clamp(1.02rem,.97rem + .3vw,1.18rem);line-height:1.7}.post-author{align-items:center;gap:9px;display:inline-flex}.post-author-avatar{background:var(--post-accent,var(--g-hero));color:#fff;width:34px;height:34px;font-family:var(--f-body);letter-spacing:.02em;-o-object-fit:cover;object-fit:cover;border-radius:50%;flex:none;place-items:center;font-size:.78rem;font-weight:800;display:grid}.post-author-name{color:var(--ink);font-weight:700}.post-body{font-family:var(--f-body)}.pt-p{color:var(--sub);overflow-wrap:anywhere;margin-bottom:1.35rem;font-size:1.06rem;line-height:1.85}.pt-h2{font-family:var(--f-body);letter-spacing:-.018em;color:var(--ink);margin:2.6rem 0 1rem;padding-top:.4rem;scroll-margin-top:96px;font-size:clamp(1.4rem,1.2rem + .7vw,1.7rem);font-weight:800;line-height:1.3}.pt-h3{font-family:var(--f-body);letter-spacing:-.01em;color:var(--ink);margin:2rem 0 .7rem;scroll-margin-top:96px;font-size:clamp(1.15rem,1.05rem + .4vw,1.32rem);font-weight:700;line-height:1.35}.pt-blockquote{border-left:3px solid var(--post-accent-c,var(--blue));background:var(--surface-solid);color:var(--muted);border-radius:0 10px 10px 0;margin:1.8rem 0;padding:14px 20px;font-size:1.04rem;font-style:italic;line-height:1.7}.pt-image{margin:2rem 0}.pt-image img{border:1px solid var(--border2);border-radius:12px;width:100%;display:block}.pt-image figcaption{text-align:center;color:var(--faint);margin-top:8px;font-size:.8rem;font-style:italic}.pt-link{color:var(--post-accent-c,var(--blue));text-underline-offset:3px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px}.pt-link:hover{color:var(--blue2)}.pt-code{font-family:var(--font-mono), ui-monospace, monospace;background:var(--surface-solid);color:var(--blue2);overflow-wrap:anywhere;border-radius:5px;padding:2px 6px;font-size:.88em}@media (max-width:640px){.post-hero{padding:30px 0 26px}.pt-p{font-size:1.02rem}.post-cta-inner{padding:30px 0}.post-cta-inner p{font-size:1.05rem}}@media (max-width:768px){.post-crumbs a,.post-back-link{justify-content:center;align-items:center;min-width:34px;min-height:34px;margin-inline:-4px;padding-inline:4px;display:inline-flex}}@media (min-width:1600px){.post-title{font-size:clamp(2.6rem,2.6vw,3.4rem)}}
