*{box-sizing:border-box}body{margin:0;background:#f5f6f2;color:#192b27;font:15px/1.5 system-ui,sans-serif}main{max-width:1200px;margin:auto;padding:30px}header{display:flex;gap:12px;align-items:center;border-bottom:1px solid #dce3db;padding-bottom:24px}.logo{background:#1c5140;color:white;padding:5px 12px;border-radius:9px;font-size:22px}.badge{margin-left:auto;font-size:10px;letter-spacing:2px;color:#5c7266}.intro{padding:45px 0 25px;max-width:700px}.eyebrow,.step{font-size:11px;letter-spacing:2px;color:#39745b;font-weight:700}h1{font-size:clamp(35px,5vw,58px);line-height:1.08;letter-spacing:-2px;margin:15px 0}h2{font-size:23px;margin:9px 0}p{color:#617068}.card{background:white;border:1px solid #dce3db;border-radius:16px;padding:28px;margin:20px 0;box-shadow:0 5px 25px #163e2610}label{display:block;font-size:13px;font-weight:600;margin:18px 0}input,select{font:inherit;border:1px solid #cdd8cf;padding:9px;border-radius:6px;color:#203b30;background:white}label input{display:block;margin-top:8px;width:min(100%,420px)}.upload{padding:22px;background:#f4f8f1;border:1px dashed #9db399;border-radius:8px}button{font:inherit;padding:10px 17px;border:0;border-radius:7px;background:#245c43;color:white;cursor:pointer}button:disabled{opacity:.45;cursor:default}.secondary{background:#eef2ec;color:#274334}.actions,.heading{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.heading h2{margin-right:auto}.small,footer{font-size:12px}.totals{display:flex;gap:25px;flex-wrap:wrap;margin:25px 0}.totals div{background:#f4f7f1;border-radius:9px;padding:16px 24px;min-width:170px}.totals strong{display:block;font-size:25px}.scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:#607064;font-weight:500}td,th{padding:11px 5px;border-bottom:1px solid #e6ebe4}td input{width:130px}td:nth-child(3) input{width:260px}td select{width:140px}.warn{padding:12px;background:#fff4da;border-radius:7px;margin:8px 0;color:#75531d}footer{padding:20px 0;color:#748174}#status{font-weight:600}#empty{text-align:center;padding:25px}@media(max-width:600px){main{padding:16px}.card{padding:18px}.badge{display:none}}
