.blog-layout{grid-gap:32px;grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:32px;display:grid}.feed{flex-direction:column;gap:16px;min-width:0;display:flex}.feed-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);transition:border-color var(--dur),box-shadow var(--dur);padding:24px 26px}.feed-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.fc-top{align-items:center;gap:10px;margin-bottom:14px;display:flex}.fc-top .av{background:var(--primary-soft);width:30px;height:30px;color:var(--primary-text);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid}.fc-top .av.a2{background:var(--accent-soft);color:var(--accent-text)}.fc-top .au{font-size:var(--fs-small);color:var(--text);font-weight:600}.fc-top .au a{color:var(--text)}.fc-top .dt{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--text-3)}.fc-top .sep{color:var(--text-3);opacity:.5}.fc-hubs{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.hub-chip{font-size:var(--fs-caption);color:var(--primary-text);background:var(--primary-soft);border:1px solid var(--primary-border);border-radius:var(--r-sm);padding:2px 9px;font-weight:600;text-decoration:none}.hub-chip:hover{background:var(--primary-soft-2);text-decoration:none}.hub-chip.tag{color:var(--text-2);background:var(--surface-2);border-color:var(--border);font-weight:500}.feed-card h2{font-size:var(--fs-h4);margin-bottom:8px;line-height:1.2}.feed-card h2 a{color:var(--text)}.feed-card h2 a:hover{color:var(--primary-text);text-decoration:none}.feed-card .fc-excerpt{font-size:var(--fs-body);color:var(--text-2);margin-bottom:16px;line-height:1.6}.fc-foot{border-top:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:14px;display:flex}.fc-read{font-size:var(--fs-small);color:var(--primary-text);align-items:center;gap:6px;font-weight:600;display:inline-flex}.artstats{align-items:center;gap:16px;display:flex}.artstat{font-size:var(--fs-small);color:var(--text-3);font-family:var(--font-mono);align-items:center;gap:6px;display:inline-flex}.artstat svg{width:15px;height:15px}.artstat.pos{color:var(--success-text)}.blog-side{flex-direction:column;gap:16px;display:flex;position:sticky;top:84px}.side-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);padding:20px}.side-card h4,.side-card h3{font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin-bottom:14px;font-weight:600}.side-card p{font-size:var(--fs-small);color:var(--text-2);line-height:1.6}.side-hubs{flex-wrap:wrap;gap:8px;display:flex}.side-pop{flex-direction:column;gap:12px;display:flex}.side-pop a{font-size:var(--fs-small);color:var(--text-2);align-items:baseline;gap:10px;text-decoration:none;display:flex}.side-pop a:hover{color:var(--text)}.side-pop a .n{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--primary-text);flex:none;font-weight:700}.side-card .btn{width:100%;margin-top:4px}.post-hubs{flex-wrap:wrap;gap:6px;margin:14px 0 4px;display:flex}.post-stats{border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:20px;margin-top:8px;padding:14px 0;display:flex}.post-stats .artstat{font-size:var(--fs-small)}.post-stats .grow{flex:1}.post-stats .pill-btn{font-size:var(--fs-small);color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-pill);cursor:pointer;align-items:center;gap:7px;padding:6px 14px;font-weight:600;display:inline-flex}.post-stats .pill-btn svg{width:15px;height:15px}.post-stats .pill-btn:hover{border-color:var(--border-strong);color:var(--text)}.author-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-2);align-items:flex-start;gap:16px;margin-top:40px;padding:22px;display:flex}.author-card .av{background:var(--primary-soft);width:56px;height:56px;color:var(--primary-text);border-radius:50%;flex:none;place-items:center;font-size:18px;font-weight:800;display:grid}.author-card .ac-name{font-size:var(--fs-h6);font-weight:700}.author-card .ac-role{font-size:var(--fs-small);color:var(--text-3);margin:2px 0 8px}.author-card .ac-bio{font-size:var(--fs-small);color:var(--text-2);line-height:1.55}.author-card .ac-links{gap:8px;margin-top:12px;display:flex}.author-card .ac-links a{font-size:var(--fs-caption);color:var(--primary-text);border:1px solid var(--primary-border);background:var(--primary-soft);border-radius:var(--r-pill);padding:4px 12px;font-weight:600}.comments-teaser{border:1px dashed var(--border-strong);border-radius:var(--r-lg);background:var(--surface);text-align:center;margin-top:24px;padding:24px}.comments-teaser h4,.comments-teaser h3{font-size:var(--fs-h6);margin-bottom:6px}.comments-teaser p{font-size:var(--fs-small);color:var(--text-3);margin-bottom:16px}.post-layout{grid-gap:clamp(32px,5vw,72px);grid-template-columns:minmax(0,700px) 240px;justify-content:space-between;gap:clamp(32px,5vw,72px);display:grid}.post-head{grid-column-gap:clamp(32px,5vw,72px);-moz-column-gap:clamp(32px,5vw,72px);grid-row-gap:0;grid-template-columns:minmax(0,700px) 240px;justify-content:space-between;gap:0 clamp(32px,5vw,72px);display:grid}.post-head>*{grid-column:1;min-width:0}.post-head h1{letter-spacing:-.02em;margin:16px 0 20px;font-size:clamp(1.9rem,1.4rem + 2vw,2.75rem);line-height:1.12}.post-by{border-block:1px solid var(--border);align-items:center;gap:12px;padding-block:16px;display:flex}.post-by .av{background:var(--primary-soft);width:42px;height:42px;color:var(--primary-text);border-radius:50%;flex:none;place-items:center;font-size:14px;font-weight:700;display:grid}.post-by .nm{font-size:var(--fs-small);font-weight:700}.post-by .nm a{color:var(--text)}.post-by .dt{font-size:var(--fs-caption);color:var(--text-3);font-family:var(--font-mono)}.post-body{color:var(--text-2);min-width:0;font-size:1.0625rem;line-height:1.75}.post-body h2{font-size:var(--fs-h4);margin:44px 0 14px;scroll-margin-top:84px}.post-body h3{font-size:var(--fs-h6);margin:30px 0 10px;scroll-margin-top:84px}.post-body p{margin-bottom:16px}.post-body ul,.post-body ol{margin:0 0 16px;padding-left:22px}.post-body li{margin-bottom:6px}.post-body strong{color:var(--text)}.post-body figure{margin:24px 0}.post-body figcaption{font-size:var(--fs-caption);color:var(--text-3);text-align:center;margin-top:8px}.img-ph{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-2);background-image:repeating-linear-gradient(45deg,var(--border-subtle)0 10px,transparent 10px 20px);place-items:center;min-height:260px;display:grid}.img-ph span{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--text-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:4px 10px}.callout{border:1px solid var(--primary-border);background:var(--primary-soft);border-radius:var(--r-md);font-size:var(--fs-small);color:var(--text-2);gap:12px;margin:24px 0;padding:16px 18px;display:flex}.callout svg{width:18px;height:18px;color:var(--primary-text);flex:none;margin-top:2px}.callout.warn{border-color:color-mix(in oklch,var(--warning)35%,transparent);background:var(--warning-soft)}.callout.warn svg{color:var(--warning-text)}.post-body blockquote{border-left:3px solid var(--primary);color:var(--text);margin:24px 0;padding:6px 0 6px 20px;font-size:1.125rem;font-weight:500}.post-body .table-scroll{margin:24px 0;overflow-x:auto}.post-body .table-scroll .cmp{min-width:560px}.post-body .table-scroll:focus-visible{box-shadow:var(--focus-ring);outline:none}.post-body .stats{margin:28px 0}.post-code{background:var(--code-bg);color:var(--code-text);border-radius:var(--r-md);margin:24px 0;overflow:clip}.post-code .pc-bar{font-family:var(--font-mono);color:#9aa0b6;border-bottom:1px solid #ffffff14;justify-content:space-between;padding:8px 14px;font-size:11px;display:flex}.post-code pre:focus-visible{box-shadow:inset var(--focus-ring);outline:none}.post-code pre{margin:0;padding:16px;font-size:13px;line-height:1.6;overflow-x:auto}.tok-com{color:#7d8598}.tok-str{color:#9ece8f}.tok-key{color:#8fb8f6}.tok-num{color:#e5b567}.post-toc{font-size:var(--fs-small);align-self:start;position:sticky;top:84px}.post-toc .tt{font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin-bottom:12px;font-weight:600}.post-toc a{color:var(--text-3);border-left:2px solid var(--border);padding:5px 0 5px 14px;text-decoration:none;display:block}.post-toc a:hover{color:var(--text)}.post-toc a.on{color:var(--primary-text);border-left-color:var(--primary);font-weight:600}.post-embed{margin:28px 0}.post-embed .akw-body{grid-template-columns:1fr}.post-embed .akw-side{border-left:none;border-top:1px solid var(--border)}.post-embed .pe-cap{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--text-3);margin-bottom:10px}.read-also{border-top:1px solid var(--border);margin-top:56px;padding-top:32px}.read-also h2{font-size:var(--fs-h5);margin-bottom:18px}.ra-grid{grid-gap:16px;grid-template-columns:1fr 1fr;gap:16px;display:grid}.ra-card{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);transition:border-color var(--dur);padding:18px;text-decoration:none}.ra-card:hover{border-color:var(--primary);text-decoration:none}.ra-card .k{font-family:var(--font-mono);color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.ra-card h4,.ra-card h3{font-size:var(--fs-small);color:var(--text);margin-top:6px;font-weight:700}.chip{height:30px;padding:0 var(--sp-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-pill);font-size:var(--fs-small);color:var(--text-2);cursor:pointer;transition:all var(--dur)var(--ease);align-items:center;gap:6px;display:inline-flex}.chip.is-active{background:var(--primary-soft);border-color:var(--primary-border);color:var(--primary-text)}.akw-drop{border:1.5px dashed var(--border-strong);border-radius:var(--r-lg);text-align:center;cursor:pointer;transition:border-color var(--dur),background var(--dur);padding:clamp(28px,4vw,44px) 20px}.akw-drop:hover{border-color:var(--primary);background:var(--primary-soft)}.akw-drop .dz-ic{border-radius:var(--r-md);background:var(--primary-soft);border:1px solid var(--primary-border);width:44px;height:44px;color:var(--primary-text);place-items:center;margin:0 auto 12px;display:grid}.akw-drop p{font-size:var(--fs-small);color:var(--text-3)}.akw-drop .dz-fmt{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--text-3);margin-top:12px}.blog-filters{flex-wrap:wrap;gap:8px;margin-bottom:28px;display:flex}.chip{border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface);font-size:var(--fs-small);color:var(--text-2);cursor:pointer;padding:7px 14px;font-weight:600}.chip.is-active{background:var(--text);color:var(--bg);border-color:var(--text)}@media (max-width:980px){.post-layout,.post-head{grid-template-columns:minmax(0,700px)}.post-toc{display:none}.blog-layout{grid-template-columns:1fr}.blog-side{flex-flow:wrap;position:static}.blog-side .side-card{flex:1;min-width:220px}}@media (max-width:560px){.toolgrid,.post-grid,.team-grid,.ra-grid,.links-grid-mvp{grid-template-columns:1fr}}@media (max-width:767px){.dd-foot .badge,.tool-card .free,.ba .tag,.rz-crop-size,.mp-tg-head .st,.md-stat .k,.akw-score .k,.akw-share .sh-n,.pr-n,.pr-c,.cat-head .cn .cu,.akw-check .ck-a,.akw-check .ck-tag,.cat-foot,.akw-foot,.hero-audit .ha-h span,.fc-top .av,.post-card .pc-by .av,.post-code .pc-bar,.ra-card .k,.link-card-mvp .lk-k,.au-or span,.au-demo{font-size:12px}}.btn-sm{--btn-h:32px;padding:0 var(--sp-3);font-size:var(--fs-caption);border-radius:var(--r-sm)}.stat .v .u{color:var(--accent-text)}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.akw{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-md);overflow:clip}.akw-bar{background:var(--surface-2);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.akw-bar .akw-priv{font-family:var(--font-mono);font-size:var(--fs-caption);color:var(--text-3);align-items:center;gap:7px;display:inline-flex}.akw-bar .akw-priv svg{width:13px;height:13px;color:var(--success)}.akw-body{grid-template-columns:1fr 264px;display:grid}.akw.no-side .akw-body{grid-template-columns:1fr}.akw-main{min-width:0;padding:20px}@media (max-width:860px){.akw-body{grid-template-columns:1fr}.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.cols-3{grid-template-columns:1fr}}@media (max-width:560px){.toolgrid,.post-grid,.team-grid,.ra-grid,.links-grid-mvp{grid-template-columns:1fr}}@media (max-width:767px){.dd-foot .badge,.tool-card .free,.ba .tag,.rz-crop-size,.mp-tg-head .st,.md-stat .k,.akw-score .k,.akw-share .sh-n,.pr-n,.pr-c,.cat-head .cn .cu,.akw-check .ck-a,.akw-check .ck-tag,.cat-foot,.akw-foot,.hero-audit .ha-h span,.fc-top .av,.post-card .pc-by .av,.post-code .pc-bar,.ra-card .k,.link-card-mvp .lk-k,.au-or span,.au-demo{font-size:12px}}.fc-read{align-items:center;min-height:24px;display:inline-flex}.au a{white-space:nowrap;padding-block:3px;display:inline-block}.akw-drop h3,.comments-teaser h3,.dropzone h3,.feat-card h3,.link-card-mvp h3,.pr-h h3,.ra-card h3,.scn-card h3,.side-card h3,.step h3,.tool-card h3,.akw-side h4,.tw-side h4,.foot-col h2{line-height:var(--lh-snug)}.post-body .akw-drop h3{margin:0 0 4px}.post-body .comments-teaser h3{margin:0 0 6px}.post-body .ra-card h3{margin:6px 0 0}.tw-side h4,.akw-side h4{letter-spacing:var(--tracking-tight)}@media (max-width:767px){.dd-foot .badge,.tool-card .free,.ba .tag,.rz-crop-size,.mp-tg-head .st,.md-stat .k,.akw-score .k,.akw-share .sh-n,.pr-n,.pr-c,.cat-head .cn .cu,.akw-check .ck-a,.akw-check .ck-tag,.cat-foot,.akw-foot,.hero-audit .ha-h span,.fc-top .av,.post-card .pc-by .av,.post-code .pc-bar,.ra-card .k,.link-card-mvp .lk-k,.au-or span,.au-demo{font-size:12px}input[type=text],input[type=url],input[type=number],input[type=email],input[type=search],input:not([type]),textarea{font-size:16px}}.page-bc a{align-items:center;min-height:24px;display:inline-flex}input[type=range].rng{box-sizing:border-box;background-clip:content-box;height:24px;padding:9px 0}
