:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#183c37;background:#f8fafc;font-synthesis:none}*{box-sizing:border-box}body{margin:0}main,.site-header,footer{max-width:960px;margin:auto;padding:28px}a{color:#0f766e}.site-header,nav,.section-title,.exports{display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{text-decoration:none;font-weight:800;font-size:23px}.brand-light{font-weight:400}.brand-icon{color:#0f766e}nav a{text-decoration:none;font-size:14px}.free-badge,.eyebrow{font-size:11px;letter-spacing:1.5px;font-weight:700;color:#0f766e}.intro{text-align:center;padding:40px 0 24px}h1{font-size:clamp(32px,5vw,48px);letter-spacing:-2px;margin:12px 0}h2{font-size:23px;letter-spacing:-.5px}h3{font-size:17px}.lead{font-size:19px;color:#64748b}p{line-height:1.65;color:#64748b}.upload{border:2px dashed #a9ccc5;border-radius:20px;padding:34px;text-align:center;background:#fff;transition:.2s}.upload.drag{background:#e0f4ee;border-color:#0f766e;transform:scale(1.01)}.upload-icon{font-size:36px;color:#0f766e}.upload h2{margin:8px}.button,button{display:inline-block;background:#0f766e;color:#fff;border:1px solid #0F766E;border-radius:9px;padding:12px 19px;font:600 14px system-ui;cursor:pointer;text-decoration:none;transition:.15s}button:hover,.button:hover{filter:brightness(.92);transform:translateY(-1px)}button:disabled{opacity:.5;cursor:wait}.secondary{background:#fff;color:#0f766e}.upload button{margin-left:8px}.small{font-size:12px}.example{display:flex;align-items:center;justify-content:space-around;gap:12px;background:#eef3f5;border-radius:12px;padding:22px;font-size:10px;color:#64748b}.example code{display:block;font-size:12px;padding-top:8px}.options{display:flex;gap:16px;flex-wrap:wrap;background:#edf5f2;padding:16px;border-radius:12px;font-size:13px}input{accent-color:#0F766E}select{padding:5px;border:1px solid #cbd5e1;border-radius:6px}.table-wrap{overflow:auto;max-height:480px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}table{border-collapse:collapse;width:100%;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}th{position:sticky;top:0;background:#eaf2ef;text-align:left;z-index:1}th,td{padding:13px;border-bottom:1px solid #e2e8f0}td[contenteditable]{min-width:100px}td[contenteditable]:focus{outline:2px solid #0F766E}.modified{background:#f4f7f6}.amount{background:#fff}.amount.modified{background:#fafbfb}.duplicate td{background:#fef3c7}.excluded{opacity:.65}.summary{font-size:13px}.exports{flex-wrap:wrap;background:#fff;padding:16px;border-radius:12px}.exports span{font-size:12px}.cta{display:flex;align-items:center;gap:24px;justify-content:space-between;background:#e3f1ec;border-radius:18px;padding:28px;margin:48px 0}.cta p{max-width:540px}.cta .button{white-space:nowrap}section#how-it-works,section#faq,section#privacy{margin:48px 0}section#privacy p{font-size:14px;max-width:72ch}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.steps b{color:#0f766e}.steps p{font-size:14px}.privacy{font-size:12px;border-top:1px solid #e2e8f0;padding-top:20px}details{border-bottom:1px solid #e2e8f0;padding:18px 0}summary{cursor:pointer;font-weight:600}details p{font-size:14px}pre{background:#153c35;color:#e2f2ed;padding:24px;overflow:auto;border-radius:14px;line-height:1.7}footer{border-top:1px solid #e2e8f0;font-size:12px;padding-bottom:40px}#status.error{color:#dc2626}button:focus-visible,a:focus-visible,label.button:focus-within{outline:3px solid #5eead4;outline-offset:3px}@media(max-width:640px){main,.site-header,footer{padding:20px}nav a,.free-badge{display:none}.intro{padding-top:20px}.upload{padding:24px 12px}.upload .button{display:block;padding:17px}.upload button{margin:12px 0 0;width:100%}.example{flex-direction:column}.steps{grid-template-columns:1fr;gap:10px}.cta{flex-direction:column;align-items:start}.exports{position:fixed;bottom:0;left:0;right:0;z-index:5;gap:6px;border-top:1px solid #cbd5e1;border-radius:0;padding:10px}.exports span{display:none}.exports button{flex:1;min-width:0;padding:12px 5px;font-size:12px}body{padding-bottom:80px}}.amount.income{color:#0f766e}.amount.expense{color:#9f1239}.python{color:#64748b;margin:40px 0}.python h2{font-size:18px;font-weight:500}.python p{font-size:13px}.python pre{background:#f1f5f9;color:#64748b;font-size:12px;padding:16px;line-height:1.6}main,section,.example>span,.table-wrap{min-width:0;max-width:100%}.example{flex-wrap:wrap}.example code{white-space:normal;overflow-wrap:anywhere}.table-wrap{width:100%;overflow-x:auto;overscroll-behavior-x:contain}#status,.summary{overflow-wrap:anywhere}@media(max-width:640px){.example{align-items:stretch}.example>span:nth-child(2){align-self:center;transform:rotate(90deg)}.options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.options label{min-width:0;overflow-wrap:anywhere}.options label:last-child{grid-column:1/-1}.section-title{gap:10px}.section-title h2{font-size:20px}.cta .button{white-space:normal}.exports{padding-bottom:calc(10px + env(safe-area-inset-bottom))}body{padding-bottom:calc(100px + env(safe-area-inset-bottom))}}@media(max-width:640px){.example{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:10px;padding:18px 16px;font-size:11px;letter-spacing:.06em}.example>span:not(:nth-child(2)){display:block;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:12px 14px;font-weight:600}.example>span:nth-child(2){align-self:center;transform:rotate(90deg);font-size:18px;line-height:1;color:#0f766e}.example code{font-size:13px;line-height:1.5;padding-top:6px;color:#0f172a;font-weight:400;letter-spacing:0;white-space:normal;overflow-wrap:anywhere}}.balance-banner,.recurring-panel{border:1px solid #cbd5e1;border-radius:12px;padding:16px;margin:16px 0;background:#fff;font-size:13px;overflow-wrap:anywhere}.balance-banner.pass{background:#edf5f2;border-color:#0f766e;color:#0f766e}.balance-banner.fail{background:#fff1f2;border-color:#be123c;color:#9f1239}.balance-banner.neutral{color:#64748b}.recurring-panel h3{margin:0 0 8px}.recurring-panel p{margin:6px 0}.possible-duplicate{color:#92400e}.balance-mismatch td{background:#fff1f2;border-top:2px solid #be123c;border-bottom:2px solid #be123c}@media(max-width:640px){.balance-banner,.recurring-panel{padding:14px 12px;font-size:12px}.recurring-panel h3{font-size:16px}}[hidden]{display:none!important}
