:root{color-scheme:light;font-family:IBM Plex Sans,Arial,sans-serif;color:#101828;background:#f8f6f1;font-synthesis:none;--background: #f8f6f1;--surface: #ffffff;--text: #101828;--muted: #667085;--border: #e0dccf;--accent: #b45309;--accent-dark: #8f4108;--ink: #1e3a5f;--error: #9f1d20}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--background);font-size:16px;line-height:1.6}button,input,select{font:inherit}button,a,select,input,[role=button]{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}a{color:var(--ink);text-underline-offset:.2em}.skip-link{position:fixed;z-index:10;top:12px;left:12px;padding:8px 12px;transform:translateY(-160%);border-radius:6px;color:#fff;background:var(--ink)}.skip-link:focus{transform:translateY(0)}.site-header,footer{display:flex;align-items:center;justify-content:space-between;width:min(1180px,calc(100% - 40px));margin:0 auto}.site-header{min-height:64px;border-bottom:1px solid var(--border)}.site-header:after{position:absolute;right:0;left:0;top:63px;z-index:-1;height:1px;content:"";background:var(--border)}.site-header a{font-size:.9rem;font-weight:500;text-decoration:none}.wordmark{color:var(--text);letter-spacing:-.01em}main{width:min(1180px,calc(100% - 40px));margin:0 auto}.hero{display:grid;grid-template-columns:minmax(0,3fr) minmax(270px,2fr);gap:clamp(40px,7vw,92px);align-items:start;padding:clamp(64px,9vw,112px) 0 clamp(76px,9vw,120px)}.hero-tool{min-width:0}.eyebrow,.micro-label,.privacy-line,.period-total span{margin:0;color:var(--ink);font-size:.72rem;font-weight:600;letter-spacing:.14em;line-height:1.4;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Spectral,Georgia,serif;color:var(--text);font-weight:600}h1{max-width:680px;margin:12px 0 16px;font-size:clamp(2rem,5vw,2.75rem);letter-spacing:-.02em;line-height:1.04}h2{margin-bottom:18px;font-size:clamp(1.65rem,3vw,2.1rem);line-height:1.15}h3{margin:0;font-size:1.25rem}.subtitle{max-width:700px;margin-bottom:30px;color:#344054;font-size:1.06rem;line-height:1.65}.tool-shell{min-height:300px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.drop-zone{display:flex;min-height:300px;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;margin:-1px;border:1.5px dashed #a69f8e;border-radius:10px;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.drop-zone:hover{box-shadow:0 2px 8px #00000014}.drop-zone.is-dragging{border-style:solid;border-color:var(--accent);background:#b4530914}.drop-zone svg,.privacy-line svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65}.drop-zone svg{width:38px;height:38px;margin-bottom:18px;color:var(--accent)}.drop-zone strong{font-size:1.06rem;font-weight:600}.drop-zone span{margin-top:2px;color:var(--muted);font-size:.88rem}.privacy-line{display:flex;align-items:center;gap:8px;margin:15px 0 0}.privacy-line svg{width:17px;height:17px;flex:none}.storage-note{margin:6px 0 0 25px;color:var(--muted);font-size:.82rem}.how{position:sticky;top:38px;padding-top:12px}.how ol{margin:30px 0 0;padding:0;list-style:none}.how li{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:22px 0;border-top:1px solid var(--border)}.how li:last-child{border-bottom:1px solid var(--border)}.how li>span{padding-top:2px;color:var(--accent);font-family:IBM Plex Mono,monospace;font-size:.76rem;font-variant-numeric:tabular-nums}.how strong{color:var(--ink);font-weight:600}.how li p{margin:5px 0 0;color:#475467;font-size:.92rem;line-height:1.55}.workspace{min-height:300px;padding:clamp(20px,4vw,32px)}.workspace-bar,.section-heading,.report-head,.entries-head,.export-actions{display:flex;align-items:center;justify-content:space-between;gap:20px}.workspace-bar{padding-bottom:22px;border-bottom:1px solid var(--border)}.workspace-bar strong{display:block;margin-top:4px;color:var(--ink)}button{cursor:pointer;border:0}.button-primary,.button-secondary{min-height:40px;padding:8px 15px;border-radius:6px;font-size:.88rem;font-weight:600;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.button-primary{color:#fff;background:var(--accent)}.button-primary:hover{background:var(--accent-dark);box-shadow:0 2px 8px #00000014}.button-secondary{border:1px solid #b8b1a1;color:var(--ink);background:var(--surface)}.button-secondary:hover{border-color:var(--ink);box-shadow:0 2px 8px #00000014}.controls-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:24px 0}.parse-progress{margin:-8px 0 22px;color:var(--muted);font-size:.78rem}.parse-progress span{display:block;margin-bottom:7px}.parse-progress progress{display:block;width:100%;height:2px;overflow:hidden;border:0;border-radius:0;background:var(--border);appearance:none}.parse-progress progress::-webkit-progress-bar{background:var(--border)}.parse-progress progress::-webkit-progress-value{background:var(--accent)}.parse-progress progress::-moz-progress-bar{background:var(--accent)}label>span,.entries-head label span{display:block;margin-bottom:5px;color:#344054;font-size:.8rem;font-weight:600}select,input[type=text],input[type=date]{width:100%;min-height:42px;border:1px solid #c8c2b4;border-radius:8px;color:var(--text);background:#fff}select,input[type=date]{padding:7px 10px}input[type=text]{padding:8px 11px}input[aria-invalid=true]{border-color:var(--error)}small,.field-note{color:var(--muted);font-size:.78rem}.custom-dates{display:grid;grid-template-columns:1fr 1fr;gap:10px;grid-column:1 / -1}.toggle-row{display:flex;flex-wrap:wrap;gap:12px 26px;padding-bottom:26px}.toggle-row label{display:flex;align-items:center;gap:8px;color:#344054;font-size:.86rem}input[type=checkbox]{width:17px;height:17px;accent-color:var(--accent)}.rules-panel{padding:25px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.section-heading h2{margin:2px 0 0;font-size:1.55rem}.field-note{margin-bottom:16px}.rule-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:9px;align-items:center;margin-top:10px}.rule-error{grid-column:1 / -1;margin-top:-5px;color:var(--error);font-size:.76rem}.rule-row>span{color:var(--accent)}.remove-rule{padding:6px;color:var(--muted);background:transparent;font-size:.78rem;text-decoration:underline;text-underline-offset:.2em}.remove-rule:hover{color:var(--error)}.empty-rules{margin:0;color:var(--muted);font-size:.86rem}.suggestions{margin-top:22px}#suggestion-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}#suggestion-list button{padding:5px 9px;border:1px solid var(--border);border-radius:6px;color:var(--ink);background:#faf9f6;font-size:.78rem}#suggestion-list button:hover{border-color:var(--accent);box-shadow:0 2px 8px #00000014}.status{margin-top:20px;padding:11px 13px;border-left:3px solid var(--ink);color:#344054;background:#f4f6f8;font-size:.84rem}.status:empty{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.status[data-type=warning]{border-left-color:var(--accent);background:#fff8eb}.status[data-type=error]{border-left-color:var(--error);color:#781316;background:#fff3f2}.upload-status:not(:empty){margin:0 20px 20px}.report{padding-top:32px}.report-head{align-items:flex-end;margin-bottom:20px}.report-head h2{margin:3px 0 0}.period-total{flex:none;text-align:right}.period-total strong{display:block;color:var(--accent);font-family:IBM Plex Mono,monospace;font-size:clamp(1.55rem,5vw,2.25rem);font-variant-numeric:tabular-nums;line-height:1.1;white-space:nowrap}.table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--border);border-radius:8px}table{width:100%;border-collapse:collapse;font-size:.84rem}th,td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}th{color:#fff;background:var(--ink);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}tr:last-child td{border-bottom:0}.number{font-family:IBM Plex Mono,monospace;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.total-row td{border-top:2px solid var(--accent);color:var(--accent-dark);font-weight:600}.entries-head{align-items:flex-end;margin:30px 0 12px}.entries-head label{display:flex;align-items:center;gap:8px}.entries-head label span{margin:0;white-space:nowrap}.entries-head select{min-height:36px}.entries-table{min-width:620px}.group-row td{padding-top:14px;padding-bottom:6px;color:var(--ink);background:#f4f3ef;font-size:.71rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.export-actions{justify-content:flex-start;margin-top:22px}.faq{max-width:800px;padding:84px 0 108px}.faq h2{margin-top:10px}.faq details{border-top:1px solid var(--border)}.faq details:last-child{border-bottom:1px solid var(--border)}.faq summary{cursor:pointer;padding:19px 34px 19px 0;color:var(--ink);font-weight:600}.faq details p{max-width:680px;margin:-4px 0 20px;color:#475467}footer{min-height:92px;border-top:1px solid var(--border);color:var(--muted);font-size:.8rem}footer nav{display:flex;gap:22px}@media(max-width:959px){.hero{grid-template-columns:1fr}.how{position:static;max-width:680px}}@media(max-width:620px){.site-header,main,footer{width:min(100% - 28px,1180px)}.hero{gap:58px;padding-top:48px}.subtitle{font-size:.98rem}.workspace{padding:18px}.workspace-bar,.section-heading,.report-head,.entries-head{align-items:flex-start}.controls-grid{grid-template-columns:1fr}.rule-row{grid-template-columns:1fr auto}.rule-row>span{display:none}.rule-row .remove-rule{grid-column:2;grid-row:1 / span 2}.period-total strong{font-size:1.45rem}footer{align-items:flex-start;flex-direction:column;justify-content:center;gap:5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media print{@page{margin:14mm}body{color:#000;background:#fff;font-size:10pt}.skip-link,.site-header,.eyebrow,.subtitle,.how,.workspace-bar,.controls-grid,.toggle-row,.rules-panel,.status,.parse-progress,.privacy-line,.storage-note,.faq,footer,.entries-head label,.export-actions{display:none!important}main,.hero{display:block;width:100%;padding:0}h1{display:block;margin-bottom:8mm;font-size:22pt}.tool-shell{min-height:0;border:0}.workspace,.report{display:block!important;padding:0}.workspace[hidden],.report[hidden]{display:none!important}.table-wrap{overflow:visible;border-color:#777}table,.entries-table{min-width:0;font-size:8pt}th{color:#000;background:#e6e6e6}tr{break-inside:avoid}}
