body{background-color:#0c0e14;color:#333;font-family:Georgia, serif;padding:0;text-align:center}a{color:rgba(0,0,0,0.7)}a:focus,a:hover{color:rgba(0,0,0,0.6)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:#0c0e14}.scene{position:relative;width:100%;height:100vh}.scene svg{position:absolute;inset:0;width:100%;height:100%}.scene .overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:10vh;pointer-events:none}.scene .overlay h1{font-weight:400;font-size:clamp(1.4rem, 3vw, 2.2rem);color:#e2d9f3;letter-spacing:0.18em;text-transform:uppercase;opacity:0.85}.scene .overlay p{margin-top:0.6rem;font-size:clamp(0.8rem, 1.5vw, 1rem);color:#a78bfa;letter-spacing:0.25em;text-transform:uppercase;opacity:0.6}.article{max-width:680px;margin:0 auto;padding:3rem 1.5rem 6rem}.article-back{display:inline-block;font-size:0.8125rem;color:rgba(255,255,255,0.35);text-decoration:none;margin-bottom:2rem;transition:color 0.15s}.article-back:hover{color:rgba(255,255,255,0.7)}.article-header{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,0.07)}.article-title{font-size:clamp(1.6rem, 4vw, 2.2rem);font-weight:600;color:#fff;line-height:1.25;margin:0 0 1rem;letter-spacing:-0.02em}.article-meta{display:flex;align-items:center;gap:0.5rem;font-size:0.8125rem;color:rgba(255,255,255,0.35)}.article-meta-sep{opacity:0.4}.article-date,.article-reading-time{color:rgba(255,255,255,0.35)}.article-body{font-size:1.0625rem;line-height:1.8;color:rgba(255,255,255,0.75)}.article-body h2{font-size:1.3rem;font-weight:600;color:#fff;margin:2.5rem 0 0.75rem;letter-spacing:-0.01em}.article-body h3{font-size:1.1rem;font-weight:600;color:rgba(255,255,255,0.9);margin:2rem 0 0.5rem}.article-body p{margin:0 0 1.4rem}.article-body a{color:#fff;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(255,255,255,0.3);transition:text-decoration-color 0.15s}.article-body a:hover{text-decoration-color:rgba(255,255,255,0.9)}.article-body ul,.article-body ol{padding-left:1.5rem;margin:0 0 1.4rem}.article-body ul li,.article-body ol li{margin-bottom:0.4rem}.article-body blockquote{margin:2rem 0;padding:0.1rem 0 0.1rem 1.25rem;border-left:2px solid rgba(255,255,255,0.2)}.article-body blockquote p{color:rgba(255,255,255,0.55);font-style:italic}.article-body .highlight{margin:1.5rem 0;border-radius:6px;overflow:hidden;font-size:0.875rem}.article-body .highlight pre{margin:0;padding:1.25rem 1.5rem;overflow-x:auto;line-height:1.6}.article-body code{font-family:"SF Mono", "Fira Code", "Fira Mono", monospace;font-size:0.85em;background:rgba(255,255,255,0.08);padding:0.15em 0.4em;border-radius:3px;color:rgba(255,255,255,0.85)}.article-body pre code{background:none;padding:0;font-size:inherit;color:inherit;border-radius:0}.article-body hr{border:none;border-top:1px solid rgba(255,255,255,0.08);margin:2.5rem 0}.article-body table{width:100%;border-collapse:collapse;font-size:0.9rem;margin:1.5rem 0}.article-body table th{text-align:left;color:rgba(255,255,255,0.5);font-weight:500;font-size:0.75rem;text-transform:uppercase;letter-spacing:0.06em;padding:0.5rem 0.75rem;border-bottom:1px solid rgba(255,255,255,0.1)}.article-body table td{padding:0.6rem 0.75rem;color:rgba(255,255,255,0.65);border-bottom:1px solid rgba(255,255,255,0.05)}.article-footer{margin-top:3.5rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,0.07)}.article-tags{display:flex;align-items:center;flex-wrap:wrap;gap:0.5rem;margin-bottom:2rem}.article-tags-label{font-size:0.75rem;text-transform:uppercase;letter-spacing:0.07em;color:rgba(255,255,255,0.25);margin-right:0.25rem}.article-tag{font-size:0.8rem;padding:0.2em 0.65em;border:1px solid rgba(255,255,255,0.12);border-radius:3px;color:rgba(255,255,255,0.5);text-decoration:none;transition:border-color 0.15s, color 0.15s}.article-tag:hover{border-color:rgba(255,255,255,0.3);color:rgba(255,255,255,0.85)}.article-author{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:8px;padding:1.25rem;margin-bottom:2rem}.article-author-name{font-weight:600;color:#fff;font-size:0.95rem;margin-bottom:0.15rem}.article-author-role{font-size:0.75rem;text-transform:uppercase;letter-spacing:0.06em;color:rgba(255,255,255,0.3);margin-bottom:0.6rem}.article-author-bio{font-size:0.875rem;color:rgba(255,255,255,0.5);line-height:1.6}.article-nav{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}@media (max-width: 480px){.article-nav{grid-template-columns:1fr}}.article-nav-link{display:flex;flex-direction:column;gap:0.25rem;padding:0.85rem 1rem;border:1px solid rgba(255,255,255,0.08);border-radius:6px;text-decoration:none;transition:border-color 0.15s, background 0.15s}.article-nav-link:hover{border-color:rgba(255,255,255,0.2);background:rgba(255,255,255,0.03)}.article-nav-link.article-nav-next{text-align:right}.article-nav-direction{font-size:0.75rem;color:rgba(255,255,255,0.25);text-transform:uppercase;letter-spacing:0.06em}.article-nav-title{font-size:0.875rem;color:rgba(255,255,255,0.65);line-height:1.4}.article-footer-bottom{display:flex;justify-content:space-between;align-items:center;font-size:0.8rem;color:rgba(255,255,255,0.25)}.article-footer-bottom a{color:rgba(255,255,255,0.25);text-decoration:none;transition:color 0.15s}.article-footer-bottom a:hover{color:rgba(255,255,255,0.6)}.article-footer-feeds{display:flex;gap:0.4rem;align-items:center}.about{max-width:680px;margin:0 auto;padding:4rem 1.5rem 6rem;color:rgba(255,255,255,0.8);font-size:1rem;line-height:1.7}.about-header{margin-bottom:3rem}.about-header h1{font-size:2rem;font-weight:600;color:#fff;margin:0 0 0.5rem}.about-subtitle{color:rgba(255,255,255,0.45);font-size:0.95rem;margin:0;max-width:520px}.about-section{margin-bottom:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid rgba(255,255,255,0.07)}.about-section:last-of-type{border-bottom:none}.about-section h2{font-size:1.1rem;font-weight:600;color:#fff;margin:0 0 0.75rem}.about-section p,.about-section li{color:rgba(255,255,255,0.65)}.about-section a{color:rgba(255,255,255,0.85);text-decoration:underline;text-underline-offset:2px}.about-section a:hover{color:#fff}.team-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));gap:1.5rem;margin-top:1.25rem}.team-member{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:8px;padding:1.25rem}.team-name{font-weight:600;color:#fff;font-size:0.95rem;margin-bottom:0.15rem}.team-role{font-size:0.8rem;color:rgba(255,255,255,0.35);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:0.65rem}.team-bio{font-size:0.875rem;color:rgba(255,255,255,0.55);line-height:1.6}.feed-links{display:flex;gap:0.75rem;margin:1rem 0;flex-wrap:wrap}.feed-link{display:inline-flex;align-items:center;gap:0.4rem;padding:0.4rem 0.85rem;border:1px solid rgba(255,255,255,0.15);border-radius:4px;font-size:0.8125rem;color:rgba(255,255,255,0.65) !important;text-decoration:none !important;transition:border-color 0.15s, color 0.15s}.feed-link:hover{border-color:rgba(255,255,255,0.4);color:#fff !important}.feed-icon{font-size:0.7rem;text-transform:uppercase;letter-spacing:0.08em;background:rgba(255,255,255,0.1);padding:0.1em 0.35em;border-radius:2px;color:rgba(255,255,255,0.5)}.feed-note{font-size:0.875rem;color:rgba(255,255,255,0.4) !important;margin-top:0.5rem}.about-footer{margin-top:3rem}.about-footer a{color:rgba(255,255,255,0.4);text-decoration:none;font-size:0.875rem}.about-footer a:hover{color:rgba(255,255,255,0.8)}.highlight table td{padding:5px}.highlight table pre{margin:0}.highlight,.highlight .w{color:#f8f8f2;background-color:#272822}.highlight .err{color:#272822;background-color:#f92672}.highlight .c,.highlight .ch,.highlight .cd,.highlight .cm,.highlight .cpf,.highlight .c1,.highlight .cs{color:#75715e}.highlight .cp{color:#f4bf75}.highlight .nt{color:#f4bf75}.highlight .o,.highlight .ow{color:#f8f8f2}.highlight .p,.highlight .pi{color:#f8f8f2}.highlight .gi{color:#a6e22e}.highlight .gd{color:#f92672}.highlight .gh{color:#66d9ef;background-color:#272822;font-weight:bold}.highlight .k,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kv{color:#ae81ff}.highlight .kc{color:#fd971f}.highlight .kt{color:#fd971f}.highlight .kd{color:#fd971f}.highlight .s,.highlight .sb,.highlight .sc,.highlight .dl,.highlight .sd,.highlight .s2,.highlight .sh,.highlight .sx,.highlight .s1{color:#a6e22e}.highlight .sa{color:#ae81ff}.highlight .sr{color:#a1efe4}.highlight .si{color:#cc6633}.highlight .se{color:#cc6633}.highlight .nn{color:#f4bf75}.highlight .nc{color:#f4bf75}.highlight .no{color:#f4bf75}.highlight .na{color:#66d9ef}.highlight .m,.highlight .mb,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .il,.highlight .mo,.highlight .mx{color:#a6e22e}.highlight .ss{color:#a6e22e}