
:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#243c36;background:#f6f8f7;font-synthesis:none;--green:#164e43;--muted:#76837e;--line:#e5ebe7;--red:#b34943}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #99c9b7;outline-offset:3px}[hidden]{display:none!important}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:32px;letter-spacing:-1px;margin-bottom:8px}h2{font-size:19px;letter-spacing:-.4px}h3{font-size:15px}p{line-height:1.65}small,.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:750;letter-spacing:2px;color:#789186;margin-bottom:12px}.brand{display:flex;align-items:center;font-size:28px;font-weight:750;letter-spacing:-1.5px}.brand-icon{display:inline-grid;place-items:center;border-radius:12px;width:38px;height:38px;background:var(--green);color:#d4edb8;font-size:33px;font-weight:500;margin-right:10px;line-height:1}.brand-dot{color:#9ab877}.app{display:flex;min-height:100vh}.sidebar{width:236px;background:#fff;border-right:1px solid var(--line);padding:32px 22px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;z-index:20}.nav-label{font-size:9px;font-weight:750;color:#9ba59f;letter-spacing:1.7px;margin:34px 12px 12px}.sidebar select{width:100%;background:#f6f8f7;font-weight:600}.nav-link{border:0;background:transparent;display:flex;gap:13px;align-items:center;width:100%;padding:13px 15px;margin-bottom:5px;color:#6d7c75;text-align:left;border-radius:8px;font-size:13px}.nav-link:hover{background:#f4f7f5}.nav-link.active{background:#eaf2ed;color:var(--green);font-weight:700}.nav-symbol{width:20px;font-size:18px}.sidebar-bottom{margin-top:auto;padding-top:28px}.security-note{display:flex;align-items:center;gap:13px;border:1px solid var(--line);padding:16px;border-radius:10px;color:#8b9b8b;font-size:23px}.security-note span{font-size:11px;line-height:1.6}.logout{border:0;background:transparent;color:#7b8781;padding:22px 10px 0;font-size:12px}main{margin-left:236px;width:calc(100% - 236px)}.topbar{height:78px;border-bottom:1px solid var(--line);background:#ffffffa8;padding:0 40px;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#7c8882}.topbar-right{display:flex;align-items:center;gap:15px}.avatar{width:33px;height:33px;border-radius:50%;background:#e8eee4;display:grid;place-items:center;font-weight:700;color:var(--green)}.content{max-width:1500px;margin:auto;padding:36px 40px 20px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.page-heading p:last-child{font-size:12px;color:var(--muted);margin-bottom:0}.heading-actions{display:flex;gap:10px;align-items:center}.primary,.secondary,.text-button{border:0;border-radius:7px;padding:12px 17px;font-size:12px;font-weight:650;min-height:42px}.primary{background:var(--green);color:white}.primary:hover{background:#216553}.secondary{border:1px solid #dce5df;background:white;color:#466054}.text-button{background:transparent;color:var(--green)}input,select{padding:11px 12px;border:1px solid #dce5df;border-radius:7px;background:#fff;color:#344c41;min-height:42px;min-width:0}input[type=month]{max-width:180px;font-size:12px}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;margin-bottom:15px}label input,label select{width:100%;font-weight:400}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:23px}.stat.featured{background:var(--green);color:white;border-color:var(--green)}.stat-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#7f8d85;margin-bottom:20px}.featured .stat-top,.featured small{color:#c2d8ca}.stat-icon{background:#f1f5f0;color:#57846c;border-radius:8px;padding:6px 10px;font-size:17px}.featured .stat-icon{background:#ffffff15;color:#d2e7b9}.stat strong{display:block;font-size:clamp(20px,2.05vw,30px);font-weight:650;letter-spacing:-.7px;margin-bottom:12px}.stat small{font-size:10px}.positive{color:#2e8060}.negative{color:var(--red)}.grid-two{display:grid;grid-template-columns:1.65fr 1fr;gap:22px;margin-bottom:22px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;min-width:0;margin-bottom:22px}.grid-two .panel{margin-bottom:0}.panel-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px}.panel-header h2{margin:0;font-size:15px}.panel-header small{font-size:10px}.legend{display:flex;gap:14px;color:#7f8b83;font-size:10px}.legend span:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#39765c;margin-right:5px}.legend span:last-child:before{background:#c7d8aa}.chart{height:190px;display:flex;align-items:flex-end;justify-content:space-around;gap:8px;border-bottom:1px solid var(--line);padding:14px 8px 25px;background:repeating-linear-gradient(to top,transparent 0,transparent 39px,#f1f4f1 40px)}.chart-group{height:100%;flex:1;display:flex;align-items:flex-end;justify-content:center;gap:5px;position:relative}.bar{width:20px;max-width:30%;border-radius:4px 4px 0 0;background:#39765c;min-height:0}.bar.expense{background:#c7d8aa}.chart-label{position:absolute;bottom:-21px;font-size:9px;color:#859085;white-space:nowrap}.category-row{margin-bottom:19px}.category-row:last-child{margin-bottom:0}.category-label{display:flex;justify-content:space-between;gap:10px;font-size:11px;margin-bottom:9px}.progress{height:6px;background:#f1f4ed;border-radius:10px;overflow:hidden}.progress>span{display:block;height:100%;background:#5c8666;border-radius:10px}.notice{padding:16px 20px;background:#edf3e7;border:1px solid #e0e9d7;border-radius:10px;font-size:12px;line-height:1.6;color:#526649;margin-bottom:22px}.notice strong{color:#34513d}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;white-space:nowrap}th{color:#8d988f;font-size:9px;text-transform:uppercase;letter-spacing:1px;font-weight:600;border-bottom:1px solid var(--line);padding:0 12px 14px}td{padding:17px 12px;border-bottom:1px solid #f0f3ef}tbody tr:last-child td{border:0}td:first-child{font-weight:550}td small{display:block;font-size:10px;margin-top:4px}.amount{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.badge{font-size:9px;padding:5px 8px;border-radius:5px;background:#eff5ed;color:#56825e}.badge.pending{background:#fcf5e8;color:#ae8740}.badge.overdue{background:#fbeeea;color:#b85b50}.row-actions{display:flex;gap:5px;justify-content:flex-end}.row-actions button{border:1px solid var(--line);background:#fff;color:#55765f;padding:7px 9px;border-radius:5px;font-size:10px;min-height:32px}.empty{text-align:center;padding:30px 15px;color:#8b978e;font-size:12px;line-height:1.8}.empty strong{display:block;color:#496451;margin-bottom:6px;font-size:14px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}.filters input{flex:1;min-width:150px}.filters select{font-size:12px}.account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.account-card{border:1px solid var(--line);border-radius:10px;padding:23px;background:white}.account-card h3{margin:18px 0 5px}.account-card strong{display:block;margin:22px 0 8px;font-size:25px;letter-spacing:-.5px}.account-card small{font-size:11px}.account-type{display:inline-block;background:#edf2e9;color:#618168;font-size:10px;padding:7px 10px;border-radius:5px}.toolbar{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}footer{margin-top:30px;display:flex;justify-content:space-between;font-size:9px;color:#9ba59e;padding-bottom:12px}.mobile-nav{display:none}dialog{width:min(530px,calc(100% - 28px));border:0;border-radius:15px;padding:27px;color:#243c36;max-height:90dvh;box-shadow:0 20px 100px #16332640}dialog::backdrop{background:#162f2877;backdrop-filter:blur(3px)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h2{margin:0}.icon-button{border:0;background:transparent;font-size:28px;color:#839085;padding:5px 10px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.form-error{color:var(--red);font-size:12px;margin:8px 0}.checkbox{flex-direction:row;align-items:center}.checkbox input{width:18px;min-height:18px}.full{width:100%}.auth{display:grid;grid-template-columns:1.1fr 1fr;min-height:100dvh}.auth-story{background:#164e43;color:#fff;padding:45px 9%;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-story:after{content:"";position:absolute;width:480px;height:480px;border:1px solid #ffffff10;border-radius:50%;right:-270px;top:30%;box-shadow:0 0 0 65px #ffffff03,0 0 0 130px #ffffff03;pointer-events:none}.auth-story .brand-icon{background:#d2e4ad;color:#164e43}.auth-story h1{font-size:clamp(45px,5vw,76px);font-weight:550;line-height:1.1;letter-spacing:-3px;margin:25px 0}.auth-story p{color:#c0d3c3;font-size:14px}.auth-story .eyebrow{font-size:9px;color:#b2ce9e}.auth-story small{font-size:11px;color:#b3c7ba}.auth-panel{display:grid;place-items:center;padding:40px}.auth-panel form{max-width:350px;width:100%}.auth-panel h2{font-size:29px;margin-top:15px}.auth-panel p{font-size:13px;color:#859187;margin-bottom:28px}.auth-panel label{margin-bottom:20px}.loading{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:12px}.loading p{margin:0;font-size:13px}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);z-index:100;background:#243e32;color:white;padding:14px 22px;border-radius:10px;box-shadow:0 8px 30px #0002;font-size:13px;max-width:90%;display:none}#toast.show{display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1500px){.content{padding-top:45px}}@media(max-width:1150px){.sidebar{width:205px;padding:28px 16px}main{margin-left:205px;width:calc(100% - 205px)}.content{padding:28px 24px}.topbar{padding:0 24px}.page-heading{align-items:flex-start;flex-direction:column}.stats{gap:10px}.stat{padding:17px}.grid-two{grid-template-columns:1.3fr 1fr}.account-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.sidebar{display:none}main{margin:0;width:100%}.topbar{height:63px;padding:0 20px}.content{padding:25px 18px 95px}.page-heading{gap:18px;margin-bottom:23px}h1{font-size:28px}.heading-actions{width:100%}.heading-actions input{flex:1;max-width:none;width:45%}.heading-actions .primary{flex:1;white-space:nowrap;padding:12px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:17px 14px}.stat strong{font-size:22px}.stat-top{font-size:10px;margin-bottom:14px}.stat-icon{font-size:13px;padding:5px 7px}.stat small{font-size:9px}.grid-two{grid-template-columns:1fr;gap:16px;margin-bottom:16px}.panel{padding:19px 15px;margin-bottom:16px}.panel-header{margin-bottom:20px}.legend{font-size:9px;gap:7px}.chart{height:175px}.notice{font-size:11px;padding:15px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;padding:8px 4px calc(8px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);z-index:30;justify-content:space-around}.mobile-nav .nav-link{display:flex;flex-direction:column;gap:4px;font-size:9px;margin:0;padding:8px 5px;width:auto;flex:1;background:transparent}.mobile-nav .nav-symbol{font-size:20px;text-align:center}.mobile-nav .active{color:#164e43;background:#eef4ed}.account-grid{grid-template-columns:1fr}.auth{grid-template-columns:1fr}.auth-story{padding:25px 28px;min-height:auto}.auth-story>div,.auth-story>small{display:none}.auth-panel{padding:40px 25px;align-items:start}.auth-panel form{max-width:400px}.auth-panel h2{font-size:26px}footer span{display:none}.topbar-right{gap:9px;font-size:11px}.topbar-right .secondary{font-size:10px;padding:8px;min-height:34px}#toast{bottom:92px}.form-grid{gap:0 10px}td{padding:15px 10px}.toolbar .secondary{flex:1}.filters select{flex:1;min-width:120px}}@media print{.sidebar,.mobile-nav,.topbar,.heading-actions,.toolbar,.filters,.row-actions,footer,#toast{display:none!important}main{margin:0;width:100%}.content{padding:0}.panel,.stat{break-inside:avoid}.app{display:block}body{background:white}.stat.featured{background:white;color:#243c36}.featured .stat-top,.featured small{color:#76837e}}

#breadcrumb{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-right{flex-shrink:0}.page-heading>div:first-child{min-width:0;max-width:100%}#page-subtitle{overflow-wrap:anywhere}

/* Leitura e preenchimento em telas de celular. */
textarea{font:inherit;width:100%;padding:11px 12px;border:1px solid #dce5df;border-radius:7px;resize:vertical;color:#344c41;background:white}
textarea:focus-visible{outline:3px solid #99c9b7;outline-offset:3px}
.sidebar{overflow-y:auto}
@media screen and (max-width:760px){
  textarea{font-size:16px}
  body{font-size:16px}
  .eyebrow{font-size:12px;letter-spacing:1.3px}
  .topbar,.topbar-right{font-size:14px}
  .topbar-right .secondary{font-size:14px;min-height:44px}
  .page-heading p:last-child,.notice,.empty,.auth-panel p,.form-error{font-size:15px}
  label{font-size:15px;line-height:1.5}
  input,select,label input,label select,input[type=month],.filters select{font-size:16px;min-height:46px}
  .primary,.secondary,.text-button{font-size:15px;min-height:46px}
  .heading-actions{flex-wrap:wrap}
  .heading-actions input,.heading-actions .primary{flex:1 1 155px}
  .heading-actions input{flex-basis:210px}
  .stat-top{font-size:14px;gap:6px;line-height:1.4}
  .stat-icon{flex-shrink:0}
  .stat strong{font-size:25px;overflow-wrap:anywhere}
  .stat small{display:block;font-size:13px;line-height:1.5}
  .panel-header{flex-wrap:wrap}
  .panel-header h2,.empty strong{font-size:18px}
  .panel-header small,.legend,.chart-label{font-size:13px}
  .category-label{font-size:15px;flex-wrap:wrap;line-height:1.5}
  table{font-size:15px}
  th,.badge,td small{font-size:13px}
  .row-actions button{font-size:14px;min-height:44px;padding:9px 12px}
  .account-card h3{font-size:17px}
  .account-card small,.account-type,dialog small{font-size:14px;line-height:1.6}
  dialog{padding:22px}
  .checkbox{align-items:flex-start}
  .checkbox input{flex-shrink:0;margin-top:2px}
  .nav-link{font-size:16px;min-height:46px}
  .mobile-nav{overflow-x:auto;justify-content:flex-start}
  .mobile-nav .nav-link{font-size:12px;padding:8px 4px;min-width:max-content;letter-spacing:0;flex:1 0 auto}
  .content{padding-bottom:115px}
  footer{font-size:12px}
}
.due-preview{list-style:none;margin:0;padding:0}
.due-preview li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.due-preview .row-actions{flex-wrap:wrap;justify-content:flex-end;max-width:360px;gap:8px}
.due-preview .row-actions:empty{display:none}
.due-preview .row-actions button{white-space:nowrap}
.due-preview li:last-child{border-bottom:0}
.due-preview li>div{min-width:0}
.due-preview strong{display:block;font-size:15px;overflow-wrap:anywhere}
.due-preview small{display:block;margin-top:5px;font-size:13px;line-height:1.5}
.due-preview .amount{font-size:15px;flex-shrink:0}
.due-preview-note{font-size:13px;line-height:1.5;margin:12px 0 0;color:#526649}
.due-options{display:none}
.account-status-button{display:block;margin-top:16px;min-height:44px}
.history-list{list-style:none;margin:0;padding:0}
.history-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end;margin-bottom:20px}
.history-filters label{min-width:0;margin:0}
.history-filters input,.history-filters select{width:100%;min-width:0;box-sizing:border-box}
@media screen and (max-width:760px){.history-filters{grid-template-columns:minmax(0,1fr)}.history-filters button{width:100%}}
.history-list>li{padding:18px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.history-list>li:last-child{border-bottom:0}
.history-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px 20px;flex-wrap:wrap}
.history-heading strong{font-size:15px}
.history-heading time,.history-list p{font-size:13px;color:#526649}
.history-list p{margin:7px 0 12px}
.history-list summary{cursor:pointer;font-size:14px;padding:8px 0;color:#164e43}
.history-details{margin:8px 0;padding:12px;background:#f5f8f3;border-radius:8px;font-size:13px}
.history-details>div{display:grid;grid-template-columns:minmax(75px,1fr) minmax(0,3fr);gap:10px;padding:5px 0}
.history-details dt{font-weight:600}
.history-details dd{margin:0;min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}
.history-details .history-details{padding:6px;margin:0}
.related-rows{list-style:none;margin:0;padding:0;max-width:100%}
.related-rows li{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,auto) auto;align-items:center;gap:10px;min-height:60px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}
.related-rows li:last-child{border-bottom:0}
.related-rows time{white-space:nowrap}
.related-rows .related-status{font-size:12px;color:#526649;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.related-rows .amount{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wide-history{width:min(780px,calc(100% - 16px))}
.related-rows .row-actions{gap:5px;min-width:0}
.related-rows .row-actions button{min-height:44px;white-space:nowrap}
.related-rows .action-icon{display:none}
#modal-title{min-width:0;overflow-wrap:anywhere}
@media screen and (max-width:760px){
  .wide-history{padding:14px}
  .related-rows li{grid-template-columns:auto minmax(0,1fr) auto;gap:6px;font-size:12px}
  .related-rows .related-status{display:none}
  .related-rows .row-actions{gap:3px}
  .related-rows .row-actions button{width:32px;min-width:32px;padding:0;font-size:19px}
  .related-rows .action-icon{display:inline}
  .related-rows .action-label{display:none}
}
.due-preview li[data-action]{cursor:pointer}
.due-open{display:block;width:100%;border:0;background:transparent;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer;min-width:0}
.due-open:focus-visible{outline:2px solid #164e43;outline-offset:3px;border-radius:3px}
.entry-details{overflow-wrap:anywhere}
.entry-details .row-actions{flex-wrap:wrap;justify-content:flex-start;gap:8px}
.entry-details .row-actions button{min-height:44px;font-size:14px}
@media screen and (max-width:760px){
  .due-preview li{grid-template-columns:minmax(0,1fr) auto 44px;gap:8px;padding:8px 0;min-height:60px}
  .due-preview strong{font-size:14px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .due-preview .due-open{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .due-preview small{display:block;font-size:12px;line-height:1.5;white-space:normal}
  .due-preview .row-actions{display:none}
  .due-preview .amount{text-align:right;font-size:14px;white-space:nowrap}
  .due-preview .due-options{display:block;min-width:44px;min-height:44px;padding:0;font-size:22px}
}
@media screen and (max-width:360px){
  .stats,.form-grid{grid-template-columns:1fr}
  .topbar{padding:0 12px;gap:8px}
  .topbar-right{gap:6px}
  #user-name{max-width:65px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}
.category-item{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.category-item .account-type{overflow-wrap:anywhere;min-width:0}
.category-item .row-actions{flex-wrap:wrap}
.panel.annual-balance{padding:16px 18px}
.annual-balance .panel-header{margin-bottom:12px}
.annual-balance .panel-header h2{font-size:14px}
.annual-balance-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.annual-balance-values small{display:block;margin-bottom:4px;font-size:11px}
.annual-balance-values strong{display:block;font-size:20px;font-weight:650;overflow-wrap:anywhere}
.annual-balance-result{border-left:1px solid var(--line);padding-left:12px}
.annual-balance .annual-positive{color:#2563eb}
.annual-balance p{font-size:10px;color:#76837e;line-height:1.4;margin:10px 0 0}
@media(max-width:760px){
  .panel.annual-balance{padding:14px 15px}
  .annual-balance-values{grid-template-columns:1fr;gap:8px}
  .annual-balance-values>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
  .annual-balance-values small{margin:0}
  .annual-balance-values strong{font-size:18px;text-align:right;min-width:0}
  .annual-balance-result{border-left:0;border-top:1px solid var(--line);padding:8px 0 0}
}
.getting-started>summary{cursor:pointer;font-size:14px;font-weight:650;line-height:1.6}
.getting-started>summary span{font-size:11px;font-weight:400;color:#618168;margin-left:10px}
.getting-started ol{list-style:none;padding:0;margin:14px 0}
.getting-started li{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.getting-started li>div{flex:1;min-width:0}
.getting-started li strong{font-size:12px}
.getting-started li p{margin:4px 0 0;font-size:11px;line-height:1.5;color:#76837e}
.guide-status{color:var(--green);font-size:20px}
.getting-started>small{font-size:10px;color:#76837e}
.help-field{min-width:0;margin-bottom:15px}
.help-field>label{margin-bottom:4px}
.field-help{font-size:11px;line-height:1.5;color:#526649}
.field-help summary{cursor:pointer;min-height:32px;padding:6px 0}
.field-help summary span{display:inline-block;border:1px solid currentColor;border-radius:50%;width:17px;text-align:center;line-height:15px;margin-right:4px}
.field-help p{margin:3px 0 0;padding:10px;background:#edf3e7;border-radius:6px}
@media(max-width:760px){.getting-started{padding:15px}.getting-started li{gap:8px}.getting-started li button{padding:8px;font-size:11px}.field-help summary{min-height:44px}}
@media print{.getting-started,.field-help{display:none}}

/* Destaque da repetição mensal. */
.secondary.repeat-button{background:#2563eb;border-color:#2563eb;color:#fff}
.secondary.repeat-button:hover{background:#1d4ed8;border-color:#1d4ed8}
.secondary.repeat-button:focus-visible{outline-color:#2563eb}

.due-pagination{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.due-pagination button{min-width:44px;min-height:44px}
.due-pagination [aria-current=page]{background:var(--green);border-color:var(--green);color:#fff}

.report-filters{display:grid;grid-template-columns:100px 150px 180px minmax(150px,1fr) auto;gap:12px;align-items:end;margin-bottom:20px}.report-filters label{margin:0;min-width:0}.report-filters input,.report-filters select{width:100%}.report-summary{overflow-wrap:anywhere}
@media(max-width:1150px){.report-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.report-filters{grid-template-columns:minmax(0,1fr)}}
@media print{.report-filters{display:none}}

.report-entry-link{border:0;background:transparent;color:#1d4ed8;text-decoration:underline;text-underline-offset:3px;font:inherit;text-align:left;padding:8px 0;min-height:44px;max-width:100%;overflow-wrap:anywhere}.report-entry-link:hover{color:#164e43}
@media print{.report-entry-link{color:inherit;text-decoration:none;padding:0;min-height:0}}

@media screen{.report-month-offpage{display:none}}
@media print{.report-month-pagination{display:none}.report-month-offpage{display:table-row}}

@media screen{.report-category-offpage{display:none}}
@media print{.report-category-pagination{display:none}.report-category-offpage{display:block}}

.report-payment-cards{display:none}
@media screen and (max-width:760px){
  .report-payment-table{display:none}
  .report-payment-cards{display:grid;gap:8px;list-style:none;margin:0;padding:0}
  .report-payment-cards li{min-width:0}
  .report-payment-cards button{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;min-height:52px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:#f6f8f7;text-align:left;font-size:13px}
  .report-payment-cards button:hover{background:#eaf2ed}
  .report-payment-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1d4ed8;font-weight:600}
  .report-payment-cards time{font-size:12px;color:#526649;white-space:nowrap}
  .report-payment-cards strong{white-space:nowrap;text-align:right;font-size:13px}
}
.report-month-cards{display:none}
@media screen and (max-width:760px){
  .report-month-table{display:none}
  .report-month-cards{display:grid;gap:8px}
  .report-month-card{border:1px solid var(--line);border-radius:9px;background:#f6f8f7;min-width:0}
  .report-month-card summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;min-height:52px;padding:8px 10px;cursor:pointer;list-style:none;font-size:13px}
  .report-month-card summary::-webkit-details-marker{display:none}
  .report-month-card summary>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
  .report-month-card summary small{font-size:11px;color:#526649}
  .report-month-card summary strong{white-space:nowrap}
  .report-month-card summary:focus-visible{outline:3px solid #99c9b7;outline-offset:2px;border-radius:9px}
  .report-month-card dl{margin:0;padding:0 10px 12px;font-size:13px}
  .report-month-card dl>div{display:flex;justify-content:space-between;gap:8px;padding:5px 0}
  .report-month-card dd{margin:0}
  .report-month-cards>p{font-size:12px;margin:0}
}
@media screen{.report-payment-offpage{display:none}}
@media print{.report-payment-pagination,.report-payment-count{display:none}.report-payment-offpage{display:table-row}}

.due-pagination button:disabled{cursor:default}

/* Marca do sistema no cabeçalho das telas internas. */
.topbar .brand{color:var(--green);flex-shrink:0}
.topbar .brand-icon{background:#d2e4ad;color:#164e43}
@media screen and (max-width:760px){
  .topbar{
    position:sticky;
    top:0;
    z-index:30;
    height:calc(63px + env(safe-area-inset-top));
    padding-top:env(safe-area-inset-top);
    background:#fff;
  }
}
