.article-prose{color:var(--color-text-dark);font-size:17px;line-height:1.75}.article-prose>*+*{margin-top:1.4em}.article-prose h2{font-family:var(--font-secondary);font-size:1.9rem;font-weight:500;line-height:1.2;letter-spacing:-.01em;margin-top:3em;margin-bottom:.5em;color:var(--color-text-dark);scroll-margin-top:5rem}.article-prose h2:before{content:"";display:block;width:44px;height:3px;background:var(--color-primary);margin-bottom:18px}.article-prose h3{font-family:var(--font-secondary);font-size:1.35rem;font-weight:500;line-height:1.3;margin-top:2em;margin-bottom:.4em;color:var(--color-text-dark)}.article-prose p{font-size:17px;line-height:1.75}.article-prose p strong{font-weight:600}.article-prose a{color:var(--color-primary);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.article-prose a:hover{text-decoration-thickness:2px}.article-prose ul,.article-prose ol{padding-left:1.4em}.article-prose li+li{margin-top:.45em}.article-prose li::marker{color:var(--color-primary)}.article-prose blockquote{font-family:var(--font-secondary);font-style:italic;font-size:1.4rem;line-height:1.5;color:var(--color-text-dark);opacity:.85;padding:.6em 0;text-align:center;max-width:38em;margin:2em auto}.article-prose blockquote:before{content:"";display:block;width:32px;height:1px;background:var(--color-primary);margin:0 auto 1em}.article-prose blockquote:after{content:"";display:block;width:32px;height:1px;background:var(--color-primary);margin:1em auto 0}.article-prose hr{border:0;border-top:1px solid rgba(0,0,0,.1);margin:2.5em 0}.article-prose .callout{background:#f3f0e8;padding:1.4em 1.6em;margin:2em 0;border-radius:12px}.article-prose .callout .callout-label{font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary);margin-bottom:10px;display:block}.article-prose .callout p{font-size:16px;margin:0;line-height:1.65}.article-prose .callout.warning{background:#fdf3f0}.article-prose .callout.warning .callout-label{color:#c44d3a}.article-prose .data-block{margin:2.5em 0;border:1px solid rgba(0,0,0,.08);border-radius:12px;overflow:hidden;background:#fff}.article-prose .data-block-head{background:var(--color-text-dark);color:#fff;padding:12px 20px;font-family:var(--font-mono, monospace);font-size:11px;text-transform:uppercase;letter-spacing:.08em;display:flex;justify-content:space-between}.article-prose .data-block-head .accent{color:var(--color-primary)}.article-prose .data-table{width:100%;border-collapse:collapse}.article-prose .data-table th,.article-prose .data-table td{text-align:left;padding:12px 20px;font-size:14px;border-bottom:1px solid rgba(0,0,0,.06)}.article-prose .data-table th{font-family:var(--font-mono, monospace);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#0000008c;background:#f8f6f1}.article-prose .data-table tr:last-child td{border-bottom:none}.article-prose .data-table td.num{font-family:var(--font-mono, monospace);font-weight:500}.article-prose .cards-2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:2.5em 0}@media(max-width:720px){.article-prose .cards-2{grid-template-columns:1fr}}.article-prose .card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:24px}.article-prose .card-tag{font-family:var(--font-mono, monospace);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);margin-bottom:10px;display:block}.article-prose .card h4{font-family:var(--font-secondary);font-size:1.3rem;font-weight:500;margin:0 0 .6em;line-height:1.25}.article-prose .card p{font-size:14.5px;line-height:1.6;opacity:.85;margin:0}.article-prose .card ul{margin-top:10px;padding-left:1.1em;font-size:13.5px;opacity:.85}.article-prose .diagram{margin:3em 0;padding:28px 22px;background:var(--color-text-dark);border-radius:12px;color:#fff;overflow-x:auto}.article-prose .diagram-title{font-family:var(--font-mono, monospace);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--color-primary);margin-bottom:20px}.article-prose .flow{display:flex;align-items:center;gap:10px;justify-content:center;flex-wrap:wrap}.article-prose .flow-step{background:#243843;border:1px solid #324c5b;padding:11px 14px;border-radius:4px;font-family:var(--font-mono, monospace);font-size:12px;min-width:100px;text-align:center}.article-prose .flow-step.highlight{border-color:var(--color-primary);color:var(--color-primary)}.article-prose .flow-arrow{font-family:var(--font-mono, monospace);opacity:.5}.article-prose .article-figure{margin:3em 0}.article-prose .article-figure img{width:100%;height:auto;border-radius:12px;box-shadow:0 25px 50px -20px #1a354433;display:block}.article-prose .article-figure figcaption{margin-top:1em;font-size:14px;color:#0000008c;font-style:italic;line-height:1.5;text-align:center;padding:0 1em}.article-prose .faq-list{display:flex;flex-direction:column;gap:12px;margin:1.5em 0}.article-prose .faq-item{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:12px;transition:border-color .2s,box-shadow .2s;overflow:hidden}.article-prose .faq-item[open]{border-color:var(--color-primary);box-shadow:0 12px 30px -15px #2a999940}.article-prose .faq-item summary{list-style:none;cursor:pointer;padding:20px 24px;font-family:var(--font-secondary);font-size:1.1rem;font-weight:500;line-height:1.4;color:var(--color-text-dark);display:flex;justify-content:space-between;align-items:center;gap:16px;transition:color .2s}.article-prose .faq-item summary::-webkit-details-marker{display:none}.article-prose .faq-item summary:hover{color:var(--color-primary)}.article-prose .faq-item summary:after{content:"+";font-family:var(--font-secondary);font-weight:300;font-size:1.8rem;line-height:.7;color:var(--color-primary);transition:transform .3s;flex-shrink:0}.article-prose .faq-item[open] summary:after{transform:rotate(45deg)}.article-prose .faq-answer{padding:0 24px 22px}.article-prose .faq-answer p{font-size:15.5px;line-height:1.7;color:#000000bf;margin:0}
