.article-page-wrapper{min-height:100vh;color:var(--text-primary);z-index:1;background:0 0;width:100%;position:relative;overflow-x:clip}.article-floating-nav-wrap{z-index:1000;pointer-events:none;justify-content:center;padding:0 1.5rem;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:1.25rem;left:0;right:0}.article-floating-dock{pointer-events:auto;background:var(--header-bg);-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px solid var(--border-subtle);border-top:1px solid var(--border-specular);border-radius:9999px;justify-content:space-between;align-items:center;width:100%;max-width:1100px;min-height:56px;padding:.35rem .65rem;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden;box-shadow:0 12px 36px -10px #00000059,0 2px 8px -2px #0003}[data-theme=light] .article-floating-dock{background:#ffffffe0;border:1px solid #0f172a14;border-top-color:#ffffffe6;box-shadow:0 12px 36px -10px #0f172a14,0 2px 8px -2px #0f172a0a}.article-floating-nav-wrap.scrolled .article-floating-dock{background:var(--header-scrolled-bg);border-color:var(--border-medium);transform:translateY(-2px);box-shadow:0 18px 45px -12px #00000080,0 4px 12px -2px #00000040}[data-theme=light] .article-floating-nav-wrap.scrolled .article-floating-dock{background:#fffffff5;border-color:#0f172a1f;box-shadow:0 18px 45px -12px #0f172a1f,0 4px 12px -2px #0f172a0d}.btn-back-blogs{color:var(--text-highlight);background:var(--btn-secondary-bg);border:1px solid var(--border-subtle);white-space:nowrap;border-radius:9999px;flex-shrink:0;align-items:center;gap:.5rem;padding:.5rem 1.15rem;font-size:.85rem;font-weight:650;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-back-blogs:hover{color:var(--text-highlight);background:var(--btn-secondary-hover);border-color:var(--accent-emerald-border);transform:translate(-2px)}[data-theme=light] .btn-back-blogs{color:#1e293b;background:#0f172a0a;border-color:#0f172a14}[data-theme=light] .btn-back-blogs:hover{background:#fff;border-color:#0f172a33;box-shadow:0 2px 8px -2px #0f172a1a}.article-dock-center{opacity:0;pointer-events:none;flex:1;justify-content:center;align-items:center;min-width:0;padding:0 1rem;transition:opacity .25s,transform .25s;display:flex;transform:translateY(6px)}.article-dock-center.visible{opacity:1;transform:translateY(0)}.article-dock-title{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:420px;font-size:.825rem;font-weight:600;overflow:hidden}.article-dock-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.article-dock-brand{align-items:center;text-decoration:none;display:flex}.dock-symbol-sm{border:1px solid var(--accent-emerald-border);width:34px;height:34px;color:var(--accent-emerald-light);font-size:.8rem;font-weight:800;font-family:var(--font-mono);background:linear-gradient(135deg,#10b9812e 0%,#05966914 100%);border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.article-dock-brand:hover .dock-symbol-sm{border-color:var(--accent-emerald);transform:scale(1.05)}[data-theme=light] .dock-symbol-sm{color:#047857;background:linear-gradient(135deg,#0596691f 0%,#0596690a 100%);border-color:#0596694d}.reading-progress-track{background:linear-gradient(90deg,#10b981 0%,#34d399 100%);border-radius:0 2px 2px 0;height:2.5px;transition:width .1s ease-out;position:absolute;bottom:0;left:0}.article-main-container{padding:6.5rem 0 6rem}.article-content-wrap{max-width:820px;margin:0 auto}.article-header{border-bottom:1px solid var(--border-subtle);margin-bottom:3.5rem;padding-bottom:2.5rem}.article-tags-row{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.article-tag-pill{font-family:var(--font-mono);color:var(--accent-emerald-light);background:var(--accent-emerald-bg);border:1px solid var(--accent-emerald-border);border-radius:var(--radius-xs);align-items:center;gap:.35rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.article-main-title{letter-spacing:-.03em;color:var(--text-highlight);word-break:break-word;margin-bottom:1.25rem;font-size:clamp(2rem,5vw,3.25rem);font-weight:900;line-height:1.18}.article-main-subtitle{color:var(--text-secondary);margin-bottom:2rem;font-size:1.15rem;line-height:1.6}.article-author-strip{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.author-avatar-wrap{border:1px solid var(--border-emerald);border-radius:50%;flex-shrink:0;width:44px;height:44px;overflow:hidden}.author-avatar-img{object-fit:cover;width:100%;height:100%}.author-meta-info{flex-direction:column;display:flex}.author-name{color:var(--text-highlight);font-size:.95rem;font-weight:700}.author-sub-meta{color:var(--text-muted);align-items:center;gap:.5rem;font-size:.8rem;display:flex}.meta-sep{opacity:.5}.read-time-pill{color:var(--accent-emerald-light);align-items:center;gap:.3rem;display:inline-flex}.author-strip-right{margin-left:auto}.btn-share-pill{background:var(--btn-secondary-bg);border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:var(--radius-xs);cursor:pointer;white-space:nowrap;align-items:center;gap:.4rem;padding:.35rem .8rem;font-size:.8rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-share-pill:hover{background:var(--btn-secondary-hover);color:var(--text-highlight);border-color:var(--border-medium);transform:translateY(-1px)}.btn-share-pill.copied,.btn-share-copied{background:var(--accent-emerald-bg)!important;color:var(--accent-emerald-light)!important;border-color:var(--accent-emerald-border)!important}.text-emerald{color:var(--accent-emerald-light)}.article-body-markdown{color:var(--text-primary);word-break:break-word;font-size:1.1rem;line-height:1.8}.article-body-markdown p{margin-bottom:1.75rem}.article-body-markdown strong{color:var(--text-highlight);font-weight:700}.article-body-markdown h2{color:var(--text-highlight);letter-spacing:-.02em;border-bottom:1px solid var(--border-subtle);word-break:break-word;margin-top:3.5rem;margin-bottom:1.25rem;padding-bottom:.5rem;font-size:1.85rem;font-weight:800}.article-body-markdown h3{color:var(--accent-emerald-light);word-break:break-word;margin-top:2.25rem;margin-bottom:.85rem;font-size:1.35rem;font-weight:700}.article-body-markdown ul,.article-body-markdown ol{margin-bottom:2rem;padding-left:1.5rem}.article-body-markdown ul{list-style:outside}.article-body-markdown ol{list-style:decimal}.article-body-markdown li{margin-bottom:.75rem;line-height:1.7}.article-body-markdown hr{background:var(--border-subtle);border:none;height:1px;margin:3.5rem 0}.article-body-markdown blockquote{border-left:3px solid var(--accent-emerald);background:var(--accent-emerald-bg);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--text-primary);margin:2rem 0;padding:1rem 1.5rem;font-style:italic}.article-img-link{cursor:pointer;width:100%;margin:2.5rem auto .75rem;text-decoration:none;display:block}.article-diagram-img{object-fit:contain;border-radius:var(--radius-md);border:1px solid var(--border-medium);width:100%;max-width:100%;height:auto;box-shadow:var(--shadow-card);image-rendering:auto;background:#fff;padding:1.25rem;transition:transform .2s,border-color .2s,box-shadow .2s;display:block}.article-img-link:hover .article-diagram-img{border-color:var(--accent-emerald);box-shadow:var(--shadow-elevated);transform:translateY(-2px)}.article-body-markdown em,.article-inline-em{color:var(--text-highlight);text-align:inherit;margin:0;font-style:italic;display:inline!important}.article-paragraph{color:var(--text-primary);margin-bottom:1.75rem;line-height:1.8}.article-figure-caption{color:var(--text-muted);text-align:center;max-width:760px;margin:.75rem auto 2.5rem;font-size:.875rem;font-style:italic;line-height:1.6;display:block}.article-table-responsive{-webkit-overflow-scrolling:touch;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--card-gradient);width:100%;box-shadow:var(--shadow-card);margin:2.5rem 0;overflow-x:auto}.article-table{border-collapse:collapse;width:100%;min-width:500px;font-size:.95rem}.article-table th,.article-table td{text-align:left;border-bottom:1px solid var(--border-subtle);padding:1rem 1.25rem}.article-table th{background:var(--btn-secondary-bg);color:var(--text-highlight);text-transform:uppercase;letter-spacing:.06em;font-size:.85rem;font-weight:700}.article-table tr:last-child td{border-bottom:none}.article-table tr:hover td{background:var(--btn-secondary-hover)}.article-body-markdown a:not(.article-img-link){color:var(--accent-emerald-light);text-underline-offset:3px;word-break:break-all;text-decoration:underline}.article-body-markdown a:not(.article-img-link):hover{color:var(--accent-emerald-dark)}.article-author-card{background:var(--card-gradient);border:1px solid var(--border-subtle);border-top:1px solid var(--border-specular);border-radius:var(--radius-md);box-shadow:var(--shadow-elevated);align-items:center;gap:1.75rem;margin-top:4rem;padding:2.5rem;display:flex}.author-card-avatar{border:2px solid var(--border-emerald);border-radius:50%;flex-shrink:0;width:80px;height:80px;overflow:hidden}.author-large-photo{object-fit:cover;width:100%;height:100%}.author-card-body{flex-grow:1}.author-card-name{color:var(--text-highlight);margin-bottom:.4rem;font-size:1.2rem;font-weight:800}.author-card-bio{color:var(--text-secondary);margin-bottom:1.25rem;font-size:.925rem;line-height:1.6}.author-card-bio strong{color:var(--text-highlight)}.author-social-actions{flex-wrap:wrap;gap:.65rem;display:flex}.btn-sm{padding:.45rem .9rem;font-size:.825rem}.article-table-responsive{-webkit-overflow-scrolling:touch;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--card-gradient);width:100%;max-width:100%;margin:1.75rem 0;overflow-x:auto}.article-table{border-collapse:collapse;text-align:left;width:100%;font-size:.85rem;line-height:1.5}.article-table th,.article-table td{border-bottom:1px solid var(--border-subtle);padding:.75rem 1rem}.article-table th{background:var(--bg-surface-raised);color:var(--text-highlight);white-space:nowrap;font-weight:700}.article-body-markdown pre{-webkit-overflow-scrolling:touch;background:var(--bg-surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);max-width:100%;font-family:var(--font-mono,monospace);margin:1.75rem 0;padding:1.15rem 1.25rem;font-size:.85rem;line-height:1.6;overflow-x:auto}.article-body-markdown code{font-family:var(--font-mono,monospace);background:var(--btn-secondary-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);word-break:break-word;padding:.15em .4em;font-size:.85em}.article-body-markdown pre code{white-space:pre;word-break:normal;background:0 0;border:none;border-radius:0;padding:0}.article-img-link{max-width:100%;margin:1.75rem 0;display:block}.article-diagram-img{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-surface-raised);max-width:100%;height:auto;margin:0 auto;display:block}.article-bottom-nav-box{background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-base);justify-content:space-between;align-items:center;gap:1.5rem;margin-top:2.5rem;padding:2rem;display:flex}.article-bottom-nav-box:hover{border-color:var(--border-medium);box-shadow:var(--shadow-md)}.bottom-nav-tag{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-emerald-light);margin-bottom:.35rem;font-size:.75rem;font-weight:700;display:block}.bottom-nav-heading{color:var(--text-primary);letter-spacing:-.01em;margin:0;font-size:1.15rem;font-weight:700}.btn-bottom-blogs{white-space:nowrap;background:var(--btn-secondary-bg);border:1px solid var(--border-subtle);color:var(--text-highlight);transition:all var(--transition-fast);border-radius:9999px;flex-shrink:0;align-items:center;gap:.6rem;padding:.75rem 1.4rem;font-size:.95rem;font-weight:600;display:inline-flex}.btn-bottom-blogs:hover{background:var(--btn-secondary-hover);border-color:var(--accent-emerald-border);color:var(--accent-emerald-light);transform:translateY(-2px)}@media (max-width:768px){.article-main-container{padding:5.25rem 0 4rem}.article-content-wrap{padding:0 1rem}.article-header{margin-bottom:2.25rem;padding-bottom:1.75rem}.article-main-title{font-size:clamp(1.75rem,5vw,2.4rem);line-height:1.22}.article-main-subtitle{margin-bottom:1.5rem;font-size:1rem}.article-body-markdown p{margin-bottom:1.4rem;font-size:.975rem;line-height:1.7}.article-body-markdown h2{margin-top:2.25rem;margin-bottom:.85rem;font-size:1.45rem}.article-body-markdown h3{margin-top:1.75rem;margin-bottom:.65rem;font-size:1.2rem}.article-author-card{text-align:center;flex-direction:column;gap:1.25rem;margin-top:3rem;padding:1.75rem 1.25rem}.author-card-avatar{width:68px;height:68px;margin:0 auto}.author-social-actions{justify-content:center}}@media (max-width:640px){.article-floating-nav-wrap{padding:0 .75rem;top:.65rem}.article-floating-dock{min-height:48px;padding:.25rem .5rem}.article-dock-center{display:none!important}.btn-back-blogs{gap:.35rem;padding:.4rem .85rem;font-size:.825rem}.article-dock-brand{display:none}.article-dock-actions{gap:.35rem}.article-bottom-nav-box{flex-direction:column;align-items:flex-start;gap:1.15rem;padding:1.5rem 1.25rem}.btn-bottom-blogs{justify-content:center;width:100%}}@media (max-width:520px){.article-author-strip{align-items:flex-start;gap:.75rem}.author-avatar-wrap{width:38px;height:38px}.author-meta-info{flex:1;min-width:140px}.author-strip-right{width:100%;margin-top:.4rem;margin-left:0}.btn-share-pill{justify-content:center;width:100%;padding:.5rem}.article-author-card{padding:1.35rem 1rem}.author-social-actions{flex-direction:column;width:100%}.author-social-actions .btn,.author-social-actions .btn-sm{justify-content:center;width:100%;padding:.6rem}}@media (max-width:380px){.article-floating-nav-wrap{padding:0 .45rem;top:.5rem}.btn-back-blogs{padding:.35rem .65rem;font-size:.775rem}.article-main-title{font-size:1.6rem}}
