.post__progress{position:fixed;top:0;left:0;right:0;height:4px;z-index:var(--z-modal, 400);pointer-events:none;background:#ffffff0a}.post__progress[hidden]{display:none}.post__progress-bar{height:100%;width:calc(var(--progress, 0) * 100%);background:linear-gradient(90deg,var(--color-primary, #3265cc),hsl(var(--hue-primary, 220) 80% 65%),var(--color-primary, #3265cc));background-size:200% 100%;animation:progress-shimmer 2s ease-in-out infinite;box-shadow:0 0 12px hsl(var(--hue-primary, 220) var(--sat-primary, 50%) 55% / .6),0 0 4px hsl(var(--hue-primary, 220) var(--sat-primary, 50%) 55% / .3);border-radius:0 2px 2px 0;transition:width 80ms linear}@keyframes progress-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}[data-theme=light] .post__progress{background:#0000000f}[data-theme=light] .post__progress-bar{box-shadow:0 0 10px hsl(var(--hue-primary, 220) var(--sat-primary, 50%) 50% / .4),0 0 3px hsl(var(--hue-primary, 220) var(--sat-primary, 50%) 50% / .2)}.post__hero{position:relative;overflow:hidden;margin-bottom:var(--spacing-xl)}.post__hero[hidden]{display:none}.post__hero-img-wrap{position:relative;width:100%;min-height:320px;max-height:520px;overflow:hidden}.post__hero-img{width:100%;height:100%;object-fit:cover;min-height:320px;max-height:520px;will-change:transform}@media (hover: hover) and (prefers-reduced-motion: no-preference){.post__hero-img-wrap{min-height:380px;max-height:560px}.post__hero-img{min-height:calc(100% + 80px);max-height:none}}.post__hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.5) 40%,rgba(0,0,0,.15) 70%,transparent 100%)}.post__hero-content{position:absolute;bottom:0;left:0;right:0;padding:var(--spacing-xl) var(--spacing-lg);color:#fff;display:flex;flex-direction:column;gap:var(--spacing-sm)}@media (min-width: 768px){.post__hero-content{padding:var(--spacing-2xl) var(--spacing-xl);max-width:800px}}.post__title--hero{font-size:clamp(1.75rem,4vw,3rem);text-shadow:0 2px 12px rgba(0,0,0,.4)}.post__meta--hero{color:#ffffffbf}.post__back--hero{color:#ffffffb3}.post__back--hero:hover{color:#fff}.post__header{padding-top:var(--spacing-xl);padding-bottom:var(--spacing-lg)}.post__header[hidden]{display:none}.post__back{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--color-muted);font-size:var(--font-size-sm);margin-bottom:var(--spacing-md);text-decoration:none;transition:color var(--transition-fast)}.post__back:hover{color:var(--color-text)}.post__title{font-size:clamp(1.5rem,3vw,2.5rem);line-height:var(--line-height-tight);margin:0 0 var(--spacing-sm) 0}.post__meta{display:flex;flex-wrap:wrap;gap:var(--spacing-md);color:var(--color-muted);font-size:var(--font-size-sm);margin-bottom:var(--spacing-md)}.post__reading-time:before{content:"\b7";margin-right:var(--spacing-md)}.post__tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.post__layout{display:block;padding-bottom:var(--spacing-xxl, 4rem)}@media (min-width: 1024px){.post__layout{display:grid;grid-template-columns:1fr 240px;gap:var(--spacing-xl);align-items:start}}.post__toc{order:2}.post__toc[hidden]{display:none}.post__toc-inner{position:sticky;top:80px}.post__toc-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-sm) var(--spacing-md);background:#ffffff0a;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-family:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--transition-fast);margin-bottom:var(--spacing-sm)}.post__toc-toggle:hover{background:#ffffff14}.post__toc-toggle svg{transition:transform var(--transition-fast)}.post__toc-toggle[aria-expanded=true] svg{transform:rotate(180deg)}@media (min-width: 1024px){.post__toc-toggle{display:none}.post__toc-nav,.post__toc-nav[hidden]{display:block!important}}.post__body{order:1;max-width:72ch;line-height:var(--line-height-relaxed, 1.75)}.post__body h2{margin:var(--spacing-xl) 0 var(--spacing-md) 0;scroll-margin-top:80px}.post__body h3{margin:var(--spacing-lg) 0 var(--spacing-sm) 0;scroll-margin-top:80px}.post__body p{margin:0 0 var(--spacing-md) 0}.post__body img{max-width:100%;height:auto;border-radius:var(--radius-md);margin:var(--spacing-lg) 0;box-shadow:0 4px 20px #0003}.post__body blockquote{position:relative;border-left:3px solid;border-image:linear-gradient(to bottom,var(--color-primary-light, var(--color-primary)),var(--color-secondary, var(--color-primary))) 1;margin:var(--spacing-lg) 0;padding:var(--spacing-md) var(--spacing-lg);background:#ffffff08;border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--color-muted);font-style:italic}.post__body blockquote:before{content:"\201c";position:absolute;top:-8px;left:var(--spacing-sm);font-size:3rem;line-height:1;color:var(--color-primary);opacity:.2;font-style:normal}[data-theme=light] .post__body blockquote{background:#00000005}.post__body ul,.post__body ol{margin:0 0 var(--spacing-md) 0;padding-left:var(--spacing-lg)}.post__body code{background:#ffffff0f;padding:2px var(--spacing-xs);border-radius:var(--radius-sm);font-size:.9em}.post__body pre{position:relative;background:#ffffff0a;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);overflow-x:auto;margin:var(--spacing-lg) 0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.post__body pre code{background:none;padding:0}.post__footer{border-top:1px solid var(--color-border);padding-top:var(--spacing-xl);padding-bottom:var(--spacing-xxl, 4rem)}@keyframes grad-border-rotate{to{--grad-rotation: 360deg}}.post__author-bio{position:relative;display:flex;gap:var(--spacing-lg);align-items:center;margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:var(--color-surface, rgba(255, 255, 255, .04));border:1px solid transparent;border-radius:var(--radius-lg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:0}.post__author-bio:before{content:"";position:absolute;inset:-2px;border-radius:inherit;background:conic-gradient(from var(--grad-rotation),hsl(var(--hue-primary, 220) var(--sat-primary, 50%) 55%),hsl(var(--hue-secondary, 210) 60% 50%),hsl(160 50% 50%),hsl(var(--hue-primary, 220) var(--sat-primary, 50%) 55%));animation:grad-border-rotate 6s linear infinite;z-index:-2;opacity:.7}.post__author-bio:after{content:"";position:absolute;inset:1px;border-radius:inherit;background:var(--color-surface, #111b2e);z-index:-1}@media (prefers-reduced-motion: no-preference){.post__author-bio{box-shadow:0 0 24px hsl(var(--hue-primary, 220) var(--sat-primary, 50%) 50% / .15)}}@media (prefers-reduced-motion: reduce){.post__author-bio:before{animation:none}}[data-theme=light] .post__author-bio:after{background:var(--color-surface, #fff)}[data-theme=light] .post__author-bio:before{opacity:.5}.post__author-bio-avatar{width:64px;height:64px;border-radius:var(--radius-full);background:var(--color-primary, #283593);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold);font-size:var(--font-size-xl);flex-shrink:0;box-shadow:0 0 0 3px #ffffff1a,0 0 16px hsl(var(--hue-primary, 220) var(--sat-primary, 50%) 50% / .25)}.post__author-bio-name{display:block;font-size:var(--font-size-md);margin-bottom:var(--spacing-xs)}.post__author-bio-text{margin:0;color:var(--color-muted);font-size:var(--font-size-sm)}.post__nav{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);border-top:1px solid var(--color-border);padding-top:var(--spacing-lg)}.post__nav-link{display:flex;flex-direction:column;gap:var(--spacing-xs);text-decoration:none;color:var(--color-text);padding:var(--spacing-md);border-radius:var(--radius-md);border:1px solid transparent;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.post__nav-link:hover{background:#ffffff0a;border-color:var(--color-border);transform:translateY(-2px)}.post__nav-link--next{text-align:right}.post__nav-label{font-size:var(--font-size-sm);color:var(--color-muted)}.post__nav-title{font-weight:var(--font-weight-semibold);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media (max-width: 480px){.post__nav{grid-template-columns:1fr}}.post__related{border-top:1px solid var(--color-border);padding-top:var(--spacing-xl);padding-bottom:var(--spacing-xxl, 4rem)}.post__related[hidden]{display:none}.post__related-title{font-size:var(--font-size-xl);margin:0 0 var(--spacing-lg) 0}.post__related .blog-card{flex:0 0 min(85%,340px);scroll-snap-align:start}@media (min-width: 1024px){.post__related .blog-card{flex:0 0 calc(33.333% - var(--spacing-lg) * 2 / 3)}}.post__share{display:flex;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) 0}.post__share-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-full);border:1px solid var(--color-border);background:#ffffff0a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--color-muted);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.post__share-btn:hover{background:#ffffff1a;color:var(--color-text);border-color:#fff3;transform:translateY(-2px)}.post__share-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}[data-theme=light] .post__share-btn{background:#00000008;border-color:#0000001a}[data-theme=light] .post__share-btn:hover{background:#00000012;border-color:#0003}.post-error{text-align:center;padding:var(--spacing-xxl, 4rem) 0}.post-error h1{margin:0 0 var(--spacing-md) 0}.post-error p{color:var(--color-muted);margin:0 0 var(--spacing-lg) 0}
