#projection{max-height:48vh}#projection thead th{position:sticky;top:0;z-index:1}button:disabled,select:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:600px){body>#message:not(:empty){position:static;max-width:none;margin:8px;border-radius:4px}.table-wrap{scrollbar-gutter:stable}}
:root{color-scheme:light;--ink:#152b33;--muted:#53656a;--line:#ced9da;--accent:#09695e;--paper:#f3f5f1}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 system-ui,sans-serif}button,input,select,textarea,a.button{font:inherit;min-height:44px;border:1px solid #a6b9ba;border-radius:5px;padding:9px 12px;color:inherit;background:#fff}button,a.button{cursor:pointer;font-weight:600}button:hover,a.button:hover{background:#dfece7}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #d68b28;outline-offset:2px}label{display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:4px}input,select{max-width:100%;min-width:0}textarea{width:100%;resize:vertical}p{color:var(--muted);max-width:100ch}h1{font-size:30px;line-height:1.2;margin:4px 0 18px;font-weight:650;letter-spacing:-1px}h2{font-size:20px}#workspace{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}aside{background:#173b3b;color:#e7efeb;padding:28px 18px;display:flex;flex-direction:column;gap:12px}.brand{font-size:25px;letter-spacing:-1px;margin-bottom:24px}.brand span{display:block;font-size:10px;letter-spacing:1.8px;color:#a6c8bd}nav{display:grid;gap:6px}aside button{background:transparent;color:inherit;border-color:#51706d;text-align:left}aside button.active{background:#d7e8dc;color:#153e38}aside button:hover{color:#163f37}aside .small{font-size:11px;letter-spacing:2px;margin-top:24px}#accounts{display:grid;gap:12px}#accounts p{color:#c2d5ce;font-size:12px;margin:2px 0}#accounts strong{font-variant-numeric:tabular-nums}aside .aside-note{font-size:11px;color:#aec3bd;margin-top:auto}#logout{margin-top:14px}.content{padding:30px 34px;min-width:0}header{position:relative;border-bottom:1px solid var(--line);margin-bottom:24px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--accent);font-weight:750}.local{position:absolute;right:0;top:24px;color:var(--accent);font-size:12px}.toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:18px 0}.toolbar input{width:155px}.toolbar input[type=search]{width:190px}button[type=submit],#edit-form>button,#new-transaction,#new-budget,#new-rule,#commit,#auth-submit{background:var(--accent);color:#fff;border-color:var(--accent)}.table-wrap{overflow:auto;max-width:100%;background:white;border:1px solid var(--line);border-radius:6px;margin:20px 0}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;font-weight:650;background:#e8eeea;white-space:nowrap}td,th{padding:11px 14px;border-bottom:1px solid #e3e8e3;vertical-align:top}td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}td.actions{white-space:nowrap}td button{padding:6px 10px;font-size:12px;margin:0 4px 0 0}td small{display:block;color:var(--muted)}.negative{color:#9a3c26}.empty{padding:30px;color:var(--muted)}.warning{padding:14px;border-left:3px solid #b47b24;background:#f7efdc}.check{display:flex;flex-direction:row;align-items:center;gap:10px}.check input{width:22px;min-height:44px}canvas{width:100%;height:240px;border:1px solid var(--line);background:#fff;border-radius:6px}.auth{max-width:490px;margin:9vh auto;padding:32px;background:white;border:1px solid var(--line);border-radius:8px}.auth form{display:grid;gap:18px}dialog{width:min(580px,calc(100% - 24px));max-height:92vh;border:1px solid var(--line);border-radius:8px;padding:24px}dialog::backdrop{background:#122f37a0}.dialog-head{display:flex;align-items:center;justify-content:space-between}#fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}#edit-warning{font-size:12px}#message:not(:empty){position:fixed;right:16px;bottom:16px;padding:14px 22px;background:#152f31;color:#fff;border:1px solid #9ec6b8;border-radius:6px;z-index:10;max-width:calc(100% - 32px)}[hidden]{display:none!important}a.button{display:inline-flex;text-decoration:none;align-items:center}@media(max-width:800px){#workspace{grid-template-columns:1fr}aside{padding:16px;gap:8px}.brand{margin:0;font-size:22px}nav{display:flex;flex-wrap:wrap;gap:5px}nav button{font-size:12px;padding:8px 10px}aside .small{margin:6px 0}#accounts{display:flex;flex-wrap:wrap;gap:18px}#new-account,#logout{align-self:start;margin:0}aside .aside-note{display:none}.content{padding:20px 14px}.local{position:static;display:block;margin-bottom:15px}.toolbar{gap:10px}.toolbar>label{flex:1;min-width:140px}.toolbar input,.toolbar input[type=search]{width:100%}.toolbar>button{min-width:140px}.auth{margin:24px 12px;padding:24px}#fields{grid-template-columns:1fr}td,th{padding:10px}h1{font-size:27px}}

.suggestion-card{border:1px solid #b7cfca;border-radius:12px;padding:16px;margin:12px 0;overflow-wrap:anywhere}.suggestion-card h3{margin-top:0}.suggestion-card p{line-height:1.5}

#register tbody tr{cursor:pointer}#register tbody tr:hover{background:#e8f1ec}#register tbody tr:focus-visible{outline:3px solid #d68b28;outline-offset:-3px}

#register{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}
#register table{table-layout:fixed;max-width:none;min-width:0}
#register th{position:relative;padding-right:28px;white-space:normal}
#register td{white-space:normal;overflow-wrap:anywhere;vertical-align:top}
#register td.actions{white-space:normal}
@media(max-width:600px){
 #register.amount-at-glance th:nth-child(5),#register.amount-at-glance td:nth-child(5){position:sticky;right:0;z-index:3;background:#fff;box-shadow:-2px 0 0 var(--line)}
 #register.amount-at-glance th:nth-child(5){background:#e5ece7;z-index:4}
 #register.amount-at-glance tr:hover td:nth-child(5){background:#e8f1ec}
}
#register .column-resizer{position:absolute;right:0;top:0;bottom:0;width:24px;cursor:col-resize;touch-action:none;user-select:none;z-index:2}
#register .column-resizer::after{content:"";position:absolute;right:10px;top:20%;height:60%;border-right:2px solid #6a8782}
#register .column-resizer:hover,#register .column-resizer.resizing{background:#c5dbd3}
#register .column-resizer:focus-visible{outline:3px solid #d68b28;outline-offset:-3px}

.accounts-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}.accounts-heading .small{margin:0}#toggle-sidebar-balances{padding:8px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}#toggle-sidebar-balances svg{pointer-events:none}#accounts strong{letter-spacing:.03em}
