@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-latin.woff2') format('woff2');font-weight:200 800;font-display:swap}
:root{--canvas:#f5f7f9;--paper:#fff;--ink:#334155;--muted:#646a75;--jade:#4c64d9;--pale:#edf0ff;--line:#dce0e5;--warning:#94521c;--error:#ad3232;color:var(--ink);background:var(--canvas);font:15px/1.5 Manrope,system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;color:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);background:var(--paper);border-radius:8px;min-height:44px;padding:10px 17px;font-weight:650;transition:background .12s}button:hover{background:var(--pale)}button:disabled{cursor:default;opacity:.45}button:disabled:hover{background:inherit}button.primary:disabled:hover{background:var(--jade)}button.primary{background:var(--jade);border-color:var(--jade);color:#fff}button.primary:hover{background:#3d53bd}button.secondary{background:#fff}button.quiet{border-color:transparent;background:transparent;color:var(--muted)}:focus-visible{outline:3px solid #4c64d9;outline-offset:3px}button:focus-visible,input:focus-visible,select:focus-visible{position:relative;z-index:2}input,select{border:1px solid var(--line);background:white;border-radius:7px;min-height:44px;padding:9px 12px}input[type=checkbox]{accent-color:var(--jade);width:20px;height:20px;min-height:20px;padding:0;flex-shrink:0}select{padding-right:28px}a{color:var(--jade)}h1,h2,p{margin:0}h1{letter-spacing:-.055em;line-height:1.13}h2{font-size:18px;letter-spacing:-.025em}p{color:var(--muted)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;top:-100px;left:16px;padding:12px;background:white;z-index:20}.skip:focus{top:8px}
.app-header{height:82px;padding:0 36px;display:flex;align-items:center;gap:20px;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-size:24px;font-weight:800;letter-spacing:-.06em}.brand-mark{display:grid;grid-template-columns:12px 12px;gap:2px}.brand-mark i{height:12px;background:var(--jade);border-radius:1.5px}.brand-mark i:nth-child(3){opacity:.75}.privacy{margin-left:auto;display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);padding:9px 12px;border:1px solid var(--line);border-radius:8px;white-space:nowrap}.privacy svg{width:16px;height:16px;fill:none;stroke:var(--jade);stroke-width:2}.header-add{font-size:13px}.welcome{max-width:1160px;margin:0 auto;padding:80px 32px 34px;display:grid;grid-template-columns:1fr 1fr;column-gap:62px;row-gap:40px;align-items:center}.category{font-size:14px;font-weight:650;color:var(--jade);margin-bottom:19px}.welcome h1{font-size:clamp(36px,4.4vw,58px);font-weight:750;margin-bottom:24px}.lead{font-size:18px;line-height:1.65;max-width:390px}.dropzone{border:1.5px dashed #cbd5e1;background:var(--paper);border-radius:16px;min-height:378px;padding:36px;display:flex;align-items:center;flex-direction:column;text-align:center}.dropzone.dragging{background:var(--pale);border-color:var(--jade)}.dropzone h2{margin:22px 0 7px;font-size:21px}.dropzone p{font-size:14px;margin-bottom:23px}.dropzone .primary{width:100%;max-width:260px;min-height:49px}.sample-link{border-color:transparent;background:transparent;font-size:14px;color:var(--jade);margin-top:7px}.dropzone small{color:var(--muted);font-size:12px;margin-top:13px}.conversion-art{display:flex;align-items:center;gap:18px;height:75px}.pdf-symbol{border:1px solid #d1d9df;border-radius:5px;width:54px;height:70px;background:#f4f6f8;display:flex;flex-direction:column;padding:15px 9px 10px;gap:4px;transform:rotate(-7deg)}.pdf-symbol span{font-size:13px;font-weight:800;color:var(--ink)}.pdf-symbol i{height:2px;background:#b5c2c7;width:100%}.pdf-symbol i:last-child{width:70%}.conversion-arrow{font-size:24px;color:#64748b}.sheet-symbol{display:grid;grid-template-columns:repeat(3,12px);gap:2px;padding:10px;border-radius:8px;background:var(--pale);transform:rotate(6deg)}.sheet-symbol i{height:13px;border:1px solid #cbd5e1;background:white}.sheet-symbol i:nth-child(-n+3){background:#cbd5e1}.workflow{grid-column:1/-1;display:flex;justify-content:center;gap:55px;border-top:1px solid var(--line);padding-top:30px;font-size:13px;color:var(--muted)}.workflow b{font-size:12px;margin-right:9px;font-weight:700;background:white;border:1px solid var(--line);border-radius:50%;display:inline-grid;place-items:center;width:25px;height:25px}.supported{grid-column:1/-1;max-width:780px;justify-self:center;color:var(--muted);font-size:13px}.supported summary{cursor:pointer;text-align:center;min-height:44px;padding:10px}.supported p{padding:12px;line-height:1.8}.app-footer{max-width:1160px;margin:35px auto 0;padding:24px 32px;font-size:12px;color:var(--muted);border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px}
.workspace{display:grid;grid-template-columns:190px minmax(0,1fr);min-height:calc(100vh - 82px)}.file-rail{border-right:1px solid var(--line);background:#fafcfd;padding:25px 14px;min-width:0}.rail-heading{display:flex;align-items:center;justify-content:space-between;padding:0 8px 18px}.rail-heading h2{font-size:15px}.rail-heading>span{font-size:12px;color:var(--muted)}.file-button{width:100%;text-align:left;padding:13px 10px;border:1px solid transparent;background:transparent;margin-bottom:7px;display:flex;gap:10px;align-items:flex-start;min-width:0;font-size:13px;line-height:1.4}.file-button[aria-current=true]{border-color:#ccd4f7;background:var(--pale);color:var(--jade)}.file-button .file-symbol{flex-shrink:0;font-size:16px;font-weight:400;line-height:24px}.file-button>span:last-child{min-width:0}.file-button strong{display:block;font-weight:650;overflow-wrap:anywhere}.file-button small{color:var(--muted);font-size:11px;display:block;margin-top:5px}.file-button.error small{color:var(--error)}.rail-note{font-size:11px;padding:15px 10px;line-height:1.8}.work-content{padding:26px 28px 20px;min-width:0;max-width:1600px;width:100%;margin:0 auto}.work-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px}.work-heading h1{font-size:25px;letter-spacing:-.04em;overflow-wrap:anywhere}.work-heading p{font-size:12px;margin-top:8px}.work-heading button{font-size:12px;white-space:nowrap}.review{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1fr);gap:24px}.source-panel{min-width:0}.panel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;background:white;border:1px solid var(--line);border-radius:8px 8px 0 0;padding:8px 10px;font-size:12px}.panel-toolbar>span{font-weight:650}.panel-toolbar select{font-size:11px;padding:8px 20px 8px 8px;min-width:0}.page-controls{display:flex;align-items:center;gap:7px;white-space:nowrap}.page-controls button{font-size:20px;font-weight:400;width:30px;padding:4px;border-color:transparent}.paper-scroll{background:#eef0f3;border:1px solid var(--line);border-top:0;min-height:490px;max-height:640px;padding:16px;overflow:auto;border-radius:0 0 8px 8px;scrollbar-width:thin}.paper{position:relative;background:#fff;box-shadow:0 3px 12px #33415510;width:100%;margin:auto}.paper canvas{display:block;max-width:none;width:100%;height:auto}.highlight{position:absolute;background:#4c64d921;border:1px solid #4c64d970;pointer-events:none;border-radius:2px}.source-note{font-size:11px;padding:10px 2px}.data-panel{min-width:0;display:flex;flex-direction:column}.data-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:3px 0 14px}.data-top h2{font-size:21px}.data-top p{font-size:12px;margin-top:4px}.number-format{font-size:10px;display:flex;flex-direction:column;gap:4px;color:var(--muted)}.number-format select{font-size:12px;padding-top:7px;padding-bottom:7px;min-width:120px}.checks{font-size:12px;color:var(--jade);background:var(--pale);border:1px solid #d7def5;padding:10px 12px;border-radius:7px;margin-bottom:15px;line-height:1.6}.checks.warning{background:#fff5e9;color:var(--warning);border-color:#ead8bb}.checks.error{background:#fff0ef;color:var(--error);border-color:#eccac8}.checks small{display:block;font-size:10px;color:var(--muted);margin-top:2px}.table-tools{display:flex;align-items:center;gap:12px;margin-bottom:13px}.search{flex:1;min-width:90px}.search input{width:100%;font-size:12px;min-width:0}.check-filter{display:flex;align-items:center;gap:7px;font-size:11px;white-space:nowrap;min-height:44px}.table-tools .quiet{font-size:11px;padding:8px;white-space:nowrap}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:8px;background:white;max-height:525px;scrollbar-width:thin}.table-scroll table{border-collapse:collapse;min-width:590px;width:100%;font-size:11px}th{font-weight:650;text-align:left;background:#f8fafc;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:3;height:42px;padding:10px 8px}td{border-bottom:1px solid #e2e8f0;padding:7px 5px;vertical-align:top}tbody tr:last-child td{border-bottom:0}tbody tr.selected{background:var(--pale)}tbody tr.has-issue{background:#fff6ef}tbody tr.has-error{background:#fff0ef}td input{background:transparent;border-color:transparent;border-radius:4px;font-size:11px;width:100%;min-width:0;padding:9px 6px;height:44px;min-height:44px}td input:hover{background:white;border-color:var(--line)}td input:focus{background:white;border-color:var(--jade)}td input[aria-invalid=true]{border-color:var(--error)}td.amount input{text-align:right;font-variant-numeric:tabular-nums}th.amount{text-align:right}td.date{width:112px}td.description{min-width:170px}td.amount{width:95px}td.source{width:50px;text-align:center}.source-link{padding:5px;min-width:34px;font-size:11px;background:transparent;border-color:transparent;color:var(--jade);font-weight:700}.row-error{font-size:10px;color:var(--error);display:block;padding:0 6px;max-width:240px}.table-foot{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px;padding:11px 0}.no-rows{padding:25px;font-size:13px;text-align:center}.export-bar{border-top:1px solid var(--line);padding-top:19px;margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.review-confirm{display:flex;align-items:center;gap:10px;font-size:12px;min-height:44px}.export-bar p{font-size:10px;padding-left:30px;max-width:480px}.export-actions{display:flex;gap:10px}.export-actions button{white-space:nowrap;font-size:13px}.failed{background:white;border:1px solid var(--line);padding:40px 35px;min-height:350px;border-radius:12px;max-width:700px;margin:25px auto}.failed h2{font-size:24px;margin:17px 0}.failed p{margin:0 0 15px;max-width:520px}.failed button{margin-top:8px}.error-symbol{font-size:23px;color:var(--warning);border:1px solid #ead8bb;background:#fff5e9;width:45px;height:45px;display:grid;place-items:center;border-radius:50%}.message{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#fff;border:1px solid var(--line);box-shadow:0 5px 22px #33415524;border-radius:10px;padding:15px 22px;max-width:calc(100vw - 32px);width:max-content;font-size:13px;z-index:10}.progress{position:fixed;inset:0;background:#f5f7f9eb;display:flex;align-items:center;justify-content:center;gap:15px;z-index:9}.spinner{width:24px;height:24px;border:2px solid var(--line);border-top-color:var(--jade);border-radius:50%;animation:spin 1s linear infinite}.mobile-switch{display:none}
@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1550px){.work-content{padding:32px 38px}.review{grid-template-columns:minmax(420px,.85fr) minmax(0,1fr)}}
@media(max-width:1150px){.workspace{grid-template-columns:160px minmax(0,1fr)}.work-content{padding:24px 20px}.review{gap:16px;grid-template-columns:minmax(260px,.75fr) minmax(0,1fr)}.panel-toolbar>span{display:none}.table-tools{gap:6px}.table-tools .quiet{padding:6px}.paper-scroll{padding:10px}.work-heading h1{font-size:22px}}
@media(max-width:900px){.workspace{display:block}.file-rail{border-right:0;border-bottom:1px solid var(--line);padding:12px 20px}.rail-heading,.rail-note{display:none}#file-list{display:flex;gap:8px;overflow:auto}.file-button{width:auto;min-width:175px;max-width:240px;flex-shrink:0;margin:0;padding:9px 12px}.file-button strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.work-content{padding:22px 20px}.review{grid-template-columns:minmax(240px,.75fr) minmax(0,1fr)}.table-tools{flex-wrap:wrap}.check-filter{flex:1}.search{flex-basis:100%}.paper-scroll{max-height:560px;min-height:350px}.export-bar{gap:12px}.export-bar p{max-width:350px}}
@media(max-width:640px){:root{font-size:15px}.app-header{height:72px;padding:0 20px;gap:12px}.brand{font-size:23px;gap:9px}.privacy{font-size:10px;padding:7px 8px}.header-add{padding:8px 11px;font-size:11px}.app-header:has(.header-add:not([hidden])) .privacy{display:none}.welcome{padding:42px 23px 24px;display:block}.welcome-copy{text-align:center}.category{font-size:12px;margin-bottom:17px}.welcome h1{font-size:38px;margin-bottom:18px}.lead{font-size:15px;max-width:none}.dropzone{margin-top:30px;padding:28px 26px;min-height:355px}.dropzone h2{font-size:19px}.conversion-art{height:62px}.workflow{margin-top:32px;gap:10px;justify-content:space-between;align-items:flex-start;font-size:10px}.workflow span{text-align:center;max-width:90px;display:flex;flex-direction:column;align-items:center;gap:8px}.workflow b{margin:0}.supported{margin-top:24px;font-size:12px}.app-footer{padding:20px 23px;flex-direction:column;gap:6px;margin-top:15px;font-size:10px}.file-rail{padding:12px 16px}.work-content{padding:23px 16px 20px}.work-heading{align-items:flex-start;margin-bottom:18px;gap:8px}.work-heading h1{font-size:21px}.work-heading p{font-size:11px}.work-heading button{font-size:10px;padding:6px;min-height:44px}.mobile-switch{display:flex;background:#eef0f3;border-radius:9px;padding:4px;margin-bottom:19px;gap:4px}.mobile-switch button{flex:1;border:0;background:transparent;font-size:12px;color:var(--muted)}.mobile-switch button[aria-pressed=true]{background:white;box-shadow:0 1px 4px #33415512;color:var(--ink)}.review{display:block}.source-panel{display:none}.workspace.source-view .source-panel{display:block}.workspace.source-view .data-panel{display:none}.panel-toolbar>span{display:block}.paper-scroll{min-height:350px;max-height:570px}.source-note{font-size:11px}.data-top h2{font-size:20px}.data-top p{font-size:11px}.number-format{font-size:10px}.number-format select{font-size:11px;min-width:110px}.table-tools{gap:8px}.search{flex-basis:100%}.check-filter{font-size:12px;flex:1}.table-tools .quiet{font-size:12px}.table-scroll{max-height:500px}.table-scroll table{min-width:610px;font-size:12px}td input{font-size:12px}.table-foot{font-size:10px;flex-wrap:wrap}.export-bar{flex-direction:column;align-items:stretch;margin-top:14px;padding-top:14px;gap:16px}.review-confirm{font-size:12px}.export-bar p{font-size:10px;max-width:none}.export-actions .primary{flex:1}.export-actions button{font-size:14px;min-height:49px}.failed{padding:27px 22px;margin:15px 0}.failed h2{font-size:23px}.failed p{font-size:13px}.message{bottom:12px;font-size:12px}.progress{padding:24px;font-size:13px;text-align:center}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media(min-width:901px){.paper-scroll{height:clamp(330px,calc(100vh - 285px),640px);min-height:330px}.table-scroll{max-height:clamp(260px,calc(100vh - 385px),525px)}.table-scroll table{min-width:540px}td.description{min-width:150px}td.date{width:105px}td.amount{width:88px}.work-content{padding-top:23px}}
.paper-scroll{scrollbar-gutter:stable}.table-scroll table{font-size:12px}td input{font-size:12px}
@media(min-width:901px){.work-content{height:calc(100dvh - 82px);display:flex;flex-direction:column;min-height:580px}.work-heading{flex-shrink:0;margin-bottom:18px}.review{flex:1;min-height:0}.source-panel{display:flex;flex-direction:column}.panel-toolbar,.source-note,.data-top,.checks,.table-tools,.table-foot{flex-shrink:0}.paper-scroll{flex:1;height:auto;min-height:0;max-height:none}.table-scroll{flex:1;min-height:0;max-height:none}.export-bar{flex-shrink:0;margin-top:13px;padding-top:13px}.export-bar p{font-size:11px}.table-foot{font-size:11px}.workspace+.app-footer{margin-top:0}.failed{width:100%}}
@media(min-width:901px){.source-panel,.data-panel{min-height:0}.review{overflow:hidden}.paper-scroll{flex-basis:0}.table-scroll{flex-basis:0}}
@media(min-width:901px){body:has(#workspace:not([hidden])) .app-footer{display:none}}
@media(max-width:640px){.table-scroll{border:0;background:transparent;max-height:570px;border-radius:0}.table-scroll table{min-width:0;display:block;font-size:12px}.table-scroll thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.table-scroll tbody{display:grid;gap:12px}.table-scroll tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:11px 12px;background:white;border:1px solid var(--line);border-radius:9px;gap:3px 12px}.table-scroll tr.selected{border-color:#bcc6ec}.table-scroll td{display:block;width:auto;min-width:0;padding:0;border:0}.table-scroll td:before{content:attr(data-label);display:block;color:var(--muted);font-size:10px;padding:3px 6px}.table-scroll td.date{order:0}.table-scroll td.description{order:3;grid-column:1/-1;margin:4px 0}.table-scroll td[data-field=amount],.table-scroll td[data-field=debit],.table-scroll td[data-field=credit]{order:1}.table-scroll td[data-field=balance]{order:4}.table-scroll td.source{order:5;text-align:left}.table-scroll td.amount input{text-align:left;font-weight:650}.table-scroll td input{background:#fff;border-color:#dce0e5;width:100%;font-size:12px;padding:10px 8px}.table-scroll td.source button{border-color:var(--line);background:white;min-width:52px;width:100%;text-align:left;padding-left:12px}.table-scroll table[data-mode=split] td.date{grid-column:1/-1}.row-error{padding:5px 6px;font-size:10px}}
.brand{min-height:44px}.page-controls button{width:44px}.source-link{min-width:44px}
@media(max-width:640px){.table-scroll td input{font-size:14px}.table-scroll td:before{font-size:11px}}
@media(max-width:360px){.panel-toolbar>span{display:none}.welcome h1{font-size:34px}}
