:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#202a27;background:#f6f8f7;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{height:88px;background:#fff;border-bottom:1px solid #e6eae8;display:flex;align-items:center;padding:0 max(32px,calc((100vw - 1190px)/2));gap:40px}.brand{display:flex;align-items:center;font-size:30px;font-weight:750;letter-spacing:-1.4px;color:#1a322b;text-decoration:none}.brand-dot{color:#71913a}.logo{width:34px;height:34px;background:#1a322b;color:#c5f277;border-radius:10px;margin-right:11px;text-align:center;line-height:31px;font-size:34px}.head-label{font-size:14px;color:#707a75;border-left:1px solid #e0e5e2;padding-left:36px}.avatar{margin-left:auto;background:#edf1ed;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:14px;font-weight:600}main{max-width:1254px;margin:auto;padding:46px 32px 20px}.title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.eyebrow{font-size:12px;letter-spacing:1.7px;color:#778078;font-weight:600;margin:0 0 10px}h1{font-size:34px;letter-spacing:-1.2px;font-weight:600;margin:0}select,input{font:inherit;font-size:14px;background:#fff;border:1px solid #dfe5e1;border-radius:9px;color:#35423b;min-height:43px;padding:10px 14px}select{cursor:pointer}.demo{font-size:14px;display:flex;align-items:center;gap:11px;color:#677269;margin-bottom:23px}.demo-tag{border:1px solid #dce3d6;background:#eef3e8;color:#536340;padding:4px 8px;border-radius:5px;font-size:12px}.summary{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:18px;margin-bottom:26px}.summary article{border:1px solid #e3e8e4;background:white;border-radius:15px;padding:26px;display:flex;flex-direction:column;gap:17px}.summary strong{font-size:32px;letter-spacing:-1px;font-weight:550;font-variant-numeric:tabular-nums}.summary .balance{background:#19392e;color:#fff;border:0}.balance>span{color:#d0ddd4;font-size:14px}.balance-bottom{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#c4d6ca}.stat-label{display:flex;align-items:center;gap:10px;color:#66716b;font-size:14px}.circle{border-radius:50%;width:28px;height:28px;font-style:normal;display:grid;place-items:center;font-size:19px}.income{background:#eff5e8;color:#5a7f30}.expense{background:#f5eee9;color:#98684c}.stat-foot{font-size:13px;color:#818a84}.middle{display:grid;grid-template-columns:1.18fr 1fr;gap:24px;margin-bottom:25px}.panel{background:#fff;border:1px solid #e3e8e4;border-radius:14px;padding:25px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:15px}h2{font-size:17px;font-weight:600;letter-spacing:-.3px;margin:0}.muted{font-size:13px;color:#879087}.spending{display:flex;align-items:center;gap:33px;padding:27px 0 10px}.donut{width:160px;height:160px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;transform:rotate(-90deg)}.donut>div{transform:rotate(90deg);background:white;border-radius:50%;width:124px;height:124px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px}.donut span{font-size:12px;color:#768077}.donut strong{font-size:19px;font-weight:600;letter-spacing:-.6px}.categories{width:100%;display:flex;flex-direction:column;gap:18px;font-size:14px}.category{display:flex;align-items:center;gap:9px}.swatch{width:8px;height:8px;border-radius:3px}.category strong{margin-left:auto;font-weight:500;font-variant-numeric:tabular-nums}.account{display:flex;align-items:center;gap:12px;padding:23px 0;border-bottom:1px solid #edf0ed;font-size:14px}.account strong{margin-left:auto;font-size:15px;font-weight:550;white-space:nowrap}.account small{display:block;font-size:12px;color:#879087;margin-top:5px}.bank{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font-weight:600}.dark{background:#25392f;color:#d0edaf}.light{background:#e9eee6;color:#58734a}.account-note{font-size:12px;color:#838e85;margin:20px 0 0}.filters{display:flex;gap:10px}.filters input{max-width:210px;padding-left:15px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px;margin-top:22px}th{text-align:left;font-size:12px;color:#929a94;font-weight:500;padding:12px 0;border-bottom:1px solid #e8ece8}td{padding:16px 0;border-bottom:1px solid #eef1ee}.value{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}td:nth-child(2),td:nth-child(3){color:#7c867e}.description{display:flex;align-items:center;gap:12px;font-weight:500}.tx-icon{background:#f3f5f2;width:32px;height:32px;border-radius:9px;display:grid;place-items:center;color:#77876c;font-size:13px}.positive{color:#5b7d37}.table-footer{display:flex;justify-content:space-between;font-size:12px;color:#8c958e;margin-top:20px}footer{display:flex;justify-content:space-between;margin:26px 0 8px;color:#839085;font-size:16px;font-weight:600}footer span{font-size:12px;font-weight:400}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0)}:focus-visible{outline:3px solid #88b254;outline-offset:3px}#empty{padding:25px;text-align:center;color:#677269}@media(min-width:1450px){main{padding-top:55px}}@media(max-width:950px){.middle{grid-template-columns:1fr}.summary strong{font-size:27px}.spending{justify-content:center}.categories{max-width:330px}.account-note{margin-top:15px}}@media(max-width:640px){header{height:70px;padding:0 20px;gap:20px}.head-label{display:none}main{padding:28px 18px}.title-row{align-items:flex-end;gap:10px}h1{font-size:28px}.eyebrow{font-size:10px;letter-spacing:1px}.month select{max-width:150px;padding:10px;font-size:13px}.demo{align-items:flex-start;font-size:12px;line-height:1.6}.demo-tag{white-space:nowrap}.summary{grid-template-columns:1fr 1fr;gap:12px}.summary .balance{grid-column:1/-1}.summary article{padding:20px;gap:14px}.summary strong{font-size:24px}.stat-label{font-size:12px;gap:5px}.stat-foot{font-size:12px}.circle{width:23px;height:23px}.panel{padding:20px}.spending{gap:20px}.donut{width:132px;height:132px}.donut>div{width:103px;height:103px}.donut strong{font-size:16px}.donut span{font-size:10px}.categories{font-size:12px;gap:18px}.transaction-head{align-items:flex-start;flex-direction:column}.filters{width:100%}.filters label:first-child{flex:1;min-width:0}.filters input{width:100%;max-width:none}td,th{padding-right:18px}td:last-child,th:last-child{padding-right:0}table{min-width:485px}.account{gap:9px}.account strong{font-size:14px}footer span{max-width:220px;text-align:right}}@media(prefers-reduced-motion:no-preference){.summary article{animation:appear .5s ease both}@keyframes appear{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}}
/* Transaction-focused view */
.accounts{margin-bottom:25px;display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.accounts .section-head,.account-note{grid-column:1/-1}.negative,#expense{color:#c13939}.expense{background:#fff0ef;color:#c13939}.transaction-controls{display:flex;align-items:center;gap:18px;margin-top:22px}.quick-filters{display:inline-flex;gap:4px;padding:4px;background:#f1f4f1;border-radius:10px}.quick-filters button, .advanced-fields button{font:inherit;font-size:14px;border:0;cursor:pointer;border-radius:7px;min-height:40px;padding:9px 18px;background:transparent;color:#647066}.quick-filters button[aria-pressed="true"]{background:#1c3c2f;color:white;box-shadow:0 1px 3px #1c3c2f20}.quick-filters button[data-type="out"][aria-pressed="true"]{background:#fff;color:#b62d2d;box-shadow:0 1px 4px #243a3020}.quick-filters button[aria-pressed="false"]:hover{background:#e3eae3}.quick-filters button[aria-pressed="true"]:hover{filter:brightness(.96)}.advanced{margin-top:18px;border-top:1px solid #edf0ed;padding-top:16px}.advanced summary{font-size:14px;color:#536357;cursor:pointer;width:fit-content;padding:5px 0}.advanced-fields{display:flex;align-items:flex-end;gap:16px;padding-top:18px}.advanced-fields label{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#647066}.advanced-fields input{min-width:170px}.advanced-fields button{border:1px solid #dde4dc;background:#fff;min-height:43px}.filter-note{font-size:13px;color:#7b867c;margin-bottom:0}#filter-error{font-size:14px;color:#b52c2c}td:nth-child(3){color:inherit}td.negative:nth-child(3){color:#c13939}td.positive:nth-child(3){color:#5b7d37}table{min-width:0}th:nth-child(2){width:20%}th:last-child{width:25%}.transaction-head input{width:220px}@media(max-width:640px){.accounts{display:block}.advanced-fields{flex-wrap:wrap;gap:12px}.advanced-fields label{flex:1;min-width:0}.advanced-fields input{width:100%;min-width:0;padding:10px 7px}.advanced-fields button{width:100%}.transaction-controls{align-items:flex-start;flex-direction:column;gap:8px}.quick-filters{width:100%}.quick-filters button{flex:1;padding:9px 10px}.transaction-head{flex-direction:row;align-items:center}.transaction-head label{min-width:0;width:55%}.transaction-head input{width:100%}table{min-width:0;font-size:13px}.description{gap:7px}.tx-icon{flex-shrink:0;width:26px;height:26px}td,th{padding-right:10px}.value{font-size:13px}th:nth-child(2){width:19%}th:last-child{width:32%}}
.logout{margin-left:auto}.logout button{background:white;border:1px solid #dfe5e1;border-radius:8px;padding:8px 16px;color:#536357;font:inherit;font-size:14px;cursor:pointer}.auth-body{min-height:100vh;display:grid;place-items:center;padding:30px 20px}.auth-card{background:#fff;border:1px solid #e3e8e4;border-radius:18px;padding:36px;width:100%;max-width:450px}.auth-card h1{font-size:27px;margin:28px 0 12px}.auth-intro{font-size:16px;color:#778078;line-height:1.5}.auth-card form{display:flex;flex-direction:column;gap:18px;margin-top:25px}.auth-card label{display:flex;flex-direction:column;gap:8px;font-size:14px}.auth-card input{font-size:16px;width:100%}.primary{background:#19392e;color:#fff;border:0;border-radius:9px;font:inherit;font-size:16px;min-height:46px;padding:12px;cursor:pointer}.auth-foot{font-size:12px;text-align:center;color:#879087;margin-top:28px}.form-error{background:#fff0ef;color:#ac2828;border-radius:8px;padding:14px;font-size:14px}.form-success{background:#edf5e8;color:#44612e;padding:14px;border-radius:8px;font-size:14px}[hidden]{display:none!important}.accounts #account-list{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:30px}.account .account-details{min-width:0}.account small{line-height:1.5}.bank-name{font-size:12px;color:#7c867e;display:block;font-weight:400;margin-top:5px}.empty-state{text-align:center;padding:35px 15px;color:#7c867e}.empty-state h3{font-size:17px;font-weight:500;color:#536357}.empty-state p{font-size:14px;line-height:1.6}.month input{max-width:190px}.transfer-label{color:#687564;font-size:12px;display:block}.transaction-controls{flex-wrap:wrap}.account-status{font-size:12px;color:#8b6b2d}.account-note{line-height:1.6}@media(max-width:640px){.accounts #account-list{display:block}.auth-card{padding:25px}.month input{max-width:155px}.transaction-controls>label,.transaction-controls>label select{width:100%}.summary strong{font-size:23px}.head-label{display:block;border:0;padding:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:45%}}
/* Companies, branches and account ownership */
.company-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:12px}.company-picker{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#647066;min-width:0;width:min(100%,550px)}.company-picker select{width:100%;text-overflow:ellipsis}.scope-caption{font-size:14px;color:#6a786d;margin:0 0 22px}.secondary,.icon-button{font:inherit;font-size:14px;cursor:pointer;background:#fff;color:#354e3e;border:1px solid #dce4dd;border-radius:8px;padding:10px 15px;min-height:42px}.secondary:hover{background:#edf3ee}.company-toolbar>.secondary{white-space:nowrap}.account{flex-wrap:wrap}.account strong{margin-left:auto}.account-details{flex:1}.account-company-label{color:#647369!important;font-size:13px!important}.account .edit-account{border:0;background:transparent;color:#466847;padding:5px;font:inherit;font-size:13px;cursor:pointer}.account-cnpj{display:block;font-size:12px;color:#839085;margin-top:3px}.account-empty{grid-column:1/-1;font-size:14px;color:#7b867c;padding:20px 0}.bank-name{line-height:1.5}.company-tag{color:#5a6b5d;font-size:12px;display:block;margin-top:3px}#management-dialog{width:min(740px,calc(100% - 32px));max-height:90vh;border:1px solid #dde5df;border-radius:18px;padding:28px;color:#24352a;overscroll-behavior:contain}#management-dialog::backdrop{background:#12251e75}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-heading h2{font-size:23px}.icon-button{font-size:25px;padding:3px 12px;line-height:1}.dialog-intro{font-size:15px;line-height:1.6;color:#6a786d;margin-bottom:24px}.manage-section{padding:22px 0;border-top:1px solid #e6ece7}.manage-section h3{font-size:16px;font-weight:600;margin:0}.manage-list{margin-top:12px}.manage-item{padding:14px 0;display:flex;align-items:center;gap:14px;border-bottom:1px solid #edf0ed}.manage-item>div{flex:1;min-width:0}.manage-item strong{font-size:15px;font-weight:550;overflow-wrap:anywhere}.manage-item small{font-size:13px;color:#7a887d;display:block;margin-top:5px;line-height:1.5}.manage-item .secondary{min-height:36px;padding:7px 11px;font-size:13px}.edit-form{border:1px solid #dce6dd;background:#f6f9f6;padding:22px;border-radius:12px;margin-top:20px;display:grid;gap:17px}.edit-form label{font-size:14px;color:#526858;display:flex;flex-direction:column;gap:8px}.edit-form input,.edit-form select{width:100%;font-size:16px}.edit-form input:read-only,.edit-form select:disabled{background:#eef2ee;color:#718071}.form-actions{display:flex;gap:10px;align-items:center}.form-actions .primary{padding:11px 20px;min-height:42px;font-size:14px}.edit-form .filter-note{margin:0;line-height:1.6}.manage-section>.section-head{flex-wrap:wrap}.form-error,.form-success{line-height:1.5}button:disabled{opacity:.6;cursor:wait}dialog[open]{animation:appear .15s ease}@media(max-width:640px){.company-toolbar{align-items:stretch;flex-direction:column;gap:12px}.company-toolbar>.secondary{align-self:flex-start}.company-picker{width:100%}#management-dialog{padding:20px;max-height:92vh}.edit-form{padding:16px}.dialog-heading h2{font-size:21px}.account .edit-account{font-size:12px}.account strong{font-size:14px}.account-company-label{font-size:12px!important}.transaction-controls>label select{max-width:100%}.manage-item strong{font-size:14px}.manage-item{gap:8px}}
