
:root{--paper:#faf8f0;--ink:#353b38;--muted:#71766e;--line:#e0e1d6;--blue:#267680;--sky:#d9eceb;--orange:#bf6643;--peach:#f6e3d5;--yellow:#FBB034;--white:#fffef8;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--blue)}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:5px}[hidden]{display:none!important}.skip{position:fixed;top:-70px;padding:12px;background:white;z-index:10}.skip:focus{top:0}.top,.bottom{max-width:1160px;margin:auto;display:flex;justify-content:space-between;gap:20px;padding:24px 30px;color:var(--muted);font-size:12px}.top{border-bottom:1px solid var(--line)}.top a,.bottom a{text-decoration:none}.hero{max-width:1120px;margin:0 auto;padding:45px 30px 29px;display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:22px}.eyebrow{font-size:11px;letter-spacing:.13em;color:var(--orange);margin:0 0 20px}h1{font-family:"Songti SC",STSong,serif;font-size:clamp(29px,3.3vw,44px);line-height:1.5;letter-spacing:-.025em;font-weight:600;margin:0 0 18px}h1>span{display:block}.nowrap{display:inline-block;white-space:nowrap}.dek{font-size:18px;line-height:1.85;color:#647169;margin:0;max-width:540px}.meta{font-size:11px;color:var(--muted);display:flex;gap:17px;flex-wrap:wrap;margin-top:25px}.hero-cat{position:relative;text-align:center}.cat{display:block;width:100%;height:auto}.hero-cat .cat{max-width:350px;margin:auto;border-radius:45% 48% 40% 43%}.hero-cat .label{display:inline-block;font-size:12px;color:var(--orange);padding:7px 13px;border-bottom:1px dashed #d4a189;transform:rotate(-3deg);margin:5px 0 0}.role-strip{max-width:1060px;margin:0 auto 35px;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:23px 0;border-block:1px solid var(--line)}.role-strip a{text-decoration:none;display:grid;grid-template-columns:40px 1fr;align-items:start;gap:12px;font-size:14px;line-height:1.6}.role-strip b{font-size:18px;display:block;font-weight:600;margin-bottom:3px}.role-strip .num{font-family:Georgia,serif;color:var(--orange);font-size:27px;padding-top:1px}.role-strip a:nth-child(2) .num{color:var(--blue)}.role-strip a:nth-child(3) .num{color:#99721c}.contents{position:sticky;top:var(--site-header-height,64px);z-index:3;background:var(--paper);border-bottom:1px solid var(--line)}.contents nav{max-width:1060px;margin:auto;display:flex;gap:32px;overflow:auto;scrollbar-width:none;padding:0 1px}.contents a{display:block;white-space:nowrap;text-decoration:none;padding:13px 0;font-size:12px;color:var(--muted)}.contents a:hover{color:var(--blue)}.article{max-width:1080px;margin:auto;padding:5px 30px 45px}.section{padding-top:44px;margin-top:12px;scroll-margin-top:62px}.section-head{max-width:730px;margin:0 auto 23px}.kicker{font-size:11px;letter-spacing:.08em;color:var(--orange);margin:0 0 12px}.section h2{font-size:26px;line-height:1.6;letter-spacing:-.02em;margin:0 0 15px;font-weight:600}.definition{font-size:19px;line-height:1.85;margin:0;color:#56675e}.text{max-width:730px;margin:23px auto;font-size:17px;line-height:1.95}.text p{margin:0 0 18px}strong{font-weight:600}sup{font-size:10px;line-height:0;padding-left:4px}sup a{color:var(--blue);text-decoration:none}.board{margin:28px 0 20px;background:var(--white);border:1px solid #e4e1d5;border-radius:21px;padding:28px}.board-title{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:13px;line-height:1.7;margin:0 0 22px}.board-title strong{color:var(--blue);font-size:15px}.caption{font-size:11px;line-height:1.8;color:var(--muted);margin:17px 2px 0}.representation{display:grid;grid-template-columns:1fr 110px 1fr;align-items:center;gap:15px}.representation .cat{max-width:280px;margin:auto}.rep-side{text-align:center}.rep-side h3{font-size:20px;font-weight:500;margin:3px 0 8px}.rep-side .dimension{font-variant-numeric:tabular-nums;color:var(--blue);font-size:24px;font-weight:550;white-space:nowrap;margin:10px 0 5px}.rep-side .dimension small{color:var(--muted);font-size:13px}.rep-side p{font-size:13px;color:var(--muted);margin:0}.rep-side img{width:100%;max-width:390px;display:block;margin:auto}.flow-arrow{color:var(--orange);font-size:36px;text-align:center}.flow-arrow span{display:block;font-size:12px;line-height:1.65;font-weight:500;letter-spacing:0}.dimension-note{margin:25px 0 0;padding-top:16px;border-top:1px dashed var(--line);display:flex;justify-content:center;gap:22px;font-size:12px;color:var(--muted);line-height:1.8}.dimension-note strong{color:var(--blue)}.zoom-svg{padding:0;border:0;background:none;display:block;width:100%}.zoom-svg img{display:block;width:100%;height:auto}.number-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;aspect-ratio:1;max-width:130px;width:100%;margin:auto;transform:rotate(-4deg)}.number-grid span{border-radius:3px;display:grid;place-items:center;font-size:0;color:#39433e;line-height:1;transition:background .2s}.number-grid.big{max-width:175px;transform:rotate(-3deg)}.number-grid.big span{font-size:10px}.switch{display:flex;border-bottom:1px solid var(--line);gap:24px;margin:0 0 22px}.switch button{padding:0 0 13px;border:0;border-bottom:3px solid transparent;background:none;color:var(--muted);font-size:14px}.switch button[aria-selected=true]{color:var(--blue);border-color:var(--blue)}.route-prompt{background:var(--sky);color:var(--blue);padding:11px 18px;max-width:510px;margin:0 auto 20px;text-align:center;font-size:13px;line-height:1.7;border-radius:12px}.route-track{display:grid;grid-template-columns:1.1fr 24px 1fr 24px 1fr 24px 1fr 24px 1.1fr;gap:5px;align-items:center}.route-node{text-align:center;min-width:0}.route-node .cat{max-width:120px;margin:auto;border-radius:12px}.route-node h4{font-size:15px;font-weight:550;line-height:1.65;margin:11px 0 3px}.route-node p{font-size:11px;color:var(--muted);line-height:1.7;margin:0}.operator{background:var(--sky);padding:22px 8px;border-radius:14px;font-size:17px;line-height:1.7;color:var(--blue)}.operator small{display:block;font-size:11px}.operator.gen{background:var(--peach);color:var(--orange)}.route-arrow{font-size:24px;text-align:center;color:#a7aa9e}.route-message{margin:23px auto 0;padding-top:18px;border-top:1px dashed var(--line);max-width:730px;font-size:15px;line-height:1.85;color:#5a6c62}.details{max-width:730px;margin:20px auto 29px;border-block:1px solid var(--line);padding:14px 0;font-size:14px;line-height:1.95}.details summary{cursor:pointer;font-size:13px;color:var(--blue)}.details .inside{padding-top:17px}.details p{margin:0 0 15px}.token-board{padding:18px 22px 22px}.token-board .caption{padding-inline:6px}.loop-board{padding-top:24px}.loop-layout{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:28px;align-items:center;max-width:870px;margin:auto}.loop-latent{text-align:center;position:relative}.loop-latent:after{content:"→";position:absolute;right:-22px;top:19%;font-size:24px;color:#97a89e}.loop-latent h4{font-size:15px;margin:14px 0 3px;font-weight:500}.loop-latent p{font-size:11px;color:var(--muted);line-height:1.8;margin:0}.duo{position:relative;padding-right:24px}.duo-box{border:1px solid var(--line);border-radius:13px;padding:12px;text-align:center;background:#f8f7ef;transition:background .18s,opacity .18s}.duo-box h4{margin:0 0 3px;font-size:18px;font-weight:500}.duo-box p{margin:0;font-size:12px;line-height:1.7}.duo-arrow{text-align:center;line-height:1.6;color:var(--muted);font-size:10px;padding:3px 0}.duo-arrow span{display:block;font-size:19px}.loop-return{position:absolute;right:0;top:20px;height:calc(100% - 36px);width:19px;border:2px solid #97b5ad;border-left:0;border-radius:0 14px 14px 0}.loop-return:before{content:'‹';position:absolute;top:-15px;left:-5px;font-size:27px;color:#71948a}.loop-caption{font-size:11px;color:var(--muted);line-height:1.7;text-align:center;margin:12px 0 0}.decode-line{text-align:center}.decode-line .cat{max-width:120px;margin:10px auto 0;border-radius:14px}.decode-line .operator{font-size:15px;padding:10px}.decode-line .arrow-label{font-size:11px;line-height:1.7;color:var(--muted);margin:0 0 8px}.loop-layout .state{opacity:.82;transition:opacity .18s}.loop-board[data-step="0"] .noise-state,.loop-board[data-step="1"] .predict-state,.loop-board[data-step="2"] .update-state,.loop-board[data-step="3"] .predict-state,.loop-board[data-step="3"] .update-state,.loop-board[data-step="4"] .decode-state{opacity:1}.loop-board[data-step="1"] .predict-state,.loop-board[data-step="3"] .predict-state{background:var(--peach);border-color:#e8bfa7}.loop-board[data-step="2"] .update-state,.loop-board[data-step="3"] .update-state{background:var(--sky);border-color:#a7cecb}.step-controls{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:24px 0 15px}.step-controls button{border:1px solid var(--line);background:none;border-radius:20px;padding:8px 14px;font-size:12px}.step-controls button[aria-pressed=true]{border-color:var(--orange);color:var(--orange);background:var(--peach)}.step-note{text-align:center;max-width:760px;margin:auto;font-size:14px;line-height:1.9;min-height:54px}.step-note b{color:var(--orange);font-weight:500}.next-step{display:block;margin:12px auto 0;border:0;background:none;border-bottom:1px solid var(--orange);color:var(--orange);padding:4px 0;font-size:12px}.effects{display:grid;grid-template-columns:270px 1fr;gap:35px;align-items:center}.effects .cat{border-radius:18px}.effect-rows{margin:0}.effect-row{padding:16px 0;border-top:1px solid var(--line)}.effect-row:first-child{border:0;padding-top:0}.effect-row h3{font-size:16px;color:var(--blue);margin:0 0 6px;font-weight:500}.effect-row h3 small{font-size:11px;color:var(--muted);font-weight:400;margin-left:12px}.effect-row p{font-size:14px;line-height:1.85;margin:0}.conclusion{padding-top:43px;margin-top:35px;border-top:1px solid var(--line)}.summary-map{max-width:930px;margin:25px auto;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.summary-map div{border-top:3px solid var(--orange);padding-top:17px}.summary-map div:nth-child(2){border-color:var(--blue)}.summary-map div:nth-child(3){border-color:var(--yellow)}.summary-map h3{font-size:21px;margin:0 0 13px;font-weight:500}.summary-map p{font-size:14px;line-height:1.8;margin:0 0 7px}.summary-map small{font-size:12px;line-height:1.8;color:var(--muted)}.sources{max-width:730px;margin:45px auto 0;padding-top:25px;border-top:1px solid var(--line);font-size:12px;line-height:1.8;color:var(--muted)}.sources h2{font-size:16px;color:var(--ink)}.sources ol{padding-left:20px}.sources li{margin-bottom:17px;padding-left:4px;scroll-margin-top:70px}.sources small{display:block;font-size:11px;margin-top:5px}.sources a{color:var(--blue)}.bottom{border-top:1px solid var(--line);padding-bottom:38px}dialog{background:var(--white);color:var(--ink);width:min(1130px,94vw);max-height:93vh;border:1px solid var(--line);border-radius:16px;padding:18px}dialog::backdrop{background:rgba(40,44,39,.65)}.dialog-head{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:13px;margin-bottom:15px}.dialog-head p{margin:0}.dialog-head button{border:1px solid var(--line);background:none;border-radius:7px;padding:8px 13px;font-size:12px}.dialog-stage{max-height:77vh;overflow:auto}.dialog-stage img{width:100%;min-width:650px;display:block;height:auto}.dialog-hint{font-size:11px;color:var(--muted);margin:12px 0 0}
@media(max-width:1120px){.role-strip{margin-inline:30px}.contents nav{padding-inline:30px}}@media(max-width:820px){.hero{grid-template-columns:1.25fr 1fr;padding-top:34px}h1{font-size:34px}.representation{grid-template-columns:1fr 80px 1fr}.board{padding:23px 18px}.effects{grid-template-columns:200px 1fr;gap:22px}.loop-layout{gap:15px}}@media(max-width:600px){.top,.bottom{padding:19px 22px;font-size:11px}.top span,.bottom span{display:none}.hero{display:block;padding:28px 22px 22px}.eyebrow{font-size:10px;margin-bottom:15px}h1{font-size:29px;line-height:1.55;margin-bottom:14px}.dek{font-size:16px}.meta{font-size:10px;gap:14px;margin-top:17px}.hero-cat{margin-top:15px}.hero-cat .cat{max-width:256px}.hero-cat .label{font-size:11px;margin-top:0}.role-strip{margin:0 22px 20px;padding:17px 0;display:block}.role-strip a{grid-template-columns:27px 1fr;gap:12px;font-size:12px;margin-bottom:14px}.role-strip a:last-child{margin-bottom:0}.role-strip b{display:inline;font-size:15px;margin-right:9px}.role-strip .num{font-size:20px;padding:0}.contents nav{padding:0 22px;gap:25px}.contents a{font-size:11px;padding:12px 0}.article{padding:0 18px 34px}.section{padding-top:32px;margin-top:8px}.section-head{padding:0 4px;margin-bottom:18px}.kicker{font-size:10px;margin-bottom:9px}.section h2{font-size:23px;line-height:1.55;margin-bottom:12px}.definition{font-size:17px;line-height:1.9}.text{font-size:16px;line-height:1.95;padding:0 4px;margin:20px auto}.board{padding:19px 13px;border-radius:16px;margin-top:23px}.board-title{font-size:11px;gap:12px;margin-bottom:16px}.board-title strong{font-size:13px}.caption{font-size:10px;margin-top:15px;line-height:1.8}.representation{grid-template-columns:1fr;gap:10px}.representation .cat{max-width:190px}.rep-side img{max-width:310px}.rep-side h3{font-size:17px;margin-top:0}.rep-side .dimension{font-size:22px;margin-top:6px}.rep-side .dimension small{font-size:12px}.rep-side p{font-size:11px}.representation .flow-arrow{font-size:0;line-height:1.1;display:flex;align-items:center;justify-content:center;gap:12px;margin:8px 0}.representation .flow-arrow:after{content:'↓';font-size:29px}.representation .flow-arrow span{font-size:12px;line-height:1.7;display:inline-block}.dimension-note{display:block;text-align:center;font-size:11px;padding-top:14px;margin-top:19px}.dimension-note span{display:block;margin-bottom:4px}.switch{gap:21px;margin-bottom:19px}.switch button{font-size:12px;padding-bottom:11px}.route-track{grid-template-columns:1fr;gap:6px}.route-node{display:grid;grid-template-columns:88px 1fr;text-align:left;align-items:center;gap:16px;max-width:290px;width:100%;margin:auto}.route-node .cat{width:80px;max-width:none;margin:0}.route-node h4{font-size:15px;margin:0 0 3px}.route-node p{font-size:11px}.route-node .operator{font-size:13px;padding:12px 5px;min-height:62px;display:flex;flex-direction:column;justify-content:center;text-align:center}.operator small{font-size:10px}.route-node .number-grid{width:78px;margin:0;gap:2px}.route-arrow{font-size:0;line-height:1;margin:1px auto}.route-arrow:after{content:'↓';font-size:20px}.route-prompt{font-size:12px;padding:10px}.route-message{font-size:13px;line-height:1.9;margin-top:20px;padding-top:15px}.details{font-size:13px;margin-inline:4px}.details summary{font-size:12px}.token-board{padding:11px 6px 17px}.token-board .caption{padding:0 7px}.loop-layout{grid-template-columns:1fr 1.25fr;gap:17px}.loop-latent .number-grid.big{max-width:114px;gap:2px}.number-grid.big span{font-size:7px}.loop-latent h4{font-size:13px;margin-top:12px}.loop-latent p{font-size:10px}.duo{padding-right:16px}.duo-box{padding:10px 5px;border-radius:10px}.duo-box h4{font-size:16px}.duo-box p{font-size:11px}.loop-return{width:12px}.loop-caption{font-size:10px}.decode-line{grid-column:1/-1;display:grid;grid-template-columns:1fr 100px;gap:13px;align-items:center;border-top:1px dashed var(--line);padding-top:13px}.decode-line .cat{width:98px;max-width:none;margin:0}.decode-line .operator{max-width:150px;margin:auto;font-size:13px}.decode-line .arrow-label{font-size:10px;margin-bottom:5px}.step-controls{gap:7px;margin:20px 0 14px}.step-controls button{font-size:10px;padding:7px 9px}.step-note{font-size:12px;min-height:68px;text-align:left;padding:0 2px}.next-step{font-size:11px;margin-top:8px}.effects{display:block}.effects .cat{max-width:210px;margin:0 auto 14px}.effect-row{padding:15px 3px}.effect-row h3{font-size:15px}.effect-row h3 small{display:block;margin:5px 0 0;font-size:11px}.effect-row p{font-size:13px}.conclusion{margin-top:29px;padding-top:28px}.summary-map{display:block;padding:0 5px;margin:23px auto}.summary-map div{padding-top:14px;margin-top:20px}.summary-map h3{font-size:20px;margin-bottom:10px}.summary-map p{font-size:14px}.summary-map small{font-size:12px}.sources{font-size:11px;padding:24px 5px 0;margin-top:33px}.sources small{font-size:10px}dialog{width:calc(100vw - 12px);padding:10px;border-radius:12px}.dialog-head{font-size:11px;align-items:flex-start}.dialog-head button{font-size:11px;padding:7px 10px}.dialog-hint{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{.top,.contents,.bottom,.skip,.switch,.step-controls,.next-step,dialog{display:none!important}.hero{padding-top:0}.route-panel[hidden]{display:block!important;margin-top:20px}.article{max-width:none}.board{break-inside:avoid}.loop-layout .state{opacity:1}.details .inside{display:block}.hero-cat .cat{max-width:240px}}

:root[data-theme="dark"] .dek{color:var(--site-ink,#ededed)}
:root[data-theme="dark"] .role-strip a:nth-child(3) .num{color:var(--site-ink,#ededed)}
:root[data-theme="dark"] .definition{color:var(--site-ink,#ededed)}
:root[data-theme="dark"] .number-grid span{color:var(--site-ink,#ededed)}
:root[data-theme="dark"] .route-arrow{color:var(--site-ink,#ededed)}
:root[data-theme="dark"] .route-message{color:var(--site-ink,#ededed)}
:root[data-theme="dark"] .loop-latent:after{color:var(--site-ink,#ededed)}
:root[data-theme="dark"] .duo-box{background:var(--site-surface,#252525)}
:root[data-theme="dark"] .loop-return:before{color:var(--site-ink,#ededed)}
