:root{--green:#14543f;--green2:#1b6b50;--greenl:#e8f1ec;--greend:#0e3d2e;--wood:#b8791f;--woodl:#fdf3e3;--bg:#f7f5f0;--card:#fff;--ink:#22262a;--ink2:#5b6270;--ink3:#8a9099;--line:#e6e1d7;--warn:#a33a2b;--warnl:#fbeeeb;--r:10px;--sb:288px;--font:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Source Han Sans SC",sans-serif;--mono:"SFMono-Regular",Menlo,Consolas,"Liberation Mono",monospace}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--ink);font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:var(--green);text-decoration:none}button{font-family:inherit;cursor:pointer}.head{position:fixed;top:0;left:0;right:0;height:56px;z-index:60;background:#fffffff0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;padding:0 16px}.brand{display:flex;align-items:center;gap:8px;color:var(--green);font-weight:700;font-size:16px;letter-spacing:.3px;white-space:nowrap;min-width:0}.brand .b-long,.brand .b-short{overflow:hidden;text-overflow:ellipsis}.brand .b-short{display:none}.brand svg{width:22px;height:22px;flex:none}.menu-btn{display:none;background:none;border:1px solid var(--line);border-radius:8px;width:36px;height:36px;align-items:center;justify-content:center;color:var(--ink)}.menu-btn svg{width:18px;height:18px}.search{position:relative;margin-left:auto;width:260px}.search input{width:100%;height:36px;border:1px solid var(--line);border-radius:18px;padding:0 14px 0 34px;font-size:14px;background:#faf9f6;color:var(--ink);outline:none}.search input:focus{border-color:var(--green);background:#fff}.search .ic{position:absolute;left:12px;top:9px;width:16px;height:16px;color:var(--ink3)}.sres{position:absolute;top:42px;left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px #14281e1f;max-height:60vh;overflow:auto;display:none;padding:6px}.sres.on{display:block}.sres a{display:block;padding:8px 10px;border-radius:8px;font-size:14px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sres a:hover{background:var(--greenl)}.sres a span{color:var(--ink3);font-size:12px;margin-left:6px}.sres .empty{padding:12px 10px;color:var(--ink3);font-size:14px}.wrap{padding-top:56px;display:flex;min-height:100vh}.side{width:var(--sb);flex:none;position:sticky;top:56px;height:calc(100vh - 56px);height:calc(100dvh - 56px);overflow:hidden;border-right:1px solid var(--line);background:#fbfaf7}.side-in{height:100%;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0 10px 24px}.side-in::-webkit-scrollbar{width:10px}.side-in::-webkit-scrollbar-track{background:#f3f1ea}.side-in::-webkit-scrollbar-thumb{background:#cdc6b6;border-radius:5px;border:3px solid #f3f1ea}.side-in::-webkit-scrollbar-thumb:hover{background:#b0a894}main{flex:1;min-width:0}.doc{max-width:860px;margin:0 auto;padding:26px 24px 40px}.m-h,.s-h{display:flex;align-items:center;width:100%;background:none;border:0;text-align:left;color:var(--ink);gap:8px}.m-h{font-size:15px;font-weight:700;padding:9px 10px;border-radius:8px;letter-spacing:.3px}.m-h:hover{background:var(--greenl)}.m-h .arw,.s-h .arw{margin-left:auto;font-size:11px;color:var(--ink3);transition:transform .18s}.m.open>.m-h .arw,.s.open>.s-h .arw{transform:rotate(90deg)}.m-h .dot{width:7px;height:7px;border-radius:50%;background:var(--green);flex:none;opacity:.55}.m.open>.m-h{color:var(--green)}.secs,.pages{display:none;margin:2px 0 4px}.m.open>.secs,.s.open>.pages{display:block}.s-h{font-size:13.5px;padding:6px 10px 6px 25px;color:var(--ink2);border-radius:7px;line-height:1.5}.s-h:hover{background:#f1efe9;color:var(--ink)}.pages{padding:2px 0 6px}.pages a{display:block;font-size:13px;color:var(--ink2);padding:5px 10px 5px 38px;border-radius:7px;line-height:1.45;position:relative}.pages a:hover{background:#f1efe9;color:var(--ink)}.pages a.on{background:var(--greenl);color:var(--green);font-weight:600}.pages a.on:before{content:"";position:absolute;left:26px;top:12px;bottom:12px;width:3px;border-radius:2px;background:var(--green)}.pages a .done{color:var(--green);font-size:11px;margin-left:4px}.mtool{position:sticky;top:0;z-index:3;display:flex;gap:5px;margin:0 4px 12px;padding:14px 0 11px;background:#fbfaf7;border-bottom:1px solid var(--line)}.mtool button{flex:1;min-width:0;border:1px solid var(--line);background:#fff;border-radius:7px;padding:7px 2px;font-size:12px;color:var(--ink2);line-height:1.3}.mtool button:hover{border-color:var(--green);color:var(--green)}.mtool button.on{background:var(--green);border-color:var(--green);color:#fff;font-weight:600}.grp{margin:18px 4px 7px;font-size:11.5px;letter-spacing:1.2px;color:var(--ink3);font-weight:700;display:flex;align-items:center;gap:8px}.grp:first-child{margin-top:0}.grp:after{content:"";flex:1;height:1px;background:var(--line)}.terms .tf{width:100%;height:38px;border:1px solid var(--line);border-radius:8px;padding:0 12px;font-size:15px;margin:4px 0 10px;background:#fff;color:var(--ink);outline:none}.terms .tf:focus{border-color:var(--green)}.terms .hint{font-size:13px;color:var(--ink3);margin:0 0 14px}.tcat{border:1px solid var(--line);border-radius:10px;background:#fff;margin-bottom:10px;overflow:hidden}.tcat>summary{list-style:none;cursor:pointer;padding:11px 14px;font-weight:700;font-size:14.5px;color:var(--green);display:flex;align-items:center;gap:8px;background:#faf8f3}.tcat>summary::-webkit-details-marker{display:none}.tcat>summary .chev{font-size:11px;color:var(--ink3);transition:transform .18s}.tcat[open]>summary .chev{transform:rotate(90deg)}.tcat>summary .cnt{margin-left:auto;font-weight:400;font-size:12px;color:var(--ink3)}.tcat dl{margin:0;padding:4px 14px 10px}.titem{padding:9px 0;border-bottom:1px dashed var(--line)}.titem:last-child{border-bottom:0}.titem dt{font-weight:600;font-size:14.5px;color:var(--ink)}.titem dt em{font-style:normal;font-weight:400;color:var(--ink3);font-size:12.5px;margin-left:6px}.titem dd{margin:2px 0 0;font-size:14px;color:var(--ink2);line-height:1.7}.tnone{padding:14px;color:var(--ink3);font-size:14px}.crumb{font-size:12.5px;color:var(--ink3);margin-bottom:10px;display:flex;gap:6px;flex-wrap:wrap}.crumb b{font-weight:400;color:var(--ink2)}h1.title{font-size:27px;line-height:1.35;margin:0 0 10px;letter-spacing:.5px;color:var(--green)}.meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--line)}.lv{font-size:11.5px;padding:2px 8px;border-radius:20px;background:var(--greenl);color:var(--green);font-weight:600;letter-spacing:.5px}.lv.l3{background:var(--woodl);color:var(--wood)}.lv.l1{background:#f0f0ee;color:var(--ink2)}.donebtn{margin-left:auto;border:1px solid var(--line);background:#fff;border-radius:20px;padding:5px 14px;font-size:13px;color:var(--ink2);display:flex;align-items:center;gap:6px}.donebtn:hover{border-color:var(--green);color:var(--green)}.donebtn.on{background:var(--green);border-color:var(--green);color:#fff}.say{background:var(--greenl);border-left:5px solid var(--green);border-radius:0 10px 10px 0;padding:16px 18px;margin:0 0 22px}.say span{display:block;font-size:11.5px;letter-spacing:2px;color:var(--green);font-weight:700;margin-bottom:4px}.say p{margin:0;font-size:17.5px;line-height:1.75;color:var(--greend);font-weight:500}.p{margin:0 0 16px;color:#2f3439}.h3{font-size:17px;margin:30px 0 12px;padding-left:12px;border-left:4px solid var(--wood);line-height:1.3}.list{margin:0 0 18px;padding-left:22px}.list li{margin:6px 0;color:#2f3439}.step{list-style:none;margin:0 0 20px;padding:0;counter-reset:s}.step li{display:flex;gap:12px;padding:11px 14px;background:#fff;border:1px solid var(--line);border-radius:9px;margin-bottom:8px;align-items:flex-start}.step .n{flex:none;width:22px;height:22px;border-radius:50%;background:var(--green);color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;margin-top:3px}.note{border-radius:0 9px 9px 0;padding:12px 15px;margin:0 0 18px;border-left:4px solid}.note b{display:block;font-size:12px;letter-spacing:1px;margin-bottom:2px}.note p{margin:0;font-size:14.5px;line-height:1.75}.tip{background:#f2f8f4;border-color:var(--green2)}.tip b{color:var(--green2)}.warn{background:var(--warnl);border-color:var(--warn)}.warn b{color:var(--warn)}.do{background:var(--woodl);border:1px solid #eedfc4;border-radius:10px;padding:14px 16px;margin:0 0 18px}.do>b{display:block;font-size:12px;letter-spacing:2px;color:var(--wood);margin-bottom:6px}.do ul{list-style:none;margin:0;padding:0}.do li{margin:6px 0}.do label{display:flex;gap:9px;align-items:flex-start;font-size:14.5px;line-height:1.65;cursor:pointer}.do input{margin-top:5px;accent-color:var(--green);width:15px;height:15px;flex:none}.do input:checked+span{text-decoration:line-through;color:var(--ink3)}.ok{border:1.5px dashed #c9c2b2;border-radius:10px;padding:13px 16px;margin:0 0 18px;background:#fcfbf7}.ok>b{display:block;font-size:12px;letter-spacing:2px;color:var(--ink2);margin-bottom:4px}.ok p{margin:0;font-size:14.5px}.code{background:#1d2420;color:#d8e8dd;border-radius:9px;padding:14px 16px;overflow:auto;margin:0 0 18px;font-family:var(--mono);font-size:13.5px;line-height:1.7}.quote{margin:0 0 18px;padding:12px 16px;background:#fff;border:1px solid var(--line);border-radius:9px;font-size:15px;color:#33403a;line-height:1.85;white-space:pre-wrap}.quote:before{content:"“";font-size:26px;color:var(--wood);line-height:0;position:relative;top:8px;margin-right:4px}.tw{overflow-x:auto;margin:0 0 20px;border:1px solid var(--line);border-radius:10px;background:#fff}table{border-collapse:collapse;width:100%;font-size:14px;min-width:520px}th,td{text-align:left;padding:10px 13px;border-bottom:1px solid #efece4;vertical-align:top;line-height:1.65}th{background:#f6f4ee;font-weight:600;color:var(--green);white-space:nowrap;font-size:13px}td:first-child,th:first-child{min-width:4.5em}tr:last-child td{border-bottom:0}.phase{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 20px;margin:0 0 20px}.phase .tag{display:inline-block;background:var(--green);color:#fff;font-size:12px;padding:2px 10px;border-radius:20px;margin-bottom:8px}.phase h3{margin:0 0 4px;font-size:18px}.phase .sub{color:var(--ink3);font-size:13px;margin-bottom:14px}.phase .goal{background:var(--greenl);border-radius:8px;padding:10px 13px;font-size:14.5px;margin-bottom:14px}.pager{display:flex;gap:12px;max-width:860px;margin:10px auto 0;padding:0 24px 40px}.pager a{flex:1;border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px 15px;font-size:13.5px;color:var(--ink2);min-width:0}.pager a:hover{border-color:var(--green);color:var(--green)}.pager a.next{text-align:right}.pager a small{display:block;font-size:11.5px;color:var(--ink3);margin-bottom:2px}.pager a b{font-weight:600;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pager a.dis{visibility:hidden}.pbar{height:5px;background:#eceadf;border-radius:3px;overflow:hidden;margin:8px 0 4px}.pbar i{display:block;height:100%;background:var(--green);border-radius:3px;transition:width .4s}.pnum{font-size:12px;color:var(--ink3)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:0 0 22px}.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:15px 16px;display:block;color:var(--ink)}.card:hover{border-color:var(--green);box-shadow:0 6px 18px #143c2812}.card b{display:block;font-size:15px;margin-bottom:3px;color:var(--green)}.card span{font-size:13px;color:var(--ink3);line-height:1.6}.card .bar{height:4px;background:#eeece5;border-radius:2px;margin-top:10px;overflow:hidden}.card .bar i{display:block;height:100%;background:var(--wood);border-radius:2px}.site-foot{max-width:860px;margin:0 auto;padding:0 24px 30px;font-size:12.5px;color:var(--ink3);line-height:1.75}.site-foot a{color:var(--green)}.site-foot a:hover{text-decoration:underline}.simple{max-width:720px}.simple h1{font-size:24px;line-height:1.4;margin:0 0 14px;color:var(--green)}.simple h2{font-size:17px;margin:26px 0 10px;padding-left:12px;border-left:4px solid var(--wood);line-height:1.3}.simple p{margin:0 0 14px;color:#2f3439}.simple ul{margin:0 0 16px;padding-left:22px}.simple li{margin:5px 0;color:#2f3439}.back-link{display:inline-block;margin-top:18px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 14px;font-size:14px}.back-link:hover{border-color:var(--green)}.nf{padding:40px 0}.nf b{display:block;font-size:20px;color:var(--green);margin-bottom:6px}.nf p{margin:0 0 18px;color:var(--ink2)}.mask{display:none;position:fixed;inset:56px 0 0;background:#14191659;z-index:50}.mask.on{display:block}html.lock,body.lock{overflow:hidden}@media(max-width:1023px){.menu-btn{display:flex}.brand{font-size:14px;flex:0 1 auto}.brand .b-long{display:none}.brand .b-short{display:block}.search{width:auto;flex:1;min-width:88px;max-width:220px}.side{position:fixed;top:56px;bottom:0;left:0;height:auto;z-index:55;transform:translate(-104%);transition:transform .22s ease;box-shadow:8px 0 30px #00000014;width:86%;max-width:340px}.side.on{transform:none}.side-in{height:100%;padding-bottom:60px}.mtool{padding:12px 0 10px}.mtool button{padding:11px 2px;font-size:13px}.doc{padding:20px 16px 30px}h1.title{font-size:23px}.say p{font-size:16.5px}body{font-size:16px}.pager{padding:14px 16px 30px;position:sticky;bottom:0;background:var(--bg);box-shadow:0 -10px 14px -10px #1e231e2e}.pager a{padding:10px 12px;background:#fff}.pager a b{font-size:13px}table{min-width:560px}td:nth-child(2),th:nth-child(2){min-width:80px}.search input{font-size:16px}.site-foot{padding:0 16px 24px}}@media print{.head,.side,.pager,.mask,.donebtn,.site-foot{display:none!important}.wrap{padding-top:0}.doc{max-width:none;padding:0}body{background:#fff}.card,.do,.note,.phase{break-inside:avoid}}
