:root{color-scheme:light;--bg: #EBEFF3;--surface: #FFFFFF;--surface-2: #F5F7F9;--ink: #17212B;--muted: #5B6977;--line: #D3DAE1;--brand: #1D3A55;--brand-ink: #FFFFFF;--pos: #0B7A62;--neg: #B3261E;--focus: #2F7CD8;--radius-s: 6px;--radius-m: 10px;--font: "Public Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--bg: #0F1720;--surface: #17222D;--surface-2: #1D2A37;--ink: #E6ECF2;--muted: #9AA8B6;--line: #2C3B4A;--brand: #2A5278;--pos: #4CC9A6;--neg: #FF8A80;--focus: #7FB5FF}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font:15px/1.45 var(--font);font-variant-numeric:tabular-nums;-webkit-text-size-adjust:100%}button,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}h1,h2,p{margin:0}.muted{color:var(--muted);font-size:.86em}.pos{color:var(--pos)}.neg{color:var(--neg)}.empty{color:var(--muted);padding:24px 4px}.topbar{position:sticky;top:0;z-index:10;background:var(--brand);color:var(--brand-ink);padding-top:env(safe-area-inset-top,0px)}.beta-banner{margin:0;padding:3px 16px;text-align:center;background:#f2c94c;color:#3a2e00;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.topbar-inner{max-width:1040px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;gap:12px}.brand{font-size:1rem;font-weight:700;letter-spacing:-.01em;flex:1}.month-nav{display:flex;align-items:center;gap:2px}.month-name{min-width:9.5em;text-align:center;font-weight:700;font-size:1.05rem}.icon-btn{width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:inherit;font-size:1.5rem;line-height:1;cursor:pointer}.icon-btn:hover{background:#ffffff1f}.icon-btn.eye-btn{display:inline-grid;place-items:center;padding:0;flex:none}.values-hidden input.e-amount:not(:focus),.values-hidden .limit-input input:not(:focus){filter:blur(6px)}.status{display:inline-flex;align-items:center;gap:6px;border:0;background:#ffffff1a;color:inherit;padding:4px 10px;border-radius:999px;font-size:.8rem;cursor:pointer;white-space:nowrap}.status .dot{width:8px;height:8px;border-radius:50%;background:#7fd8b8}.status[data-status=saving] .dot,.status[data-status=loading] .dot{background:#f2c46d}.status[data-status=error] .dot,.status[data-status=offline] .dot{background:#ff8a80}.tabs{max-width:1040px;margin:0 auto;padding:0 8px;display:flex;gap:2px}.tab{border:0;background:transparent;color:#ffffffb8;padding:10px 14px 12px;cursor:pointer;font-weight:600;border-bottom:3px solid transparent;display:inline-flex;align-items:center;gap:6px}.tab.active{color:#fff;border-bottom-color:#fff}.tab-icon{display:inline-block}.tab-icon svg{display:inline-block;vertical-align:-.15em}.tab-icon[data-tab=incomes]{color:var(--pos)}.tab-icon[data-tab=cards]{color:#8a2be2}.tab-icon[data-tab=bills]{color:var(--neg)}@media(prefers-color-scheme:dark){.tab-icon[data-tab=cards]{color:#b57bff}}@media(max-width:640px){.brand{display:none}.month-nav{flex:1;justify-content:center}.topbar-inner{padding:2px 10px;gap:8px}.month-name{min-width:8.5em;font-size:1.05rem}.icon-btn{width:34px;height:34px;font-size:1.9rem;padding:0 0 3px}.status{padding:6px 12px;font-size:.82rem}.tabs{position:fixed;left:0;right:0;bottom:0;z-index:10;max-width:none;background:var(--surface);border-top:1px solid var(--line);padding:4px 4px calc(4px + env(safe-area-inset-bottom,0px));justify-content:space-around}.tab{flex:1;flex-direction:column;gap:0;padding:6px 2px;color:var(--muted);font-size:.72rem;border:0}.tab.active{color:var(--brand)}@media(prefers-color-scheme:dark){.tab.active{color:var(--focus)}}.tab-icon{display:block;font-size:1.2rem;line-height:1.3}}.page{max-width:1040px;margin:0 auto;padding:18px 16px 48px}@media(max-width:640px){.page{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}}.section-title{font-size:1rem;font-weight:700;margin:22px 0 10px}.page>.section-title:first-child,.card-header .section-title{margin-top:0}.alert{background:color-mix(in srgb,var(--neg) 12%,var(--surface));border-left:4px solid var(--neg);padding:10px 12px;border-radius:var(--radius-s);margin-bottom:14px}.icon-btn.menu-btn{display:inline-grid;place-items:center;padding:0;flex:none}.menu-open,.menu-open body{overflow:hidden}.drawer-backdrop{position:fixed;inset:0;z-index:40;background:#0a141e73;opacity:0;pointer-events:none;transition:opacity .2s}.drawer-backdrop.show{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;bottom:0;left:0;z-index:41;width:min(300px,86vw);display:flex;flex-direction:column;background:var(--surface);color:var(--ink);border-right:1px solid var(--line);box-shadow:8px 0 30px #0000002e;padding:env(safe-area-inset-top,0px) 0 env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);transform:translate(-102%);visibility:hidden;transition:transform .22s ease,visibility 0s linear .22s}.drawer.open{transform:none;visibility:visible;transition:transform .22s ease}@media(prefers-reduced-motion:reduce){.drawer,.drawer.open,.drawer-backdrop{transition:none}}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 8px 10px 18px;background:var(--brand);color:var(--brand-ink)}.drawer-title{font-weight:700;display:flex;align-items:center;gap:10px}.drawer-logo{width:30px;height:30px;border-radius:8px;flex:none}.drawer-close{width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.drawer-close:hover{background:#ffffff1f}.drawer-user{display:flex;gap:12px;align-items:center;padding:18px;border-bottom:1px solid var(--line)}.avatar{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--brand);color:var(--brand-ink);font-weight:700;font-size:1.15rem}.user-lines{display:grid;min-width:0}.user-label{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.user-id{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-meta{font-size:.8rem;color:var(--muted)}.drawer-nav{flex:1;padding:10px 8px;display:grid;align-content:start;gap:2px;overflow-y:auto}.drawer-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:0;background:transparent;color:var(--ink);cursor:pointer;padding:11px 12px;border-radius:var(--radius-s);font-weight:600}.drawer-item:hover{background:var(--surface-2)}.drawer-item.active{background:var(--surface-2);color:var(--brand)}@media(prefers-color-scheme:dark){.drawer-item.active{color:var(--focus)}}.drawer-item svg{flex:none;color:var(--muted)}.drawer-item.active svg{color:inherit}.drawer-foot{padding:8px 8px 14px;border-top:1px solid var(--line);display:grid;gap:6px}.drawer-item.logout{color:var(--neg)}.drawer-item.logout svg{color:var(--neg)}.drawer-version{font-size:.75rem;color:var(--muted);padding:0 12px}.login{min-height:100dvh;display:grid;place-items:center;padding:16px;background:var(--bg, var(--surface-2))}.login-box{width:100%;max-width:360px;display:grid;gap:14px;padding:24px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m)}.login-box h1{font-size:1.25rem;margin:0 0 4px;text-align:center}.login-box label{display:grid;gap:4px;font-weight:600;font-size:.86rem;color:var(--muted)}.login-box input{font-size:16px;padding:10px 12px;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface)}.login-box input:focus{border-color:var(--focus);outline:none}.login-box .btn{padding-block:10px;font-size:1rem}.login-box .alert{margin:0}.login{align-content:center;gap:16px}.login-foot{margin:0;max-width:360px;text-align:center;font-size:.9rem}.login-foot a{color:var(--muted)}.btn{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:var(--radius-s);padding:8px 14px;font-weight:600;cursor:pointer}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.btn.danger{color:var(--neg)}.btn.subtle{border-color:transparent;background:transparent;color:var(--muted)}.new-month{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);padding:24px;display:grid;gap:14px;justify-items:start;max-width:560px}.new-month h2{font-size:1.2rem}.balance{padding:8px 0 18px;border-bottom:1px solid var(--line)}.balance-label{font-weight:600;color:var(--muted)}.balance-value{font-size:clamp(2.4rem,9vw,2.5rem);font-weight:600;letter-spacing:-.03em;line-height:1.1;color:var(--pos);margin:2px 0 6px}.balance.neg .balance-value{color:var(--neg)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:18px}.kpi{text-align:left;display:grid;gap:2px;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);padding:14px 16px}.kpi-label{font-weight:600}.kpi-value{font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.card-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.card-total{--card: var(--brand);text-align:left;display:grid;gap:2px;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-left:6px solid var(--card);border-radius:var(--radius-s);padding:10px 12px}.card-total strong{font-size:1.15rem}@media(max-width:640px){.balance{padding:4px 0 12px}.balance-value{font-size:2rem;margin:0 0 4px}.kpis{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.kpi{padding:10px 12px}.kpi-value{font-size:1.2rem}.kpi .muted{font-size:.78rem}.card-totals{grid-template-columns:1fr 1fr;gap:8px}.card-total{padding:8px 10px;border-left-width:4px}.card-total strong{font-size:1.05rem}.section-title{margin:16px 0 8px}}.bars{list-style:none;margin:0;padding:0;display:grid;gap:6px}.bars li{display:grid;grid-template-columns:minmax(110px,200px) 1fr auto;gap:10px;align-items:center}.bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{height:10px;background:var(--surface-2);border-radius:5px;overflow:hidden}.bar-fill{display:block;height:100%;background:var(--brand);border-radius:5px}@media(prefers-color-scheme:dark){.bar-fill{background:var(--focus)}}.bar-value{min-width:7.5em;text-align:right;font-weight:600}@media(max-width:640px){.bars li{grid-template-columns:1fr auto;row-gap:3px}.bar-track{grid-column:1 / -1;grid-row:2}}.cash{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);overflow:hidden}.cash-grid{display:grid;grid-template-columns:1fr 1fr}.cash-cell{display:grid;gap:2px;text-align:left;padding:12px 16px;border:0;background:transparent;cursor:pointer;border-bottom:1px solid var(--line)}.cash-cell:nth-child(odd){border-right:1px solid var(--line)}.cash-cell:hover{background:var(--surface-2)}.cash-cell strong{font-size:1.15rem}.cash-line{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 16px;font-weight:600}.cash-line strong{font-size:1.2rem}.cash-line .muted{margin-left:6px;font-weight:400}.cash-note{padding:0 16px 12px;background:var(--surface-2)}@media(max-width:640px){.cash-line .muted{display:block;margin-left:0}.cash-cell,.cash-line{padding:10px 12px}.cash-cell strong,.cash-line strong{font-size:1.05rem}}.card-total.bills-tile{--card: var(--muted);border-left-style:dashed}.gastos-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:10px;padding:12px 16px;background:var(--surface);border:1px solid var(--line);border-top:2px solid var(--ink);border-radius:var(--radius-s);font-weight:700}.gastos-total strong{color:var(--neg);font-size:1.25rem}.gastos-note{margin-top:6px}.card-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:14px}.chip{--card: var(--brand);flex:none;display:grid;text-align:left;gap:0;cursor:pointer;background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--card);border-radius:var(--radius-s);padding:8px 14px;min-width:130px}.chip.active{background:var(--card);border-color:var(--card);color:#fff}.chip-name{font-weight:600;font-size:.86rem}.chip-total{font-weight:700;font-size:1.05rem}.chip.add{border-top-color:var(--line);border-style:dashed;color:var(--muted);place-content:center;font-weight:600}.card-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.card-header .section-title{flex:1;margin-bottom:0}.card-name-input{flex:1;min-width:140px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface)}input[type=color]{width:44px;height:38px;padding:2px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface)}.status-filter{display:flex;gap:6px;padding:10px;border-bottom:1px solid var(--line);overflow-x:auto}.status-filter button{flex:none;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 12px;font-size:.86rem;font-weight:600;cursor:pointer;white-space:nowrap}.status-filter button span{font-weight:400;color:var(--muted);margin-left:4px}.status-filter button.active{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.status-filter button.active span{color:inherit;opacity:.8}.status-toggle{width:28px;height:28px;border-radius:50%;border:2px solid var(--line);background:var(--surface);color:transparent;cursor:pointer;padding:0;font-weight:800;font-size:.9rem;line-height:1;justify-self:center}.status-toggle:hover{border-color:var(--pos);color:color-mix(in srgb,var(--pos) 45%,transparent)}.status-toggle.on{background:var(--pos);border-color:var(--pos);color:#fff}@media(prefers-color-scheme:dark){.status-toggle.on{color:#0f1720}}.entry.has-status.is-done{background:color-mix(in srgb,var(--pos) 7%,transparent)}.entry-head .e-done{font-size:.7rem;text-align:center}.entry-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);overflow:hidden}.entry{display:grid;align-items:center;gap:6px;grid-template-columns:var(--done-col, 30px) minmax(120px,1.4fr) minmax(90px,1fr) 64px 52px 112px 58px 32px;grid-template-areas:"done title note inst day amount rec del";padding:4px 8px;border-top:1px solid var(--line)}.no-day .entry{grid-template-columns:var(--done-col, 30px) minmax(120px,1.4fr) minmax(90px,1fr) 64px 112px 58px 32px;grid-template-areas:"done title note inst amount rec del"}.entry-head{border-top:0;background:var(--surface-2);font-size:.78rem;font-weight:600;color:var(--muted);padding-block:8px}.entry-head .e-amount{text-align:right;padding-right:8px}.e-done{grid-area:done;display:grid;place-items:center}.e-title{grid-area:title}.e-note{grid-area:note}.e-inst{grid-area:inst}.e-day{grid-area:day}.f-inst{grid-area:inst}.f-day{grid-area:day}.e-amount{grid-area:amount}.e-rec{grid-area:rec}.e-del{grid-area:del}.entry input:not([type=checkbox]){width:100%;min-width:0;border:1px solid transparent;border-radius:var(--radius-s);background:transparent;padding:7px 8px}.entry input:not([type=checkbox]):hover{border-color:var(--line)}.entry input:not([type=checkbox]):focus{border-color:var(--focus);background:var(--surface-2);outline:none}.entry input.e-title{font-weight:600}.entry input.e-amount{text-align:right;font-weight:600}.entry input.e-inst,.entry input.e-day{text-align:center}.e-field{display:flex;flex-direction:column;align-items:stretch;min-width:0}.f-cap{display:none;font-size:.66rem;line-height:1.1;color:var(--muted);text-align:center;white-space:nowrap}.entry input[type=checkbox]{width:18px;height:18px;accent-color:var(--pos);margin:0}.entry input::placeholder{color:var(--muted);opacity:.45}.entry input:focus::placeholder{opacity:.8}.e-rec{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;color:var(--muted)}.is-bills .entry{grid-template-columns:var(--done-col, 30px) minmax(120px,1.4fr) minmax(100px,1fr) minmax(90px,1fr) 76px 52px 112px 92px 32px;grid-template-areas:"done title cat note inst day amount rec del"}.no-day.has-cat .entry{grid-template-columns:var(--done-col, 30px) minmax(120px,1.4fr) minmax(100px,1fr) minmax(90px,1fr) 64px 112px 58px 32px;grid-template-areas:"done title cat note inst amount rec del"}.e-cat{grid-area:cat;display:flex;align-items:center;gap:4px;min-width:0}.e-cat>span{display:none;font-size:.72rem;color:var(--muted)}.entry .e-cat input{color:var(--muted)}select.e-type{width:100%;min-width:0;padding:6px 4px;font-size:.86rem;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface);color:var(--ink)}.e-rec input[type=checkbox]{width:15px;height:15px;accent-color:var(--brand)}@media(min-width:641px){.e-rec span{display:none}.e-rec,.entry-head .e-rec{justify-content:center}}.e-del{border:0;background:transparent;color:var(--muted);font-size:1.3rem;cursor:pointer;border-radius:var(--radius-s);height:32px}.e-del:hover{color:var(--neg);background:var(--surface-2)}.entry.is-done input.e-title,.entry.is-done input.e-amount{color:var(--muted)}.entry-list .empty{padding:18px 14px;border-top:1px solid var(--line)}input.invalid{animation:shake .3s;border-color:var(--neg)!important}@keyframes shake{25%{transform:translate(-3px)}75%{transform:translate(3px)}}@media(prefers-reduced-motion:reduce){input.invalid{animation:none}}.entry-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 12px;border-top:1px solid var(--line);background:var(--surface-2)}.foot-totals{display:flex;gap:14px;align-items:baseline;flex-wrap:wrap}.foot-totals strong{font-size:1.05rem}@media(max-width:640px){.entry-head{display:none}.entry{grid-template-columns:var(--done-col, 30px) 1fr 68px 36px 72px 32px;grid-template-areas:"done title title title amount amount" ". note inst day rec del";row-gap:0;padding:6px 6px 6px 4px}.no-day .entry{grid-template-columns:var(--done-col, 30px) 1fr 64px 72px 32px;grid-template-areas:"done title title amount amount" ". note inst rec del"}.entry input.e-inst,.entry input.e-day{padding-inline:2px}.is-bills .entry{grid-template-columns:var(--done-col, 30px) 1fr 60px 32px 84px 32px;grid-template-areas:"done title title title amount amount" ". note inst day rec del" ". cat cat cat cat cat"}.no-day.has-cat .entry{grid-template-columns:var(--done-col, 30px) 1fr 64px 72px 32px;grid-template-areas:"done title title amount amount" ". note inst rec del" ". cat cat cat cat"}.e-cat>span{display:inline}.f-cap{display:block}select.e-type{font-size:16px;padding-block:3px}.entry input.e-amount{font-size:1.02rem}.entry input.e-note,.entry input.e-inst,.entry input.e-day{font-size:.86rem;color:var(--muted);padding-block:4px}.entry input:not([type=checkbox]){font-size:16px}.entry input.e-note,.entry input.e-inst,.entry input.e-day{font-size:16px}}.intro{max-width:70ch}.table-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m)}table.grid{width:100%;border-collapse:collapse;white-space:nowrap}.grid th,.grid td{padding:9px 12px;border-top:1px solid var(--line);text-align:left}.grid thead th{border-top:0;background:var(--surface-2);font-size:.78rem;color:var(--muted);font-weight:600}.grid .num{text-align:right}.grid thead th,.grid thead th.num{text-align:center}@media(max-width:640px){.grid thead th{white-space:normal;vertical-align:middle;line-height:1.25}.grid th,.grid td{padding:8px}}.origin{--card: var(--muted);display:inline-flex;align-items:center;gap:6px}.origin:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--card)}[data-list=incomes],[data-list=bills]{--done-col: 56px}@media(max-width:640px){[data-list=incomes],[data-list=bills]{--done-col: 36px}}.cash strong,.gastos-total strong,.kpi-value,.balance-value,.card-total strong,.chip-total,.foot-totals strong{white-space:nowrap}.cash-line>span:first-child{min-width:0}.meter{--level: var(--pos);display:block;height:6px;border-radius:3px;background:var(--surface-2);overflow:hidden;margin-top:6px}.meter>span{display:block;height:100%;background:var(--level);border-radius:3px}.meter[data-level=warn]{--level: #D08700}.meter[data-level=over]{--level: var(--neg)}.meter.big{height:10px;border-radius:5px}.chip-meter{margin-top:4px;height:4px}.chip.active .chip-meter{background:#ffffff4d}.chip.active .chip-meter>span{background:#fff}.limit-caption{font-size:.8rem;color:var(--muted)}.card-total[data-level=warn] .limit-caption{color:#a86b00;font-weight:600}.card-total[data-level=over] .limit-caption{color:var(--neg);font-weight:600}@media(prefers-color-scheme:dark){.card-total[data-level=warn] .limit-caption{color:#f2b84b}}.limit-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);padding:12px 16px;margin-bottom:12px;display:grid;gap:4px;justify-items:start}.limit-box>.meter{width:100%}.limit-row{width:100%;display:flex;justify-content:space-between;align-items:baseline;gap:10px}.limit-row strong{font-size:1.15rem;white-space:nowrap}.limit-pct{font-weight:700}.limit-box[data-level=warn] .limit-pct,.limit-box[data-level=warn] .limit-left{color:#a86b00}.limit-box[data-level=over] .limit-pct,.limit-box[data-level=over] .limit-left{color:var(--neg)}@media(prefers-color-scheme:dark){.limit-box[data-level=warn] .limit-pct,.limit-box[data-level=warn] .limit-left{color:#f2b84b}}.limit-left{font-size:.9rem;font-weight:600;margin-top:2px}.limit-input{display:inline-flex;align-items:center;gap:6px;font-size:.86rem;color:var(--muted)}.limit-input input{width:120px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface);text-align:right}.limit-input input{font-size:16px}.entry.card-line input[readonly]{cursor:default}.entry.card-line input[readonly]:hover{border-color:transparent}.entry.card-line input[readonly]:focus{border-color:transparent;background:transparent}.card-tag{justify-self:start;font-size:.78rem;font-weight:600;color:var(--muted);border:1px dashed var(--line);border-radius:999px;padding:3px 10px}.grid td.balance-cell{font-weight:700}.grid th:first-child,.grid td:first-child{position:sticky;left:0;z-index:1;background:var(--surface);box-shadow:1px 0 0 var(--line)}.grid thead th:first-child{background:var(--surface-2)}.source-note{margin:0 0 12px;padding:8px 12px;border-radius:var(--radius-s);font-size:.86rem;font-weight:600;background:color-mix(in srgb,var(--pos) 12%,transparent);color:var(--ink)}.source-note.reader{background:var(--surface-2);color:var(--muted)}.read-only .entry input,.read-only .entry select,.read-only .status-toggle,.read-only .e-rec{pointer-events:none}.read-only .entry input:not([type=checkbox]):hover{border-color:transparent}.read-only .entry-foot>.btn,.read-only .e-del{visibility:hidden}.limit-input input.day-input{width:56px;text-align:center}.aliases-input input{width:220px;text-align:left}.e-src{grid-area:title;justify-self:end;align-self:center;z-index:1;pointer-events:none;margin-right:4px;padding:1px 6px;border-radius:999px;font-size:.68rem;font-weight:700;white-space:nowrap;background:color-mix(in srgb,#8A2BE2 14%,transparent);color:#8a2be2}@media(prefers-color-scheme:dark){.e-src{color:#b57bff}}.entry.has-src input.e-title{padding-right:76px}.table-wrap.has-totals{border-bottom-left-radius:0;border-bottom-right-radius:0}.table-totals{display:grid;gap:6px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--line);border-top:0;border-radius:0 0 var(--radius-m) var(--radius-m)}.table-totals>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.table-totals span{font-weight:600}.table-totals strong{white-space:nowrap;text-align:right}.table-totals .per{display:block;font-size:.72rem;font-weight:500;color:var(--muted)}
