:root{--bg:#0a0e1a;--bg-2:#0f1424;--surface:#ffffff08;--surface-2:#ffffff0d;--glass:#ffffff0a;--glass-border:#ffffff12;--glass-strong:#ffffff0f;--text:#e2e8f0;--text-muted:#64748b;--accent:#22c55e;--accent-2:#3b82f6;--accent-3:#a855f7;--blur:20px;--radius:12px;--radius-sm:8px;--radius-xs:6px;--font-h:"Space Grotesk", sans-serif;--font-b:"Inter", sans-serif;--font-code:"JetBrains Mono", monospace;--nav-bg:#0a0e1af2;--nav-bg-transparent:#0a0e1a99;--shadow-sm:0 2px 8px #0003;--shadow-lg:0 8px 32px #0006;--code-bg:#0000004d;--code-border:#ffffff0f;--code-comment:#6a737d;--code-keyword:#c678dd;--code-string:#98c379;--code-fn:#61afef;--code-method:#e5c07b;--code-property:#e06c75;--code-text:#abb2bf}[data-theme=light]{--bg:#f8fafc;--bg-2:#f1f5f9;--surface:#00000005;--surface-2:#0000000a;--glass:#ffffffb3;--glass-border:#00000014;--glass-strong:#fffc;--text:#0f172a;--text-muted:#64748b;--accent:#16a34a;--accent-2:#2563eb;--accent-3:#9333ea;--blur:30px;--nav-bg:#f8fafcf2;--nav-bg-transparent:#f8fafc99;--shadow-sm:0 2px 8px #0000000f;--shadow-lg:0 8px 32px #00000014;--code-bg:#fffc;--code-border:#00000014}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth;font-size:16px}body{background:var(--bg);color:var(--text);font-family:var(--font-b);line-height:1.6;overflow-x:hidden}a{color:inherit;cursor:pointer;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input{cursor:text}img{max-width:100%;display:block}h1,h2,h3,h4,h5,h6{font-family:var(--font-h);letter-spacing:-.03em;font-weight:600}::selection{background:#22c55e40}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#22c55e40;border-radius:3px}.container{max-width:1200px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}.section{padding:clamp(40px,6vw,80px) 0}.text-gradient{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 50%, var(--accent-3) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.liquid-glass{background:var(--glass);-webkit-backdrop-filter:blur(var(--blur)) saturate(1.8);border:1px solid var(--glass-border);border-radius:var(--radius);position:relative;overflow:hidden}.liquid-glass:before{content:"";border-radius:inherit;pointer-events:none;z-index:0;background:linear-gradient(135deg,#ffffff14 0%,#0000 50%,#ffffff05 100%);position:absolute;inset:0}.liquid-glass:after{content:"";border-radius:inherit;pointer-events:none;z-index:1;background:linear-gradient(90deg,#0000,#ffffff26,#0000);height:1px;position:absolute;top:-1px;left:-1px;right:-1px}.liquid-glass-strong{background:var(--glass-strong);-webkit-backdrop-filter:blur(30px)saturate(2);border:1px solid #ffffff1f}.texture-noise{position:relative}.texture-noise:after{content:"";pointer-events:none;z-index:0;border-radius:inherit;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");position:absolute;inset:0}@media (width<=768px){.container{padding:0 16px}.section{padding:40px 0}}@media (width<=480px){.container{padding:0 14px}.section{padding:32px 0}}a,button{z-index:1;position:relative}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{cursor:pointer;background:0 0;border:none;margin:0;padding:0}.tiptap{outline:none}.tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--text-muted);pointer-events:none;height:0;font-style:italic}.tiptap h1,.tiptap h2,.tiptap h3,.tiptap h4{font-family:var(--font-h)}.tiptap img{border-radius:12px;max-width:100%;margin:1.5em 0}.tiptap blockquote{border-left:3px solid var(--accent);color:var(--text-muted);background:#22c55e0d;border-radius:0 8px 8px 0;margin:1.5em 0;padding:16px 24px;font-style:italic}.tiptap pre{background:#0000004d;border-radius:10px;margin:1.5em 0;padding:20px;font-size:14px;line-height:1.6;overflow-x:auto}.tiptap pre code{background:0 0;padding:0}.tiptap ul,.tiptap ol{margin:1em 0;padding-left:1.5em}.tiptap li{margin-bottom:.4em}.tiptap hr{border:none;border-top:1px solid var(--glass-border);margin:2em 0}.tiptap a{color:var(--accent);text-decoration:underline}.tiptap mark{background:#22c55e4d;border-radius:2px;padding:1px 4px}.tiptap table{border-collapse:collapse;width:100%;margin:1.5em 0}.tiptap td,.tiptap th{border:1px solid var(--glass-border);padding:10px 14px}.tiptap th{background:#ffffff08;font-weight:600}.blog-content{word-wrap:break-word;overflow-wrap:break-word}.blog-content h1{letter-spacing:-.02em;font-size:clamp(28px,4vw,40px);font-weight:800;line-height:1.2;font-family:var(--font-h);margin:2em 0 .8em}.blog-content h2{letter-spacing:-.02em;font-size:clamp(22px,3vw,30px);font-weight:700;line-height:1.2;font-family:var(--font-h);margin:2em 0 .8em}.blog-content h3{font-size:clamp(18px,2.5vw,24px);font-weight:600;line-height:1.3;font-family:var(--font-h);margin:2em 0 .8em}.blog-content h4{margin:2em 0 .8em;font-size:18px;font-weight:600}.blog-content p{margin:0 0 1.2em;font-size:17px;line-height:1.85}.blog-content img{border-radius:12px;max-width:100%;height:auto;margin:1.5em auto;display:block}.blog-content figure{text-align:center;margin:1.5em 0}.blog-content figcaption{color:var(--text-muted);margin-top:8px;font-size:12px;font-style:italic}.blog-content blockquote{border-left:3px solid var(--accent);color:var(--text-muted);background:#22c55e0d;border-radius:0 8px 8px 0;margin:1.5em 0;padding:16px 24px;font-style:italic}.blog-content pre{background:#0000004d;border-radius:10px;margin:1.5em 0;padding:20px;font-size:14px;line-height:1.6;overflow-x:auto}.blog-content code{background:#ffffff14;border-radius:4px;padding:2px 6px;font-size:.9em}.blog-content pre code{background:0 0;padding:0}.blog-content ul,.blog-content ol{margin:1em 0 1.2em;padding-left:1.5em}.blog-content li{margin-bottom:.4em;font-size:17px;line-height:1.85}.blog-content hr{border:none;border-top:1px solid var(--glass-border);margin:2em 0}.blog-content a{color:var(--accent);text-decoration:underline}.blog-content mark{background:#22c55e4d;border-radius:2px;padding:1px 4px}.blog-content strong{font-weight:700}.blog-content em{font-style:italic}.blog-content table{border-collapse:collapse;border-radius:8px;width:100%;margin:1.5em 0;overflow:hidden}.blog-content td,.blog-content th{border:1px solid var(--glass-border);padding:10px 14px}.blog-content th{background:#ffffff08;font-weight:600}.blog-content iframe{border-radius:12px;width:100%;margin:1.5em 0}.blog-content video{border-radius:12px;max-width:100%;margin:1.5em 0;display:block}.blog-content [style*=text-align\:center]{text-align:center!important}.blog-content [style*=text-align\:left]{text-align:left!important}.blog-content [style*=text-align\:right]{text-align:right!important}.blog-content [style*=display\:grid]{width:100%;margin:1.5em 0}.blog-content [style*=display\:flex]{margin:1em 0}@media (width<=640px){.blog-content [style*=display\:grid]{grid-template-columns:1fr!important}.blog-content img,.blog-content iframe{margin:1em 0}}.ProseMirror-dropcursor{color:var(--accent)!important}.ProseMirror-gapcursor{border-top:1px solid var(--accent)!important}.ProseMirror-selectednode{outline-offset:2px;border-radius:4px;outline:2px solid var(--accent)!important}.tiptap>.ProseMirror{min-height:500px}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.border-text-svg{width:100%;height:100%;position:absolute;inset:0}.border-marquee-text{filter:drop-shadow(0 0 4px #22c55e66)}@keyframes skeleton-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14 50%,#ffffff0a 75%) 0 0/800px 100%;border-radius:6px;animation:1.8s ease-in-out infinite skeleton-shimmer}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.25s ease-out forwards fadeInUp}
