.soudan-article{max-width:680px;padding:36px 20px 64px}.soudan-article .eyebrow{font-size:13px;font-weight:500;color:var(--green-deep);letter-spacing:.04em;margin:0 0 8px}.soudan-article h1{font-size:27px;font-weight:500;color:var(--ink);line-height:1.5;letter-spacing:.02em;margin:0 0 12px}.soudan-article .lead{font-size:16.5px;color:var(--ink-soft);line-height:1.9;margin:0 0 16px}.soudan-article .meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 26px;font-size:13px;color:var(--ink-soft)}.soudan-article .meta .chip{background:var(--hero-green);color:var(--green);border-radius:999px;padding:4px 12px}.reader-note{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-sm);padding:14px 16px;margin:0 0 28px}.reader-note p{margin:0;font-size:15px;line-height:1.85;color:var(--ink-soft)}.reader-note strong{color:var(--ink);font-weight:500}.visual-story{margin:0 0 26px}.detail-bridge{color:var(--ink-soft);font-size:15.5px;line-height:1.85;margin:8px 0 14px;text-align:center}.tool-jump{margin:6px 0 4px;text-align:center}.tool-jump a{background:var(--card);border:1.5px solid var(--line);border-radius:999px;color:var(--green-deep);display:inline-block;font-size:13.5px;font-weight:700;line-height:1.5;padding:7px 14px;text-decoration:none}.tool-jump a:hover{border-color:var(--green);box-shadow:var(--shadow)}.tool-jump a:focus-visible{outline:3px solid var(--green);outline-offset:3px}#article-tools{scroll-margin-top:80px}.article-detail-text{border-top:1px solid var(--line);margin-top:26px;padding-top:18px}.article-detail-text summary{align-items:center;background:var(--card);border:1.5px solid var(--green-mid);border-radius:999px;box-shadow:var(--shadow-sm);color:var(--green);cursor:pointer;column-gap:10px;display:grid;grid-template-columns:16px 1fr;font-size:16px;font-weight:700;line-height:1.55;list-style:none;margin:0 auto 22px;max-width:430px;min-height:58px;padding:9px 22px 10px;text-align:center;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease,transform .15s ease}.article-detail-text summary::-webkit-details-marker{display:none}.article-detail-text summary:before{align-self:center;content:">";font-size:15px;grid-row:1 / span 2;line-height:1;transition:transform .15s ease}.article-detail-text[open] summary:before{transform:rotate(90deg)}.article-detail-text summary:hover{background:var(--hero-green);border-color:var(--green);box-shadow:var(--shadow);color:var(--green-deep);transform:translateY(-1px)}.detail-summary-main{display:block;grid-column:2}.detail-summary-sub{color:var(--ink-soft);display:block;font-size:12.5px;font-weight:500;grid-column:2;line-height:1.45}.prose{font-size:16.5px;line-height:1.95;color:var(--ink-soft)}.prose h2{font-size:20px;font-weight:500;color:var(--ink);letter-spacing:.02em;line-height:1.5;margin:40px 0 12px;padding-top:18px;border-top:1px solid var(--line)}.prose h3{font-size:17px;font-weight:500;color:var(--ink);margin:28px 0 8px}.prose p{margin:0 0 16px}.prose strong{font-weight:500;color:var(--ink)}.prose a{color:var(--green)}.prose ul,.prose ol{margin:0 0 16px;padding-left:1.3em}.prose li{margin:0 0 8px}.prose blockquote{margin:18px 0;padding:14px 16px;background:var(--hero-green);border-radius:12px;color:var(--ink)}.prose blockquote p{margin:0}.prose pre{background:var(--cream-2);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin:0 0 18px;overflow-x:auto;line-height:1.85;font-size:14.5px;white-space:pre-wrap;word-break:break-word}.prose pre code{background:none;padding:0;border-radius:0;font-size:inherit;color:inherit;font-family:inherit}.prose :not(pre)>code{background:var(--cream-2);color:var(--ink);padding:2px 6px;border-radius:6px;font-size:.92em}.prose img{max-width:100%;height:auto;border-radius:12px}.article-after{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;border-top:1px solid var(--line);margin-top:44px;padding-top:24px}.article-after a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:var(--card);border:1.5px solid var(--green);color:var(--green);border-radius:999px;padding:10px 18px;text-decoration:none;font-size:15px;font-weight:700}.article-after a:hover{background:var(--hero-green)}
