:root{--color-bg-canvas: #0A0A0B;--color-bg-raised: #141416;--color-bg-subtle: #1E1E22;--color-bg-emphasis: #28282E;--color-surface: #141416;--color-surface-raised: #1C1C20;--color-border-subtle: #262629;--color-border-default: #34343A;--color-border-strong: #45454D;--color-text-primary: #FFFFFF;--color-text-secondary: #A6A6AD;--color-text-muted: #85858E;--color-accent: #2F86FF;--color-accent-strong: #54A1FF;--color-accent-deep: #1C6BE6;--color-accent-soft: rgba(47,134,255,.14);--color-accent-ring: rgba(47,134,255,.4);--color-supporting: #74B4FF;--color-supporting-strong: #9AC8FF;--color-supporting-muted: #C7CBD6;--color-crypto: #1FE6D6;--color-crypto-soft: rgba(31,230,214,.12);--color-crypto-ring: rgba(31,230,214,.45);--color-crypto-glow: rgba(31,230,214,.55);--color-positive: #3DD68C;--color-positive-soft: rgba(61,214,140,.12);--color-negative: #F0616A;--color-negative-soft: rgba(240,97,106,.12);--color-warning: #E5A84B;--color-warning-soft: rgba(229,168,75,.12);--color-action-primary: var(--color-accent);--color-action-primary-hover: var(--color-accent-strong);--color-money-positive: var(--color-positive);--color-money-negative: var(--color-negative);--color-money-neutral: var(--color-text-secondary);--color-status-info: var(--color-accent-strong);--color-status-success: var(--color-positive);--color-status-warning: var(--color-warning);--color-status-danger: var(--color-negative);--color-chart-1: var(--color-accent);--color-chart-2: var(--color-supporting);--color-chart-3: var(--color-positive);--color-chart-4: var(--color-negative);--color-chart-5: var(--color-crypto);--color-chart-muted: var(--color-bg-emphasis);--color-compare: #C792EA;--fc-hist: var(--color-accent);--fc-proj: var(--color-supporting-strong);--fc-compare: var(--color-compare);--fc-band: var(--color-accent);--fc-loan: var(--color-negative);--fc-event: var(--color-warning);--fc-axis: var(--color-text-primary);--fc-grid: var(--color-border-default);--fc-today: var(--color-text-secondary);--fc-delta-pos: var(--color-positive);--fc-delta-neg: var(--color-negative);--fc-tip-bg: var(--color-bg-raised);--fc-crosshair: var(--color-text-secondary);--fc-end-tag: var(--color-accent);--font-body: "Inter", sans-serif;--font-display: "Cormorant Garamond", Georgia, serif;--font-mono: "IBM Plex Mono", monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 8px;--focus-ring: 2px solid var(--color-accent-strong);--shadow-soft: 0 4px 16px rgba(0,0,0,.28);--shell-sticky-offset: 56px;--bg: var(--color-bg-canvas);--bg-2: var(--color-bg-raised);--bg-3: var(--color-bg-subtle);--bg-4: var(--color-bg-emphasis);--surface: var(--color-surface);--surface-2: var(--color-surface-raised);--border: var(--color-border-subtle);--border-2: var(--color-border-default);--border-3: var(--color-border-strong);--text: var(--color-text-primary);--text-2: var(--color-text-secondary);--text-muted: var(--color-text-muted);--crimson: var(--color-accent);--crimson-hi: var(--color-accent-strong);--crimson-lo: var(--color-accent-deep);--crimson-dim: var(--color-accent-soft);--crimson-rim: var(--color-accent-ring);--silver: var(--color-supporting);--silver-hi: var(--color-supporting-strong);--platinum: var(--color-supporting-muted);--cream: var(--color-text-primary);--on-accent: var(--color-bg-canvas);--crypto: var(--color-crypto);--crypto-bg: var(--color-crypto-soft);--crypto-rim: var(--color-crypto-ring);--crypto-glow: var(--color-crypto-glow);--positive: var(--color-positive);--positive-bg: var(--color-positive-soft);--negative: var(--color-negative);--negative-bg: var(--color-negative-soft)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px;line-height:1.55;min-height:100vh;-webkit-font-smoothing:antialiased}:root{--topnav-offset: 56px}.topnav{display:flex;align-items:center;background:var(--color-bg-raised);border-bottom:1px solid var(--color-border-subtle);padding:0 var(--space-5);height:auto;min-height:56px;position:sticky;top:0;z-index:100;gap:var(--space-4);box-shadow:0 1px 0 var(--color-border-subtle),0 4px 20px #00000040}.nav-brand{display:flex;align-items:center;gap:7px;margin-right:10px;flex-shrink:0}.brand-icon{width:24px;height:24px;flex-shrink:0;display:block}.brand-name{font-family:var(--font-display);font-size:17px;font-weight:700;letter-spacing:1.5px;color:var(--cream);text-transform:uppercase}.brand-accent{color:var(--crimson-hi)}.nav-links{display:flex;gap:var(--space-1);flex:1;min-width:0;overflow:visible;flex-wrap:wrap}.nav-link{display:flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:9.5px;font-weight:500;letter-spacing:.4px;text-transform:uppercase;min-height:44px;padding:var(--space-2);color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;text-decoration:none;transition:color .18s,border-color .18s,background .18s;white-space:nowrap;background:transparent}.nav-link:hover{color:var(--silver-hi);background:var(--bg-3)}.nav-link.active{color:var(--cream);border-bottom-color:var(--crimson);font-weight:600;text-shadow:0 0 12px var(--crimson-rim);box-shadow:0 1px 0 var(--crimson),0 3px 12px -2px var(--crimson-rim)}.nav-right{display:flex;align-items:center;gap:16px;flex-shrink:0}.nav-icon{font-size:16px;cursor:pointer;opacity:.45;transition:opacity .18s;color:var(--silver-hi)}.nav-icon:hover{opacity:.85}.notif-badge{position:absolute;top:-4px;right:-6px;min-width:14px;height:14px;padding:0 3px;border-radius:7px;background:var(--crimson);color:var(--cream);font-family:Inter,sans-serif;font-size:9px;font-weight:700;line-height:14px;text-align:center;box-sizing:border-box;pointer-events:none}.notif-panel{position:fixed;top:60px;right:24px;width:320px;max-height:480px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-top:2px solid var(--crimson);z-index:9000;font-family:Inter,sans-serif;font-size:12px;color:var(--text)}.notif-panel-header{padding:10px 12px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.notif-panel-title{font-family:Unbounded,sans-serif;font-size:11px;letter-spacing:.12em;color:var(--text-2)}.notif-panel-action{background:transparent;border:1px solid var(--border);color:var(--text-2);padding:3px 8px;font-family:Inter,sans-serif;font-size:10px;letter-spacing:.05em;cursor:pointer}.notif-panel-action:hover{color:var(--text);border-color:var(--text-muted)}.notif-item{padding:10px 12px;border-bottom:1px solid var(--border);cursor:pointer}.notif-item:last-child{border-bottom:0}.notif-item:hover{background:var(--bg)}.notif-item.read{opacity:.55}.notif-item-title{color:var(--text);font-weight:500;margin-bottom:2px}.notif-item-body{color:var(--text-2);font-size:11px;line-height:1.4}.notif-item-time{color:var(--text-muted);font-size:10px;margin-top:4px}.notif-empty{padding:24px 12px;text-align:center;color:var(--text-muted)}.wl-table{width:100%;border-collapse:collapse;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--text-2);margin-top:12px}.wl-table th{font-family:Unbounded,sans-serif;font-size:10px;letter-spacing:.12em;color:var(--text-muted);font-weight:500;padding:6px 8px;border-bottom:1px solid var(--border)}.wl-table td{padding:10px 8px;border-bottom:1px solid var(--border)}.wl-table tr:last-child td{border-bottom:0}.wl-sym{color:var(--text);font-weight:600}.wl-tag{font-size:9px;letter-spacing:.1em;color:var(--text-muted);background:var(--bg-3);padding:1px 5px;border-radius:2px;margin-left:4px}.wl-stale{color:var(--negative)}.wl-del{background:transparent;border:0;color:var(--text-muted);cursor:pointer;font-size:14px;padding:2px 6px}.wl-del:hover{color:var(--negative)}.pos-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:8px 0 12px;border-bottom:1px solid var(--border);margin-bottom:8px}.pos-totals .stat-val{font-family:Unbounded,sans-serif;font-size:14px;font-weight:500;color:var(--text);margin-top:2px}.pos-totals .stat-val.positive{color:var(--positive)}.pos-totals .stat-val.negative{color:var(--negative)}.pos-table{width:100%;border-collapse:collapse;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--text-2)}.pos-table th{font-family:Unbounded,sans-serif;font-size:9px;letter-spacing:.12em;color:var(--text-muted);font-weight:500;padding:4px 6px;border-bottom:1px solid var(--border)}.pos-table td{padding:6px;border-bottom:1px solid var(--border);vertical-align:top}.pos-table tr:last-child td{border-bottom:0}.pos-sym{color:var(--text);font-weight:600;font-size:12px}.pos-table td.positive{color:var(--positive)}.pos-table td.negative{color:var(--negative)}.notif-pref-list{display:grid;gap:10px}.notif-pref-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid var(--border);background:var(--surface)}.notif-pref-label{color:var(--text);font-family:Karla,Inter,sans-serif;font-size:13px;font-weight:500}.notif-pref-desc{color:var(--text-muted);font-size:11px;margin-top:2px}.notif-pref-toggle{position:relative;display:inline-block;width:36px;height:18px;cursor:pointer;flex-shrink:0}.notif-pref-toggle input{position:absolute;opacity:0;width:0;height:0}.notif-pref-track{position:absolute;inset:0;background:var(--bg-3);border:1px solid var(--border);border-radius:10px;transition:background .18s,border-color .18s}.notif-pref-thumb{position:absolute;left:2px;top:1px;width:12px;height:12px;background:var(--text-muted);border-radius:50%;transition:left .18s,background .18s}.notif-pref-toggle input:checked~.notif-pref-track{background:var(--crimson-dim);border-color:var(--crimson-rim)}.notif-pref-toggle input:checked~.notif-pref-track .notif-pref-thumb{left:20px;background:var(--cream)}.user-badge{width:32px;height:32px;background:var(--crimson);border:1px solid var(--crimson-hi);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Inter,sans-serif;font-size:11px;font-weight:700;color:var(--on-accent);cursor:pointer;letter-spacing:.5px}.app{min-height:100vh;background:var(--bg)}.section{display:none;padding:28px 32px;max-width:1440px;margin:0 auto}.section.active{display:block}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}.section-header h1{font-family:Cormorant Garamond,serif;font-size:28px;font-weight:700;letter-spacing:1px;color:var(--cream);text-transform:uppercase}.glitch-text{font-family:Cormorant Garamond,serif;font-size:26px;font-weight:700;letter-spacing:1px;color:var(--cream);text-transform:uppercase}.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{background:var(--surface);border:1px solid var(--border);padding:20px;border-radius:16px;position:relative;transition:border-color .2s,box-shadow .2s}.card:before{content:"";position:absolute;top:0;left:20px;right:20px;height:1px;background:linear-gradient(90deg,transparent,var(--crimson-rim),transparent);border-radius:0;opacity:0;transition:opacity .25s}.card:hover{border-color:var(--border-2);box-shadow:0 4px 24px #0000004d,0 0 0 1px var(--border-2)}.card:hover:before{opacity:1}.card.span-2{grid-column:span 2}.card.span-3{grid-column:span 3}.full-card{background:var(--surface);border:1px solid var(--border);padding:20px;border-radius:16px}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.card-title{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:2px;color:var(--text-muted);text-transform:uppercase;display:block;margin-bottom:10px}.stat-big{font-family:Cormorant Garamond,serif;font-size:38px;font-weight:700;color:var(--cream);line-height:1;margin:8px 0 5px;letter-spacing:-.5px}.stat-big.sm{font-size:28px}.stat-unit{font-size:18px;font-weight:400;color:var(--text-2);letter-spacing:0}.stat-change{font-family:IBM Plex Mono,monospace;font-size:11px;margin-bottom:10px;letter-spacing:.3px}.stat-sub{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--negative);margin-bottom:10px}.positive{color:var(--color-money-positive)}.negative{color:var(--color-money-negative)}.progress-bar{height:3px;background:var(--bg-4);margin:7px 0;border-radius:99px;overflow:hidden;border:none}.progress-bar.tall{height:6px;margin:10px 0}.progress-bar.neg .progress-fill{background:var(--negative)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--crimson-lo),var(--crimson),var(--crimson-hi));border-radius:99px;transition:width .7s ease}.goal-card .progress-bar{height:4px;overflow:visible;position:relative}.goal-card .progress-fill{background:linear-gradient(90deg,var(--silver) 0%,var(--silver-hi) 50%,var(--silver) 100%);box-shadow:0 0 4px #c2c8d073,0 0 8px #c2c8d033}.goal-tally{position:absolute;top:-3px;width:2px;height:10px;background:var(--silver-hi);border-radius:1px;transform:translate(-1px);box-shadow:0 0 3px #c2c8d0b3;cursor:help}.goal-tally:hover{background:#fff;box-shadow:0 0 5px #ffffffe6}.goal-tally.is-manual{background:var(--silver)}.goal-card[data-show-timeline="0"] .goal-tally{display:none}.cyber-btn-sm.timeline-toggle.timeline-on{background:var(--crimson);color:var(--on-accent);border-color:var(--crimson-hi)}.cyber-btn-sm.timeline-toggle.timeline-on:hover{background:var(--crimson-hi);border-color:var(--crimson-hi)}#goal-tally-pop{position:absolute;display:none;background:var(--surface);border:1px solid var(--silver);border-radius:4px;padding:8px 10px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text);box-shadow:0 0 12px #c2c8d040;pointer-events:none;z-index:100;min-width:160px;white-space:nowrap}.tally-pop-amt{font-family:Cormorant Garamond,serif;font-size:16px;color:var(--silver-hi);margin-bottom:4px}.tally-pop-meta{color:var(--text-muted);font-size:10px;margin-top:2px}.goal-toggle-row{display:flex;flex-direction:column;gap:8px;padding-top:8px}.goal-toggle{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--text-2)}.goal-toggle input[type=checkbox]{width:14px;height:14px;margin:0;cursor:pointer;accent-color:var(--silver-hi)}.mini-chart{width:100%;height:62px;margin-top:10px;overflow:hidden;border-bottom:1px solid var(--border)}.mini-chart.tall{height:110px}.mini-chart svg{width:100%;height:100%}.bar-chart{display:flex;align-items:flex-end;gap:8px;height:90px;padding:0 4px;border-bottom:1px solid var(--border);margin:12px 0}.bar-chart.wide{gap:14px}.bar-group{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1}.bar{width:100%;min-width:12px;transition:height .3s;border-radius:2px 2px 0 0}.bar.b1{background:var(--color-chart-1)}.bar.b2{background:var(--color-chart-muted)}.bar-label{font-family:IBM Plex Mono,monospace;font-size:9px;color:var(--text-muted);margin-top:5px}.legend{font-family:IBM Plex Mono,monospace;font-size:9px;color:var(--text-muted);display:flex;gap:14px;margin-top:6px;letter-spacing:.5px}.leg-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:4px}.leg-dot.crimson{background:var(--color-chart-1)}.leg-dot.cream{background:var(--color-chart-muted)}.budget-row{display:flex;justify-content:space-between;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-2);margin-bottom:2px;letter-spacing:.2px}.budget-row.mt{margin-top:14px}.tx-list{display:flex;flex-direction:column;gap:4px}.tx-row{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--bg-3);border-radius:4px;border-left:2px solid transparent;transition:border-color .18s,background .18s;cursor:pointer}.tx-row:hover{border-left-color:var(--crimson);background:var(--bg-4)}.tx-icon{font-size:14px;flex-shrink:0}.tx-info{display:flex;flex-direction:column;flex:1;font-size:12px}.tx-info span:last-child{color:var(--text-muted);font-size:10px;font-family:IBM Plex Mono,monospace;letter-spacing:.3px}.tx-amt{font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:500;color:var(--silver-hi);letter-spacing:.3px}.cyber-table{width:100%;border-collapse:collapse;font-family:Inter,sans-serif;font-size:13px}.cyber-table thead tr{background:var(--bg-3);border-bottom:1px solid var(--border-2)}.cyber-table th{padding:11px 16px;text-align:left;color:var(--text-muted);font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:2px;text-transform:uppercase;font-weight:400}.cyber-table td{padding:11px 16px;border-bottom:1px solid var(--border);color:var(--text-2)}.cyber-table tr:hover td{background:var(--bg-3);color:var(--cream)}.cyber-table .group-header td{background:var(--bg-3);color:var(--crimson-hi);font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:2.5px;text-transform:uppercase;padding:8px 16px;border-top:1px solid var(--border);font-weight:400}.cyber-table .total-row td{border-top:1px solid var(--border-2);color:var(--cream);font-weight:600;background:var(--bg-3)}.tx-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:8px}.cyber-btn{font-family:Inter,sans-serif;font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;padding:9px 18px;background:var(--crimson);color:var(--on-accent);border:1px solid var(--crimson-hi);cursor:pointer;border-radius:10px;transition:all .18s;box-shadow:0 0 14px -2px var(--crimson-rim)}.cyber-btn:hover{background:var(--crimson-hi);box-shadow:0 0 0 3px var(--crimson-dim),0 0 18px 0 var(--crimson-rim)}.cyber-btn-sm{font-family:Inter,sans-serif;font-size:11px;font-weight:500;letter-spacing:.4px;padding:6px 12px;background:var(--bg-3);color:var(--text-2);border:1px solid var(--border);cursor:pointer;border-radius:4px;transition:background-color .15s ease-out,border-color .15s ease-out,color .15s ease-out,transform .15s ease-out}.cyber-btn-sm:active{transform:scale(.97)}@media(hover:hover)and (pointer:fine){.cyber-btn-sm:hover{border-color:var(--border-3);color:var(--cream);background:var(--bg-4)}}.btn-group{display:flex;gap:6px;flex-wrap:wrap}.cyber-select{font-family:Inter,sans-serif;font-size:11px;font-weight:500;background:var(--bg-3);color:var(--text-2);border:1px solid var(--border);padding:6px 10px;cursor:pointer;outline:none;border-radius:4px;letter-spacing:.3px}.cyber-select:focus{border-color:var(--crimson-rim);color:var(--cream);box-shadow:0 0 0 3px var(--crimson-dim),0 0 14px -1px var(--crimson-rim)}.cyber-input{font-family:Inter,sans-serif;font-size:13px;background:var(--bg-3);color:var(--cream);border:1px solid var(--border);padding:9px 13px;flex:1;outline:none;border-radius:4px 0 0 4px;border-right:none;transition:border-color .18s}.cyber-input:focus{border-color:var(--crimson-rim);box-shadow:0 0 0 3px var(--crimson-dim),0 0 14px -1px var(--crimson-rim)}.account-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.acct-icon{width:34px;height:34px;background:var(--crimson-lo);border:1px solid var(--crimson-rim);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Cormorant Garamond,serif;font-size:14px;font-weight:700;color:var(--cream);flex-shrink:0}.acct-info{display:flex;flex-direction:column;flex:1;font-size:13px}.acct-info span:last-child{color:var(--text-muted);font-size:10px;font-family:IBM Plex Mono,monospace;letter-spacing:.5px}.summary-row{display:flex;justify-content:space-between;padding:5px 0;font-size:13px;color:var(--text-2)}.summary-row.sub{font-size:11px;color:var(--text-muted);padding-left:12px;font-family:IBM Plex Mono,monospace;letter-spacing:.3px}.summary-row.mt{margin-top:14px}.invest-row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid var(--border);font-size:12px;gap:8px;color:var(--text-2)}.invest-row span{flex:1}.invest-row.header span{color:var(--text-muted);font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:2px;text-transform:uppercase}.invest-row.total-row{border-top:1px solid var(--border-2);font-weight:600;color:var(--cream);border-bottom:none}.cf-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;margin-bottom:16px}@media(max-width:900px){.cf-grid-2{grid-template-columns:1fr}}.cf-cat-card{display:flex;flex-direction:column}.cf-row{display:flex;justify-content:space-between;align-items:center;padding:9px 2px;font-size:13px;border-bottom:1px solid var(--border);color:var(--text-2)}.cf-row:last-child{border-bottom:none}.cf-row .positive,.cf-row .negative{font-family:IBM Plex Mono,monospace;font-size:12px;letter-spacing:.02em}.cf-name{display:inline-flex;align-items:center;gap:8px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cf-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;flex-shrink:0;color:var(--text-muted);font-size:13px}.cf-empty{font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.5px;color:var(--text-muted);padding:16px 2px;text-align:center}.cf-history{margin-top:0}.cf-history .legend{justify-content:flex-start;margin-top:10px;padding-top:10px;border-top:1px solid var(--border);font-size:10px;letter-spacing:.06em;color:var(--text-2)}.cf-history .legend>span{display:inline-flex;align-items:center}.goal-meta{display:flex;justify-content:space-between;font-family:IBM Plex Mono,monospace;font-size:10px;margin-top:6px;letter-spacing:.3px}.forecast-meta{display:flex;gap:24px;font-family:IBM Plex Mono,monospace;font-size:10px;margin-top:10px;color:var(--text-muted);letter-spacing:.3px}.scenario-row{display:flex;justify-content:space-between;padding:10px 14px;margin-bottom:6px;border:1px solid var(--border);border-radius:4px;font-size:13px;cursor:pointer;transition:all .18s;color:var(--text-2)}.scenario-row:hover,.scenario-row.active{border-color:var(--crimson-rim);background:var(--crimson-dim);color:var(--cream)}.perf-tabs{display:flex;gap:4px;margin-bottom:14px;flex-wrap:wrap}.perf-tab{font-family:Inter,sans-serif;font-size:11px;font-weight:500;padding:5px 13px;border:1px solid var(--border);cursor:pointer;color:var(--text-muted);transition:all .18s;border-radius:2px;background:var(--bg-3);letter-spacing:.3px}.perf-tab.active,.perf-tab:hover{border-color:var(--crimson-rim);color:var(--cream);background:var(--crimson-dim)}.perf-stats{display:flex;gap:24px;margin-bottom:14px}.perf-stat{font-size:12px}.perf-stat>div:first-child{color:var(--text-muted);font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:3px}.perf-stat>div:last-child{font-family:Cormorant Garamond,serif;font-size:20px;font-weight:700;line-height:1}.banner-card{background:var(--bg-3);border:1px solid var(--border-2);border-left:3px solid var(--crimson);padding:13px 18px;display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;font-size:13px;color:var(--text-2);border-radius:4px}.empty-state{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-muted);text-align:center;padding:24px;border:1px dashed var(--border-2);border-radius:4px;margin-top:12px;letter-spacing:.5px}.ai-fab{position:fixed;bottom:24px;left:24px;background:var(--crimson);border:1px solid var(--crimson-hi);padding:10px 20px;display:flex;align-items:center;gap:9px;cursor:pointer;font-family:Inter,sans-serif;font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--cream);border-radius:4px;box-shadow:0 4px 20px #2f86ff59;z-index:200;transition:all .18s}.ai-fab:hover{background:var(--crimson-hi);box-shadow:0 6px 28px #2f86ff73}.ai-fab-icon{font-size:14px}.ai-panel{position:fixed;bottom:76px;left:24px;width:330px;background:var(--surface);border:1px solid var(--border-2);border-radius:6px;box-shadow:0 16px 48px #00000073;z-index:200;overflow:hidden}.ai-panel.hidden{display:none}.ai-header{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;background:var(--bg-3);border-bottom:1px solid var(--border);font-family:Cormorant Garamond,serif;font-size:14px;font-weight:600;letter-spacing:.5px;color:var(--cream)}.ai-messages{padding:14px;min-height:80px;max-height:200px;overflow-y:auto}.ai-msg.bot{background:var(--bg-3);border-left:2px solid var(--crimson);padding:9px 12px;font-size:12px;color:var(--text-2);border-radius:0 4px 4px 0;line-height:1.6}.ai-input-row{display:flex;padding:10px;border-top:1px solid var(--border)}.budget-table th,.budget-table td{padding:10px 16px}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:var(--bg-2)}::-webkit-scrollbar-thumb{background:var(--border-3);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--silver)}.settings-layout{display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:start}.settings-sidebar{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:12px 0;position:sticky;top:72px}.settings-group-label{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:2.5px;color:var(--text-muted);text-transform:uppercase;padding:14px 16px 6px;border-top:1px solid var(--border);margin-top:4px}.settings-sidebar .settings-group-label:first-child{border-top:none;margin-top:0;padding-top:6px}.settings-link{display:block;padding:8px 16px;font-family:Inter,sans-serif;font-size:13px;font-weight:400;color:var(--text-2);cursor:pointer;border-left:2px solid transparent;transition:all .16s;text-decoration:none}.settings-link:hover{color:var(--cream);background:var(--bg-3)}.settings-link.active{color:var(--cream);border-left-color:var(--crimson);background:var(--bg-3);font-weight:500}.settings-content{min-width:0}.settings-tab{display:none}.settings-tab.active{display:block}.settings-tabs{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}@media(max-width:480px){.settings-tabs{gap:4px}.settings-tabs .settings-link{padding:8px 10px;font-size:12px}}.stab-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}.stab-title{font-family:Cormorant Garamond,serif;font-size:22px;font-weight:700;color:var(--cream);letter-spacing:.5px;text-transform:uppercase}.stab-info{background:var(--bg-3);border:1px solid var(--border);border-left:3px solid var(--silver);padding:11px 14px;font-size:12px;color:var(--text-2);border-radius:0 4px 4px 0;margin-bottom:20px;line-height:1.6}.settings-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:22px}.apikey-note{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--text-muted);line-height:1.6;margin-bottom:20px;padding:10px 14px;background:var(--surface-2);border-left:2px solid var(--platinum);border-radius:2px}.apikey-row{padding:16px 0;border-top:1px solid rgba(253,246,236,.08)}.apikey-row:first-of-type+.apikey-row,.apikey-row:first-of-type{border-top:0}.apikey-row+.apikey-row{border-top:1px solid rgba(253,246,236,.08)}.apikey-meta{margin-bottom:10px}.apikey-title{font-family:Unbounded,sans-serif;font-size:14px;font-weight:500;color:var(--text);letter-spacing:.06em;display:flex;align-items:center;gap:10px}.apikey-badge{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:.12em;padding:2px 6px;border:1px solid rgba(196,154,60,.4);color:var(--platinum);background:#c49a3c14;border-radius:2px}.apikey-sub{font-family:IBM Plex Mono,monospace;font-size:11px;color:#6e7380;margin-top:4px}.apikey-sub a{color:var(--platinum);text-decoration:underline}.apikey-input-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.apikey-input-row .settings-input{flex:1;min-width:240px;font-family:IBM Plex Mono,monospace}.apikey-result{margin-top:8px;font-family:IBM Plex Mono,monospace;font-size:12px;min-height:16px}.apikey-result.positive{color:#4acc7a}.apikey-result.negative{color:var(--negative)}.apikey-result.muted{color:#6e7380}.apikey-usage{margin-top:6px;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.05em;color:#6e7380}.inv-freshness{display:inline-block;width:7px;height:7px;border-radius:50%;margin-left:6px;vertical-align:middle;background:var(--color-text-muted)}.inv-freshness.current{background:var(--color-positive);box-shadow:0 0 4px #4acc7a99}.inv-freshness.recent{background:var(--color-positive);opacity:.55}.inv-freshness.stale{background:var(--color-warning)}.inv-freshness.old{background:var(--color-text-muted)}.inv-freshness.none{background:transparent;border:1px dashed var(--color-text-muted)}.inv-footnote{margin-top:10px;padding:8px 12px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-muted);border-top:1px solid rgba(253,246,236,.06);display:flex;gap:8px;align-items:center;flex-wrap:wrap}.inv-footnote b{color:var(--platinum);font-weight:500}.inv-date-range-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 0 10px;border-bottom:1px solid rgba(253,246,236,.07);margin-bottom:10px}.inv-tx-range-label{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-muted);margin-left:6px}.inv-tx-pagination{display:flex;align-items:center;justify-content:space-between;padding:8px 2px 2px;margin-top:6px;flex-wrap:wrap;gap:8px}.inv-tx-page-nav{display:flex;align-items:center;gap:8px;font-family:IBM Plex Mono,monospace;font-size:12px}.inv-tx-page-nums{min-width:52px;text-align:center;color:var(--text-2);font-size:11px}.inv-tx-perpage{display:flex;align-items:center;gap:5px}.inv-tx-pp{padding:2px 8px!important;font-size:10px!important}.settings-card-label{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:2px;color:var(--text-muted);text-transform:uppercase;margin-bottom:10px;display:block}.form-group{margin-bottom:18px}.form-group input[type=number]::-webkit-outer-spin-button,.form-group input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.form-group input[type=number]{-moz-appearance:textfield;appearance:textfield}.form-label{display:block;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:1.5px;color:var(--text-muted);text-transform:uppercase;margin-bottom:7px}.form-hint{font-size:11px;color:var(--text-muted);margin-top:4px;display:block;line-height:1.5}.settings-input{width:100%;font-family:Inter,sans-serif;font-size:13px;background:var(--bg-3);color:var(--cream);border:1px solid var(--border);padding:9px 12px;border-radius:4px;outline:none;transition:border-color .16s}.settings-input:focus{border-color:var(--crimson-rim);box-shadow:0 0 0 3px var(--crimson-dim),0 0 14px -1px var(--crimson-rim)}.settings-select{width:100%;font-family:Inter,sans-serif;font-size:13px;background:var(--bg-3);color:var(--cream);border:1px solid var(--border);padding:9px 12px;border-radius:4px;outline:none;cursor:pointer}.settings-select:focus{border-color:var(--crimson-rim)}.profile-avatar-row{display:flex;align-items:center;gap:14px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--border)}.profile-avatar{width:52px;height:52px;background:var(--crimson);border:2px solid var(--crimson-hi);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Cormorant Garamond,serif;font-size:18px;font-weight:700;color:var(--cream);flex-shrink:0}.profile-avatar.sm{width:38px;height:38px;font-size:13px}.profile-avatar.secondary{background:var(--bg-4);border-color:var(--border-2)}.cat-group{background:var(--surface);border:1px solid var(--border);border-radius:6px;margin-bottom:16px;overflow:hidden}.cat-group-header{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;background:var(--bg-3);border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px}.cat-group-name{font-family:Cormorant Garamond,serif;font-size:16px;font-weight:700;color:var(--cream);letter-spacing:.5px;text-transform:uppercase}.cat-group-actions{display:flex;gap:8px}.cat-list{padding:4px 0}.cat-row{display:flex;align-items:center;gap:10px;padding:9px 16px;border-bottom:1px solid var(--border);transition:background .15s;cursor:grab}.cat-row:last-child{border-bottom:none}.cat-row:hover{background:var(--bg-3)}.cat-drag{color:var(--text-muted);font-size:12px;cursor:grab;opacity:.5}.cat-icon{font-size:15px;flex-shrink:0}.cat-name{flex:1;font-size:13px;color:var(--text-2)}.cat-row:hover .cat-name{color:var(--cream)}.cat-badge{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--silver);border:1px solid var(--border-2);padding:2px 8px;border-radius:2px;background:var(--bg-3)}.cat-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 14px}.cat-toolbar #cat-search{flex:1 1 220px;min-width:180px}.cat-filters,.cat-view-toggle,.cat-header-actions{display:flex;gap:6px;flex-wrap:wrap}.cat-filters .is-active,.cat-view-toggle .is-active{border-color:var(--crimson-rim);color:var(--cream)}.cat-archived-toggle{font-size:12px;color:var(--text-2);display:flex;gap:6px;align-items:center}.cat-collapse{background:none;border:0;color:var(--cream);cursor:pointer;width:22px;padding:0;font-size:14px}.cat-group-swatch{width:10px;height:10px;border-radius:50%;background:var(--cat-group-color, var(--border-2));flex-shrink:0}.cat-group-header{gap:10px}.cat-usage{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--text-muted);letter-spacing:.04em}.cat-row--archived{opacity:.65}.cat-row.cat-dragging{opacity:.45}.cat-drop-active{outline:1px dashed var(--crimson-rim)}.cat-icon--lucide{display:inline-flex;color:var(--cat-group-color, var(--cream))}.cat-icon-svg{display:block}.cat-group-children{margin-left:16px}.cat-palette{display:flex;flex-wrap:wrap;gap:0;align-items:center}.cat-swatch{width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer;position:relative;flex-shrink:0;border-radius:50%}.cat-swatch:before{content:"";position:absolute;width:22px;height:22px;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--swatch, transparent);border:2px solid var(--border-2);box-sizing:border-box}.cat-swatch[data-color=""]:before,.cat-swatch--none:before{background:linear-gradient(135deg,transparent 46%,var(--text-muted) 46%,var(--text-muted) 54%,transparent 54%),var(--surface-2)}.cat-color-inherit{font-size:12px;color:var(--text-2);display:flex;gap:6px;align-items:center;flex-wrap:wrap}.cat-color-modes{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0 0 8px}.cat-color-mode{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text-2);cursor:pointer}.cat-color-summary{font-size:12px;color:var(--text-2);margin:0 0 8px}.cat-scope-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;margin:0 0 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:4px;font-size:13px;color:var(--text-2)}.bud-row--scoped{outline:2px solid var(--crimson-rim);outline-offset:-2px}.cat-row[data-color-mode=none] .cat-icon{color:inherit}.cat-type-title{font-family:Cormorant Garamond,serif;font-size:20px;font-weight:700;color:var(--cream);margin:0;flex:1}.cat-type-heading{background:transparent;border-bottom-color:var(--border-2)}.cat-group-body[hidden]{display:none}.cat-hier-edit{background:none;border:0;color:inherit;font:inherit;cursor:pointer;padding:0;text-align:left;display:inline-flex;align-items:center;gap:8px}.cat-hier-edit:hover{color:var(--cream)}.cat-merge-preview{display:grid;gap:8px;margin:10px 0 0}.cat-merge-preview dt{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.cat-merge-preview dd{margin:2px 0 0;font-size:13px;color:var(--text-2)}.cat-overflow{position:relative}.cat-overflow>summary{list-style:none;cursor:pointer}.cat-overflow>summary::-webkit-details-marker{display:none}.cat-overflow-menu{position:absolute;right:0;top:100%;z-index:4;background:var(--surface);border:1px solid var(--border);min-width:180px;padding:4px;display:flex;flex-direction:column}.cat-overflow-menu button{background:none;border:0;color:var(--text-2);text-align:left;padding:6px 8px;font-size:12px;cursor:pointer}.cat-overflow-menu button:hover{background:var(--bg-3);color:var(--cream)}.cat-overflow-menu button.danger{color:var(--negative)}.cat-connections{display:flex;flex-wrap:wrap;gap:8px 14px;margin:10px 0}.cat-conn{font:inherit;font-size:12px;color:var(--crimson);background:none;border:0;padding:0;cursor:pointer}a.cat-conn.cat-conn--empty{color:var(--text-muted);text-decoration:none;font-style:italic;cursor:pointer}.cat-color-row{display:flex;align-items:center;gap:10px}.cat-advanced{margin-top:12px}.cat-advanced>summary{cursor:pointer;font:600 11px Karla,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--text-2)}.form-hint[hidden]{display:none}.cat-icon--tinted,.icon-picker-current-glyph.cat-icon--tinted,.icon-picker-preview-glyph.cat-icon--tinted{display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--cat-tint, var(--icon-tint)) 22%,var(--bg-2, transparent));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cat-tint, var(--icon-tint)) 45%,transparent)}.cat-icon.cat-icon--tinted{width:24px;height:24px;border-radius:6px}.icon-picker-current-glyph.cat-icon--tinted,.icon-picker-preview-glyph.cat-icon--tinted{width:28px;height:28px;border-radius:6px}dialog.modal-shell:has(.modal.cat-editor-dialog),dialog.modal-shell:has(.modal.xl.cat-editor-dialog){padding:12px;align-items:center;justify-content:center;overflow:hidden}.modal.cat-editor-dialog,.modal.xl.cat-editor-dialog{width:min(960px,calc(100vw - 24px));max-width:min(960px,calc(100vw - 24px));max-height:calc(100dvh - 24px);height:auto;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:0;margin:0;box-sizing:border-box}.modal.cat-editor-dialog>h2{flex:0 0 auto;margin:0;padding:20px 24px 12px}.modal.cat-editor-dialog>.modal-error{flex:0 0 auto;margin:12px 24px 0}.modal.cat-editor-dialog>.modal-body{flex:1 1 0%;min-height:0;overflow-y:auto;overflow-x:hidden;padding:16px 24px 8px;overscroll-behavior:contain}.modal.cat-editor-dialog>.modal-actions{flex:0 0 auto;margin:0;padding:12px 24px;background:var(--surface);border-top:1px solid rgba(255,255,255,.07)}.cat-editor-grid{display:grid;grid-template-columns:minmax(280px,1fr) minmax(340px,1.15fr);gap:20px 28px;align-items:start}.cat-editor-col,.cat-editor-pair>*{min-width:0}.cat-editor-section-title{margin:0 0 12px;padding-bottom:6px;border-bottom:1px solid var(--border);font:600 11px/1.2 Karla,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--text-2)}.cat-editor-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cat-editor-modal textarea{min-height:96px}.cat-editor-wide{grid-column:1 / -1;border-top:1px solid var(--border);padding-top:14px}.cat-editor-modal .icon-picker-grid{max-height:280px;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:2px}.cat-editor-modal .icon-picker-cell{min-width:44px;min-height:44px;width:100%;padding:0;display:grid;place-items:center;font-size:17px;background:transparent}.cat-editor-modal .icon-picker-lib-cell{min-height:44px}.modal .icon-picker-custom-input{width:96px;padding:6px;text-align:center}.cat-color-field{border:0;margin:0 0 14px;padding:0;min-width:0}.cat-color-field .cat-palette{margin-top:8px}.cat-color-inherited{display:inline-block;width:12px;height:12px;border-radius:50%;background:var(--inherited, transparent);border:1px solid var(--border-2);flex-shrink:0}.cat-color-inherited-label{font-size:11px;color:var(--text-muted)}.cat-swatch.is-inherited:before{outline:2px dashed var(--text-2);outline-offset:3px;box-shadow:0 0 0 1px var(--surface)}.cat-swatch.is-selected:before{border-color:var(--color-accent-strong);box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--color-accent-strong)}.cat-swatch.is-selected:not(.cat-swatch--none):after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;font-size:11px;font-weight:700;color:#fff;mix-blend-mode:difference;pointer-events:none;text-shadow:0 0 2px #000}.cat-swatch:focus-visible{outline:var(--focus-ring);outline-offset:2px}.icon-picker .icon-picker-current-glyph,.icon-picker .icon-picker-preview-glyph{color:var(--icon-tint, var(--cream))}.icon-picker .icon-picker-current-glyph{box-shadow:inset 0 0 0 2px var(--icon-tint, transparent)}.icon-picker .icon-picker-preview{border-left:3px solid var(--icon-tint, var(--border))}@media(max-width:760px){.cat-editor-grid{grid-template-columns:1fr}.cat-editor-dialog .cat-palette{display:grid;grid-template-columns:repeat(4,44px);justify-content:start}}@media(max-width:420px){.cat-editor-pair{grid-template-columns:1fr}}.cat-hier{padding:8px 0 20px}.cat-hier-node{margin-left:calc((var(--cat-depth, 1) - 1) * 18px);margin-bottom:8px}.cat-hier-group{font-family:Cormorant Garamond,serif;font-size:15px;color:var(--cream)}.cat-hier-cat{display:flex;align-items:center;gap:8px;padding:3px 0 3px 16px;font-size:13px;color:var(--text-2)}@media(max-width:720px){.cat-usage{display:none}.cat-row-actions>[data-move-cat],.cat-group-actions>[data-move-group],.cat-group-actions>[data-edit-group],.cat-group-actions>[data-del-group],.cat-group-actions>[data-add-cat]{display:none}}@media(min-width:721px){.cat-row-actions .cat-overflow-menu>[data-move-cat]{display:none}}.merchant-controls{display:flex;gap:10px;margin-bottom:14px;align-items:center;flex-wrap:wrap}.merchant-controls .settings-input{max-width:280px}.merchant-list{background:var(--surface);border:1px solid var(--border);border-radius:6px;overflow:hidden}.merchant-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);transition:background .15s}.merchant-row:last-child{border-bottom:none}.merchant-row:hover{background:var(--bg-3)}.merchant-logo{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Inter,sans-serif;font-size:13px;font-weight:700;color:#fff;flex-shrink:0;border:1px solid var(--border-2)}.merchant-logo.amazon{background:#f90}.merchant-logo.payment{background:var(--positive)}.merchant-logo.doordash{background:#ff3008}.merchant-logo.walmart{background:#0071ce}.merchant-logo.netflix{background:#e50914}.merchant-logo.aldi{background:#00529f}.merchant-logo.southwest{background:#304cb2}.merchant-logo.chick{background:#dd0031}.merchant-info{display:flex;flex-direction:column;flex:1;gap:2px}.merchant-name{font-size:13px;color:var(--cream);font-weight:500}.merchant-count{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--text-muted);letter-spacing:.3px}.merchant-badge{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--silver);border:1px solid var(--border-2);padding:1px 6px;border-radius:2px;background:var(--bg-3);margin-left:6px}.rules-search-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px;flex-wrap:wrap}.rules-search-row .settings-input{max-width:220px}.rules-list{display:flex;flex-direction:column;gap:6px}.rule-card-compact{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:8px 12px;transition:border-color .16s,opacity .16s}.rule-card-compact:hover{border-color:var(--border-2)}.rule-card-compact.is-disabled{opacity:.55}.rule-toggle{width:12px;height:12px;border-radius:50%;border:1px solid var(--border-2);background:transparent;cursor:pointer;padding:0;flex-shrink:0;transition:background .15s,border-color .15s}.rule-toggle.on{background:var(--positive);border-color:var(--positive)}.rule-toggle.off{background:transparent;border-color:var(--text-muted)}.rule-body{display:flex;flex-direction:column;gap:4px;min-width:0}.rule-row-1{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.rule-name-compact{font-family:Unbounded,sans-serif;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--cream)}.rule-mt{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:.2em;color:var(--crimson-hi);background:var(--crimson-dim);padding:1px 6px;border-radius:2px;border:1px solid var(--crimson-rim)}.rule-count{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--text-muted);margin-left:auto}.rule-row-2{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11px}.rule-row-2 .rule-if,.rule-row-2 .rule-then{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:1.5px;color:var(--crimson-hi);text-transform:uppercase;flex-shrink:0}.rule-row-2 .rule-then{color:var(--text-muted);margin-left:4px}.rule-joiner{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:1.5px;color:var(--text-muted);text-transform:uppercase;margin:0 2px}.rule-card-compact .rule-chip{font-family:IBM Plex Mono,monospace;font-size:10px;padding:2px 6px;border-radius:2px;border:1px solid var(--border-2);background:var(--bg-3);color:var(--text-2);letter-spacing:.2px}.rule-card-compact .rule-chip b{color:var(--cream);font-weight:600}.rule-card-compact .rule-chip-val{background:var(--bg-4);color:var(--cream);padding:0 4px;border-radius:2px}.rule-card-actions{display:flex;gap:4px;flex-shrink:0}.rule-card-actions .cyber-btn-sm.danger{padding:4px 8px}.rule-drag-handle{cursor:grab;color:var(--text-muted);font-size:13px;line-height:1;user-select:none;opacity:.45;padding:0 2px;flex-shrink:0;transition:opacity .15s}.rule-drag-handle:hover{opacity:1;color:var(--cream)}.rule-card-compact{grid-template-columns:auto auto 1fr auto}.rule-card-compact.rule-dragging{opacity:.35;box-shadow:none}.rules-group{margin-bottom:18px}.rules-group-header{display:flex;align-items:center;gap:8px;padding:4px 0 8px;border-bottom:1px solid var(--border);margin-bottom:6px}.rules-group-label{font-family:Unbounded,sans-serif;font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}.rules-group-count{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--text-muted);opacity:.6}.rules-group-body{display:flex;flex-direction:column;gap:4px;min-height:48px;border-radius:4px;transition:background .12s}.rules-group-body.drag-over{background:#c49a3c0d;outline:1px dashed rgba(196,154,60,.3)}.rules-group-empty{display:flex;align-items:center;justify-content:center;padding:14px;border:1px dashed var(--border);border-radius:3px;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);opacity:.5}.rules-group-del{background:transparent;border:none;color:var(--text-muted);font-size:14px;line-height:1;cursor:pointer;padding:0 4px;margin-left:auto;opacity:.5;transition:opacity .15s,color .15s}.rules-group-del:hover{opacity:1;color:var(--crimson-hi)}.rules-group-header{gap:8px}.rules-group-header .rules-group-count{margin-left:4px}.rule-drop-indicator{height:2px;background:var(--crimson-hi);border-radius:2px;margin:2px 0;pointer-events:none}.rule-modal-body{display:flex;flex-direction:column;gap:14px}.rule-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:720px){.rule-modal-grid{grid-template-columns:1fr}}.rule-section{background:var(--bg-2);border:1px solid var(--border);border-radius:4px;padding:10px 12px}.rule-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.rule-section-head strong{font-family:Unbounded,sans-serif;font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.rule-row-edit{display:flex;align-items:center;gap:6px;margin-bottom:6px;flex-wrap:wrap}.rule-row-edit:last-child{margin-bottom:0}.rule-row-edit select,.rule-row-edit input{background:var(--bg);border:1px solid var(--border-2);color:var(--cream);padding:5px 9px;font-size:12px;font-family:Karla,sans-serif;border-radius:3px;outline:none;transition:border-color .15s}.rule-row-edit select:focus,.rule-row-edit input:focus{border-color:var(--crimson-rim);box-shadow:0 0 0 2px var(--crimson-dim)}.rule-row-edit input{flex:1;min-width:120px}.rule-noval{flex:1;color:var(--text-muted);font-size:11px;font-style:italic}.rule-logic-toggle{font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;padding:3px 9px;border-radius:2px;border:1px solid var(--border-2);background:var(--bg-3);color:var(--text-muted);transition:all .15s;min-width:36px;text-align:center;flex-shrink:0}.rule-logic-toggle:hover{border-color:var(--border-3);color:var(--cream)}.rule-logic-toggle.is-or{color:var(--crimson-hi);border-color:var(--crimson-rim);background:var(--crimson-dim)}.rule-then-inline{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:1.5px;color:var(--crimson-hi);text-transform:uppercase;flex-shrink:0}.rule-field-hint{font-size:10px;color:var(--text-muted);margin-top:4px;font-style:italic;line-height:1.4}.rule-preview{background:#8416170f;border:1px dashed var(--crimson-rim)}.rule-preview-row{display:grid;grid-template-columns:80px 1fr auto;grid-template-areas:"date merch amt" "scan scan scan";column-gap:8px;row-gap:2px;padding:6px 0;font-size:11px;border-bottom:1px solid var(--border)}.rule-preview-row:last-child{border-bottom:none}.rule-preview-date{grid-area:date;font-family:IBM Plex Mono,monospace;color:var(--text-muted)}.rule-preview-merch{grid-area:merch;color:var(--cream);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rule-preview-amt{grid-area:amt;font-family:IBM Plex Mono,monospace}.rule-preview-scan{grid-area:scan;font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--bg-2);padding:2px 6px;border-radius:2px}.rule-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:14px 16px;display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:start;transition:border-color .16s;position:relative}.rule-card:hover{border-color:var(--border-2)}.rule-meta{position:absolute;bottom:10px;left:16px;font-family:IBM Plex Mono,monospace;font-size:9px;color:var(--text-muted);letter-spacing:.3px;grid-column:1 / -1}.rule-conditions,.rule-actions{display:flex;flex-direction:column;gap:6px;padding-bottom:20px}.rule-condition-row,.rule-action-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.rule-if{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:2px;color:var(--crimson-hi);text-transform:uppercase;font-weight:500;flex-shrink:0;min-width:20px}.rule-drag{color:var(--text-muted);font-size:11px;opacity:.5;min-width:20px;cursor:grab}.rule-chip{font-family:IBM Plex Mono,monospace;font-size:10px;padding:3px 9px;border-radius:3px;border:1px solid var(--border-2);background:var(--bg-3);color:var(--text-2);letter-spacing:.3px}.rule-chip.value{border-color:var(--border-3);color:var(--cream);background:var(--bg-4)}.rule-chip.action{border-color:var(--crimson-rim);background:var(--crimson-dim);color:var(--cream)}.rule-chip.tag{border-color:#f0c0404d;background:#f0c04014;color:var(--cream)}.rule-arrow{font-size:18px;color:var(--text-muted);padding-top:4px;flex-shrink:0}.rule-action-label{font-family:IBM Plex Mono,monospace;font-size:9px;color:var(--text-muted);letter-spacing:1px;text-transform:uppercase;flex-shrink:0}.tags-grid{display:flex;flex-direction:column;gap:8px}.tag-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:6px;transition:border-color .15s}.tag-card:hover{border-color:var(--border-2)}.tag-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0;box-shadow:0 0 6px #ffffff26}.tag-info{display:flex;flex-direction:column;flex:1;gap:3px}.tag-name{font-size:13px;color:var(--cream);font-weight:500}.tag-count{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:1.5px;color:var(--text-muted);text-transform:uppercase}.toggle{width:38px;height:20px;background:var(--bg-4);border-radius:10px;position:relative;cursor:pointer;flex-shrink:0;transition:background .2s;border:1px solid var(--border-2)}.toggle:after{content:"";position:absolute;width:14px;height:14px;background:var(--text-muted);border-radius:50%;top:2px;left:2px;transition:left .2s,background .2s}.toggle.on{background:var(--crimson);border-color:var(--crimson-hi)}.toggle.on:after{left:20px;background:var(--cream)}.notif-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border);gap:12px}.notif-row:last-of-type{border-bottom:none}.notif-label{font-size:13px;color:var(--text-2)}.radio-group{display:flex;gap:16px;flex-wrap:wrap}.radio-opt{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--text-2);cursor:pointer}.radio-opt input{accent-color:var(--crimson)}.member-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.member-row:last-child{border-bottom:none}.member-info{display:flex;flex-direction:column;flex:1;font-size:13px;color:var(--cream)}.inst-list{display:flex;flex-direction:column;gap:8px}.inst-row{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:6px;transition:border-color .15s}.inst-row:hover{border-color:var(--border-2)}.inst-icon{font-size:22px;flex-shrink:0}.inst-info{display:flex;flex-direction:column;flex:1;font-size:13px;color:var(--cream);gap:3px}.billing-plan{background:var(--bg-3);border:1px solid var(--border-2);border-left:3px solid var(--crimson);padding:14px 16px;border-radius:0 4px 4px 0;margin-bottom:16px}.billing-plan-name{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.billing-plan-price{font-family:Cormorant Garamond,serif;font-size:30px;font-weight:700;color:var(--cream);line-height:1}.cyber-btn-sm.danger{color:var(--negative);border-color:#c0484a4d}.cyber-btn-sm.danger:hover{background:var(--negative-bg);border-color:var(--negative);color:var(--negative)}.usage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:14px;margin-top:14px}@media(max-width:420px){.usage-grid{grid-template-columns:1fr}}.usage-card{padding:16px;display:flex;flex-direction:column;gap:12px;border-left:3px solid var(--border)}.usage-card--ok{border-left-color:var(--positive)}.usage-card--warning{border-left-color:#e0a140}.usage-card--critical{border-left-color:var(--negative)}.usage-card--error{border-left-color:var(--crimson)}.usage-card--unknown{border-left-color:var(--text-muted)}.usage-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.usage-card-title{font-family:Unbounded,Inter,sans-serif;font-size:14px;font-weight:600;letter-spacing:.04em;color:var(--cream);text-transform:uppercase}.usage-card-meta{margin-top:3px;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.05em;color:var(--text-muted)}.usage-card-pills{display:flex;flex-direction:column;gap:4px;align-items:flex-end}.usage-pill{display:inline-block;font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:700;letter-spacing:.1em;padding:3px 8px;border-radius:3px;border:1px solid var(--border-2);color:var(--text-2);background:var(--bg-3)}.usage-pill--ok{color:var(--positive);border-color:#4a9b6f66;background:var(--positive-bg)}.usage-pill--warning{color:#e0a140;border-color:#e0a14066;background:#e0a1401a}.usage-pill--critical{color:var(--negative);border-color:#c0484a66;background:var(--negative-bg)}.usage-pill--error{color:var(--cream);border-color:var(--crimson);background:var(--crimson-dim)}.usage-pill--unknown,.usage-pill--cache{color:var(--text-muted)}.usage-error{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--negative);background:var(--negative-bg);border:1px solid rgba(192,72,74,.3);padding:8px 10px;border-radius:3px}.usage-metrics{display:flex;flex-direction:column;gap:10px}.usage-metric{display:flex;flex-direction:column;gap:4px}.usage-metric-row{display:flex;justify-content:space-between;gap:8px;font-family:IBM Plex Mono,monospace;font-size:11px}.usage-metric-label{color:var(--text-2)}.usage-metric-value{color:var(--cream);white-space:nowrap}.usage-bar{height:4px;background:var(--bg-3);border-radius:2px;overflow:hidden}.usage-bar-fill{height:100%;transition:width .3s ease}.usage-bar-fill--ok{background:var(--positive)}.usage-bar-fill--warning{background:#e0a140}.usage-bar-fill--critical{background:var(--negative)}.usage-action{font-size:12px;line-height:1.5;color:var(--text-2);border-top:1px dashed var(--border);padding-top:10px}.usage-card-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:8px;border-top:1px solid var(--border);font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.04em}.usage-cost{color:var(--cream);display:flex;gap:6px;flex-wrap:wrap}.usage-links{display:flex;gap:6px;align-items:center}.usage-links a{color:var(--crimson-hi);text-decoration:none}.usage-links a:hover{color:var(--cream)}.muted{color:var(--text-muted)}.login-overlay{display:none;position:fixed;inset:0;z-index:10000;flex-direction:column;background:var(--bg);overflow:auto}.login-overlay :is(button,input){font:inherit}.login-overlay :is(button,a):focus-visible{outline:2px solid var(--crimson-hi)}.login-bar{display:flex;align-items:center;gap:8px;padding:calc(env(safe-area-inset-top,0px) + 14px) 20px 14px;background:var(--surface);border-bottom:1px solid var(--border)}.login-main{flex:1;width:min(440px,100%);margin:0 auto;padding:clamp(40px,9vh,72px) 24px 24px;box-sizing:border-box}.login-kicker,.login-label,.login-foot{font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.login-kicker{margin:0}.login-title{margin:10px 0 0;font-family:var(--font-display);font-size:clamp(32px,9vw,40px);font-weight:600;letter-spacing:.04em;line-height:1;text-transform:uppercase}.login-sub,.login-hint{margin:14px 0 0;font-size:16px;line-height:1.45;color:var(--text-2)}.login-form,.login-fields{display:flex;flex-direction:column}.login-form{margin-top:28px}.login-label{margin:16px 0 8px}.login-label:first-child{margin-top:0}.login-field{position:relative}.login-input{width:100%;box-sizing:border-box;height:52px;padding:0 16px;background:var(--surface);border:1px solid var(--border-2);border-radius:12px;color:inherit;font-size:16px;outline:none}.login-field .login-input{padding-right:48px}.login-input[aria-invalid=true]{border-color:var(--negative)}.login-input:focus{border-color:var(--crimson-hi);box-shadow:0 0 0 3px var(--crimson-dim)}.login-input-code{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;text-align:center}.login-reveal{position:absolute;top:0;right:0;width:48px;height:52px;color:var(--text-2)}.login-submit{margin-top:24px;height:52px;border:0;border-radius:12px;background:linear-gradient(180deg,var(--crimson-hi),var(--crimson-lo));color:var(--on-accent);font-weight:600;cursor:pointer}.login-overlay :disabled{opacity:.65}.login-error{min-height:3.5em;margin-top:10px;font-size:14px;line-height:1.4;text-align:center;color:var(--negative)}.login-error[data-tone]{color:var(--text-2)}.login-reveal,.login-passkey,.login-link,.login-switch button,.login-legal a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 8px;border:0;background:transparent;font-size:15px;font-weight:600;cursor:pointer}.login-passkey,.login-link{color:var(--crimson-hi)}.login-passkey{width:100%;margin-top:6px}.login-switch{display:flex;justify-content:center;align-items:center;margin:6px 0 0;color:var(--text-muted)}.login-switch button{color:var(--text)}.login-foot{display:flex;justify-content:center;padding:8px 24px calc(env(safe-area-inset-bottom,0px) + 8px)}.login-legal{display:flex;align-items:center}.login-legal a{color:inherit;font:inherit;text-decoration:none}.loading{padding:40px 24px;text-align:center;color:var(--text-muted);font-family:IBM Plex Mono,monospace;font-size:12px;letter-spacing:.1em}.empty-big{padding:60px 24px;text-align:center;color:var(--text-muted);font-family:IBM Plex Mono,monospace;letter-spacing:.08em}.empty-big h2{color:var(--cream);margin-bottom:10px;font-family:Cormorant Garamond,serif;font-size:22px;font-weight:600;letter-spacing:.06em}.empty-big p{max-width:420px;margin:0 auto 20px;line-height:1.6}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}#toast-root{position:fixed;bottom:24px;right:24px;z-index:4900;pointer-events:none}#toast-visual-stack{display:flex;flex-direction:column;gap:8px;align-items:flex-end}.toast{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;background:var(--bg-2);border:1px solid var(--crimson-rim);color:var(--cream);padding:12px 12px 12px 16px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;width:min(360px,calc(100vw - 32px));border-radius:var(--radius-md);box-shadow:var(--shadow-soft);animation:toast-in .25s ease;pointer-events:auto}.toast.ok{border-color:var(--color-status-success)}.toast.err{border-color:var(--color-status-danger)}.toast.warn{border-color:var(--color-status-warning)}.toast-message{line-height:1.45;overflow-wrap:anywhere}.toast-dismiss{border:0;background:transparent;color:inherit;min-width:32px;min-height:32px;padding:0;font-size:20px;line-height:1;cursor:pointer;border-radius:3px}.toast-dismiss:hover,.toast-dismiss:focus-visible{background:#ffffff14;outline:var(--focus-ring);outline-offset:1px}.toast-out{opacity:0;transform:translate(20px);transition:opacity .18s ease,transform .18s ease}@keyframes toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}html.dialog-open,body.dialog-open{overflow:hidden;height:100%}#modal-root:empty{display:none}dialog.modal-shell{position:fixed;inset:0;width:auto;max-width:none;height:auto;max-height:none;margin:0;padding:20px;border:0;background:transparent;color:inherit;overflow:auto;overscroll-behavior:none}dialog.modal-shell[open]{display:flex;align-items:center;justify-content:center}dialog.modal-shell::backdrop{background:#000000e0;position:fixed;inset:0;animation:fade .15s ease}@keyframes fade{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface);border:1px solid var(--border);border-top:2px solid var(--crimson);max-width:560px;width:100%;max-height:calc(100vh - 40px);overflow-y:auto;padding:24px;font-family:Inter,sans-serif;border-radius:4px;box-shadow:0 18px 60px #0000008c}.modal.lg{max-width:760px}.modal.xl{max-width:960px}.modal.sm{max-width:400px}.modal h2{font-family:Unbounded,sans-serif;font-size:16px;font-weight:600;letter-spacing:.06em;color:var(--text);margin-bottom:16px;border-bottom:1px solid rgba(255,255,255,.07);padding-bottom:12px}.modal-error{margin:0 0 14px;padding:10px 12px;border:1px solid var(--negative);border-left-width:3px;border-radius:4px;background:var(--negative-bg);color:var(--negative);font-family:Karla,sans-serif;font-size:13px;line-height:1.45}.modal-error[hidden]{display:none}.modal-error-action{display:inline-flex;align-items:center;margin:8px 0 0;min-height:32px;padding:0 12px;border:1px solid currentColor;border-radius:var(--radius-md);background:transparent;color:inherit;font:inherit;cursor:pointer}.modal-error-action:focus-visible{outline:var(--focus-ring);outline-offset:2px}[data-lazy-busy],button[aria-busy=true],a[aria-busy=true]{cursor:progress}[data-lazy-busy]{opacity:.8}.confirm-message{color:var(--text-2);line-height:1.5;white-space:pre-line}.modal .form-group{margin-bottom:14px}.modal .form-label{display:block;font-size:10px;font-weight:600;letter-spacing:.1em;color:var(--text-muted);margin-bottom:6px;text-transform:uppercase;font-family:Karla,sans-serif}.modal input,.modal select,.modal textarea{background:var(--surface-2);border:1px solid rgba(255,255,255,.07);color:var(--text);padding:10px 12px;width:100%;font-family:Karla,sans-serif;font-size:13px;border-radius:4px;outline:none}.modal input[type=checkbox],.modal input[type=radio]{width:16px;height:16px;padding:0;margin:0;flex:0 0 auto}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:var(--crimson-rim);box-shadow:0 0 0 3px var(--crimson-dim)}.modal textarea{min-height:70px;resize:vertical}.modal .cat-field-btn{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;background:var(--surface-2);border:1px solid rgba(255,255,255,.07);border-radius:4px;color:var(--text);font:13px Karla,sans-serif;text-align:left;cursor:pointer}.modal .cat-field-btn:focus-visible{border-color:var(--crimson-rim);outline:none}.modal .txp-cat-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal .cat-field-btn .cat-icon{flex:none}.modal-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,.07)}.modal-actions:empty{display:none}.modal-actions button[aria-busy=true]{cursor:progress}.modal-actions button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.modal-actions button[aria-busy=true]:disabled{opacity:.8;cursor:progress}@media(max-width:720px){.modal.lg{max-width:none;width:100%;height:100%;max-height:100vh;border-radius:0}dialog.modal-shell:has(.modal.lg){padding:0;align-items:stretch}}@media(max-width:620px){dialog.modal-shell{padding:12px;align-items:flex-end}.modal{max-height:calc(100vh - 24px);padding:18px}#toast-root{right:16px;bottom:16px}}@media(prefers-reduced-motion:reduce){dialog.modal-shell::backdrop,.toast{animation:none}.toast-out{transition:none}.scenario-pill,.cyber-btn-sm{transition:none;transform:none}}.tx-link{padding:0;border:0;background:none;color:var(--color-accent-strong);font:inherit;cursor:pointer}.tx-link:hover{text-decoration:underline}.tx-link:focus-visible,.tx-chip:focus-within,.seg input:focus-visible+label,.tx-cat-chip:focus-visible,.tx-fchip:focus-visible,.tx-row-menu-btn:focus-visible,.tx-sort-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.tx-summary{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);min-height:88px;margin:0 0 16px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-raised)}.tx-summary[hidden]{display:none}.tx-sum-figs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.tx-sum-figs>div{padding:14px 16px;border-right:1px solid var(--color-border-subtle)}.tx-sum-figs dt{margin:0 0 6px;color:var(--color-text-secondary);font-size:12px}.tx-sum-figs dd{display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px;margin:0;color:var(--color-text-primary);font:500 20px/1.2 var(--font-mono)}.tx-sum-figs dd.amt-pos{color:var(--color-positive)}.tx-review{white-space:nowrap;padding:3px 10px;border:1px solid var(--color-warning);border-radius:var(--radius-md);background:var(--color-warning-soft);color:var(--color-warning);font:500 12px var(--font-body)}.tx-all-done{color:var(--color-positive);font:500 13px var(--font-body)}.tx-skel{width:70%;height:20px}.tx-sum-spend{display:flex;flex-direction:column;justify-content:center;gap:8px;min-width:0;padding:14px 16px}.tx-sum-spend-head{display:flex;justify-content:space-between;gap:12px;color:var(--color-text-secondary);font-size:12px}.tx-sum-total{font-family:var(--font-mono)}.tx-sum-bar{display:flex;height:8px;overflow:hidden;border-radius:999px;background:var(--color-bg-emphasis)}.tx-sum-bar span{flex:0 0 var(--seg-w);background:var(--seg-color)}.tx-sum-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin:0;padding:0;list-style:none;color:var(--color-text-secondary);font-size:12px}.tx-dot{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:var(--seg-color, var(--color-text-muted))}.tx-sum-note,.tx-sum-error{margin:0;color:var(--color-text-secondary);font-size:12px}.tx-review-note{flex:1 0 100%;color:var(--color-text-secondary);font:12px var(--font-body)}.tx-review-count{white-space:nowrap}.tx-muted{color:var(--color-text-secondary);font:13px var(--font-body)}.tx-sum-mixed{grid-column:1 / -1;padding:8px 16px;border-top:1px solid var(--color-border-subtle)}.tx-sum-mixed strong{color:var(--color-warning);font-weight:500}.tx-cur{margin-left:4px;color:var(--color-text-secondary);font:500 12px var(--font-body)}.tx-sum-error{padding:14px 16px;grid-column:1 / -1}.tx-toolbar{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}.tx-search{position:relative;flex:1 1 220px;max-width:280px}.tx-search input{width:100%;height:36px;padding:0 34px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-raised);color:var(--color-text-primary);font:14px var(--font-body)}.tx-search input:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.tx-search-icon{position:absolute;left:11px;top:11px;color:var(--color-text-muted);pointer-events:none}.tx-kbd{position:absolute;right:8px;top:7px;padding:1px 6px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-text-secondary);font:12px var(--font-mono);pointer-events:none}.seg{display:inline-flex;margin:0;padding:0;min-width:0;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden}.seg label{display:inline-flex;align-items:center;height:32px;padding:0 13px;border-right:1px solid var(--color-border-subtle);color:var(--color-text-secondary);font-size:12.5px;white-space:nowrap;cursor:pointer}.seg label:last-of-type{border-right:0}.seg input:checked+label{background:var(--color-accent-soft);box-shadow:inset 0 -2px 0 var(--color-accent);color:var(--color-text-primary)}.seg input:focus-visible+label{outline-offset:-2px}.tx-chip{position:relative;display:inline-flex;align-items:center;height:32px;padding:0 12px;border:1px solid var(--color-border-default);border-radius:999px;background:transparent;color:var(--color-text-secondary);font:12.5px var(--font-body);cursor:pointer}.tx-chip:hover{color:var(--color-text-primary);border-color:var(--color-border-strong)}.tx-chip.is-active{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-text-primary)}.tx-chip select{max-width:150px;padding:0 16px 0 0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;appearance:none;outline:none}.tx-chip select option{background:var(--color-bg-raised);color:var(--color-text-primary)}.tx-pick{gap:8px;max-width:220px}.tx-review-misc{display:inline-flex;align-items:center;gap:6px;margin-left:10px}.tx-pick-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tx-pick-caret{flex:none;border:4px solid transparent;border-top-color:currentColor;margin-top:4px}.fp-mark{display:inline-grid;flex:none;place-items:center;width:18px;height:18px;border:1px solid color-mix(in srgb,var(--account-source-accent) 62%,var(--color-border-default));border-radius:50%;background:color-mix(in srgb,var(--account-source-accent) 12%,var(--color-bg-emphasis));color:var(--color-text-primary);font-size:10px;line-height:1}.tx-fpop-group{display:flex;align-items:center;gap:8px}.tx-range-inputs{display:flex;align-items:center;gap:6px}.tx-range-inputs input{width:100px}.tx-chip:has(select):after{content:"";position:absolute;right:12px;top:13px;border:4px solid transparent;border-top-color:currentColor;pointer-events:none}.tx-star{font-size:14px}.tx-toolbar-end{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto}.tx-custom-range{position:absolute;z-index:40;top:calc(100% - 6px);left:0;width:min(580px,100%);max-height:75dvh;overflow-y:auto;padding:18px;border:1px solid var(--color-border-default);border-radius:16px;background:var(--color-surface-raised);box-shadow:0 20px 60px #0000008c;color:var(--color-text-secondary);font-size:12px}.tx-custom-range[hidden],.tx-chip[hidden],.tx-active-filters[hidden]{display:none}.tx-custom-range input{height:32px;padding:0 8px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-raised);color:var(--color-text-primary);font:12.5px var(--font-body)}.tx-active-filters{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px;padding:0;list-style:none}.tx-fchip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border:1px solid var(--color-accent);border-radius:999px;background:var(--color-accent-soft);color:var(--color-text-primary);font:12.5px var(--font-body);cursor:pointer}.tx-fchip--all{border-color:var(--color-border-default);background:transparent;color:var(--color-text-secondary)}.tx-filters{display:none;margin-bottom:12px;padding:14px 16px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-raised)}.tx-filters.open{display:block}.tx-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;align-items:end}.tx-filters .filter-col{display:flex;flex-direction:column;gap:4px}.tx-filters label{color:var(--color-text-secondary);font-size:12px}.tx-filters select{min-width:0;padding:6px 10px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-text-primary);font:12.5px var(--font-body)}.filter-col--check{flex-direction:row;align-items:center}.tx-view-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}.tx-view-row select{min-width:180px}.tx-table{width:100%;border-collapse:collapse;font-family:var(--font-body);font-size:13px}.tx-table th{padding:9px 12px;border-bottom:1px solid var(--color-border-default);background:var(--color-bg-raised);color:var(--color-text-secondary);font-size:12.5px;font-weight:500;text-align:left;user-select:none}.tx-table td{padding:10px 12px;border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-secondary);vertical-align:middle}.tx-table tr[data-tx-id]:hover td{background:var(--color-bg-subtle)}.tx-table td.tx-amount{font-family:var(--font-mono);text-align:right;white-space:nowrap}.tx-table td.amt-neg{color:var(--color-text-primary)}.tx-table td.amt-pos{color:var(--color-positive)}.tx-table td.tx-date{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:12.5px;white-space:nowrap}.tx-table td.tx-actions{width:56px;text-align:right;white-space:nowrap}.tx-table td.tx-cat{white-space:nowrap}.tx-merch{display:flex;align-items:flex-start;gap:10px;min-width:0}.tx-merch .merch-avatar{flex:0 0 auto}.tx-merch-text{min-width:0}.tx-merch-text strong{color:var(--color-text-primary);font-weight:600;overflow-wrap:anywhere}.tx-table tr.is-pending .tx-merch-text strong{color:var(--color-text-secondary)}.tx-badges{display:flex;flex-wrap:wrap;gap:4px 6px;margin-top:3px}.tx-badge,.tx-business-pill,.tx-receipt-pill,.tx-tag-chip{display:inline-flex;align-items:center;gap:4px;padding:1px 8px;border:1px solid var(--color-border-default);border-radius:999px;background:var(--color-bg-subtle);color:var(--color-text-secondary);font:12px var(--font-body);white-space:nowrap}.tx-badge--pending{border-color:var(--color-warning);background:var(--color-warning-soft);color:var(--color-warning)}.tx-recurring-badge{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong);cursor:pointer}.tx-recurring-badge:hover{background:var(--color-accent-ring);color:var(--color-text-primary)}.tx-business-pill{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-strong)}.tx-receipt-pill--missing{border-color:var(--color-negative);color:var(--color-negative)}.tx-tag-chip{border-color:color-mix(in srgb,var(--tag-color, var(--color-text-muted)) 45%,transparent);background:color-mix(in srgb,var(--tag-color, var(--color-text-muted)) 14%,transparent);color:var(--color-text-primary)}.tx-tag-rm{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;margin-right:-6px;padding:0;border:0;background:none;color:inherit;font-size:13px;line-height:1;opacity:.75;cursor:pointer}.tx-tag-rm:hover{opacity:1}.tx-tags-cell{white-space:nowrap}.tx-type-cell{color:var(--color-text-secondary);font-size:12px}.tx-note{margin-top:3px;color:var(--color-text-secondary);font-size:12px}.tx-table .muted{color:var(--color-text-secondary);white-space:nowrap}.tx-cat-chip{display:inline-flex;align-items:center;gap:8px;min-height:28px;padding:0 12px 0 10px;border:1px solid var(--color-border-default);border-radius:999px;background:var(--color-bg-subtle);color:var(--color-text-primary);font:12.5px var(--font-body);cursor:pointer}.tx-cat-chip:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--cat-color, var(--color-text-muted))}.tx-cat-chip:after{content:"";border:4px solid transparent;border-top-color:var(--color-text-secondary);margin:4px 0 0 2px}.tx-cat-chip:hover{border-color:var(--color-border-strong)}.tx-cat-chip.is-empty{border-style:dashed;border-color:var(--color-warning);background:var(--color-warning-soft);color:var(--color-warning)}.tx-cat-chip.is-empty:before{display:none}.tx-cat-chip:disabled{opacity:.6;cursor:progress}.tx-row-menu{position:relative;display:inline-block}.tx-row-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:32px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-text-primary);cursor:pointer;list-style:none}.tx-row-menu-btn::-webkit-details-marker{display:none}.tx-row-menu-list{position:absolute;right:0;top:calc(100% + 4px);z-index:30;display:flex;flex-direction:column;min-width:11rem;padding:6px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:0 10px 30px #00000073;text-align:left}.tx-row-menu.is-up .tx-row-menu-list{top:auto;bottom:calc(100% + 4px)}.tx-row-menu-list button{padding:8px 10px;border:0;border-radius:var(--radius-md);background:none;color:var(--color-text-primary);font:13px var(--font-body);text-align:left;cursor:pointer}.tx-row-menu-list button:hover,.tx-row-menu-list button:focus-visible{background:var(--color-accent-soft);outline:none}@media(hover:hover){.tx-row-menu-btn{opacity:.45}.tx-table tr:hover .tx-row-menu-btn,.tx-table tr:focus-within .tx-row-menu-btn,.tx-row-menu[open] .tx-row-menu-btn{opacity:1}}.tx-table-wrap.tx-table-wrap--day{overflow:visible}.tx-table--day{min-width:0}.tx-head-hidden th{height:0;padding:0;border:0;overflow:hidden;font-size:0;line-height:0}.tx-day th{position:sticky;top:calc(var(--shell-sticky-offset) + var(--tx-bulk-h, 0px));z-index:2;padding:8px 12px;border-bottom:1px solid var(--color-border-default);background:var(--color-bg-canvas);color:var(--color-text-primary);font-size:12.5px;font-weight:600}.tx-day-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.tx-day-meta{color:var(--color-text-secondary);font-weight:400}.tx-day-net{margin-left:8px;font-family:var(--font-mono)}.tx-day-net.amt-neg{color:var(--color-text-secondary)}.tx-day-net.amt-pos{color:var(--color-positive)}.has-bulk{--tx-bulk-h: 52px}.tx-table th[aria-sort]{padding:0}.tx-sort-button{display:inline-flex;align-items:center;gap:6px;width:100%;min-height:40px;padding:9px 12px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.tx-sort-button:hover{color:var(--color-text-primary);background:var(--color-bg-subtle)}.tx-sort-button:after{content:"";flex:none;width:8px;height:12px;background:currentColor;opacity:.45;clip-path:polygon(50% 0,100% 40%,0 40%,50% 0,0 60%,100% 60%,50% 100%,0 60%)}.tx-table th[aria-sort=ascending] .tx-sort-button:after{opacity:1;background:var(--color-accent);clip-path:polygon(50% 0,100% 60%,0 60%)}.tx-table th[aria-sort=descending] .tx-sort-button:after{opacity:1;background:var(--color-accent);clip-path:polygon(0 40%,100% 40%,50% 100%)}.tx-amount-heading .tx-sort-button{justify-content:flex-end}.tx-amount-heading{text-align:right}.tx-more{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px;color:var(--color-text-secondary);font:12px var(--font-mono)}.tx-table tr.tx-flash-ok td:first-child{animation:tx-ok .6s ease-out}@keyframes tx-ok{0%{box-shadow:inset 3px 0 0 var(--color-positive)}to{box-shadow:inset 3px 0 0 transparent}}@media(prefers-reduced-motion:reduce){.tx-table tr.tx-flash-ok td:first-child{animation:none}}.tx-check{width:24px}input[type=checkbox]{-webkit-appearance:none;appearance:none;width:14px;height:14px;background:var(--bg-2);border:1px solid var(--border-2);border-radius:2px;cursor:pointer;position:relative;flex-shrink:0;vertical-align:middle;transition:border-color .15s,background .15s}input[type=checkbox]:hover{border-color:var(--crimson-hi)}input[type=checkbox]:checked{background:var(--crimson);border-color:var(--crimson-hi)}input[type=checkbox]:checked:after{content:"";position:absolute;left:3px;top:0;width:5px;height:8px;border:2px solid var(--cream);border-top:none;border-left:none;transform:rotate(45deg)}.tx-col-picker{display:none;align-items:center;gap:14px;padding:8px 14px;margin-bottom:8px;background:var(--color-bg-raised);border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.tx-col-picker.open{display:flex}.tx-col-picker .tx-col-label,.tx-col-picker label{color:var(--color-text-secondary);font-size:12px}.tx-col-picker label{display:flex;align-items:center;gap:5px;cursor:pointer}.tx-col-picker input[type=checkbox]{accent-color:var(--crimson);cursor:pointer}.tx-bulk-bar{position:sticky;top:var(--shell-sticky-offset);z-index:50;background:var(--color-bg-raised);border:1px solid var(--crimson-rim);border-left:2px solid var(--crimson);padding:10px 16px;margin-bottom:10px;display:flex;gap:10px;align-items:center;font-size:12.5px;border-radius:4px;color:var(--color-text-primary)}.tx-bulk-all{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.tx-context{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-height:24px;margin:4px 0 10px;color:var(--color-text-secondary);font-size:12.5px}.tx-select-mode{display:none}.tx-state{padding:36px 20px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-raised);text-align:center}.tx-state h2{margin:0 0 8px;color:var(--color-text-primary);font-family:var(--font-display);font-size:24px}.tx-state p{max-width:520px;margin:0 auto 16px;color:var(--color-text-secondary)}.tx-state--error{border-color:var(--color-negative)}.tx-state-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.tx-table-wrap{width:100%;overflow-x:auto;overscroll-behavior-x:contain;border:1px solid var(--color-border-default);border-radius:var(--radius-lg)}.tx-table-wrap.tx-table-wrap--day{border-color:var(--color-border-subtle)}.tx-table-wrap:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.tx-table{min-width:860px}.tx-actions-heading{width:56px}.tx-table tr[data-tx-id]:focus-within td{background:var(--color-bg-subtle)}.tx-table tr[data-tx-write-state=pending]{opacity:.7}.tx-table tr[data-tx-write-state=error] td{box-shadow:inset 0 1px 0 var(--color-negative),inset 0 -1px 0 var(--color-negative)}.tx-bulk-bar[hidden]{display:none}@media(max-width:1000px){.tx-summary{grid-template-columns:minmax(0,1fr)}.tx-sum-figs>div:last-child{border-right:0}.tx-sum-spend{border-top:1px solid var(--color-border-subtle)}}@media(max-width:760px){.tx-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tx-view-row select{flex:1 1 150px;min-width:0}.tx-bulk-bar{align-items:stretch;flex-wrap:wrap}.tx-bulk-bar span{flex:1 0 100%}.tx-bulk-bar .cyber-btn-sm{flex:1 1 0;min-width:0;padding-inline:6px;white-space:nowrap}}@media(max-width:720px){#transactions .section-header{flex-wrap:nowrap;align-items:flex-start;margin-bottom:10px}#transactions .btn-group{flex:0 0 auto;gap:6px}#transactions .section-header h1{font-size:22px;letter-spacing:.5px}.tx-hdr-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}#tx-refresh,#tx-import,#tx-add{min-width:44px;min-height:40px}#transactions .money-workflow-nav{display:flex;overflow-x:auto}#transactions .money-workflow-nav a{flex:0 0 auto;border-right:1px solid var(--color-border-default)}.tx-summary{min-height:0;margin-bottom:10px}.tx-sum-spend{display:none}.tx-sum-figs{grid-template-columns:repeat(2,minmax(0,1fr))}.tx-sum-figs>div{padding:6px 12px;border-bottom:1px solid var(--color-border-subtle)}.tx-sum-figs>div:nth-child(2n){border-right:0}.tx-sum-figs>div:nth-child(n+3){border-bottom:0}.tx-sum-figs dd{font-size:16px}.tx-review-count{font-size:12px}#tx-cols-toggle{display:none}.tx-toolbar{gap:8px}.tx-custom-range{right:0}.tx-search{flex:1 0 100%;max-width:none}.seg,.tx-presets{max-width:100%;overflow-x:auto}.tx-presets,#transactions .money-workflow-nav{padding-right:20px;-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 24px),transparent)}.tx-toolbar-end{width:100%;margin-left:0;justify-content:space-between}.tx-chip,.seg label,.tx-fchip{min-height:40px}.tx-chip{padding:0 9px;font-size:12px}.tx-chip select{max-width:96px;padding-right:12px}.tx-chip:has(select):after{right:8px}.tx-toolbar-end{flex-wrap:nowrap}.tx-toolbar-end .tx-chip:has(select){flex:1 1 0;min-width:0}.tx-toolbar-end .tx-chip select{width:100%;max-width:none}.seg label{padding:0 10px}.tx-context .tx-select-mode{display:inline;min-height:40px}.tx-table-wrap,.tx-table-wrap.tx-table-wrap--day{overflow:visible;border:0}.tx-table{display:block;min-width:0}.tx-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.tx-table tbody{display:block}.tx-table tr[data-tx-id]{display:grid;grid-template-columns:minmax(0,1fr) auto 40px;grid-template-areas:"merch amt menu" "cat acct acct";gap:4px 8px;padding:10px 12px;border-bottom:1px solid var(--color-border-subtle)}.tx-table--tx tr[data-tx-id]{grid-template-areas:"merch amt menu" "cat cat cat" "date acct acct"}.tx-table td,.tx-table .tx-day,.tx-table .tx-day th{display:block;padding:0;border:0}.tx-table .tx-day th{padding:8px 12px;border-bottom:1px solid var(--color-border-default)}.tx-table tr[data-tx-id]:hover td{background:none}.tx-table .tx-merch-cell{grid-area:merch}.tx-table .tx-amount{grid-area:amt;align-self:start}.tx-table td.tx-actions{grid-area:menu;width:auto}.tx-table .tx-cat{grid-area:cat;padding-left:42px}.tx-table .tx-date{grid-area:date;padding-left:42px;font-size:12px}.tx-table td[data-col=account]{grid-area:acct;font-size:12px;text-align:right}.tx-table--tx td[data-col=account]{text-align:left}.tx-table--tx td[data-col=account]:before{content:"· "}.tx-table td[data-col=tags],.tx-table td[data-col=type],.tx-table td[data-col=goal]{display:none}.tx-table .tx-check{display:none;width:auto}.is-selecting .tx-table tr[data-tx-id]{grid-template-columns:32px minmax(0,1fr) auto 40px;grid-template-areas:"chk merch amt menu" "chk cat acct acct"}.is-selecting .tx-table--tx tr[data-tx-id]{grid-template-areas:"chk merch amt menu" "chk cat cat cat" "chk date acct acct"}.is-selecting .tx-table .tx-check{display:block;grid-area:chk;align-self:center}.tx-row-menu-btn{opacity:1;width:40px;height:40px}}.tx-catpop{position:fixed;z-index:1000;display:flex;flex-direction:column;width:300px;max-height:min(420px,80vh);padding:8px;border:1px solid var(--color-border-default);border-radius:12px;background:var(--color-surface-raised);box-shadow:0 14px 40px #0000008c}.tx-catpop input[type=text]{width:100%;height:36px;padding:0 10px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-bg-canvas);color:var(--color-text-primary);font:14px var(--font-body)}.tx-catpop input[type=text]:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.tx-catpop ul{flex:1 1 auto;min-height:0;margin:6px 0;padding:0;overflow-y:auto;list-style:none}.tx-catpop-group,.tx-catpop-empty{padding:8px 10px 4px;color:var(--color-text-secondary);font-size:12px}.tx-catpop [role=option]{display:flex;align-items:center;gap:10px;min-height:36px;padding:6px 10px;border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:13.5px;cursor:pointer}.tx-catpop [role=option].is-active{background:var(--color-accent-soft);box-shadow:inset 0 0 0 1px var(--color-accent)}.tx-catpop [aria-selected=true] .tx-catpop-name{font-weight:600}.tx-catpop-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tx-catpop-hint{color:var(--color-text-secondary);font-size:12px;white-space:nowrap}.tx-pop-head{display:flex;align-items:center;justify-content:space-between;padding:2px 4px 6px;color:var(--color-text-secondary);font-size:12px}.tx-pop-close{min-width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:inherit;cursor:pointer}.tx-pop-close:focus-visible{outline:2px solid var(--color-accent)}.tx-catpop [role=option][aria-selected=true]:after{content:"✓";color:var(--color-accent);margin-left:4px}.tx-catpop [role=option] .cat-icon{display:inline-flex;flex:0 0 20px;align-items:center;justify-content:center;width:20px}.tx-catpop-none{width:14px;height:14px;border:1px dashed var(--color-text-muted);border-radius:50%}.tx-catpop-always{display:flex;align-items:center;gap:8px;padding:8px 10px;border-top:1px solid var(--color-border-subtle);color:var(--color-text-primary);font-size:13px;cursor:pointer}.tx-catpop-always:has(input:disabled){color:var(--color-text-secondary);cursor:default}.tx-catpop .tx-link{align-self:flex-start;padding:6px 10px;font-size:13px}@media(max-width:720px){.tx-catpop{inset:auto 0 0;width:auto;max-height:75vh;border-radius:16px 16px 0 0}}.chart-container{width:100%;position:relative}.chart-container svg{width:100%;display:block}.acct-table{width:100%;border-collapse:collapse;font-family:Inter,sans-serif;font-size:13px;table-layout:fixed}.acct-table th{text-align:left;font-family:Inter,sans-serif;font-size:10px;font-weight:600;letter-spacing:.1em;color:var(--text-muted);padding:10px 12px;border-bottom:1px solid var(--border);text-transform:uppercase}.acct-table td{padding:10px 12px;border-bottom:1px solid var(--border);color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acct-table tr:hover td{background:var(--bg-3)}.acct-table .bal{font-family:IBM Plex Mono,monospace;text-align:right;color:var(--cream)}.acct-table td.positive{color:var(--positive)}.acct-table td.negative{color:var(--negative)}.acct-table th:nth-child(1),.acct-table td:nth-child(1){width:40%}.acct-table th:nth-child(2),.acct-table td:nth-child(2){width:18%}.acct-table th:nth-child(3),.acct-table td:nth-child(3){width:12%}.acct-table th:nth-child(4),.acct-table td:nth-child(4){width:18%}.acct-table th:nth-child(5),.acct-table td:nth-child(5){width:12%;text-align:right;white-space:nowrap}.acct-table td.tx-actions{text-align:right;white-space:nowrap}.section-heading-copy{display:grid;gap:4px}.section-heading-copy p{margin:0;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em}.accounts-workspace{display:grid;gap:18px}.accounts-status-line{display:flex;align-items:center;gap:9px;min-height:40px;padding:8px 12px;border:1px solid var(--color-border-default);border-left:3px solid var(--color-supporting);border-radius:var(--radius-sm);background:var(--color-bg-raised);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:11px}.accounts-status-line .link-button{margin-left:auto}.accounts-status-line[data-state=current]{border-left-color:var(--color-positive)}.accounts-status-line[data-state=stale]{border-left-color:var(--color-warning)}.accounts-status-line[data-state=action]{border-left-color:var(--color-negative)}.accounts-status-line[data-state=syncing]{border-left-color:var(--color-accent)}.accounts-last-sync{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0;padding:8px 12px;border:1px solid var(--color-border-default);border-left:3px solid var(--color-supporting);border-radius:var(--radius-sm);background:var(--color-bg-raised);color:var(--color-text-secondary);font-size:12px}.accounts-last-sync strong{color:var(--color-text-primary);font-weight:550}.accounts-last-sync[data-tone=ok]{border-left-color:var(--color-positive)}.accounts-last-sync[data-tone=warn]{border-left-color:var(--color-warning)}.accounts-last-sync[data-tone=err]{border-left-color:var(--color-negative)}.account-source[data-focused=true]{outline:2px solid var(--color-accent);outline-offset:2px}.account-health-dot{flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--color-text-secondary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-text-secondary) 16%,transparent)}[data-state=current]>.account-health-dot,[data-connection-state=current] .account-health-dot{background:var(--color-positive);box-shadow:0 0 0 3px var(--color-positive-soft)}[data-state=stale]>.account-health-dot,[data-connection-state=stale] .account-health-dot{background:var(--color-warning);box-shadow:0 0 0 3px var(--color-warning-soft)}[data-state=action]>.account-health-dot,[data-connection-state=action] .account-health-dot{background:var(--color-negative);box-shadow:0 0 0 3px var(--color-negative-soft)}[data-state=syncing]>.account-health-dot,[data-connection-state=syncing] .account-health-dot{background:var(--color-accent);animation:account-health-pulse 1s ease-in-out infinite}.accounts-stat-grid{display:grid;grid-template-columns:minmax(220px,1.25fr) repeat(3,minmax(150px,.75fr));gap:10px}.accounts-stat{position:relative;display:grid;align-content:center;min-height:116px;padding:17px 18px;overflow:hidden;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:linear-gradient(145deg,var(--color-bg-raised),var(--color-bg-emphasis))}.accounts-stat:after{content:"";position:absolute;right:-34px;bottom:-58px;width:105px;height:105px;border:1px solid var(--color-border-strong);border-radius:50%;opacity:.4}.accounts-stat--hero{border-color:var(--color-accent-ring);background:linear-gradient(135deg,var(--color-accent-soft),var(--color-bg-raised) 58%)}.accounts-stat>span,.accounts-stat>small{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.accounts-stat>strong{position:relative;z-index:1;margin:6px 0 4px;color:var(--color-text-primary);font-family:var(--font-display);font-size:clamp(26px,3vw,38px);font-weight:650;line-height:1}.accounts-stat:not(.accounts-stat--hero)>strong{font-family:var(--font-mono);font-size:clamp(20px,2.1vw,27px)}.accounts-stat>strong.positive{color:var(--color-positive)}.accounts-stat>strong.negative{color:var(--color-negative)}.accounts-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;padding-top:6px}.accounts-eyebrow{color:var(--color-accent);font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.18em}.accounts-toolbar h2{margin:5px 0 0;color:var(--color-text-primary);font-family:var(--font-display);font-size:25px;font-weight:600;letter-spacing:.02em}.accounts-toolbar label{display:grid;gap:5px;min-width:174px;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.acc-sort-select{min-height:38px;padding:6px 30px 6px 10px;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-bg-raised);color:var(--color-text-primary)}.accounts-hidden-note{padding:11px 13px;border:1px dashed var(--color-border-strong);color:var(--color-text-secondary);font-size:12px}.accounts-hidden-note a{color:var(--color-accent)}.accounts-trash{display:grid;gap:10px;margin-top:8px}.accounts-trash-checking{margin:8px 0 0;color:var(--color-text-secondary);font-size:12px;opacity:0;animation:accounts-trash-reveal 0s linear .7s forwards}@keyframes accounts-trash-reveal{to{opacity:1}}@media(prefers-reduced-motion:reduce){.accounts-trash-checking{animation-duration:0s}}.accounts-trash-notice{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0;padding:11px 13px;border:1px solid var(--color-border-strong);border-left:3px solid var(--color-accent);color:var(--color-text-secondary);font-size:13px;line-height:1.45}.accounts-trash-notice p{margin:0}.accounts-trash[data-trash-state=error] .accounts-trash-notice,.accounts-trash[data-trash-state=stale] .accounts-trash-notice{border-left-color:var(--negative)}.accounts-trash-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.accounts-trash-list li{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:11px 13px;border:1px dashed var(--color-border-strong)}.accounts-trash-list li[data-state=restoring]{opacity:.75}.accounts-trash-list li[data-state=expired]{opacity:.6}.accounts-trash-main{display:grid;gap:3px;min-width:0}.accounts-trash-main small{display:block;color:var(--color-text-secondary);font-size:12px;line-height:1.45}.accounts-trash-main small.accounts-trash-kind{display:inline;margin-left:6px}.accounts-trash button:disabled{opacity:.5;cursor:not-allowed}.accounts-trash-conflict{margin:6px 0 0;padding:8px 10px;border:1px solid var(--negative);border-left-width:3px;background:var(--negative-bg);color:var(--negative);font-size:12px;line-height:1.45}@media(max-width:720px){.accounts-trash-list li,.accounts-trash-notice{flex-direction:column;align-items:stretch}}.acct-delete{display:grid;gap:10px;color:var(--text-2);font-size:13px;line-height:1.5}.acct-delete p{margin:0}.acct-delete-who strong{color:var(--text);font-size:15px}.acct-delete-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 18px;margin:0;padding:10px 12px;list-style:none;border:1px solid rgba(253,246,236,.12);background:#fdf6ec08}.acct-delete-list strong{color:var(--text);font-variant-numeric:tabular-nums}.acct-delete-note,.acct-delete-recovery{color:var(--text-muted);font-size:12px}.acct-delete-problem{padding:10px 12px;border:1px solid var(--negative);border-left-width:3px;background:var(--negative-bg)}.acct-delete-problem p+p{margin-top:6px}.acct-delete-problem button{margin-top:8px}.acct-delete-confirm{display:grid;gap:6px;margin-top:4px}.acct-delete-hint{min-height:1.4em;color:var(--text-muted);font-size:12px}.acct-delete-hint[data-state=mismatch]{color:var(--negative)}.acct-delete-hint[data-state=match]{color:var(--positive)}.account-source-list{display:grid;gap:12px}.account-source{position:relative;display:grid;overflow:visible;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-raised);box-shadow:var(--shadow-soft);animation:account-source-in .28s ease both}.account-source:nth-child(2){animation-delay:40ms}.account-source:nth-child(3){animation-delay:80ms}.account-source-rail{position:absolute;inset:0 auto 0 0;width:3px;background:var(--account-source-accent);box-shadow:0 0 22px color-mix(in srgb,var(--account-source-accent) 35%,transparent)}.account-source-header{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;align-items:center;gap:18px;min-height:78px;padding:10px 14px 10px 18px}.account-source-toggle{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;min-height:52px;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.account-source-toggle:focus-visible,.account-source-menu summary:focus-visible{outline:var(--focus-ring);outline-offset:3px;border-radius:var(--radius-sm)}.account-source-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid color-mix(in srgb,var(--account-source-accent) 62%,var(--color-border-default));border-radius:50%;background:color-mix(in srgb,var(--account-source-accent) 12%,var(--color-bg-emphasis));color:var(--color-text-primary);font-family:var(--font-display);font-size:21px}.account-source-copy{display:grid;min-width:0;gap:5px}.account-source-name{overflow:hidden;color:var(--color-text-primary);font-family:var(--font-display);font-size:21px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.account-source-health{display:flex;align-items:center;gap:8px;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px;line-height:1.35}.account-source-chevron{color:var(--color-text-secondary);font-size:20px;transition:transform .18s ease}.account-source-total{display:grid;gap:3px;min-width:116px;text-align:right}.account-source-total span{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:9px;letter-spacing:.11em;text-transform:uppercase}.account-source-total strong{color:var(--color-text-primary);font-family:var(--font-mono);font-size:16px}.account-source-total strong.positive{color:var(--color-positive)}.account-source-total strong.negative{color:var(--color-negative)}.account-source-actions{display:flex;align-items:center;gap:6px}.account-source-actions .cyber-btn-sm{min-height:38px}.account-source-menu{position:relative}.account-source-menu summary{display:grid;place-items:center;min-width:50px;min-height:38px;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px;cursor:pointer;list-style:none}.account-source-menu summary::-webkit-details-marker{display:none}.account-source-menu[open] summary,.account-source-menu summary:hover{border-color:var(--color-border-strong);color:var(--color-text-primary);background:var(--color-bg-emphasis)}.account-source-menu-panel{position:absolute;z-index:8;top:calc(100% + 6px);right:0;width:190px;padding:6px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg-emphasis);box-shadow:var(--shadow-soft)}.account-source-menu-panel button{width:100%;min-height:38px;padding:7px 9px;border:0;background:transparent;color:var(--color-negative);font-size:11px;text-align:left;cursor:pointer}.account-source-menu-panel button:hover,.account-source-menu-panel button:focus-visible{background:var(--color-negative-soft);outline:none}.account-connection-error{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;margin:0 14px 12px 18px;padding:10px 12px;border:1px solid var(--color-negative);border-radius:var(--radius-sm);background:var(--color-negative-soft);color:var(--color-text-secondary);font-size:12px}.account-connection-error strong{color:var(--color-negative);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.account-source-body[hidden]{display:none}.account-table-wrap{width:100%;overflow-x:auto;border-top:1px solid var(--color-border-default);overscroll-behavior-x:contain}.account-table-wrap:focus-visible{outline:var(--focus-ring);outline-offset:-3px}.account-table{width:100%;min-width:740px;border-collapse:collapse;table-layout:fixed}.account-table th{padding:10px 14px;border-bottom:1px solid var(--color-border-default);background:var(--color-bg-emphasis);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.1em;text-align:left;text-transform:uppercase}.account-table td{padding:13px 14px;border-bottom:1px solid var(--color-border-default);color:var(--color-text-secondary);font-size:12px;vertical-align:middle}.account-table tbody tr:last-child td{border-bottom:0}.account-table tbody tr:hover td{background:color-mix(in srgb,var(--color-accent-soft) 38%,transparent)}.account-table th:first-child{width:31%}.account-table th:nth-child(2){width:25%}.account-table th:nth-child(3){width:17%}.account-table th:nth-child(4){width:17%}.account-name{color:var(--color-text-primary);font-weight:650}.account-meta,.account-cell-detail{display:block;margin-top:3px;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px}.account-type{color:var(--color-text-primary)}.account-inclusion{display:inline-flex;padding:3px 7px;border:1px solid var(--color-border-default);border-radius:999px;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:9px;text-transform:uppercase}.account-inclusion--included{border-color:var(--color-positive);background:var(--color-positive-soft);color:var(--color-positive)}.account-balance,.account-balance-heading{text-align:right!important}.account-balance{color:var(--color-text-primary);font-family:var(--font-mono);font-size:14px;font-weight:600}.account-balance.positive{color:var(--color-positive)}.account-balance.negative{color:var(--color-negative)}.account-row-action{text-align:right}.account-source-empty{padding:24px;border-top:1px solid var(--color-border-default);color:var(--color-text-secondary);text-align:center}.accounts-empty,.accounts-load-error{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:center;min-height:210px;padding:30px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:linear-gradient(145deg,var(--color-bg-raised),var(--color-bg-emphasis))}.accounts-load-error{border-color:var(--color-negative)}.accounts-empty-index{color:var(--color-accent);font-family:var(--font-display);font-size:64px;line-height:1;opacity:.35}.accounts-empty h2,.accounts-load-error h2{margin:0 0 7px;color:var(--color-text-primary);font-family:var(--font-display);font-size:27px}.accounts-empty p,.accounts-load-error p{max-width:560px;margin:0 0 16px;color:var(--color-text-secondary);line-height:1.5}.account-source--skeleton{min-height:150px;align-content:center;gap:14px;padding:24px}.account-source--skeleton .dashboard-skeleton{display:block;height:18px}@keyframes account-source-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes account-health-pulse{50%{opacity:.35;transform:scale(.8)}}@media(max-width:980px){.accounts-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-source-header{grid-template-columns:minmax(240px,1fr) auto}.account-source-actions{grid-column:2}}@media(max-width:720px){.section-heading-copy{width:100%}.accounts-toolbar{align-items:stretch;flex-direction:column}.accounts-toolbar label{width:100%}.account-source-header{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:10px 12px 10px 16px}.account-source-total{min-width:92px}.account-source-actions{grid-column:1 / -1;justify-content:flex-end;padding-top:8px;border-top:1px solid var(--color-border-default)}.account-table{min-width:0;table-layout:auto}.account-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.account-table,.account-table tbody,.account-table tr,.account-table td{display:block;width:100%}.account-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 14px;padding:14px;border-bottom:1px solid var(--color-border-default)}.account-table tbody tr:last-child{border-bottom:0}.account-table td{display:grid;grid-template-columns:92px minmax(0,1fr);gap:8px;padding:0;border:0;text-align:right}.account-table td:before{content:attr(data-label);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;text-align:left;text-transform:uppercase}.account-table td:first-child{grid-column:1 / -1;display:block;text-align:left}.account-table td:first-child:before{display:none}.account-table td:nth-child(2),.account-table td:nth-child(3),.account-table td:nth-child(4){grid-column:1 / -1;align-items:start}.account-table td:nth-child(2) .account-type,.account-table td:nth-child(2) .account-cell-detail,.account-table td:nth-child(3) .account-inclusion{grid-column:2;justify-self:end}.account-table td:nth-child(2) .account-cell-detail{margin-top:0}.account-table td>*{min-width:0}.account-row-action{grid-column:2;grid-row:1;display:block!important}.account-row-action:before{display:none}.account-connection-error{grid-template-columns:1fr}}@media(max-width:480px){.accounts-stat-grid{grid-template-columns:1fr}.accounts-stat{min-height:96px}.account-source-header{grid-template-columns:1fr}.account-source-toggle{grid-template-columns:38px minmax(0,1fr) auto}.account-source-mark{width:38px;height:38px}.account-source-total{padding-left:50px;text-align:left}.account-source-actions{grid-column:1;justify-content:stretch}.account-source-actions .cyber-btn-sm{flex:1}.accounts-empty,.accounts-load-error{grid-template-columns:1fr}.accounts-empty-index{font-size:48px}}@media(prefers-reduced-motion:reduce){.account-source{animation:none}[data-state=syncing]>.account-health-dot,[data-connection-state=syncing] .account-health-dot{animation:none}}.dash-row{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin-bottom:16px}@media(max-width:900px){.dash-row{grid-template-columns:1fr}}.dash-row-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}@media(max-width:900px){.dash-row-3{grid-template-columns:1fr}}.dashboard-overview{display:grid;gap:20px}.dashboard-status{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px;border:1px solid var(--color-accent-ring);border-left:3px solid var(--color-accent);background:var(--color-accent-soft);color:var(--color-text-secondary);font-size:12px}.dashboard-status--error{border-color:var(--color-negative);background:var(--color-negative-soft)}.dashboard-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);gap:24px;overflow:hidden;padding:clamp(22px,4vw,38px);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--color-bg-raised),var(--color-bg-emphasis));box-shadow:var(--shadow-soft)}.dashboard-hero:after{content:"";position:absolute;width:240px;height:240px;right:-80px;top:-120px;border-radius:50%;background:var(--color-accent-soft);filter:blur(8px);pointer-events:none}.dashboard-hero-main,.dashboard-hero-context{position:relative;z-index:1}.dashboard-eyebrow,.dashboard-metric-label{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.dashboard-position-title{margin:8px 0 2px;color:var(--color-text-primary);font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;font-weight:500}.dashboard-net-worth{color:var(--color-text-primary);font-family:var(--font-display);font-size:clamp(40px,7vw,72px);font-weight:700;line-height:1;letter-spacing:-.02em}.dashboard-freshness,.dashboard-widget-meta{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em}.dashboard-freshness--fresh{color:var(--color-positive)}.dashboard-freshness--stale,.dashboard-widget-meta--error{color:var(--color-warning)}.dashboard-freshness--loading,.dashboard-freshness--refreshing{color:var(--color-supporting)}.dashboard-freshness--error{color:var(--color-negative)}.dashboard-hero-context{align-self:end;padding:14px 0 2px 20px;border-left:1px solid var(--color-border-default)}.dashboard-context-value{margin-top:8px;color:var(--color-text-primary);font-family:var(--font-display);font-size:25px;font-weight:600}.dashboard-context-copy{margin-top:4px;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:12px}.dashboard-metrics{margin:0}.dashboard-metric-card{padding:16px;border-radius:var(--radius-md)}.dashboard-metric-value{margin-top:7px;color:var(--color-text-primary);font-family:var(--font-mono);font-size:20px;font-weight:600}.dashboard-metric-value.positive{color:var(--color-positive)}.dashboard-metric-value.negative{color:var(--color-negative)}.dashboard-metric-note{margin-top:5px;color:var(--color-text-secondary);font-size:11px}.dashboard-section{display:grid;gap:12px}.dashboard-section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px}.dashboard-section-heading h2{margin-top:5px;color:var(--color-text-primary);font-family:var(--font-display);font-size:25px;font-weight:600;letter-spacing:.03em}.dashboard-section-note{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:11px}.dashboard-attention-list{display:grid;gap:8px}.dashboard-attention-item,.dashboard-all-clear{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;padding:12px 14px;border:1px solid var(--color-border-default);border-left:3px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-bg-raised);color:var(--color-text-primary);text-decoration:none}.dashboard-attention-item:hover{border-color:var(--color-accent-ring);background:var(--color-bg-subtle)}.dashboard-attention-item--warning{border-left-color:var(--color-warning)}.dashboard-attention-item--info{border-left-color:var(--color-supporting)}.dashboard-attention-mark{display:grid;place-items:center;width:26px;height:26px;border:1px solid currentColor;border-radius:50%;color:var(--color-accent-strong);font-family:var(--font-mono);font-size:12px}.dashboard-attention-item--warning .dashboard-attention-mark{color:var(--color-warning)}.dashboard-attention-item--info .dashboard-attention-mark{color:var(--color-supporting)}.dashboard-attention-copy{display:grid;gap:3px;min-width:0}.dashboard-attention-copy strong{color:var(--color-text-primary);font-size:13px;font-weight:600}.dashboard-attention-copy span{color:var(--color-text-secondary);font-size:12px}.dashboard-attention-action{color:var(--color-supporting);font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;white-space:nowrap}.dashboard-all-clear{grid-template-columns:1fr;border-left-color:var(--color-positive)}.dashboard-all-clear strong{color:var(--color-text-primary);font-size:13px}.dashboard-all-clear span{color:var(--color-text-secondary);font-size:12px}.dashboard-explore-grid,.dashboard-optional-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dashboard-panel{min-width:0}.dashboard-panel--trend{grid-column:span 2}.dashboard-panel .card-header{margin-bottom:10px}.dashboard-chart-figure{margin:0}.dashboard-donut{display:grid;place-items:center;min-height:180px}.dashboard-category-list{margin-top:8px}.dashboard-tx-row{min-width:0}.dashboard-inline-empty{padding:14px 0;color:var(--color-text-secondary);font-size:12px}.dashboard-widget-meta{min-height:15px;margin:-4px 0 8px}.dashboard-widget-meta--ready{color:var(--color-positive)}.dashboard-widget-meta--refreshing{color:var(--color-supporting)}.dashboard-widget-error{display:grid;gap:5px;padding:10px 0}.dashboard-widget-error strong{color:var(--color-text-primary);font-size:12px}.dashboard-widget-error span{color:var(--color-text-secondary);font-size:11px}.dashboard-skeleton-list{display:grid;gap:8px}.dashboard-panel-skeleton{min-height:120px;display:grid;place-items:center}.dashboard-skeleton{display:inline-block;width:9rem;height:1.05em;border-radius:var(--radius-sm);background:var(--color-border-default);animation:dashboard-pulse 1.2s ease-in-out infinite}@keyframes dashboard-pulse{0%,to{opacity:.45}50%{opacity:.9}}@media(prefers-reduced-motion:reduce){.dashboard-skeleton{animation:none;opacity:.65}}@media(max-width:900px){.dashboard-hero{grid-template-columns:1fr}.dashboard-hero-context{padding:14px 0 0;border-left:0;border-top:1px solid var(--color-border-default)}}@media(max-width:680px){.dashboard-section-heading{align-items:start;flex-direction:column;gap:4px}.dashboard-explore-grid,.dashboard-optional-grid{grid-template-columns:1fr}.dashboard-panel--trend{grid-column:auto}.dashboard-attention-item{grid-template-columns:auto minmax(0,1fr)}.dashboard-attention-action{grid-column:2}}@media(max-width:520px){.dashboard-hero{padding:22px 16px}.dashboard-net-worth{font-size:42px}.dashboard-metrics{gap:8px}.dashboard-metric-card{padding:12px}.dashboard-metric-value{font-size:16px}}.bud-stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.bud-stat-card{background:var(--surface);border:1px solid var(--border);padding:14px 16px;border-radius:4px}.bud-stat-lbl{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:.18em;color:var(--text-muted);margin-bottom:4px;text-transform:uppercase}.bud-stat-val{font-family:IBM Plex Mono,monospace;font-size:18px;color:var(--cream)}.bud-tog-active{background:var(--crimson-dim)!important;border-color:var(--crimson-rim)!important;color:var(--cream)!important}.bud-col-hdr{display:grid;grid-template-columns:18px 20px 1fr 110px 110px 90px 28px;gap:8px;padding:6px 12px;font-family:Inter,sans-serif;font-size:10px;font-weight:600;letter-spacing:.1em;color:var(--text-muted);text-transform:uppercase;border-bottom:1px solid var(--border);margin-bottom:4px}.bud-col-cat{grid-column:3}.bud-col-bud{grid-column:4;text-align:right}.bud-col-act{grid-column:5;text-align:right}.bud-col-met{grid-column:6;text-align:right}.bud-section{margin-bottom:18px}.bud-sec-hdr{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--bg-2);border:1px solid var(--border);border-left:2px solid var(--crimson)}.bud-sec-name{font-family:Inter,sans-serif;font-size:10px;font-weight:600;letter-spacing:.12em;color:var(--cream);text-transform:uppercase}.bud-sec-tot{font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--text-2)}.bud-sec-body{border:1px solid var(--border);border-top:none}.bud-drop-over{outline:1px dashed var(--crimson-rim);background:var(--crimson-dim)}.bud-section:has(#bud-business) .bud-sec-hdr{border-left-color:#c9a227}.bud-row{display:grid;grid-template-columns:18px 20px 1fr 110px 110px 90px 28px;gap:8px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--border);font-family:Inter,sans-serif;font-size:13px}.bud-row:hover{background:var(--bg-3)}.bud-row.bud-dragging{opacity:.4}.bud-drag{cursor:grab;color:var(--text-muted);font-size:14px;line-height:1;user-select:none;opacity:.6}.bud-drag:hover{color:var(--cream);opacity:1}.bud-drag-ph,.bud-del-ph{display:block;width:18px}.bud-icon{font-size:14px;text-align:center}.bud-name{color:var(--cream);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bud-name-edit{cursor:pointer}.bud-name-edit:hover{text-decoration:underline;text-decoration-style:dotted}.bud-inp{background:var(--bg-2);border:1px solid var(--border-2);color:var(--cream);padding:5px 8px;width:100%;text-align:right;font-family:IBM Plex Mono,monospace;font-size:13px;border-radius:2px;outline:none;transition:border-color .15s}.bud-inp:focus{border-color:var(--crimson-hi)}.bud-actual{font-family:IBM Plex Mono,monospace;font-size:13px;text-align:right}.bud-metric{font-family:IBM Plex Mono,monospace;font-size:13px;text-align:right;display:block}.bud-warn{color:var(--negative)}.bud-del{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:16px;padding:0;width:22px;text-align:center;opacity:.6;transition:color .15s,opacity .15s}.bud-del:hover{color:var(--negative);opacity:1}.bud-add-row{padding:8px 12px}.bud-add-btn{background:none;border:1px dashed var(--border-2);color:var(--text-2);font-size:11px;letter-spacing:.08em;padding:5px 14px;cursor:pointer;font-family:Inter,sans-serif;transition:all .15s;border-radius:2px}.bud-add-btn:hover{border-color:var(--crimson-hi);color:var(--cream);background:var(--crimson-dim)}.bud-annual-wrap{margin-top:8px}.bud-annual-tbl{width:100%;border-collapse:collapse;font-size:12px;font-family:Inter,sans-serif;margin-top:4px}.bud-annual-tbl th{text-align:left;padding:7px 12px;font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase;border-bottom:1px solid var(--border);background:var(--bg-2)}.bud-annual-tbl td{padding:8px 12px;border-bottom:1px solid var(--border);color:var(--text-2)}.bud-annual-num{text-align:right;font-family:IBM Plex Mono,monospace}.bud-annual-tot td{font-weight:700;border-top:1px solid var(--crimson-rim);color:var(--cream)}.form-hint{font-size:11px;color:#fdf6ec66;font-weight:400}.tx-goal-sel{min-width:120px}.rec-table{width:100%;border-collapse:collapse;font-family:Inter,sans-serif;font-size:13px}.rec-table th{text-align:left;padding:8px 12px;font-family:Inter,sans-serif;font-size:10px;font-weight:600;letter-spacing:.12em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;text-transform:uppercase;background:var(--bg-2)}.rec-table td{padding:10px 12px;border-bottom:1px solid var(--border);color:var(--text-2)}.rec-table tr:hover td{background:var(--bg-3);color:var(--cream)}.rec-table tr.rec-canceled td{opacity:.5}.rec-status-badge{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:.1em;background:var(--crimson-dim);color:var(--crimson-hi);border:1px solid var(--crimson-rim);padding:1px 5px;border-radius:3px;vertical-align:middle;margin-left:6px}.rec-hist-btn{background:none;border:none;cursor:pointer;font-size:14px;padding:0 4px;opacity:.5;transition:opacity .15s}.rec-hist-btn:hover{opacity:1}.rec-hist-table{width:100%;border-collapse:collapse;font-size:12px}.rec-hist-table th{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.1em;color:var(--text-muted);padding:6px 8px;border-bottom:1px solid var(--border);text-align:left}.rec-hist-table td{padding:7px 8px;border-bottom:1px solid var(--border);color:var(--cream)}.rec-hist-table .amt-pos{color:var(--color-money-positive)}.rec-hist-table .amt-neg{color:var(--color-money-negative)}.rec-hist-link{background:none;border:0;padding:0;color:var(--color-accent);cursor:pointer;font:inherit;text-decoration:underline}.rec-search-input{font-family:Unbounded,sans-serif;font-size:9px;font-weight:400;letter-spacing:.08em;padding:6px 12px;background:var(--bg-3);color:var(--text-2);border:1px solid var(--border);border-radius:4px;width:200px;text-transform:uppercase;transition:all .15s}.rec-search-input::placeholder{color:var(--text-2);opacity:.6;font-family:Unbounded,sans-serif;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.rec-search-input:hover{border-color:var(--border-2);color:var(--cream);background:var(--bg-4)}.rec-search-input:focus{outline:none;border-color:var(--border-2);color:var(--cream);background:var(--bg-4);box-shadow:none}.form-group{position:relative}.goal-card{background:var(--surface);border:1px solid var(--border);padding:20px;margin-bottom:14px;border-radius:4px}.goal-card h3{font-family:Unbounded,sans-serif;font-size:14px;font-weight:500;letter-spacing:.05em;color:var(--cream);margin-bottom:6px}.goal-card .goal-badges{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.goal-badge{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:var(--text-muted);border:1px solid var(--border);padding:1px 6px;border-radius:2px}.goal-badge--debt{color:var(--negative);border-color:var(--negative-bg)}.goal-milestone-badge{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;padding:1px 6px;border-radius:2px;background:var(--bg-3);color:var(--text-2);border:1px solid var(--border)}.goal-milestone-50{color:var(--text-2)}.goal-milestone-75{color:var(--cream);border-color:var(--border-2);background:var(--bg-4)}.goal-milestone-100{color:var(--cream);background:#4a9b6f2e;border-color:var(--positive)}.goal-milestone-history{margin-top:10px;padding-top:8px;border-top:1px dashed var(--border);display:none}.goal-card[data-show-timeline="1"] .goal-milestone-history{display:block}.goal-milestone-history-title{font-family:Unbounded,sans-serif;font-size:9px;letter-spacing:.12em;color:var(--text-muted);margin-bottom:4px}.goal-milestone-history-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.goal-milestone-history-list li{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:11px;color:var(--text-2)}.goal-milestone-history-pct{font-weight:500;color:var(--cream)}.goal-milestone-history-date{color:var(--text-muted)}.goal-card .goal-meta{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);letter-spacing:.08em;margin-bottom:12px}.goal-card .goal-prog{font-family:var(--font-mono);font-size:12px;display:flex;justify-content:space-between;margin-top:6px;color:var(--text-muted)}.goal-card .goal-notes{font-size:12px;color:var(--text-muted);margin-top:4px;white-space:pre-wrap}.rule-condition-row select,.rule-condition-row input{background:var(--surface-2);border:1px solid rgba(255,255,255,.07);color:var(--text);padding:4px 8px;font-size:11px;font-family:Karla,sans-serif;border-radius:2px;outline:none}.rule-meta-row{display:flex;justify-content:space-between;font-family:Karla,sans-serif;font-size:10px;color:var(--border-2);padding:8px 0}.inst-list-dyn .inst-row{background:var(--surface-2);padding:14px;border:1px solid rgba(255,255,255,.07);margin-bottom:8px;display:flex;align-items:center;gap:14px;border-radius:4px}.inst-list-dyn .inst-swatch{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-family:Unbounded,sans-serif;font-weight:600;color:#fff;font-size:12px;border-radius:4px}.chip-btn{display:inline-block;padding:4px 10px;background:var(--bg-3);border:1px solid var(--border);color:var(--text-2);font-family:IBM Plex Mono,monospace;font-size:10px;cursor:pointer;letter-spacing:.05em;border-radius:2px;transition:border-color .15s,color .15s,background .15s}.chip-btn:hover{color:var(--cream);border-color:var(--border-2);background:var(--bg-4)}.chip-btn.active{background:var(--crimson-dim);border-color:var(--crimson-rim);color:var(--cream)}.split-row{display:grid;grid-template-columns:minmax(0,1fr) 170px 190px 44px;grid-template-areas:"desc cat amt del";gap:8px;align-items:start;margin-bottom:8px}.split-intro{margin-bottom:12px}.split-row-title{display:none;grid-area:title}.split-f-desc{grid-area:desc}.split-f-cat{grid-area:cat}.split-f-amt{grid-area:amt}.split-row .sp-del{grid-area:del}.split-field{display:flex;flex-direction:column;gap:4px;min-width:0}.split-lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.split-row input,.split-row select{min-height:44px;box-sizing:border-box}.split-row .chip-btn{min-width:44px;min-height:44px;font-size:11px}.split-amt-wrap{display:flex;gap:8px;align-items:center;min-width:0}.split-amt-wrap .sp-amt{flex:1;min-width:0;text-align:right}.split-amt-wrap .sp-sign{flex:none;white-space:nowrap}.split-note{min-height:1em;font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--text-2);text-align:right}.split-note:empty{min-height:0}.split-note--err{color:var(--negative);text-align:left}.split-row .sp-amt[aria-invalid=true]{border-color:var(--negative);outline-color:var(--negative)}.split-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.split-actions .cyber-btn-sm{min-height:44px}.split-summary{margin-top:12px;display:flex;flex-direction:column;gap:4px;font-family:IBM Plex Mono,monospace;font-size:12px}.split-remaining{font-size:14px}.split-remaining strong{font-weight:600}.split-totals,.split-help{color:var(--text-2);font-size:11px}@media(max-width:620px){.split-row{grid-template-columns:minmax(0,1fr) 44px;grid-template-areas:"title del" "desc desc" "cat cat" "amt amt";padding:10px;border:1px solid var(--border);border-radius:4px;background:var(--bg-3)}.split-row-title{display:block;align-self:center;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2)}.split-lbl{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2)}}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.stat-strip.cols-3{grid-template-columns:repeat(3,1fr)}.stat-strip .card{padding:14px}.stat-strip .stat-label{font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:500;letter-spacing:.18em;color:var(--text-muted);text-transform:uppercase}.stat-strip .stat-val{font-family:IBM Plex Mono,monospace;font-size:20px;font-weight:500;color:var(--cream);margin-top:6px;letter-spacing:-.01em}.stat-strip .stat-val.positive{color:var(--positive)}.stat-strip .stat-val.negative{color:var(--negative)}@media(max-width:900px){.stat-strip{grid-template-columns:repeat(2,1fr)}}.link{color:var(--platinum);cursor:pointer;text-decoration:none}.link:hover{color:var(--platinum);text-decoration:underline}.inline-select{background:transparent;border:1px solid transparent;color:var(--text-2);font-family:Inter,sans-serif;font-size:12px;padding:2px 6px;cursor:pointer;outline:none;border-radius:2px;transition:border-color .15s,color .15s,background .15s}.inline-select:hover,.inline-select:focus{color:var(--cream);border-color:var(--crimson-rim);background:var(--bg-3)}.inline-select option{background:var(--bg-2);color:var(--cream)}.tax-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-4)}@media(max-width:960px){.tax-two-col{grid-template-columns:1fr}}.tax-stat .amt-pos,.tax-row .amt-pos,.tax-total .amt-pos,.tax-card .amt-pos,.mo-td-num.amt-pos,.money-panel .amt-pos{color:var(--color-positive)}.tax-stat .amt-neg,.tax-row .amt-neg,.tax-total .amt-neg,.tax-card .amt-neg,.mo-td-num.amt-neg,.money-panel .amt-neg{color:var(--color-negative)}.tax-muted{color:var(--color-money-neutral)}.tax-year-control{min-width:0}.tax-year-control .cyber-select{min-width:110px;text-align:center}.tax-year-lbl{color:var(--color-text-muted);font-family:var(--font-body);font-size:11px;letter-spacing:.08em;padding-left:var(--space-2)}.tax-input-card{background:var(--surface)}.tax-input-card>label,.tax-group>label{display:block}.tax-group{margin:0}.tax-group h3{margin:0;color:var(--color-text-primary);font-family:var(--font-display);font-size:17px;font-weight:520}.tax-section-label,.tax-card-lbl{display:block;margin-bottom:var(--space-3);color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase}.tax-row,.tax-total{display:flex;justify-content:space-between;gap:var(--space-3);align-items:baseline;padding:var(--space-1) 0;font-size:12px}.tax-row-lbl,.tax-total>span:first-child{color:var(--color-text-secondary);font-family:var(--font-body);position:relative}.tax-row-val{color:var(--color-text-primary);font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.tax-total{border-top:1px solid var(--color-border-subtle);margin-top:var(--space-2);padding-top:var(--space-2);font-weight:600;color:var(--color-text-primary)}.tax-total>span:last-child{font-family:var(--font-mono)}.tax-card-foot{margin-top:var(--space-2);color:var(--color-text-muted);font-family:var(--font-body);font-size:12px;line-height:1.45}.tax-card-actions{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-2)}.tax-scope{display:grid;gap:var(--space-2);color:var(--color-text-secondary);font-family:var(--font-body);font-size:12px;line-height:1.55}.tax-banner-err{margin-bottom:var(--space-3);padding:var(--space-3) var(--space-3);border:1px solid var(--color-negative);border-radius:var(--radius-md);background:var(--color-negative-soft);color:var(--color-negative);font-family:var(--font-body);font-size:12px;line-height:1.5}.tax-sticky-strip,.tax-mobile-strip{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);position:sticky;top:var(--topnav-offset, 56px);z-index:3;margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-raised)}.tax-sticky-strip span{display:grid;gap:2px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.1em}.tax-sticky-strip strong{color:var(--color-text-primary);font-family:var(--font-mono);font-size:13px;font-variant-numeric:tabular-nums}.tax-inputs-col,.tax-results-col{display:grid;gap:var(--space-3);align-content:start}@media(min-width:961px){.tax-results-col{position:sticky;top:calc(var(--topnav-offset, 56px) + var(--space-4))}}.tax-brackets-wrap{margin-top:var(--space-4)}.tax-brackets-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-3)}.tax-brackets-src{color:var(--color-text-muted);font-family:var(--font-body);font-size:11px}.tax-brackets-src .link{color:var(--color-text-secondary);text-decoration:underline}.tax-input-field.tax-input-invalid,.mo-input.mo-input-invalid{border-color:var(--color-negative)}.tax-input-field.tax-input-invalid:focus,.mo-input.mo-input-invalid:focus{border-color:var(--color-negative);box-shadow:0 0 0 1px var(--color-negative-soft)}.tax-input-error{display:block;margin-top:3px;color:var(--color-negative);font-family:var(--font-body);font-size:11px}.tax-input-lbl{display:block;margin-top:var(--space-3);margin-bottom:3px;color:var(--color-text-secondary);font-family:var(--font-body);font-size:12px}.tax-input-field{display:block;width:100%;padding:7px 9px;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--color-text-primary);font-family:var(--font-mono);font-size:12px;box-sizing:border-box;transition:border-color .15s}.tax-input-field:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent-ring)}.tax-input-field::-webkit-outer-spin-button,.tax-input-field::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tax-input-field[type=number]{-moz-appearance:textfield}.tax-input-field.linked,.tax-input-field:disabled{cursor:not-allowed;background:var(--color-bg-subtle);border-color:var(--color-border-subtle);color:var(--color-text-secondary);opacity:1}.tax-link-hint{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border-left:2px solid var(--color-border-default);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-family:var(--font-body);font-size:12px;line-height:1.5}[data-tax-schedule-c] [data-tax-pull-business]{margin-top:var(--space-3)}[data-tax-schedule-c] [data-tax-pull-business]:disabled{opacity:.45;cursor:not-allowed}[data-tax-schedule-c] [data-tax-pull-business][aria-busy=true]{cursor:progress;opacity:.8}.tax-input-lbl [data-tax-from-business]{margin-left:6px;vertical-align:middle}.tax-link-hint b{color:var(--color-text-primary);font-weight:550}.tax-link-hint--warn{border-left-color:var(--color-warning)}.tax-biz-status{display:grid;gap:2px;margin-top:var(--space-3);color:var(--color-text-secondary);font-size:12px;line-height:1.5}.tax-biz-status[hidden],.money-status[hidden]{display:none}.tax-biz-status p{margin:0}.tax-pulled-at{color:var(--color-text-secondary);font-size:12px;font-weight:400}[data-tax-schedule-c-refresh]{margin-left:8px}.sch-c-pull{display:grid;gap:var(--space-3)}.sch-c-pull-window,.sch-c-pull-note,.sch-c-pull-links{margin:0;color:var(--color-text-secondary);font-size:12px;line-height:1.5}.sch-c-pull-kicker{margin:0 0 6px;color:var(--color-text-muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:550}.sch-c-pull-block{display:grid;gap:4px}.sch-c-pull-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3);font-size:13px;font-variant-numeric:tabular-nums}.sch-c-pull-row>span:last-child{text-align:right;min-width:6.5em}.sch-c-pull-row--subtract{color:var(--color-text-secondary)}.sch-c-pull-row--total{margin-top:4px;padding:8px var(--space-3);border:1px solid var(--color-border-subtle);background:var(--color-bg-subtle);font-weight:600;color:var(--color-text-primary)}.sch-c-pull-unmapped{color:var(--color-text-secondary);font-weight:400}.sch-c-pull-source,.biz-line-source{display:inline-block;margin-left:6px;padding:1px 6px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:10px;letter-spacing:.04em;text-transform:uppercase}.sch-c-pull-other{display:grid;gap:4px}.sch-c-pull-other>summary{cursor:pointer;list-style:none;align-items:center}.sch-c-pull-other>summary::-webkit-details-marker{display:none}.sch-c-pull-other>summary:before{content:"";width:0;height:0;margin-right:6px;border-left:5px solid var(--color-text-muted);border-top:4px solid transparent;border-bottom:4px solid transparent}.sch-c-pull-other[open]>summary:before{border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--color-text-muted);border-bottom:0}.sch-c-pull-other>.sch-c-pull-row{padding-left:14px;color:var(--color-text-secondary)}.sch-c-pull-compare{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.sch-c-pull-compare-card{display:grid;gap:4px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-subtle);background:var(--color-bg-subtle);font-size:12px;line-height:1.45}.sch-c-pull-compare-card p{margin:0;color:var(--color-text-secondary)}.sch-c-pull-compare-amt{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;color:var(--color-text-primary);font-variant-numeric:tabular-nums}.sch-c-pull-compare-arrow{color:var(--color-text-muted)}.modal.sch-c-pull-modal{display:flex;flex-direction:column;overflow:hidden;max-height:calc(100vh - 40px)}.modal.sch-c-pull-modal h2,.modal.sch-c-pull-modal .modal-error{flex-shrink:0}.modal.sch-c-pull-modal .modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding-bottom:var(--space-3)}.modal.sch-c-pull-modal .modal-actions{flex:0 0 auto;margin-top:0;background:var(--surface)}.modal.sch-c-pull-modal .modal-actions button:first-child{margin-right:auto;background:transparent;box-shadow:none;color:var(--color-text-secondary);border-color:transparent}.modal.sch-c-pull-modal .modal-actions button:first-child:hover{color:var(--color-text-primary);border-color:var(--color-border-default);background:var(--color-bg-subtle)}@media(max-width:520px){.sch-c-pull-compare{grid-template-columns:1fr}.sch-c-pull-compare-amt{flex-direction:column}}@media(max-width:620px){.modal.sch-c-pull-modal{max-height:calc(100vh - 24px)}.modal.sch-c-pull-modal .modal-actions{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:10px;justify-content:stretch}.modal.sch-c-pull-modal .modal-actions button{width:100%;min-height:44px}.modal.sch-c-pull-modal .modal-actions button:first-child{order:3;margin-right:0;margin-top:4px;padding-top:10px;border-top:1px solid var(--color-border-subtle);border-radius:0}}.tax-link-hint a,.sch-c-pull a{color:var(--color-accent)}.carry-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin:var(--space-1) 0 var(--space-3);flex-wrap:wrap}.carry-toggle-label{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-family:var(--font-body);font-size:12px}.tax-group>summary{display:flex;justify-content:space-between;align-items:start;gap:var(--space-3);cursor:pointer;list-style:none}.tax-group>summary::-webkit-details-marker{display:none}.tax-group-sum{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:11px;text-align:right}.tx-yearly-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:var(--space-3);margin-bottom:var(--space-4)}.tx-split-switch,.tx-student-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.tx-spouse-name{min-width:8rem}.tx-save-group{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-left:auto}.tx-split-row{display:grid;grid-template-columns:minmax(0,1.1fr) repeat(3,minmax(0,1fr));gap:var(--space-2);align-items:end;margin:var(--space-2) 0}@media(max-width:720px){.tx-split-row{grid-template-columns:minmax(0,1fr)}.tx-split-row>.tax-input-lbl{grid-column:1 / -1}}.tx-split-row>label{min-width:0;overflow-wrap:anywhere}.tx-split-row>label:last-child{border-top:1px solid var(--color-border);padding-top:var(--space-2)}.tx-lock-wrap{position:relative;display:block;flex:1 1 auto}.tx-lock-row{display:flex;align-items:flex-end;gap:var(--space-2)}.tx-owner-note{flex:1 1 100%;margin:0;max-width:52rem}.tx-save-time{margin:0}.tx-juris{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:10px;margin:var(--space-3) 0 0}.tx-juris-note{margin:var(--space-2) 0 var(--space-3);max-width:52rem;color:var(--color-text-secondary)}.tx-lock-tip{position:absolute;left:0;bottom:calc(100% + 6px);z-index:3;max-width:16rem;padding:6px 8px;color:var(--color-text-primary);font-size:12px;line-height:1.4;background:var(--surface);border:1px solid var(--color-border-subtle);box-shadow:0 8px 24px #0000003d;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease}.tx-lock-wrap:hover .tx-lock-tip,.tx-lock-wrap:focus-within .tx-lock-tip{opacity:1;transform:none}.tax-care-zero{color:var(--color-text-secondary)}.tax-deem-overlap{font-size:12px;color:var(--color-text-secondary);margin:2px 0 8px;line-height:1.45;max-width:52rem}.tax-deem-pub{display:inline;color:var(--color-text-secondary);text-decoration:none;margin-left:4px}.tax-deem-pub:hover,.tax-deem-pub:focus-visible{color:var(--color-text-primary);text-decoration:underline}.tax-group>summary+*{margin-top:var(--space-3)}.tax-bracket-bar{position:relative;display:flex;height:8px;margin:var(--space-2) 0;overflow:hidden;border-radius:2px;background:var(--color-bg-emphasis)}.tax-bracket-seg{display:block;height:100%;background:var(--color-bg-emphasis);box-shadow:inset -1px 0 0 var(--color-bg-canvas)}.tax-bracket-seg.is-filled{background:var(--color-accent)}.tax-bracket-marker{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--color-text-primary)}.tax-quarter-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-3)}@media(max-width:480px){.tax-quarter-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.tax-quarter{display:grid;gap:6px;min-width:0;padding:var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-raised)}.tax-quarter-lbl{color:var(--color-text-secondary);font-family:var(--font-body);font-size:11px}.tax-quarter-amt{color:var(--color-text-primary);font-family:var(--font-mono);font-size:14px;font-variant-numeric:tabular-nums}.tax-quarter-missed{color:var(--negative)}.tax-quarter-paid{justify-self:start;cursor:pointer}@keyframes taxReveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.tax-reveal{animation:taxReveal .38s cubic-bezier(.22,1,.36,1) both}.tax-reveal.tax-reveal-d1{animation-delay:.06s}.tax-reveal.tax-reveal-d2{animation-delay:.12s}@media(prefers-reduced-motion:reduce){.tax-reveal{animation:none}}.carry-ledger-modal-body .cl-toolbar{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.carry-ledger-modal-body .cl-table-wrap{max-height:420px;overflow-y:auto;border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.carry-ledger-modal-body .cl-table{width:100%;border-collapse:collapse;font-size:12px}.carry-ledger-modal-body .cl-table thead th{position:sticky;top:0;z-index:1;padding:var(--space-2);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-raised);color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;font-weight:500;letter-spacing:.08em;text-align:right;text-transform:uppercase}.carry-ledger-modal-body .cl-table thead th:first-child,.carry-ledger-modal-body .cl-table thead .cl-th-grp{text-align:left}.carry-ledger-modal-body .cl-th-grp{border-bottom:0}.carry-ledger-modal-body .cl-table tbody td{padding:5px 6px;border-bottom:1px solid var(--color-border-subtle);vertical-align:middle;text-align:right}.carry-ledger-modal-body .cl-table tbody td:first-child{text-align:left}.carry-ledger-modal-body .cl-cell{width:100%;padding:4px 6px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-bg-subtle);color:var(--color-text-primary);font-family:var(--font-mono);font-size:12px;box-sizing:border-box}.carry-ledger-modal-body .cl-cell:focus{outline:none;border-color:var(--color-accent)}.carry-ledger-modal-body .cl-cell::-webkit-outer-spin-button,.carry-ledger-modal-body .cl-cell::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.carry-ledger-modal-body .cl-cell[type=number]{-moz-appearance:textfield}.carry-ledger-modal-body .cl-year{max-width:70px}.carry-ledger-modal-body .cl-closing{color:var(--color-text-primary);font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.carry-ledger-modal-body .cl-chk{width:14px;height:14px;margin:0;accent-color:var(--color-accent);cursor:pointer}.carry-ledger-modal-body .cl-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--color-border-subtle)}.carry-ledger-modal-body .cl-cite{color:var(--color-text-muted);font-size:11px}.carry-ledger-modal-body .cl-running{display:grid;gap:4px}.carry-ledger-modal-body .cl-running span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.1em}.carry-ledger-modal-body .cl-running strong{color:var(--color-text-primary);font-family:var(--font-mono);font-size:13px}.mo-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-raised)}.mo-toolbar-note{color:var(--color-text-muted);font-family:var(--font-body);font-size:12px}.mo-sync-toggle{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-secondary);font-family:var(--font-body);font-size:12px;user-select:none}.mo-subtabs{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-3);padding:0 0 var(--space-3)}.mo-tools{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap}.mo-tools .chip-btn.active{border-color:var(--color-border-default);background:var(--color-bg-emphasis);color:var(--color-text-primary)}.mo-span,.mo-quarters,.mo-move{display:inline-flex;align-items:center;gap:var(--space-1)}.mo-span,.mo-quarters{margin-right:var(--space-2)}.mo-move{margin-right:4px;vertical-align:middle}.mo-nudge{min-width:32px;min-height:32px;padding:0;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:11px;line-height:1;cursor:pointer}@media(hover:hover)and (pointer:fine){.mo-nudge:hover{color:var(--color-text-primary);border-color:var(--color-border-default)}}.mo-nudge:focus-visible{outline:var(--focus-ring);outline-offset:2px}.mo-subtabs-label{margin-right:var(--space-1);color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.12em}.mo-subtabs-div{width:1px;height:16px;margin:0 var(--space-1);background:var(--color-border-default);flex-shrink:0}.mo-wrap{overflow-x:auto;overflow-y:visible;border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);contain:layout paint}.mo-wrap::-webkit-scrollbar{height:10px}.mo-wrap::-webkit-scrollbar-track{background:var(--color-bg-raised);border-radius:0 0 var(--radius-md) var(--radius-md)}.mo-wrap::-webkit-scrollbar-thumb{background:var(--color-text-secondary);border-radius:var(--radius-md);border:2px solid var(--color-bg-raised)}.mo-wrap::-webkit-scrollbar-thumb:hover{background:var(--color-text-primary)}.mo-wrap{scrollbar-width:thick;scrollbar-color:var(--color-text-secondary) var(--color-bg-raised)}.mo-table{border-collapse:collapse;min-width:100%}.mo-th-cat{position:sticky;left:0;z-index:4;min-width:300px;width:300px;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-raised);color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;font-weight:400;letter-spacing:.12em;text-align:left}.mo-th-grp{min-width:110px;padding:6px var(--space-3);border-bottom:1px solid var(--color-border-subtle);border-left:1px solid var(--color-border-subtle);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.12em;text-align:center}.mo-th-sub{min-width:90px;padding:5px var(--space-2);border-bottom:1px solid var(--color-border-default);color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;font-weight:400;letter-spacing:.08em;text-align:right;white-space:nowrap}.mo-inp-hdr{min-width:90px}.mo-hdr-1 th,.mo-hdr-2 th{background:var(--color-bg-raised)}.mo-section-hdr .mo-td-full{padding:9px var(--space-3) 3px;border-top:1px solid var(--color-border-subtle);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.16em;cursor:default}.mo-collapse-btn{background:none;border:none;cursor:pointer;color:var(--color-text-secondary);font-size:10px;padding:0 6px 0 0;vertical-align:middle;line-height:1}.mo-collapse-btn:hover{color:var(--color-text-primary)}.mo-collapse-btn:focus-visible{outline:var(--focus-ring);outline-offset:2px}.mo-subtotal-collapsed td{border-bottom:1px solid var(--color-border-subtle)}.mo-td-full{padding:3px var(--space-3)}.mo-td-cat{position:sticky;left:0;z-index:2;min-width:300px;width:300px;padding:3px 6px 3px var(--space-2);background:var(--color-bg-raised);color:var(--color-text-secondary);font-family:var(--font-body);font-size:12px;white-space:nowrap}.mo-row:hover .mo-td-num,.mo-row:hover .mo-cell{background:var(--color-bg-subtle)}.mo-row:hover .mo-td-cat{background:var(--color-bg-raised)}.mo-lbl-txt{vertical-align:middle}.mo-td-num{min-width:90px;padding:3px var(--space-3);color:var(--color-text-primary);font-family:var(--font-mono);font-size:11px;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.mo-cell{min-width:90px;padding:2px 3px}.mo-input{width:100%;min-width:80px;padding:3px 7px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-bg-raised);color:var(--color-text-primary);font-family:var(--font-mono);font-size:11px;text-align:right;box-sizing:border-box;transition:border-color .15s}.mo-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent-ring);background:var(--color-bg-raised)}.mo-input::-webkit-outer-spin-button,.mo-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.mo-input[type=number]{-moz-appearance:textfield}.mo-cell-actual{background:var(--color-accent-soft)}.mo-inp-actual{background:var(--color-bg-raised);border-color:var(--color-accent-ring)}.mo-edit-btn{background:none;border:none;cursor:pointer;color:var(--color-text-secondary);font-size:12px;padding:0 5px 0 0;vertical-align:middle;line-height:1}.mo-edit-btn:hover{color:var(--color-accent)}.mo-edit-btn:focus-visible{outline:var(--focus-ring);outline-offset:2px;color:var(--color-accent)}.mo-del-row-btn{background:none;border:none;cursor:pointer;color:var(--color-negative);font-size:13px;padding:0 0 0 4px;vertical-align:middle;opacity:0;transition:opacity .15s;line-height:1}.mo-row:hover .mo-del-row-btn,.mo-del-row-btn:focus-visible{opacity:1}.mo-del-row-btn:focus-visible{outline:var(--focus-ring);outline-offset:2px}.mo-edit-input{width:150px;padding:2px 6px;border:1px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-bg-raised);color:var(--color-text-primary);font-family:var(--font-mono);font-size:11px}.mo-td-add{padding:4px var(--space-2)}.mo-add-btn{padding:3px var(--space-3);border:1px dashed var(--color-border-default);border-radius:var(--radius-sm);background:none;color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;cursor:pointer}.mo-add-btn:hover{color:var(--color-text-secondary);border-color:var(--color-border-strong)}.mo-subtotal .mo-td-cat-sub,.mo-subtotal .mo-td-num{padding:5px var(--space-3);border-top:1px solid var(--color-border-subtle);background:var(--color-bg-subtle);color:var(--color-text-primary);font-family:var(--font-mono);font-size:11px;font-weight:600}.mo-subtotal .mo-td-cat-sub{position:sticky;left:0;z-index:2;background:var(--color-bg-raised)}.mo-grand-sep td{padding:0;height:1px;background:var(--color-border-default)}.mo-grand-total .mo-td-cat-sub,.mo-grand-total .mo-td-num{padding:6px var(--space-3);background:var(--color-bg-subtle);color:var(--color-text-primary);font-family:var(--font-mono);font-size:12px;font-weight:600}.mo-grand-total .mo-td-cat-sub{position:sticky;left:0;z-index:2;background:var(--color-bg-raised)}.mo-net-total .mo-td-cat-sub,.mo-net-total .mo-td-num{padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-border-default);background:var(--color-bg-emphasis);color:var(--color-text-primary);font-family:var(--font-display);font-size:16px;font-weight:700}.mo-net-total .mo-td-cat-sub{position:sticky;left:0;z-index:2;background:var(--color-bg-raised);font-family:var(--font-body);font-size:12px}.mo-net-total .mo-td-num{font-variant-numeric:tabular-nums}.mo-sec-progress{margin-top:4px}.mo-drag-handle{display:inline-block;padding:0 5px 0 0;color:var(--color-text-muted);font-size:12px;line-height:1;vertical-align:middle;cursor:grab;opacity:.45;user-select:none}.mo-drag-handle:focus-visible{opacity:1}@media(hover:hover)and (pointer:fine){.mo-row:hover .mo-drag-handle{opacity:1}.mo-drag-handle:hover{color:var(--color-text-primary)}}.mo-drag-handle:focus-visible{outline:var(--focus-ring);outline-offset:2px}.mo-row-dragging>td{opacity:.4}.mo-row.mo-drop-before>td{box-shadow:inset 0 2px 0 var(--color-accent)}.mo-row.mo-drop-after>td{box-shadow:inset 0 -2px 0 var(--color-accent)}.mo-inp-derived{cursor:default;border-color:transparent;background:transparent;color:var(--color-text-secondary)}.mo-pc{margin-bottom:var(--space-3)}.mo-pc-add{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3)}.mo-pc-add label{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1 1 10rem}.mo-pc-add input,.mo-pc-add select{width:100%;min-width:0;max-width:100%}.mo-pc-error{margin:var(--space-2) 0 0}.mo-pc-cards{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-3)}.mo-pc-card{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 12px;border:1px solid var(--color-border-subtle);border-radius:16px}.mo-pc-sumrow{display:flex;flex:1 1 220px;align-items:baseline;gap:8px 16px;min-width:0;min-height:44px;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.mo-pc-sumrow:focus-visible{outline:var(--focus-ring);outline-offset:2px}.mo-pc-when{font-family:var(--font-display);font-size:20px;font-weight:600;line-height:1}.mo-pc-period,.mo-pc-who{color:var(--color-text-muted);font-size:13px}.mo-pc-total{margin-left:auto;font-family:var(--font-mono);font-size:14px}.mo-pc-total-k{margin-right:6px;color:var(--color-text-muted);font-family:var(--font-body);font-size:12px}.mo-pc-flag{flex-basis:100%;margin:0}.mo-pc-field{display:flex;flex-direction:column;gap:4px;min-width:0}.mo-pc-k{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.mo-pc-del{align-self:flex-end;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;padding:0 12px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-family:var(--font-body);font-size:13px;line-height:1;cursor:pointer}.mo-pc-del:focus-visible{outline:var(--focus-ring);outline-offset:2px}.mo-pc-amt{width:100%;min-width:0;text-align:right;font-family:var(--font-mono)}.mo-pc-flag{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:12px}.mo-pc-card.is-offyear input,.mo-pc-card.is-offyear select,.mo-pc-card.is-excluded input,.mo-pc-card.is-excluded select{opacity:.6}.mo-pc-empty{margin-top:var(--space-3)}.mo-sec-note{margin-left:var(--space-2);color:var(--color-text-muted);font-weight:400;letter-spacing:.04em;text-transform:none}.mo-hide-btn{margin-left:var(--space-2);padding:0;border:0;background:none;color:var(--color-text-muted);font:inherit;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}@media(hover:hover)and (pointer:fine){.mo-hide-btn:hover{color:var(--color-text-primary)}}.mo-hide-btn:focus-visible{outline:var(--focus-ring);outline-offset:2px}.mo-mode-host{margin-bottom:var(--space-3)}.mo-sec-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-3) 0}.mo-sec-line{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:44px;border-top:1px solid var(--color-border-subtle)}.mo-sec-name{display:block}.mo-sec-plan{display:block;color:var(--color-text-muted);font-size:12px}@media(min-width:720px){.mo-pc-del{margin-bottom:1px;padding:0}.mo-pc-del-txt{display:none}}@media(max-width:719px){.mo-pc-add{flex-direction:column;align-items:stretch}.mo-pc-add label{width:100%;flex:0 0 auto}}.mo-shell{display:flex;flex-direction:column;gap:var(--space-4)}.mo-slot-span{order:1}.mo-slot-mode{order:2}.mo-slot-table{order:3}.mo-slot-summary{order:4}.mo-slot-sync{order:5}.mo-slot-phone{display:none}.mo-phone-nav{display:flex;align-items:center;justify-content:space-between;gap:8px}.mo-phone-name{min-width:0;text-align:center}.mo-phone-title{margin:0;font-family:var(--font-display);font-size:40px;font-weight:600;line-height:1;letter-spacing:-.03em}.mo-phone-phase{margin:8px 0 0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.16em}.mo-phone-step{width:44px;height:44px;flex:none;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:transparent;color:var(--color-text-primary);font-size:22px;line-height:1;cursor:pointer}.mo-phone-step:disabled{opacity:.3;cursor:default}.mo-phone-step:focus-visible,.mo-phone-months button:focus-visible,.mo-phone-grid-btn:focus-visible,.mo-card header button:focus-visible{outline:var(--focus-ring);outline-offset:2px}.mo-phone-months{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin-top:16px}.mo-phone-months button{height:44px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:12px;cursor:pointer}.mo-phone-months button.is-on{background:var(--color-accent);color:var(--color-bg-canvas)}.mo-phone-signals{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.mo-sig{padding:12px 14px;border:1px solid var(--color-border-subtle);border-radius:16px;background:var(--color-bg-raised)}.mo-sig span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;letter-spacing:.14em}.mo-sig strong{display:block;margin-top:4px;font-family:var(--font-display);font-size:22px;font-weight:600}.mo-sig small{display:block;margin-top:2px;color:var(--color-text-muted);font-size:12px}.mo-phone-grid-btn{min-height:44px;margin-top:8px;padding:0;border:0;background:none;color:var(--color-accent-strong);font:inherit;cursor:pointer}.mo-card{margin-top:12px;padding:16px;border:1px solid var(--color-border-subtle);border-radius:16px;background:var(--color-bg-raised)}.mo-card header{display:flex;align-items:center;justify-content:space-between;gap:12px}.mo-card h3{margin:0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.16em}.mo-card header button{min-height:44px;padding:0;border:0;background:none;color:var(--color-text-secondary);font:inherit;cursor:pointer}.mo-phone-row{padding:12px 0 0;border-top:1px solid var(--color-border-subtle)}.mo-phone-row p{margin:12px 0 8px}.mo-phone-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mo-phone-field{display:flex;flex-direction:column;gap:4px;min-width:0}.mo-phone-field span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.mo-phone-field input{height:44px;font-size:16px}.mo-th-grp.is-now{color:var(--color-accent-strong)}.mo-th-grp.is-now .mo-th-name{color:var(--color-bg-canvas);background:var(--color-accent)}.mo-th-name,.mo-th-phase{display:block}.mo-th-name{font-family:var(--font-display);font-size:16px;font-weight:600;line-height:1}.mo-th-phase{margin-top:4px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.12em}.mo-th-grp.is-now .mo-th-name{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:28px;padding:0 8px;border-radius:8px}.mo-th-grp.is-now .mo-th-phase{color:var(--color-accent-strong)}.mo-board-top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}.mo-board-title{margin:0;font-family:var(--font-display);font-size:48px;font-weight:600;line-height:1;letter-spacing:-.03em}.mo-board-sub{margin:8px 0 0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:12px;letter-spacing:.14em}.mo-board-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.mo-board .mo-span{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:0;padding:4px;border:1px solid var(--color-border-default);border-radius:12px;background:var(--color-bg-raised)}.mo-board .mo-span .chip-btn{height:36px;border:0;border-radius:8px;background:transparent;color:var(--color-text-secondary);font-family:var(--font-body);font-size:14px;letter-spacing:0}.mo-board .mo-span .chip-btn.active{border-color:transparent;background:var(--color-bg-emphasis);color:var(--color-text-primary)}.mo-sections-btn{height:44px;padding:0 14px;border:1px solid var(--color-border-default);border-radius:12px;background:transparent;color:var(--color-text-secondary);font:inherit;cursor:pointer}.mo-sections-btn:focus-visible,.mo-q-card:focus-visible,.mo-m-card:focus-visible,.mo-mpill:focus-visible{outline:var(--focus-ring);outline-offset:2px}.mo-q-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.mo-q-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:92px;padding:12px;border:1px solid var(--color-border-subtle);border-radius:16px;background:transparent;color:var(--color-text-primary);text-align:left;cursor:pointer}.mo-q-card.is-on{border-color:var(--color-accent);background:var(--color-bg-subtle, var(--color-bg-raised))}.mo-q-card.is-static{cursor:default}.mo-q-k{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.14em}.mo-q-range{font-size:14px}.mo-q-left{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:12px}.mo-q-left.is-neg,.mo-mini-val .is-neg,.mo-ystat.is-neg{color:var(--color-danger, #e15b64)}.mo-board-note{margin:0;color:var(--color-text-secondary);font-size:14px;line-height:1.5}.mo-m-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mo-m-card{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--color-border-subtle);border-radius:16px;background:var(--color-bg-raised);color:var(--color-text-primary);text-align:left;cursor:pointer}.mo-m-card.is-on{border-color:var(--color-accent)}.mo-m-card-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.mo-m-card-name{font-family:var(--font-display);font-size:32px;font-weight:600;line-height:1}.mo-m-card-phase{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.14em}.mo-mini{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.mo-mini>span:first-child{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.mo-mini-val{text-align:right}.mo-mini-val strong{display:block;font-family:var(--font-mono);font-size:14px;font-weight:500}.mo-mini-val small{display:block;color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px}.mo-year-scroll{overflow-x:auto}.mo-year-board{min-width:920px}.mo-year-pills,.mo-year-stats{display:grid;grid-template-columns:6.5rem repeat(12,minmax(0,1fr))}.mo-mpill{display:flex;height:56px;flex-direction:column;align-items:center;justify-content:center;border:0;border-radius:10px;background:transparent;color:var(--color-text-primary);cursor:pointer}.mo-mpill span{font-family:var(--font-display);font-size:20px;font-weight:600;line-height:1}.mo-mpill small{margin-top:4px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.08em}.mo-mpill.is-on{background:var(--color-accent);color:var(--color-bg-canvas)}.mo-mpill.is-on small{color:var(--color-bg-canvas)}.mo-ystat-label,.mo-ystat{margin:0;padding:8px 2px;border-top:1px solid var(--color-border-subtle)}.mo-ystat-label{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.mo-ystat{overflow:hidden;text-align:center;font-family:var(--font-mono);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.mo-ystat.is-on{background:var(--color-bg-subtle, var(--color-bg-raised))}.mo-mode-host{padding:16px;border:1px solid var(--color-border-subtle);border-radius:16px;background:var(--color-bg-raised)}.mo-mode-host .mo-span{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin:0;padding:4px;border-radius:12px;background:var(--color-bg-canvas)}.mo-mode-host .chip-btn{height:44px;border:0;border-radius:8px;background:transparent;color:var(--color-text-secondary);font-family:var(--font-body);font-size:14px;letter-spacing:0}.mo-mode-host .chip-btn.active{border-color:transparent;background:var(--color-bg-emphasis);color:var(--color-text-primary)}.mo-sec-line input{position:relative;width:44px;height:26px;flex:none;border:0;border-radius:999px;background:#3a3a3e;appearance:none;cursor:pointer}.mo-sec-line input:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff}.mo-sec-line input:checked{background:var(--color-accent)}.mo-sec-line input:checked:after{left:21px}.mo-sec-line input:focus-visible{outline:var(--focus-ring);outline-offset:2px}@media(max-width:800px){.mo-q-grid,.mo-m-cards{grid-template-columns:1fr 1fr}.mo-board-title{font-size:40px}}@media(min-width:900px){.mo-slot-span .chip-btn{min-height:36px;padding:0 14px}}@media(max-width:899px){.mo-slot-span,.mo-slot-table,.mo-slot-summary{display:none}.mo-shell.is-grid .mo-slot-span,.mo-shell.is-grid .mo-slot-table{display:block;order:4}.mo-slot-phone{display:block}[data-mo-phone-head]{order:1}.mo-slot-mode{order:2}[data-mo-phone-rest]{order:3}.mo-slot-sync{order:6}.mo-pc-lead,.mo-pc-status-full{display:none}.mo-mode-host{padding:16px;border:1px solid var(--color-border-subtle);border-radius:16px;background:var(--color-bg-raised)}.mo-mode-host .mo-span{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin:0}.mo-mode-host .chip-btn{min-height:44px}}.mo-shell.is-checks .mo-slot-table,.mo-shell.is-checks [data-mo-phone-rest]{display:none}@media(min-width:900px){.mo-pc-add{display:flex;flex-wrap:wrap;align-items:flex-end}}.tax-mix{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-4);align-items:center}@media(max-width:560px){.tax-mix{grid-template-columns:1fr}}.tx-info-tip{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:5px;padding:0;border:1px solid var(--color-border-default);border-radius:50%;background:transparent;color:var(--color-text-muted);font-family:var(--font-body);font-size:9px;font-style:normal;line-height:1;vertical-align:middle;cursor:help;position:relative;opacity:.45}.tax-row:hover .tx-info-tip,.tax-total:hover .tx-info-tip,.tax-row:focus-within .tx-info-tip,.tax-total:focus-within .tx-info-tip,.tx-info-tip:focus-visible,.tx-info-tip.is-open{opacity:1}.tx-info-tip-wrap{position:relative;display:inline}.tx-info-tip-text{position:absolute;bottom:100%;left:0;min-width:240px;max-width:320px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-raised);color:var(--color-text-secondary);font-family:var(--font-body);font-size:12px;line-height:1.5;z-index:200;white-space:normal;display:none}.tx-info-tip-text:after{content:"";position:absolute;left:0;right:0;top:100%;height:8px}.tx-info-tip-wrap:hover .tx-info-tip-text,.tx-info-tip-wrap:focus-within .tx-info-tip-text,.tx-info-tip-wrap.is-open .tx-info-tip-text,.tx-info-tip:hover+.tx-info-tip-text,.tx-info-tip:focus+.tx-info-tip-text,.tx-info-tip:focus-visible+.tx-info-tip-text,.tx-info-tip.is-open+.tx-info-tip-text{display:block}.tx-info-tip:focus-visible{outline:var(--focus-ring);outline-offset:2px}.tax-workflow-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:-4px 0 20px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:linear-gradient(120deg,rgba(47,134,255,.08),transparent 38%),var(--color-bg-raised);overflow:hidden}.tax-workflow-nav a,.tax-workflow-nav [role=tab]{display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 14px;border:0;border-right:1px solid var(--color-border-default);background:transparent;color:var(--color-text-secondary);font-size:12px;text-decoration:none;cursor:pointer;transition:color .15s ease,background .15s ease}.tax-workflow-nav a:last-child,.tax-workflow-nav [role=tab]:last-child{border-right:0}.tax-workflow-nav a span,.tax-workflow-nav [role=tab] span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.12em}.tax-workflow-nav a:hover,.tax-workflow-nav [role=tab]:hover{color:var(--color-text-primary);background:var(--color-bg-subtle)}.tax-workflow-nav a.active,.tax-workflow-nav [role=tab].active{color:var(--color-text-primary);background:linear-gradient(180deg,var(--color-accent-soft),rgba(47,134,255,.04));box-shadow:inset 0 -2px var(--color-accent)}.tax-workflow-nav a.active span,.tax-workflow-nav [role=tab].active span{color:var(--color-accent-strong)}.tax-workflow-nav a:focus-visible,.tax-workflow-nav [role=tab]:focus-visible{outline:var(--focus-ring);outline-offset:-2px}@media(max-width:720px){.tax-workflow-nav{grid-template-columns:1fr}.tax-workflow-nav a,.tax-workflow-nav [role=tab]{border-right:0;border-bottom:1px solid var(--color-border-default)}.tax-workflow-nav a:last-child,.tax-workflow-nav [role=tab]:last-child{border-bottom:0}}.csv-wizard{max-width:780px;width:90vw}.csv-wiz-header{padding:18px 22px 14px;border-bottom:1px solid rgba(253,246,236,.08)}.csv-wiz-header h2{margin:0 0 12px;font-family:Unbounded,sans-serif;font-size:16px;font-weight:500;letter-spacing:.08em;color:var(--text)}.csv-wiz-steps{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.1em;color:var(--border-2)}.csv-wiz-step{text-transform:uppercase;padding:3px 8px;border-radius:2px}.csv-wiz-step.active{color:var(--platinum);border:1px solid rgba(196,154,60,.4)}.csv-wiz-step.done{color:var(--text-muted)}.csv-wiz-arrow{color:var(--border-2)}.csv-wiz-body{padding:20px 22px;max-height:65vh;overflow-y:auto}.csv-wiz-section{margin-bottom:18px}.csv-wiz-lbl{display:block;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.1em;color:var(--text-muted);text-transform:uppercase;margin-bottom:6px}.csv-wiz-hint{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-muted);margin:6px 0 0;line-height:1.5}.csv-wiz-hint strong{color:var(--text-2)}.csv-wiz-file{background:var(--surface-2);color:var(--text);border:1px solid rgba(253,246,236,.15);padding:8px 10px;font-family:IBM Plex Mono,monospace;font-size:11px;width:100%;border-radius:2px}.csv-wiz-text{background:var(--surface-2);color:var(--text);border:1px solid rgba(253,246,236,.15);padding:6px 10px;font-family:IBM Plex Mono,monospace;font-size:11px;width:100%;border-radius:2px}.csv-wiz-check{display:flex;align-items:center;gap:8px;color:var(--text-2);font-family:IBM Plex Mono,monospace;font-size:12px;text-transform:none;letter-spacing:0}.csv-wiz-check input[type=checkbox]{width:14px;height:14px;accent-color:var(--platinum)}.csv-wiz-table-wrap{overflow-x:auto;border:1px solid rgba(253,246,236,.08);border-radius:2px;background:var(--surface-2)}.csv-wiz-table{width:100%;border-collapse:collapse;font-family:IBM Plex Mono,monospace;font-size:10px}.csv-wiz-table th,.csv-wiz-table td{padding:5px 8px;border-bottom:1px solid rgba(253,246,236,.06);text-align:left;white-space:nowrap}.csv-wiz-table th{background:var(--surface-2);color:var(--text-2);font-size:9px;letter-spacing:.08em;text-transform:uppercase;position:sticky;top:0}.csv-wiz-table td{color:var(--text)}.csv-wiz-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;margin-bottom:16px}.csv-wiz-xform{background:var(--surface-2);border:1px solid rgba(253,246,236,.08);border-radius:2px;font-family:IBM Plex Mono,monospace;font-size:11px}.csv-wiz-xform-summary{padding:6px 10px;border-bottom:1px solid rgba(253,246,236,.08);color:var(--text-muted);letter-spacing:.04em}.csv-wiz-xform-scroll{max-height:340px;overflow:auto}.csv-wiz-xform-table{border-collapse:collapse;font-family:IBM Plex Mono,monospace;font-size:11px;width:max-content;min-width:100%}.csv-wiz-xform-table th,.csv-wiz-xform-table td{padding:5px 10px;border-bottom:1px solid rgba(253,246,236,.06);text-align:left;white-space:nowrap;vertical-align:top}.csv-wiz-xform-table thead th{position:sticky;top:0;background:var(--surface-2);color:var(--platinum);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:9px;z-index:1;border-bottom:1px solid rgba(253,246,236,.15)}.csv-wiz-xform-table td.xf-desc{max-width:320px;overflow:hidden;text-overflow:ellipsis}.csv-wiz-xform-table .xf-derived{color:var(--text)}.csv-wiz-xform-table .xf-raw{color:var(--text-muted);font-size:10px}.csv-wiz-xform-table th.xf-raw{color:var(--text-muted)}.csv-wiz-xform-table .xf-sep{color:var(--border-2);padding:5px 4px;text-align:center;user-select:none}.csv-wiz-xform-table tr.xf-row-bad{background:#cc4a4c14}.csv-wiz-xform-table tr.xf-row-bad td:first-child{color:var(--negative);font-weight:600}.csv-wiz-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}.csv-wiz-stat{background:var(--surface-2);border:1px solid rgba(253,246,236,.1);padding:14px 10px;text-align:center;border-radius:2px}.csv-wiz-stat-n{display:block;font-family:Cormorant Garamond,serif;font-size:28px;color:var(--positive)}.csv-wiz-stat-l{display:block;font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:.14em;color:var(--text-muted);text-transform:uppercase;margin-top:4px}.csv-wiz-errors{background:#cc4a4c14;border:1px solid rgba(204,74,76,.3);padding:10px 14px;margin:14px 0;border-radius:2px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-2)}.csv-wiz-errors strong{color:var(--negative);display:block;margin-bottom:6px}.csv-wiz-errors ul{margin:0;padding-left:18px;line-height:1.6}.csv-wiz-footer{position:sticky;bottom:0;z-index:2;margin:16px -22px -20px;padding:14px 22px;border-top:1px solid rgba(253,246,236,.08);display:flex;justify-content:flex-end;gap:8px;background:var(--surface-2)}.csv-wiz-footer button.disabled{opacity:.4;cursor:not-allowed}.csv-wiz-progress{height:6px;background:var(--surface-2);border:1px solid rgba(253,246,236,.1);border-radius:3px;overflow:hidden;margin:40px 0 14px}.csv-wiz-progress-bar{height:100%;background:linear-gradient(90deg,var(--platinum),var(--platinum));transition:width .2s}.csv-wiz-done{text-align:center;padding:20px 0 30px}.csv-wiz-done-icon{font-size:42px;color:var(--positive);margin-bottom:10px}.csv-wiz-done h3{font-family:Unbounded,sans-serif;font-size:18px;font-weight:500;color:var(--text);margin:0 0 8px;letter-spacing:.06em}.csv-wiz-field{margin-bottom:12px}.csv-wiz-field label{display:block;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.1em;color:var(--text-muted);text-transform:uppercase;margin-bottom:6px}.csv-wiz-field select,.csv-wiz-field input[type=text],.csv-wiz-field input[type=file]{background:var(--surface-2);color:var(--text);border:1px solid rgba(253,246,236,.15);padding:6px 10px;font-family:IBM Plex Mono,monospace;font-size:11px;width:100%;border-radius:2px}.csv-wiz-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin-bottom:14px}.csv-wiz-field .req{color:var(--negative)}.csv-wiz-drop{border:1px dashed rgba(253,246,236,.2);border-radius:2px;padding:22px;text-align:center;background:var(--surface-2);transition:border-color .15s}.csv-wiz-drop.drag{border-color:var(--platinum);background:#c49a3c0d}.csv-wiz-drop p{margin:4px 0;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--text-2)}.csv-wiz-drop .muted{color:var(--text-muted);font-size:11px}.csv-wiz-map h3,.csv-wiz-validate h3,.csv-wiz-import h3{font-family:Unbounded,sans-serif;font-size:13px;font-weight:500;color:var(--text);letter-spacing:.08em;margin:0 0 12px}.csv-wiz-preview-label{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.1em;color:var(--text-muted);text-transform:uppercase;margin:14px 0 6px}.csv-wiz-action-map{background:var(--surface-2);border:1px solid rgba(253,246,236,.08);border-radius:2px;padding:10px 12px;margin:12px 0}.csv-wiz-action-label{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.08em;color:var(--text-2);text-transform:uppercase;margin-bottom:8px}.csv-wiz-action-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px 10px}.csv-wiz-action-row{display:grid;grid-template-columns:1fr 1fr;gap:6px;align-items:center}.csv-wiz-action-raw{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csv-wiz-action-row select{background:var(--surface-2);color:var(--text);border:1px solid rgba(253,246,236,.12);padding:3px 6px;font-family:IBM Plex Mono,monospace;font-size:10px;border-radius:2px}.csv-wiz-xform-meta{padding:6px 10px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-muted);background:var(--surface-2);border:1px solid rgba(253,246,236,.08);border-bottom:0}.csv-wiz-xform-table .xf-muted{color:var(--text-muted)}.csv-wiz-xform-table .xf-note{max-width:220px;overflow:hidden;text-overflow:ellipsis;color:var(--text-muted);font-size:10px}.csv-wiz-xform-table th.xf-raw-sep,.csv-wiz-xform-table td.xf-raw-sep{color:var(--border-2);padding:5px 4px;text-align:center;user-select:none;border-left:1px solid rgba(253,246,236,.08)}.stat-chip{background:var(--surface-2);border:1px solid rgba(253,246,236,.1);padding:12px 10px;text-align:center;border-radius:2px}.stat-chip-val{font-family:Cormorant Garamond,serif;font-size:24px;color:var(--text);line-height:1}.stat-chip-val.positive{color:var(--positive)}.stat-chip-val.negative{color:var(--negative)}.stat-chip-val.muted{color:var(--text-muted)}.stat-chip>div:last-child{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:.12em;color:var(--text-muted);text-transform:uppercase;margin-top:4px}.csv-wiz-errors-list{margin-top:6px}.csv-wiz-error-row{padding:3px 0;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-2)}.csv-wiz-error-row.editable{padding:7px 0;border-bottom:1px solid rgba(204,74,76,.15)}.csv-wiz-error-row.editable:last-child{border-bottom:none}.csv-wiz-error-info{margin-bottom:5px}.csv-wiz-error-edit{display:flex;gap:12px;align-items:center}.csv-wiz-error-edit label{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--text-muted)}.csv-wiz-error-edit input[type=number]{width:110px;background:var(--surface-2);border:1px solid rgba(253,246,236,.15);color:var(--text);font-family:IBM Plex Mono,monospace;font-size:11px;padding:3px 7px;border-radius:2px}.csv-wiz-error-edit input[type=number]:focus{border-color:#c49a3c80;outline:none}.csv-wiz-errors-retry{margin-top:10px;display:flex;justify-content:flex-end}.csv-wiz-import .loading{text-align:center;padding:40px 0;font-family:IBM Plex Mono,monospace;color:var(--text-2);font-size:12px;letter-spacing:.1em}.inv-section-head{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.inv-collapse-btn{background:transparent;border:1px solid var(--border, var(--border-2));color:var(--text-2, var(--text-2));width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-family:IBM Plex Mono,monospace;font-size:11px;cursor:pointer;border-radius:2px;padding:0;transition:color .12s,border-color .12s}.inv-collapse-btn:hover{color:var(--cream, var(--text));border-color:var(--crimson-rim, #2F86FF)}.inv-tx-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:10px;flex-wrap:wrap}.inv-tx-tools{display:flex;gap:6px}.inv-tx-tools .cyber-btn-sm.active,.cyber-btn-sm.active{color:var(--cream);border-color:var(--crimson-rim);background:var(--crimson-dim)}.inv-tx-meta{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-muted);margin:0 0 6px 2px}.inv-tx-table th.sortable{cursor:pointer;user-select:none;transition:color .12s}.inv-tx-table th.sortable:hover,.inv-tx-table th.sorted{color:var(--platinum)}.inv-tx-table th .sort-arrow{font-size:9px;margin-left:3px;opacity:.9}.inv-filter-form,.inv-col-form{display:flex;flex-direction:column;gap:14px;min-width:360px}.inv-filter-group{display:flex;flex-direction:column;gap:6px}.inv-filter-label{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.12em;color:var(--text-muted);text-transform:uppercase}.inv-filter-chips{display:flex;flex-wrap:wrap;gap:6px}.inv-filter-row{display:flex;gap:10px}.inv-filter-row label{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;display:flex;flex-direction:column;gap:4px}.inv-filter-row input[type=date]{background:var(--surface-2);color:var(--text);border:1px solid rgba(253,246,236,.15);padding:6px 10px;font-family:IBM Plex Mono,monospace;font-size:11px;border-radius:2px}.inv-chip{display:inline-flex;align-items:center;gap:6px;background:var(--surface-2);border:1px solid rgba(253,246,236,.12);padding:5px 10px;border-radius:2px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-2);cursor:pointer;transition:border-color .12s,background .12s}.inv-chip:hover{border-color:#c49a3c66}.inv-chip input[type=checkbox]{width:13px;height:13px;accent-color:var(--platinum);cursor:pointer;margin:0}.inv-chip:has(input:checked){border-color:var(--platinum);background:#c49a3c1a;color:var(--text)}.inv-chip.wide{width:100%}.inv-col-list{display:grid;grid-template-columns:1fr 1fr;gap:6px}.inv-toolbar{display:flex;gap:6px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.inv-toolbar .inv-acct-select{font-family:Unbounded,sans-serif;font-size:9px;font-weight:400;letter-spacing:.08em;padding:6px 26px 6px 12px;background:var(--bg-3);color:var(--text-2);border:1px solid var(--border);border-radius:4px;cursor:pointer;text-transform:uppercase;transition:all .15s;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-2) 50%),linear-gradient(135deg,var(--text-2) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 9px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.inv-toolbar .inv-acct-select:hover{border-color:var(--border-2);color:var(--cream);background-color:var(--bg-4)}.inv-toolbar .inv-acct-select:focus{outline:none;border-color:var(--border-2);color:var(--cream);box-shadow:none}.inv-toolbar .inv-acct-select option{background:var(--bg-3);color:var(--cream);font-family:Karla,sans-serif;font-size:12px;letter-spacing:normal;text-transform:none}.acc-sort-select{font-family:Unbounded,sans-serif;font-size:9px;font-weight:400;letter-spacing:.08em;padding:6px 26px 6px 12px;background:var(--bg-3);color:var(--text-2);border:1px solid var(--border);border-radius:4px;cursor:pointer;text-transform:uppercase;transition:all .15s;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-2) 50%),linear-gradient(135deg,var(--text-2) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 9px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.acc-sort-select:hover{border-color:var(--border-2);color:var(--cream);background-color:var(--bg-4)}.acc-sort-select:focus{outline:none;border-color:var(--border-2);color:var(--cream);box-shadow:none}.acc-sort-select option{background:var(--bg-3);color:var(--cream);font-family:Karla,sans-serif;font-size:12px;letter-spacing:normal;text-transform:none}.inv-stats{grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:12px}.inv-stats .card{text-align:center;padding:8px 10px}.inv-stats .stat-label{font-size:9px;letter-spacing:.08em}.inv-stats .stat-val{font-family:Cormorant Garamond,serif;font-size:18px;font-weight:500;color:var(--text);margin-top:2px;line-height:1.2}.inv-stats .muted{margin-top:1px;font-size:9px!important}.inv-stats .tax-link-chip{margin-left:4px;font-size:7px;padding:1px 4px}@media(max-width:1100px){.inv-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.inv-stats{grid-template-columns:repeat(2,1fr)}}.faq-wrap{max-width:880px}.faq-hero{background:var(--surface-2);border:1px solid rgba(253,246,236,.1);border-left:3px solid var(--platinum);padding:18px 22px;border-radius:4px;margin-bottom:20px}.faq-hero-title{font-family:Cormorant Garamond,serif;font-size:26px;font-weight:600;color:var(--text);margin:0 0 6px;letter-spacing:.01em}.faq-hero-sub{font-family:Karla,sans-serif;font-size:13px;color:var(--text-2);margin:0 0 14px;line-height:1.55}.faq-disclaimer{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text);background:#cc1a1c14;border:1px solid rgba(204,26,28,.3);padding:10px 14px;border-radius:3px;line-height:1.6}.faq-disclaimer b{color:var(--negative);letter-spacing:.04em}.faq-section{margin-bottom:26px}.faq-section-title{font-family:Unbounded,sans-serif;font-size:11px;font-weight:500;letter-spacing:.14em;color:var(--platinum);text-transform:uppercase;margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid rgba(196,154,60,.25)}.faq-item{background:var(--surface-2);border:1px solid rgba(253,246,236,.08);border-radius:3px;margin-bottom:6px;transition:border-color .15s}.faq-item[open]{border-color:#c49a3c59}.faq-item:hover{border-color:#fdf6ec2e}.faq-q{font-family:Karla,sans-serif;font-size:13px;font-weight:500;color:var(--text);padding:11px 36px 11px 14px;cursor:pointer;list-style:none;position:relative;line-height:1.4;user-select:none}.faq-q::-webkit-details-marker{display:none}.faq-q:after{content:"+";position:absolute;right:14px;top:50%;transform:translateY(-50%);font-family:IBM Plex Mono,monospace;font-size:16px;color:var(--platinum);transition:transform .15s}.faq-item[open] .faq-q:after{content:"−"}.faq-a{font-family:Karla,sans-serif;font-size:13px;color:var(--text-2);line-height:1.65;padding:4px 14px 14px;border-top:1px solid rgba(253,246,236,.05)}.faq-a b{color:var(--text);font-weight:500}.faq-a code{font-family:IBM Plex Mono,monospace;font-size:11.5px;background:var(--surface-2);color:var(--platinum);padding:1px 5px;border-radius:2px;border:1px solid rgba(196,154,60,.2)}.faq-dot{display:inline-block;width:8px;height:8px;border-radius:50%;vertical-align:middle;margin:0 2px}.faq-dot.current{background:var(--color-positive);box-shadow:0 0 4px #4acc7a80}.faq-dot.recent{background:var(--color-positive);opacity:.55}.faq-dot.stale{background:var(--color-warning)}.faq-dot.old{background:var(--color-text-muted)}.faq-footer{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--text-muted);line-height:1.7;margin-top:18px;padding:10px 14px;border-top:1px solid rgba(253,246,236,.08);letter-spacing:.02em}.inv-table-scroll{overflow-x:auto;contain:paint;border:1px solid rgba(253,246,236,.08)}.inv-table{border-collapse:collapse;font-family:IBM Plex Mono,monospace;font-size:11px;width:100%;min-width:900px}.inv-table thead th,.inv-table tr.inv-colhead th{background:var(--surface-2);color:var(--platinum);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:9px;padding:8px 10px;border-bottom:1px solid rgba(253,246,236,.15);text-align:left;white-space:nowrap}.inv-table tbody td,.inv-table tbody th{padding:8px 10px;border-bottom:1px solid rgba(253,246,236,.05);white-space:nowrap}.inv-table tbody th{font-weight:400;text-align:left}.inv-table tbody tr:hover{background:#fdf6ec05}.inv-table .bal{text-align:right;font-variant-numeric:tabular-nums}.inv-table .muted{color:var(--text-muted)}.inv-table .positive{color:var(--positive)}.inv-table .negative{color:var(--negative)}.inv-sym{font-weight:700;color:var(--text);letter-spacing:.06em}.inv-table-scroll--cards{border:0}.inv-acct-table{border-collapse:separate;border-spacing:0}.inv-table tr.inv-colhead th.bal{text-align:right}.inv-acct-table th.inv-acct-head{padding:0;border:0;font-weight:400}.inv-acct-body+.inv-acct-body th.inv-acct-head{padding-top:var(--space-4)}.inv-acct-banner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:14px 20px;border:1px solid var(--color-border-default);border-bottom:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:radial-gradient(circle at 8% 0%,rgba(47,134,255,.2),transparent 40%),linear-gradient(115deg,rgba(255,255,255,.025),transparent 55%),var(--color-bg-raised);overflow:hidden}.inv-acct-banner:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:linear-gradient(90deg,var(--color-accent),transparent 75%)}.inv-acct-banner--crypto{background:radial-gradient(circle at 8% 0%,rgba(31,230,214,.16),transparent 40%),linear-gradient(115deg,rgba(255,255,255,.025),transparent 55%),var(--color-bg-raised)}.inv-acct-banner--crypto:after{background:linear-gradient(90deg,var(--color-crypto),transparent 75%)}.inv-acct-eyebrow{display:block;margin-bottom:4px;color:var(--color-accent-strong);font-family:var(--font-mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase}.inv-acct-title{color:var(--color-text-primary);font-family:var(--font-display);font-size:22px;font-weight:520;letter-spacing:-.01em}.inv-acct-count{color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.inv-acct-body>tr:not(.inv-acct-headrow)>:first-child{border-left:1px solid var(--color-border-default)}.inv-acct-body>tr:not(.inv-acct-headrow)>:last-child{border-right:1px solid var(--color-border-default)}.inv-acct-body>tr:last-child>*{border-bottom:1px solid var(--color-border-default)}.inv-acct-body>tr:last-child>:first-child{border-bottom-left-radius:var(--radius-lg)}.inv-acct-body>tr:last-child>:last-child{border-bottom-right-radius:var(--radius-lg)}.inv-table-scroll--cards{container-type:inline-size}.inv-table-scroll--cards:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.inv-acct-banner{flex-wrap:wrap;row-gap:10px;position:sticky;left:0;width:100%;width:100cqw;box-sizing:border-box}.inv-acct-id{min-width:0}.inv-acct-totals{display:flex;flex-wrap:wrap;align-items:flex-end;gap:6px 26px;margin:0;padding:0}.inv-acct-stat{display:grid;gap:3px}.inv-acct-stat dt{color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase}.inv-acct-stat dd{margin:0;color:var(--color-text-primary);font-family:var(--font-mono);font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}.inv-acct-stat dd .positive{color:var(--positive)}.inv-acct-stat dd .negative{color:var(--negative)}.inv-acct-partial{padding:1px 6px;border:1px dashed var(--color-border-strong);color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;cursor:help}.inv-acct-side{display:flex;align-items:center;gap:10px;margin-left:auto}.inv-acct-toggle{display:inline-grid;place-items:center;min-width:40px;min-height:40px;padding:0;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm, 4px);background:transparent;color:var(--color-text-primary);font-size:16px;cursor:pointer}.inv-acct-toggle:hover{background:var(--color-accent-soft)}.inv-acct-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.inv-acct-body[data-collapsed=true]>tr:not(.inv-acct-headrow){display:none}.inv-acct-body[data-collapsed=true] .inv-acct-banner{border-bottom:1px solid var(--color-border-default);border-radius:var(--radius-lg)}.inv-acct-table .inv-pos-row>:nth-child(1),.inv-acct-table tr.inv-colhead>:nth-child(1){position:sticky;left:0;z-index:2;box-sizing:border-box;width:40px;min-width:40px;max-width:40px}.inv-acct-table .inv-pos-row>:nth-child(2),.inv-acct-table tr.inv-colhead>:nth-child(2){position:sticky;left:40px;z-index:2}.inv-acct-table .inv-pos-row>:nth-child(1),.inv-acct-table .inv-pos-row>:nth-child(2){background:var(--color-bg-raised)}.inv-acct-table tr.inv-colhead>:nth-child(1),.inv-acct-table tr.inv-colhead>:nth-child(2){background:var(--surface-2)}.inv-lots-title{position:sticky;left:0;width:max-content;max-width:100%;max-width:100cqw}.inv-scroll-wrap{position:relative}.inv-scroll-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;z-index:3;width:32px;background:linear-gradient(to left,var(--bg),transparent);opacity:0;pointer-events:none;transition:opacity .15s}.inv-scroll-wrap[data-more-right=true]:after{opacity:1}.inv-scroll-hint{display:none;margin:6px 0 0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-align:right}@media(max-width:820px){.inv-scroll-wrap[data-scrolls=true] .inv-scroll-hint{display:block}}@media(max-width:720px){.inv-acct-banner{padding:12px 14px}.inv-acct-title{font-size:18px}.inv-acct-totals{gap:6px 18px}}@media(prefers-reduced-motion:reduce){.inv-scroll-wrap:after{transition:none}}.inv-caret{background:none;border:none;color:var(--platinum);cursor:pointer;font-size:14px;padding:0 6px}.inv-caret:hover{color:var(--text)}.inv-lots-row>td{padding:0!important;background:#0c0d1299}.inv-lots-wrap{padding:12px 18px 16px;border-left:2px solid var(--color-accent-ring)}.inv-lots-title{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.15em;color:var(--platinum);margin-bottom:8px}.inv-lots-table{border-collapse:collapse;font-family:IBM Plex Mono,monospace;font-size:10px;width:100%}.inv-lots-table thead th{background:#ffffff0b;color:var(--platinum);font-weight:600;letter-spacing:.08em;font-size:9px;padding:6px 8px;text-align:left;white-space:nowrap}.inv-lots-table tbody td{padding:6px 8px;border-bottom:1px solid rgba(253,246,236,.04);white-space:nowrap}.inv-lots-table .bal{text-align:right;font-variant-numeric:tabular-nums}.inv-lots-table .muted{color:var(--text-muted)}.inv-lots-table .positive{color:var(--positive)}.inv-lots-table .negative{color:var(--negative)}.inv-hold-tag{display:inline-block;padding:2px 7px;font-size:9px;letter-spacing:.08em;border-radius:2px;font-weight:700}.inv-hold-tag.short{background:#e0505026;color:var(--negative);border:1px solid rgba(224,80,80,.3)}.inv-hold-tag.long{background:#4acc7a26;color:var(--positive);border:1px solid rgba(74,204,122,.3)}.inv-hold-tag.mixed{background:#cca64a26;color:var(--platinum);border:1px solid rgba(204,166,74,.3)}.inv-tx-type{display:inline-block;padding:2px 7px;font-size:9px;letter-spacing:.08em;border-radius:2px;font-weight:700;background:#fdf6ec0f;color:var(--text-muted)}.inv-tx-type.buy{background:#4acc7a1f;color:var(--positive)}.inv-tx-type.sell{background:#e050501f;color:var(--negative)}.inv-tx-type.dividend{background:#cca64a26;color:var(--platinum)}.inv-tx-type.swap{background:#4a90cc26;color:var(--silver)}.inv-tx-type.staking_reward{background:#74b4ff26;color:var(--silver-hi)}.inv-tx-type.yield{background:#78c8c826;color:var(--silver)}.inv-crypto-badge{display:inline-block;margin-left:8px;padding:2px 7px;font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:.1em;font-weight:700;border:1px solid var(--crypto-rim);background:var(--crypto-bg);color:var(--crypto);border-radius:2px;vertical-align:middle;text-shadow:0 0 8px var(--crypto-glow);box-shadow:0 0 10px -1px var(--crypto-bg),inset 0 0 8px -4px var(--crypto-glow)}.inv-mini-btn{background:var(--surface-2);color:var(--platinum);border:1px solid var(--color-border-strong);font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:.08em;padding:3px 8px;cursor:pointer;margin-left:4px}.inv-mini-btn:hover:not(:disabled){background:var(--color-accent-soft);color:var(--text)}.inv-mini-btn:disabled{opacity:.3;cursor:not-allowed}.inv-mini-btn.danger{color:var(--negative);border-color:#e0505066}.inv-mini-btn.danger:hover:not(:disabled){background:#e050501a}.inv-form{display:flex;flex-direction:column;gap:10px}.inv-form label{display:flex;flex-direction:column;gap:4px;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase}.inv-form input,.inv-form select{background:var(--surface-2);color:var(--text);border:1px solid rgba(253,246,236,.2);padding:7px 10px;font-family:IBM Plex Mono,monospace;font-size:12px}.inv-form input:focus,.inv-form select:focus{border-color:var(--platinum);outline:none}.inv-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.inv-total-pill{background:#cca64a14;border:1px solid rgba(204,166,74,.25);padding:8px 12px;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--text);text-align:center;letter-spacing:.05em;margin-top:6px}.inv-field{display:flex;flex-direction:column;gap:4px;min-width:0}.inv-field-help{margin:0;color:var(--text-muted);font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.04em;line-height:1.5}.inv-field-help:empty{display:none}.inv-field-help--error{color:var(--negative)}.inv-form input[aria-invalid=true]{border-color:var(--negative)}.mv-dialog p{margin:0}.mv-dialog>div:empty,.inv-form>[data-acct-field]:empty{display:none}.mv-sources{color:var(--text-2);font-size:12px}.mv-blocked{padding:10px 12px;border:1px solid var(--negative);border-left-width:3px;background:var(--negative-bg);color:var(--text-2);font-size:12px;line-height:1.5}.mv-blocked ul{margin:6px 0;padding-left:18px}.mv-preview{display:grid;gap:4px;padding:10px 12px;border:1px solid rgba(253,246,236,.14);background:#fdf6ec08;color:var(--text-2);font-size:12px;line-height:1.5}.inv-specid-block{border-top:1px dashed rgba(253,246,236,.1);padding-top:10px}.inv-specid-label{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.12em;color:var(--platinum);margin-bottom:6px}.inv-specid-input{width:100px;background:var(--surface-2);color:var(--text);border:1px solid rgba(253,246,236,.2);padding:4px 8px;font-family:IBM Plex Mono,monospace;font-size:11px}.inv-preview-block{border-top:1px solid rgba(253,246,236,.1);padding-top:12px;margin-top:6px}.inv-preview-head{display:flex;flex-wrap:wrap;gap:14px 22px;padding:8px 12px;background:#c49a3c0d;border-left:2px solid var(--platinum);margin-bottom:10px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-2)}.inv-preview-head b{color:var(--text)}.inv-form input[type=number]::-webkit-outer-spin-button,.inv-form input[type=number]::-webkit-inner-spin-button,.inv-price-input::-webkit-outer-spin-button,.inv-price-input::-webkit-inner-spin-button,.inv-specid-input::-webkit-outer-spin-button,.inv-specid-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.inv-form input[type=number],.inv-price-input,.inv-specid-input{-moz-appearance:textfield;appearance:textfield}.icon-picker{border:1px solid var(--border);background:var(--bg-3);border-radius:4px;padding:8px}.icon-picker-current{display:flex;align-items:center;gap:10px;padding:4px 6px 8px;border-bottom:1px solid var(--border);margin-bottom:8px}.icon-picker-current-glyph{font-size:22px;line-height:1;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-2);border:1px solid var(--border-2);border-radius:3px}.icon-picker-hint{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:.16em;color:var(--text-muted);text-transform:uppercase}.icon-picker-name{font-size:12px;color:var(--text-2)}.icon-picker-preview{display:flex;align-items:center;gap:10px;padding:6px 8px;margin-bottom:8px;background:var(--bg-2);border:1px solid var(--border);border-radius:3px}.icon-picker-preview-glyph{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px;font-size:18px;border-radius:6px}.icon-picker-preview-glyph svg{width:18px;height:18px}.icon-picker-current-glyph{width:28px;height:28px}.icon-picker-preview-copy{flex:1;font-size:13px;color:var(--text-2);min-width:0}.icon-picker-preview-unsaved{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.icon-picker-preview-amt{font-size:13px;color:var(--negative)}.icon-picker-preview[data-no-color]{border-left-color:var(--border)}.icon-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:4px;max-height:220px;min-height:132px;overflow-y:auto;align-content:start}.icon-picker-cell{position:relative;min-height:44px;background:var(--bg-2);border:1px solid transparent;border-radius:3px;font-size:17px;line-height:1;padding:6px 0;cursor:pointer;transition:background .12s,border-color .12s;color:var(--cream)}.icon-picker-cell:hover{background:var(--bg-4);border-color:var(--border-2)}.icon-picker-cell.selected{background:var(--crimson-dim);border-color:var(--crimson-rim)}.icon-picker-cell.selected:after{content:"✓";position:absolute;top:1px;right:3px;font-size:10px;line-height:1;font-weight:700;color:var(--cream)}.icon-picker-cell:focus-visible,.icon-picker-chip:focus-visible{outline:2px solid var(--cream);outline-offset:1px}.icon-picker-selected{position:sticky;top:0;z-index:1;background:var(--bg-3);margin:-8px -8px 8px;padding:8px 8px 0;border-bottom:1px solid var(--border)}.icon-picker-selected-title{font-family:IBM Plex Mono,monospace;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);padding:0 6px 4px}.icon-picker-custom{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.icon-picker-custom-input{width:80px;text-align:center;font-size:16px;background:var(--bg-2);border:1px solid var(--border-2);color:var(--cream);padding:4px;border-radius:3px}.icon-picker-tabs{display:flex;gap:6px;margin-bottom:8px}.icon-picker-tab{background:var(--bg-2);border:1px solid var(--border-2);color:var(--text-2);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;cursor:pointer;border-radius:3px}.icon-picker-tab.is-active{border-color:var(--crimson-rim);color:var(--cream)}.icon-picker-search,.icon-picker-emoji-search{width:100%;margin:4px 0 8px;background:var(--bg-2);border:1px solid var(--border-2);color:var(--cream);padding:6px 8px}.icon-picker-chips{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.icon-picker-chip{background:var(--bg-2);border:1px solid var(--border-2);color:var(--text-2);font-size:11px;padding:3px 9px;cursor:pointer;border-radius:999px}.icon-picker-chip:hover{border-color:var(--border-2);background:var(--bg-4)}.icon-picker-chip.is-active{border-color:var(--crimson-rim);background:var(--crimson-dim);color:var(--cream)}.icon-picker-lib-cell{display:inline-flex;align-items:center;justify-content:center}.icon-picker-lib-status{font-size:12px;margin:0 0 6px;min-height:1.4em}.icon-picker-lib-label{grid-column:1 / -1;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);padding:4px 0}.horizon-toggle{display:flex;gap:0;border:1px solid var(--border-2);border-radius:4px;overflow:hidden}.horizon-btn{background:transparent;border:none;border-right:1px solid var(--border-2);color:var(--text-muted);cursor:pointer;font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.5px;min-height:24px;min-width:24px;padding:4px 10px;transition:background .15s,color .15s}.horizon-btn:last-child{border-right:none}.horizon-btn:hover{background:var(--bg-4);color:var(--cream)}.horizon-btn.active{background:var(--crimson);color:var(--cream)}.scenario-strip{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;padding:8px 12px;background:var(--bg-3);border:1px solid var(--border);border-radius:6px}.scenario-strip-actions{margin-left:auto;display:flex;gap:6px}.scenario-pill{display:flex;align-items:center;gap:6px;background:var(--bg-4);border:1px solid var(--border-2);border-radius:20px;color:var(--text-2);cursor:pointer;font-family:IBM Plex Mono,monospace;font-size:11px;padding:4px 12px;transition:background-color .15s ease-out,border-color .15s ease-out,color .15s ease-out,transform .15s ease-out;white-space:nowrap}.scenario-pill:active{transform:scale(.97)}.scenario-pill.active{background:var(--crimson);border-color:var(--crimson);color:var(--cream)}@media(hover:hover)and (pointer:fine){.scenario-pill:hover{border-color:var(--crimson-rim);background:var(--crimson-dim);color:var(--cream)}}.scenario-pill-rate{font-size:10px;opacity:.75}.scenario-pill-base{font-size:9px;opacity:.65;text-transform:uppercase;letter-spacing:.4px}.plan-info-panel{min-width:0;display:flex;flex-direction:column;gap:14px;padding:6px 14px 8px 0;border-right:1px solid var(--border)}.plan-info-row .fc-k{margin-bottom:2px}.fc-k{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.04em;color:var(--text-2)}.plan-info-val{font-size:15px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.plan-chart-row{display:grid;grid-template-columns:minmax(140px,186px) minmax(0,1fr) minmax(196px,236px);gap:0;align-items:stretch;margin-bottom:8px;min-width:0}.forecast-gap-banner{font-size:12px;color:var(--text-2);background:var(--bg-4);border:1px solid var(--border-2);border-radius:4px;padding:8px 10px;margin:0 0 10px}.forecast-gap-banner [data-gap-kind]{display:block;padding-inline-start:8px;border-inline-start:3px solid var(--border-3);margin:4px 0}.forecast-gap-banner [data-gap-kind=price_gap]{border-inline-start-color:var(--negative)}.forecast-gap-banner [data-gap-kind=price_fallback]{border-inline-start-color:var(--color-warning, var(--crimson-rim))}.forecast-gap-banner [data-gap-kind=incomplete],.forecast-gap-banner [data-gap-kind=cash_history_floor]{border-inline-start-color:var(--border-3)}.forecast-assumptions{font-size:12px;margin:0 0 10px}.fc-delta-strip{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;padding:0 0 10px;min-width:0}.fc-delta-strip .fc-k{margin-right:4px}.fc-delta-chip,.fc-delta-why{font-size:12px;padding:5px 10px;border-radius:8px;min-height:24px;background:var(--bg-3);border:1px solid var(--border);color:var(--text-2)}.fc-delta-chip{font-family:var(--font-mono);cursor:pointer}.fc-delta-chip:disabled{cursor:default;opacity:.6}.fc-delta-chip:focus-visible{outline:var(--focus-ring);outline-offset:2px}.fc-delta-chip.is-pos b{color:var(--fc-delta-pos)}.fc-delta-chip.is-neg b{color:var(--fc-delta-neg)}.fc-delta-why{min-width:0}.forecast-chart-svg{width:100%;height:auto;aspect-ratio:16 / 10;display:block;outline:none;touch-action:pan-y}.forecast-chart-svg:focus-visible{outline:var(--focus-ring);outline-offset:2px}.forecast-chart-svg .fc-axis,.forecast-delta-svg .fc-axis{fill:var(--fc-axis);stroke:var(--fc-grid);font-size:12.5px;font-weight:600;font-family:var(--font-body)}.forecast-chart-svg .fc-grid,.forecast-delta-svg .fc-grid{stroke:var(--fc-grid)}.forecast-chart-svg .fc-hist{stroke:var(--fc-hist);stroke-width:3;fill:none;stroke-linejoin:round;stroke-linecap:round}.forecast-chart-svg .fc-proj{stroke:var(--fc-proj);stroke-width:2.8;fill:none;stroke-dasharray:7 5;stroke-linecap:round}.forecast-chart-svg .fc-hist.is-partial,.forecast-chart-svg .fc-proj.is-partial{stroke-dasharray:4 3;opacity:.85}.forecast-chart-svg .fc-hist.is-estimated,.forecast-chart-svg .fc-proj.is-estimated{stroke-dasharray:1.5 4}.forecast-chart-svg .fc-compare{stroke:var(--fc-compare);stroke-width:2.4;fill:none}.forecast-chart-svg .fc-band{fill:var(--fc-band);fill-opacity:.09}.forecast-chart-svg .fc-delta-fill.is-pos,.forecast-delta-svg .fc-delta-fill.is-pos{fill:var(--fc-delta-pos);fill-opacity:.24}.forecast-chart-svg .fc-delta-fill.is-neg,.forecast-delta-svg .fc-delta-fill.is-neg{fill:var(--fc-delta-neg);fill-opacity:.24}.fc-delta-hatch{opacity:.6;pointer-events:none}.forecast-delta-svg{width:100%;height:auto;display:block;margin-top:4px}.forecast-delta-svg .fc-delta-zero{stroke:var(--fc-axis);stroke-width:1.2}.forecast-delta-svg .fc-delta-line{fill:none;stroke:var(--text);stroke-width:1.6;stroke-linejoin:round}.fc-jump-dot{fill:var(--surface);stroke:var(--text);stroke-width:1.8}.fc-jump-tick{stroke:var(--text-2);stroke-width:2}.forecast-chart-svg .fc-marker{color:var(--fc-event);stroke:var(--fc-event)}.forecast-chart-svg .fc-hit{fill:transparent}.forecast-chart-svg .fc-drift{stroke:var(--platinum)}.forecast-chart-svg .fc-loan{stroke:var(--fc-loan);stroke-width:2;stroke-dasharray:5 4}.forecast-chart-svg .fc-loan-dot{fill:var(--fc-loan);stroke:var(--surface);stroke-width:2}.forecast-chart-svg .fc-loan-lbl{fill:var(--fc-loan);font-size:12px;font-weight:500}.forecast-chart-svg .fc-ev{fill:var(--fc-event);stroke:var(--surface);stroke-width:2}.forecast-chart-svg .fc-ev-lbl{fill:var(--color-warning);font-size:12px}.forecast-chart-svg .fc-floor{fill:var(--bg-4)}.forecast-chart-svg .fc-today,.forecast-delta-svg .fc-today{stroke:var(--fc-today);stroke-dasharray:4 4;opacity:.7}.forecast-chart-svg .fc-today-txt{fill:var(--text);font-size:12px;font-weight:600}.forecast-chart-svg .fc-zone{fill:var(--text-2);font-size:12px}.forecast-chart-svg .fc-dot{fill:var(--surface);stroke:var(--fc-proj);stroke-width:1.4}.forecast-chart-svg .fc-dot.is-hist{fill:var(--fc-hist);stroke:var(--surface)}.forecast-chart-svg .fc-today-dot{fill:var(--fc-hist);stroke:var(--text);stroke-width:2}.forecast-chart-svg .fc-xh,.forecast-delta-svg .fc-xh{stroke:var(--fc-crosshair);stroke-dasharray:3 3;opacity:.55}.forecast-chart-svg .fc-h-dot{fill:var(--text);stroke:var(--fc-hist);stroke-width:2.5}.forecast-chart-svg .fc-end-tag{fill:var(--fc-end-tag)}.forecast-chart-svg .fc-end-txt{fill:var(--on-accent);font-size:12px;font-weight:700}.forecast-chart-svg .fc-cmp-lbl{fill:var(--fc-compare);font-size:12px;font-weight:600}.fc-glow{filter:url(#fc-glow)}[data-hide-history] .fc-hist,[data-hide-history] .fc-hist-fill,[data-hide-projection] .fc-proj,[data-hide-projection] .fc-proj-fill,[data-hide-compare] .fc-compare,[data-hide-compare] .fc-delta-fill,[data-hide-compare] .fc-delta-hatch,[data-hide-compare] .forecast-delta-svg,[data-hide-compare] .fc-jump-tick,[data-hide-compare] .fc-cmp-lbl,[data-hide-compare] .fc-delta-strip,[data-hide-range] .fc-band,[data-hide-dots] .fc-dot,[data-horizon-years="10"] .fc-dot,[data-horizon-years="20"] .fc-dot,[data-horizon-years="40"] .fc-dot,[data-hide-loans] .fc-loan,[data-hide-loans] .fc-loan-dot,[data-hide-loans] .fc-loan-lbl,[data-hide-events] .fc-marker-g,[data-hide-events] .fc-ev-lbl,[data-hide-events] .fc-drift,[data-hide-labels] .fc-loan-lbl,[data-hide-labels] .fc-ev-lbl,[data-hide-labels] .fc-today-txt,[data-hide-labels] .fc-zone,[data-hide-labels] .fc-cmp-lbl{display:none}.fc-swatch{flex:none}.fc-legend{border-left:1px solid var(--border);padding:6px 0 8px 16px;display:flex;flex-direction:column;gap:10px;min-width:0}.fc-legend .fc-k{display:flex;justify-content:space-between}.fc-leg-list{display:flex;flex-direction:column;gap:2px}.fc-leg-head{align-items:center;min-height:24px}.fc-leg-all{min-height:24px;font-size:12px}.fc-leg-all[hidden]{display:none}.fc-leg-body{display:flex;flex-direction:column;gap:10px;min-width:0}.fc-leg-toggle,.fc-leg-all-m{display:none}.fc-fill-key{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px}.fc-fill-key i{font-style:normal;margin-right:2px}.fc-fill-key .is-pos{color:var(--fc-delta-pos)}.fc-fill-key .is-neg{color:var(--fc-delta-neg)}.fc-leg-item{display:flex;align-items:center;gap:10px;min-height:24px;padding:4px 6px;border-radius:8px;font-size:13px;color:var(--text);cursor:pointer}.fc-leg-item .fc-leg-name{flex:1;min-width:0}.fc-leg-item .toggle{width:44px;height:24px}.fc-leg-item .toggle:after{width:18px;height:18px;top:2px}.fc-leg-item .toggle.on:after{left:22px}.fc-leg-item[data-fc-toggle=compare] .toggle.on{background:var(--fc-compare);border-color:var(--fc-compare)}.fc-k-cmp{color:var(--fc-compare)}.fc-leg-delta{grid-column:span 2}.fc-cov{font-size:12px;margin-top:4px}.fc-leg-item.is-off{color:var(--text-2)}.fc-leg-item.is-off .fc-swatch{opacity:.4}.fc-leg-item[aria-disabled=true]{opacity:.55;cursor:not-allowed}.fc-leg-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}.fc-leg-summary .fc-k{color:var(--text-2)}.fc-leg-hr{height:1px;background:var(--border)}.fc-readout{position:relative;display:none;margin:0 0 8px;background:var(--bg-3);border:1px solid var(--border);border-radius:10px;padding:8px 12px;grid-template-columns:1fr 1fr;gap:4px 10px}.fc-readout .fc-read-v{font-size:13.5px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}.fc-readout .is-pos,.fc-tip-row .is-pos{color:var(--fc-delta-pos)}.fc-readout .is-neg,.fc-tip-row .is-neg{color:var(--fc-delta-neg)}.fc-readout .is-cmp,.fc-tip-row .is-cmp{color:var(--fc-compare)}.fc-tip{position:absolute;z-index:4;min-width:220px;max-width:min(280px,calc(100% - 16px));padding:10px 12px;border-radius:10px;background:var(--fc-tip-bg);border:1px solid var(--border-3);box-shadow:var(--shadow-soft);pointer-events:none;color:var(--text);opacity:0;transform:scale(.97);transform-origin:top left;transition:opacity 125ms cubic-bezier(.23,1,.32,1),transform 125ms cubic-bezier(.23,1,.32,1)}.fc-tip.is-open{opacity:1;transform:scale(1)}.fc-tip.is-pinned{pointer-events:auto}.fc-tip-close{position:absolute;top:2px;right:2px;min-width:24px;min-height:24px;border:0;border-radius:6px;background:transparent;color:var(--text-2);font-size:16px;line-height:1;cursor:pointer}.fc-tip-close:hover{color:var(--text);background:var(--bg-4)}.fc-tip-close:focus-visible{outline:var(--focus-ring)}.fc-tip[data-instant]{transition-duration:0ms}.fc-tip .fc-k{margin-bottom:6px}.fc-tip-row{display:flex;justify-content:space-between;gap:12px;font-size:12.5px;padding:2px 0}.fc-tip-row dt{color:var(--text-2)}.fc-tip-row dd{font-weight:600;font-variant-numeric:tabular-nums;margin:0}.fc-chart-head,.fc-chart-tools{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}.forecast-compare{display:flex;gap:6px;align-items:center;font-size:12px}.fc-chart-grow{min-width:0;position:relative}.fc-chart-empty{padding:40px 0;text-align:center;font-size:12px}.fc-info-sm{font-size:12px}.fc-info-md{font-size:13px}.fc-live-tag{font-size:12px}.fc-live-note{font-size:10px;margin-top:4px}.fc-milestones{font-size:11px;margin-top:8px}.fc-empty-strip{justify-content:space-between}.fc-fold{margin-top:12px;padding:12px 14px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--surface)}.fc-fold>summary{align-items:center;border-radius:var(--radius-sm);padding:2px 4px;margin:-2px -4px}.fc-fold-head{display:inline-flex;align-items:center;gap:8px;min-width:0}.fc-fold>summary .card-title{margin-bottom:0}.fc-fold-chevron{display:inline-block;flex-shrink:0;width:.42em;height:.42em;border-right:2px solid var(--color-text-secondary);border-bottom:2px solid var(--color-text-secondary);transform:rotate(-45deg);transition:transform .16s ease-out}.fc-fold[open]>summary .fc-fold-chevron{transform:rotate(45deg)}@media(prefers-reduced-motion:reduce){.fc-fold-chevron{transition:none}}.fc-fold[data-fc-warn="1"]>summary .card-title:after{content:"";display:inline-block;width:8px;height:8px;margin-left:8px;border-radius:50%;background:var(--color-warning, var(--crimson-rim))}@media(hover:hover)and (pointer:fine){.fc-fold>summary:hover{background:var(--color-bg-subtle)}}.fc-fold-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.fc-fold-toolbar .muted{font-family:var(--font-mono);font-size:11px;color:var(--color-text-secondary)}.fc-fold-toolbar .rule-seg .chip-btn.active{background:var(--crimson);border-color:var(--crimson);color:var(--cream)}.fc-row-group{margin-top:8px}.fc-group-label{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);margin:0 0 4px}.fc-row.is-off .fc-row-name,.fc-row.is-off .fc-row-bal,.fc-row.is-off .fc-row-bal.negative{color:var(--color-text-secondary)}.fc-row-excl{display:inline-block;margin-left:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary)}.fc-loan-why{display:block;font-size:11px;margin-top:2px}.fc-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto minmax(9ch,auto) 40px;gap:8px;align-items:center;min-height:44px;border-bottom:1px solid var(--color-border-subtle)}.fc-row-main{min-width:0}.fc-row-name{display:block;font-size:13px;color:var(--color-text-primary)}.fc-row-mask,.fc-row-meta{font-family:var(--font-mono);font-size:11px;color:var(--color-text-secondary)}.fc-row-bal{text-align:right;font-variant-numeric:tabular-nums}.fc-row-end{display:flex;justify-content:flex-end}.fc-row-more{list-style:none;cursor:pointer;min-width:36px;min-height:36px;display:grid;place-items:center;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);color:var(--color-text-secondary);background:transparent}.fc-row-more::-webkit-details-marker{display:none}.fc-row-menu{position:relative}.fc-row-menu-panel{position:absolute;z-index:8;top:calc(100% + 6px);right:0;width:min(320px,calc(100vw - 32px));padding:6px;border:1px solid var(--color-border-strong, var(--border-3));border-radius:var(--radius-sm);background:var(--color-bg-emphasis, var(--surface-2));box-shadow:var(--shadow-soft, 0 8px 24px rgba(0,0,0,.35))}@media(hover:hover)and (pointer:fine){.fc-row-more:hover{border-color:var(--color-border-strong, var(--border-3));color:var(--color-text-primary)}}.forecast-acct-picker{display:flex;flex-wrap:wrap;gap:16px;padding:8px 0 4px}.forecast-acct-group{min-width:160px;display:flex;flex-direction:column;gap:6px}.forecast-hit{min-height:24px}.fc-menu-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);padding:4px 8px}.fc-menu-opt{display:flex;align-items:center;gap:8px;min-height:36px;padding:4px 8px;font-size:13px}.fc-menu-opt-label{font-size:13px}.fc-menu-manual{display:flex;align-items:center;gap:6px;padding:6px 8px}.fc-menu-note{font-size:11px;padding:4px 8px 8px}.fc-menu-link{width:100%;min-height:38px;padding:7px 9px;border:0;background:transparent;color:var(--color-accent);font-size:12px;text-align:left;cursor:pointer}.fc-loan-payoff{margin-top:16px;padding-top:12px;border-top:1px solid var(--color-border-subtle)}.fc-dirty{position:sticky;bottom:0;z-index:3;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-top:12px;padding:10px 0 2px;background:var(--surface);border-top:1px solid var(--color-border-subtle)}.fc-dirty[hidden]{display:none}.fc-events-card{margin-top:12px}.fc-events-empty{padding:16px}.fc-event-actions{text-align:right;white-space:nowrap}.fc-num{text-align:right}@media(max-width:600px){.fc-row{grid-template-columns:44px minmax(0,1fr) 40px;min-height:44px}.fc-row-bal,.fc-row-meta-slot{grid-column:2}.tax-group-sum{text-align:left}.fc-fold-toolbar{justify-content:stretch}.fc-fold-toolbar .rule-seg{width:100%}.fc-fold-toolbar .rule-seg .chip-btn{flex:1}.fc-dirty:not([hidden]){display:grid;grid-template-columns:1fr 1fr}.fc-dirty span{grid-column:1 / -1}.fc-events-table,.fc-events-table tbody{display:block}.fc-events-table thead{display:none}.fc-events-table tr{display:block;padding:8px 0;border-bottom:1px solid var(--color-border-default)}.fc-events-table th,.fc-events-table td{display:block;padding:2px 0;border:0}.fc-events-table td:before{content:attr(data-label);color:var(--color-text-secondary);font-size:11px;margin-right:8px}}@media(max-width:680px){.plan-chart-row{display:flex;flex-direction:column}.plan-info-panel{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px 10px;min-width:0;max-width:none;border-right:0;padding:6px 0 10px;width:100%}.plan-info-row{min-width:0}.plan-info-row .fc-k{overflow-wrap:anywhere}.plan-info-val{font-size:13px}.fc-delta-why{flex-basis:100%}.fc-delta-strip{overflow-x:hidden}.fc-readout{display:grid}.fc-readout[hidden]{display:none}.fc-delta-strip{display:grid;grid-template-columns:1fr 1fr;gap:6px}.fc-delta-strip .fc-k,.fc-delta-why{grid-column:1 / -1}.fc-delta-chip{min-width:0;text-align:left}.fc-tip{display:none}.fc-chart-grow{order:0}.plan-info-panel{order:1}.fc-legend{order:2;border-left:0;padding:6px 0 0;gap:6px}.fc-leg-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:36px;padding:6px 10px;border:1px solid var(--border-2);border-radius:10px;background:var(--bg-3);color:var(--text);font-size:13px;cursor:pointer}.fc-leg-toggle:focus-visible{outline:var(--focus-ring);outline-offset:2px}.fc-leg-chev{width:.42em;height:.42em;border-right:2px solid var(--text-2);border-bottom:2px solid var(--text-2);transform:rotate(45deg)}.fc-legend.is-open .fc-leg-chev{transform:rotate(-135deg)}.fc-leg-body{display:none;flex-direction:row;flex-wrap:wrap;gap:6px}.fc-legend.is-open .fc-leg-body{display:flex}.fc-leg-all-m{display:inline-flex;align-self:center}.fc-leg-all-m[hidden]{display:none}.fc-leg-list{flex-direction:row;flex-wrap:wrap;gap:6px;width:100%}.fc-leg-item{border:1px solid var(--border-2);border-radius:999px;padding:5px 9px;min-height:32px;font-size:12px;background:var(--bg-3)}.fc-leg-item .toggle{display:none}.fc-leg-item:not(.is-off){border-color:var(--crimson-rim);background:var(--crimson-dim)}.fc-leg-summary,.fc-legend>.fc-k,.fc-leg-hr{display:none}.forecast-chart-svg{aspect-ratio:357 / 300}.forecast-chart-svg .fc-ytick-end{display:none}[data-forecast-chart]{overflow-x:hidden}}@media(min-width:681px){.forecast-chart-svg .fc-ytick-start{display:none}}@media(hover:hover)and (pointer:fine){.fc-leg-item:hover{background:var(--bg-4)}}@media(prefers-reduced-motion:reduce){.fc-glow{filter:none}.fc-tip{transition:none}}.dash-card-full{grid-column:1 / -1}.nav-group,.profile-menu{position:relative}.nav-group>summary,.profile-menu>summary{list-style:none}.nav-group>summary::-webkit-details-marker,.profile-menu>summary::-webkit-details-marker{display:none}.nav-group>summary:after{content:"⌄";margin-left:5px;font-size:9px;opacity:.65}.nav-group.active>summary,.nav-group[open]>summary{color:var(--cream);border-bottom-color:var(--crimson);font-weight:600;box-shadow:0 1px 0 var(--crimson),0 3px 12px -2px var(--crimson-rim)}.nav-menu,.profile-menu-panel{position:absolute;top:calc(100% + var(--space-2));min-width:190px;padding:var(--space-2);background:var(--color-bg-raised);border:1px solid var(--color-border-subtle);border-top:2px solid var(--color-accent);border-radius:var(--radius-md);box-shadow:0 18px 45px #00000073;z-index:1200}.nav-menu{left:0}.profile-menu-panel{right:0;min-width:210px}.nav-menu-link,.profile-menu-panel a,.profile-menu-panel button{display:block;width:100%;border:0;background:transparent;color:var(--text-2);padding:var(--space-2) var(--space-3);text-align:left;text-decoration:none;font:500 11px/1.25 var(--font-body);letter-spacing:.03em;cursor:pointer}.nav-menu-link:hover,.profile-menu-panel a:hover,.profile-menu-panel button:hover{color:var(--cream);background:var(--bg-3)}.nav-menu-link:focus-visible,.profile-menu-panel a:focus-visible,.profile-menu-panel button:focus-visible{color:var(--cream);background:var(--bg-3);outline:var(--focus-ring);outline-offset:-1px}.nav-menu-link.active,.profile-menu-panel [aria-current=page]{color:var(--cream);background:var(--crimson-dim);border-left:2px solid var(--crimson)}.nav-icon{border:0;background:transparent;padding:5px;line-height:1}.nav-icon:focus-visible,.nav-link:focus-visible,.user-badge:focus-visible{outline:var(--focus-ring);outline-offset:2px}.profile-menu>summary{cursor:pointer}.profile-menu>summary:after{content:"⌄";margin-left:5px;font-size:9px}@media(max-width:980px){:root{--shell-sticky-offset: 108px}.topnav{height:auto;min-height:56px;flex-wrap:wrap;padding:var(--space-2) var(--space-3)}.nav-links{order:3;flex:0 0 100%;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible;gap:var(--space-1)}.nav-links>.nav-link,.nav-group>summary{display:flex;align-items:center;justify-content:center;min-height:44px;padding:7px 5px}.nav-menu{left:auto;right:0;width:max-content;max-width:min(280px,calc(100vw - 24px))}}@media(max-width:620px){.brand-name{display:none}.nav-links{grid-template-columns:repeat(3,minmax(0,1fr))}.nav-right{margin-left:auto;gap:8px}}.money-workflow-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:-4px 0 20px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:linear-gradient(120deg,rgba(47,134,255,.08),transparent 38%),var(--color-bg-raised);overflow:hidden}.money-workflow-nav a{display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 14px;border-right:1px solid var(--color-border-default);color:var(--color-text-secondary);font-size:12px;text-decoration:none;transition:color .15s ease,background .15s ease}.money-workflow-nav a:last-child{border-right:0}.money-workflow-nav a span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.12em}.money-workflow-nav a:hover{color:var(--color-text-primary);background:var(--color-bg-subtle)}.money-workflow-nav a.active{color:var(--color-text-primary);background:linear-gradient(180deg,var(--color-accent-soft),rgba(47,134,255,.04));box-shadow:inset 0 -2px var(--color-accent)}.money-workflow-nav a.active span{color:var(--color-accent-strong)}.money-workflow-nav a:focus-visible,.money-text-action:focus-visible,.money-icon-button:focus-visible,.bud-name-edit:focus-visible,.money-table-wrap:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.money-period-control{display:flex;align-items:center;gap:6px;padding:5px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-raised)}.money-period-control .cyber-select{min-width:190px;border-color:transparent;background:transparent;color:var(--color-text-primary);text-align:center}.money-period-label{display:grid;place-items:center;min-width:190px;min-height:32px;color:var(--color-text-primary);font-family:var(--font-mono);font-size:11px;letter-spacing:.09em}.money-toolbar{display:flex;justify-content:flex-end;gap:8px;margin:-8px 0 18px}.money-loading{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:12px;min-height:300px}.money-loading span{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:linear-gradient(105deg,var(--color-bg-raised) 30%,var(--color-bg-subtle) 47%,var(--color-bg-raised) 64%);background-size:250% 100%;animation:money-shimmer 1.4s linear infinite}@keyframes money-shimmer{to{background-position-x:-250%}}.money-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;min-height:190px;margin-bottom:14px;padding:30px 34px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:radial-gradient(circle at 12% 0%,rgba(47,134,255,.2),transparent 38%),linear-gradient(115deg,rgba(255,255,255,.025),transparent 55%),var(--color-bg-raised);overflow:hidden}.money-hero:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:linear-gradient(90deg,var(--color-accent),transparent 75%)}.money-hero--positive:after{background:linear-gradient(90deg,var(--color-positive),var(--color-accent),transparent 78%)}.money-hero--warning:after{background:linear-gradient(90deg,var(--color-warning),var(--color-negative),transparent 78%)}.money-eyebrow,.money-state-kicker{margin:0 0 7px;color:var(--color-accent-strong);font-family:var(--font-mono);font-size:9px;letter-spacing:.16em}.money-hero h2{margin:0;color:var(--color-text-primary);font-family:var(--font-display);font-size:clamp(26px,4vw,44px);font-weight:420;letter-spacing:-.035em;line-height:1.08}.money-hero h2 strong{color:var(--color-supporting-strong);font-weight:560}.money-hero--warning h2 strong{color:var(--color-warning)}.money-hero-main>p:last-child{max-width:720px;margin:12px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.65}.money-hero-gauge{position:relative;display:grid;place-items:center;width:132px;height:132px;border-radius:50%;background:var(--color-bg-canvas)}.money-hero-gauge>span{position:absolute;inset:0;border-radius:inherit;background:conic-gradient(var(--color-positive) calc(var(--money-gauge) * 1%),var(--color-bg-emphasis) 0);mask:radial-gradient(circle,transparent 59%,#000 60%)}.money-hero--warning .money-hero-gauge>span{background:conic-gradient(var(--color-warning) calc(var(--money-gauge) * 1%),var(--color-bg-emphasis) 0)}.money-hero-gauge strong,.money-hero-count strong{color:var(--color-text-primary);font-family:var(--font-mono);font-size:24px}.money-hero-gauge small,.money-hero-count small{color:var(--color-text-muted);font-family:var(--font-mono);font-size:8px;letter-spacing:.12em}.money-hero-count{display:grid;place-items:center;align-content:center;width:132px;height:132px;border:1px solid var(--color-accent-ring);border-radius:50%;background:radial-gradient(circle,var(--color-accent-soft),transparent 70%)}.money-hero-count strong{font-size:38px}.money-signal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.money-signal-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.money-signal{position:relative;display:grid;gap:7px;min-width:0;padding:16px 18px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-raised)}.money-signal:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:2px;background:var(--color-accent)}.money-signal>span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.12em}.money-signal strong{overflow:hidden;color:var(--color-text-primary);font-family:var(--font-mono);font-size:20px;font-weight:550;text-overflow:ellipsis}.money-signal strong.positive,.money-signal strong.amt-pos{color:var(--color-positive)}.money-signal strong.negative,.money-signal strong.amt-neg{color:var(--color-negative)}.money-signal strong.tax-muted{color:var(--color-money-neutral)}.money-signal small{color:var(--color-text-secondary);font-size:11px;line-height:1.4}.money-two-up{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.money-panel,.money-exceptions{min-width:0;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-raised)}.money-panel{padding:20px}.money-panel>header,.money-exceptions>header{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:16px}.money-panel h3,.money-exceptions h3{margin:0;color:var(--color-text-primary);font-family:var(--font-display);font-size:17px;font-weight:520}.money-panel>header>strong{font-family:var(--font-mono);font-size:14px}.money-panel-note,.money-exceptions>header>span{max-width:320px;color:var(--color-text-secondary);font-size:11px;line-height:1.4;text-align:right}.cf-category-list{display:grid;gap:13px}.cf-category-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 14px;align-items:center}.cf-name{color:var(--color-text-primary);font-size:12px}.cf-category-value{font-family:var(--font-mono);font-size:11px}.cf-category-track{grid-column:1 / -1;height:3px;border-radius:2px;background:var(--color-bg-emphasis);overflow:hidden}.cf-category-track span{display:block;height:100%;background:linear-gradient(90deg,var(--color-accent-deep),var(--color-supporting))}.money-two-up .money-panel:last-child .cf-category-track span{background:linear-gradient(90deg,var(--color-warning),var(--color-negative))}.money-inline-empty{padding:22px 0;color:var(--color-text-secondary);font-size:12px}.money-history{margin-bottom:18px}.money-chart{margin:0}.money-chart figcaption{display:flex;gap:18px;margin-top:10px;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:9px;letter-spacing:.08em}.money-chart figcaption span{display:inline-flex;align-items:center;gap:6px}.money-legend-dot{width:7px;height:7px;border-radius:50%;background:var(--color-positive)}.money-legend-dot--expense{background:var(--color-negative)}.money-data-details{margin-top:16px;border-top:1px solid var(--color-border-subtle);padding-top:12px}.money-data-details summary{color:var(--color-supporting);cursor:pointer;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em}.money-table-wrap{max-width:100%;overflow:auto}.money-data-table{width:100%;margin-top:10px;border-collapse:collapse;font-size:12px}.money-data-table th,.money-data-table td{padding:8px 10px;border-bottom:1px solid var(--color-border-subtle);text-align:right}.money-data-table th:first-child{text-align:left}.money-data-table thead th{color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.08em}.money-data-table tbody th{color:var(--color-text-primary);font-weight:500}.money-data-table td{color:var(--color-text-secondary);font-family:var(--font-mono)}.money-data-table tr.is-current{background:var(--color-accent-soft)}.money-exceptions{margin-bottom:18px;padding:18px 20px;border-left:2px solid var(--color-warning)}.money-exceptions--clear{border-left-color:var(--color-positive)}.money-exceptions ul{display:grid;gap:1px;margin:0;padding:0;list-style:none}.money-exceptions li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:50px;padding:8px 0;border-top:1px solid var(--color-border-subtle)}.money-exception-mark{display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--color-accent-ring);border-radius:50%;color:var(--color-accent-strong);font-family:var(--font-mono);font-size:11px}.money-exception-mark--warning{border-color:#e5a84b80;color:var(--color-warning)}.money-exceptions li>span:nth-child(2){display:grid;gap:3px}.money-exceptions li strong{color:var(--color-text-primary);font-size:12px;font-weight:550}.money-exceptions li small{color:var(--color-text-secondary);font-size:11px}.money-text-action,.money-icon-button{border:0;background:transparent;color:var(--color-supporting);cursor:pointer;font-family:var(--font-mono);font-size:9px;letter-spacing:.08em}.money-text-action:hover,.money-icon-button:hover{color:var(--color-text-primary)}.money-text-action[aria-disabled=true]{opacity:.55;cursor:progress}.money-clear-state{display:flex;align-items:center;gap:9px;padding-top:12px;border-top:1px solid var(--color-border-subtle);color:var(--color-text-secondary);font-size:12px}.money-clear-state span{color:var(--color-positive);font-family:var(--font-mono)}.money-state{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;min-height:180px;padding:28px;border:1px solid var(--color-border-default);border-left:2px solid var(--color-warning);border-radius:var(--radius-md);background:var(--color-bg-raised)}.money-state--empty{border-left-color:var(--color-accent)}.money-state-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid currentColor;border-radius:50%;color:var(--color-warning);font-family:var(--font-mono)}.money-state--empty .money-state-mark{color:var(--color-accent-strong)}.money-state h2{margin:0;color:var(--color-text-primary);font-family:var(--font-display);font-size:20px}.money-state p:last-child{margin:7px 0 0;color:var(--color-text-secondary);font-size:12px}.money-filter-empty{padding:20px;color:var(--color-text-secondary);text-align:center;font-size:12px}.money-modal-context{margin:0 0 16px;color:var(--color-text-secondary);font-size:12px;line-height:1.6}.bud-stat-strip{display:none}.bud-section{border-radius:var(--radius-md);overflow:hidden}.bud-sec-hdr{min-height:44px;padding:10px 14px;border-color:var(--color-border-default);border-left-color:var(--color-accent);background:var(--color-bg-raised)}.bud-sec-body{border-color:var(--color-border-default);background:#0a0a0b38}.bud-row{min-height:56px;border-color:var(--color-border-subtle)}.bud-row--over{background:linear-gradient(90deg,var(--color-warning-soft),transparent 35%)}.bud-name-cell{display:grid;gap:7px;min-width:0}button.bud-name{width:max-content;max-width:100%;padding:0;border:0;background:transparent;color:var(--color-text-primary);cursor:pointer;font:inherit;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.bud-progress{display:block;width:100%;height:2px;background:var(--color-bg-emphasis);overflow:hidden}.bud-progress span{display:block;height:100%;background:var(--color-accent)}.bud-row--over .bud-progress span{background:var(--color-warning)}.bud-input-wrap{position:relative;display:block}.bud-save-state{position:absolute;right:0;top:calc(100% + 2px);color:var(--color-text-muted);font-family:var(--font-mono);font-size:8px}.bud-inp:disabled{opacity:.65;cursor:wait}.recurring-ledger{padding:0;overflow:hidden}.recurring-ledger>header{margin:0;padding:18px 20px;border-bottom:1px solid var(--color-border-default)}.rec-table{min-width:900px}.rec-table tr[hidden]{display:none!important}.rec-table th,.rec-table td{vertical-align:middle}.rec-table thead th{padding:10px 14px;color:var(--color-text-muted);background:var(--color-bg-canvas)}.rec-table tbody th,.rec-table tbody td{padding:13px 14px;border-bottom-color:var(--color-border-subtle)}.rec-table tbody th{color:var(--color-text-primary);text-align:left;font-weight:550}.rec-table tbody th small,.rec-table td small{display:block;margin-top:4px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;font-weight:400;letter-spacing:.04em}.rec-table td>span:not(.money-status){color:var(--color-text-secondary);font-size:11px}.rec-table td.num{color:var(--color-text-primary);font-family:var(--font-mono);text-align:right}.rec-table td.num.amt-pos{color:var(--color-money-positive)}.rec-table td.num.amt-neg{color:var(--color-money-negative)}.rec-table tr.rec-flash{outline:2px solid var(--color-accent);outline-offset:-2px;background:var(--color-accent-soft)}.rec-end-date-card{display:none}.tx-table tr.tx-flash{outline:2px solid var(--color-accent);outline-offset:-2px;background:var(--color-accent-soft)}.rec-table .rec-missing{color:var(--color-warning)}.rec-table tr.rec-overdue{background:linear-gradient(90deg,var(--color-warning-soft),transparent 32%)}.rec-table tr.rec-canceled,.rec-table tr.rec-ended{opacity:1;background:#85858e0d}.rec-table tr.rec-canceled td,.rec-table tr.rec-ended td{opacity:1}.rec-table tr.rec-canceled>th strong{color:var(--color-text-secondary);text-decoration:line-through}.rec-table tr.rec-ended>th strong{color:var(--color-text-secondary)}.rec-table .rec-group-row{background:var(--color-bg-canvas)}.rec-table .rec-group-row:hover th{background:var(--color-bg-canvas);color:var(--color-text-primary)}.rec-table .rec-group-row th{padding:16px 14px 8px;color:var(--color-accent-strong);font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.rec-table .rec-group-row th small{display:inline;margin:0 0 0 8px}.rec-cadence{text-transform:capitalize}.money-status{display:inline-flex;padding:3px 6px;border:1px solid currentColor;border-radius:99px;font-family:var(--font-mono);font-size:9px;line-height:1}.money-status.is-positive{color:var(--color-positive)}.money-status.is-warning{color:var(--color-warning)}.money-status.is-danger{color:var(--color-negative)}.money-status.is-muted{color:var(--color-text-muted)}.rec-table .money-status{font-size:11px;font-variant-numeric:tabular-nums}.rec-actions{text-align:right;white-space:nowrap}.rec-actions .cyber-btn-sm+.cyber-btn-sm{margin-left:6px}.rec-occ-hold{display:flex;align-items:center;gap:8px;font-weight:500}.rec-occ-hold input{width:16px;height:16px;margin:0;accent-color:var(--color-accent)}.rec-hold-fields{margin-top:8px}.rec-search-input{width:min(230px,34vw);min-height:36px;border-color:var(--color-border-default);background:var(--color-bg-raised);text-transform:none}.rec-search-input::placeholder{text-transform:none}@media(max-width:900px){.money-signal-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}.money-hero{min-height:170px;padding:24px}.money-two-up{grid-template-columns:1fr}}@media(max-width:720px){.money-workflow-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.money-workflow-nav a:nth-child(2n){border-right:0}.money-workflow-nav a{border-bottom:1px solid var(--color-border-default)}.money-workflow-nav a:last-child{border-bottom:0}.money-workflow-nav a:nth-last-child(2):nth-child(odd){border-bottom:0}.money-period-control{width:100%}.money-period-control .cyber-select,.money-period-label{min-width:0;flex:1}.money-toolbar{justify-content:flex-start;overflow-x:auto;padding-bottom:4px}.money-toolbar .cyber-btn-sm{flex:0 0 auto}.money-hero{grid-template-columns:1fr;gap:20px}.money-hero-gauge,.money-hero-count{width:104px;height:104px;justify-self:start}.money-signal-grid{grid-template-columns:1fr 1fr}.money-panel>header,.money-exceptions>header{align-items:start;flex-direction:column;gap:6px}.money-panel-note,.money-exceptions>header>span{text-align:left}.money-state{grid-template-columns:auto minmax(0,1fr)}.money-state>.cyber-btn,.money-state>.btn-group{grid-column:2;justify-self:start}.bud-col-hdr{display:none}.bud-sec-hdr{align-items:flex-start;flex-direction:column;gap:5px}.bud-row{grid-template-columns:18px minmax(0,1fr) auto;gap:10px;padding:13px 12px}.bud-row>.bud-drag,.bud-row>.bud-drag-ph{grid-column:1;grid-row:1}.bud-row>.bud-icon{display:none}.bud-row>.bud-name-cell,.bud-row>.bud-name{grid-column:2;grid-row:1;align-self:center}.bud-row>.bud-del{grid-column:3;grid-row:1}.bud-row>.bud-input-wrap,.bud-row>.bud-inp{grid-column:1 / 3;grid-row:2}.bud-row>.bud-actual{grid-column:3;grid-row:2;align-self:center}.bud-row>.bud-metric{grid-column:2 / 4;grid-row:3;text-align:right}.bud-row .bud-save-state{position:static;display:block;min-height:10px;text-align:right}}.inv-menu{position:relative}.inv-menu-btn{display:inline-flex;align-items:center;gap:8px;min-width:200px;min-height:34px;padding:6px 10px;border:1px solid var(--color-border-default);border-radius:4px;background:var(--color-bg-raised);color:var(--color-text-secondary);font-family:inherit;font-size:11px;font-weight:500;line-height:1.2;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.inv-menu-btn:hover,.inv-menu-btn[aria-expanded=true]{color:var(--color-text-primary);border-color:var(--color-border-strong)}.inv-menu-btn:focus-visible,.inv-attn-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.inv-menu-caret{margin-left:auto;font-size:10px}.inv-menu-panel{position:absolute;z-index:40;top:calc(100% + 6px);left:0;width:min(440px,calc(100vw - 32px));max-height:min(70vh,560px);overflow-y:auto;padding:6px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-raised);box-shadow:0 18px 40px #00000073}.inv-attn-panel{right:0;left:auto;padding:0}.inv-attn-panel .money-exceptions{margin:0;border:0;box-shadow:none}.inv-attn-actions{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.inv-attn-dismiss{color:var(--color-text-secondary);font-size:9px}.inv-restore{justify-self:start;min-height:28px;padding:0;font-size:10px;text-decoration:underline;text-underline-offset:3px}.inv-acct-check--held{color:color-mix(in srgb,var(--color-warning) 80%,var(--color-text-secondary))}.inv-attn-hidden{position:absolute;bottom:-6px;left:-6px;min-width:16px;padding:0 4px;border-radius:999px;background:var(--color-bg-subtle);color:var(--color-text-secondary);border:1px solid var(--color-border-default);font:700 9px/16px var(--font-mono);text-align:center}.inv-menu[data-tone=muted] .inv-attn-btn{color:var(--color-text-secondary)}.inv-acct-list{display:grid;margin:4px 0 0;padding:4px 0 0;list-style:none;border-top:1px solid var(--color-border-subtle)}.inv-acct-opt{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:baseline;gap:2px 8px;width:100%;min-height:40px;padding:7px 8px;border:0;border-radius:4px;background:transparent;color:var(--color-text-primary);font:inherit;font-size:13px;text-align:left;cursor:pointer}.inv-acct-opt:hover{background:var(--color-bg-subtle)}.inv-acct-opt:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.inv-acct-opt[aria-pressed=true]{background:var(--color-accent-soft, var(--color-bg-subtle))}.inv-acct-name{min-width:0;overflow-wrap:anywhere}.inv-acct-meta{grid-column:2;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px}.inv-acct-check{color:color-mix(in srgb,var(--color-positive) 70%,var(--color-text-secondary));font-size:11px}.inv-acct-status{display:grid;gap:2px;padding:0 8px 8px 32px;color:var(--color-text-secondary);font-size:11px}.inv-acct-row[data-tone=action] .inv-acct-status>span:first-child{color:var(--color-accent-strong)}.inv-acct-row[data-tone=warning] .inv-acct-status>span:first-child{color:var(--color-warning)}.inv-acct-detail{font-size:11px}.inv-acct-actions{display:flex;flex-wrap:wrap;gap:4px 14px}.inv-acct-actions .money-text-action{min-height:28px;padding:0;font-size:10px;text-decoration:underline;text-underline-offset:3px}.inv-acct-foot{display:grid;gap:6px;margin-top:4px;padding:10px 8px 6px;border-top:1px solid var(--color-border-subtle);color:var(--color-text-secondary);font-size:11px}.inv-acct-foot p{margin:0}.inv-acct-summary{color:var(--color-text-primary)}.inv-conn-hint,.inv-conn-last{margin:0;color:var(--color-text-secondary);font-size:11px}.inv-conn-last strong{color:var(--color-text-primary);font-weight:550}.inv-conn-last[data-tone=warn]{color:var(--color-warning)}.inv-conn-last[data-tone=err]{color:var(--color-negative)}.inv-attn-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:34px;border:1px solid var(--color-border-default);border-radius:4px;background:var(--color-bg-raised);color:var(--color-warning);cursor:pointer}.inv-menu[data-tone=action] .inv-attn-btn{color:var(--color-accent-strong)}.inv-attn-btn:hover,.inv-attn-btn[aria-expanded=true]{border-color:currentColor}.inv-yield{width:18px;height:18px}.inv-attn-count{position:absolute;top:-6px;right:-6px;min-width:16px;padding:0 4px;border-radius:999px;background:var(--color-warning);color:#111;font:700 9px/16px var(--font-mono);text-align:center}.inv-menu[data-tone=action] .inv-attn-count{background:var(--color-accent);color:#fff}.money-state-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.form-hint--readable{color:var(--color-text-secondary)}button.toggle{padding:0}button.toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button.toggle:disabled{cursor:not-allowed;opacity:.6}.inv-src-tag{display:inline-block;margin-left:4px;padding:1px 5px;border:1px solid var(--color-border-default);border-radius:3px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:8px;letter-spacing:.08em;vertical-align:middle}.inv-src-tag.warn{border-color:var(--color-warning);color:var(--color-warning)}.inv-src-tag.manual{color:var(--color-text-secondary)}.inv-qty-note{display:block;margin-top:2px;color:var(--color-warning);font-size:10px;font-weight:400}.inv-totals-qualifier{display:grid;gap:4px;margin:-6px 0 18px;padding:10px 14px;list-style:none;border-left:2px solid var(--color-warning);background:var(--color-warning-soft);color:var(--color-text-secondary);font-size:11px}.money-state--incomplete{border-left-color:var(--color-warning)}.money-state--incomplete .money-state-mark{color:var(--color-warning)}@media(max-width:760px){.inv-acct-opt,.inv-acct-actions .money-text-action,.inv-attn-btn,.inv-menu-btn,.inv-restore,.inv-attn-dismiss{min-height:44px}.money-state-actions{grid-column:1 / -1;justify-content:flex-start}.money-state-actions .cyber-btn{min-height:44px}}@media(max-width:520px){.money-workflow-nav a{padding:9px 10px}.money-hero{padding:21px 18px}.money-hero h2{font-size:27px}.money-signal-grid,.money-signal-grid--four{grid-template-columns:1fr}.money-signal{padding:14px 16px}.money-panel,.money-exceptions{padding:16px}.money-state{grid-template-columns:1fr;padding:22px 18px}.money-state>.cyber-btn,.money-state>.btn-group{grid-column:1}.money-exceptions li{grid-template-columns:auto minmax(0,1fr)}.money-exceptions li .money-text-action{grid-column:2;justify-self:start;padding:2px 0}.rec-search-input{width:100%}.recurring-ledger .money-table-wrap{overflow:visible}.rec-table{display:block;min-width:0}.rec-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%)}.rec-table tbody{display:grid;gap:10px;padding:10px}.rec-table tr{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-raised)}.rec-table tr[hidden]{display:none!important}.rec-table .rec-group-row{display:block;padding:8px 4px 0;border:0;background:transparent}.rec-table .rec-group-row th{display:block;padding:0}.rec-table tbody th,.rec-table tbody td{display:block;padding:0;border:0}.rec-table tbody th{grid-column:1 / -1}.rec-table td:nth-child(3),.rec-table td:nth-child(4){grid-column:auto}.rec-table td.num{text-align:left}.rec-table td.rec-end-date{display:none}.rec-end-date-card{display:block;margin-top:4px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px}.rec-table .rec-actions{grid-column:1 / -1;text-align:left}}@media(prefers-reduced-motion:reduce){.money-loading span{animation:none}.money-workflow-nav a,.rec-table tr.rec-flash,.tx-table tr.tx-flash{transition:none}}.inv-workflow-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:-4px 0 20px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:linear-gradient(120deg,rgba(47,134,255,.08),transparent 38%),var(--color-bg-raised);overflow:hidden}.inv-workflow-nav a{display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 14px;border-right:1px solid var(--color-border-default);color:var(--color-text-secondary);font-size:12px;text-decoration:none;transition:color .15s ease,background .15s ease}.inv-workflow-nav a:last-child{border-right:0}.inv-workflow-nav a span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.12em}.inv-workflow-nav a:hover{color:var(--color-text-primary);background:var(--color-bg-subtle)}.inv-workflow-nav a.active{color:var(--color-text-primary);background:linear-gradient(180deg,var(--color-accent-soft),rgba(47,134,255,.04));box-shadow:inset 0 -2px var(--color-accent)}.inv-workflow-nav a.active span{color:var(--color-accent-strong)}.inv-workflow-nav a:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.inv-tab{display:none}.inv-tab.active{display:block}.plans-workflow-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:-4px 0 20px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:linear-gradient(120deg,rgba(47,134,255,.08),transparent 38%),var(--color-bg-raised);overflow:hidden}.plans-workflow-nav a{display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 14px;border-right:1px solid var(--color-border-default);color:var(--color-text-secondary);font-size:12px;text-decoration:none;transition:color .15s ease,background .15s ease}.plans-workflow-nav a:last-child{border-right:0}.plans-workflow-nav a span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.12em}.plans-workflow-nav a:hover{color:var(--color-text-primary);background:var(--color-bg-subtle)}.plans-workflow-nav a.active{color:var(--color-text-primary);background:linear-gradient(180deg,var(--color-accent-soft),rgba(47,134,255,.04));box-shadow:inset 0 -2px var(--color-accent)}.plans-workflow-nav a.active span{color:var(--color-accent-strong)}.plans-workflow-nav a:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.goals-panel .goal-cards{display:grid;gap:14px}@media(max-width:720px){.plans-workflow-nav{grid-template-columns:1fr}.plans-workflow-nav a{border-right:0;border-bottom:1px solid var(--color-border-default)}.plans-workflow-nav a:last-child{border-bottom:0}}@media(prefers-reduced-motion:reduce){.plans-workflow-nav a{transition:none}}.inv-shell-controls{align-items:center}.inv-holdings-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inv-row-actions{text-align:right;white-space:nowrap}.inv-row-actions .money-text-action{margin-left:8px}.inv-quote-error{color:var(--color-warning);font-size:11px;margin-left:4px;cursor:help}.inv-symbol-chip-row{padding:0 14px 10px}.inv-symbol-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-subtle);color:var(--color-text-secondary);font-size:11px}.inv-symbol-chip button{border:0;background:transparent;color:var(--color-text-muted);cursor:pointer;font-size:11px;padding:2px}.inv-symbol-chip button:hover{color:var(--color-text-primary)}.money-signal .money-text-action{margin-top:8px;align-self:flex-start}@media(max-width:720px){.inv-shell-controls{width:100%;flex-wrap:wrap}.inv-shell-controls #inv-acct-wrap{flex:1 1 100%}.inv-shell-controls .inv-menu-btn{width:100%;min-width:0}}@media(max-width:720px){.inv-workflow-nav{grid-template-columns:1fr}.inv-workflow-nav a{border-right:0;border-bottom:1px solid var(--color-border-default)}.inv-workflow-nav a:last-child{border-bottom:0}}@media(prefers-reduced-motion:reduce){.inv-workflow-nav a{transition:none}}.accounts-groupby{display:flex;gap:6px;align-items:center;margin-left:auto;margin-right:14px}.account-subgroup-title{margin:14px 14px 6px;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.account-subgroup-title span{margin-left:6px;color:var(--color-text-secondary)}.loan-facts{display:flex;flex-wrap:wrap;margin-top:4px;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px}.loan-facts>span+span:before{content:" · ";white-space:pre}.loan-facts .link-button,.loan-modal .link-button{padding:0;border:0;background:none;color:var(--color-accent);font:inherit;text-decoration:underline;cursor:pointer}.loan-facts .link-button:focus-visible,.loan-modal .link-button:focus-visible{outline:var(--focus-ring);outline-offset:2px}.loan-progress-row{display:flex;align-items:center;gap:8px;margin-top:6px}.loan-progress{flex:0 0 96px;height:6px;overflow:hidden;border:1px solid var(--color-border-default);border-radius:999px;background:var(--color-bg-emphasis)}.loan-progress>span{display:block;height:100%;background:var(--color-positive)}.loan-progress-text{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px}.loan-modal{display:grid;gap:20px}.loan-section{display:grid;gap:10px;padding-top:16px;border-top:1px solid var(--color-border-default)}.loan-section:first-child{padding-top:0;border-top:0}.loan-section h3{margin:0;color:var(--color-text-primary);font-family:var(--font-display);font-size:16px;font-weight:600;letter-spacing:.02em}.loan-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.loan-stat{display:grid;gap:3px;padding:10px 12px;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-bg-emphasis)}.loan-stat>span,.loan-stat>small{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.loan-stat>small{letter-spacing:0;text-transform:none}.loan-stat>strong{color:var(--color-text-primary);font-family:var(--font-mono);font-size:18px;font-weight:650}.loan-stats--compact .loan-stat>strong{font-size:16px}.loan-stat--equity{border-color:var(--color-positive);background:var(--color-positive-soft)}.loan-notes{display:grid;gap:6px;margin:0;padding:0;list-style:none}.loan-notes li,.loan-notice{padding:9px 12px;border:1px solid var(--color-border-default);border-left:3px solid var(--color-warning);border-radius:var(--radius-sm);background:var(--color-warning-soft);color:var(--color-text-primary);font-size:12px;line-height:1.45}.loan-notice{border-left-color:var(--color-accent);background:var(--color-accent-soft)}.loan-hint{display:block;margin:0;color:var(--color-text-secondary);font-size:11px;line-height:1.45}.loan-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:0 14px}.loan-field--check label{display:flex;align-items:center;gap:8px}.loan-field--check input{width:auto}.loan-more{margin-bottom:12px}.loan-more>summary{cursor:pointer;color:var(--color-text-secondary);font-size:12px}.loan-chip{display:inline-flex;margin-left:6px;padding:1px 7px;border:1px solid var(--color-border-default);border-radius:999px;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;vertical-align:middle}.loan-chip--plaid{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-text-primary)}.loan-chip--you{border-color:var(--color-positive);background:var(--color-positive-soft);color:var(--color-positive)}.loan-chip--calc{border-color:var(--color-warning);background:var(--color-warning-soft);color:var(--color-text-primary)}.loan-conflict{margin-top:4px;color:var(--color-text-secondary);font-size:11px;line-height:1.4}.loan-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.loan-events{display:grid;gap:6px;margin:0;padding:0;list-style:none}.loan-events li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:12px}.loan-table{min-width:0;table-layout:auto}.loan-table th,.loan-table td{text-align:right;white-space:nowrap}.loan-table th:first-child,.loan-table td:first-child{text-align:left}.loan-table td:nth-child(3),.loan-table th:nth-child(3){text-align:left;white-space:normal;min-width:130px}.loan-subhead{margin:14px 0 2px;font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--color-text-primary)}.loan-detail>td{padding:10px 12px;background:var(--color-bg-emphasis);white-space:normal;text-align:left}.loan-detail-grid{display:grid;gap:8px;margin:0 0 8px}.loan-detail-line{display:grid;grid-template-columns:minmax(150px,1fr) 3fr;gap:4px 12px;font-size:12px;color:var(--color-text-primary)}.loan-detail-line dt{color:var(--color-text-secondary)}.loan-detail-line dd{margin:0}.loan-saved-split{margin:0;padding-left:16px}.loan-evidence{display:block;margin-top:2px;color:var(--color-text-secondary);font-size:11px;line-height:1.45}.loan-shortfall{display:block;margin-top:2px;color:var(--color-negative);font-size:11px;font-weight:600}.loan-state--unreconciled{border-color:var(--color-negative);background:var(--color-negative-soft);color:var(--color-text-primary)}.loan-n{color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px}.loan-bank{display:block;margin-top:2px;color:var(--color-text-secondary);font-size:10px;line-height:1.4}.loan-state{display:inline-flex;padding:1px 7px;border:1px solid var(--color-border-default);border-radius:999px;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase}.loan-state--paid{border-color:var(--color-positive);background:var(--color-positive-soft);color:var(--color-text-primary)}.loan-state--pending,.loan-state--due{border-color:var(--color-warning);background:var(--color-warning-soft);color:var(--color-text-primary)}.loan-state--missing{border-color:var(--color-negative);background:var(--color-negative-soft);color:var(--color-text-primary)}.loan-state--entered,.loan-state--extra{border-color:var(--color-accent);background:var(--color-bg-emphasis);color:var(--color-text-primary)}.loan-row--planned-extra td{color:var(--color-text-secondary)}.loan-records-unavailable{margin:6px 0;padding:8px 12px;border:1px solid var(--color-negative);border-radius:var(--radius-sm);background:var(--color-negative-soft);color:var(--color-text-primary)}.loan-records-unavailable .loan-hint{margin:0 0 4px;color:var(--color-text-primary)}.loan-row--reconstructed td,.loan-row--upcoming td{color:var(--color-text-secondary)}.loan-notes .link-button,.loan-detail .link-button{color:var(--color-text-primary);text-decoration:underline}.loan-suggestions li{display:flex;flex-wrap:wrap;align-items:flex-start;gap:6px 14px}.loan-suggest-text{flex:1 1 320px}.loan-suggest-actions{display:flex;flex-wrap:wrap;gap:4px 12px}.loan-match-list{display:grid;gap:6px;max-height:320px;overflow:auto}.loan-match-option{display:flex;align-items:baseline;gap:8px;padding:8px 10px;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);font-size:12px;color:var(--color-text-primary);cursor:pointer}.loan-split{display:grid;gap:10px}.loan-split-total{padding:8px 12px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);font-size:13px;color:var(--color-text-primary)}.loan-split-sum--off{border-color:var(--color-negative);background:var(--color-negative-soft)}.loan-split-sum{padding:8px 12px;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);font-size:12px}.equity-bar{display:flex;height:14px;overflow:hidden;border:1px solid var(--color-border-default);border-radius:999px;background:var(--color-bg-emphasis)}.equity-seg--owed{background:var(--color-border-strong)}.equity-seg--paid{background:var(--color-positive)}.equity-seg--above{background:var(--color-accent)}.equity-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;padding:0;list-style:none;color:var(--color-text-secondary);font-size:11px}.equity-key{display:inline-block;width:9px;height:9px;margin-right:6px;border-radius:2px}.equity-key--owed{background:var(--color-border-strong)}.equity-key--paid{background:var(--color-positive)}.equity-key--above{background:var(--color-accent)}.loan-pmi-list{display:grid;gap:6px;margin:8px 0;padding:0;list-style:none}.loan-pmi-list li{display:grid;grid-template-columns:minmax(150px,1.2fr) 90px 1fr;align-items:baseline;gap:8px;font-size:12px}.loan-pmi-list li small{color:var(--color-text-secondary)}@media(max-width:720px){.accounts-groupby{margin:0}.loan-pmi-list li{grid-template-columns:1fr;gap:2px}.loan-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.loan-table td{display:flex;justify-content:space-between;text-align:right}.loan-detail>td{display:block}.loan-detail-line{grid-template-columns:1fr}.loan-table td:before{content:attr(data-label);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:10px;text-transform:uppercase}}.loan-status{padding:8px 12px;border:1px solid var(--color-positive);border-left-width:3px;border-radius:var(--radius-sm);background:var(--color-positive-soft);color:var(--color-text-primary);font-size:12px}.loan-status:empty{display:none}.toast .toast-message{grid-column:1;grid-row:1}.toast .toast-dismiss{grid-column:2;grid-row:1}.toast-action{grid-column:1 / -1;grid-row:2;justify-self:start;min-height:32px;padding:0 12px;border:1px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-accent-soft);color:var(--color-accent-strong);font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.toast-action:hover,.toast-action:focus-visible{background:var(--color-accent-ring);color:var(--color-text-primary);outline:var(--focus-ring);outline-offset:1px}.merch-avatar{--avatar-size: 28px;--avatar-hue: 215;position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;box-sizing:border-box;width:var(--avatar-size);height:var(--avatar-size);padding:0;border:1px solid var(--color-border-default);border-radius:50%;overflow:hidden;background:hsl(var(--avatar-hue) 35% 22%);color:var(--color-text-primary);font-family:var(--font-mono);font-size:calc(var(--avatar-size) * .36);font-weight:600;line-height:1;letter-spacing:0;text-transform:uppercase}button.merch-avatar{cursor:pointer}button.merch-avatar:hover{border-color:var(--color-accent)}button.merch-avatar:focus-visible{outline:var(--focus-ring);outline-offset:2px}.merch-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}.merch-cell{display:flex;align-items:center;gap:10px;min-width:0}.merch-cell>strong{min-width:0;overflow-wrap:anywhere}.bud-watch-line{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:6px 0 0 18px;padding-left:12px;border-left:2px solid var(--color-border-default);font-size:12px;color:var(--color-text-secondary)}.bud-watch-line .bud-watch-name{min-width:0;overflow-wrap:anywhere;color:var(--color-text-primary)}.bud-watch-line .bud-watch-figures{font-family:var(--font-mono);white-space:nowrap}.bud-watch-line.over .bud-watch-figures{color:var(--color-negative)}.bud-watch-bar{grid-column:2 / -1;height:4px;border-radius:2px;background:var(--color-bg-emphasis);overflow:hidden}.bud-watch-bar>span{display:block;height:100%;background:var(--color-accent)}.bud-watch-line.over .bud-watch-bar>span{background:var(--color-negative)}.bud-watch-unassigned{margin-top:14px;padding:12px;border:1px dashed var(--color-border-default);border-radius:var(--radius-md)}.merchant-review{margin:0 0 24px;padding:16px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface)}.merchant-coverage{display:grid;gap:6px;margin-bottom:12px}.merchant-coverage-bar{height:8px;border-radius:4px;background:var(--color-bg-emphasis);overflow:hidden}.merchant-coverage-bar>span{display:block;height:100%;background:var(--color-positive)}.merchant-coverage-text{font-size:12px;color:var(--color-text-secondary)}.merchant-review-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.merchant-review-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid var(--color-border-subtle)}.merchant-review-item:first-child{border-top:0;padding-top:0}.merchant-review-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.merchant-review-actions .settings-select{max-width:180px}.merchant-row .merch-cell{flex:1 1 auto}.merchant-editor{display:grid;gap:4px}.merchant-editor-avatar{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:8px}.merchant-editor-url{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.merchant-editor-url input{flex:1 1 220px;min-width:0}.merchant-editor-link{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;gap:8px;margin-bottom:8px}@media(max-width:560px){.merchant-editor-link{grid-template-columns:minmax(0,1fr) auto}.merchant-editor-link input:nth-of-type(2){grid-column:1 / -1;grid-row:2}}.merchant-detail{display:grid;gap:10px}.merchant-detail h3{margin:0}.merchant-detail h4{margin:14px 0 4px;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary)}.merchant-detail ul{margin:0;padding-left:18px}.merchant-detail-head{display:flex;align-items:center;gap:14px}.merchant-links{list-style:none;display:flex;flex-wrap:wrap;gap:4px 14px;padding:0!important;margin:4px 0 0}.merchant-links a,.merchant-detail a{color:var(--color-accent-strong);text-decoration:underline;text-underline-offset:2px}.merchant-links a:hover,.merchant-detail a:hover{color:var(--color-supporting-strong)}.merchant-chips{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0!important}.merchant-chips li{padding:2px 10px;border:1px solid var(--color-border-default);border-radius:999px;font-size:12px;background:var(--color-bg-subtle)}.merchant-notes{white-space:pre-wrap;color:var(--color-text-secondary)}.merchant-mix{list-style:none;padding:0!important;display:grid;gap:4px}.merchant-mix li{display:flex;justify-content:space-between;gap:12px}.merchant-trend{width:100%;max-width:420px;height:auto}.merchant-detail .tx-table{width:100%}.merchant-editor .form-hint,.tx-dialog .form-hint{color:var(--color-text-secondary)}@media(max-width:720px){.settings-layout{grid-template-columns:minmax(0,1fr);gap:16px}.settings-sidebar{position:static;display:flex;flex-wrap:wrap;gap:2px 4px;padding:8px}.settings-sidebar .settings-group-label{flex:0 0 100%;margin-top:4px;padding:10px 8px 4px}.settings-sidebar .settings-link{flex:0 0 auto;padding:8px 12px;border-left:0;border-bottom:2px solid transparent}.settings-sidebar .settings-link.active{border-bottom-color:var(--crimson)}}.forecast-loans-table{width:100%;border-collapse:collapse;font-size:13px;margin:4px 0 8px}.forecast-loans-table th,.forecast-loans-table td{padding:6px 16px;text-align:left;border-bottom:1px solid var(--color-border-default);vertical-align:top}.forecast-loans-table thead th{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);font-weight:600}.forecast-loans-table tbody th{font-weight:600}.forecast-loans-table tfoot th,.forecast-loans-table tfoot td{font-weight:600;border-bottom:0}.forecast-loans-table td{font-variant-numeric:tabular-nums}.forecast-loans-table tr.is-pending th{font-weight:500}.loan-delta{margin-left:6px;font-size:12px;font-weight:600;white-space:nowrap}.loan-delta.is-sooner{color:var(--color-positive)}.loan-delta.is-later{color:var(--color-negative)}.forecast-loans-note{padding:0 16px 12px;font-size:11px}.loan-preview{min-height:1.4em;margin:2px 0 8px;font-size:13px;line-height:1.4}@media(max-width:600px){.forecast-loans-table,.forecast-loans-table tbody,.forecast-loans-table tfoot{display:block}.forecast-loans-table thead{display:none}.forecast-loans-table tr{display:block;padding:8px 16px;border-bottom:1px solid var(--color-border-default)}.forecast-loans-table th,.forecast-loans-table td{display:block;padding:2px 0;border:0}.forecast-loans-table td:before{content:attr(data-label);color:var(--color-text-secondary);font-size:11px;margin-right:8px}.forecast-loans-table td:empty{display:none}}.goal-payoff-timeline{margin:8px 0 4px;font-size:12px}.goal-payoff-track{position:relative;height:6px;border-radius:3px;background:var(--color-bg-subtle);margin:6px 0}.goal-payoff-gap{position:absolute;top:0;bottom:0;border-radius:3px}.goal-payoff-timeline.is-on-time .goal-payoff-gap{background:var(--color-positive);opacity:.45}.goal-payoff-timeline.is-late .goal-payoff-gap{background:var(--color-warning);opacity:.6}.goal-payoff-marker{position:absolute;top:-4px;width:2px;height:14px;transform:translate(-1px)}.goal-payoff-marker.is-target{background:var(--color-text-primary)}.goal-payoff-marker.is-payoff{background:var(--color-accent)}.goal-payoff-labels{display:flex;justify-content:space-between;gap:12px;color:var(--color-text-secondary)}.goal-payoff-key{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:6px;vertical-align:middle}.goal-payoff-key.is-target{background:var(--color-text-primary)}.goal-payoff-key.is-payoff{background:var(--color-accent)}.goal-payoff-gap-text{margin-top:2px;font-weight:600}.goal-payoff-timeline.is-on-time .goal-payoff-gap-text{color:var(--color-positive)}.goal-payoff-timeline.is-late .goal-payoff-gap-text{color:var(--color-text-primary)}.merchant-trend .bar-out{fill:var(--color-accent)}.merchant-trend .bar-in{fill:var(--color-positive)}.merchant-trend-legend{font-size:12px;margin:4px 0 0}.merchant-trend-legend .key-out{color:var(--color-accent)}.merchant-trend-legend .key-in{color:var(--color-positive)}.rule-flow p{margin:0 0 10px;line-height:1.5}.rule-flow-hint{font-size:12px;color:var(--color-text-secondary)}.rule-choices{min-width:0;margin:16px 0 0;padding:0;border:0;display:grid;gap:8px}.rule-choices legend{padding:0;margin-bottom:8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary)}.rule-choice{display:grid;grid-template-columns:16px minmax(0,1fr);column-gap:12px;row-gap:2px;align-items:start;padding:10px 12px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.rule-choice:has(input:checked){border-color:var(--color-accent);background:var(--color-accent-soft)}.rule-choice:has(input:focus-visible){outline:var(--focus-ring);outline-offset:2px}.modal .rule-choice input[type=radio],.modal .rule-choice input[type=radio]:focus{grid-row:1 / span 2;width:16px;height:16px;margin:2px 0 0;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:none;accent-color:var(--color-accent);cursor:pointer}.rule-choice{cursor:pointer;transition:border-color .15s}.rule-choice:hover{border-color:var(--color-border-strong)}.rule-choice:has(input:checked):hover{border-color:var(--color-accent)}.rule-choice-title{grid-column:2;font-weight:600;color:var(--color-text-primary)}.rule-choice-hint{grid-column:2;font-size:12px;line-height:1.4;color:var(--color-text-secondary)}.merchant-trend .bar-refund{fill:var(--color-text-secondary);opacity:.6}.merchant-trend-legend .key-refund{color:var(--color-text-secondary)}.merchant-trend .trend-hit{fill:transparent}.merchant-trend .trend-axis{font-size:9px;fill:var(--color-text-secondary);font-family:var(--font-mono)}.merchant-trend .trend-axis.is-current{font-weight:700;fill:var(--color-text-primary)}.merchant-trend .trend-scale{font-size:9px;fill:var(--color-text-secondary);font-family:var(--font-mono)}.merchant-trend .trend-baseline{stroke:var(--color-border-default);stroke-width:1}.merchant-count .amt-pos,.merchant-review-item .amt-pos,.merchant-detail span.amt-pos{color:var(--color-money-positive);font-family:var(--font-mono)}.merchant-count .amt-neg,.merchant-review-item .amt-neg,.merchant-detail span.amt-neg{color:var(--color-money-negative);font-family:var(--font-mono)}.merchant-chip-income{display:inline-block;margin-left:6px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:600;line-height:18px;vertical-align:middle;color:var(--color-positive);background:var(--color-positive-soft)}.stab-header-actions{display:flex;flex-wrap:wrap;gap:8px}.merchant-list-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.merchant-list-head .settings-card-label{margin-bottom:0}.merchant-merge-hint{font-size:12px;margin:-4px 0 8px}.merchant-row .merchant-select{flex:0 0 auto;width:18px;height:18px;margin:0;accent-color:var(--color-accent);cursor:pointer}.merchant-row.is-selected{box-shadow:inset 3px 0 0 var(--color-accent)}.merchant-select-bar{position:sticky;bottom:12px;z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding:10px 14px;border:1px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:0 6px 20px #00000040}.merchant-select-bar[hidden]{display:none}.merchant-select-bar #m-sel-count{font-weight:600;margin-right:auto}.merchant-suggestions{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:8px}.merchant-suggestion{padding:6px 12px;border:1px dashed var(--color-accent);border-radius:999px;background:var(--color-accent-soft);color:var(--color-text-primary);font-size:12px;cursor:pointer}.merchant-suggestion:hover{border-style:solid}@media(max-width:560px){.merchant-row{flex-wrap:wrap}.merchant-row .merch-cell{flex:1 1 calc(100% - 40px);min-width:0}.merchant-select-bar{position:fixed;left:8px;right:8px;bottom:8px;margin:0}}.mpick-input{width:100%}.mpick-list{list-style:none;margin:4px 0 0;padding:4px;max-height:240px;overflow-y:auto;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-surface-raised)}.mpick-list[hidden]{display:none}.mpick-opt{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-primary)}.mpick-opt:hover,.mpick-opt.is-active{background:var(--color-accent-soft)}.mpick-opt[aria-selected=true] .mpick-name{font-weight:600}.mpick-opt[aria-selected=true]:after{content:"✓";margin-left:auto;color:var(--color-accent)}.mpick-none{color:var(--color-text-secondary);font-style:italic}.mpick-create{color:var(--color-accent-strong);margin-top:4px;padding-top:10px;border-top:1px solid var(--color-border-default);border-radius:0 0 var(--radius-md) var(--radius-md)}.mpick-opt.is-active{outline:2px solid var(--color-accent-strong);outline-offset:-2px}.mpick-note{margin:6px 0 0;font-size:12px;line-height:1.5;color:var(--color-text-secondary)}.mpick-note .cyber-btn-sm{margin-left:6px}.mpick-unavailable .mpick-input{opacity:.8}.mpick-sub{color:var(--color-text-secondary);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mpick-empty,.mpick-more{padding:6px 8px;font-size:12px;color:var(--color-text-secondary)}.mpick .merch-avatar{flex:0 0 auto}.tx-bulk-group{margin:0 0 12px;padding:12px 14px 2px;border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.tx-bulk-group legend{padding:0 6px;font-size:12px;color:var(--color-text-secondary)}.tx-bank-desc span{font-family:var(--font-mono);color:var(--color-text-primary)}.merchant-sibling-offer{display:grid;gap:10px}.merchant-sibling-offer p{margin:0;line-height:1.5}.merchant-sibling-sample{margin:0;padding-left:18px;font-family:var(--font-mono);font-size:12px;color:var(--color-text-secondary)}.merge-dialog{display:grid;gap:12px}.merge-dialog p{margin:0;line-height:1.5}.merge-dialog fieldset{min-width:0;margin:0;padding:12px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);display:grid;gap:8px}.merge-dialog legend{padding:0 4px;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary)}.merge-keep-option,.merge-check{display:flex;align-items:center;gap:8px;cursor:pointer}.modal .merge-dialog input[type=radio],.modal .merge-dialog input[type=checkbox]{flex:0 0 auto;width:16px;height:16px;margin:0;padding:0;box-shadow:none;accent-color:var(--color-accent)}.merge-keep-existing,.merge-keep-new{display:grid;gap:6px;padding-left:24px}.merge-keep-existing[hidden],.merge-keep-new[hidden],.merge-rule-fields[hidden]{display:none}.merge-keep-existing select{min-height:120px}.merge-rule-fields{display:grid;grid-template-columns:minmax(0,12em) minmax(0,1fr);gap:8px}@media(max-width:560px){.merge-rule-fields{grid-template-columns:minmax(0,1fr)}}.merge-preview{padding:10px 12px;border-radius:var(--radius-md);background:var(--color-bg-subtle)}.merge-rule-preview{font-size:12px}.rules-merchant-matching{margin-top:24px}.rules-merchant-matching.money-panel{margin-top:14px;padding:18px 20px}.rules-merchant-matching p{font-size:12px;line-height:1.5}.rules-ledger header,.rules-suggest header,.rules-merchant-matching header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.rules-ledger-actions{display:flex;gap:8px;flex-wrap:wrap}.rules-toolbar{display:flex;flex-direction:column;gap:10px;margin:14px 0 12px}.rules-toolbar .settings-input{max-width:360px}.rules-filter-chips,.chip-row{display:flex;flex-wrap:wrap;gap:6px}.rules-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.rule-card{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:start;gap:10px 12px;padding:12px 14px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.rule-card.is-disabled{opacity:.62}.rule-card.rule-dragging{opacity:.35}.rule-sentence{margin:4px 0 0;color:var(--color-text-primary);font-size:13px;line-height:1.5}.rule-row-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px;font-size:11px}.rule-priority{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:var(--color-text-muted)}.rule-overlap{margin:6px 0 0;font-size:12px}.rule-overlap-banner{margin:0 0 10px}.rules-empty{display:grid;gap:14px;padding:24px 8px 12px;text-align:left}.rules-empty h3{margin:0 0 6px}.rules-examples{display:grid;gap:8px}.rules-example{display:grid;gap:4px;text-align:left;padding:12px 14px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-raised);color:var(--color-text-primary);cursor:pointer}.rules-example:hover,.rules-example:focus-visible{border-color:var(--color-accent);outline:var(--focus-ring)}.rules-example span{font-size:12px;color:var(--color-text-secondary)}.rules-suggest-list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:10px}.rules-suggest-list li{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.rules-suggest-list p{margin:0;font-size:13px;line-height:1.45}.rule-modal-kicker{margin:0;color:var(--color-text-secondary);font-size:13px;line-height:1.4}.rule-live-sentence{margin:0 0 14px;padding:0;border:0;background:transparent;color:var(--color-text-secondary);font-size:13px;line-height:1.5}.rule-modal-body .rule-section>legend{padding:0;margin-bottom:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent)}.rule-when-row,.rule-match-row,.rule-group-row,.rule-add-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.rule-when-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.rule-when-in{color:var(--color-text-secondary);font-size:13px}.rule-when-line .cyber-select{width:auto;flex:0 1 auto;min-width:8.5rem}.rule-match-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px;color:var(--color-text-secondary);font-size:13px}.rule-match-line .cyber-select{width:auto;min-width:5.5rem;flex:0 0 auto}.rule-flat{display:grid;gap:8px;margin:0 0 10px}.rule-add-set{background:none;border:0;padding:4px 2px;cursor:pointer;color:var(--color-text-secondary);font:inherit;font-size:13px;text-decoration:underline;text-underline-offset:3px}.rule-add-set:hover,.rule-add-set:focus-visible{color:var(--color-text-primary)}.rule-chip-field{display:flex;flex-wrap:wrap;align-items:center;gap:6px;flex:1;min-width:0}.rule-chip-field .cd-mpick,.rule-chip-field .cyber-select{flex:1;min-width:8rem}.rule-chip{min-height:28px;padding:2px 8px}.rule-money,.rule-between{display:flex;align-items:center;gap:4px;flex:1;min-width:0}.rule-money-affix{color:var(--color-text-secondary);font-family:var(--font-mono)}.rule-row-x{flex:0 0 auto;width:32px;min-width:32px;height:32px;border:0;background:transparent;cursor:pointer;color:var(--color-text-secondary);font-size:18px;line-height:1;border-radius:var(--radius-sm)}.rule-row-x:hover,.rule-row-x:focus-visible{color:var(--color-negative);background:var(--color-negative-soft, transparent)}.rule-row-x:disabled{opacity:.35;cursor:not-allowed}.rule-test{border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:12px 14px}.rule-test-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.rule-test-head .money-eyebrow{margin:0}.rule-test-count{margin:0;font-size:14px;color:var(--color-text-secondary)}.rule-test-count.muted{color:var(--color-text-secondary)}.rule-test-count.is-ok{color:var(--color-positive);display:flex;align-items:center;gap:8px}.rule-test-check{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--color-positive);color:var(--color-bg-canvas);font-size:12px;font-weight:700}.rule-test-hit{margin-top:10px;padding-top:10px;border-top:1px solid var(--color-border-default)}.rule-test-hit-top .merch-avatar{flex:0 0 auto}.rule-test-hit-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.rule-test-hit-who{display:flex;align-items:center;gap:8px;min-width:0}.rule-test-change,.rule-test-why{margin:4px 0 0;font-size:12px;color:var(--color-text-secondary)}.rule-details{margin:12px 0;border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:0 12px}.rule-details>summary{cursor:pointer;list-style:none;padding:12px 0;color:var(--color-text-primary);font-size:14px;display:flex;justify-content:space-between}.rule-details>summary::-webkit-details-marker{display:none}.rule-details>summary:after{content:"›";color:var(--color-text-secondary)}.rule-details[open]>summary:after{content:"‹"}.rule-apply-existing{margin:8px 0 0}.rule-tree{display:flex;flex-direction:column;gap:0;margin:12px 0}.rule-tree-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px;color:var(--color-text-secondary);font-size:13px}.rule-seg{display:inline-flex;border:1px solid var(--color-border-strong);border-radius:999px;background:var(--color-bg-subtle);overflow:hidden;flex-shrink:0}.rule-seg .chip-btn{border:0;border-radius:0;min-width:44px;min-height:32px;margin:0;background:transparent}.rule-seg .chip-btn.active{background:var(--color-surface-raised);color:var(--color-text-primary)}.rule-tree-group,.rule-tree-join{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 12px;align-items:stretch}.rule-tree-rail{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:72px;padding:8px 0}.rule-tree-rail:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--color-border-strong);transform:translate(-50%)}.rule-tree-rail .rule-seg{position:relative;z-index:1}.rule-tree-card{position:relative;padding:40px 12px 12px;margin:8px 0}.rule-group-del{position:absolute;top:8px;right:8px;width:auto;min-width:32px;padding:4px 8px;margin:0}.rule-field-hint{grid-column:1 / -1;margin:0;font-size:11px;color:var(--color-text-secondary);line-height:1.35}.rule-id-checks{display:flex;flex-wrap:wrap;gap:6px 10px;border:0;margin:0;padding:0;flex:1;min-width:0}.rule-check{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-primary)}.rule-tree-rows{display:grid;gap:8px}.rule-tree-foot{margin-top:10px}.rule-tree-join{min-height:48px}.rule-tree-join-label{margin:0;align-self:center;color:var(--color-text-secondary);font-size:13px}.rule-act-list{display:grid;gap:8px;margin:10px 0}.rule-modal-body .rule-row-edit{display:grid;grid-template-columns:minmax(8rem,.9fr) minmax(7rem,.7fr) minmax(10rem,1.4fr);align-items:center;gap:8px;margin:0}.rule-act-list .rule-row-edit{grid-template-columns:minmax(10rem,.8fr) minmax(10rem,1.4fr)}.rule-modal-body .rule-row-edit>input,.rule-modal-body .rule-row-edit>select,.rule-modal-body .rule-row-value,.rule-modal-body .rule-row-value input,.rule-modal-body .rule-row-value select{width:100%;min-width:0}.rule-row-value{display:flex;align-items:center;gap:6px;min-width:0}.rule-modal-body .rule-row-edit .cd-del,.rule-modal-body .rule-row-edit .ac-del,.rule-modal-body .rule-row-edit .rule-row-x{width:auto;min-width:32px;justify-self:end;flex-shrink:0}.rule-between{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.rule-between input{min-width:0;flex:1}.rule-id-pick{display:grid;gap:6px;flex:1;min-width:0}.rule-chips{display:flex;flex-wrap:wrap;gap:6px}.rule-regex{font-family:var(--font-mono)}.toggle-row{display:flex;align-items:center;gap:10px}.rule-overlap-live{color:var(--color-text-primary);background:var(--color-warning-soft);padding:8px 10px;border-radius:var(--radius-md);font-size:12px;margin:0}.rules-none{padding:16px 4px}.rule-preview .money-data-table td:last-child,.rule-row-edit input[type=number]{font-family:var(--font-mono)}.rule-card-actions{display:flex;gap:4px;flex-wrap:wrap}@media(max-width:720px){.rule-card{grid-template-columns:auto auto minmax(0,1fr)}.rule-card-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap}.rules-ledger-actions{width:100%}.rule-modal-body .rule-row-edit{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.rule-modal-body .rule-row-edit .cd-field{grid-column:1;grid-row:1}.rule-modal-body .rule-row-edit .cd-op{grid-column:2;grid-row:1}.rule-modal-body .rule-row-value{grid-column:1 / -1;grid-row:2;display:flex;align-items:center;gap:6px;min-width:0}.rule-modal-body .rule-row-value>input,.rule-modal-body .rule-row-value>select,.rule-modal-body .rule-row-value>.rule-between,.rule-modal-body .rule-row-value>.rule-id-pick,.rule-modal-body .rule-row-value>.rule-chip-field,.rule-modal-body .rule-row-value>.rule-money,.rule-modal-body .rule-row-value>.rule-id-checks,.rule-modal-body .rule-row-value>.rule-noval{flex:1;min-width:0}.rule-modal-body .rule-row-edit .cd-del,.rule-modal-body .rule-row-edit .ac-del,.rule-modal-body .rule-row-edit .rule-row-x{flex:0 0 auto;width:auto}.rule-act-list .rule-row-edit{grid-template-columns:minmax(0,1fr)}.rule-act-list .rule-row-edit .ac-type{grid-column:1}.rule-modal-body .rule-row-edit input{min-width:0}}@media(max-width:480px){.rule-modal-body .rule-section{padding:8px}.rule-tree-group,.rule-tree-join{grid-template-columns:minmax(0,1fr);gap:6px}.rule-tree-rail{min-width:0;padding:0;flex-direction:row;justify-content:flex-start}.rule-tree-rail:before{content:none;display:none}.rule-tree-join .rule-tree-rail{display:none}.rule-tree-join-label{font-size:12px;padding:2px 0 6px}.rule-tree-card,.rule-tree-card.money-panel{width:100%;margin:0;padding:8px;display:flex;flex-direction:column;gap:8px}.rule-group-del{position:static;align-self:flex-end;margin:0 0 10px}.rule-tree-foot{margin-top:0}.rule-modal-body .rule-row-edit>select,.rule-modal-body .rule-row-value select,.rule-modal-body .rule-row-value input{padding:6px 8px;font-size:11px;letter-spacing:0}}.merchant-match-list{list-style:none;margin:6px 0;padding:0;display:grid;gap:6px}.merchant-match-list li{display:flex;align-items:center;justify-content:space-between;gap:8px}.merchant-match-add{display:grid;grid-template-columns:minmax(0,12em) minmax(0,1fr) auto;gap:8px}@media(max-width:560px){.merchant-match-add{grid-template-columns:minmax(0,1fr)}}.last-sync-follow-up[data-tone=warn]{color:var(--color-warning)}.last-sync-follow-up[data-tone=err]{color:var(--color-negative)}.csv-wiz-span{grid-column:1 / -1}.csv-wizard [hidden]{display:none!important}.csv-wiz-link{color:var(--platinum);text-decoration:underline}.csv-wiz-warn{background:#c49a3c14;border:1px solid rgba(196,154,60,.35);color:var(--text-2);padding:8px 12px;border-radius:2px;font-family:IBM Plex Mono,monospace;font-size:11px;line-height:1.5;margin:6px 0 0}.csv-wiz-out{color:var(--negative)}.csv-wiz-in{color:var(--positive)}.csv-wiz-muted{color:var(--text-2)}.csv-wiz-panel{background:var(--surface-2);border:1px solid rgba(253,246,236,.08);border-radius:2px;padding:12px 14px}.csv-wiz-choices td{vertical-align:middle;white-space:normal}.csv-wiz-choices select{min-width:140px}.csv-wiz-notes{margin:14px 0 0;padding-left:18px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-muted);line-height:1.6}.csv-wiz-left{text-align:left}.csv-wiz-recent{list-style:none;margin:0;padding:0;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-2)}.csv-wiz-recent li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid rgba(253,246,236,.06)}.csv-wiz-errors p{margin:4px 0 8px}.csv-wiz-warn p{margin:0 0 4px}.csv-wiz-count{color:var(--text-2)}.csv-wiz-pager{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:8px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-muted)}.csv-wiz-body .csv-wiz-footer{position:sticky;bottom:-20px;margin:16px -22px -20px;z-index:2}@media(max-width:640px){.csv-wiz-grid{grid-template-columns:1fr}.csv-wiz-stats{grid-template-columns:repeat(2,1fr)}.csv-wiz-stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.csv-wiz-stack,.csv-wiz-stack tbody,.csv-wiz-stack tr,.csv-wiz-stack td{display:block;width:100%}.csv-wiz-stack tr{border:1px solid rgba(253,246,236,.1);border-radius:2px;margin-bottom:8px;padding:6px 8px}.csv-wiz-stack td{border:0;white-space:normal;padding:3px 0}.csv-wiz-stack td:before{content:attr(data-label);display:block;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}}#business-body{display:flex;flex-direction:column;gap:16px}#business-body button.link{margin:0;padding:4px 0;min-height:24px;min-width:24px;border:0;background:transparent;color:var(--color-supporting, #74B4FF);font:inherit;text-align:inherit}#business-body button.link:hover{color:var(--color-text-primary, #fff);text-decoration:underline}.biz-review-list,.biz-entity-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.biz-review-list li,.biz-entity-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--border, #262629)}.biz-review-list small,.biz-entity-list span,.biz-profile-summary span{color:var(--color-text-secondary, #A6A6AD);font-size:12px}.biz-review-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.biz-profile-summary{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0}.biz-pct{display:flex;flex-direction:column;gap:8px}.biz-pct select,.biz-pct input{width:100%}.biz-pct-custom{display:grid;grid-template-columns:1fr 1fr;gap:8px}.biz-pct-custom[hidden]{display:none}.biz-pct-total,.biz-pct-error{grid-column:1 / -1;font-size:12px}.biz-pct-error,.bc-cat-note.is-warn{color:var(--color-negative)}.biz-pct-custom input[aria-invalid=true]{border-color:var(--color-negative)}.biz-pct-custom label{display:grid;gap:4px;color:var(--color-text-secondary);font-size:12px}.biz-pct-preview{display:flex;flex-direction:column;gap:6px}.biz-pct-preview-text{color:var(--color-text-secondary, #A6A6AD);font-size:12px}.biz-pct-preview-bar{display:block;height:4px;background:var(--border, #262629);border-radius:2px;overflow:hidden}.biz-pct-preview-biz{display:block;height:100%;width:0;background:var(--color-supporting, #74B4FF)}.biz-coverage{display:flex;flex-direction:column;gap:6px;min-width:180px}.biz-coverage-track{height:6px;width:100%;margin:0;padding:0;border:0;background:var(--border, #262629);border-radius:3px;overflow:hidden;cursor:pointer;text-align:left}.biz-coverage-fill{display:block;height:100%;background:var(--crimson-dim, rgba(47,134,255,.14));box-shadow:inset -2px 0 0 var(--crimson-hi, #54A1FF);pointer-events:none}.biz-coverage-meta{color:var(--color-text-secondary, #A6A6AD);font-size:12px}.biz-review-chip{align-self:flex-start;margin-top:8px}.biz-review-cat{font-size:12px;color:var(--color-text-secondary, #A6A6AD)}.chip-btn[data-map-categories]{min-height:24px;min-width:24px;padding:4px 10px}.biz-fallback-badge{display:inline-block;margin-left:8px;padding:2px 8px;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary, #A6A6AD);border:1px solid var(--border, #262629)}.biz-asset-schedule-row td{padding-top:0}.biz-asset-schedule-row .money-data-table{margin:0 0 8px}.biz-table-wrap{width:100%;overflow-x:auto;overscroll-behavior-x:contain}[data-biz-depreciation] .cyber-btn-sm,[data-biz-mileage] .cyber-btn-sm{min-height:36px}.biz-asset-form .form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.biz-kind-chips{display:flex;flex-wrap:wrap;gap:8px}.biz-kind-chips .chip-btn{min-height:36px;padding:6px 12px;font-size:11px}.biz-purchase-results{list-style:none;margin:6px 0 0;padding:0;max-height:220px;overflow:auto;border:1px solid var(--border, #262629);background:var(--bg-2, #121214)}.biz-purchase-results li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-bottom:1px solid var(--border, #262629);font-size:12px}.biz-purchase-results li:last-child{border-bottom:0}.biz-dep-preview{margin:4px 0 12px;padding:10px 12px;border:1px solid var(--crimson-rim, rgba(47,134,255,.4));background:var(--crimson-dim, rgba(47,134,255,.1));color:var(--color-text-primary, #f2f2f4);font-family:var(--font-mono, "IBM Plex Mono", monospace);font-size:12px;line-height:1.45}.biz-tax-elections{margin:8px 0 0;padding:8px 12px 12px;border:1px solid var(--border, #262629);background:var(--bg-2, #121214)}.biz-tax-elections summary{cursor:pointer;font-family:var(--font-mono, "IBM Plex Mono", monospace);font-size:12px;letter-spacing:.04em;color:var(--color-text-primary, #f2f2f4);padding:4px 0}.biz-tax-elections[open] summary{margin-bottom:10px}.biz-elect-check{display:flex;align-items:center;gap:8px;margin:8px 0 0}@media(max-width:720px){.biz-asset-form .form-row-2{grid-template-columns:1fr}[data-biz-depreciation] .money-data-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[data-biz-depreciation] .money-data-table,[data-biz-depreciation] .money-data-table tbody{display:block;width:100%}[data-biz-depreciation] .money-data-table tr[data-asset-id]{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;padding:12px 0;border-bottom:1px solid var(--color-border-subtle, #262629)}[data-biz-depreciation] .money-data-table tr[data-asset-id]>*{display:flex;justify-content:space-between;gap:8px;padding:0;border:0;text-align:right}[data-biz-depreciation] .money-data-table tr[data-asset-id]>*:before{content:attr(data-label);color:var(--color-text-secondary, #A6A6AD);font-family:var(--font-mono, "IBM Plex Mono", monospace);font-size:9px;letter-spacing:.08em;text-transform:uppercase;text-align:left}[data-biz-depreciation] .money-data-table [data-label="This year"]{order:1}[data-biz-depreciation] .money-data-table [data-label=Remaining]{order:2}[data-biz-depreciation] .money-data-table [data-label=Asset]{order:3;grid-column:1 / -1}[data-biz-depreciation] .money-data-table [data-label="In service"]{order:4}[data-biz-depreciation] .money-data-table [data-label=Method]{order:5}[data-biz-depreciation] .money-data-table [data-label=Elections]{order:6}[data-biz-depreciation] .money-data-table [data-label=Actions]{order:7;grid-column:1 / -1}[data-biz-depreciation] .biz-asset-schedule-row,[data-biz-depreciation] .biz-asset-schedule-row td{display:block;width:100%}}.biz-quarter--past{color:var(--text-muted, #8b8b90)}.biz-quarter--next{box-shadow:inset 0 0 0 1px var(--crimson-rim, rgba(47,134,255,.4))}.doc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.doc-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px}.modal.doc-viewer-modal{display:flex;flex-direction:column;max-width:min(1100px,100%);width:min(1100px,calc(100vw - 32px));height:auto;min-height:min(70vh,calc(100vh - 40px));max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px)}.modal.doc-viewer-modal h2{overflow-wrap:anywhere;word-break:break-word;line-height:1.35}.modal.doc-viewer-modal .modal-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.modal.doc-viewer-modal.doc-viewer-expanded,dialog.modal-shell.doc-viewer-shell-expanded .modal.doc-viewer-modal{max-width:none;width:100%;min-height:0;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;border-radius:0}dialog.modal-shell.doc-viewer-shell-expanded{padding:0;align-items:stretch;width:100%;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh}.modal.doc-viewer-modal .modal-actions{justify-content:flex-start}.doc-viewer{display:flex;flex-direction:column;align-items:stretch;gap:10px;flex:1 1 auto;min-height:0}.doc-viewer-stage{flex:1 1 auto;min-height:240px;display:flex;flex-direction:column;overflow:hidden;background:var(--surface, #1C1C20);border:1px solid var(--border, #2E3340)}.doc-viewer-img{display:block;width:100%;flex:1 1 auto;min-height:240px;max-height:none;object-fit:contain;background:var(--surface, #1C1C20)}.doc-viewer-frame{display:block;width:100%;flex:1 1 auto;min-height:240px;height:100%;border:0;background:var(--surface, #1C1C20)}.doc-viewer-loading{margin:auto;padding:24px 16px;text-align:center;color:var(--color-text-secondary);font-size:13px}.doc-viewer-fallback{margin:auto;max-width:28rem;padding:24px 16px;text-align:center}.doc-viewer-fallback-title{margin:0 0 8px;color:var(--text);font-size:15px;font-weight:600}.doc-viewer-fallback-detail{margin:0 0 16px;color:var(--color-text-secondary);font-size:13px;line-height:1.45}.doc-viewer-meta{text-align:center}.doc-viewer-filename{margin:0 0 6px;color:var(--text);font-size:13px;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}.doc-viewer-caption{margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:4px 12px;text-align:center;color:var(--color-text-secondary);font-size:12px;line-height:1.45}.doc-viewer-caption>span,.doc-viewer-caption>time{min-width:0}.doc-viewer-delete{display:inline-block;margin:10px auto 0;padding:4px 8px;border:0;background:transparent;color:var(--color-negative);font-size:12px;line-height:1.4;text-decoration:underline;cursor:pointer}.doc-viewer-delete:hover,.doc-viewer-delete:focus-visible{color:var(--negative)}@media(max-width:390px){.modal.doc-viewer-modal{padding:14px}.modal.doc-viewer-modal .modal-actions{gap:8px}.doc-viewer-frame{min-height:50vh;height:50vh}.modal.doc-viewer-modal.doc-viewer-expanded .doc-viewer-frame{min-height:0;height:100%}}.doc-upload-list{margin-top:12px}.cat-schedule-c{margin-left:8px;font-size:10px;color:var(--text-muted, #8b8b90)}.cat-row--unmapped{box-shadow:inset 3px 0 0 var(--crimson-hi, #54A1FF)}.cat-badge--unmapped{color:var(--crimson-hi, #c45c5c);border-color:var(--crimson-hi, #c45c5c);letter-spacing:.8px;flex-shrink:0}.cat-row--unmapped .btn-group{flex-shrink:0}.cat-unmapped-banner{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.cat-unmapped-banner [data-unmapped-only]{margin-left:auto}@media(max-width:520px){.biz-review-list li,.biz-entity-list li{grid-template-columns:1fr}.cat-row{flex-wrap:wrap}.cat-unmapped-banner [data-unmapped-only]{margin-left:0}}.mo-legacy{margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-bg-subtle)}.mo-legacy h4{margin:0 0 4px;color:var(--color-text-primary);font-size:14px}.mo-legacy p{margin:0;color:var(--color-text-secondary);font-size:13px;line-height:1.5}.mo-legacy-list{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;list-style:none}.mo-legacy-list li{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.mo-legacy-month{min-width:6rem;margin-right:auto;color:var(--color-text-primary);font-size:14px}.mo-legacy-all{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)!important}.mo-legacy .cyber-btn-sm{min-height:44px}.mo-cols>summary,.mo-pc-more>summary{min-height:44px;display:flex;align-items:center;color:var(--color-text-secondary);font-size:13px;cursor:pointer}.mo-cols>summary:focus-visible,.mo-pc-more>summary:focus-visible{outline:var(--focus-ring);outline-offset:2px}.mo-cols-list{display:flex;flex-wrap:wrap;gap:var(--space-1);padding-bottom:var(--space-2)}.mo-pc-more{margin-top:var(--space-2)}.mo-arrange-btn{display:none;min-height:44px;margin-bottom:var(--space-2);padding:0 14px;border:1px solid var(--color-border-default);border-radius:12px;background:transparent;color:var(--color-text-secondary);font:inherit;cursor:pointer}.mo-arrange-btn[aria-pressed=true]{border-color:var(--color-accent);color:var(--color-text-primary)}.mo-arrange-btn:focus-visible{outline:var(--focus-ring);outline-offset:2px}@media(max-width:719px){.mo-arrange-btn{display:inline-flex;align-items:center}.mo-th-cat,.mo-td-cat{min-width:136px;width:136px;max-width:136px}.mo-td-cat{overflow:hidden;text-overflow:ellipsis}.mo-wrap:not(.mo-arranging) .mo-move,.mo-wrap:not(.mo-arranging) .mo-drag-handle{display:none}.mo-wrap.mo-arranging .mo-th-cat,.mo-wrap.mo-arranging .mo-td-cat{min-width:260px;width:260px;max-width:none}}@media(pointer:coarse){.mo-nudge{min-width:44px;min-height:44px}}.mo-pc-sumrow:active{background:var(--color-bg-subtle)}@media(prefers-reduced-motion:no-preference){.mo-q-card,.mo-mpill,.mo-phone-step,.mo-nudge,.mo-sections-btn,.mo-arrange-btn{transition:transform .12s ease-out}button.mo-q-card:active,.mo-mpill:active,.mo-phone-step:not(:disabled):active,.mo-nudge:active,.mo-sections-btn:active,.mo-arrange-btn:active{transform:scale(.97)}}.mo-pc-steps{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0 0 var(--space-3);padding:0;list-style:none}.mo-pc-step{display:inline-flex;align-items:center;gap:8px;color:var(--color-text-muted);font-size:13px}.mo-pc-step-n{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid var(--color-border-default);border-radius:50%;font-family:var(--font-mono);font-size:11px}.mo-pc-step.is-done{color:var(--color-text-secondary)}.mo-pc-step.is-done .mo-pc-step-n{border-color:var(--positive);color:var(--positive)}.mo-pc-step.is-current{color:var(--color-text-primary)}.mo-pc-step.is-current .mo-pc-step-n{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-bg-canvas)}.mo-pc-summary{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:var(--space-3) 0 0}.mo-pc-summary:focus-visible{outline:var(--focus-ring);outline-offset:2px}.mo-pc-chip{padding:2px 8px;border:1px solid var(--color-border-default);border-radius:999px;color:var(--color-text-secondary);font-size:12px;white-space:nowrap}.mo-pc-chip.is-todo{border-color:var(--color-accent);color:var(--color-text-primary)}.mo-pc-chip.is-ok{border-color:var(--positive);color:var(--positive)}.mo-pc-edit{margin-left:4px;color:var(--color-text-muted);font-size:12px}.mo-pc-saved{margin:var(--space-3) 0 0}.mo-arrange-hint{margin:0 0 var(--space-2);color:var(--color-text-secondary);font-size:13px}@media(min-width:720px){.mo-arrange-hint{display:none}}.mo-pc-gen{margin:0 0 var(--space-3)}.mo-pc-gen>summary{display:flex;align-items:center;min-height:44px;color:var(--color-text-secondary);font-size:14px;cursor:pointer}.mo-pc-gen>summary:focus-visible{outline:var(--focus-ring);outline-offset:2px}.mo-pc-gen[open]>summary{color:var(--color-text-primary)}.mo-pc-list{min-width:0;margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-subtle);border-radius:16px;background:var(--color-bg-canvas)}.mo-pc-list .mo-pc-cards{margin-top:var(--space-3)}.mo-pc-list .mo-pc-summary{margin-top:0}.mo-pc-card{min-width:0;background:var(--color-bg-canvas)}.mo-pc-card.owner-1{background:linear-gradient(90deg,var(--color-accent-soft),transparent 55%),var(--color-bg-canvas)}.mo-pc-card.owner-2{background:linear-gradient(90deg,var(--color-warning-soft),transparent 55%),var(--color-bg-canvas)}.mo-pc-card.has-owner .mo-pc-who{display:inline-flex;align-items:center;gap:6px;font-weight:600}.mo-pc-card.has-owner .mo-pc-who:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}.mo-pc-card.owner-1 .mo-pc-who{color:var(--color-accent-strong)}.mo-pc-card.owner-2 .mo-pc-who{color:var(--color-warning)}.mo-pc-sumrow{flex-wrap:wrap}.mo-pc-card .mo-pc-when{min-width:4.5rem}.mo-pc-filter{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);margin-bottom:var(--space-3)}.mo-pc-filter-k{margin-right:var(--space-1);color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.mo-pc-filter .chip-btn{min-height:36px}@media(max-width:899px){.mo-pc-filter .chip-btn{min-height:44px}}.mo-pc-filter .chip-btn.active{border-color:var(--color-border-strong);background:var(--color-bg-emphasis);color:var(--color-text-primary)}.modal.mo-pc-scrim{width:min(720px,calc(100vw - 24px));max-width:min(720px,calc(100vw - 24px));max-height:calc(100dvh - 24px);display:flex;flex-direction:column;overflow:hidden;padding:0;box-sizing:border-box;border:1px solid var(--color-border-default);border-radius:16px;background:var(--color-bg-canvas)}.modal.mo-pc-scrim>h2{flex:0 0 auto;margin:0;padding:20px 24px 14px;border-bottom:1px solid var(--color-border-subtle)}.modal.mo-pc-scrim>.modal-error{flex:0 0 auto;margin:12px 24px 0}.modal.mo-pc-scrim>.modal-body{flex:1 1 0%;min-height:0;overflow-y:auto;overflow-x:hidden;padding:16px 24px;overscroll-behavior:contain}.modal.mo-pc-scrim>.modal-actions{flex:0 0 auto;margin:0;padding:12px 24px;background:var(--color-bg-canvas);border-top:1px solid var(--color-border-subtle)}.modal.mo-pc-scrim>.modal-actions button:first-child:not(:last-child){margin-right:auto}.mo-pc-ed{display:flex;flex-direction:column;gap:var(--space-3)}.mo-pc-block{padding:14px 16px;border:1px solid var(--color-border-subtle);border-radius:12px;background:var(--color-bg-canvas)}.mo-pc-block h4{margin:0;color:var(--color-text-secondary);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.mo-pc-sub{margin:2px 0 0;color:var(--color-text-muted);font-size:12px}.mo-pc-block h4+.mo-pc-sub+.mo-pc-lines,.mo-pc-block h4+.mo-pc-sub+.mo-pc-grid{margin-top:12px}.mo-pc-grid,.mo-pc-lines{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.mo-pc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:479px){.mo-pc-grid{grid-template-columns:minmax(0,1fr)}}.modal.mo-pc-scrim input,.modal.mo-pc-scrim select{min-height:44px}.mo-pc-ed .mo-pc-more{margin-top:0}.mo-pc-ed .mo-pc-more[open]>summary{margin-bottom:var(--space-3)}.mo-pc-ed .mo-pc-more .mo-pc-block+.mo-pc-block{margin-top:var(--space-3)}.mo-pc-hint{margin:0}.modal.mo-pc-scrim .mo-pc-saved{flex:1 1 auto;align-self:center;margin:0 12px;color:var(--color-text-muted);font-size:12px;text-align:right}.csv-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.csv-wiz-step-btn{background:none;border:0;padding:0;min-height:24px;min-width:24px;font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--text-2);text-decoration:underline;cursor:pointer}.csv-drop{border:1px dashed rgba(253,246,236,.25);border-radius:2px;padding:14px;background:var(--surface-2)}.csv-drop[data-drag=true]{border-color:var(--platinum);border-style:solid}.csv-drop-btn{display:block;width:100%;min-height:56px;background:transparent;color:var(--text);border:0;font-family:IBM Plex Mono,monospace;font-size:13px;cursor:pointer}.csv-drop-btn:focus-visible,.csv-drop-status:focus-visible{outline:2px solid var(--platinum);outline-offset:2px}.csv-drop-status{margin:0;font-family:IBM Plex Mono,monospace;font-size:13px;color:var(--text)}.csv-drop-actions{display:flex;gap:8px;margin-top:8px}.csv-drop-error{margin:8px 0 0;color:var(--negative);font-family:IBM Plex Mono,monospace;font-size:12px}.csv-map{display:flex;flex-direction:column;gap:14px}.csv-map-row{border-bottom:1px solid rgba(253,246,236,.06);padding-bottom:12px}.csv-map-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:end}.csv-map-main .csv-wiz-lbl{grid-column:1 / -1;margin-bottom:0}.csv-map-status{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-2)}.csv-map-samples{margin-top:4px;font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--text-muted);overflow-wrap:anywhere}.csv-map-sub{margin-top:8px;display:block}.csv-map-opt{text-transform:none;letter-spacing:0}.csv-date-gate{border:1px solid rgba(196,154,60,.4);padding:10px 12px;border-radius:2px}.csv-date-gate:focus-visible{outline:2px solid var(--platinum)}[aria-invalid=true]{outline:2px solid var(--negative);outline-offset:1px}.csv-wiz-orig{margin-top:10px;font-family:IBM Plex Mono,monospace;font-size:11px}.csv-wiz-orig summary{cursor:pointer;min-height:24px}.csv-wiz-filter{border:0;padding:0;margin:12px 0;display:flex;gap:16px;align-items:center;flex-wrap:wrap}.csv-wiz-filter legend{font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);float:left;margin-right:12px}.csv-wiz-footer button{min-height:24px;min-width:24px}.csv-wiz-xform-scroll:focus-visible{outline:2px solid var(--platinum)}dialog.modal-shell.modal-shell--panel[open]{justify-content:flex-end;align-items:stretch;padding:0}dialog.modal-shell.modal-shell--panel::backdrop{background:#0009}.modal.tx-panel{--txp-accent: var(--color-accent);display:flex;flex-direction:column;max-width:480px;width:100%;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;padding:0;border:0;border-left:1px solid var(--color-border-default);border-radius:0;background:#000;animation:txp-in .18s ease-out}@keyframes txp-in{0%{transform:translate(24px);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.modal.tx-panel{animation:none}}.modal.tx-panel[data-tx-type=income]{--txp-accent: var(--color-positive)}.modal.tx-panel[data-tx-type=expense]{--txp-accent: var(--color-negative)}.modal.tx-panel[data-tx-type=payment]{--txp-accent: var(--color-warning)}@media(forced-colors:active){.txp-amount-display{color:CanvasText}}.modal.tx-panel h2{margin:0;padding:16px 20px;font-size:13px;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border-subtle)}.modal.tx-panel .modal-error{margin:12px 20px 0}.modal.tx-panel .modal-body{flex:1 1 0%;min-height:0;overflow-y:auto;padding:0 20px 20px;overscroll-behavior:contain}.modal.tx-panel .modal-actions{flex:0 0 auto;margin:0;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));background:#000;border-top:1px solid var(--color-border-subtle)}.modal.tx-panel .modal-actions button:nth-child(2){margin-right:auto}.txp-head{position:sticky;top:0;z-index:2;margin:0 -20px 16px;padding:18px 20px 14px;background:#000;border-bottom:1px solid var(--color-border-subtle)}.txp-amount-row{display:flex;align-items:baseline;gap:6px}.txp-sign{min-width:1ch;color:var(--txp-accent);font:600 34px var(--font-mono)}.modal.tx-panel input.txp-amount{flex:1 1 auto;width:100%;padding:0;border:0;border-bottom:1px dashed var(--color-border-default);border-radius:0;background:transparent;color:var(--txp-accent);font:600 34px var(--font-mono);letter-spacing:-.01em}.modal.tx-panel input.txp-amount:focus-visible{outline:none;border-bottom:1px solid var(--txp-accent)}.txp-meta{display:flex;align-items:center;gap:12px;margin-top:10px}.modal.tx-panel input.txp-date{width:auto;height:30px;padding:0 10px;border-radius:999px;font-size:12.5px}.txp-meta .form-hint{margin:0}.txp-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px 12px;margin-bottom:4px}.txp-chips .form-group{margin-bottom:8px}.modal.tx-panel .txp-chip{display:flex;width:100%;height:36px;padding:0 28px 0 12px;background:#0b0b0d}.modal.tx-panel .txp-chip select{width:100%;max-width:none;height:100%;padding:0;background:transparent;border:0;color:var(--color-text-primary)}.modal.tx-panel .txp-chip:has(select):after{top:16px}.modal.tx-panel .txp-chip:focus-within{border-color:var(--txp-accent)}.modal.tx-panel .txp-cat-btn{gap:8px;text-align:left;color:var(--color-text-primary);font-size:13px}.modal.tx-panel .txp-cat-btn:after{content:"";position:absolute;right:12px;top:16px;border:4px solid transparent;border-top-color:currentColor}.txp-card{margin:8px 0 14px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg, 8px);background:var(--color-bg-subtle)}.txp-card>summary{display:flex;align-items:center;gap:8px;padding:10px 14px;color:var(--color-text-secondary);font:500 12.5px var(--font-body);cursor:pointer;list-style:none}.txp-card>summary::-webkit-details-marker{display:none}.txp-card>summary:after{content:"";margin-left:auto;border:4px solid transparent;border-top-color:currentColor}.txp-card[open]>summary:after{transform:rotate(180deg)}.txp-card[open]>summary{color:var(--color-text-primary);border-bottom:1px solid var(--color-border-subtle)}.txp-card>:not(summary){margin-left:14px;margin-right:14px}.txp-card>.form-group:last-child{margin-bottom:12px}.txp-dot{width:7px;height:7px;border-radius:50%;background:var(--txp-accent)}@media(max-width:560px){.modal.tx-panel{max-width:none;border-left-width:0}.modal.tx-panel .modal-actions{flex-wrap:wrap;gap:8px}.modal.tx-panel .modal-actions button:last-child{order:-1;flex:1 0 100%}.modal.tx-panel .modal-actions button:nth-child(2){margin-right:0;margin-left:auto}}.txp-summary{color:var(--color-text-primary);font-weight:400}.txp-card[open]>summary .txp-summary{color:var(--color-text-secondary)}.modal.tx-panel .txp-head input.txp-amount{height:auto;padding:0 0 2px;border:0;border-bottom:1px dashed var(--color-border-default);border-radius:0;background:transparent;box-shadow:none;-moz-appearance:textfield;appearance:textfield}.modal.tx-panel input.txp-amount::-webkit-outer-spin-button,.modal.tx-panel input.txp-amount::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.txp-chips .form-label{white-space:nowrap}.txp-chips .form-label .form-hint{display:none}.txp-amount-display{color:var(--color-text-primary);font:600 34px var(--font-mono);letter-spacing:-.01em;white-space:nowrap}.txp-amount-display.amt-pos{color:var(--color-positive)}.modal.tx-panel .split-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;grid-template-areas:"title title del" "desc desc desc" "cat biz biz" "amt amt amt";gap:10px;padding:12px;margin-bottom:12px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg, 8px);background:#0b0b0d}.modal.tx-panel .split-f-biz{grid-area:biz}.modal.tx-panel .split-row-title{display:block;align-self:center;font:11px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary)}.modal.tx-panel .split-lbl{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;font:10px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary)}.modal.tx-panel .split-intro{margin:8px 0 0}.modal.tx-panel .txp-head .split-summary{margin-top:12px}.modal.tx-panel .split-remaining strong.positive{color:var(--color-positive)}.modal.tx-panel .split-actions{margin-bottom:8px}.txp-amount-display{font-size:clamp(22px,9vw,34px);max-width:100%;white-space:normal;overflow-wrap:anywhere}@media(max-height:560px){.modal.tx-panel .txp-head{position:static}}.txp-identity{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-secondary);font:12.5px var(--font-body)}.txp-type{margin:0 0 4px;padding:0;border:0;min-width:0}.txp-type legend{padding:0}.txp-seg{display:flex;border:1px solid var(--color-border-default);border-radius:var(--radius-lg, 8px);overflow:hidden}.txp-pill{position:relative;flex:1 1 0;min-width:0}.txp-pill input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.txp-pill span{display:flex;align-items:center;justify-content:center;height:38px;padding:0 6px;border-right:1px solid var(--color-border-subtle);color:var(--color-text-secondary);font:12.5px var(--font-body);white-space:nowrap}.txp-pill:last-child span{border-right:0}.txp-pill input:checked+span{background:var(--color-accent-soft);box-shadow:inset 0 -2px 0 var(--color-accent);color:var(--color-text-primary);font-weight:500}.txp-pill input:focus-visible+span{outline:2px solid var(--color-accent);outline-offset:-2px}.txp-type-note{margin:6px 0 12px;min-height:1.3em}.split-orig-lbl{color:var(--color-text-secondary);font:10px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}.modal.tx-panel .split-balance{display:grid;grid-template-columns:1fr auto;gap:10px 12px;align-items:center;margin-top:12px;padding:12px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg, 8px);background:#0b0b0d}.split-pill{grid-column:2;grid-row:1;justify-self:end;padding:4px 12px;border:1px solid var(--color-border-default);border-radius:999px;font:600 12px var(--font-body);color:var(--color-text-primary)}.split-pill[data-state=balanced]{border-color:var(--color-positive);color:var(--color-positive)}.split-pill[data-state=left],.split-pill[data-state=over],.split-pill[data-state=invalid]{border-color:var(--color-warning);color:var(--color-warning)}.split-bal-cells{grid-column:1;grid-row:1;display:flex;gap:24px;margin:0}.split-bal-cells dt{color:var(--color-text-secondary);font:10px var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.split-bal-cells dd{margin:2px 0 0;font:600 15px var(--font-mono)}.modal.tx-panel .split-balance .split-help{grid-column:1 / -1;font-size:11px;color:var(--color-text-secondary)}.modal.tx-panel .split-row{grid-template-columns:minmax(0,1fr) auto 44px;grid-template-areas:"title badge del" "cat cat cat" "amt amt amt" "more more more"}.modal.tx-panel .split-badge{grid-area:badge;align-self:center;font:11px var(--font-body);color:var(--color-text-secondary)}.modal.tx-panel .split-badge[data-state=ready]{color:var(--color-positive)}.modal.tx-panel .split-badge[data-state=error]{color:var(--color-negative)}.modal.tx-panel .split-f-cat{grid-area:cat}.modal.tx-panel .split-f-amt{grid-area:amt}.modal.tx-panel .split-more{grid-area:more}.modal.tx-panel .split-f-desc,.modal.tx-panel .split-f-biz{grid-area:auto}.split-more>summary{cursor:pointer;color:var(--color-text-secondary);font:12px var(--font-body);list-style:none}.split-more>summary::-webkit-details-marker{display:none}.split-more>summary:before{content:"▸"}.split-more[open]>summary:before{content:"▾"}.split-more-sum{color:var(--color-text-primary);margin-left:6px}.split-more-body{display:grid;gap:10px;margin-top:10px}.split-preview{min-height:1.3em;margin:6px 0 10px}.tx-filter-token{display:inline-flex;max-width:100%;border:1px solid var(--color-accent);border-radius:999px;background:var(--color-accent-soft)}.tx-filter-token .tx-fchip{border:0;background:transparent;border-radius:0}.tx-filter-token .tx-fchip-edit{min-width:0;border-radius:999px 0 0 999px;padding-right:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tx-filter-token .tx-fchip-remove{border-left:1px solid var(--color-border-default);border-radius:0 999px 999px 0;min-width:30px;padding-inline:7px}.tx-filter-token button:hover{background:var(--color-accent-soft)}.tx-range-heading,.tx-range-footer,.tx-calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.tx-range-heading strong{color:var(--color-text-primary);font-size:14px}.tx-range-fields{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:10px;margin:16px 0}.tx-range-fields label{display:grid;gap:6px}.tx-range-fields>span{padding-bottom:10px}.tx-custom-range .tx-range-fields input{width:100%;min-width:0;height:38px;color-scheme:dark}.tx-calendar-nav{padding-bottom:6px}.tx-calendar-nav input{width:170px;text-align:center;color-scheme:dark}.tx-calendars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.tx-calendar h3{margin:12px 0;font:600 12px var(--font-body);text-align:center;color:var(--color-text-primary)}.tx-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.tx-calendar-grid .tx-weekday{text-align:center;font-size:10px;padding:5px 0}.tx-calendar-day{min-width:0;height:32px;padding:0;border:1px solid transparent;border-radius:8px;background:none;color:var(--color-text-primary);cursor:pointer;font:12px var(--font-body)}.tx-calendar-day:hover{background:var(--color-bg-emphasis)}.tx-calendar-day.is-in-range{background:var(--color-accent-soft);border-radius:3px}.tx-calendar-day.is-selected{background:var(--color-accent);color:#fff;font-weight:700}.tx-calendar-day[aria-current=date]{border-color:var(--color-accent)}.tx-calendar-day:focus-visible{outline:2px solid var(--color-accent-strong);outline-offset:1px}.tx-range-preview{margin:4px 0;color:var(--color-text-primary);font-size:12px}.tx-bulk-preview{margin:0 0 16px;padding:12px 14px;border:1px solid var(--color-border-default);border-left:3px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-bg-canvas);color:var(--color-text-primary);font-size:12px}.tx-bulk-preview ul{display:flex;flex-wrap:wrap;gap:5px 18px;margin:8px 0 0;padding-left:18px;color:var(--color-text-secondary)}.tx-bulk-preview p{margin:8px 0 0;color:var(--color-text-secondary)}.tx-row-menu-list[data-menu-fallback-open=true]{z-index:10000;max-height:calc(100dvh - 16px);max-width:calc(100vw - 16px);overflow:auto}.tx-range-footer{margin-top:16px;padding-top:14px;border-top:1px solid var(--color-border-default)}.tx-range-footer .tx-chip{flex-shrink:0}.tx-filters{padding:20px;border-radius:16px;background:var(--color-surface-raised)}.tx-filter-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.tx-filter-heading strong{color:var(--color-text-primary);font-size:14px}.tx-filter-heading p{margin:5px 0 0;font-size:12px;color:var(--color-text-secondary)}.tx-filters .tx-view-row{padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--color-border-default)}.tx-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px}.tx-filters .filter-col{gap:7px;min-width:0}.tx-filters select,.tx-filters input[type=number]{width:100%;min-width:0;height:38px;padding:0 12px;border:1px solid var(--color-border-default);border-radius:10px;background:var(--color-bg-canvas);color:var(--color-text-primary);font:13px var(--font-body)}.tx-filters input::placeholder{color:var(--color-text-secondary)}.tx-range-inputs{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px}.tx-filters .form-hint{color:var(--color-text-secondary);line-height:1.5}.tx-filters .filter-col--check{grid-column:1 / -1}.tx-filters input[type=checkbox],.tx-bulk-all input{accent-color:var(--color-accent)}.tx-bulk-bar{gap:10px;border-radius:12px;border:1px solid var(--color-border-default);border-left:3px solid var(--color-accent);background:var(--color-surface-raised);box-shadow:0 8px 24px #0003}#tx-selcount{font-weight:600;color:var(--color-text-primary)}#tx-clear-selection{font-size:12px;margin-right:auto}.tx-bulk-bar .cyber-btn-sm{border-radius:999px;min-height:34px;font:500 12px var(--font-body);letter-spacing:0;text-transform:none}#tx-bulk-edit{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-text-primary)}#tx-select-matching{font-size:12px;white-space:nowrap}#tx-select-matching:disabled{color:var(--color-text-secondary);cursor:default;text-decoration:none}.tx-bulk-count{color:var(--color-text-primary);font:600 30px var(--font-mono)}.tx-bulk-count span{display:block;margin-top:5px;font:13px var(--font-body);color:var(--color-text-secondary)}.tx-bulk-editor .txp-head{position:static}.tx-bulk-section{margin:0 0 18px;padding-bottom:6px;border-bottom:1px solid var(--color-border-default)}.tx-bulk-section:last-child{border-bottom:0}.tx-bulk-section h3{margin:18px 0 14px;color:var(--color-text-primary);font:600 13px var(--font-body)}.tx-bulk-editor .form-hint{display:block;line-height:1.5;margin-top:6px}.tx-bulk-editor select+textarea,.tx-bulk-editor select+input{margin-top:8px}.modal.tx-bulk-panel .modal-actions button:last-child{margin-left:auto;margin-right:0}.tx-row-menu-list[popover]{position:fixed;inset:auto;margin:0;display:none;max-height:calc(100dvh - 16px);max-width:calc(100vw - 16px);overflow:auto}.tx-row-menu-list[popover]:popover-open{display:flex}@media(max-width:600px){.tx-custom-range{padding:14px;max-height:70dvh}.tx-calendars{grid-template-columns:minmax(0,1fr);gap:8px}.tx-calendar-day{height:36px}.tx-range-footer{align-items:flex-start}.tx-filters{padding:16px}.tx-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.filter-col--range{grid-column:1 / -1}.tx-bulk-bar .tx-bulk-all span{flex:initial}.tx-bulk-bar #tx-clear-selection{margin-left:auto;margin-right:0}}
/*# sourceMappingURL=app-J232HIHO.css.map */
