:root{--paper:#f8f9fc;--ink:#222536;--muted:#747989;--line:#e4e6ee;--purple:#5549d9;--light:#eeecff;--green:#d9efad}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;overflow-x:clip}a{color:inherit;text-decoration:none}a:hover{color:var(--purple)}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.4;letter-spacing:-.025em}h2{font-size:23px}h3{font-size:20px}em{font-style:normal;color:var(--purple)}.skip{position:absolute;left:10px;top:-100px;background:white;padding:10px;z-index:99}.skip:focus{top:10px}.header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.header-inner{max-width:1240px;margin:auto;min-height:82px;display:flex;align-items:center;gap:48px;padding:0 36px}.brand{display:flex;align-items:center;font-weight:850;font-size:28px;letter-spacing:-1.3px;color:#222536;white-space:nowrap}.brand>span:not(.brand-symbol){color:var(--purple)}.brand-symbol{background:var(--purple);color:white;width:32px;height:32px;border-radius:8px;font-size:22px;line-height:32px;text-align:center;margin-right:9px;letter-spacing:-1px}.brand small{font-size:9px;letter-spacing:1.4px;margin-left:10px;color:var(--muted);border-left:1px solid var(--line);padding-left:12px;align-self:center}.header nav{display:flex;gap:29px;align-self:stretch}.header nav a{display:flex;align-items:center;font-size:14px;position:relative;font-weight:550}.header nav a.active{color:var(--purple)}.header nav a.active:after{content:"";height:3px;position:absolute;bottom:0;left:0;right:0;background:var(--purple)}.cadence{margin-left:auto;font-size:12px;white-space:nowrap;color:var(--muted)}.cadence i{display:inline-block;width:6px;height:6px;background:#779957;border-radius:50%;margin-right:6px}.demo-note{background:#f0eefc;color:#645c89;font-size:12px;text-align:center;padding:8px 20px;border-bottom:1px solid #e6e0f8}.demo-note span{font-weight:700;margin-right:10px;color:var(--purple)}.container{max-width:1240px;margin:auto;padding:0 36px}.issue-heading{padding:53px 0 39px;display:flex;justify-content:space-between;gap:35px;border-bottom:1px solid var(--line);margin-bottom:35px}.eyebrow,.section-kicker{font-size:10px;letter-spacing:1.9px;font-weight:700;color:var(--purple);display:block}.eyebrow span{color:var(--muted);margin-left:12px}.issue-heading h1{font-size:43px;line-height:1.4;letter-spacing:-1.5px;margin:16px 0 17px}.period{color:var(--purple)}.issue-heading p{max-width:590px;color:var(--muted);font-size:14px;line-height:1.85}.issue-meta{display:flex;gap:0;margin-top:21px;font-size:12px;color:#626879}.issue-meta span+span:before{content:"·";margin:0 14px;color:#a6a9b7}.issue-stamp{width:210px;flex-shrink:0;text-align:right;display:flex;flex-direction:column;justify-content:center;align-items:flex-end;border-left:1px solid var(--line);padding:0 12px 0 30px;color:var(--muted)}.issue-stamp>span{font-size:12px;line-height:1.9}.issue-stamp strong{font-size:104px;line-height:1.13;font-weight:300;letter-spacing:-8px;color:var(--purple)}.issue-stamp small{font-size:10px;letter-spacing:3px;margin-top:8px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:40px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:22px;gap:12px}.section-heading h2{margin-top:6px}.section-heading>.muted{font-size:12px;padding-bottom:3px}.section-heading>a{font-size:12px;color:var(--purple)}.muted{color:var(--muted)}.article{border-bottom:1px solid var(--line);padding:25px 0}.article.featured{display:flex;gap:18px;background:white;border:1px solid var(--line);border-radius:10px;margin-bottom:13px;padding:25px 25px 0 21px;overflow:hidden}.rank{font-size:24px;font-weight:450;letter-spacing:-1px;color:#b3afd9;line-height:1.3;padding-top:1px}.article-content{min-width:0;flex:1}.article-meta{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted);flex-wrap:wrap}.category{color:var(--purple);background:var(--light);font-size:10px;padding:2px 7px;border-radius:4px;font-weight:600}.example{border-left:1px solid var(--line);padding-left:10px;color:#9993b4}.article h3{font-size:19px;margin:10px 0 9px;font-weight:650}.summary{font-size:13px;line-height:1.85;color:#676b7b}.why{margin:16px 0 10px;padding-left:12px;border-left:2px solid #beb8f3;display:flex;gap:12px}.why strong{font-size:11px;white-space:nowrap;color:var(--purple);font-weight:650;line-height:1.85}.why p{font-size:12px;line-height:1.85;color:#666c7d}.article-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0 13px}.tags{font-size:10px;color:#878b98;display:flex;gap:8px;flex-wrap:wrap}.score{color:var(--purple);font-size:14px;font-weight:700}.score small{font-size:10px;font-weight:400;color:#9295a3}.article details{border-top:1px solid #eff0f5}.article details summary{list-style:none;cursor:pointer;padding:11px 0;color:#9295a3;font-size:10px;display:flex;justify-content:space-between}.article details summary::-webkit-details-marker{display:none}.article details[open] summary{color:var(--purple)}.detail-body{padding:5px 0 20px}.score-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 20px;font-size:11px;color:#707588}.score-grid span{display:flex;justify-content:space-between}.source-time{margin-top:10px;font-size:10px;color:var(--muted)}.source-link{display:block;font-size:12px;color:var(--purple);margin-top:8px}.side-box{background:white;border:1px solid var(--line);border-radius:9px;padding:23px;margin-bottom:20px}.side-box h2{font-size:17px;margin-top:7px;margin-bottom:18px}.contents{background:transparent;padding:17px 0 22px;border:0;border-bottom:1px solid var(--line);border-radius:0}.contents .section-kicker{margin-bottom:11px;color:var(--muted)}.contents>a{display:flex;font-size:12px;align-items:center;padding:8px 0;gap:13px}.contents b{color:#aaa6c9;font-size:10px;font-weight:500}.contents a>span{margin-left:auto;color:#aaa6c9}.side-title{display:flex;align-items:center;justify-content:space-between}.side-title>span{color:#bbb8cf;font-size:11px}.side-title h2{margin-top:0}.category-list a{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:9px 0;border-top:1px solid #f0f1f6}.category-list b{font-size:10px;font-weight:400;background:#f4f4fa;min-width:21px;line-height:21px;text-align:center;color:var(--muted);border-radius:4px}.trend{display:flex;gap:11px;margin-bottom:20px}.trend>span{color:var(--purple);font-size:18px}.trend h3{font-size:13px;line-height:1.65}.trend p{font-size:11px;line-height:1.85;color:var(--muted);margin-top:7px}.side-box small.muted{font-size:10px;line-height:1.6;display:block}.knowledge{background:#eeedfa;border:1px solid #dedbf4;border-radius:9px;padding:23px;margin-bottom:20px}.knowledge .section-kicker{font-size:9px}.knowledge-icon{display:flex;align-items:center;justify-content:space-between;font:italic 48px Georgia,serif;color:var(--purple);margin:16px 0}.knowledge-icon span{font:22px sans-serif}.knowledge h2{font-size:19px;margin-bottom:12px}.knowledge p{font-size:12px;line-height:1.95;color:#66637d}.knowledge-foot{border-top:1px solid #dbd8ed;display:block;font-size:10px;color:#928daa;padding-top:14px;margin-top:18px}.open-source>a{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid var(--line);font-size:13px}.open-source>a>span:first-child{background:#f0f0f8;border-radius:6px;width:28px;text-align:center;color:var(--purple);font-size:18px}.open-source>a>span:last-child{margin-left:auto;color:#9993b4}.open-source b{font-size:12px}.open-source small{display:block;font-size:10px;color:var(--muted)}.side-note{padding:12px 22px;font-size:14px;line-height:2;color:#9290a5}.side-note a{font-size:11px;color:var(--purple);display:block;margin-top:14px}.all-section{margin-top:45px}.section-heading h2 small{font-size:12px;vertical-align:middle;color:var(--muted);padding:4px 8px;background:#eaeaf2;border-radius:5px;margin-left:7px}.regional-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:40px 0}.regional-grid h2{font-size:20px;margin:8px 0 15px}.regional-grid a{font-size:12px;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:12px 0;gap:10px}.regional-grid a span{color:var(--purple)}.footer{max-width:1168px;margin:70px auto 0;padding:28px 0 36px;border-top:1px solid var(--line);display:flex;align-items:center;gap:22px;font-size:11px;color:var(--muted)}.brand.small{font-size:21px}.footer>span:nth-of-type(2){margin-left:auto}.footer>a:last-child{color:var(--purple)}.page-heading{padding:55px 0 35px;border-bottom:1px solid var(--line);margin-bottom:30px}.page-heading h1{font-size:37px;margin:13px 0}.page-heading p{color:var(--muted);font-size:14px}.archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.archive-card{border:1px solid var(--line);border-radius:10px;background:white;padding:28px;transition:transform .15s,border-color .15s}.archive-card:hover{transform:translateY(-3px);border-color:#b4adeb}.archive-top{display:flex;justify-content:space-between;color:var(--purple);font-size:12px}.archive-card h2{margin:22px 0 12px;font-size:24px}.archive-card p{font-size:13px;color:var(--muted)}.archive-bottom{border-top:1px solid var(--line);padding-top:18px;margin-top:25px;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.mobile-cats{display:none}.filters{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0 18px}.filters a{border:1px solid var(--line);background:white;border-radius:6px;padding:8px 14px;font-size:12px}.filters a.selected{color:white;background:var(--purple);border-color:var(--purple)}.filters b{font-size:10px;opacity:.65;margin-left:7px}.topic-list{max-width:850px}.result-count{font-size:12px;color:var(--muted);padding:10px 0}.about-layout{display:grid;grid-template-columns:1fr 290px;gap:70px}.prose h2{margin:32px 0 14px;font-size:22px}.prose p,.prose li{font-size:14px;color:#666c7d;line-height:1.95}.prose p+p{margin-top:15px}.prose a{color:var(--purple)}.principle{font-size:24px!important;color:var(--ink)!important;margin:0 0 25px;padding:24px 0;border-bottom:1px solid var(--line)}.source-table{width:100%;border-collapse:collapse;margin:20px 0;font-size:12px}.source-table th{text-align:left;font-size:11px;color:var(--muted);font-weight:500}.source-table td,.source-table th{padding:11px 8px;border-bottom:1px solid var(--line)}.source-table td:first-child{font-weight:600}.status{color:#77758b;font-size:10px}.status.enabled{color:#538357}.empty{padding:90px 0;min-height:420px}.empty h1{font-size:36px;margin:18px 0}.empty p{color:var(--muted);margin-bottom:26px}.button{display:inline-block;background:var(--purple);color:white;padding:10px 18px;border-radius:6px;font-size:13px}.button:hover{color:white;background:#4436be}.notice{background:var(--light);padding:18px;border-radius:7px;color:#656083;font-size:13px}
@media(min-width:1450px){.container,.header-inner{max-width:1280px}.layout{grid-template-columns:minmax(0,1fr) 310px;gap:48px}.footer{max-width:1208px}}
@media(max-width:950px){.header-inner{gap:25px;padding:0 24px}.header nav{gap:19px}.cadence{display:none}.container{padding:0 24px}.layout{grid-template-columns:minmax(0,1fr) 255px;gap:24px}.issue-heading h1{font-size:37px}.issue-stamp{width:150px}.side-box,.knowledge{padding:18px}.article.featured{padding:20px 17px 0;gap:11px}.rank{font-size:20px}.why{display:block}.why strong{display:block;margin-bottom:4px}.footer{margin:50px 24px 0;flex-wrap:wrap}.about-layout{gap:30px;grid-template-columns:1fr 240px}}
@media(max-width:700px){.mobile-cats{display:flex;gap:8px;overflow-x:auto;padding:16px 20px 2px;margin:0 -20px}.mobile-cats a{flex:0 0 auto;background:#fff;border:1px solid var(--line);border-radius:6px;padding:6px 10px;font-size:12px}.regional-grid{grid-template-columns:1fr}.filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.filters a{flex:0 0 auto}.article-bottom{flex-wrap:wrap;align-items:flex-start}.source-table{display:block;overflow-x:auto}.header-inner{padding:12px 20px 0;flex-wrap:wrap;gap:8px;min-height:auto}.brand{font-size:25px}.brand small{font-size:8px}.brand-symbol{width:28px;height:28px;font-size:19px;line-height:28px}.header nav{width:100%;justify-content:space-between;gap:16px}.header nav a{font-size:12px;padding:12px 0}.demo-note{font-size:10px;text-align:left;padding:8px 20px}.container{padding:0 20px}.issue-heading{padding:30px 0 26px;margin-bottom:28px;gap:12px}.eyebrow{font-size:8px;letter-spacing:1.3px}.eyebrow span{display:block;margin:7px 0 0}.issue-heading h1{font-size:31px;letter-spacing:-1px;margin-top:12px}.issue-heading p{font-size:12px}.issue-stamp{display:none}.issue-meta{font-size:10px;flex-wrap:wrap}.issue-meta span+span:before{margin:0 9px}.layout{display:block}.section-heading>.muted{font-size:10px}.section-heading h2{font-size:21px}.article.featured{padding:20px 16px 0 13px;gap:11px}.rank{font-size:18px}.article h3{font-size:17px}.article-meta{font-size:10px;gap:8px}.summary{font-size:12px}.article .why p{font-size:11px}.sidebar{margin-top:35px;display:grid;grid-template-columns:1fr;gap:0}.contents{display:none}.side-box,.knowledge{padding:23px}.regional-grid{gap:20px}.footer{margin:35px 20px 0;gap:12px;font-size:10px}.footer>span:nth-of-type(2){margin-left:0;width:100%;order:4}.footer>a:last-child{margin-left:auto}.page-heading{padding-top:35px}.page-heading h1{font-size:30px}.archive-grid{grid-template-columns:1fr}.archive-card{padding:24px}.about-layout{display:block}.about-layout aside{margin-top:30px}.source-table td,.source-table th{padding:10px 4px}.source-table{font-size:11px}.filters{gap:8px}.filters a{padding:6px 10px;font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.archive-card{transition:none}.flow-motion{display:none}}
.chronicle-intro{max-width:720px;margin-bottom:8px}.chronicle-intro p+p{margin-top:8px}.spine{list-style:none;margin:28px 0 0;padding:0;max-width:820px}.spine-stage{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;position:relative;padding-bottom:26px}.spine-stage:not(:last-child)::before{content:"";position:absolute;left:17px;top:36px;bottom:0;width:1px;background:var(--line)}.spine-mark{width:36px;height:36px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;position:relative;z-index:1}.spine-kicker{font-size:12px;letter-spacing:.04em;color:var(--muted)}.spine-body h2{font-size:22px;margin:2px 0 8px}.spine-text{max-width:68ch}.spine-evidence{margin-top:12px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:0 14px}.spine-evidence summary{cursor:pointer;padding:12px 0;font-size:14px;color:var(--purple)}.spine-evidence .chronicle-list{padding-bottom:12px}.chronicle-list{display:flex;flex-direction:column;gap:10px}.chronicle-item{border-top:1px solid var(--line);padding-top:12px}.chronicle-meta{display:flex;flex-wrap:wrap;gap:8px 12px;font-size:12px;color:var(--muted);margin-bottom:6px}.chronicle-meta b{color:var(--ink);font-size:16px}.line-tag{color:var(--purple);font-weight:600}.chronicle-sources{margin-top:8px;display:flex;flex-wrap:wrap;gap:8px 14px;font-size:13px}.chronicle-sources a{color:var(--purple)}
.header nav{gap:22px;align-items:stretch}.nav-group{display:flex;align-items:stretch;gap:16px}.nav-group>span{display:flex;align-items:center;font-size:10px;letter-spacing:.14em;color:var(--muted);font-weight:700}.footer-note{margin:0}.footer-map{margin-left:auto;display:flex;gap:28px}.footer-map div{display:flex;flex-direction:column;gap:2px;min-width:4.2em}.footer-map b{font-size:10px;letter-spacing:.14em;font-weight:700}.footer-map a{color:var(--ink);font-size:13px}.related{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:720px;margin:28px 0 8px}.related a{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 16px}.related b{color:var(--ink)}.related span{font-size:13px;color:var(--muted)}.site-map{list-style:none;padding:0;margin:8px 0 0}.site-map li{padding:10px 0;border-top:1px solid var(--line)}.site-map b{color:var(--ink);margin-right:8px}
@media(max-width:700px){.header nav{flex-wrap:wrap;justify-content:flex-start;gap:2px 14px;padding:6px 0 8px}.nav-group{gap:12px}.header nav a{padding:8px 0}.footer{flex-direction:column;align-items:flex-start}.footer-map{margin-left:0;flex-wrap:wrap;gap:16px 28px}.related{grid-template-columns:1fr}}
.flow-board{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 8px 0;margin:8px 0 14px;overflow:hidden}.flow-svg{width:100%;height:auto;display:block}.flow-track{fill:none;stroke:#d5d8e4;stroke-width:4;stroke-linecap:round}.flow-stop{fill:#fff;stroke:var(--ink);stroke-width:2}.flow-svg text{font-size:15px;fill:var(--ink)}.flow-dot{fill:var(--purple)}.flow-caption{max-width:72ch;color:var(--muted);font-size:14px;margin-bottom:28px}.flow-stages{display:flex;flex-direction:column;gap:22px;max-width:980px}.flow-stage{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 22px 18px}.flow-stage header{display:flex;gap:14px;align-items:flex-start}.flow-stage header>span{font-size:13px;color:var(--purple);font-weight:700;letter-spacing:.08em;padding-top:4px}.flow-stage h2{font-size:22px}.flow-stage header p{color:var(--purple);font-size:15px}.flow-summary{margin:12px 0 16px;max-width:72ch;color:#555}.flow-tools{display:grid;grid-template-columns:1fr 1fr;gap:12px}.flow-tools article{border:1px solid var(--line);border-radius:8px;padding:14px 16px}.flow-tools h3{font-size:16px;margin-bottom:6px}.flow-tools p{font-size:13px;color:#555;margin-top:6px}.flow-tools b{color:var(--ink);font-weight:650;margin-right:4px}.flow-foot{margin:22px 0 8px;font-size:13px;max-width:72ch}
@media(max-width:700px){.flow-tools{grid-template-columns:1fr}.flow-svg text{font-size:13px}}
