.blog-post{background:var(--color-bg);min-height:100vh}html:not(.dark) .blog-post{background:#fff}html.dark .blog-post{background:#0d0f14}.post-hero{background:linear-gradient(135deg,#5c7cfa14,#22d3a80f);border-bottom:1px solid var(--color-border);padding:4rem 2rem}html:not(.dark) .post-hero{background:linear-gradient(135deg,#5c7cfa0a,#22d3a805);border-bottom:1px solid #dee2e6}html.dark .post-hero{background:linear-gradient(135deg,#5c7cfa14,#22d3a80f);border-bottom:1px solid hsla(0,0%,100%,.1)}.post-hero__content{margin:0 auto 3rem;max-width:900px}.post-meta{margin-bottom:2rem}.post-meta__link{color:var(--color-accent);font-size:.95rem;font-weight:500;text-decoration:none;transition:opacity .2s ease}.post-meta__link:hover{opacity:.8}.post-title{color:var(--color-text);font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1.2;margin:0 0 1rem}html:not(.dark) .post-title{color:#1a1b1e}.post-description{color:var(--color-text-secondary);font-size:1.25rem;line-height:1.6;margin:0 0 2rem}html:not(.dark) .post-description{color:#495057}.post-info{border-top:1px solid var(--color-border);display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));padding-top:2rem}html:not(.dark) .post-info{border-top:1px solid #dee2e6}.post-info__item{display:flex;flex-direction:column;gap:.5rem}.post-info__label{color:var(--color-text-muted);font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}html:not(.dark) .post-info__label{color:#868e96}.post-info__value{color:var(--color-text);font-size:1.1rem;font-weight:600}html:not(.dark) .post-info__value{color:#1a1b1e}.post-categories{display:flex;flex-wrap:wrap;gap:.75rem}.post-category{background:#5c7cfa1f;border-radius:8px;color:var(--color-accent);font-size:.95rem;font-weight:600;padding:.5rem 1rem}html:not(.dark) .post-category{background:#5c7cfa14}.post-tags{display:flex;flex-wrap:wrap;gap:.75rem}.post-tag{background:var(--color-card-hover-bg);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-secondary);font-size:.95rem;padding:.5rem 1rem;text-decoration:none;transition:background .2s ease,border-color .2s ease}.post-tag:hover{border-color:var(--color-accent);color:var(--color-accent)}html:not(.dark) .post-tag{background:#f8f9fa;border-color:#dee2e6;color:#495057}.post-hero__image{border-radius:16px;box-shadow:0 8px 32px var(--color-shadow);display:block;height:auto;margin:0 auto;max-height:500px;max-width:900px;-o-object-fit:contain;object-fit:contain;width:100%}html:not(.dark) .post-hero__image{box-shadow:0 8px 32px #0000001a}.post-content{margin:0 auto;max-width:900px;padding:4rem 2rem}.prose-content{color:var(--color-text)}.prose-content h2{font-size:2rem;line-height:1.3;margin-bottom:1.5rem;margin-top:3rem}.prose-content h2,.prose-content h3{color:var(--color-text);font-weight:700}.prose-content h3{font-size:1.5rem;margin-bottom:1rem;margin-top:2rem}.prose-content h4{color:var(--color-text);font-size:1.25rem;font-weight:600;margin-bottom:.75rem;margin-top:1.5rem}.prose-content p{color:var(--color-text);font-size:1.05rem;line-height:1.8;margin-bottom:1.5rem}.prose-content a{border-bottom:1px solid var(--color-accent);color:var(--color-accent);text-decoration:none;transition:opacity .2s ease}.prose-content a:hover{opacity:.8}.prose-content ol,.prose-content ul{line-height:1.8;margin-bottom:1.5rem;margin-left:2rem}.prose-content ol li,.prose-content ul li{color:var(--color-text);margin-bottom:.5rem}.prose-content code{background:var(--color-card-hover-bg);border-radius:4px;color:var(--color-accent);font-family:Monaco,Courier New,monospace;font-size:.9em;padding:.25rem .5rem}.prose-content pre{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:12px;margin-bottom:1.5rem;overflow-x:auto;padding:1.5rem}.prose-content pre code{background:transparent;border-radius:0;color:inherit;padding:0}.prose-content blockquote{border-left:4px solid var(--color-accent);color:var(--color-text-secondary);font-style:italic;margin-bottom:1.5rem;margin-left:0;padding-left:1.5rem}.prose-content img{border-radius:12px;height:auto;margin:2rem 0;max-width:100%}.prose-content table{border-collapse:collapse;margin-bottom:1.5rem;width:100%}.prose-content table th{background:var(--color-card-bg);font-weight:600;text-align:left}.prose-content table td,.prose-content table th{border:1px solid var(--color-border);padding:1rem}html:not(.dark) .prose-content h2,html:not(.dark) .prose-content h3,html:not(.dark) .prose-content h4{color:#1a1b1e}html:not(.dark) .prose-content li,html:not(.dark) .prose-content p{color:#495057}html:not(.dark) .prose-content code{background:#5c7cfa14;color:#5c7cfa}html:not(.dark) .prose-content pre{background:#f8f9fa;border-color:#dee2e6}html:not(.dark) .prose-content blockquote{color:#6c757d}html:not(.dark) .prose-content table th{background:#f8f9fa;border-color:#dee2e6}html:not(.dark) .prose-content table td{border-color:#dee2e6}.post-related{background:var(--color-bg);padding:0 2rem 4rem}.post-related__content{margin:0 auto;max-width:1200px}.post-related__header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.post-related__title{color:var(--color-text);font-size:1.75rem;font-weight:700;margin:0}.post-related__subtitle{color:var(--color-text-secondary);font-size:.95rem;margin:0}.post-related__grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.related-card{background:var(--color-card-bg);border:1px solid var(--color-card-border);border-radius:14px;color:inherit;display:flex;flex-direction:column;gap:.75rem;padding:1.25rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.related-card:hover{border-color:var(--color-accent);box-shadow:0 8px 24px var(--color-shadow);transform:translateY(-4px)}.related-card__meta{align-items:center;display:flex;font-size:.9rem;gap:.75rem}.related-card__date,.related-card__meta{color:var(--color-text-muted)}.related-card__category{background:#5c7cfa1f;border-radius:999px;color:var(--color-accent);font-weight:600;padding:.25rem .75rem}.related-card__title{color:var(--color-text);font-size:1.25rem;font-weight:700;line-height:1.3;margin:0}.related-card__description{color:var(--color-text-secondary);line-height:1.6;margin:0}.related-card__tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.related-card__tag{background:var(--color-card-hover-bg);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-secondary);font-size:.85rem;padding:.25rem .6rem}html:not(.dark) .post-related{background:#fff}html:not(.dark) .related-card{background:#fff;border:1px solid #dee2e6}html:not(.dark) .related-card__category{background:#5c7cfa14}html:not(.dark) .post-related__subtitle,html:not(.dark) .related-card__description,html:not(.dark) .related-card__tag{color:#495057}.back-to-top{background:var(--color-accent);border:none;border-radius:999px;bottom:1.5rem;box-shadow:0 10px 30px #5c7cfa59;color:#fff;cursor:pointer;display:grid;font-size:1.5rem;font-weight:700;height:48px;place-items:center;position:fixed;right:1.5rem;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;width:48px;z-index:50}.back-to-top:hover{box-shadow:0 14px 34px #5c7cfa73;transform:translateY(-2px)}html:not(.dark) .back-to-top{box-shadow:0 10px 30px #5c7cfa40}.post-footer{background:var(--color-card-bg);border-top:1px solid var(--color-border);padding:4rem 2rem}html:not(.dark) .post-footer{background:#f8f9fa;border-top:1px solid #dee2e6}html.dark .post-footer{background:#ffffff05;border-top:1px solid hsla(0,0%,100%,.1)}.post-footer__content{margin:0 auto;max-width:900px}.post-footer__link{color:var(--color-accent);font-weight:600;text-decoration:none;transition:opacity .2s ease}.post-footer__link:hover{opacity:.8}@media(max-width:768px){.post-hero{padding:3rem 1.5rem}.post-hero__content{margin-bottom:1.5rem}.post-hero__image{max-height:350px}.back-to-top{bottom:1rem;font-size:1.35rem;height:44px;right:1rem;width:44px}.post-title{font-size:clamp(1.75rem,4vw,2.5rem)}.post-description{font-size:1.1rem}.post-info{gap:1.5rem;grid-template-columns:1fr}.post-content{padding:3rem 1.5rem}.prose-content h2{font-size:1.5rem;margin-top:2rem}.prose-content h3{font-size:1.25rem}.prose-content p{font-size:1rem}.post-footer{padding:2rem 1.5rem}}
