:root{--ink:#173a31;--muted:#64736c;--paper:#f8f8f2;--line:#dce2d8;--accent:#d9ee99;--white:#fff;--amber:#a15817;--red:#a3342a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}button,a,input,select,summary{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}[hidden]{display:none!important}.shell{width:min(1200px,calc(100% - 64px));margin:auto}.nav{height:92px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:9px;font-weight:760;font-size:21px;letter-spacing:-.7px;text-decoration:none}.brand span{font-weight:400}.nav nav{display:flex;gap:32px;align-items:center;font-size:14px}.nav nav a{text-decoration:none}.nav-cta{border-bottom:1px solid var(--ink);padding-bottom:5px}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center;padding-block:70px 60px}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:750;margin:0 0 16px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#698743;margin-right:8px}h1{font-size:clamp(38px,4.4vw,60px);line-height:1.1;letter-spacing:-2.5px;font-weight:650;margin:0 0 24px}h1 em{font-style:normal;color:#688345}h2{font-size:30px;line-height:1.2;letter-spacing:-1px;margin:0 0 14px;font-weight:620}h3{font-size:17px;margin:0}.intro{max-width:520px;font-size:17px;color:var(--muted);margin:0 0 28px}.actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;gap:20px;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:600;text-decoration:none;border:1px solid transparent;min-height:46px}.primary{background:var(--ink);color:white}.primary:hover{background:#255547}.ghost{background:transparent;border-color:var(--line);color:var(--ink)}.ghost:hover{background:#eff2e9}.trust{font-size:12px;color:var(--muted);margin-top:18px}.preview{background:#ecf0e4;border:1px solid #dce2d1;border-radius:18px;padding:28px;box-shadow:0 14px 40px #173a3108;transform:rotate(1deg)}.preview-top{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1px;margin-bottom:24px}.badge{background:#fff9;border-radius:30px;padding:4px 10px;letter-spacing:0}.preview h2{font-size:25px;margin-bottom:7px}.preview p{font-size:13px;color:var(--muted);margin:0}.pack-pair{display:grid;grid-template-columns:1fr 1fr;margin:24px 0;background:#fff9;border-radius:10px}.pack-pair>div{padding:20px}.pack-pair>div+div{border-left:1px solid var(--line)}.pack-pair span{font-size:10px;color:var(--muted);letter-spacing:1px}.pack-pair strong{display:block;font-size:38px;font-weight:550;letter-spacing:-1px}.pack-pair small{font-size:13px;font-weight:400;letter-spacing:0}.pack-pair b{font-size:13px;font-weight:500}.blocks{font-size:22px;letter-spacing:1px;margin:5px 0 15px;color:#7b9764}.blocks.new{color:#b7803b}.preview-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #d4ddcb;padding-top:17px;font-size:13px}.preview-bottom strong{font-size:26px;color:var(--amber)}.preview .tiny{font-size:10px;margin-top:16px}.steps{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);padding-block:24px;gap:30px}.steps>div{display:flex;gap:16px;align-items:flex-start}.steps span{font-size:12px;background:#e9eee1;padding:5px 8px;border-radius:5px;margin-top:3px}.steps p{font-size:12px;color:var(--muted);margin:0}.steps b{display:block;color:var(--ink);font-size:14px;margin-bottom:3px}.workspace{padding-top:70px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.text-button{color:var(--muted);background:none;border:0;font-size:13px;text-decoration:underline}.muted{color:var(--muted);font-size:13px}.file-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:26px}.file-card{border:1px solid var(--line);background:white;border-radius:12px;padding:24px;min-width:0}.file-heading{display:flex;gap:12px;align-items:center;margin-bottom:20px}.number{background:#edf1e6;border-radius:50%;height:28px;width:28px;text-align:center;font-size:13px;line-height:28px}.file-tag{margin-left:auto;font-size:10px;color:var(--muted);letter-spacing:1.5px}.upload{position:relative;border:1px dashed #acb9a7;border-radius:8px;display:flex;min-height:130px;flex-direction:column;align-items:center;justify-content:center;background:#fafbf7;cursor:pointer;padding:16px;text-align:center}.upload>span{font-size:25px;line-height:1;margin-bottom:9px}.upload b{font-size:14px}.upload small{color:var(--muted);font-size:11px;margin-top:5px}.upload input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.upload:focus-within{outline:2px solid var(--ink);outline-offset:3px}.file-card>a{font-size:12px;color:#466c4e}.file-name{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.mapping{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.mapping:empty{display:none}label{font-size:12px;font-weight:550}input:not([type=checkbox]):not([type=file]),select{width:100%;display:block;margin-top:5px;padding:10px 11px;border:1px solid #cbd5c8;border-radius:6px;background:#fff;color:var(--ink);font-size:13px;min-width:0}input[type=checkbox]{accent-color:var(--ink);height:17px;width:17px;flex-shrink:0}.settings{display:grid;grid-template-columns:140px 140px 200px 1fr;gap:20px;background:#edf1e6;padding:22px;border-radius:10px;margin-top:20px;align-items:center}.settings p{font-size:11px;color:var(--muted);margin:0}.confirm{display:flex;align-items:center;gap:12px;margin:24px 0;font-weight:400}.run-row{display:flex;align-items:center;gap:20px}.run-row>span{font-size:12px;color:var(--muted)}.error{color:#8b2c24;background:#ffebe7;border:1px solid #e9c4bd;padding:12px 16px;border-radius:8px;font-size:13px}#results{border-top:1px solid var(--line);margin-top:36px;padding-top:32px}.metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:22px 0}.metric{border:1px solid var(--line);border-radius:8px;background:white;padding:18px}.metric strong{display:block;font-size:29px;line-height:1.2;font-weight:600}.metric span{font-size:11px;color:var(--muted)}.impact{background:#e7efdb;border-radius:8px;padding:18px;margin-bottom:20px;font-size:13px}.impact p{margin:4px 0;font-size:12px}.filters{display:flex;gap:20px;align-items:end;margin:24px 0 12px}.filters label:first-child{width:250px}.search-label{width:270px}.filters>span{margin-left:auto;white-space:nowrap;padding-bottom:9px}.tiny{font-size:11px;color:var(--muted)}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:10px;background:white}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}th{text-align:left;background:#edf1e6;font-size:10px;letter-spacing:.5px;text-transform:uppercase;font-weight:650;padding:13px 14px}td{padding:17px 14px;border-top:1px solid #e7ebe3;vertical-align:top}td b{display:block;font-size:13px}td small{display:block;color:var(--muted);max-width:220px;white-space:normal;margin-top:3px}.pill{font-size:10px;padding:4px 7px;border-radius:4px;background:#edf1e6;display:inline-block}.pill.increase,.pill.review{background:#fcf0df;color:#955017}.pill.decrease{background:#e4f1e4;color:#397445}.pill.missing{background:#f3e7e7;color:#94453c}.notes{max-width:250px;white-space:normal}details>summary{cursor:pointer}td details{margin-top:8px}td pre{white-space:pre-wrap;font:11px/1.5 monospace;max-width:320px;overflow-wrap:anywhere;background:#f3f5ef;padding:10px}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:14px;font-size:12px}.feedback{display:flex;align-items:center;gap:24px;justify-content:space-between;border:1px solid var(--line);border-radius:10px;padding:24px;margin-top:30px}.feedback p{font-size:12px;color:var(--muted);max-width:650px;margin:6px 0}.feedback>a{white-space:nowrap}.faq{padding-block:80px;display:grid;grid-template-columns:1fr 1.25fr;gap:70px}.faq>a,.faq a{font-size:13px}.faq details{border-bottom:1px solid var(--line);padding:16px 0}.faq details:first-child{padding-top:0}.faq summary{font-size:14px;font-weight:600}.faq p{font-size:13px;color:var(--muted);max-width:600px}footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-block:25px;font-size:11px;color:var(--muted)}footer .brand{font-size:16px;color:var(--ink)}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}.guide{max-width:780px;padding-block:55px}.guide h1{font-size:44px}.guide h2{font-size:24px;margin-top:36px}.guide p,.guide li{color:#4b6256}.guide code{font-size:13px;background:#e8eedd;padding:3px 6px}.guide .button{margin-top:20px}
@media(max-width:900px){.hero{gap:30px;grid-template-columns:1fr 1fr}.settings{grid-template-columns:repeat(3,1fr)}.settings p{grid-column:1/-1}.hero h1{font-size:43px}.preview{padding:20px}.pack-pair>div{padding:15px}.faq{gap:35px}.metrics{gap:6px}.metric{padding:12px}}
@media(max-width:640px){.shell{width:calc(100% - 32px)}.nav{height:74px}.brand{font-size:18px}.nav nav{gap:14px;font-size:12px}.nav nav>a:first-child{display:none}.hero{grid-template-columns:1fr;padding-block:40px 32px;gap:32px}.hero h1{font-size:43px;letter-spacing:-1.8px}.intro{font-size:15px}.preview{transform:none}.steps{grid-template-columns:1fr;gap:18px;padding-block:22px}.workspace{padding-top:40px}.section-head{align-items:flex-start;flex-wrap:wrap}h2{font-size:26px}.file-grid{grid-template-columns:1fr}.file-card{padding:18px}.settings{grid-template-columns:1fr 1fr;padding:16px;gap:14px}.settings label:nth-child(3){grid-column:1/-1}.confirm{align-items:flex-start}.run-row{align-items:flex-start;flex-direction:column;gap:10px}.metrics{grid-template-columns:repeat(2,1fr)}.metric:last-child{grid-column:1/-1}.filters{flex-wrap:wrap;gap:12px}.filters label:first-child,.search-label{width:100%}.filters>span{margin-left:0}.feedback{flex-direction:column;align-items:flex-start;padding:18px}.faq{grid-template-columns:1fr;gap:28px;padding-block:50px}footer{flex-wrap:wrap;gap:12px}footer span{width:100%;order:3}.guide h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
