:root{color-scheme:light;--ink: #202b3a;--muted: #667085;--line: #d5e1ec;--soft-line: #e7edf3;--soft: #f7f9fb;--accent: #0f766e;--accent-dark: #0b5f58;--pink: #f04482;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink)}button,input,select{font:inherit}.hidden{display:none!important}.loading-page,.login-page{min-height:100vh;display:grid;place-items:center;background:#eef1f5;padding:24px}.login-card{width:min(100%,390px);display:grid;gap:18px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 22px 70px #1720331f;padding:28px}.login-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;background:var(--accent);color:#fff}.login-card h1{margin:0;font-size:30px}.login-card label{display:grid;gap:8px;color:var(--muted);font-size:14px;font-weight:750}.login-row{display:flex;gap:8px}.login-row input{width:100%;min-width:0;border:1px solid #cbd5e1;border-radius:8px;padding:13px 14px;outline:none}.login-row button,.save-button{border:0;border-radius:8px;background:var(--accent);color:#fff;cursor:pointer;font-weight:850;padding:0 18px}.form-error{min-height:20px;margin:0;color:#b42318;font-size:14px;font-weight:750}.app-header{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #d8e2ec;box-shadow:0 8px 24px #1018280a;padding:20px 48px}.app-header h1{margin:0;font-size:20px;font-weight:700}.app-header p{margin:2px 0 0;color:#435266;font-size:14px}.ghost-button,.filter-button,.upload-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:850}.ghost-button{border:0;background:transparent;color:#2c3f55}.workspace{padding:28px 24px 56px}.summary-row{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:28px;align-items:start;margin-bottom:20px}.summary-block span,.toolbar span{color:#2b3d52;font-size:13px}.summary-block strong{display:block;margin-top:2px;font-size:32px;line-height:1}.summary-block button{margin-top:10px;border:0;background:transparent;color:var(--pink);cursor:pointer;font-size:13px;font-weight:850;padding:0}.toolbar{display:grid;grid-template-columns:minmax(250px,1fr) auto;gap:12px;justify-items:end}.toolbar>span{grid-column:1 / -1}.search-field{min-height:48px;width:min(100%,290px);display:flex;align-items:center;gap:10px;border:1px solid #a8bdd3;border-radius:24px;color:#8792a0;padding:0 18px}.search-field input{width:100%;min-width:0;border:0;outline:0}.filter-button{min-height:48px;border:1px solid #22364d;border-radius:24px;background:#fff;color:#2c3f55;padding:0 20px}.import-strip{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px dashed #a8bdd3;border-radius:8px;background:#fbfdff;margin-bottom:22px;padding:14px 16px}.import-strip div{display:grid;gap:3px}.import-strip span{color:var(--muted);font-size:13px}.upload-button{min-height:40px;border:1px solid #22364d;border-radius:22px;color:#2c3f55;padding:0 16px;white-space:nowrap}.upload-button input{display:none}.import-status{margin:-12px 0 20px;color:var(--accent-dark);font-size:13px;font-weight:750}.table-title-row{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:10px}.table-title-row h2{margin:0;font-size:24px}.table-title-row span{color:var(--muted);font-size:13px;font-weight:750}.transaction-table{width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:7px;background:#fff}.table-head,.transaction-row{min-width:760px;display:grid;grid-template-columns:120px minmax(280px,1fr) 220px 110px 150px;align-items:center}.table-head{min-height:44px;border-bottom:1px solid var(--line);background:var(--soft);color:var(--muted);font-size:12px;font-weight:850;text-transform:uppercase}.table-head span,.transaction-row>span,.transaction-row>strong{min-width:0;padding:0 16px}.transaction-row{width:100%;min-height:58px;border:0;border-top:1px solid var(--soft-line);background:#fff;color:var(--ink);cursor:pointer;text-align:left}.transaction-row:hover{background:#f8fbfd}.transaction-row.verified-row{background:#f2fbf7;box-shadow:inset 4px 0 #20a78f}.transaction-row.verified-row:hover{background:#eaf8f2}.transaction-date{color:#2c3f55;font-size:14px;white-space:nowrap}.transaction-date strong{font-size:18px}.transaction-label-cell{min-width:0;display:grid;gap:4px}.transaction-meta-line{min-width:0;display:flex;align-items:center;gap:8px}.transaction-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:650}.transaction-note{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px;font-weight:650}.verified-badge{flex:0 0 auto;border-radius:999px;background:#e8f7f2;color:#08745f;font-size:11px;font-weight:850;line-height:1;padding:5px 8px}.transaction-category,.transaction-vat{color:#2c3f55;font-size:14px;font-weight:750;white-space:nowrap}.category-chip,.category-select-button,.vat-chip,.vat-select-button{border:1px solid #d0deea;border-radius:999px;background:#fff;color:#2c3f55;cursor:pointer;font-weight:800}.category-chip,.vat-chip{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:8px 10px}.category-chip:hover,.category-select-button:hover,.vat-chip:hover,.vat-select-button:hover{border-color:var(--accent);color:var(--accent-dark)}.transaction-amount{justify-self:stretch;font-size:15px;font-weight:850;text-align:right;white-space:nowrap}.detail-grid{width:min(100%,936px);display:grid;grid-template-columns:minmax(280px,1fr) minmax(360px,1fr);gap:24px;margin:0 auto;padding:28px 48px 64px}.info-panel,.split-panel,.split-card{display:grid;align-content:start;gap:22px}.info-panel h2,.split-panel h2,.split-card h3{margin:0;font-size:16px}.info-panel label,.split-card label{display:grid;gap:10px;color:#566273}.info-panel label>span,.split-card label>span{color:#9ab0c8}.field-hint{color:var(--muted);font-size:12px;font-weight:650;line-height:1.4}.field-hint.locked{color:#08745f}.info-panel input,.split-card input,.split-card select{width:100%;min-height:48px;border:1px solid #d0deea;border-radius:6px;background:#fff;color:var(--ink);outline:none;padding:0 16px}.category-select-button,.vat-select-button{width:100%;min-height:48px;border-radius:6px;text-align:left;padding:0 16px}.info-panel input[readonly]{color:#9ab0c8}.split-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.split-heading span{font-size:14px}.split-heading span.balanced{color:#20a78f}.split-heading span.unbalanced{color:#b42318}.split-list{display:grid;gap:16px}.split-card{border:1px solid var(--line);border-radius:7px;padding:28px 24px}.split-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.remove-split-button{border:0;background:transparent;color:#b42318;cursor:pointer;font-size:13px;font-weight:850;padding:0}.suffix-field,.currency-field{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;border:1px solid #a8bdd3;border-radius:6px;overflow:hidden}.suffix-field input,.currency-field input{border:0}.suffix-field span,.currency-field span{color:#8a95a3;font-size:22px;justify-self:center}.tax-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--line)}.tax-preview div{display:grid;gap:5px;background:#f8fbfd;padding:12px}.tax-preview span{color:var(--muted);font-size:12px;font-weight:750}.tax-preview strong{color:var(--ink);font-size:14px;font-weight:850;white-space:nowrap}.split-balance{border:1px solid var(--line);border-radius:7px;padding:14px 16px}.split-balance div{display:flex;align-items:center;justify-content:space-between;gap:12px}.split-balance span{color:var(--muted);font-size:13px;font-weight:750}.split-balance strong{font-size:18px}.split-balance.balanced{border-color:#a4dacb;background:#effaf6;color:#08745f}.split-balance.unbalanced{border-color:#f1b4ae;background:#fff5f4;color:#b42318}.switch-line{display:inline-grid!important;grid-template-columns:48px auto;align-items:center;gap:16px!important}.switch-line input{position:absolute;opacity:0;pointer-events:none}.switch-ui{width:48px;height:28px;border-radius:999px;background:#a8bdd3;position:relative}.switch-ui:after{content:"";position:absolute;width:20px;height:20px;left:4px;top:4px;border-radius:50%;background:#fff;transition:transform .15s ease}.switch-line input:checked+.switch-ui{background:#20a78f}.switch-line input:checked+.switch-ui:after{transform:translate(20px)}.add-split-button,.save-button{min-height:42px;border-radius:22px;cursor:pointer;font-weight:850}.add-split-button{border:1px solid #22364d;background:#fff;color:#2c3f55}.save-button:disabled{background:#a8bdd3;cursor:not-allowed}.category-workspace{width:min(100%,920px);margin:0 auto;padding:28px 24px 64px}.vat-workspace{width:min(100%,430px);margin:0 auto;padding:28px 16px 64px}.vat-menu{overflow:hidden;border:1px solid var(--soft-line);border-radius:8px;background:#fff;box-shadow:0 12px 34px #10182824}.vat-rule-note{margin:0 0 14px;border:1px solid #d0deea;border-radius:8px;background:#f7fafc;color:#344054;font-size:13px;font-weight:700;line-height:1.45;padding:12px 14px}.vat-rule-note.locked{border-color:#a4dacb;background:#effaf6;color:#08745f}.vat-group h2{margin:0;background:#f2f4f6;color:#4b5563;font-size:14px;font-weight:650;padding:12px 16px}.vat-options{display:grid}.vat-option{min-height:48px;border:0;background:#fff;color:var(--ink);cursor:pointer;font-size:17px;font-weight:500;text-align:left;padding:0 16px}.vat-option:hover,.vat-option.active{background:#eef0f2}.category-search{min-height:52px;display:flex;align-items:center;gap:12px;border:1px solid #a8bdd3;border-radius:8px;color:#8792a0;margin-bottom:24px;padding:0 16px}.category-search input{width:100%;min-width:0;border:0;color:var(--ink);outline:0}.category-groups{display:grid;gap:24px}.category-group{display:grid;gap:10px}.category-group h2{margin:0;color:var(--ink);font-size:17px;font-weight:850}.category-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:8px;overflow:visible}.category-option{min-height:74px;display:grid;align-content:start;gap:5px;border:0;border-top:1px solid var(--soft-line);background:#fff;color:#2c3f55;cursor:pointer;font-size:14px;font-weight:700;position:relative;text-align:left;padding:11px 14px 12px}.category-option-name{color:#2c3f55;font-size:14px;font-weight:850;line-height:1.25}.category-option-detail{color:var(--muted);font-size:12px;font-weight:600;line-height:1.35}.category-option:nth-child(1),.category-option:nth-child(2){border-top:0}.category-option:nth-child(odd){border-right:1px solid var(--soft-line)}.category-option:hover,.category-option.active{background:#f0faf7;z-index:4}.category-option:hover .category-option-name,.category-option.active .category-option-name{color:var(--accent-dark)}.category-option:hover .category-option-detail,.category-option.active .category-option-detail{color:#335f59}.category-option.active{box-shadow:inset 4px 0 0 var(--accent)}.category-option:after{content:attr(data-description);width:min(360px,calc(100vw - 40px));position:absolute;left:14px;top:calc(100% + 8px);z-index:10;border:1px solid #b9cadd;border-radius:8px;background:#fff;box-shadow:0 14px 36px #10182829;color:var(--ink);font-size:13px;font-weight:650;line-height:1.4;opacity:0;padding:12px 14px;pointer-events:none;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease;white-space:normal}.category-option:nth-child(2n):after{left:auto;right:14px}.category-option:hover:after,.category-option:focus-visible:after{opacity:1;transform:translateY(0)}@media(max-width:900px){.app-header,.workspace,.detail-grid{padding-left:14px;padding-right:14px}.summary-row,.detail-grid{grid-template-columns:1fr}.toolbar{justify-items:stretch}.search-field{width:100%}.import-strip,.table-title-row{align-items:start;flex-direction:column}.category-list{grid-template-columns:1fr}.category-option:nth-child(2){border-top:1px solid var(--soft-line)}.category-option:nth-child(odd){border-right:0}.category-option:after,.category-option:nth-child(2n):after{left:10px;right:auto}.tax-preview{grid-template-columns:1fr}}
