:root{--ink:#17201c;--muted:#637069;--line:#d9dfdc;--paper:#f5f7f5;--white:#fff;--green:#146c43;--green-dark:#0c4d2e;--yellow:#f4c84a}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}main{min-height:100vh}.site-header{background:var(--white);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px max(24px,50vw - 590px);display:flex}.brand{color:var(--ink);align-items:center;gap:9px;font-size:19px;font-weight:800;text-decoration:none;display:flex}.brand-mark{background:var(--green);color:var(--white);justify-content:center;align-items:center;width:30px;height:30px;display:flex}.header-note,.required-note{color:var(--muted);font-size:13px}.optional-label{color:var(--muted);font-weight:500}.intro{max-width:1180px;margin:0 auto;padding:58px 0 38px}.eyebrow,.step-label{color:var(--green);letter-spacing:1.2px;text-transform:uppercase;margin:0 0 9px;font-size:12px;font-weight:800}.intro h1{letter-spacing:0;max-width:700px;margin:0;font-size:clamp(40px,6vw,68px);line-height:1}.intro>p:last-child{color:var(--muted);max-width:610px;margin:20px 0 0;font-size:17px;line-height:1.6}.workspace{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);max-width:1180px;margin:0 auto;display:grid}form,.results{min-width:0;padding:38px}form{background:var(--white);border-left:1px solid var(--line)}.form-heading,.result-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}h2{margin:0 0 26px;font-size:24px;line-height:1.25}.upload{color:var(--ink);cursor:pointer;background:#f8faf9;border:1px dashed #aebbb4;justify-content:center;align-items:center;height:205px;margin-bottom:24px;display:flex;overflow:hidden}.upload input{display:none}.upload img{object-fit:contain;width:100%;height:100%}.upload-content{text-align:center;flex-direction:column;align-items:center;gap:7px;display:flex}.upload-icon{background:var(--green);color:var(--white);justify-content:center;align-items:center;width:38px;height:38px;margin-bottom:4px;font-size:24px;display:flex}.upload small{color:var(--muted)}.field-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}label{color:#3d4943;font-size:13px;font-weight:700;display:block}input,select,textarea{background:var(--white);color:var(--ink);border:1px solid #bdc7c2;border-radius:3px;outline:none;width:100%;margin-top:7px;padding:12px}textarea{resize:vertical;margin-bottom:20px}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 2px #d4e8dc}button{background:var(--green);color:var(--white);cursor:pointer;border:0;border-radius:3px;width:100%;padding:14px 20px;font-weight:800}button:hover{background:var(--green-dark)}button:disabled{cursor:wait;opacity:.65}.error{color:#9b2c24;background:#fff0ef;margin:14px 0 0;padding:12px;font-size:14px}.results{border-left:1px solid var(--line);border-right:1px solid var(--line);flex-direction:column;display:flex}.empty-result{text-align:center;margin:auto 0;padding:70px 15px}.empty-result span{color:var(--green);opacity:.18;font-size:58px;font-weight:800}.empty-result h2{margin:-10px 0 12px}.empty-result p,.disclaimer{color:var(--muted);font-size:13px;line-height:1.6}.confidence{color:var(--green-dark);white-space:nowrap;background:#e0eee6;padding:7px 9px;font-size:12px;font-weight:800}.confidence.low{color:#84382e;background:#f5e4df}.confidence.medium{color:#725813;background:#fff0c7}.result-section{border-top:1px solid var(--line);padding:22px 0}.result-section h3{margin:0 0 13px;font-size:14px}.result-section ul,.result-section ol{color:#425047;margin:0;padding-left:20px;font-size:14px;line-height:1.55}.result-section li+li{margin-top:9px}.disclaimer{border-top:1px solid var(--line);margin:auto 0 0;padding-top:18px}@media (max-width:760px){.site-header{padding:14px 18px}.header-note{display:none}.intro{padding:40px 20px 28px}.intro h1{font-size:42px}.workspace{display:block}form,.results{border-left:0;border-right:0;padding:26px 20px}.field-grid{grid-template-columns:1fr}.results{border-top:1px solid var(--line);min-height:360px}}
