:root{--ink:#172d2a;--muted:#586962;--accent:#16664e;--paper:#fbfaf6;--line:#d6ded4;--wash:#eef2e9;--white:#fff;--serif:Georgia,'Noto Serif SC','Songti SC',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.75 system-ui,-apple-system,'PingFang SC','Microsoft YaHei',sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid var(--accent);background:var(--accent);color:#fff;padding:13px 22px;border-radius:6px;cursor:pointer;font-weight:600}.button:hover,button:hover{background:#114e3c;text-decoration:none}button:disabled{opacity:.45;cursor:default}button.secondary{background:transparent;color:var(--accent)}:focus-visible{outline:3px solid #c77b25;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1{font-size:46px;line-height:1.3;letter-spacing:-1.2px}h2{font-size:26px;line-height:1.45}h3{font-size:20px}p{margin-bottom:20px}main{min-height:65vh}.site-header{max-width:1220px;margin:auto;min-height:100px;padding:20px 34px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:10px;font-size:25px;letter-spacing:-.8px;font-weight:800;color:var(--ink)}.brand:hover{text-decoration:none}.brand-mark{display:grid;place-items:center;color:#fff;background:var(--accent);width:35px;height:35px;border-radius:7px;font-family:var(--serif);font-style:italic}.brand-note{font-size:12px;font-weight:500;letter-spacing:0;border-left:1px solid var(--line);padding-left:12px;margin-left:8px;color:var(--muted)}nav{display:flex;align-items:center;gap:28px}nav a{color:var(--ink);font-size:14px}.nav-search{border:1px solid var(--line);padding:6px 16px;border-radius:5px}.skip{position:absolute;left:20px;top:-100px;padding:10px;background:var(--white);z-index:100}.skip:focus{top:8px}.hero{max-width:1220px;margin:auto;padding:80px 34px 70px;display:grid;grid-template-columns:1.15fr 1fr;gap:65px;align-items:center}.eyebrow{font-size:12px;font-weight:650;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent);margin-bottom:18px}.hero h1{font-size:68px;letter-spacing:-2px;line-height:1.23;margin-bottom:28px;font-weight:750}.hero h1 em{font-style:normal;color:var(--accent)}.hero-copy{font-size:18px;line-height:1.9;max-width:450px;color:var(--muted);margin-bottom:30px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.text-link{font-size:14px;font-weight:600}.hero-note{font-size:12px;color:var(--muted);margin-top:22px}.hero-card{border:1px solid #becdbd;background:#f1f4eb;padding:28px 34px;border-radius:12px;box-shadow:12px 12px 0 #e7ecdf;transform:rotate(1deg)}.card-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:1px;border-bottom:1px solid #cdd8c7;padding-bottom:15px;margin-bottom:26px}.dot{width:8px;height:8px;border-radius:50%;background:#8baa75}.muted{color:var(--muted);font-size:13px;margin-bottom:8px}.old-brief{font-family:var(--serif);font-size:27px;margin-bottom:25px}.hero-card hr{border:0;border-top:1px dashed #b5c4ae;margin-bottom:24px}.note-list{list-style:none;padding:0;margin:14px 0 24px}.note-list li{padding:10px 0;font-size:15px}.note-list span{font-size:11px;margin-right:14px;color:var(--accent)}.note-bottom{font-size:13px;color:var(--accent);margin:0;border-top:1px solid #cdd8c7;padding-top:18px}.section{max-width:1220px;padding:48px 34px;margin:auto}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:28px}.section-heading h2{margin-bottom:0}.section-heading p:last-child{margin:12px 0 0;color:var(--muted)}.section-heading a{white-space:nowrap;font-size:14px}.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.steps>div{padding:25px}.steps>div:first-child{padding-left:0}.steps>div+div{border-left:1px solid var(--line)}.steps b{font-size:15px;color:var(--accent)}.steps p{font-size:14px;color:var(--muted);margin:12px 0 0}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.guide-card{position:relative;padding:28px 30px 40px;border:1px solid var(--line);border-radius:8px;display:block;color:var(--ink);background:var(--white);transition:border-color .15s,transform .15s}.guide-card:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-2px)}.card-meta{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);margin-bottom:18px}.tag{font-size:11px;background:var(--wash);padding:3px 9px;border-radius:4px;color:var(--accent)}.guide-card h2{font-size:21px;max-width:430px;margin:14px 0}.guide-card p{color:var(--muted);font-size:14px;margin-bottom:0;max-width:95%}.card-arrow{position:absolute;bottom:14px;right:24px;color:var(--accent);font-size:20px}.tool-band{margin-top:35px;background:var(--wash);border-radius:12px}.tool-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.tool-card{display:flex;flex-direction:column;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:7px;padding:25px}.tool-card:hover{border-color:var(--accent);text-decoration:none}.tool-number{font-family:var(--serif);font-size:32px;font-style:italic;color:var(--accent);margin-bottom:20px}.tool-card h2{font-size:19px}.tool-card p{font-size:13px;color:var(--muted);flex:1}.tool-card .text-link{color:var(--accent)}.closing{max-width:800px;margin:65px auto;padding:20px 34px;text-align:center}.closing p{color:var(--muted)}.site-footer{max-width:1220px;margin:70px auto 0;border-top:1px solid var(--line);padding:35px 34px 40px;display:flex;justify-content:space-between;gap:30px}.site-footer p{font-size:13px;color:var(--muted);margin:10px 0}.site-footer nav{flex-wrap:wrap;align-content:flex-start;max-width:390px;gap:14px 25px;padding-top:10px}.small{font-size:12px!important;color:var(--muted)}.page-intro{max-width:950px;margin:0 auto;padding:60px 34px 45px}.page-intro h1{max-width:860px;margin-bottom:22px}.page-intro>p:not(.eyebrow):not(.byline){font-size:18px;color:var(--muted);max-width:750px}.back{display:block;font-size:13px;margin-bottom:26px}.byline{font-size:12px;color:var(--muted)}.reading-layout{max-width:1160px;display:grid;grid-template-columns:230px minmax(0,1fr);gap:65px;margin:0 auto;padding:0 34px}.toc{align-self:start;position:sticky;top:25px;border-top:2px solid var(--accent);padding-top:20px}.toc h2{font-size:13px}.toc a{display:block;font-size:12px;margin:13px 0;color:var(--muted)}.toc .toc-tool{color:var(--accent);font-weight:600;border-top:1px solid var(--line);padding-top:15px}.prose{font-size:16px;line-height:1.95;min-width:0}.prose h2{margin:38px 0 17px;font-size:25px}.prose .lead{font-size:19px;color:#354c42;line-height:1.9}.prose li{padding-left:3px;margin-bottom:8px}.prose blockquote{margin:24px 0;padding:18px 24px;background:var(--wash);border-left:3px solid #81a27e;border-radius:0 5px 5px 0}.prose pre{background:#183d31;color:#edf3e8;border-radius:7px;padding:22px;font:13px/1.9 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.prose table{font-size:13px;display:block;overflow-x:auto;width:100%;border-collapse:collapse;margin:25px 0}.prose th,.prose td{border:1px solid var(--line);padding:12px;min-width:95px;text-align:left;vertical-align:top}.prose th{background:var(--wash)}.article-next{margin-top:45px;padding:25px;background:var(--wash);border-radius:8px}.article-next h2{margin-top:0}.correction{font-size:13px;margin-top:25px}.standalone{max-width:830px;margin:0 auto;padding:0 34px 35px}.compact{max-width:830px}.top-tight{padding-top:0}.workspace-wrap{max-width:1140px;margin:auto;padding:0 34px;display:grid;grid-template-columns:minmax(0,760px) minmax(220px,1fr);gap:35px;align-items:start}.workspace{background:var(--white);border:1px solid var(--line);padding:30px;border-radius:9px;min-width:0}.workspace h2{font-size:21px}.workspace p,.usage-note p{font-size:14px;color:var(--muted)}label{display:block;font-weight:600;font-size:14px;margin:18px 0 7px}input:not([type=checkbox]):not([type=hidden]),textarea{display:block;width:100%;border:1px solid #aebcb2;background:var(--paper);color:var(--ink);border-radius:5px;padding:11px 12px;font-size:15px;min-width:0}textarea{resize:vertical;line-height:1.7}.workspace button{margin-top:20px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.check-line{display:flex;align-items:baseline;gap:10px;font-weight:400;font-size:14px}.check-line input{flex-shrink:0}.table-scroll{overflow-x:auto}.workspace table{border-collapse:collapse;width:100%;min-width:510px;font-size:12px;margin-top:25px}.workspace td,.workspace th{padding:9px;border-bottom:1px solid var(--line);text-align:left}.workspace table input{min-width:66px!important}.workspace table th:first-child{width:40%}.result{margin-top:30px;padding-top:25px;border-top:1px solid var(--line)}.result textarea,.code-input{font-family:ui-monospace,Consolas,monospace;font-size:13px}.usage-note{padding:23px;background:var(--wash);border-radius:7px}.usage-note h2{font-size:18px}.usage-note>a{font-size:15px;display:block;margin-bottom:20px}.contact-form{padding:25px;background:var(--white);border:1px solid var(--line);border-radius:7px}.contact-form button{margin-top:15px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-notice{background:var(--wash);padding:20px;border-left:3px solid var(--accent);margin-bottom:25px}.search-form{max-width:600px}.search-form button{margin-top:15px}a,p,td{overflow-wrap:anywhere}@media(max-width:1000px){.brand-note{display:none}.hero{gap:30px}.hero h1{font-size:56px}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-layout{gap:35px;grid-template-columns:190px minmax(0,1fr)}.workspace-wrap{grid-template-columns:minmax(0,1fr)}.usage-note{max-width:none}}@media(max-width:700px){h1,.page-intro h1{font-size:33px;letter-spacing:-.7px}.site-header{padding:18px 20px;flex-wrap:wrap;gap:14px;min-height:auto}.brand{font-size:22px}.site-header nav{gap:20px;width:100%;justify-content:space-between}.site-header nav a{font-size:13px}.hero{display:block;padding:45px 22px}.hero h1{font-size:49px}.hero-copy{font-size:16px}.hero-card{margin:40px 6px 10px 0;padding:24px;transform:none;box-shadow:6px 6px 0 #e7ecdf}.section{padding:30px 22px}.section-heading{display:block}.section-heading>a{display:block;margin-top:15px}.section-heading h2{font-size:24px}.steps{grid-template-columns:1fr}.steps>div,.steps>div:first-child{padding:20px 0}.steps>div+div{border-left:0;border-top:1px solid var(--line)}.guide-grid,.tool-grid{grid-template-columns:1fr}.guide-card{padding:24px 23px 35px}.guide-card h2{font-size:20px}.tool-band{margin:20px 10px;border-radius:9px}.tool-card{padding:23px}.tool-number{margin-bottom:8px}.closing{margin:35px auto}.site-footer{padding:28px 22px;margin-top:35px;display:block}.site-footer nav{padding-top:20px}.page-intro{padding:40px 22px 25px}.page-intro>p:not(.eyebrow):not(.byline){font-size:16px}.reading-layout{display:block;padding:0 22px}.toc{position:static;margin-bottom:30px}.toc a{font-size:13px}.prose{font-size:15px}.prose h2{font-size:22px}.prose .lead{font-size:17px}.prose pre{padding:16px}.standalone{padding:0 22px}.workspace-wrap{padding:0 15px}.workspace{padding:22px 18px}.field-grid{grid-template-columns:1fr}.contact-form{padding:18px}.actions{gap:18px}.button,button{font-size:14px;padding:12px 18px}.top-tight{padding-top:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.guide-card{transition:none}}

@media(max-width:700px){.workspace table{min-width:0;display:block}.workspace table thead{display:none}.workspace table tbody{display:block}.workspace table tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:14px 0;border-bottom:1px solid var(--line)}.workspace table th:first-child{grid-column:1/-1;width:auto;padding:0;border:0;font-size:13px}.workspace table td{padding:0;border:0;min-width:0}.workspace table td:before{content:attr(data-label);display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.workspace table input{min-width:0!important;width:100%;padding:9px}.workspace .table-scroll{overflow:visible}}
.path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.path-card{padding:25px;border:1px solid var(--line);border-radius:8px;background:var(--wash)}.path-card h2{font-size:21px;margin:15px 0}.path-card p,.path-card li{font-size:14px}.path-card ol{padding-left:20px}.path-card li{margin-bottom:12px}.path-done{border-top:1px solid var(--line);padding-top:15px;color:var(--muted);margin-bottom:0}.exercise{margin-top:35px;padding:25px;border:1px solid #a9c0a6;border-radius:8px;background:var(--wash)}.exercise h2{margin-top:0}.exercise details,.workspace details{margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}summary{cursor:pointer;font-weight:600}details[open]>summary{margin-bottom:16px}.evidence-row{border:1px solid var(--line);padding:18px;margin:22px 0;border-radius:7px;min-width:0}.evidence-row legend{font-weight:600}.evidence-row select{display:block;width:100%;padding:10px;font:inherit;border:1px solid #aebcb2;border-radius:5px;background:var(--paper);color:var(--ink)}.workspace textarea[hidden]{display:none}.workspace details h3{font-size:16px;margin-top:20px}@media(max-width:900px){.path-grid{grid-template-columns:1fr}.site-header nav{flex-wrap:wrap}}@media(max-width:700px){.site-header nav{gap:12px}.site-header nav a{font-size:12px}.exercise{padding:18px}.evidence-row{padding:14px}}
.workfile-panel{padding:18px;border:1px solid var(--line);border-radius:7px;background:var(--wash);margin-bottom:28px}.workspace .workfile-panel h2{font-size:17px}.workspace .workfile-panel button{margin-top:8px;font-size:13px}.workfile-panel input[type=file]{font-size:12px;max-width:100%}.lab-result{padding-bottom:20px;border-bottom:1px solid var(--line)}.lab-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;min-width:0}.lab-columns>div{min-width:0}.lab-columns h3{font-size:15px}.lab-columns pre{font-size:12px;margin:0}.standalone img{max-width:100%;height:auto}@media(max-width:700px){.lab-columns{grid-template-columns:1fr}}
