.sd-container{position:absolute;top:100%;left:0;margin-top:4px;min-width:100%;z-index:30;padding:1rem;background:#fff;border:1px solid #e5e7eb;border-radius:.375rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;box-sizing:border-box}.sd-container.sd-container--tax-wide{min-width:min(420px,calc(100vw - 48px));max-width:calc(100vw - 48px)}.sd-container.sd-container--anchor-end{left:auto;right:0}.sd-header{font-size:.75rem;line-height:1rem;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-top:.75rem;margin-bottom:.5rem}.sd-container>.sd-header:first-child{margin-top:0}.sd-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding-top:.25rem;padding-bottom:.25rem}.sd-row__label{flex:1;min-width:0;font-size:.875rem;line-height:1.25rem;font-weight:400;color:#4b5563;white-space:normal}.sd-row__value{flex-shrink:0;font-size:.875rem;line-height:1.25rem;font-weight:500;color:#111827;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.sd-container--tax-wide .sd-row__label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sd-row--filter{position:relative;width:100%;font:inherit;border:none;background:transparent;cursor:pointer;text-align:left;padding-left:.375rem;padding-right:.375rem;margin-left:-.375rem;border-radius:6px}.sd-row--filter:hover:not(.sd-row--active){background:#f8fafc}.sd-row__filter-icon{position:absolute;left:-.75rem;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;color:#94a3b8;opacity:0;transition:opacity .15s}.sd-row--filter:hover .sd-row__filter-icon,.sd-row--filter.sd-row--active .sd-row__filter-icon{opacity:1}.sd-row--filter-business.sd-row--active{background:#f5f3ff;box-shadow:inset 0 0 0 1px #ddd6fe}.sd-row--filter-business.sd-row--active .sd-row__filter-icon{color:#7c3aed}.sd-row--filter-deductibles.sd-row--active{background:#f0fdfa;box-shadow:inset 0 0 0 1px #99f6e4}.sd-row--filter-deductibles.sd-row--active .sd-row__filter-icon{color:#0d9488}.sd-row--filter-warning.sd-row--active{background:#fff7ed;box-shadow:inset 0 0 0 1px #fed7aa}.sd-row--filter-warning.sd-row--active .sd-row__filter-icon{color:#c2410c}.sd-row--bold{margin-top:.25rem}.sd-row--bold .sd-row__label,.sd-row--bold .sd-row__value{font-size:1rem;line-height:1.5rem;font-weight:700;color:#111827}.sd-divider{border-top:1px solid #f3f4f6;margin-top:.5rem;margin-bottom:.5rem}.sd-section{border-bottom:1px solid #f3f4f6}.sd-section:last-of-type{border-bottom:none}.sd-section__header{display:flex;align-items:stretch;gap:.25rem;min-height:2rem;border-radius:6px}.sd-section__header:hover:not(.sd-section__header--active){background:#f8fafc}.sd-section__header--income.sd-section__header--active:hover{background:#d1fae5}.sd-section__header--business.sd-section__header--active:hover{background:#ede9fe}.sd-section__header--deductibles.sd-section__header--active:hover{background:#ccfbf1}.sd-section__header:hover .sd-section__filter,.sd-section__header:hover .sd-section__expand{background:transparent}.sd-section__expand{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.5rem;padding:0;border:none;background:transparent;cursor:pointer;color:#94a3b8;border-radius:4px}.sd-section__header:hover .sd-section__expand{color:#64748b}.sd-section__header--income.sd-section__header--active:hover .sd-section__expand,.sd-section__header--income.sd-section__header--active .sd-section__expand{color:#059669}.sd-section__header--business.sd-section__header--active:hover .sd-section__expand,.sd-section__header--business.sd-section__header--active .sd-section__expand{color:#7c3aed}.sd-section__header--deductibles.sd-section__header--active:hover .sd-section__expand,.sd-section__header--deductibles.sd-section__header--active .sd-section__expand{color:#0d9488}.sd-section__filter{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.25rem .375rem .25rem 0;border:none;background:transparent;cursor:pointer;border-radius:6px;text-align:left}.sd-section__header--active{border-radius:6px}.sd-section__header--income.sd-section__header--active{background:#ecfdf5;box-shadow:inset 0 0 0 1px #a7f3d0}.sd-section__header--business.sd-section__header--active{background:#f5f3ff;box-shadow:inset 0 0 0 1px #ddd6fe}.sd-section__header--deductibles.sd-section__header--active{background:#f0fdfa;box-shadow:inset 0 0 0 1px #99f6e4}.sd-section__header--active .sd-section__filter,.sd-section__header--active .sd-section__filter:hover,.sd-section__header--active:hover .sd-section__filter{background:transparent}.sd-section__label-wrap{display:inline-flex;align-items:center;gap:.375rem;min-width:0;flex:1}.sd-section__label{font-size:.875rem;line-height:1.25rem;font-weight:500;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sd-section__filter--income .sd-section__label{color:#047857}.sd-section__filter--business .sd-section__label{color:#6d28d9}.sd-section__filter--deductibles .sd-section__label{color:#0f766e}.sd-section__value{flex-shrink:0;font-size:.875rem;line-height:1.25rem;font-weight:600;color:#111827;font-variant-numeric:tabular-nums;white-space:nowrap}.sd-section__body{padding:.25rem 0 .5rem 1.75rem}.sd-section__body .sd-header{margin-top:.5rem}.sd-section__body .sd-header:first-child{margin-top:0}.sd-section__hint{margin:.125rem 0 0;font-size:.6875rem;line-height:1.2;color:#94a3b8;font-style:italic}.calc-panel{position:fixed;width:264px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 20px 25px -5px #0f172a26,0 8px 10px -6px #0f172a1f;z-index:120;-webkit-user-select:none;user-select:none;outline:none}.calc-panel:focus-within{border-color:#0d9488;box-shadow:0 20px 25px -5px #0f172a26,0 8px 10px -6px #0f172a1f,0 0 0 2px #0d948840}.calc-header{display:flex;align-items:center;gap:8px;padding:8px 8px 8px 12px;border-bottom:1px solid #e2e8f0;cursor:grab}.calc-header--dragging{cursor:grabbing}.calc-title{flex:1;font-size:13px;font-weight:600;color:#0f172a}.calc-icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:5px;border:none;border-radius:6px;background:transparent;color:#64748b;cursor:pointer}.calc-icon-btn:hover{background:#f1f5f9;color:#0f172a}.calc-display{padding:10px 12px 12px;text-align:right}.calc-display__hint{min-height:16px;font-size:12px;color:#94a3b8;font-variant-numeric:tabular-nums}.calc-display__value{font-size:28px;font-weight:600;color:#0f172a;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calc-display__value--error{font-size:15px;color:#b91c1c}.calc-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:0 10px 12px}.calc-key{padding:12px 0;border:1px solid #e2e8f0;border-radius:8px;background:#fff;font-size:15px;font-weight:500;color:#0f172a;cursor:pointer;transition:background .12s}.calc-key:hover{background:#f1f5f9}.calc-key:active{background:#e2e8f0}.calc-key--function{background:#f8fafc;color:#475569}.calc-key--operator{background:#f0fdfa;border-color:#99f6e4;color:#0f766e;font-weight:600}.calc-key--equals{background:#0d9488;border-color:#0d9488;color:#fff;font-weight:600}.calc-key--equals:hover,.calc-key--equals:active{background:#0f766e}.calc-hint{padding:0 12px 10px;font-size:11px;line-height:1.5;color:#94a3b8;text-align:center}.range-slider-wrap input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:8px;border-radius:4px;background:#e2e8f0;outline:none}.range-slider-wrap input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#0d9488;cursor:pointer;box-shadow:0 1px 3px #0f172a2e;border:2px solid #fff}.range-slider-wrap input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#0d9488;cursor:pointer;box-shadow:0 1px 3px #0f172a2e;border:2px solid #fff}.app{min-height:100vh;background:#f9fafb;color:#1e293b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.main-content{max-width:1280px;margin:0 auto;padding:32px 32px 96px}.app-build-info{position:fixed;right:8px;bottom:4px;z-index:10;color:#cbd5e1;font-size:10px;line-height:1;white-space:nowrap;pointer-events:none}.top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.top-bar h1{margin:0;font-size:24px;font-weight:700;letter-spacing:-.025em;color:#0f172a}.icon-btn{padding:8px;border-radius:8px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#475569;transition:all .2s}.icon-btn:hover{background:#f1f5f9}.tools-menu-item{width:100%;padding:10px 14px;background:transparent;border:none;border-radius:0;font-size:13px;color:#475569;cursor:pointer;text-align:left;display:flex;align-items:center;gap:8px}.tools-menu-item:hover{background:#f1f5f9}.tools-menu-item--active{background:#f1f5f9;font-weight:600}.section{margin-bottom:24px;padding:16px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 1px 2px #0000000d}.section h2{margin-top:0;font-size:18px;color:#1e293b}.controls{display:flex;gap:8px;align-items:center;margin-top:12px;flex-wrap:wrap}.choice-bars{display:flex;flex-wrap:wrap;gap:8px}.choice-bar{padding:8px 16px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#475569;cursor:pointer;font-weight:500;font-size:14px;transition:all .2s}.choice-bar:hover{background:#f1f5f9;border-color:#cbd5e1}.choice-bar.selected{border:1px solid #0d9488;background:#0d9488;color:#fff;font-weight:600}.btn-primary{padding:10px 16px;font-size:14px;font-weight:500;color:#fff;background:#0d9488;border:none;border-radius:8px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 6px -1px #0d94881a,0 2px 4px -1px #0d94880f}.btn-primary:hover{background:#0f766e}.btn-secondary{padding:10px 16px;font-size:14px;font-weight:500;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}.btn-secondary:hover{background:#f1f5f9}.validation-card{background:#d1fae5;border:1px solid #a7f3d0;padding:16px;border-radius:12px;display:flex;align-items:center;gap:12px}.validation-icon{padding:8px;background:#a7f3d0;border-radius:9999px;color:#059669;display:flex;align-items:center;justify-content:center}.stat-card{background:#fff;border:1px solid #f1f5f9;padding:12px 16px;border-radius:12px;box-shadow:0 1px 2px #0000000d}.transaction-table-wrapper{contain:layout paint}.transaction-table-card{content-visibility:auto;contain-intrinsic-size:auto 400px}.transaction-table{width:100%;border-collapse:collapse;text-align:left}.transaction-table thead{background:#f8fafc;border-bottom:1px solid #f1f5f9}.transaction-table th{padding:8px 16px;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#64748b}.transaction-table tbody tr{border-bottom:1px solid #f8fafc}.transaction-table tbody tr:hover{background:#f8fafccc;transition:background-color .15s ease-out}.transaction-table td{padding:8px 16px;font-size:14px;color:#475569}.transaction-table.transaction-table--nested-group th{padding:4px 8px;font-size:11px}.transaction-table.transaction-table--nested-group td{padding:4px 8px;font-size:12px;line-height:1.25}.transaction-table tbody tr.grouped-summary-main-row td{padding-top:14px;padding-bottom:14px}.transaction-table .tabular-nums{font-variant-numeric:tabular-nums}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:9999px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.badge-deposit{background:#d1fae5;color:#065f46}.badge-deposit:hover{background:#a7f3d0}.badge-withdrawal{background:#fce7f3;color:#9f1239}.badge-withdrawal:hover{background:#fbcfe8}.tab-btn{padding:8px 16px;font-size:14px;font-weight:500;border-radius:6px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .2s}.tab-btn:hover{background:#f8fafc;border-color:#cbd5e1}.tab-btn-active{background:#0d9488;color:#fff;border-color:#0d9488;font-weight:600}.tab-btn-active:hover{background:#0f766e;border-color:#0f766e}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes settingsDrawerSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.integration-key-row .integration-key-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s;flex-shrink:0}.integration-key-row:hover .integration-key-actions{opacity:1}.integration-key-action-btn{width:28px;height:28px;border-radius:6px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#475569;padding:0;transition:background .2s}.integration-key-action-btn:hover:not(:disabled){background:#f1f5f9}.integration-key-action-btn--danger{color:#b91c1c}.integration-key-action-btn--danger:hover:not(:disabled){background:#fee2e2}.integration-key-action-btn:disabled{opacity:.5;cursor:not-allowed}.fx-strategy-card{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.fx-strategy-card:hover{border-color:#94a3b8}.fx-strategy-card--selected{border-color:#0d9488;background:#f0fdfa;box-shadow:0 0 0 1px #0d9488}.fx-strategy-card input[type=radio]{margin-top:2px;accent-color:#0d9488;flex-shrink:0}.fx-strategy-recommended{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#0f766e;background:#ccfbf1;border:1px solid #99f6e4;border-radius:999px;padding:2px 8px;white-space:nowrap}.fx-source-pill{display:inline-flex;align-items:center;font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;background:#f1f5f9;color:#475569}.fx-source-pill--boc{background:#ecfeff;color:#0e7490}.fx-override-row{display:grid;grid-template-columns:1fr 72px 1fr auto;gap:8px;align-items:center;font-size:13px;color:#475569;padding:8px 6px;border-radius:8px;border-bottom:none;transition:background .12s ease}.fx-override-row:hover{background:#f8fafc}.fx-override-row .fx-override-actions{display:flex;gap:2px;opacity:.55;transition:opacity .12s ease}.fx-override-row:hover .fx-override-actions{opacity:1}.data-sources-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;box-sizing:border-box}.data-sources-modal{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;min-width:420px;max-width:90vw;max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden}.data-sources-modal__header{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid #f1f5f9}.data-sources-modal__header h3{margin:0;font-size:18px;font-weight:600;color:#1e293b}.data-sources-modal__scope{display:block;margin-top:2px;font-size:12px;color:#94a3b8}.data-sources-modal__body{flex:1;overflow-y:auto;padding:16px 24px 24px}.data-source-section-row td{padding:0 12px 8px;border-bottom:none;background:transparent}.data-source-section-row:first-child td{padding-top:12px}.data-source-section-row:not(:first-child) td{padding-top:28px}.data-sources-section-title{margin:0;font-size:14px;font-weight:600;color:#1e293b}.data-sources-table-wrap{overflow-x:auto}.data-sources-table{width:100%;border-collapse:collapse;font-size:14px}.data-sources-col-count,.data-sources-col-time{width:1%;white-space:nowrap}.data-sources-col-action{width:48px}.data-source-row{border-bottom:1px solid #f1f5f9}.data-source-row__cell{padding:12px;vertical-align:middle}.data-source-row__cell--source{color:#0f172a;font-weight:500}.data-source-row__cell--count{text-align:right;white-space:nowrap;color:#475569}.data-source-row__cell--time{color:#64748b}.data-source-row__time-col{text-align:right}.data-source-row__timestamp{white-space:nowrap}.data-source-row__source{display:inline-flex;align-items:center;gap:8px;min-width:0}.data-source-row__indicator{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex-shrink:0;color:#94a3b8}.data-source-row__dot{width:9px;height:9px;border-radius:50%}.data-source-row__action{display:flex;align-items:center;justify-content:flex-end;min-height:32px}.data-source-sync-msg{font-size:11px;margin-top:2px}.data-source-sync-msg--error{color:#dc2626}.data-source-sync-msg--ok{color:#16a34a}.data-source-action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;padding:0}.data-source-action-btn--sync{background:#e0f2fe;color:#0369a1}.data-source-action-btn--sync:disabled{opacity:.6;cursor:not-allowed}.data-source-action-btn--remove{background:#fee2e2;color:#b91c1c}:root{font-family:Segoe UI,Roboto,Arial,sans-serif;color:#111}body{margin:0;background:#f9fafb}*{box-sizing:border-box}button{padding:8px 16px;border-radius:4px;border:1px solid #cfd8e3;background:#eaf0ff;cursor:pointer;font-size:14px;font-family:inherit}button:hover{background:#d7e7ff}button:disabled{opacity:.5;cursor:not-allowed}input[type=text],input[type=password],input[type=file]{padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}textarea{width:100%;min-height:150px;padding:10px;font-family:monospace;font-size:12px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box;resize:vertical}.hidden{display:none}.desc-td-truncate{max-width:300px}
