:root{--navy:#10263f;--ink:#1c3048;--muted:#586a80;--line:#dee6ed;--paper:#f6f8fb;--mint:#dff7e7;--accent:#11745f;--accent-dark:#0b5445;--blue:#3b67cf;--warn:#a55b16;--white:#fff;--shadow:0 24px 68px rgba(21,49,73,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--paper);color:var(--ink);line-height:1.57}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.container{width:min(1160px,calc(100% - 48px));margin:auto}.topbar{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.93);border-bottom:1px solid rgba(215,225,234,.9);backdrop-filter:blur(14px)}.nav{display:flex;align-items:center;justify-content:space-between;height:73px;gap:22px}.brand{font-weight:800;font-size:21px;letter-spacing:-.8px;display:flex;align-items:center;gap:10px}.brand-mark{display:grid;place-items:center;background:var(--navy);border-radius:11px;color:white;width:33px;height:33px;font-weight:900;font-size:21px}.navlinks{display:flex;align-items:center;gap:26px;font-size:13px;color:#556679;font-weight:650}.navlinks a:hover{color:var(--accent)}.pill{background:#e8f7ef;border:1px solid #b6dec7;color:#176347;border-radius:999px;padding:7px 12px;font-size:11px;font-weight:800;letter-spacing:.025em;text-transform:uppercase;display:inline-flex;align-items:center;gap:6px}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.14em;font-weight:800;font-size:12px}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 84% 6%,#d1ecfa 0%,transparent 31%),radial-gradient(circle at 12% 80%,#e5f6df 0%,transparent 35%),#f6f9fc;padding:85px 0 75px}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:62px}.hero h1{font-size:clamp(37px,4.2vw,62px);letter-spacing:-2.5px;line-height:1.09;color:#142d47;margin:19px 0 18px;font-weight:850}.hero p{font-size:17px;color:var(--muted);max-width:555px;margin:0 0 24px}.hero .primary{margin:12px 0}.fine{font-size:12px!important;color:#76889b!important;max-width:540px!important}.btn{border:0;border-radius:12px;display:inline-flex;gap:9px;align-items:center;justify-content:center;padding:14px 22px;font-size:14px;font-weight:800;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{color:white;background:var(--accent);box-shadow:0 9px 22px rgba(17,116,95,.18)}.btn-primary:hover{background:var(--accent-dark)}.btn-secondary{color:#254157;background:white;border:1px solid #d4e0e9}.actions{display:flex;gap:11px;flex-wrap:wrap;align-items:center}.trustline{font-size:12px;color:#658091;margin-top:17px}.visual-card{background:white;box-shadow:var(--shadow);border:1px solid #e1e9f0;border-radius:21px;padding:24px;position:relative}.visual-card:after{content:"";position:absolute;z-index:-1;border:1px solid #c5dde6;border-radius:22px;inset:20px -16px -18px 17px;transform:rotate(2deg)}.topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:10px}.tiny{font-size:12px;color:#7d8d9e}.micro{font-size:11px;color:#73879c}.cardh{font-weight:800;font-size:18px;color:#1e354b}.status{color:#167254;background:#e2f6e9;font-size:11px;font-weight:750;border-radius:50px;padding:6px 10px}.preview-table{width:100%;border-collapse:collapse;font-size:12px}.preview-table th{text-align:left;color:#7d8c9e;font-size:10px;letter-spacing:.04em;text-transform:uppercase;font-weight:750}.preview-table td,.preview-table th{border-bottom:1px solid #eef2f6;padding:12px 7px}.preview-table th:last-child,.preview-table td:last-child{text-align:right}.num{font-variant-numeric:tabular-nums}.flag{display:inline-block;border-radius:6px;padding:4px 8px;background:#fff0e3;color:#a4551a;font-weight:750;font-size:11px}.pass{display:inline-block;border-radius:6px;padding:4px 8px;background:#e4f7ed;color:#176d4d;font-weight:750;font-size:11px}.metric-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.metric{border-radius:12px;background:#f5f8fa;padding:12px}.metric label{font-size:11px;color:#738396;display:block}.metric strong{font-size:20px;letter-spacing:-.5px}.section{padding:78px 0}.section.white{background:white}.head{text-align:center;max-width:760px;margin:0 auto 38px}.head h2{color:#152c43;font-size:clamp(28px,3vw,41px);line-height:1.2;letter-spacing:-1.1px;margin:11px 0 12px}.head p{color:var(--muted);font-size:15px}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tile{background:white;border:1px solid var(--line);border-radius:17px;padding:26px}.tile .symbol{height:39px;width:39px;display:grid;place-items:center;background:#e4f5ed;border-radius:12px;color:#166a50;font-size:20px;margin-bottom:18px}.tile h3{margin:4px 0 8px;font-size:17px}.tile p{font-size:13px;color:var(--muted);margin:0}.workbench{background:white;border:1px solid var(--line);box-shadow:0 10px 36px rgba(31,59,88,.035);border-radius:20px;overflow:hidden}.workbench-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;padding:21px 24px;border-bottom:1px solid var(--line)}.workbench-header h3{margin:0;font-size:19px}.workbench-header p{font-size:12px;color:var(--muted);margin:3px 0 0}.contentpad{padding:24px}.fieldgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.quote-box{border:1px solid #dbe5ed;border-radius:15px;background:#fbfcfe;padding:17px}.quote-box h4{margin:0 0 13px;font-size:15px}.formrow{margin-bottom:12px}.formrow label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#63748a;font-weight:750;margin-bottom:6px}.formrow input,.formrow select,.formrow textarea,.form-input{border:1px solid #cddae6;border-radius:9px;padding:10px 12px;width:100%;outline:none;background:white;color:#203d55;font-size:13px}.formrow input:focus,.formrow textarea:focus,.form-input:focus,.formrow select:focus{border-color:#399c80;box-shadow:0 0 0 3px #ddf2e8}.result-panel{background:#f3f8f9;border-top:1px solid #e2eaef;padding:24px}.resultgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}.resultbox{border:1px solid #d8e8e6;background:white;border-radius:12px;padding:14px}.resultbox strong{display:block;font-size:22px;color:#163c42;margin:4px 0}.resultbox span{font-size:11px;color:#6a8390}.subheading{font-size:14px;font-weight:800;margin:18px 0 8px}.question-list{padding-left:19px;margin:8px 0;font-size:13px;color:#3b5768}.question-list li{margin:8px 0}.callout{padding:12px 15px;border-radius:11px;background:#fff9e9;border:1px solid #f2e5c9;color:#78642a;font-size:12px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:26px}.csv textarea{min-height:160px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.5}.pill-sample{background:#eaf0f8;color:#516783;border-radius:50px;padding:5px 10px;font-size:11px;font-weight:800}.compare-report{overflow-x:auto}.compare-report table{width:100%;border-collapse:collapse;font-size:13px}.compare-report th,.compare-report td{padding:13px 10px;border-bottom:1px solid #e1e9ee;text-align:left}.compare-report th{font-size:11px;color:#607789;background:#f9fcfd}.compare-report td:nth-child(2){min-width:160px}.footcta{background:linear-gradient(145deg,#15334d,#103f45);color:#fff;border-radius:23px;padding:46px;display:grid;grid-template-columns:1fr .95fr;gap:46px}.footcta h2{font-size:34px;line-height:1.2;letter-spacing:-1px;margin:8px 0 15px}.footcta p{color:#c1d6e1;font-size:14px}.interest-form{background:#fff;color:#20364b;padding:23px;border-radius:15px}.interest-form .formrow{margin-bottom:15px}.interest-form h3{font-size:18px;margin:0 0 7px}.formnote{font-size:11px!important;color:#6c8092!important;margin:4px 0 0!important}.checkrow{display:flex;gap:9px;align-items:flex-start;font-size:12px;margin-bottom:14px;color:#4e6375}.checkrow input{width:16px;height:16px;margin-top:2px}.feedback{margin-top:12px;font-size:12px;min-height:22px;color:#226954}.feedback.error{color:#b34733}.footer{background:#0c2439;color:#b8cbd9;padding:28px 0;font-size:12px}.footinner{display:flex;gap:15px;align-items:center;justify-content:space-between}.footinner a{text-decoration:underline}.pricing{border:1px solid #d7e5eb;border-radius:15px;background:#f7fafc;padding:18px;margin-top:18px}.pricing strong{font-size:25px;color:#163547}.badge-mini{color:#0d6b53;font-size:11px;font-weight:800;background:#dff7e8;border-radius:100px;padding:6px 9px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:30px}.choice{display:block;background:#fff;border:1px solid #d6e4ec;border-radius:19px;padding:29px;box-shadow:0 10px 40px rgba(31,62,91,.06);transition:transform .2s,box-shadow .2s}.choice:hover{transform:translateY(-4px);box-shadow:0 18px 48px rgba(31,62,91,.13)}.choice h2{font-size:25px;letter-spacing:-.7px;margin:13px 0 8px}.choice p{font-size:14px;color:#65768b}.choice .go{font-weight:800;color:#176b55;font-size:13px}.label-inline{display:inline-flex;align-items:center;gap:7px}.smallcap{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#62778a;font-weight:750}.listpoints{padding:0;list-style:none}.listpoints li{padding:10px 0 10px 26px;position:relative;color:#4c6575;font-size:14px}.listpoints li:before{content:'✓';position:absolute;left:0;color:#16846a;font-weight:800}.formrow .help{font-size:10px;color:#7c8f9f;display:block;margin-top:5px}.native-link{text-decoration:underline;color:#2b6f70}.hidden{display:none!important}.intro-blurb{text-align:center;color:#647990;font-size:14px;max-width:750px;margin:18px auto}.linkish{color:#126d58;font-weight:750}.tag-row{display:flex;gap:7px;flex-wrap:wrap}.alertline{background:#eff8f0;border:1px solid #cde9d6;padding:12px 16px;border-radius:10px;color:#325b4a;font-size:12px;margin-top:15px}@media(max-width:850px){.hero-grid,.footcta{grid-template-columns:1fr;gap:35px}.hero{padding:57px 0}.hero h1{font-size:44px}.tiles,.fieldgrid{grid-template-columns:1fr}.grid-2{grid-template-columns:1fr;gap:14px}.navlinks a:not(.btn){display:none}.resultgrid{grid-template-columns:1fr 1fr}.choice-grid{grid-template-columns:1fr}}@media(max-width:520px){.container{width:min(100% - 28px,1160px)}.nav{height:64px}.brand{font-size:17px}.navlinks{gap:5px}.navlinks .btn{font-size:11px;padding:10px}.hero h1{font-size:37px;letter-spacing:-1.2px}.hero p{font-size:15px}.section{padding:52px 0}.contentpad,.result-panel{padding:15px}.resultgrid{grid-template-columns:1fr}.workbench-header{padding:16px}.footcta{padding:19px;border-radius:18px}.footcta h2{font-size:27px}.interest-form{padding:17px}.metric-row{grid-template-columns:1fr}.footinner{flex-direction:column;align-items:flex-start}.choice{padding:22px}}@media print{.topbar,.btn,.hero,.tile,.footcta,.footer,.intro-blurb,.no-print{display:none!important}.section{padding:10px!important}.container{width:100%}.workbench{border:0;box-shadow:none}.quote-box{break-inside:avoid}.result-panel{background:white}.workbench-header{border:0}body{background:#fff;color:#000}}

/* v2 — file uploads and in-page walkthrough */
.file-upload{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 9px}.file-upload input[type="file"]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}.file-picker{display:inline-block!important;text-transform:none!important;letter-spacing:0!important;font-size:12px!important;color:#176952!important;background:#eaf8ef;border:1px solid #b5dbcb;border-radius:9px;padding:8px 11px;cursor:pointer;font-weight:750!important;margin:0!important}.file-picker:hover,.file-upload input:focus-visible+.file-name{outline:2px solid #359a83;outline-offset:2px}.file-name{font-size:12px;color:#5f7186;overflow-wrap:anywhere}.file-feedback{min-height:23px;font-size:12px;color:#19775b;margin:3px 0 12px}.file-feedback.error{color:#b43d35}.demo-video-section{display:grid;grid-template-columns:.65fr 1fr;gap:28px;align-items:center;border:1px solid #d6e5e9;border-radius:22px;background:#fff;padding:26px;margin-top:34px;box-shadow:0 10px 40px rgba(31,59,88,.04)}.demo-video-copy h3{font-size:27px;color:#14344a;letter-spacing:-.7px;margin:9px 0}.demo-video-copy p{color:#60788a;font-size:14px}.demo-video{display:block;width:100%;background:#10283d;border-radius:12px;border:1px solid #c9dbe4;aspect-ratio:16/9;object-fit:contain}@media(max-width:850px){.demo-video-section{grid-template-columns:1fr}}@media print{.demo-video-section,.file-upload,.file-feedback{display:none!important}}
.print-heading{display:none}
/* Keep long SKUs, filenames and validation errors inside their panels. */
.grid-2>*,.hero-grid>*,.demo-video-section>*,.resultbox{min-width:0}
.result-panel,.file-feedback,.workbench-header p{overflow-wrap:anywhere}
@media screen and (max-width:520px){
  body[data-product="invoice"] .compare-report table,
  body[data-product="invoice"] .compare-report tbody{display:block}
  body[data-product="invoice"] .compare-report thead{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
  body[data-product="invoice"] .compare-report tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:14px 0;border-bottom:1px solid #e1e9ee}
  body[data-product="invoice"] .compare-report td{display:block;border:0;padding:0;min-width:0}
  body[data-product="invoice"] .compare-report td:nth-child(2){grid-column:1 / -1;grid-row:2;min-width:0}
  body[data-product="invoice"] .compare-report td:last-child{grid-column:2;grid-row:1;white-space:nowrap}
}
@media print{
  body[data-product="invoice"] main>section:not(#demo),
  body[data-product="invoice"] #demo>.container>.head,
  body[data-product="invoice"] .contentpad,
  body[data-product="invoice"] .workbench-header{display:none!important}
  body[data-product="invoice"] .print-heading{display:block}
  body[data-product="invoice"] .result-panel{padding:0;border:0}
  body[data-product="invoice"] .resultgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  body[data-product="invoice"] .compare-report{overflow:visible}
  body[data-product="invoice"] .compare-report table{table-layout:fixed}
  body[data-product="invoice"] .compare-report th:first-child{width:22%}
  body[data-product="invoice"] .compare-report th:last-child{width:20%}
  body[data-product="invoice"] tr,body[data-product="invoice"] .callout{break-inside:avoid}
  body[data-product="invoice"] thead{display:table-header-group}
}

/* Three-way exception review controls and readable priorities */
.review-controls{display:flex;flex-wrap:wrap;gap:12px;padding:14px 24px;border-top:1px solid #e1e9ee;background:#f9fbfc}.review-controls label{font-size:12px;font-weight:750;display:flex;flex-direction:column;gap:5px;flex:1 1 155px}.review-controls select,.review-controls input{min-width:0;width:100%;border:1px solid #cad9e4;border-radius:9px;padding:9px;background:#fff;color:#24384b}.review-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:15px 0}.review-overview>div{padding:12px;background:#f3f7fa;border:1px solid #e0e8ef;border-radius:10px;min-width:0}.review-overview strong,.review-overview span{display:block;font-size:12px}.review-overview span{color:#546a7f;margin-top:5px}.priority-chip{display:inline-block;font-size:11px;font-weight:750;padding:2px 8px;border-radius:20px;margin-right:7px}.priority-high{color:#8d2c22;background:#ffebe8}.priority-review{color:#80591e;background:#fff0d9}.priority-info{color:#315d74;background:#e5f2f8}.issue-area{font-size:11px;color:#61758b}.issue-kind{font-weight:700;margin-top:5px}.review-filter-status{font-size:12px;color:#62758b;margin:7px 0 12px}@media(max-width:620px){.review-overview{grid-template-columns:1fr}.review-controls{padding:12px 15px}}@media print{.review-controls{display:none!important}}

/* Actionable, human-reviewed next steps for every invoice exception */
.review-guidance{display:grid;gap:5px;margin-top:9px;padding:10px 12px;border-left:3px solid #9bcac3;border-radius:0 9px 9px 0;background:#f3faf8;font-size:12px;line-height:1.5;color:#27495a;overflow-wrap:anywhere}
.review-guidance strong{color:#0e6152}.review-guidance>div{min-width:0}
@media print{.review-guidance{background:#fff;color:#222;border:1px solid #bbb;border-left:3px solid #777;break-inside:avoid}.review-guidance strong{color:#222}}


/* Print pagination: compact one-page sample, safe breaks for longer reviews. */
@page{size:A4;margin:9mm 11mm}
@media print{
  body[data-product="invoice"]{font-size:10px;line-height:1.3}
  body[data-product="invoice"] #demo{padding:0!important}
  body[data-product="invoice"] #demo>.container{width:100%;max-width:none}
  body[data-product="invoice"] .workbench{overflow:visible}
  body[data-product="invoice"] .print-heading h1{font-size:22px;line-height:1.16;margin:0 0 5px}
  body[data-product="invoice"] .print-heading p{margin:0 0 9px;font-size:10px}
  body[data-product="invoice"] .resultgrid{gap:7px;margin-bottom:10px}
  body[data-product="invoice"] .resultbox{padding:8px;border-radius:7px}
  body[data-product="invoice"] .resultbox strong{font-size:16px;margin:2px 0}
  body[data-product="invoice"] .resultbox span{font-size:9px}
  body[data-product="invoice"] .review-overview{gap:7px;margin:7px 0}
  body[data-product="invoice"] .review-overview>div{padding:7px}
  body[data-product="invoice"] .review-overview strong,
  body[data-product="invoice"] .review-overview span{font-size:9px;margin-top:2px}
  body[data-product="invoice"] .subheading{margin:9px 0 4px;font-size:12px}
  body[data-product="invoice"] .review-filter-status{margin:3px 0 5px;font-size:9px}
  body[data-product="invoice"] .compare-report th,
  body[data-product="invoice"] .compare-report td{padding:7px 7px;font-size:10px;line-height:1.25}
  body[data-product="invoice"] .compare-report th{font-size:9px}
  body[data-product="invoice"] .priority-chip{font-size:9px;padding:1px 5px}
  body[data-product="invoice"] .issue-area{font-size:9px}
  body[data-product="invoice"] .issue-kind{margin-top:2px}
  body[data-product="invoice"] .review-guidance{padding:5px 7px;margin-top:4px;font-size:9px;gap:2px}
  body[data-product="invoice"] .callout{padding:7px 9px;font-size:9px;margin:6px 0}
  body[data-product="invoice"] .compare-report tr,
  body[data-product="invoice"] .resultbox,
  body[data-product="invoice"] .review-overview>div{break-inside:avoid;page-break-inside:avoid}
  body[data-product="invoice"] .compare-report thead{display:table-header-group}
  body[data-product="invoice"] .compare-report tfoot{display:table-footer-group}
  body[data-product="invoice"] .compare-report table{width:100%}
  body[data-product="invoice"] .result-panel>p,
  body[data-product="invoice"] .result-panel>.callout{orphans:3;widows:3}
}
