:root{color-scheme:light;--paper:#f6f3f7;--ink:#302238;--muted:#716278;--line:#e1d8e5;--accent:#75468b}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.45}button,input{font:inherit}button{cursor:pointer;background:var(--accent);color:white;border:1px solid var(--accent);border-radius:8px;padding:12px 18px;font-weight:600}button:hover{background:#603773}button:disabled{opacity:.6;cursor:wait}button:focus-visible,input:focus-visible{outline:3px solid #a27bb5;outline-offset:3px}.gate{max-width:440px;margin:12vh auto;padding:30px 26px}.brand{display:flex;align-items:center;gap:12px}.brand strong{font-size:19px;letter-spacing:-.4px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:var(--accent);color:white;font-weight:700;font-size:15px}.domain{display:block;font-size:12px;color:var(--muted)}h1{font-size:30px;line-height:1.2;letter-spacing:-1px;margin:36px 0 14px}.muted{color:var(--muted)}label{margin:25px 0 8px;font-size:13px;font-weight:600}input,label{display:block}input{width:100%;padding:12px 14px;border:1px solid #b8a8c0;border-radius:8px;background:#fff;color:var(--ink)}form button{width:100%;margin-top:14px}.footnote{font-size:12px;color:var(--muted);margin-top:25px}.error{color:#a12e22}.success{color:#285f3b}.shell{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100dvh;background:var(--paper)}.nav{background:#eee8f1;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:20px 0 max(16px,env(safe-area-inset-bottom,0px));height:100dvh;position:-webkit-sticky;position:sticky;top:0}.nav .brand{gap:10px;padding:0 18px 22px}.nav .brand-mark{width:34px;height:34px;border-radius:50%;border:1px solid #75468b;background:#e7d8ee;color:#75468b;font-size:12px;font-weight:600;flex-shrink:0;letter-spacing:.02em}.brand-text{min-width:0}.brand-name{font-size:15px;font-weight:600;letter-spacing:-.01em;white-space:nowrap}.brand-sub{font-size:12px;color:#716278;margin-top:1px}.nav-list{display:flex;flex-direction:column;gap:2px;padding:0 10px}.nav-item{display:flex;align-items:center;gap:11px;width:100%;text-decoration:none;font-size:14px;padding:9px 12px;border-radius:8px;background:transparent;color:#716278;font-weight:400;min-height:44px;touch-action:manipulation}.nav-item:hover{background:color-mix(in srgb,#75468b 8%,var(--paper));color:var(--ink)}.nav-item.is-active{background:#e7d8ee;color:#302238;font-weight:500}.nav-num{font-size:11px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.06em;color:#716278;flex-shrink:0}.nav-label{flex:1 1;min-width:0}.nav-spacer{flex:1 1;min-height:12px}.nav-foot{margin:0 10px;padding:16px 8px 4px;border-top:1px solid var(--line)}.ghost-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;background:transparent;border:1px solid #b8a8c0;color:#716278;font-size:12px;font-weight:400;padding:7px 8px;border-radius:6px;white-space:nowrap}.ghost-btn:hover{background:transparent;border-color:#75468b;color:#302238}.nav-close-btn,.nav-rail-btn{display:grid;place-items:center;margin-left:auto;width:24px;height:28px;flex-shrink:0;border:0;border-radius:5px;background:transparent;color:#716278;padding:0;font-size:22px;font-weight:400}.nav-close-btn:hover,.nav-rail-btn:hover{background:#e1d8e5;color:var(--ink)}.nav-close-btn{display:none}.workspace{min-width:0;display:flex;flex-direction:column;min-height:100dvh}.topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding:24px 32px 18px;border-bottom:1px solid var(--line)}.topbar-title{display:flex;align-items:center;gap:10px}.topbar h1{font-size:30px;font-weight:500;letter-spacing:-.02em;line-height:1.1;margin:0}.body{padding:24px 32px;flex:1 1}.menu-btn{display:none}.stub-panel{background:#ffffff;border:1px solid var(--line);border-radius:8px;padding:24px;max-width:900px;min-height:180px}.stub-label{font-size:12px;color:#716278}.stub-panel h2{font-size:18px;font-weight:500;letter-spacing:-.01em;margin:14px 0 8px}.stub-panel p{color:#716278;margin:0}.nav-scrim{display:none}@media(min-width:1101px){.shell.is-nav-rail{grid-template-columns:64px minmax(0,1fr)}.is-nav-rail .nav{overflow:hidden}.is-nav-rail .brand{flex-direction:column;padding:0 8px 16px;gap:10px}.is-nav-rail .nav-rail-btn{margin-left:0}.is-nav-rail .brand-text,.is-nav-rail .nav-btn-label,.is-nav-rail .nav-label{display:none}.is-nav-rail .nav-list{padding:0 6px}.is-nav-rail .nav-item{justify-content:center;padding-left:0;padding-right:0;gap:0}.is-nav-rail .nav-foot{margin:0 6px;padding:12px 0 4px}.is-nav-rail .ghost-btn{min-height:44px;padding:7px 0}}@media(max-width:1100px){.shell,.shell.is-nav-rail{grid-template-columns:minmax(0,1fr)}.nav{position:fixed;inset:0 auto 0 0;width:238px;z-index:30;transform:translateX(-100%);visibility:hidden;pointer-events:none;transition:transform .18s ease,visibility .18s ease;background:#eee8f1;box-shadow:0 16px 40px #3022381f}.nav.is-open{transform:none;visibility:visible;pointer-events:auto}.nav-list{overflow-y:auto}.nav-rail-btn{display:none}.nav-close-btn{display:grid}.nav-scrim{display:block;position:fixed;inset:0;z-index:29;border:0;border-radius:0;padding:0}.nav-scrim,.nav-scrim:hover{background:#30223847}.menu-btn{display:grid;place-items:center;width:36px;height:36px;background:transparent;border:1px solid #b8a8c0;color:#302238;border-radius:8px;padding:0}.menu-btn:hover{background:#e1d8e5}.topbar{align-items:center;padding:16px 18px;gap:12px}.topbar h1{font-size:22px}.body{padding:22px 18px}.stub-panel{padding:20px}.gate{margin:8vh auto;padding:24px}}@media(prefers-reduced-motion:reduce){.nav{transition:none}}.nav-children{margin:2px 0 8px 22px;padding-left:8px;border-left:1px solid var(--line)}.nav-child{font-size:13px;padding:8px 10px;min-height:40px}.child-short{display:none}.nav-item.is-parent-active{color:var(--ink);font-weight:600}@media(min-width:1101px){.is-nav-rail .nav-children{margin:2px 0 8px;padding:0;border:0}.is-nav-rail .child-short{display:block;font-size:11px}.is-nav-rail .nav-child{min-height:36px}}.notes-editor{max-width:1100px}.notes-status{font-size:12px;color:var(--muted);min-height:18px}.notes-editor textarea{display:block;width:100%;min-height:60vh;padding:20px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink);font:14px/1.7 Inter,system-ui,sans-serif;resize:vertical}.notes-editor textarea:focus{outline:2px solid #75468b;outline-offset:2px}.notes-editor button{margin-top:12px}.transactions{max-width:1500px}.tx-demo{margin:0 0 16px;font-size:12px;color:var(--accent)}.tx-banners{display:grid;grid-template-columns:repeat(3,1fr);background:#eee8f1;border:1px solid var(--line);border-radius:8px;margin-bottom:16px}.tx-banner{display:grid;grid-template-columns:1fr auto;grid-gap:5px 14px;gap:5px 14px;padding:12px 18px;border-right:1px solid #ded3e4;align-items:center}.tx-banner:last-child{border:0}.tx-banner strong{font-size:14px}.tx-count{font-size:18px;text-align:right}.tx-checked,.tx-count small{font-size:11px;color:var(--muted)}.tx-warning{justify-self:end;background:#fff0df;color:#85500c;padding:2px 6px;font-size:11px;border-radius:5px}.tx-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin-bottom:24px;overflow:auto}.tx-tabs button{background:transparent;color:var(--muted);border:0;border-bottom:3px solid transparent;border-radius:0;padding:12px 18px;white-space:nowrap;font-weight:400}.tx-tabs button[aria-pressed=true]{border-color:var(--accent);color:var(--accent);font-weight:650}.tx-tabs button:hover{background:#eee8f1}.tx-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.tx-intro h2{font-size:21px;letter-spacing:-.4px;font-weight:550;margin:0}.tx-intro p{color:var(--muted);margin:5px 0}.tx-intro>span{font-size:12px;color:var(--muted)}.tx-notice{border-left:3px solid #b88845;background:#fff7eb;color:#75512c;padding:12px 16px;margin:0 0 22px;font-size:13px}.tx-filters{display:flex;gap:4px;margin-bottom:18px}.tx-filters button{background:transparent;border:1px solid var(--line);color:var(--muted);padding:8px 14px;font-weight:400;border-radius:6px}.tx-filters button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:white}.tx-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px;background:white}.transactions table{border-collapse:collapse;width:100%;min-width:850px;text-align:left}.transactions th{font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.7px;background:#fcfafc;color:var(--muted);padding:12px 20px}.transactions td{padding:20px;vertical-align:top;border-top:1px solid #eee8f1}.transactions td small{display:block;font-size:12px;color:var(--muted);margin-top:4px;max-width:250px}.transactions td strong,.tx-company{font-weight:600}.tx-company{font-size:12px}.tx-amount{white-space:nowrap;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tx-status{font-size:13px;color:var(--accent)}.tx-foot{font-size:12px;color:var(--muted);margin-top:20px}@media(max-width:800px){.tx-banners{grid-template-columns:1fr}.tx-banner{border-right:0;border-bottom:1px solid #ded3e4}.tx-intro{display:block}.tx-tabs button{padding:10px 12px;font-size:13px}}.transactions>input{margin-bottom:16px;max-width:500px}.bk-review{display:block;background:transparent;border:1px solid var(--line);color:var(--accent);padding:5px 10px;font-size:12px;margin-top:8px}.bk-review:hover{background:#eee8f1}.bk-editor{margin-top:30px;background:white;border:1px solid var(--line);border-radius:8px;padding:24px}.bk-editor h2{margin:0;font-size:21px}.bk-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 20px;gap:0 20px}.bk-editor select{display:block;width:100%;padding:12px;border:1px solid var(--line);background:white;color:var(--ink);border-radius:6px}.bk-check{display:flex;gap:10px;align-items:center}.bk-check input{width:auto}.bk-close{float:right;background:transparent;color:var(--accent);border-color:var(--line)}.bk-preview{margin-top:20px;border-top:1px solid var(--line);padding-top:15px}.bk-empty{padding:24px;color:var(--muted)}.bk-rules{padding:20px;background:white;margin:16px 0}.bk-rules details{padding:10px;border-bottom:1px solid var(--line)}@media(max-width:700px){.bk-fields{grid-template-columns:1fr}}dialog.bk-editor{position:fixed;inset:0;width:min(960px,calc(100vw - 32px));max-height:calc(100dvh - 48px);margin:auto;overflow:auto;color:var(--ink);box-shadow:0 20px 80px #30223830}dialog.bk-editor::-webkit-backdrop{background:#30223880}dialog.bk-editor::backdrop{background:#30223880}dialog.bk-editor .bk-close{position:-webkit-sticky;position:sticky;top:0;background:white}@media(max-width:700px){dialog.bk-editor{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:18px}}.tx-success{border-color:var(--accent);background:#eee8f1;color:var(--ink)}.bk-spinner{display:inline-block;width:12px;height:12px;margin-right:8px;border:2px solid;border-right:2px solid transparent;border-radius:50%;vertical-align:-2px;animation:bk-spin .8s linear infinite}@keyframes bk-spin{to{transform:rotate(1turn)}}@media(prefers-reduced-motion:reduce){.bk-spinner{animation:none}}.bk-rule-fields{border:0;padding:0;min-width:0}.bk-rule-fields textarea{display:block;width:100%;padding:12px;border:1px solid var(--line);border-radius:6px;font:inherit;color:var(--ink)}.bk-rule-fields small{display:block;color:var(--muted);font-weight:400;margin-top:6px}.bk-rules{padding:0;background:transparent}.bk-rules>h3{margin:0 0 8px}.bk-rules>p{font-size:12px;color:var(--muted);margin:0 0 18px}.rules-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.rules-toolbar>input{width:310px;margin:0;padding:10px 12px}.rules-segments{display:flex;border:1px solid var(--line);border-radius:7px;padding:3px;gap:2px}.rules-outline,.rules-segments button{background:transparent;color:var(--ink);font-size:13px;font-weight:400;padding:7px 11px;border:1px solid var(--line);border-radius:6px;white-space:nowrap}.rules-segments button{border:0}.rules-segments button[aria-pressed=true]{background:#e5d8ec;color:var(--accent)}.rules-segments span{color:var(--muted);margin-left:5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rules-count{margin-left:auto;display:flex;gap:12px;align-items:center;color:var(--muted);font-size:13px}.rules-clear{background:transparent;color:var(--accent);border:0;padding:0;font-size:12px}.rules-table table{min-width:1000px}.rules-table td{padding:17px 16px;vertical-align:middle;font-size:13px;max-width:280px;overflow-wrap:anywhere}.rules-table th{padding:13px 16px}.rules-table tbody tr:hover{background:#f5f0f7}.rules-table td strong{font-size:14px}.rule-actions{text-align:right;white-space:nowrap;width:75px}.rule-direction{display:inline-block;border:1px solid var(--line);background:#eee8f1;color:var(--accent);padding:3px 9px;border-radius:20px;font-size:12px}.rule-column-filters{border:1px solid var(--line);border-radius:10px;background:white;overflow:auto;margin-bottom:16px}.rule-filter-row{display:grid;grid-template-columns:150px minmax(160px,1fr) minmax(160px,1fr) 55px;grid-gap:14px;gap:14px;align-items:center;padding:8px 16px;border-bottom:1px solid var(--line);min-width:650px;font-size:13px}.rule-filter-head{font-size:11px;text-transform:uppercase;letter-spacing:.6px;padding-block:13px;color:var(--muted)}.rule-filter-row input{margin:0;padding:7px 10px;font-size:13px}.rule-filter-row input[type=checkbox]{justify-self:end;width:auto;accent-color:var(--accent)}.rule-filter-head span:last-child{text-align:right}.rule-filter-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-size:12px;color:var(--muted)}.rules-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(max-width:700px){.rules-toolbar>input{width:100%}.rules-count{margin-left:0}}.rules-outline:hover,.rules-segments button:hover{background:#e5d8ec;color:var(--accent)}.rule-direction{overflow-wrap:normal}.rule-direction,.rules-table td:first-child{white-space:nowrap}.rules-table td{overflow-wrap:break-word}.category-input,.category-picker{position:relative}.category-input{display:flex}.category-input input{padding-right:40px}.category-input button{position:absolute;right:1px;top:1px;bottom:1px;width:36px;margin:0;padding:0;border:0;background:transparent;color:var(--accent)}.category-options{position:absolute;top:100%;left:0;right:0;z-index:5;max-height:230px;overflow:auto;background:white;border:1px solid var(--line);border-radius:6px;box-shadow:0 6px 18px #30223820;font-weight:400}.category-options [role=option]{padding:9px 12px;cursor:pointer}.category-options .is-active,.category-options [role=option]:hover{background:#eee8f1}.category-options p{padding:8px 12px}