:root{--paper:#f6f2ec;--ink:#423444;--muted:#877b83;--line:#ded5d5;--accent:#9c596e;--soft:#e9dedc}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}a:hover{color:var(--accent)}header{height:96px;position:sticky;top:0;background:#f6f2ecf5;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 4%;z-index:5}.brand{font-family:Georgia,Songti SC,serif;font-size:30px;letter-spacing:6px;font-weight:700}.brand span{display:block;font:8px/1.5 monospace;letter-spacing:2px;margin-top:7px}header nav{display:flex;gap:40px;font-size:12px}#menu{display:none;background:none;border:0;color:var(--ink)}.layout{max-width:1440px;margin:auto;display:grid;grid-template-columns:244px minmax(0,1fr)}aside{padding:42px 28px;position:sticky;top:96px;height:calc(100vh - 96px);overflow:auto;border-right:1px solid var(--line)}.side-heading{font-size:10px;color:var(--muted);margin-bottom:25px}.side-home{display:flex;justify-content:space-between;font-size:14px;font-weight:600;margin-bottom:32px}.side-home small{font:10px monospace;color:var(--muted)}.side-chapter{display:flex;gap:14px;line-height:1.9;font-size:12px;padding:15px 0}.side-chapter span{font:10px/2 monospace;color:var(--muted)}.side-chapter.selected{color:var(--accent)}.side-end{border-top:1px solid var(--line);margin-top:30px;padding-top:26px;font-family:Georgia,Songti SC,serif;font-size:17px;line-height:1.9}.side-flow{display:block;font-size:11px;margin-top:20px}main{padding:50px 45px 70px;min-width:0}.eyebrow{font:10px/1.8 monospace;letter-spacing:1px;color:var(--muted);margin-bottom:20px}.hero{display:grid;grid-template-columns:1.3fr .8fr;gap:40px;align-items:center}.hero h1{font:600 clamp(35px,3.8vw,58px)/1.32 Georgia,"Songti SC",serif;letter-spacing:-1px;margin:0 0 24px}.hero p{font-size:13px;line-height:2.1;color:var(--muted);margin:0 0 29px}.button{display:inline-block;border:0;border-radius:3px;background:var(--ink);color:#fff;padding:14px 20px;font-size:12px}.button:hover{color:#fff;background:var(--accent)}.plain{font-size:12px;border:0;background:none;padding:12px 16px;color:var(--ink)}.ticket{background:#49344f;color:#f6e5d2;border-radius:10px;padding:24px;box-shadow:10px 14px #e7ddd9;transform:rotate(2deg)}.ticket>span{font:8px/1.8 monospace;letter-spacing:1px}.ticket-top{border-bottom:1px dashed #a38b9e;padding:28px 0 22px;font:27px/1.5 Georgia,Songti SC,serif}.ticket-top b{font-size:17px;font-weight:400;color:#d3adb4}.ticket-states{display:flex;flex-direction:column;align-items:center;gap:9px;padding:20px 0;font-size:12px}.ticket-states span{border:1px solid #997f93;border-radius:30px;padding:10px 25px}.ticket-states i{font-style:normal;color:#c994a9}.ticket-bottom{font-size:10px;border-top:1px dashed #a38b9e;padding-top:17px;line-height:1.9}.reading-note{display:flex;gap:25px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:48px;font-size:11px;line-height:1.9}.reading-note b{white-space:nowrap}.reading-note span{color:var(--muted)}.catalog{margin-top:43px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-title h2{font:600 24px/1.6 Georgia,Songti SC,serif;margin:0}.section-title>span{font-size:10px;color:var(--muted)}.tools{display:flex;justify-content:space-between;gap:15px;margin:24px 0}.filters{display:flex;gap:7px}.filters button{background:none;border:1px solid transparent;padding:9px 12px;color:var(--muted);font-size:11px;border-radius:3px}.filters button[aria-pressed=true]{background:var(--ink);color:#fff}.tools input{width:230px;max-width:100%;border:0;border-bottom:1px solid var(--line);background:none;font-size:11px;padding:10px;color:var(--ink);outline-offset:3px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.card{border:1px solid var(--line);border-radius:5px;background:#fffcf7;overflow:hidden;transition:transform .2s}.card:hover{transform:translateY(-3px);color:var(--ink)}.cover{position:relative;height:215px;background:#e6dede;overflow:hidden;padding:20px 20px 0}.cover img{width:100%;height:100%;object-fit:cover;object-position:top;border-radius:7px 7px 0 0;box-shadow:0 5px 25px #49344f18;display:block}.cover>span{position:absolute;bottom:0;left:0;right:0;background:#423444e6;color:#fff;font-size:9px;padding:9px 16px;text-align:right}.card-copy{padding:22px}.meta{display:flex;justify-content:space-between;font:10px/1.5 monospace;color:var(--muted)}.card h3{font:600 20px/1.65 Georgia,Songti SC,serif;margin:15px 0 12px}.card p{font-size:12px;line-height:1.9;color:var(--muted);min-height:46px}.card-bottom{display:flex;justify-content:space-between;font-size:10px;border-top:1px solid var(--line);padding-top:20px;margin-top:23px}.pause{margin-top:48px;padding:32px;background:var(--soft);border-radius:5px}.pause>span{font-size:10px;color:var(--muted)}.pause h2{font:600 32px/1.5 Georgia,Songti SC,serif}.pause p,.pause a{font-size:12px;line-height:1.9}.pause a{display:inline-block;border-bottom:1px solid var(--ink);margin-top:12px}footer{display:flex;justify-content:space-between;align-items:center;padding:35px 4%;border-top:1px solid var(--line);gap:30px}footer .brand{font-size:22px}footer p,footer>a:last-child{font-size:10px;line-height:2;color:var(--muted)}.reader-grid{display:grid;grid-template-columns:minmax(0,1fr) 155px;gap:36px}article{min-width:0;max-width:720px}.back{display:inline-block;font-size:11px;color:var(--muted);margin-bottom:32px}article h1,.page-head h1{font:600 42px/1.5 Georgia,Songti SC,serif;margin:0 0 18px}.intro,.page-head p{font-size:14px;line-height:2;color:var(--muted)}article>.cover{height:320px;margin:30px 0}article section{margin:38px 0;scroll-margin-top:120px}article h2{font:600 24px/1.6 Georgia,Songti SC,serif;margin:0 0 17px}article section p,.sources p{font-size:14px;line-height:2.15;color:#70646d}.toc{position:sticky;top:130px;align-self:start;font-size:11px;padding-top:55px}.toc>span{color:var(--muted);display:block;margin-bottom:20px}.toc a{display:block;line-height:1.9;margin:18px 0}.source-note{background:var(--soft);padding:23px;font-size:11px;line-height:2;color:var(--muted)}.source-note a{display:block;color:var(--accent)}.next{display:flex;flex-wrap:wrap;justify-content:space-between;background:var(--ink);color:#fff;padding:28px;margin-top:35px;gap:15px;border-radius:4px}.next small{width:100%;font-size:10px;color:#d3bac7}.next strong{font-size:16px;font-weight:500}.next:hover{color:#fff;background:var(--accent)}.sources{max-width:720px}.sources h2{margin-top:38px}.sources a{border-bottom:1px solid #b49aa7}.sources code{font:11px/2 monospace;overflow-wrap:anywhere;background:var(--soft);padding:10px;display:block}.flow-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:30px;margin-top:35px}.flow-board{background:#fffcf7;border:1px solid var(--line);border-radius:6px;padding:28px}.board-label{font:9px/1.8 monospace;color:var(--muted);display:flex;justify-content:space-between;gap:15px}.board-label span{background:#eadde3;color:#715066;border-radius:20px;padding:3px 12px}#steps{list-style:none;padding:5px 0 0;margin:20px 0}#steps li{display:flex;align-items:center;gap:17px;opacity:.45;padding:20px 0;border-bottom:1px solid var(--line);font-size:14px}#steps li>span{border:1px solid var(--line);padding:10px;border-radius:50%;font:11px monospace}#steps small{display:block;font-size:10px;margin-top:7px;color:var(--muted)}#steps .current,#steps .done{opacity:1}#steps .current>span{background:var(--ink);color:#fff}#steps .done>span{background:#dce5da;color:#497047}.flow-message{font-size:12px;line-height:2;background:var(--soft);padding:17px;min-height:80px}.controls{display:flex;gap:6px;align-items:center;margin-top:20px}.flow-settings{padding:10px}.flow-settings h2{font:600 22px/1.7 Georgia,Songti SC,serif}.flow-settings label{display:block;font-size:11px}.flow-settings select{display:block;width:100%;background:transparent;border:1px solid var(--line);padding:12px;margin:12px 0;color:var(--ink);font-size:12px}.flow-settings p{font-size:12px;line-height:2;color:var(--muted)}.explain{border-top:1px solid var(--line);margin-top:30px;padding-top:15px}.explain h3{font-size:15px}.explain a{font-size:11px;color:var(--accent)}.empty{font-size:13px;padding:30px;grid-column:1/-1}.empty button{display:block;margin-top:20px;padding:10px;border:1px solid var(--line);background:none;color:var(--ink)}#result{font-size:11px;color:var(--muted)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media(min-width:1500px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.cover{height:190px}.card h3{font-size:18px}}@media(max-width:1100px){.layout{grid-template-columns:205px minmax(0,1fr)}aside{padding:30px 20px}main{padding:35px 28px}.hero{gap:25px}.hero h1{font-size:40px}.ticket{padding:18px}.ticket-top{font-size:23px}.reader-grid{grid-template-columns:1fr}.toc{display:none}.cover{height:180px}.section-title{display:block}.section-title>span{display:block;margin-top:8px}.reading-note{display:block}.reading-note span{display:block;margin-top:8px}}@media(max-width:760px){header{height:76px;padding:0 20px}.brand{font-size:27px}header nav{gap:18px}header nav a{font-size:10px}header nav a:first-child{display:none}#menu{display:block;font-size:21px}.layout{display:block}aside{display:none}.menu-open aside{display:block;position:fixed;top:76px;bottom:0;left:0;width:280px;height:calc(100vh - 76px);z-index:4;background:var(--paper);box-shadow:20px 0 80px #42344435}main{padding:30px 20px 45px}.hero{grid-template-columns:1fr}.hero h1{font-size:42px}.hero p{font-size:13px}.ticket{margin:10px 5px 0;transform:none;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:20px}.ticket>span,.ticket-bottom{grid-column:1/-1}.ticket-top{border:0;padding:13px 0;font-size:22px}.ticket-top b{font-size:15px}.ticket-states{padding:5px;gap:5px}.ticket-states span{padding:6px 15px;font-size:10px}.ticket-states i{font-size:10px}.reading-note{margin-top:30px}.section-title h2{font-size:23px}.tools{display:block}.tools input{width:100%;margin-top:18px}.cards{gap:16px}.cover{height:160px;padding:12px 12px 0}.cover>span{font-size:8px;padding:7px}.card-copy{padding:16px}.card h3{font-size:17px}.card p{font-size:11px;min-height:60px}.card-bottom{font-size:9px;gap:5px;flex-wrap:wrap}.meta{font-size:9px}.pause{padding:24px}.pause h2{font-size:28px}article h1,.page-head h1{font-size:34px}article section p,.sources p{font-size:14px}.intro{font-size:13px}article>.cover{height:240px}.flow-layout{grid-template-columns:1fr;gap:20px}.flow-board{padding:22px}.flow-settings{padding:0}footer{padding:28px 20px;display:block}footer p{margin:20px 0}.next strong{font-size:14px}.controls .plain{padding:10px}}@media(max-width:380px){.cards{grid-template-columns:1fr}.card p{min-height:0}.cover{height:200px}.hero h1{font-size:36px}header nav{gap:10px}header .brand{font-size:24px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.diagram-cover{display:flex;flex-direction:column;justify-content:space-between;padding:22px;color:#f7e8e0;background:#49344f}.diagram-label{font:8px monospace;letter-spacing:1px;opacity:.7}.diagram-chain{display:flex;align-items:center;justify-content:center;gap:7px}.diagram-chain b{font-size:11px;font-weight:400;padding:13px 9px;border:1px solid #b499a8;border-radius:4px}.diagram-chain i{font-style:normal;font-size:14px}.diagram-foot{font-size:10px;opacity:.8;border-top:1px dashed #b499a866;padding-top:12px}.diagram-05{background:#ecd9c7;color:#6c4850}.diagram-05 .diagram-chain b{border-color:#bc9395}.diagram-06{background:#d8ddd1;color:#3d5146}.diagram-06 .diagram-chain b{border-color:#879e8d}.diagram-06 .diagram-chain b:nth-child(2){border:0;font-size:20px}.reader>.diagram-cover{padding:30px}.reader .diagram-chain b{font-size:16px;padding:20px 16px}@media(max-width:760px){.diagram-cover{padding:16px}.diagram-chain{gap:4px}.diagram-chain b{font-size:8px;padding:10px 5px}.diagram-label{font-size:7px}.diagram-foot{font-size:9px}.reader .diagram-chain b{font-size:12px;padding:15px 8px}}
