:root{--bg: #f4f5f7;--surface: #ffffff;--surface-2: #fafbfc;--sidebar: #ffffff;--sidebar-2: #eceff4;--sidebar-text: #3f4654;--sidebar-strong: #1a1d26;--sidebar-muted: #8a90a2;--sidebar-line: #e2e5ec;--text: #1a1d26;--muted: #8a90a2;--border: #e7e9ef;--btn-edge: #ccd1dd;--grid: #eef0f4;--accent: #6366f1;--pos: #10b981;--neg: #ef4444;--warn-bg: rgba(245, 158, 11, .12);--warn-line: rgba(245, 158, 11, .35);--warn-text: #92400e;--danger-text: #b91c1c;--radius: 14px;--sidebar-w: 268px}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0f1117;--surface: #191c24;--surface-2: #1f232d;--sidebar: #14161d;--sidebar-2: #1c1f28;--sidebar-text: #cbd0de;--sidebar-strong: #ffffff;--sidebar-muted: #6f7688;--sidebar-line: #262a34;--text: #e8eaf0;--muted: #8a90a2;--border: #262a34;--btn-edge: #3b4252;--grid: #23272f;--warn-text: #fcd34d;--danger-text: #fca5a5}}:root[data-theme=dark]{--bg: #0f1117;--surface: #191c24;--surface-2: #1f232d;--sidebar: #14161d;--sidebar-2: #1c1f28;--sidebar-text: #cbd0de;--sidebar-strong: #ffffff;--sidebar-muted: #6f7688;--sidebar-line: #262a34;--text: #e8eaf0;--muted: #8a90a2;--border: #262a34;--btn-edge: #3b4252;--grid: #23272f;--warn-text: #fcd34d;--danger-text: #fca5a5}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.app{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;transition:grid-template-columns .18s ease}@media (min-width: 901px){.app.nav-hidden{grid-template-columns:0 1fr}.app.nav-hidden .sidebar{padding-left:0;padding-right:0;overflow:hidden;border-right-color:transparent}.app.nav-hidden .sidebar>*{visibility:hidden}.app.nav-hidden .sidebar{border-right-width:0}.app.nav-hidden .content{padding-left:64px}}@media (prefers-reduced-motion: reduce){.app{transition:none}}.btn-elide{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.restore-confirm{margin-top:12px;padding:14px 16px;border:1px solid var(--warn-line);background:var(--warn-bg);border-radius:12px}.restore-confirm p{margin:0 0 8px;font-size:13.5px}.restore-confirm .hint{margin-bottom:12px}.lock-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.lock-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:28px 26px 22px;display:flex;flex-direction:column;gap:12px;box-shadow:0 12px 40px #080a102e}.lock-mark{width:40px;height:40px;border-radius:12px;font-size:18px}.lock-card h1{font-size:19px;margin:6px 0 0}.lock-card .sub{margin:0 0 4px}.lock-submit{width:100%;justify-content:center;margin-top:4px}.lock-error{color:var(--danger-text, #dc2626);font-size:13px;margin:0}.lock-note{margin:6px 0 0;padding-top:12px;border-top:1px solid var(--border);line-height:1.5}.profile-chip{flex:1;min-width:0;display:flex;align-items:center;gap:9px;padding:8px 9px;background:none;border:1px solid transparent;border-radius:10px;cursor:pointer;text-align:left;color:var(--sidebar-text)}.profile-chip:hover,.profile-chip.active{background:#ffffff14;border-color:var(--sidebar-line)}.profile-avatar{width:28px;height:28px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-weight:700;font-size:11px}.profile-text{display:flex;flex-direction:column;min-width:0;line-height:1.25}.profile-text strong{font-size:12.5px;color:var(--sidebar-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-sub{font-size:10.5px;color:var(--sidebar-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-gear{flex-shrink:0;color:var(--sidebar-muted);font-size:13px}.lock-now{flex-shrink:0;padding:0 10px}.entry-tag{margin-left:6px;font-size:10px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);border:1px solid var(--border);border-radius:20px;padding:1px 6px;white-space:nowrap}.tx tr.is-adding>td{background:var(--raise, rgba(99, 102, 241, .06))}.tx tr.is-adding input,.tx tr.is-adding select{width:100%}.tx tr.is-adding input.num{text-align:right}.add-row-actions{display:flex;align-items:center;gap:10px;padding:4px 0 2px}.add-row-actions .hint{flex:1;margin:0}.nav-collapse{margin-left:auto;width:26px;height:26px;flex-shrink:0;display:grid;place-items:center;background:none;border:none;cursor:pointer;border-radius:7px;color:var(--sidebar-muted);font-size:15px;line-height:1}.nav-collapse:hover{background:#ffffff1a;color:var(--sidebar-strong)}.nav-collapse:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.nav-reveal{position:fixed;top:14px;left:14px;z-index:45;width:34px;height:34px;display:grid;place-items:center;background:var(--sidebar);color:var(--sidebar-strong);border:1px solid var(--sidebar-line);border-radius:9px;cursor:pointer;font-size:15px;line-height:1;box-shadow:0 2px 10px #080a1047}.nav-reveal:hover{background:var(--sidebar-hover, rgba(255, 255, 255, .08))}.nav-reveal:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width: 900px){.nav-collapse,.nav-reveal{display:none}}.topbar{display:none;position:fixed;top:0;left:0;right:0;z-index:30;align-items:center;gap:12px;height:52px;padding:0 14px;background:var(--sidebar);color:var(--sidebar-strong);border-bottom:1px solid rgba(255,255,255,.08)}.topbar-title{flex:1;font-weight:650;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-worth{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0;line-height:1.15}.topbar-worth-label{font-size:8.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--sidebar-muted);font-weight:600}.topbar-worth strong{font-size:15px;color:var(--sidebar-strong);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.hamburger{width:34px;height:34px;flex-shrink:0;display:grid;align-content:center;gap:4px;justify-items:stretch;background:none;border:none;cursor:pointer;padding:7px}.hamburger span{display:block;height:2px;border-radius:2px;background:var(--sidebar-text)}.sidebar{background:var(--sidebar);color:var(--sidebar-text);padding:20px 14px;display:flex;flex-direction:column;gap:6px;position:sticky;top:0;height:100vh;overflow-y:auto;border-right:1px solid var(--sidebar-line)}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:17px;color:var(--sidebar-strong);padding:6px 8px 14px}.brand-mark{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:grid;place-items:center;color:#fff;font-weight:800}.nav{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.nav-item{display:flex;align-items:center;gap:10px;background:none;border:none;cursor:pointer;color:var(--sidebar-text);font-size:14px;font-weight:500;padding:9px 10px;border-radius:9px;text-align:left;font-family:inherit}.nav-item:hover{background:var(--sidebar-2)}.nav-item.active{background:var(--accent);color:#fff}.nav-ico{font-size:15px;opacity:.9}.acct-group{margin-top:12px}.acct-groupby{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 10px 6px;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--sidebar-muted);font-weight:600}.groupby-opts{display:flex;gap:1px;padding:1px;border-radius:6px;background:color-mix(in srgb,currentColor 14%,transparent)}.groupby-opts button{background:none;border:0;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--sidebar-muted);padding:2px 7px;border-radius:5px}.groupby-opts button:hover{color:var(--sidebar-text)}.groupby-opts button.on{background:var(--sidebar-2);color:var(--sidebar-strong)}.groupby-opts button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.acct-group-head{display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--sidebar-muted);padding:4px 10px;font-weight:600}.acct{width:100%;display:flex;align-items:center;gap:9px;background:none;border:none;cursor:pointer;color:var(--sidebar-text);padding:8px 10px;border-radius:9px;font-family:inherit;font-size:13.5px;text-align:left}.acct:hover{background:var(--sidebar-2)}.acct.active{background:var(--sidebar-2);box-shadow:inset 2px 0 0 var(--accent)}.acct-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.acct-num{flex:none;font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.02em;border-radius:4px;padding:1px 5px;color:inherit;background:color-mix(in srgb,currentColor 16%,transparent)}.acct.active .acct-num{background:color-mix(in srgb,currentColor 26%,transparent)}.page-head h1 .head-num{display:inline-block;margin-right:10px;font-size:.62em;font-weight:600;font-variant-numeric:tabular-nums;vertical-align:middle;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:2px 7px}.former-inline{color:var(--muted);font-variant-numeric:tabular-nums}.acct-note{margin:-2px 0 16px;padding:10px 14px;max-width:720px;font-size:13px;line-height:1.55;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:8px}.former-nums{margin:2px 0 10px}.former-nums .former-head{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}.former-nums ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:5px}.former-nums li{display:flex;align-items:center;gap:9px;font-size:12.5px}.former-nums code{font-variant-numeric:tabular-nums;background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:2px 7px}.former-nums .muted{font-size:11.5px}.former-nums .linkish{margin-left:auto;font-size:11.5px}.acct-bal{font-variant-numeric:tabular-nums;font-size:12.5px;color:var(--sidebar-muted)}.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.neg{color:#f87171!important}.sidebar-foot{margin-top:auto;display:flex;flex-direction:column;gap:8px}.net-worth-chip{display:flex;flex-direction:column;gap:2px;background:var(--sidebar-2);border-radius:11px;padding:12px 14px}.btn:disabled{opacity:.4;cursor:not-allowed;filter:saturate(.5)}.inline-cat{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;color:var(--text);border:1px solid transparent;border-radius:7px;padding:3px 20px 3px 7px;font-size:12px;max-width:175px;cursor:pointer;text-overflow:ellipsis;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:right 9px center,right 5px center;background-size:4px 4px,4px 4px;background-repeat:no-repeat}.inline-cat:hover:not(:disabled){background-color:var(--grid);border-color:var(--border)}.inline-cat:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.inline-cat:disabled{opacity:.5;cursor:not-allowed;background-image:none}.inline-cat.is-unset{color:var(--muted);font-style:italic}.stmt-table td{vertical-align:middle}.stmt-table tbody tr.day-start>td{border-top:1px solid var(--border);padding-top:18px}.stmt-table tbody tr.day-start:first-child>td{border-top:0}.stmt-table td.date-cell{font-weight:600}.stmt-table td.date-cell .date-on.repeat{font-weight:400;color:var(--muted)}.stmt-table tbody tr{cursor:pointer}.stmt-table tbody tr.is-picked{background:#6366f11c}.stmt-table tbody tr.is-picked:hover{background:#6366f126}.stmt-table .type-cell{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}.cat-icon{display:inline-block;margin-right:6px;font-size:13px;line-height:1}.cat-icon.lg{font-size:17px;margin:0}.icon-trigger{display:flex;align-items:center;justify-content:space-between;gap:6px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:6px 9px;cursor:pointer;color:var(--text)}.icon-trigger:hover{border-color:#6366f180}.icon-trigger .chev{font-size:9px;color:var(--muted)}.icon-grid{margin-top:8px;padding:10px;border-radius:10px;background:var(--surface-2);border:1px solid var(--border);display:flex;flex-direction:column;gap:9px;max-height:230px;overflow-y:auto}.icon-group-label{font-size:9.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.icon-row{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.icon-choice{width:28px;height:28px;border-radius:7px;font-size:15px;line-height:1;background:transparent;border:1px solid transparent;cursor:pointer}.icon-choice:hover{background:#7f7f7f29}.icon-choice.on{border-color:var(--accent);background:#6366f133}.noise-tag{font-size:9px;text-transform:uppercase;letter-spacing:.05em;padding:1px 5px;border-radius:4px;margin-left:7px;font-weight:700;background:var(--warn-bg);color:var(--warn-text);cursor:help}.acct-tabs{display:flex;gap:4px;margin:-4px 0 16px;border-bottom:1px solid var(--border)}.acct-tab{display:flex;align-items:center;gap:7px;background:none;border:0;cursor:pointer;font:inherit;color:var(--muted);font-size:13.5px;font-weight:600;padding:9px 14px;border-bottom:2px solid transparent;margin-bottom:-1px}.acct-tab:hover{color:var(--text)}.acct-tab.on{color:var(--accent);border-bottom-color:var(--accent)}.tab-n{font-size:10.5px;font-weight:700;padding:1px 6px;border-radius:999px;background:var(--grid);color:var(--muted)}.acct-tab.on .tab-n{background:#6366f12e;color:var(--accent)}.embedded-head{display:flex;justify-content:flex-end;margin-bottom:14px}.cat-bars{display:flex;flex-direction:column;gap:9px;margin-top:4px}.cat-bar{display:grid;grid-template-columns:165px 1fr 90px;align-items:center;gap:12px}.cat-bar-name{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat-bar-track{height:8px;border-radius:999px;background:var(--grid);overflow:hidden}.cat-bar-fill{height:100%;border-radius:999px;min-width:2px}.cat-bar-value{text-align:right;font-size:12.5px;font-variant-numeric:tabular-nums;color:var(--muted)}@media (max-width: 640px){.cat-bar{grid-template-columns:1fr 70px}.cat-bar-track{grid-column:1 / -1}}.gap-chip{font-size:9px;text-transform:uppercase;letter-spacing:.05em;padding:1px 5px;border-radius:4px;margin-left:8px;font-weight:700;background:var(--warn-bg);color:var(--warn-text);vertical-align:middle;cursor:help}table.tx th.sortable{padding:0}table.tx th.sortable button{display:flex;align-items:center;gap:5px;width:100%;background:none;border:0;cursor:pointer;font:inherit;color:inherit;padding:10px 12px;text-align:inherit}table.tx th.sortable.right button{justify-content:flex-end}table.tx th.sortable.center button{justify-content:center}table.tx th.sortable .sort-caret{font-size:8px;opacity:.3}table.tx th.sortable.sorted .sort-caret{opacity:1;color:var(--accent)}table.tx th.sortable.sorted button{color:var(--text)}.stmt-table td.num,.stmt-table th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.stmt-table{table-layout:fixed}.stmt-table .date-col{width:108px}.stmt-table .cat-col{width:178px}.stmt-table .type-col{width:78px}.stmt-table .amt-col{width:104px}.stmt-table .payee-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stmt-table td.date-cell .date-on{display:block;white-space:nowrap}.stmt-table tr.is-adding input,.stmt-table tr.is-adding select{width:100%;min-width:0}.stmt-table tr.is-cleared .tick-col input{opacity:.55}.stmt-table tr.is-cleared:hover .tick-col input,.stmt-table tr.is-picked .tick-col input{opacity:1}.acct-split .split-rows{display:flex;flex-direction:column;gap:8px;margin-top:12px}.split-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 12px;border-radius:10px;background:var(--surface-2);border:1px solid var(--border)}.split-what{flex:1;display:flex;flex-direction:column;gap:2px;min-width:200px}.split-what strong{font-size:13.5px}.matched-tag{margin-left:8px;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--pos);background:color-mix(in srgb,var(--pos) 15%,transparent)}.split-what .muted{font-size:11.5px;font-variant-numeric:tabular-nums}.slice-label{font-size:10.5px;font-weight:600;fill:var(--text);font-variant-numeric:tabular-nums}.row-views{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0 8px}.row-views .segmented{flex-wrap:wrap}.row-views .seg-count{font-size:10px;opacity:.6;margin-left:3px;font-variant-numeric:tabular-nums}.hint.centered{text-align:center;padding:14px 0;margin:0}.btn.subtle-wide{width:100%;margin-top:6px;background:none;border:1px dashed var(--border);color:var(--muted);font-size:12px;padding:8px}.btn.subtle-wide:hover{color:var(--text);border-color:var(--accent)}.stmt-table tfoot td{padding:4px 0 0}.bulk-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 14px;margin-bottom:10px;border-radius:10px;background:#6366f121;border:1px solid rgba(99,102,241,.35)}.bulk-bar strong{flex:1;font-size:12.5px}table.tx .tick-col{width:34px;text-align:center}table.tx tr.is-selected{background:#6366f117}.stmt-actions .spacer{flex:1}.confirm-row{border:1px solid rgba(248,113,113,.35);border-radius:10px;background:#f8717112;padding:12px 14px;margin:4px 0 12px}.confirm-row p{margin:0 0 4px;font-size:12.5px;color:var(--text)}.confirm-row .stmt-actions{margin-bottom:0}.import-jump{margin:10px 0 0}.linkish{background:none;border:0;padding:0;cursor:pointer;color:#a5b4fc;font:inherit;text-decoration:underline}.linkish:hover{color:#c7cbff}.empty-clear{border:1px dashed var(--border);border-radius:11px;padding:16px;margin-top:6px}.empty-clear>p:first-child{margin:0 0 4px;font-size:13px;line-height:1.55}.empty-clear .hint{margin:0}.stmt-offer{border-color:#6366f159}.stmt-offer .scope-opt{font-size:13px}.offer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px;margin:14px 0 4px}.offer-grid label{display:flex;flex-direction:column;gap:5px}.offer-grid label>span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.offer-grid .hint{margin:0;font-size:11px}.offer-facts{display:flex;gap:26px;flex-wrap:wrap;margin:12px 0 0;font-variant-numeric:tabular-nums}.offer-facts>div{display:flex;flex-direction:column;gap:3px}.offer-facts dt{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.offer-facts dd{margin:0;font-size:13px;font-weight:600}.tagline{font-size:9px;text-transform:uppercase;letter-spacing:.05em;margin-left:7px;padding:1px 5px;border-radius:4px;background:#6366f133;color:#a5b4fc;font-weight:700}.notice-bar{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding:10px 14px;border-radius:10px;background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--warn-text);font-size:12.5px}.notice-bar span{flex:1}.stmt-years{display:flex;flex-direction:column;gap:20px}.stmt-year{display:flex;flex-direction:column;gap:10px}.year-head{display:flex;align-items:center;gap:9px;flex-wrap:wrap;width:100%;padding:0 2px 7px;cursor:pointer;text-align:left;background:none;border:0;border-bottom:1px solid var(--border);color:var(--text)}.year-head .year-mark{color:var(--muted);font-size:11px;width:11px}.year-label{font-size:15px;font-weight:800;letter-spacing:.01em;font-variant-numeric:tabular-nums}.year-head:hover .year-label{color:var(--accent)}.year-count{font-size:11.5px;color:var(--muted);font-weight:600;flex:1}.stmt-list{display:flex;flex-direction:column;gap:12px}.stmt{padding:0;overflow:hidden;border-left:3px solid transparent}.stmt.done{border-left-color:var(--pos)}.stmt.ready{border-left-color:#6366f1}.stmt.off{border-left-color:#f59e0b}.stmt-head{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;-webkit-user-select:none;user-select:none}.stmt-head:hover{background:#ffffff05}.disclose{background:none;border:0;color:var(--muted);font-size:13px;cursor:pointer;padding:0;width:14px}.stmt-when{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.stmt-when strong{font-variant-numeric:tabular-nums;font-size:13.5px}.stmt-when .muted{font-size:11.5px;color:var(--muted)}.pill{font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap;font-variant-numeric:tabular-nums}.pill.ok{background:#10b9812e;color:#6ee7b7}.pill.ready{background:#6366f12e;color:#a5b4fc}.pill.off{background:var(--warn-bg);color:var(--warn-text)}.ocr-offer{margin-top:12px}.ocr-offer .hint{margin:8px 0 0}.ocr-bar{width:100%;height:6px;margin-top:10px}.plan-found{border-color:#6366f159}.plan-found-row{margin:8px 0 0;font-size:12.5px;line-height:1.6}.scan-plans{margin:12px 0 4px}.plan-more{font-size:11.5px;margin:4px 0 0}.plan-history{margin:10px 0 4px;padding:12px 0 0;border-top:1px solid var(--border)}.plan-history h4{margin:14px 0 4px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.plan-history h4:first-child{margin-top:0}.plan-table{max-width:440px}.plan-table td,.plan-table th{padding:3px 8px 3px 0;font-size:12px}.scan-plans .hint{margin-top:6px}.scan-all{margin-top:8px;font-size:11.5px;color:var(--muted)}.plan-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-top:14px}.plan-split>div{display:flex;flex-direction:column;gap:2px}.plan-split strong{font-size:19px;font-variant-numeric:tabular-nums}.plan-split .muted{font-size:11px}.plan-split-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.plan{padding:0;overflow:hidden;border-left:3px solid #6366f1}.plan.done{border-left-color:var(--pos);opacity:.82}.plan-head{display:flex;align-items:center;gap:12px;padding:13px 16px}.plan-what{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.plan-what strong{font-size:13.5px}.plan-what .muted{font-size:11.5px;font-variant-numeric:tabular-nums}.plan-body{padding:0 16px 14px;border-top:1px solid var(--border)}.plan-body .bar{margin:12px 0}.plan-math{max-width:380px}.tag-input{position:relative}.tag-input-box{display:flex;flex-wrap:wrap;gap:5px;align-items:center;min-height:34px;padding:5px 8px;cursor:text;background:var(--surface-2);border:1px solid var(--border);border-radius:9px}.tag-input-box:focus-within{border-color:var(--accent)}.tag-input-box input{flex:1;min-width:90px;border:0;background:none;outline:none;color:var(--text);font-size:12.5px;padding:2px 0}.tag-chip.editable{display:inline-flex;align-items:center;gap:3px}.tag-chip.editable button{background:none;border:0;cursor:pointer;padding:0 1px;color:inherit;opacity:.6;font-size:13px;line-height:1}.tag-chip.editable button:hover{opacity:1;color:var(--danger-text)}.tag-suggest{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 4px);margin:0;padding:4px;list-style:none;max-height:220px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 10px 28px #00000047}.tag-suggest button{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:6px 9px;border:0;border-radius:7px;cursor:pointer;background:none;color:var(--text);font-size:12.5px;text-align:left}.tag-suggest button.is-active{background:#6366f129}.tag-suggest em{font-style:normal;font-size:11px;color:var(--muted)}.tag-warn{margin:5px 0 0;color:var(--warn-text)}.trip{padding:0;overflow:hidden}.trip-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:100%;padding:13px 16px;cursor:pointer;text-align:left;background:none;border:0;color:var(--text)}.trip-head:hover{background:#ffffff05}.trip-name{font-weight:800;font-size:14px}.trip-when{flex:1;font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}.trip-total{font-weight:800;font-variant-numeric:tabular-nums}.trip-body{padding:0 16px 14px;border-top:1px solid var(--border)}.trip-table{margin-top:10px}.trip-table tfoot td{border-top:2px solid var(--border);padding-top:7px}.prior-imports{margin:6px 0 0;padding-left:18px;font-size:12.5px;line-height:1.65}.prior-imports li{font-variant-numeric:tabular-nums}.batch-card .hint{margin:8px 0 0}.batch-list{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}.batch-list li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:5px 8px;border-radius:7px;font-size:12.5px;font-variant-numeric:tabular-nums}.batch-list li.is-current{background:#6366f11a}.batch-list .batch-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.batch-list .muted{font-size:11.5px;color:var(--muted)}.batch-next{margin-top:12px}.stmt-source{font-size:11.5px;color:var(--muted);margin:0 0 12px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.stmt-source code{font-size:11px;background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:1px 5px}.stmt-source .src-sep{opacity:.5}.stmt-source .linkish{font-size:11.5px}.stmt-source .linkish.subtle{color:var(--muted)}.stmt-source .linkish.subtle:hover{color:var(--danger-text)}.stmt-source .src-error{color:var(--warn-text)}.doc-dock{position:fixed;top:0;right:0;bottom:0;z-index:40;width:var(--doc-w, clamp(360px, 30vw, 640px));display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--border);box-shadow:-14px 0 36px #00000042}.doc-grip{position:absolute;top:0;bottom:0;left:-5px;width:11px;z-index:1;cursor:col-resize;background:none;border:0;padding:0;touch-action:none}.doc-grip:after{content:"";position:absolute;top:0;bottom:0;left:5px;width:3px;background:var(--accent);opacity:0;transition:opacity .12s ease}.doc-grip:hover:after,.doc-grip:focus-visible:after,body.doc-resizing .doc-grip:after{opacity:.9}.doc-grip:focus-visible{outline:none}body.doc-resizing{-webkit-user-select:none;user-select:none}body.doc-resizing *{cursor:col-resize!important}body.doc-resizing .doc-dock iframe{pointer-events:none}.doc-dock-head{display:flex;align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid var(--border);flex:none}.doc-dock-what{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.doc-dock-what strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-dock-what .muted{font-size:11px;font-variant-numeric:tabular-nums}.doc-dock iframe{flex:1;width:100%;border:0;background:#fff}@media (min-width: 1100px){body.doc-docked .content{padding-right:calc(var(--doc-w, clamp(360px, 30vw, 640px)) + 32px)}}@media (max-width: 1099px){.doc-dock{width:100%}.doc-grip{display:none}}.stmt-body{padding:0 16px 16px;border-top:1px solid var(--border)}.stmt-math{display:grid;grid-template-columns:1fr auto;gap:0;margin:14px 0;font-variant-numeric:tabular-nums;max-width:340px}.stmt-math>div{display:contents}.stmt-math dt{color:var(--muted);font-size:12.5px;padding:5px 0}.stmt-math dd{text-align:right;font-size:12.5px;padding:5px 0;margin:0}.stmt-math .sep dt,.stmt-math .sep dd{border-top:1px solid var(--border)}.stmt-math .total dt,.stmt-math .total dd{border-top:2px solid var(--border);font-weight:800;padding-top:7px}.stmt-math .total.ok dd{color:var(--pos)}.stmt-math .total.off dd{color:var(--warn-text)}.stmt-actions{display:flex;gap:8px;align-items:center;margin:12px 0;flex-wrap:wrap}.stmt-actions .grow{flex:1;margin:0}.btn.danger{color:var(--danger-text);border-color:#f8717159}.stmt-table .tick-col{width:34px;text-align:center}.stmt-table tr.is-cleared{background:#10b9810f}.stmt-table tr.is-early td{opacity:.78}.early-tag{font-size:9px;text-transform:uppercase;letter-spacing:.06em;padding:1px 5px;border-radius:4px;margin-left:6px;background:#94a3b82e;color:var(--muted);font-weight:700}.warn-row{background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--warn-text);padding:9px 12px;border-radius:9px;font-size:12.5px;margin:12px 0}.stmt-form .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin:14px 0}.stmt-form label{display:flex;flex-direction:column;gap:5px}.stmt-form label>span{font-size:11.5px;color:var(--muted);font-weight:600}.stmt-form input[readonly]{opacity:.65;cursor:not-allowed}.head-actions{display:flex;gap:8px;align-items:center}@media (max-width: 720px){.stmt-math{max-width:none}.head-actions{width:100%}.head-actions .input{flex:1;min-width:0}}.env-switch{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:11px;background:var(--sidebar-2);border:1px solid transparent}.env-switch.env-live{border-color:#10b98173}.env-label{font-size:9.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--sidebar-muted);font-weight:700}.env-seg{width:100%}.env-seg button{flex:1;padding:5px 8px;font-size:11.5px}.env-switch.env-live .env-seg button.on{background:var(--pos)}.topbar-env{font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:2px 6px;border-radius:5px;margin-left:8px;background:#6366f140;color:#c7cbff}.topbar-env.live{background:#10b98140;color:#6ee7b7}.reset-btn{background:none;border:1px solid var(--sidebar-line);color:var(--sidebar-muted);font-family:inherit;font-size:12px;padding:7px 10px;border-radius:9px;cursor:pointer}.reset-btn:hover{background:var(--sidebar-2);color:var(--sidebar-text)}.net-worth-chip span{font-size:11px;color:var(--sidebar-muted);text-transform:uppercase;letter-spacing:.05em}.net-worth-chip strong{font-size:19px;color:var(--sidebar-strong);font-variant-numeric:tabular-nums}.content{padding:28px 32px 48px;max-width:1700px;min-width:0}.account-bar{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin:-8px 0 14px}.account-bar .profile-chip{flex:0 0 auto;max-width:260px;color:var(--text);border-color:var(--border);background:var(--surface)}.account-bar .profile-chip:hover,.account-bar .profile-chip.active{background:var(--surface-2);border-color:var(--accent)}.account-bar .profile-chip strong{color:var(--text)}.account-bar .profile-sub,.account-bar .profile-gear{color:var(--muted)}.account-bar .icon-btn{padding:6px 10px}@media (max-width: 560px){.account-bar .profile-sub{display:none}}.page-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.page-head h1{font-size:26px;margin:0 0 2px;letter-spacing:-.02em}.sub{color:var(--muted);font-size:13.5px;margin:0}.btn{border:none;cursor:pointer;font-family:inherit;font-size:13.5px;font-weight:600;padding:9px 16px;border-radius:10px}.btn.primary{background:var(--accent);color:#fff}.btn.primary:hover{filter:brightness(1.07)}.bal-badge{text-align:right}.bal-badge span{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.bal-badge strong{font-size:22px;font-variant-numeric:tabular-nums}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;display:flex;flex-direction:column;gap:5px}.stat-label{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:22px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.stat-trend{font-size:12px;color:var(--muted)}.stat-trend.pos{color:var(--pos)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px;margin-bottom:18px}.card-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:10px;gap:10px}.card-head.stack{flex-direction:column;align-items:stretch;gap:9px}.card-head.stack .period-nav{justify-content:space-between}.card-head h2{font-size:15px;margin:0;font-weight:650}.pill{font-size:11px;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);padding:3px 9px;border-radius:20px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.grid-worth{display:grid;grid-template-columns:1fr 320px;gap:18px}.chart{margin:0 -6px}.chart-key{list-style:none;margin:6px 0 0;padding:0 6px;display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--muted)}.chart-key li{display:flex;align-items:center;gap:6px}.line-key{width:14px;height:2px;background:var(--text);border-radius:2px}.sheet-table{width:100%;border-collapse:collapse;font-size:13.5px}.sheet-table td{padding:6px 0}.sheet-label{color:var(--muted)}.sheet-table tr.strong td{font-weight:650;color:var(--text);font-size:14px}.sheet-table tr.rule td{border-top:1px solid var(--border);padding-top:9px}.sheet-table tr.spacer td{padding:7px 0}.period-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.segmented{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);border-radius:9px;padding:2px}.segmented button{border:none;background:none;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:600;color:var(--muted);padding:5px 13px;border-radius:7px}.segmented button.on{background:var(--accent);color:#fff}.segmented button:not(.on):hover{color:var(--text)}.segmented button:disabled{opacity:.38;cursor:default}.segmented button:disabled:hover{color:var(--muted)}.stepper{display:inline-flex;align-items:center;gap:4px}.stepper button{width:26px;height:26px;border-radius:7px;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:16px;line-height:1;font-family:inherit}.stepper button:hover{color:var(--text);border-color:var(--accent)}.period-jump{position:relative;display:inline-flex}.period-label{min-width:132px;text-align:center;font-size:13px;font-weight:600;white-space:nowrap;font-family:inherit;color:inherit;cursor:pointer;border:1px solid transparent;background:none;padding:4px 8px;border-radius:7px}.period-label:after{content:" ▾";color:var(--muted);font-size:9px}.period-label:hover{background:var(--surface-2);border-color:var(--border)}.period-label.is-open{background:var(--surface-2);border-color:var(--accent)}.jump-pop{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);z-index:30;min-width:212px;max-width:calc(100vw - 24px);background:var(--surface);border:1px solid var(--border);border-radius:11px;padding:10px;box-shadow:0 12px 28px #00000047}@media (max-width: 900px){.jump-pop{left:auto;right:0;transform:none}}.jump-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:13px}.jump-head button{width:24px;height:24px;border-radius:6px;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:15px;line-height:1;font-family:inherit}.jump-head button:hover{color:var(--text);border-color:var(--accent)}.jump-grid{display:grid;gap:4px}.jump-grid.years{grid-template-columns:repeat(3,1fr)}.jump-grid.months{grid-template-columns:repeat(4,1fr)}.jump-grid button{font-family:inherit;font-size:12.5px;font-weight:600;padding:6px 4px;border-radius:7px;cursor:pointer;border:1px solid transparent;background:var(--surface-2);color:var(--text)}.jump-grid button:hover{border-color:var(--accent)}.jump-grid button.on{background:var(--accent);color:#fff}.jump-pop .field{min-width:0}.period-nav.compact .period-label{min-width:0;font-size:12px;font-weight:500}.period-nav.compact .segmented button{padding:4px 9px;font-size:11.5px}.period-total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--border);margin-top:10px;padding-top:10px;font-size:12.5px;color:var(--muted)}.period-total strong{font-size:16px;color:var(--text);font-variant-numeric:tabular-nums}.flow{width:100%;border-collapse:collapse;font-size:13px;margin-top:12px}.flow th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;padding:6px 0;text-align:left;border-bottom:1px solid var(--border)}.flow td{padding:7px 0;color:var(--muted)}.flow td.mono{color:var(--text)}.native-tag{font-size:10.5px;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);padding:1px 6px;border-radius:5px;font-variant-numeric:tabular-nums}.foot-note{font-size:12.5px;color:var(--muted);line-height:1.55;margin:0;padding:0 2px}.show-more{width:100%;margin-top:10px;padding:8px;background:none;border:1px dashed var(--border);border-radius:9px;color:var(--muted);font-family:inherit;font-size:12.5px;cursor:pointer}.show-more:hover{color:var(--text);border-color:var(--accent)}.view-all{width:100%;margin-top:10px;padding:9px;background:none;border:1px dashed var(--border);border-radius:9px;color:var(--muted);font-family:inherit;font-size:12.5px;cursor:pointer}.view-all:hover{color:var(--accent);border-color:var(--accent)}.filters{display:flex;flex-direction:column;gap:12px}.search{width:100%;font-family:inherit;font-size:13.5px;padding:9px 12px;border-radius:9px;border:1px solid var(--border);background:var(--surface-2);color:var(--text)}.search:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #6366f129}.filter-row{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.filter-row .field{flex:1 1 150px}.stat-row.three{grid-template-columns:repeat(3,minmax(0,1fr))}.import-drop{border:1px dashed var(--border);border-radius:10px;padding:18px;margin-bottom:14px;background:var(--surface-2)}.import-drop input[type=file]{font-family:inherit;font-size:13px;color:var(--text)}.import-drop .hint{margin-top:10px}.ok-card{border-color:#10b98166;background:linear-gradient(0deg,#10b9810f,#10b9810f),var(--surface)}.ok-card p,.warn-card p{margin:6px 0 0;font-size:12.5px;line-height:1.55}.warn-card{border-color:#f59e0b66}.row-skipped{opacity:.4}.cat-select{width:auto;max-width:160px;text-align:left}.guess-tag{margin-left:6px;font-size:9.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);font-weight:700}.diag-actions{display:flex;align-items:center;gap:10px;margin:10px 0}.diag{max-height:340px;overflow:auto;margin:0;background:var(--surface-2);border:1px solid var(--border);border-radius:9px;padding:12px;font-size:11px;line-height:1.6;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted);white-space:pre}.editor-row td{padding:0;background:var(--surface-2)}.editor{border:1px solid var(--accent);border-radius:10px;background:var(--surface-2);padding:14px 16px;margin:6px 0}.editor-top{display:flex;gap:8px;margin-bottom:12px}.type-select,.check-no{font-family:inherit;font-size:12.5px;font-weight:600;padding:5px 9px;border-radius:7px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.check-no{width:90px;font-weight:400}.editor-grid{display:flex;gap:16px;align-items:flex-start}.ed-left{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.ed-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:9px}.ed-amounts{flex-shrink:0;width:230px}.editor input,.editor select{font-family:inherit;font-size:13px;padding:6px 9px;border-radius:7px;border:1px solid var(--border);background:var(--surface);color:var(--text);width:100%}.editor input:focus,.editor select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #6366f129}.editor input:disabled{opacity:.45}.ed-date{width:132px}.ed-payee{font-weight:600}.ed-row{display:flex;gap:9px;flex-wrap:wrap}.ed-field{flex:1 1 150px;min-width:0;display:flex;flex-direction:column;gap:3px}.ed-field.narrow{flex:0 1 150px}.ed-field>span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}.amt-heads,.amt-boxes{display:grid;grid-template-columns:1fr 1fr;gap:8px}.amt-heads span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;text-align:right;padding-bottom:3px}.amt-boxes input{text-align:right;font-variant-numeric:tabular-nums}.amt-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:10px;padding-top:9px;border-top:1px solid var(--border);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.amt-total strong{font-size:16px;font-variant-numeric:tabular-nums}.split-btn{align-self:flex-start;background:none;border:none;cursor:pointer;font-family:inherit;font-size:12.5px;color:var(--accent);padding:2px 0}.split-btn:hover{text-decoration:underline}.splits{border:1px solid var(--border);border-radius:9px;padding:10px;background:var(--surface);display:flex;flex-direction:column;gap:7px}.splits-head{display:flex;align-items:center;gap:10px;font-size:12.5px}.splits-head strong{flex:1}.split-row{display:grid;grid-template-columns:1fr 1fr 110px 32px;gap:7px}.split-row input[type=number]{text-align:right}.editor-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:12px;padding-top:11px;border-top:1px solid var(--border)}.editor-actions .form-error{flex:1;margin:0}.tx-sub{display:block;font-size:10.5px;color:var(--muted);font-weight:400;margin-top:2px}.tag-chip{display:inline-block;margin-left:5px;padding:0 5px;border-radius:4px;background:#6366f124;color:var(--accent);font-size:10px;font-weight:600}.check-tag{margin-left:5px;font-size:10px;opacity:.8}.cat.transfer{color:var(--accent);border-color:#6366f159}.cat.split{color:#d97706;border-color:#f59e0b59;cursor:help}.running{color:var(--muted)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#080a108c;display:grid;place-items:center;padding:24px;overflow-y:auto}.modal{background:var(--surface);border:1px solid var(--border);border-radius:16px;width:min(660px,100%);box-shadow:0 24px 64px #00000059;max-height:90vh;overflow-y:auto}.modal-body{padding:24px 26px}.modal-body h2{margin:0 0 18px;font-size:19px;letter-spacing:-.01em}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px;padding-top:16px;border-top:1px solid var(--border)}.form-grid{display:flex;flex-wrap:wrap;gap:14px}.form-grid .field{flex:1 1 240px}.form-grid .field.narrow{flex:0 1 150px}.form-grid .field.wide{flex:1 1 100%}.form-grid .field textarea{font-family:inherit;font-size:13px;line-height:1.5;padding:8px 10px;border-radius:8px;resize:vertical;min-height:56px;background:var(--surface-2);border:1px solid var(--border);color:var(--text)}.form-grid .field textarea:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.choice-list{display:flex;flex-direction:column;gap:10px}.choice{text-align:left;cursor:pointer;font-family:inherit;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:6px;color:var(--text)}.choice:hover{border-color:var(--accent)}.choice strong{font-size:14.5px}.choice span{font-size:12.5px;color:var(--muted);line-height:1.5}.add-acct{margin-top:14px;width:100%;background:none;border:1px dashed var(--sidebar-line);color:var(--sidebar-muted);font-family:inherit;font-size:12.5px;padding:9px;border-radius:9px;cursor:pointer}.add-acct:hover{border-color:var(--accent);color:var(--sidebar-text)}.warn-note{font-size:12.5px;line-height:1.5;margin:12px 0 0;color:#d97706;background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:9px;padding:10px 12px}.scope-banner{font-size:12.5px;line-height:1.5;margin:12px 0 0;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);border-radius:9px;padding:10px 12px}.link-btn{background:none;border:none;cursor:pointer;font-family:inherit;font-size:12.5px;color:var(--accent);padding:0 0 0 6px}.link-btn:hover{text-decoration:underline}.link-btn.subtle{color:var(--muted);display:block;margin:0 0 14px;padding:0}.link-btn.subtle:hover{color:var(--neg)}.danger-card{border-color:#ef444466}.danger-card p{margin:0 0 12px;font-size:13.5px}.ccy{font-size:10px;color:var(--muted);margin-left:5px}.report-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.grid-card{padding:14px}.grid-scroll{overflow-x:auto}.grid{border-collapse:separate;border-spacing:0;font-size:12.5px;width:100%;min-width:940px}.grid th{position:sticky;top:0;z-index:2;background:var(--surface);font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;padding:7px 8px;border-bottom:1px solid var(--border);white-space:nowrap}.grid td{padding:4px 8px;border-bottom:1px solid var(--grid);white-space:nowrap}.sticky-col{position:sticky;left:0;z-index:1;background:var(--surface);min-width:190px;max-width:190px;border-right:1px solid var(--border)}.grid th.sticky-col{z-index:3}.grid-name{display:block;font-weight:600;font-size:12.5px}.grid-sub{display:block;font-size:10.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.grid-section td{background:var(--surface-2);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:7px 8px}.grid-section .sticky-col,.grid-row:hover td,.grid-row:hover .sticky-col{background:var(--surface-2)}.grid-total td{font-weight:650;border-top:1px solid var(--border)}.net-row td{font-weight:700;font-size:13px;border-top:2px solid var(--border);padding:9px 8px;background:var(--surface)}.total-col{border-left:1px solid var(--border);font-weight:650}.grid-cell{padding:2px 4px}.grid-input{width:100%;min-width:56px;text-align:right;font-family:inherit;font-size:12.5px;font-variant-numeric:tabular-nums;padding:5px 6px;border-radius:6px;border:1px solid transparent;background:none;color:var(--text)}.grid-input:hover{border-color:var(--border)}.grid-input:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px #6366f129}.grid-input::-webkit-outer-spin-button,.grid-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.grid-input{-moz-appearance:textfield}.grid-cell.overridden .grid-input{box-shadow:inset 0 -2px 0 var(--accent);font-weight:650}.cal-head{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;margin-bottom:6px}.cal-head div{padding:0 4px}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.cal-cell{min-height:96px;min-width:0;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);padding:6px;display:flex;flex-direction:column;gap:4px}.cal-cell.outside{opacity:.4}.cal-day{display:flex;align-items:baseline;justify-content:space-between;font-size:12px;font-weight:600;color:var(--muted)}.cal-net{font-size:10.5px;font-variant-numeric:tabular-nums;font-weight:600}.cal-items{display:flex;flex-direction:column;gap:3px;min-width:0}.cal-item{display:flex;align-items:center;gap:4px;min-width:0;font-size:10.5px;padding:2px 5px;border-radius:5px;background:var(--surface);border:1px solid transparent}.cal-item.is-planned{background:none;border-style:dashed;border-color:var(--border)}.cal-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.cal-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-amt{font-variant-numeric:tabular-nums;flex-shrink:0}.cal-item.out .cal-amt{color:var(--neg)}.cal-item.in .cal-amt{color:var(--pos)}.cal-more{font-size:10px;color:var(--muted);padding-left:5px}.cal-key{margin-top:12px}.swatch{width:14px;height:10px;border-radius:3px;display:inline-block}.swatch.planned{border:1px dashed var(--muted)}.swatch.posted{background:var(--surface-2);border:1px solid var(--border)}.cal-stats .stat-value{font-size:18px}.setup-toggle{width:100%;text-align:left;background:none;border:none;font-family:inherit;font-size:13.5px;font-weight:600;color:var(--text);cursor:pointer;padding:2px 0}.scope-banner{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:9px 12px;border-radius:9px;font-size:12.5px;line-height:1.5;color:var(--text);background:#f59e0b1a;border:1px solid rgba(245,158,11,.32)}.link-btn{background:none;border:none;padding:0;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:600;color:var(--accent);text-decoration:underline}.setup{display:flex;flex-direction:column;gap:18px;margin-top:14px}.field{display:flex;flex-direction:column;gap:5px;flex:1;min-width:150px}.field.narrow{flex:0 0 130px;min-width:120px}.field>span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}.field input,.field select{font-family:inherit;font-size:13px;padding:7px 9px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);height:33px}.field input:focus,.field select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #6366f129}.scope{border-top:1px solid var(--border);padding-top:14px}.scope-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.scope-head select{font-family:inherit;font-size:12.5px;padding:5px 9px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.scope-help{font-size:12px;color:var(--muted);margin:5px 0 0;line-height:1.5}.scope-list{margin-top:12px;display:flex;flex-direction:column;gap:12px}.scope-group-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}.scope-options{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.scope-opt{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;padding:5px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);cursor:pointer}.scope-opt:hover{border-color:var(--accent)}.line-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:14px;margin-bottom:14px}.form-actions{align-self:flex-end;padding-bottom:1px}.form-error{flex-basis:100%;margin:0;font-size:12px;color:var(--neg)}.compare-pick{display:inline-flex;align-items:center;gap:7px}.compare-pick>span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;white-space:nowrap}.compare-pick select{font-family:inherit;font-size:12.5px;padding:6px 9px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.budget-compare{font-size:11.5px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.stat-trend.compare{color:var(--muted);opacity:.85}.form-note{flex-basis:100%;order:99;margin:2px 0 0;font-size:12px;color:var(--muted)}.hint{font-size:12px;color:var(--muted);margin:3px 0 0;line-height:1.45}.row-actions.inline{opacity:0;transition:opacity .12s}.budget-row:hover .row-actions.inline{opacity:1}.swatches{display:flex;flex-wrap:wrap;gap:5px}.swatch-btn{width:22px;height:22px;border-radius:6px;cursor:pointer;border:2px solid transparent}.swatch-btn.on{border-color:var(--text)}.cat-table .dot{display:inline-block;margin-right:8px;vertical-align:middle}.cat-name{display:inline}.stat-value.pos{color:var(--pos)}.stat-value.neg{color:var(--neg)}.pie-wrap{display:grid;grid-template-columns:1fr 150px;align-items:center;gap:8px}.legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.legend li{display:flex;align-items:center;gap:7px;font-size:12.5px}.legend-val{margin-left:auto;color:var(--muted);font-variant-numeric:tabular-nums}.tx-scroll{overflow-x:auto;container-type:inline-size}@container (max-width: 820px){.stmt-table .type-col,.stmt-table .type-cell{display:none}table.stmt-table thead th,table.stmt-table tbody td,table.stmt-table thead th.sortable button{padding-left:8px;padding-right:8px}.stmt-table .date-col{width:100px}.stmt-table .cat-col{width:150px}.stmt-table .amt-col{width:100px}}@container (max-width: 560px){.stmt-table .cat-col,.stmt-table td.cat-cell{display:none}}.tx{width:100%;border-collapse:collapse;font-size:13.5px}.tx thead th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;padding:6px 12px;border-bottom:1px solid var(--border)}.tx tbody td{padding:11px 12px;border-bottom:1px solid var(--grid)}.tx tbody tr:last-child td{border-bottom:none}.tx tbody tr:hover{background:var(--surface-2)}.payee{font-weight:550}.muted{color:var(--muted)}.nowrap{white-space:nowrap}.right{text-align:right}.center{text-align:center}.mono{font-variant-numeric:tabular-nums}.pos{color:var(--pos)}.cat{font-size:12px;background:var(--surface-2);border:1px solid var(--border);padding:2px 8px;border-radius:6px;color:var(--muted)}.chip{font-size:11px;padding:3px 9px;border-radius:20px;font-weight:600;border:none;cursor:pointer;font-family:inherit}.chip.cleared{background:#10b9811f;color:var(--pos)}.chip.pending{background:#f59e0b24;color:#d97706}.chip:hover{filter:brightness(1.15)}.row-actions{display:flex;gap:6px;justify-content:flex-end}.icon-btn{background:none;border:1px solid var(--btn-edge);color:var(--text);font-family:inherit;font-size:12px;padding:4px 10px;border-radius:7px;cursor:pointer}.icon-btn:hover{background:var(--surface-2);border-color:var(--muted)}.icon-btn.danger:hover{border-color:var(--neg);color:var(--neg)}.icon-btn.save{background:var(--accent);border-color:var(--accent);color:#fff}.icon-btn.save:hover{filter:brightness(1.08)}.icon-btn:disabled{opacity:.45;cursor:not-allowed}.tx-row .row-actions{opacity:0;transition:opacity .12s}.tx-row:hover .row-actions,.tx-row:focus-within .row-actions{opacity:1}.tx-form td{background:var(--surface-2);padding:8px 10px}.tx-form input[type=text],.tx-form input[type=date],.tx-form input[type=number],.tx-form select{width:100%;font-family:inherit;font-size:13px;padding:6px 8px;border-radius:7px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.tx-form input:focus,.tx-form select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #6366f129}.amount-cell{display:flex;align-items:center;gap:6px;min-width:0}.amount-input{flex:1 1 auto;min-width:0;text-align:right;font-variant-numeric:tabular-nums}.sign-toggle{width:26px;height:33px;flex-shrink:0;border:1px solid var(--border);background:var(--surface);border-radius:7px;cursor:pointer;font-size:15px;font-weight:700;font-family:inherit;line-height:1}.sign-toggle:disabled{cursor:default;opacity:1}.sign-toggle.pos{color:var(--pos);border-color:#10b98166}.sign-toggle.neg{color:var(--neg);border-color:#ef444466}.cleared-check{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--muted);cursor:pointer;white-space:nowrap}.limit-input{width:78px;font-family:inherit;font-size:13px;text-align:right;padding:3px 6px;border-radius:6px;font-variant-numeric:tabular-nums;border:1px solid var(--border);background:var(--surface);color:var(--text)}.limit-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #6366f129}.head-right{display:flex;align-items:center;gap:14px}.empty{color:var(--muted);font-size:13.5px;text-align:center;padding:26px 0;margin:0}.empty-cta{display:flex;flex-direction:column;align-items:center;gap:13px;padding:30px 16px;text-align:center}.empty-cta p{margin:0;max-width:52ch;color:var(--muted);font-size:13.5px;line-height:1.6}.empty-cta strong{color:var(--text)}.splash{display:grid;place-items:center;min-height:100vh;color:var(--muted);font-size:14px}.year-scope{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:14px}.year-chips{display:flex;gap:6px;background:var(--surface-2);border:1px solid var(--border);border-radius:9px;padding:3px;max-width:100%;overflow-x:auto;scrollbar-width:thin}.year-chips button{display:inline-flex;align-items:baseline;gap:6px;white-space:nowrap;border:none;background:none;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:600;color:var(--muted);padding:5px 12px;border-radius:7px}.year-chips button.on{background:var(--accent);color:#fff}.year-chips button:not(.on):hover{color:var(--text)}.chip-count{font-size:11px;font-weight:500;opacity:.72}.year-why{font-size:11.5px;color:var(--muted)}.worth-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.stepper .year-pick{width:auto;padding:0 12px;font-size:12.5px;font-weight:600}.stepper .year-pick.on{background:var(--accent);color:#fff;border-color:var(--accent)}.stepper button:disabled{opacity:.35;cursor:default}.stepper button:disabled:hover{color:var(--muted);border-color:var(--border)}.tx-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 2px 10px}.group-switch{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);cursor:pointer}.group-switch input{cursor:pointer}.tx-group td{padding:0}.group-toggle{display:flex;align-items:center;gap:10px;width:100%;padding:7px 12px;border:0;background:none;cursor:pointer;color:inherit;text-align:left;font:inherit}.group-caret{width:10px;color:var(--muted);font-size:10px}.group-label{font-weight:600}.group-meta{color:var(--muted);font-size:11.5px}.group-sum{margin-left:auto;font-variant-numeric:tabular-nums;font-size:12.5px}.tx-group.is-year td{background:color-mix(in srgb,var(--text) 9%,transparent)}.tx-group.is-year .group-label{font-size:14px;letter-spacing:-.01em}.tx-group.is-month td{background:color-mix(in srgb,var(--text) 5%,transparent)}.tx-group.is-month .group-label{font-size:12.5px}.tx-group.is-week td{background:color-mix(in srgb,var(--text) 2.5%,transparent)}.tx-group.is-week .group-label{font-size:11.5px;font-weight:500;color:var(--muted)}.tx-group.is-month .group-toggle{padding-left:24px}.tx-group.is-week .group-toggle{padding-left:38px}.group-toggle:hover .group-label{text-decoration:underline}.approval{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.approval-text{font-size:13px;line-height:1.55;color:var(--muted);max-width:62ch}.approval-text strong{color:var(--text)}.approval.is-approved{border-left:3px solid var(--pos)}.approved-chip{margin-left:10px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.03em;vertical-align:middle;color:var(--pos);background:color-mix(in srgb,var(--pos) 14%,transparent)}fieldset.setup{border:0;margin:0;padding:0;min-width:0}fieldset.setup:disabled{opacity:.62}.head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.segmented.spread{display:flex;width:100%}.segmented.spread button{flex:1}.suggest .card-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.suggest-group{margin-top:16px}.suggest-group h3{margin:0;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.suggest-group .hint{margin:3px 0 9px}.suggest-row{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:9px 10px;border-radius:9px;border:1px solid transparent;cursor:pointer}.suggest-row:hover{background:var(--row-hover, rgba(127,127,127,.07))}.suggest-row input{cursor:pointer}.suggest-row:has(input:not(:checked)){opacity:.5}.suggest-name{font-size:13px;display:flex;align-items:center;gap:7px;min-width:0}.suggest-name>:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggest-why{font-size:11.5px;color:var(--muted);white-space:nowrap}.suggest-amt{font-variant-numeric:tabular-nums;font-size:13px;white-space:nowrap;text-align:right;min-width:92px}.suggest-amt.pos{color:var(--pos)}.suggest .row-actions{margin-top:16px}.suggest-note{margin-top:16px;line-height:1.55}.budget-intro{margin:0;font-size:13.5px;line-height:1.6}.setup .budget-intro+.hint{margin-top:-10px}.budget-list{display:flex;flex-direction:column;gap:18px}.budget-top{display:flex;align-items:center;gap:9px;margin-bottom:8px}.budget-cat{font-weight:600;font-size:14px}.budget-amt{margin-left:auto;font-size:13.5px;font-variant-numeric:tabular-nums}.bar{height:9px;background:var(--grid);border-radius:20px;overflow:hidden}.bar-fill{height:100%;border-radius:20px;transition:width .4s ease}@media (min-width: 1500px){.grid-worth{grid-template-columns:1fr 360px}.grid-2{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2>.card:only-child{grid-column:span 3}.stat-row{grid-template-columns:repeat(4,minmax(0,1fr))}.pie-wrap{grid-template-columns:1fr}.pie-wrap .legend{flex-direction:row;flex-wrap:wrap;gap:6px 14px}.pie-wrap .legend li{flex:0 1 auto}.pie-wrap .legend .legend-val{margin-left:5px}}@media (max-width: 1180px){.grid-worth{grid-template-columns:1fr}}@media (max-width: 900px){.app{grid-template-columns:1fr}.topbar{display:flex}.sidebar{position:fixed;top:0;left:0;bottom:0;width:272px;z-index:40;transform:translate(-100%);transition:transform .22s ease;height:100vh}.app.nav-open .sidebar{transform:translate(0)}.nav-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;background:#080a1080}.content{padding:68px 16px 40px}.page-head{flex-direction:column;align-items:stretch;gap:12px}.head-right{flex-wrap:wrap}.bal-badge.worth{display:none}.stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2,.pie-wrap{grid-template-columns:1fr}.report-bar,.editor-grid{flex-direction:column;align-items:stretch}.ed-left{flex-direction:row;align-items:center;gap:12px}.ed-amounts{width:100%}.form-grid .field,.form-grid .field.narrow{flex:1 1 100%}.split-row{grid-template-columns:1fr 90px 32px}.split-row input[type=text]{grid-column:1 / -1}}@media (max-width: 640px){.content{padding:64px 12px 40px}.page-head h1{font-size:21px}.stat-row{grid-template-columns:1fr;gap:10px}.stat{padding:12px 14px}.stat-value{font-size:19px}.card{padding:14px;border-radius:12px}.period-nav{width:100%;justify-content:space-between}.segmented{flex:1}.segmented button{flex:1;padding:7px 8px}.period-label{min-width:0;flex:1}.stepper{flex:1;justify-content:space-between}.tx thead{display:none}.tx,.tx tbody,.tx tr,.tx td{display:block;width:auto}.tx tbody tr.tx-row{position:relative;border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin-bottom:8px;background:var(--surface);display:grid;grid-template-columns:1fr auto;gap:2px 10px}.tx tbody tr.tx-row:hover{background:var(--surface)}.tx tbody td{border:none;padding:0}.tx tbody td:empty{display:none}.tx-row td:first-child{grid-column:1;grid-row:1;font-size:11px}.tx-row .cell-status{grid-column:2;grid-row:1;text-align:right}.tx-row .payee{grid-column:1;grid-row:2;font-size:14px}.tx-row .cell-amount{grid-column:2;grid-row:2;font-size:15px;font-weight:650;align-self:center}.tx-row td:nth-child(3){grid-column:1;grid-row:3}.tx-row .cell-account,.tx-row .running{grid-column:2;grid-row:3;text-align:right;font-size:11px;align-self:center}.tx-row .running:before{content:attr(data-label) " ";opacity:.65}.tx-row .cell-actions{grid-column:1 / -1;grid-row:4;text-align:right;margin-top:4px}.tx-row .row-actions{opacity:1;justify-content:flex-end}.tx-row .row-actions .icon-btn{padding:3px 10px;font-size:11.5px}.tx-row .tx-sub{display:inline}.tx-row .tx-sub:before{content:" · ";opacity:.5}.editor{padding:12px}.ed-row{flex-direction:column}.ed-field,.ed-field.narrow{flex:1 1 100%}.ed-date{width:100%}.ed-left{flex-direction:column;align-items:stretch}.budget-top{flex-wrap:wrap;row-gap:6px}.budget-cat{flex:1 1 auto}.budget-amt{flex:1 1 100%;text-align:right}.budget-row .row-actions.inline{opacity:1;flex:1 1 100%;justify-content:flex-end}.budget-row .row-actions .icon-btn{padding:3px 10px;font-size:11.5px}.card-head{flex-wrap:wrap}.card-head .head-right{flex-wrap:wrap;gap:8px}.cal-cell{min-height:58px;padding:4px}.cal-items{flex-direction:row;flex-wrap:wrap;gap:3px}.cal-item{font-size:9px;padding:0;border:none;background:none}.cal-item.is-planned{opacity:.5}.cal-label,.cal-item .cal-amt{display:none}.cal-head{font-size:9px}.cal-head div{padding:0 2px}.cal-day{font-size:11px;gap:3px;flex-wrap:wrap}.cal-net{font-size:9px}.cal-more{font-size:8.5px;padding-left:0}.sheet-table td{font-size:12.5px}.modal-body{padding:18px 16px}.legend,.foot-note{font-size:12px}}.google-btn{display:flex;justify-content:center;margin:4px 0 2px}.or-rule{display:flex;align-items:center;gap:10px;margin:14px 0 4px;color:var(--muted);font-size:11px}.or-rule:before,.or-rule:after{content:"";flex:1;height:1px;background:var(--border)}.google-signin{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;padding:9px 12px;font-weight:600}.lock-card .input{margin-top:6px}.settings-layout{display:grid;grid-template-columns:208px 1fr;gap:22px;align-items:start}.settings-nav{display:flex;flex-direction:column;gap:2px;position:sticky;top:24px}.settings-tab{display:flex;align-items:center;gap:9px;padding:9px 12px;border:0;border-radius:9px;cursor:pointer;background:none;color:var(--muted);font-size:13px;font-weight:600;text-align:left;width:100%}.settings-tab:hover{color:var(--text);background:#ffffff08}.settings-tab.on{background:var(--accent);color:#fff}.settings-panel{min-width:0;display:flex;flex-direction:column;gap:18px}.settings-panel>.card{margin:0}.identity{display:flex;align-items:center;gap:14px;margin:4px 0 12px}.identity-mark{width:46px;height:46px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-size:19px;font-weight:800}.identity-what{display:flex;flex-direction:column;gap:1px;min-width:0}.identity-what strong{font-size:14.5px}.identity-what .muted{font-size:11.5px}@media (max-width: 860px){.settings-layout{grid-template-columns:1fr}.settings-nav{position:static;flex-direction:row;flex-wrap:wrap;gap:6px;margin-bottom:4px}.settings-tab{width:auto}}.bell{position:relative;font-size:15px;line-height:1}.bell.has-news{color:var(--text)}.bell-count{position:absolute;top:-3px;right:-3px;min-width:16px;height:16px;display:grid;place-items:center;padding:0 4px;border-radius:999px;background:#ef4444;color:#fff;font-size:10px;font-weight:800;font-variant-numeric:tabular-nums}.popover-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.popover-head strong{font-size:13px}.notice-act{display:flex;gap:6px}.notice-act .btn{padding:5px 10px;font-size:12px}.user-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.user-row{border:1px solid var(--border);border-radius:11px;background:var(--surface-2);padding:12px 13px}.user-row.is-pending{border-color:#f59e0b66}.user-row.is-suspended{opacity:.72}.user-main{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.user-who{display:flex;flex-direction:column;gap:2px;min-width:0}.user-who strong{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13.5px}.user-who .muted{font-size:11.5px}.user-act{display:flex;gap:6px;flex-shrink:0}.tagish{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 6px;border-radius:999px;background:var(--surface);color:var(--muted);border:1px solid var(--border)}.tagish.admin{background:#6366f124;color:#818cf8;border-color:transparent}.tagish.warn{background:#f59e0b29;color:#d97706;border-color:transparent}.tagish.bad{background:#ef444424;color:#f87171;border-color:transparent}.user-editor{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.user-name{align-items:flex-end}.user-toggles{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.danger-zone{margin-top:2px;padding:11px;border-radius:10px;border:1px solid rgba(239,68,68,.32);background:#ef44440d;display:flex;flex-direction:column;gap:9px}.feedback{position:relative;display:inline-flex}.feedback-btn{position:relative;font-size:15px;line-height:1}.feedback-btn.has-news{color:var(--text)}.feedback-panel{position:fixed;z-index:60;max-height:min(78vh,680px);overflow-y:auto;padding:12px;border-radius:12px;background:var(--surface);border:1px solid var(--border);box-shadow:0 14px 40px #00000057}.feedback-form{display:flex;flex-direction:column;gap:10px}.kind-row{display:flex;gap:6px;flex-wrap:wrap}.chipish{font-size:11.5px;padding:5px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--muted);cursor:pointer}.chipish:hover{color:var(--text)}.chipish.on{background:var(--accent);border-color:transparent;color:#fff}.feedback-text{width:100%;resize:vertical;font:inherit;font-size:13px;line-height:1.5;padding:9px 10px;border-radius:9px;border:1px solid var(--border);background:var(--surface-2);color:var(--text)}.feedback-text:focus{outline:none;border-color:var(--accent)}.shot-drop{border:1px dashed var(--border);border-radius:10px;padding:10px;background:var(--surface-2)}.shot-drop .hint{margin:0;font-size:11.5px}.shot-drop kbd{font:inherit;font-size:10.5px;padding:1px 5px;border-radius:4px;border:1px solid var(--border);background:var(--surface)}.shot-list{display:flex;gap:8px;flex-wrap:wrap}.shot{position:relative;display:block;width:76px;height:56px;border-radius:7px;overflow:hidden;border:1px solid var(--border);background:var(--surface);flex-shrink:0}.shot img{width:100%;height:100%;object-fit:cover;display:block}.shot.placeholder{background:var(--surface-2)}.shot-x{position:absolute;top:2px;right:2px;width:17px;height:17px;display:grid;place-items:center;padding:0;border:none;border-radius:50%;cursor:pointer;background:#000000a8;color:#fff;font-size:13px;line-height:1}.shot-add{width:76px;height:56px;border-radius:7px;cursor:pointer;border:1px dashed var(--border);background:transparent;color:var(--muted);font-size:18px}.context-box{display:flex;flex-direction:column;gap:6px;padding:9px 10px;border-radius:9px;background:var(--surface-2)}.context-box .hint{margin:0;font-size:11px}.context-box>.linkish{align-self:flex-start}.context-dump{margin:0;max-height:190px;overflow:auto;padding:8px;border-radius:7px;background:var(--surface);border:1px solid var(--border);font-size:10.5px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.thread-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:7px}.thread-row{width:100%;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:3px;padding:10px;border-radius:9px;border:1px solid var(--border);background:var(--surface-2);color:var(--text)}.thread-row:hover{border-color:var(--accent)}.thread-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.thread-top strong{font-size:12.5px}.thread-row .muted{font-size:11px}.thread{display:flex;flex-direction:column;gap:10px}.thread-head{display:flex;flex-direction:column;gap:2px}.thread-head strong{font-size:13px}.thread-head .muted{font-size:11px}.thread-msgs{display:flex;flex-direction:column;gap:9px}.msg{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:10px;background:var(--surface-2);border:1px solid transparent}.msg.from-admin{background:#6366f11a;border-color:#6366f138}.msg-body{font-size:12.5px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.msg-shots{display:flex;gap:7px;flex-wrap:wrap}.msg-when{font-size:10.5px}.thread-reply{display:flex;flex-direction:column;gap:8px}.report-note{margin:0 0 8px}.notifications{position:relative;display:inline-flex}.notice-panel{position:fixed;z-index:60;max-height:min(72vh,600px);overflow-y:auto;padding:12px;border-radius:12px;background:var(--surface);border:1px solid var(--border);box-shadow:0 14px 40px #00000057}.notice-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.notice{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:9px;background:var(--surface-2)}.notice.standing{background:transparent;border:1px solid var(--border)}.notice-main{display:flex;gap:9px;align-items:flex-start;border-radius:7px}.notice-main.clickable{cursor:pointer;margin:-4px;padding:4px}.notice-main.clickable:hover{background:#7f7f7f17}.notice-main.clickable:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.notice-icon{font-size:13px;line-height:1.35;flex-shrink:0}.notice-text{display:flex;flex-direction:column;gap:2px;min-width:0}.notice-text strong{font-size:12.5px;line-height:1.35}.notice-text .muted{font-size:11px;line-height:1.4}.notice-when{font-size:10.5px}
