body{background-color:#f8fafc}body.dark-mode{background-color:#0f172a}.post-container{max-width:1000px;margin:120px auto 80px;padding:0 24px}.post-back-link{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:14px;color:var(--gray-500);text-decoration:none;margin-bottom:24px}.post-back-link:hover{color:var(--primary)}.post-header{margin-bottom:32px}.post-title{font-family:var(--font-display);font-size:38px;font-weight:900;color:var(--gray-900);line-height:1.2;margin-bottom:16px}body.dark-mode .post-title{color:#fff}.post-meta{font-size:14px;color:var(--gray-300);font-weight:700}.post-body{background:var(--white);border-radius:var(--radius-xl);border:2px solid var(--gray-100);box-shadow:var(--shadow-sm);padding:48px}body.dark-mode .post-body{background:var(--gray-100);border-color:var(--gray-200)}.post-body h2{font-size:24px;font-weight:800;color:var(--gray-900);margin:32px 0 16px}.post-body h2:first-child{margin-top:0}body.dark-mode .post-body h2{color:#fff}.post-body p{font-size:17px;line-height:1.8;color:var(--gray-500);margin-bottom:20px}.post-body ul,.post-body ol{margin:0 0 20px 20px;color:var(--gray-500);font-size:17px;line-height:1.8}.post-body li{margin-bottom:8px}.post-example{background:var(--bg-body);border-radius:var(--radius-lg);padding:20px 24px;margin:16px 0;font-size:16px;color:var(--gray-700)}body.dark-mode .post-example{background:var(--gray-200)}.post-faq-item{background:var(--bg-body);border-radius:var(--radius-md);margin-top:12px;border:2px solid transparent;overflow:hidden;transition:all .3s ease}body.dark-mode .post-faq-item{background:var(--gray-200)}.post-faq-item.active{border-color:var(--primary)}.post-faq-header{padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;font-size:16px;font-weight:800;color:var(--gray-900)}body.dark-mode .post-faq-header{color:#fff}.post-faq-icon{flex-shrink:0;transition:transform .3s ease}.post-faq-item.active .post-faq-icon{transform:rotate(180deg)}.post-faq-content{padding:0 22px;max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease}.post-faq-content p{margin:0;font-size:15px}.post-faq-item.active .post-faq-content{padding:0 22px 20px;max-height:300px}.post-cta{margin-top:40px;padding:32px;background:linear-gradient(135deg,#58cc0214,#58cc0205);border-radius:var(--radius-lg);text-align:center}.post-cta p{margin-bottom:16px;color:var(--gray-700)}body.dark-mode .post-cta p{color:var(--gray-500)}@media(max-width:600px){.post-title{font-size:28px}.post-body{padding:28px}}.post-toc{margin:0 0 32px;padding:20px 24px;background:var(--bg-body);border:2px solid var(--gray-100);border-radius:var(--radius-md)}body.dark-mode .post-toc{background:var(--gray-200);border-color:var(--gray-300)}.post-toc-title{font-size:15px;font-weight:800;color:var(--gray-900);margin:0 0 12px;text-transform:uppercase;letter-spacing:.04em}body.dark-mode .post-toc-title{color:#fff}.post-toc ol{margin:0;padding-left:20px;color:var(--gray-600);font-size:15px;line-height:1.7}body.dark-mode .post-toc ol{color:var(--gray-300)}.post-toc li{margin-bottom:4px}.post-toc a{color:inherit;text-decoration:none;border-bottom:1px solid transparent}.post-toc a:hover,.post-toc a:focus-visible{color:var(--primary);border-bottom-color:var(--primary)}.post-body h2[id]{scroll-margin-top:90px}
