html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
*{box-sizing:border-box;margin:0;padding:0}
:root{--nav-vidro:rgba(255,255,255,.30);--nav-linha:rgba(23,33,29,.14);--nav-ativo:rgba(60,60,50,.10);--nav-margem:12px;--pill-bar-bg:#f2efe7;--sobreVerde:#ffffff;--fundo:#0f2822;--cartao:#ffffff;--texto:#17211d;--suave:#5c6b64;--verde:#1d7a54;--verdeclaro:#e3f2ea;--vermelho:#c0392b;--vermelhoclaro:#fbe9e7;--corRec:#1d7a54;--corDes:#c0392b;--ouro:#e8b54a;--verdescuro:#14342c}
html,body{height:100%}
body{font-family:system-ui,Roboto,sans-serif;background:var(--bg549,#f2efe7);color:var(--texto);display:flex;flex-direction:column;font-size:calc(16px*var(--fs,1))}
header{background:var(--verdescuro);color:#fff;padding:14px 18px;display:flex;align-items:center;justify-content:space-between}
header h1{font-size:calc(20px*var(--fs,1));letter-spacing:.5px}
header h1::before{content:"●";color:var(--ouro);margin-right:8px;font-size:calc(14px*var(--fs,1))}
header span{font-size:calc(12px*var(--fs,1));color:#cfe0d8}
main{flex:1;overflow-y:auto;padding:14px 14px 150px}
.page.hidden{display:none}
h2{font-size:calc(22px*var(--fs,1));margin:4px 0 12px}
h3{font-size:calc(15px*var(--fs,1));color:var(--suave);margin:18px 0 8px}
.sub{font-size:calc(13px*var(--fs,1));color:var(--suave);margin-bottom:10px}
.saldocard{background:var(--verdescuro);color:#fff;border-radius:16px;padding:18px;text-align:center}
.scrot{font-size:calc(13px*var(--fs,1));color:#cfe0d8}
#saldo{display:block;font-size:calc(38px*var(--fs,1));font-weight:700;margin:4px 0 10px}
#saldo.neg{color:#ffb4a8}
.resumo{display:flex;justify-content:space-between;font-size:calc(13px*var(--fs,1))}
#receitasmes{color:#a8e6c3}#despesasmes{color:#ffb4a8}
.bigadd{display:block;width:100%;margin:16px 0;background:var(--ouro);color:#3a2b05;border:none;border-radius:12px;padding:16px;font-size:calc(17px*var(--fs,1));font-weight:700;cursor:pointer}
.bigadd:active{filter:brightness(.92)}
.mov{display:flex;align-items:center;background:var(--cartao);border-radius:var(--r-md);padding:10px 10px;margin-bottom:8px;gap:8px}
.movic{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex:none;background:var(--verdeclaro)}
.movic svg{width:22px;height:22px}
.movinfo{flex:1;min-width:0}
.movcat{font-weight:600;font-size:calc(14px*var(--fs,1))}
.movnota{font-size:calc(12px*var(--fs,1));color:var(--suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.movdata{font-size:calc(11px*var(--fs,1));color:var(--suave)}
.movval{font-weight:700;font-size:calc(15px*var(--fs,1));white-space:nowrap}
.movval.d{color:var(--corDes)}.movval.r{color:var(--corRec)}
.movdel{background:none;border:none;color:var(--suave);font-size:calc(18px*var(--fs,1));padding:4px;cursor:pointer}
.vazio{text-align:center;color:var(--suave);font-size:calc(14px*var(--fs,1));padding:30px 10px}
.tipotoggle{display:flex;gap:8px;margin-bottom:14px}
.tipotoggle button{flex:1;padding:12px;border-radius:12px;border:2px solid #d8d2c2;background:var(--cartao,#fff);font-size:calc(15px*var(--fs,1));font-weight:600;cursor:pointer;color:var(--suave)}
.tipotoggle button.on#tdesp{border-color:var(--vermelho);color:var(--vermelho);background:var(--vermelhoclaro)}
.tipotoggle button.on#trece{border-color:var(--verde);color:var(--verde);background:var(--verdeclaro)}
label{display:block;font-size:calc(13px*var(--fs,1));color:var(--suave);margin:12px 0 6px}
input{width:100%;padding:12px;border:2px solid #d8d2c2;border-radius:12px;font-size:calc(16px*var(--fs,1));background:var(--cartao,#fff);color:var(--texto)}
input:focus{outline:none;border-color:var(--verde)}
#valor{font-size:calc(24px*var(--fs,1));font-weight:700}
#catchips{display:flex;flex-wrap:wrap;gap:8px}
.catchip{padding:9px 13px;border-radius:16px;border:2px solid #d8d2c2;background:var(--cartao,#fff);font-size:calc(13px*var(--fs,1));font-weight:600;cursor:pointer;color:var(--suave);display:flex;align-items:center;gap:6px}
.catchip svg{width:16px;height:16px}
.catchip.on{border-color:var(--verde);background:var(--verdeclaro);color:var(--verde)}
.err{color:var(--vermelho);font-size:calc(13px*var(--fs,1));margin-top:10px}
.err.hidden{display:none}
.totrow{background:var(--cartao);border-radius:var(--r-md);padding:12px;margin-bottom:8px}
.tothead{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.tothead .movic{width:32px;height:32px}
.totname{flex:1;font-weight:600;font-size:calc(14px*var(--fs,1))}
.totval{font-weight:700;font-size:calc(14px*var(--fs,1))}
.totbar{height:8px;border-radius:4px;background:#eee7d8;overflow:hidden}
.totfill{height:100%;background:var(--verde);border-radius:4px}
.totfill.d{background:var(--vermelho)}
.teamcard{background:var(--cartao);border-radius:var(--r-md);padding:16px;margin-bottom:10px;display:flex;flex-direction:column;gap:2px}
.teamcard strong{font-size:calc(17px*var(--fs,1))}
.teamcard span{font-size:calc(13px*var(--fs,1));color:var(--suave)}
.studio{text-align:center;font-weight:700;color:var(--verdescuro);margin:16px 0 6px}
nav{position:fixed;left:0;right:0;bottom:0;background:var(--cartao,#fff);border-top:1px solid #e2dccb;display:flex;padding:6px 4px calc(8px + env(safe-area-inset-bottom))}
nav button{flex:1;background:none;border:none;font-size:calc(12px*var(--fs,1));color:var(--suave);padding:8px 2px;cursor:pointer;font-weight:600}
nav button.active{color:var(--verde)}
/* beta.2 */
#moedachips{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}
.moedachip{flex:none;padding:8px 12px;border-radius:16px;border:2px solid #d8d2c2;background:var(--cartao,#fff);font-size:calc(14px*var(--fs,1));font-weight:700;cursor:pointer;color:var(--suave)}
.moedachip.on{border-color:var(--ouro);background:#fdf3dd;color:#7a5b12}
.conv{font-size:calc(13px*var(--fs,1));color:var(--suave);margin-top:6px;font-weight:600}
.conv.hidden{display:none}
.movvalbox{display:flex;flex-direction:column;align-items:flex-end;white-space:nowrap}
.movconv{font-size:calc(11px*var(--fs,1));color:var(--suave);font-weight:600}
.defcard{background:var(--cartao);border-radius:var(--r-md);padding:14px;margin-bottom:12px}
.defcard h4{font-size:calc(15px*var(--fs,1));margin-bottom:6px;color:var(--verdescuro)}
.defcard p{font-size:calc(13px*var(--fs,1));line-height:1.5}
.credh2{margin-top:22px}
.taxarow{display:flex;align-items:center;gap:8px;padding:9px 0;border-bottom:1px solid #eee7d8}
.taxarow:last-child{border-bottom:none}
.taxanome{flex:1;font-size:calc(13px*var(--fs,1));font-weight:600}
.taxaeq{font-size:calc(12px*var(--fs,1));color:var(--suave)}
.taxainp{width:122px;padding:7px 8px;font-size:calc(14px*var(--fs,1));text-align:right;border-radius:8px}
.taxainp.custom{border-color:var(--ouro);background:#fdf3dd}
.taxaeur{font-size:calc(13px*var(--fs,1));color:var(--suave)}
.orcrow{background:var(--cartao);border-radius:var(--r-md);padding:12px;margin-bottom:8px;cursor:pointer}
.orcbarwrap{padding:2px 0}
.orcbar{position:relative;height:10px;border-radius:8px;background:#eee7d8;overflow:visible}
.orcfill{height:100%;border-radius:8px;background:var(--verde)}
.orcfill.adiantado{background:var(--ouro)}
.orcfill.estouro{background:var(--vermelho)}
.orchoje{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--verdescuro);border-radius:1px}
.orcline{display:flex;align-items:baseline;gap:10px;font-size:calc(12px*var(--fs,1));color:var(--suave);margin-top:6px}
.orcline .neg{color:var(--vermelho);font-weight:700}
.orchlabel{margin-left:auto;font-size:calc(10px*var(--fs,1));color:#9aa8a1}
.orcsobra{font-size:calc(11px*var(--fs,1));color:var(--verde);margin-top:6px;font-weight:600}
.orcdef{margin-top:8px;background:none;border:1.5px dashed #c9c2b2;border-radius:12px;color:var(--suave);font-size:calc(13px*var(--fs,1));font-weight:600;padding:8px 12px;cursor:pointer;width:100%}
.orcedit{background:var(--cartao);border:2px solid var(--ouro);border-radius:var(--r-md);padding:14px;margin-bottom:12px}
.orcedit.hidden{display:none}
.orcedit strong{font-size:calc(16px*var(--fs,1));display:block;margin-bottom:4px}
.orceditbtns{display:flex;gap:8px;margin-top:12px}
.orceditbtns button{flex:1;padding:11px;border-radius:12px;border:none;font-size:calc(14px*var(--fs,1));font-weight:700;cursor:pointer}
#orceditsave{background:var(--verde);color:var(--sobreVerde)}
#orceditdel{background:var(--vermelhoclaro);color:var(--vermelho)}
#orceditcancel{background:#eee7d8;color:var(--suave)}

/* beta.3: contas e notas */
nav button{font-size:calc(11px*var(--fs,1));padding:10px 2px}
.sech{margin:14px 0 6px}
.contarow{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--cartao,#fff);border:1px solid #e3ddd2;border-radius:12px;padding:10px 12px;margin-bottom:8px}
.containfo{display:flex;flex-direction:column;min-width:0}
.contanome{font-weight:600}
.contamoeda{font-size:calc(12px*var(--fs,1));color:#7a7166}
.contavals{display:flex;flex-direction:column;align-items:flex-end}
.contaval{font-weight:700}
.contaval.neg{color:var(--vermelho)}
.contaeur{font-size:calc(12px*var(--fs,1));color:#7a7166}
.contachip{border:1px solid #cfc7b8;background:var(--cartao,#fff);border-radius:16px;padding:6px 12px;margin:0 6px 6px 0;font-size:calc(13px*var(--fs,1))}
.contachip.on{background:var(--verdescuro);color:#fff;border-color:var(--verdescuro)}
.contaadd{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}
.contaadd input{flex:1;min-width:120px}
.contaadd select{max-width:130px}
.contaadd button{background:var(--verdescuro);color:#fff;border:0;border-radius:12px;padding:8px 14px}
.notabanner{border-radius:12px;padding:10px 12px;margin-top:10px;display:flex;align-items:center;gap:8px;cursor:pointer;color:#33302a}
.nbtxt{display:flex;flex-direction:column;min-width:0}
.nbtxt span{font-size:calc(12px*var(--fs,1));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nbmais{font-size:calc(12px*var(--fs,1));font-weight:700}
.pinmark{font-size:calc(10px*var(--fs,1));font-weight:700;letter-spacing:1px;background:var(--verdescuro);color:#fff;border-radius:8px;padding:2px 6px;flex-shrink:0}
.notacard{border-radius:12px;padding:12px;margin-bottom:10px;color:#33302a;cursor:pointer}
.notacard strong{display:block;margin-bottom:4px}
.notacard p{margin:0;font-size:calc(14px*var(--fs,1));white-space:pre-wrap}
.notacard .pinmark{float:right;margin-left:6px}
.notaedit{background:var(--cartao,#fff);border:1px solid #e3ddd2;border-radius:12px;padding:12px;margin-top:10px}
.notaedit textarea{width:100%;box-sizing:border-box;border:1px solid #cfc7b8;border-radius:12px;padding:8px;font-family:inherit;font-size:calc(14px*var(--fs,1));resize:vertical}
#notacores{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 10px}
.corswatch{width:32px;height:32px;border-radius:50%;border:2px solid transparent;cursor:pointer}
.corswatch.on{border-color:var(--verdescuro)}
.pinbtn{display:block;width:100%;background:#f3efe7;border:1px solid #cfc7b8;border-radius:12px;padding:8px;margin-bottom:8px;font-size:calc(14px*var(--fs,1))}
.pinbtn.on{background:var(--verdescuro);color:#fff;border-color:var(--verdescuro)}
.notaedit.hidden{display:none}
.notabanner.hidden{display:none}
.contaval,.contaeur{white-space:nowrap}

/* beta.79: ecra de boas-vindas com dica do dia */
#splash{position:fixed;inset:0;background:#f2efe7;color:#17211d;display:flex;flex-direction:column;align-items:center;z-index:5000;transition:opacity .5s}
body.escuro #splash{background:#101915;color:#e6efea}
#splash.fade{opacity:0;pointer-events:none}
#splash .sp-topo{width:100%;display:flex;justify-content:center;padding-top:11.2vh}
#splash .sp-topo img{width:min(280px,65vw);height:auto}
#splash .sp-meio{flex:1;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:11vh}
#splash .sp-dica{padding:0 44px;text-align:center}
#splash .sp-dica p{margin:0;font-size:min(27px,6.3vw);font-weight:700;line-height:1.38;letter-spacing:.2px}
#splash .sp-sep{width:30px;height:2px;background:#e8b54a;margin:57px auto 20px}
#splash .sp-rot{font-size:calc(15px*var(--fs,1));font-weight:600;letter-spacing:3.5px;text-transform:uppercase;color:var(--suave)}
#splash .sp-anel{margin-bottom:6.9vh;position:relative;width:74px;height:74px}
#splash .sp-trilho{stroke:rgba(20,52,44,.12)}
body.escuro #splash .sp-trilho{stroke:rgba(255,255,255,.14)}
#splash .sp-pct{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:calc(16px*var(--fs,1));font-weight:700;color:var(--verdescuro)}
body.escuro #splash .sp-pct{color:#e8b54a}
.tipotoggle button{font-size:calc(13px*var(--fs,1));padding:12px 4px}
.tipotoggle button.on#ttrans{border-color:#5a6b7a;color:#5a6b7a;background:#eef1f4}
#catbox.hidden,#parabox.hidden{display:none}
.movval.t{color:#5a6b7a}

/* beta.5: subcategorias */
#subbox.hidden{display:none}
#subbox{margin-top:8px}
.subadd{border-style:dashed}
.subnovainp{border:1px solid var(--verdescuro);border-radius:16px;padding:6px 12px;font-size:calc(13px*var(--fs,1));max-width:180px}

/* beta.6: foto recibo + gestao */
#fotobox.hidden{display:none}
#fotoprev{display:flex;align-items:center;gap:8px;margin-top:8px}
#fotoprev.hidden{display:none}
#fotoprevimg{max-height:80px;border-radius:8px;border:1px solid #e3ddd2}
#fotoprev button{background:var(--cartao,#fff);border:1px solid #cfc7b8;border-radius:50%;width:28px;height:28px}
.fotoview{position:fixed;inset:0;background:rgba(0,0,0,.88);display:flex;align-items:center;justify-content:center;z-index:98}
.fotoview.hidden{display:none}
.fotoview img{max-width:96%;max-height:92%;border-radius:8px}
.movfoto{max-height:40px;max-width:40px;border-radius:8px;margin-left:6px;cursor:pointer;flex-shrink:0}
.defh5{margin:10px 0 4px;color:var(--suave);font-size:calc(13px*var(--fs,1))}
.catdefrow{cursor:pointer;flex-direction:row;align-items:center}
.catdefrow .movic{margin-right:8px}
.subdefrow{padding:6px 12px}

.movdet{font-size:calc(12px*var(--fs,1));color:#8a8a7a;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.movsaldo{display:block;font-size:calc(11px*var(--fs,1));color:#9a9a8a;font-weight:400;white-space:normal;text-align:right}
#detalhes{width:100%;border:1.5px solid #d8d4c8;border-radius:12px;padding:10px;font:inherit;background:var(--cartao,#fff);resize:vertical}

#movq{width:100%;border:1.5px solid #d8d4c8;border-radius:12px;padding:10px;font:inherit;margin-bottom:8px;background:var(--cartao,#fff)}
.vtabs{display:flex;gap:2px;margin-bottom:8px;border-bottom:1.5px solid #e2ddd0}
.vtabs button{flex:1;border:none;background:none;border-radius:0;padding:7px 0 6px;font:inherit;font-size:calc(13px*var(--fs,1));color:#8a8a7a;border-bottom:2px solid transparent;margin-bottom:-1.5px}
.vtabs button.on{background:none;color:var(--verde);border-bottom-color:var(--verde);font-weight:700}
.movnav{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.movnav button{border:1.5px solid #d8d4c8;background:var(--cartao,#fff);border-radius:12px;padding:5px 14px;font:inherit}
#movnavlabel{font-weight:600}
.fchips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
.fchips select{border:1.5px solid #d8d4c8;border-radius:12px;padding:6px;font:inherit;font-size:calc(13px*var(--fs,1));background:var(--cartao,#fff);max-width:32%}
.favchip{border:1.5px solid #d8d4c8;border-radius:12px;padding:6px 10px;font:inherit;font-size:calc(13px*var(--fs,1));background:var(--cartao,#fff)}
.favchip.on{background:#e8b93c;border-color:#e8b93c;color:#fff}
.diasep{display:flex;align-items:center;gap:10px;margin:14px 4px 4px;padding:0 2px}
.diasep .ds-dia{font-size:calc(26px*var(--fs,1));font-weight:800;line-height:1;color:var(--texto)}
.diasep .ds-meta{display:flex;flex-direction:column;line-height:1.2}
.diasep .ds-ano{font-size:calc(10.5px*var(--fs,1));color:#8a8a7a}
.diasep .ds-sem{font-size:calc(10.5px*var(--fs,1));color:#8a8a7a;background:#eee9dc;border-radius:4px;padding:1px 5px;margin-top:2px;align-self:flex-start}
.diasep .ds-tots{margin-left:auto;display:flex;gap:16px;font-size:calc(13px*var(--fs,1));font-weight:700}
.diasep .ds-r{color:var(--corRec)}
.diasep .ds-d{color:var(--corDes)}
.movtotais{position:fixed;left:0;right:0;bottom:var(--navH,60px);z-index:900;display:grid;grid-template-columns:1fr 1fr 1fr;text-align:center;padding:8px 4px 7px;margin:0;background:var(--bg549,#f2efe7);border-top:1.5px solid #e2ddd0;box-shadow:0 -2px 10px rgba(23,33,29,.08)}
#movlist{padding-bottom:70px}
.movtotais .mt-l{display:block;font-size:calc(11px*var(--fs,1));color:#8a8a7a}
.movtotais .mt-v{display:block;font-size:calc(15px*var(--fs,1));font-weight:700;margin-top:1px}
.movtotais .mt-v.r{color:var(--corRec)}
.movtotais .mt-v.d{color:var(--corDes)}
.movtotais .mt-v.t{color:var(--texto)}
.movstar{border:none;background:none;font-size:calc(18px*var(--fs,1));color:#c8c4b4;padding:0 2px}
.movstar.on{color:#e8b93c}

.movcat{overflow-wrap:break-word;cursor:pointer}
.movvalbox{flex-shrink:0;margin-left:auto;max-width:26%}
.totresumo{display:flex;justify-content:space-between;background:var(--cartao);border-radius:var(--r-md);padding:12px;margin-bottom:10px;font-size:calc(14px*var(--fs,1))}
.totresumo b{display:block;font-size:calc(16px*var(--fs,1))}
#totpie{width:100%;height:auto;background:var(--cartao);border-radius:var(--r-md);margin-bottom:10px}
#totarea{width:100%;height:auto;background:var(--cartao);border-radius:var(--r-md);margin-bottom:10px}
.sech{margin:14px 0 6px;font-size:calc(15px*var(--fs,1))}
.totcontarow{background:var(--cartao);border-radius:var(--r-md);padding:10px 12px;margin-bottom:6px;font-size:calc(13px*var(--fs,1))}
.totcontarow b{font-size:calc(14px*var(--fs,1))}
#totbarras{display:flex;align-items:flex-end;gap:4px;height:110px;background:var(--cartao);border-radius:var(--r-md);padding:10px}
.tbar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}
.tbar .b{width:70%;background:#b9d6c6;border-radius:3px 3px 0 0;min-height:2px}
.tbar.on .b{background:color-mix(in srgb,var(--verdescuro) 78%,var(--verde))}
.tbar span{font-size:calc(10px*var(--fs,1));color:#8a8a7a;margin-top:3px}

.orctotal{background:var(--cartao);border-radius:var(--r-md);padding:12px;margin-bottom:10px;cursor:pointer}
.orctotal .tothead{margin-bottom:6px}
.orcaa{display:flex;justify-content:space-between;font-size:calc(12px*var(--fs,1));color:#8a8a7a;margin-top:4px}

.nb{white-space:nowrap}
.patcard{background:var(--cartao);border-radius:var(--r-md);padding:12px 14px;margin-bottom:8px;font-size:calc(14px*var(--fs,1))}
.patcard .patbig{font-size:calc(24px*var(--fs,1));font-weight:700;display:block;margin-bottom:4px}
.patcard .patline{color:var(--suave);font-size:calc(12px*var(--fs,1));display:block;margin-top:2px}
.objaddbtn{float:right;font-size:calc(12px*var(--fs,1));font-weight:600;border:2px solid #d8d2c2;background:var(--cartao,#fff);border-radius:12px;padding:4px 10px;cursor:pointer;color:var(--verde)}
.objrow{background:var(--cartao);border-radius:var(--r-md);padding:10px 12px;margin-bottom:8px}
.objrow .objtop{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.objrow .objnome{font-weight:600;font-size:calc(14px*var(--fs,1));overflow-wrap:break-word;min-width:0;flex:1}
.objrow .objvals{font-size:calc(13px*var(--fs,1));color:var(--suave);white-space:nowrap;flex:none}
.objbar{height:8px;border-radius:99px;background:#e8e2d2;margin:8px 0 6px;overflow:hidden}
.objbar i{display:block;height:100%;border-radius:99px;background:var(--verde)}
.objacoes{display:flex;gap:6px;margin-top:6px}
.objacoes button{flex:1;font-size:calc(12px*var(--fs,1));font-weight:600;border:2px solid #d8d2c2;background:var(--cartao,#fff);border-radius:12px;padding:6px 4px;cursor:pointer}
.objform{background:var(--cartao);border-radius:var(--r-md);padding:12px;margin-bottom:8px}
.objform.hidden{display:none}
.etqchips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.etqchip{background:var(--verdeclaro);color:var(--verde);border-radius:99px;padding:6px 12px;font-size:calc(13px*var(--fs,1));font-weight:600;cursor:pointer}
.movetq{font-size:calc(11px*var(--fs,1));color:var(--verde);font-weight:600;margin-top:1px}
.btncopia{background:var(--cartao,#fff);color:var(--verde);border:2px solid var(--verde);margin-top:-8px}
.btncopia.hidden{display:none}
.copiabox{background:var(--cartao,#fff);border-radius:16px;padding:18px;width:86%;max-width:340px}
.copiabox h3{margin:0 0 12px}
.copiabox .bigadd{margin:6px 0}
.copiabox .objaddbtn{float:none;width:100%;margin-top:6px}

#defview select{width:100%;padding:12px;border:2px solid #d8d2c2;border-radius:12px;font-size:calc(16px*var(--fs,1));background:var(--cartao,#fff);margin-bottom:8px}
.fotostrip{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.fotostrip.hidden{display:none}
.fotothumb{position:relative;width:72px;height:72px}
.fotothumb img{width:72px;height:72px;object-fit:cover;border-radius:8px;cursor:pointer}
.fotothumb .fotodel{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:99px;border:none;background:var(--cartao,#fff);color:var(--vermelho);font-size:calc(12px*var(--fs,1));box-shadow:0 1px 3px rgba(0,0,0,.25);cursor:pointer}
.movfotobox{position:relative;flex-shrink:0}
.movfoton{position:absolute;bottom:-4px;right:-4px;background:var(--verde);color:var(--sobreVerde);font-size:calc(10px*var(--fs,1));font-weight:700;border-radius:99px;padding:1px 5px}
#fotoprev2,#fotonext2{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.15);color:#fff;border:none;font-size:calc(34px*var(--fs,1));padding:8px 14px;border-radius:12px;cursor:pointer;z-index:99}
#fotoprev2{left:8px}#fotonext2{right:8px}
#fotoprev2.hidden,#fotonext2.hidden{display:none}
#fotocount{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);color:#fff;font-size:calc(13px*var(--fs,1));background:rgba(0,0,0,.5);padding:2px 10px;border-radius:99px}

/* com foto: recuperar largura para o titulo */
.mov.comfoto{gap:4px}
.mov.comfoto .movfoto{max-width:28px;max-height:28px;margin-left:0}
.mov.comfoto .movic{width:32px;height:32px}
.mov.comfoto .movvalbox{max-width:none}
.mov.comfoto .movcat{font-size:calc(13px*var(--fs,1))}
.mov.comfoto .movsaldo{font-size:calc(10px*var(--fs,1))}
.mov.comfoto .movsaldo{font-size:0}
.mov.comfoto .movsaldo .nb{font-size:calc(10px*var(--fs,1))}
.mov.comfoto .movstar{font-size:calc(16px*var(--fs,1));padding:0}
.mov.comfoto .movdel{padding:0 1px}

/* cores por categoria */
#catcoresel{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 10px}
.catswatch{width:28px;height:28px;border-radius:50%;border:2px solid rgba(0,0,0,.12);cursor:pointer;padding:0}
.catswatch.on{border-color:#222;box-shadow:0 0 0 2px #fff inset}
.catswatch.auto{width:auto;border-radius:12px;padding:0 10px;background:var(--cartao,#fff);color:var(--suave);font-size:calc(11px*var(--fs,1));font-weight:700}

/* beta.18: pass compacta (pedido explicito do Paulo 16/10 08:53: "coisas mais pequenas, tamanho Money Manager") */
body{font-size:calc(14px*var(--fs,1))}
header{padding:10px 14px}
header h1{font-size:calc(17px*var(--fs,1))}
header span{font-size:calc(10.5px*var(--fs,1))}
main{padding:10px 10px 150px}
h2{font-size:calc(18px*var(--fs,1));margin:2px 0 8px}
h3{font-size:calc(13px*var(--fs,1));margin:12px 0 6px}
.sub{font-size:calc(11px*var(--fs,1));margin-bottom:8px}
.saldocard{padding:12px;border-radius:12px}
.scrot{font-size:calc(11px*var(--fs,1))}
#saldo{font-size:calc(28px*var(--fs,1));margin:2px 0 6px}
.resumo{font-size:calc(11px*var(--fs,1))}
.bigadd{margin:10px 0;padding:12px;font-size:calc(14px*var(--fs,1));border-radius:12px}
.mov{padding:7px 8px;margin-bottom:6px;gap:6px;border-radius:12px}
.movic{width:30px;height:30px;border-radius:8px}
.movic svg{width:17px;height:17px}
.movcat{font-size:calc(12.5px*var(--fs,1))}
.mov.comfoto .movcat{font-size:calc(12px*var(--fs,1))}
.movnota{font-size:calc(10.5px*var(--fs,1))}
.movdata{font-size:calc(10px*var(--fs,1))}
.movval{font-size:calc(13px*var(--fs,1))}
.movconv{font-size:calc(10px*var(--fs,1))}
.movsaldo{font-size:calc(10px*var(--fs,1))}
.movetq{font-size:calc(10px*var(--fs,1))}
.movstar{font-size:calc(15px*var(--fs,1));padding:0 1px}
.movdel{font-size:calc(15px*var(--fs,1));padding:2px}
.mov.comfoto .movic{width:26px;height:26px}
.mov.comfoto .movfoto{max-width:26px;max-height:26px}
.diasep{margin:10px 3px 3px}
.diasep .ds-dia{font-size:calc(22px*var(--fs,1))}
.tipotoggle button{padding:8px;font-size:calc(13px*var(--fs,1));border-radius:12px}
label{font-size:calc(11px*var(--fs,1));margin:8px 0 4px}
input{padding:9px;font-size:calc(14px*var(--fs,1));border-radius:12px}
select{padding:8px;font-size:calc(13px*var(--fs,1));border-radius:12px}
#valor{font-size:calc(19px*var(--fs,1))}
.catchip{padding:6px 10px;font-size:calc(11px*var(--fs,1));border-radius:16px;gap:4px}
.catchip svg{width:13px;height:13px}
.contachip{padding:6px 10px;font-size:calc(11px*var(--fs,1))}
.moedachip{padding:6px 10px;font-size:calc(12px*var(--fs,1));border-radius:12px}
.conv{font-size:calc(11px*var(--fs,1))}
.totrow{padding:8px 10px;margin-bottom:6px;border-radius:12px}
.tothead .movic{width:26px;height:26px}
.totname{font-size:calc(12.5px*var(--fs,1))}
.totval{font-size:calc(12.5px*var(--fs,1))}
.contarow{padding:8px 10px;margin-bottom:6px;border-radius:12px;font-size:calc(13px*var(--fs,1))}
.contamoeda{font-size:calc(10.5px*var(--fs,1))}
.contaeur{font-size:calc(10.5px*var(--fs,1))}
.notacard{padding:9px 10px;margin-bottom:8px;border-radius:12px}
.notacard p{font-size:calc(12.5px*var(--fs,1))}
.objrow{padding:8px 10px;margin-bottom:6px;border-radius:12px}
.objrow .objnome{font-size:calc(12.5px*var(--fs,1))}
.objrow .objvals{font-size:calc(11px*var(--fs,1))}
.defcard{padding:10px 12px;margin-bottom:10px}
.defcard h4{font-size:calc(13px*var(--fs,1))}
.defcard p{font-size:calc(11px*var(--fs,1))}
.teamcard{padding:10px 12px}
.teamcard strong{font-size:calc(14px*var(--fs,1))}
.teamcard span{font-size:calc(11px*var(--fs,1))}
.fchips select{font-size:calc(11px*var(--fs,1));padding:5px}
.favchip{font-size:calc(11px*var(--fs,1));padding:5px 8px}
.segbtns button,.fchips button{font-size:calc(11px*var(--fs,1));padding:6px 8px}
.orcedit{padding:10px 12px}
nav button{font-size:calc(10.5px*var(--fs,1));padding:6px 2px}
.catswatch{width:24px;height:24px}

/* beta.19: menus - contas avancadas + copia de seguranca */
.contabtns{display:flex;gap:4px;margin-left:6px}
.contabtn{border:1.5px solid #d8d2c2;background:var(--cartao,#fff);border-radius:8px;font-size:calc(11px*var(--fs,1));padding:3px 6px;cursor:pointer;color:var(--suave)}
.contabtn.off{opacity:.35}
.contarow.oculta{opacity:.55}
.bkbtns{display:flex;gap:8px;margin:6px 0}
.bkbtns button{flex:1;padding:9px;border-radius:12px;border:2px solid var(--verde);background:var(--cartao,#fff);color:var(--verde);font-weight:700;cursor:pointer;font-size:calc(12px*var(--fs,1))}
#bktxt{width:100%;font-size:calc(10px*var(--fs,1));border:2px solid #d8d2c2;border-radius:12px;padding:8px;font-family:monospace}

/* beta.21 PIN + cores */
#lockview{position:fixed;inset:0;background:var(--verdescuro);z-index:200;display:flex;align-items:center;justify-content:center}
#lockview.hidden{display:none}
.lockcard{background:var(--cartao,#fff);border-radius:16px;padding:22px;width:80%;max-width:300px;text-align:center}
#lockpin{display:block;margin:0 auto;width:150px}
#lockbtn{display:block;margin:10px auto 0;min-width:110px}
#lockbtn{background:var(--verde);color:var(--sobreVerde);border:none;border-radius:12px;padding:10px 0;font-weight:700;font-size:calc(15px*var(--fs,1))}
#lockpin{border:1.5px solid #d8d2c2;border-radius:12px;padding:10px;font-size:calc(22px*var(--fs,1))}

/* beta.22 categorias texto/icone */
body.cats-t .movic{display:none}
body.cats-t .catchip svg{display:none}
body.cats-i .catchip span{display:none}
body.cats-i .totname{display:none}
body.cats-i .movcat{display:none}
body.cats-i .catdefrow .contanome{display:none}

/* beta.23 vs periodo anterior */
.totvs{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}
.vscol{flex:1;background:var(--cartao);border-radius:var(--r-md);padding:10px 12px}
.vscol h4{margin:0 0 6px;font-size:calc(13px*var(--fs,1));color:var(--suave)}
.vscol p{margin:2px 0;font-size:calc(13px*var(--fs,1));display:flex;justify-content:space-between}
.vscol p b{font-weight:700}
.vsdelta{margin:2px 0 8px;font-size:calc(13px*var(--fs,1));font-weight:700;text-align:center}

/* beta.24 despesas ultimos 7 dias */
.card7d{background:var(--cartao);border-radius:var(--r-md);padding:12px 10px 8px;display:flex;align-items:flex-end;gap:6px}
.d7col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}
.d7val{font-size:calc(10px*var(--fs,1));font-weight:700;color:var(--texto);white-space:nowrap}
.d7bar{width:100%;max-width:34px;background:var(--corDes);border-radius:6px 6px 0 0;min-height:3px}
.d7dia{font-size:calc(10px*var(--fs,1));color:var(--suave);white-space:nowrap}
/* DD/MM/AAAA: 7 rotulos longos nao cabem lado a lado a 360px - alterna em duas linhas */
#home7d{font-size:calc(16px*var(--fs,1));padding-bottom:2em}
/* d7 valores: duas linhas fixas alternadas no topo (padrao das datas); cada valor e um cartao com fundo ligado a PROPRIA barra por um fio vertical ponteado - associacao inequivoca; fio = pseudo do .d7col, a barra opaca tapa a parte que a atravessa; dias sem valor nao tem fio. Ritmo vertical em EM (nao px*--fs): acompanha o textZoom do Android (letra do sistema ate 200%, MainActivity.setTextZoom) sem colisoes - F5(g) */
#home7d .d7col{position:relative;font-size:calc(10px*var(--fs,1));gap:0.4em;height:calc(114px + 4.6em);padding-top:4.6em;justify-content:flex-end}
#home7d .d7bar{position:relative}
#home7d .d7col::before{content:'';position:absolute;left:50%;top:4em;bottom:calc(2em + 2px);border-left:1px dotted var(--suave);opacity:.55}
#home7d .d7col:has(.d7val:empty)::before{display:none}
#home7d .d7val{position:absolute;z-index:1;left:50%;transform:translateX(-50%);top:0.15em;background:var(--cartao);border-radius:5px;padding:1px 3px;line-height:1.3}
#home7d .d7col:nth-child(even) .d7val{top:2.25em}
#home7d .d7col:first-child .d7val{transform:translateX(-50%) translateX(0.9em)}
#home7d .d7col:last-child .d7val{transform:translateX(-50%) translateX(-0.9em)}
#home7d .d7dia{font-size:1.2em!important;line-height:1.3}
#home7d .d7col:nth-child(even) .d7dia{transform:translateY(1.45em)}
#home7d .d7col:first-child .d7dia{transform:translateX(0.67em)}
#home7d .d7col:last-child .d7dia{transform:translateX(-0.67em)}
/* F5(g): letra do sistema >=150% (textZoom detetado em render7dias): colunas largas em em com scroll horizontal; valores e datas em 2 linhas alternadas (impar/par) - vizinhos na mesma linha ficam a 2 colunas de distancia */
/* pedido Paulo 4nov 16:39: eixo d7 em DD/MM; ano uma unica vez por baixo; sem traco sobre o menu ... do bloco */
.d7ano{font-size:calc(10px*var(--fs,1));color:var(--suave,#6b7a73);text-align:right;margin:2px 14px 0;letter-spacing:.04em}
#home7d.d7tz{overflow-x:auto}
#home7d.d7tz .d7col{flex:0 0 auto;width:4.8em;min-width:4.8em;height:calc(90px + 10.5em);padding-top:4.15em;padding-bottom:4.4em}
#home7d.d7tz .d7col::before{top:3.85em;bottom:calc(6.36em + 2px)}
#home7d.d7tz .d7col .d7val{top:0.15em;line-height:1.3}
#home7d.d7tz .d7col:nth-child(even) .d7val{top:2em}
#home7d.d7tz .d7col:first-child .d7val{transform:translateX(-50%) translateX(1.4em)}
#home7d.d7tz .d7col:last-child .d7val{transform:translateX(-50%) translateX(-1.4em)}
#home7d.d7tz .d7dia{line-height:1.3}
#home7d.d7tz .d7col:nth-child(odd) .d7dia{transform:none}
#home7d.d7tz .d7col:nth-child(even) .d7dia{transform:translateY(1.8em)}
#home7d.d7tz .d7col:first-child .d7dia{transform:translateX(0.67em)}
#home7d.d7tz .d7col:last-child .d7dia{transform:translateX(-0.67em)}
/* FAB «+» (fixo, right:16..72px) nunca tapa texto/valores: area reservada lateral nas listas das vistas com FAB (Paulo 4nov 13:54) */


/* beta.25 ranking % */
.totpct{font-size:calc(11px*var(--fs,1));color:var(--suave);font-weight:400}
.totshear{text-align:center;margin:6px 0 0}

/* beta.26 ficha meta */
.objrow2{display:flex;gap:10px;align-items:flex-start}
.objring{flex:none;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.objringin{width:44px;height:44px;border-radius:50%;background:var(--cartao,#fff);display:flex;align-items:center;justify-content:center;font-size:calc(12px*var(--fs,1));font-weight:800;color:var(--verdescuro)}
.objbody{flex:1;min-width:0}
.objsub{font-size:calc(12px*var(--fs,1));color:var(--suave);margin-top:2px}
.objdone{color:var(--verde);font-weight:700}

#selbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:10px;background:var(--verde);color:var(--sobreVerde);padding:10px 12px;border-radius:12px;margin-bottom:8px;font-weight:600}
#selbar.hidden{display:none}
#selbar #seltot{margin-left:auto;font-weight:700}
#selbar button{background:rgba(255,255,255,.22);border:none;color:#fff;font-size:calc(16px*var(--fs,1));border-radius:8px;padding:5px 10px;cursor:pointer}
.mov.selrow{opacity:.8}
.mov.selrow.on{opacity:1;background:#dcefe4;box-shadow:inset 0 0 0 2px var(--verde)}
.mov.selrow .movdel,.mov.selrow .movstar{display:none}

.orcaviso{font-size:calc(12px*var(--fs,1));font-weight:700;margin:2px 0 4px}
.orcaviso.adiantado{color:#b07d10}
.orcaviso.estouro{color:var(--vermelho)}
.orcbarwrap{position:relative;padding-bottom:16px}
.orchojetag{position:absolute;bottom:0;transform:translateX(-50%);font-size:calc(9px*var(--fs,1));font-weight:700;color:var(--verdescuro);border:1px solid var(--verdescuro);border-radius:4px;padding:0 3px;background:var(--cartao);white-space:nowrap}
.orcline .pos{color:var(--verde);font-weight:700}

.resblock{margin-bottom:14px}
.resmes{font-size:calc(14px*var(--fs,1));margin:0 0 4px;color:var(--verdescuro)}
.resrow{display:flex;align-items:center;gap:14px;background:var(--cartao);border-radius:var(--r-md);padding:12px;cursor:pointer}
.resdonut{width:56px;height:56px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center}
.resdonutin{width:34px;height:34px;border-radius:50%;background:var(--cartao)}
.resvals{flex:1;display:flex;flex-direction:column;gap:2px}
.resvals div{display:flex;justify-content:space-between;font-size:calc(13px*var(--fs,1))}
.resvals b{white-space:nowrap}

#selbulk{background:rgba(255,255,255,.22);border:none;color:#fff;font-size:calc(16px*var(--fs,1));border-radius:8px;padding:5px 10px;cursor:pointer}
#selmenu{position:sticky;top:52px;z-index:31;background:var(--cartao);border-radius:var(--r-md);box-shadow:0 6px 18px rgba(0,0,0,.18);margin-bottom:8px;overflow:hidden}
#selmenu.hidden{display:none}
#selmenu button{display:block;width:100%;text-align:left;background:none;border:none;padding:12px 14px;font-size:calc(14px*var(--fs,1));cursor:pointer;border-bottom:1px solid #eee7d8}
#selmenu button:last-child{border-bottom:none}
#selmodal{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:60;display:flex;align-items:center;justify-content:center;padding:20px}
#selmodal.hidden{display:none}
.selmcard{background:var(--cartao);border-radius:12px;padding:16px;width:100%;max-width:340px}
.selmcard h3{margin:0 0 10px;font-size:calc(15px*var(--fs,1))}
.selmcard select,.selmcard input{width:100%;padding:10px;border:1px solid #d8d2c2;border-radius:12px;font-size:calc(15px*var(--fs,1));background:var(--cartao,#fff)}
.selmbtns{display:flex;gap:10px;margin-top:14px}
.selmbtns button{flex:1;padding:10px;border-radius:12px;border:none;font-size:calc(14px*var(--fs,1));cursor:pointer}
#selmok{background:var(--verde);color:var(--sobreVerde);font-weight:700}
#selmcancel{background:#eee7d8;color:var(--verdescuro)}

#orcdet{position:fixed;inset:0;background:var(--bg549,#f2efe7);z-index:70;overflow-y:auto;padding:14px 12px 90px}
#orcdet.hidden{display:none}
.orcdetcard{max-width:640px;margin:0 auto}
.orcdettop{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.orcdettop h3{flex:1;margin:0;font-size:calc(17px*var(--fs,1));color:var(--verdescuro)}
#orcdetx{background:var(--cartao);border:none;border-radius:12px;font-size:calc(17px*var(--fs,1));padding:8px 12px;cursor:pointer;color:var(--verdescuro)}
#orcdetedit{background:var(--verde);color:var(--sobreVerde);border:none;border-radius:12px;font-size:calc(13px*var(--fs,1));font-weight:700;padding:9px 12px;cursor:pointer}
#orcdetchart{width:100%;height:auto;background:var(--cartao);border-radius:var(--r-md);margin-bottom:10px}
#orcdettots{background:var(--cartao);border-radius:var(--r-md);padding:12px;margin-bottom:10px;font-size:calc(14px*var(--fs,1));display:flex;flex-direction:column;gap:4px}
#orcdettots b{white-space:nowrap}
#orcdettots .dtotalr{display:flex;justify-content:space-between}
.defcard label.defcheck{display:flex;align-items:center;gap:10px;margin:10px 0 4px}
.defcard label.defcheck input{width:20px;height:20px;margin:0;flex:none}
#prevlinha.hidden{display:none}
#prevlinha{margin-top:6px;font-size:calc(12px*var(--fs,1))}
#iaview.hidden{display:none}
#iaview{position:fixed;inset:0;background:#f3efe6;z-index:60;display:flex;flex-direction:column}
.iatop{display:flex;align-items:center;gap:8px;padding:12px 14px;background:var(--verdescuro);color:#fff}
.iatop button{background:none;border:none;color:#fff;font-size:calc(20px*var(--fs,1))}
.iasub{margin-left:auto;font-size:calc(11px*var(--fs,1));opacity:.75}
#iamsgs{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px}
.iamsg{max-width:85%;padding:10px 12px;border-radius:12px;white-space:pre-wrap;line-height:1.35;font-size:calc(14px*var(--fs,1))}
.iamsg.eu{align-self:flex-end;background:#d8e8d0;border-bottom-right-radius:4px}
.iamsg.ia{align-self:flex-start;background:var(--cartao,#fff);border:1px solid #e0d9c8;border-bottom-left-radius:4px}
.iahint{text-align:center;font-size:calc(12px*var(--fs,1));color:#8a8578;margin:6px 0}
#iachips{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px}
#iachips button{background:var(--cartao,#fff);border:1px solid #d8d0bd;border-radius:16px;padding:6px 10px;font-size:calc(12px*var(--fs,1));color:var(--verdescuro)}
.iainputrow{display:flex;gap:8px;padding:10px 12px;background:var(--cartao,#fff);border-top:1px solid #e0d9c8}
#iainp{flex:1;border:1px solid #d8d0bd;border-radius:16px;padding:10px 12px;font-size:calc(14px*var(--fs,1))}
#iaenviar{background:var(--verdescuro);color:#fff;border:none;border-radius:50%;width:42px;height:42px;font-size:calc(16px*var(--fs,1))}
#iabtn{background:var(--ouro);border:none;font-size:calc(13px*var(--fs,1));font-weight:800;color:var(--verdescuro);padding:5px 12px;border-radius:16px;cursor:pointer}
#cardsbox.hidden{display:none}
.cardrow{background:var(--cartao,#fff);border:1px solid #e6dfd0;border-radius:12px;padding:12px;margin:0 0 10px}
.cardtop{display:flex;align-items:center;justify-content:space-between}
.cardnome{font-weight:700}
.cardbarwrap{height:8px;background:#eee7d6;border-radius:8px;margin:8px 0 4px;overflow:hidden}
.cardfill{height:100%;background:#8a6dc7;border-radius:8px}
.cardfill.quente{background:var(--vermelho)}
.cardline{display:flex;justify-content:space-between;font-size:calc(13px*var(--fs,1));color:#5c574b;flex-wrap:wrap;gap:4px}
.cardline b{color:#22201c}
.cardpay{margin-top:8px;background:var(--verdescuro);color:#fff;border:none;border-radius:12px;padding:8px 12px;font-size:calc(13px*var(--fs,1))}
.cardsdef{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px dashed #e0d9c8;font-size:calc(14px*var(--fs,1))}
.cardsdef button{background:none;border:none;color:var(--vermelho);font-size:calc(15px*var(--fs,1))}

.vgbanner{background:color-mix(in srgb,var(--verdescuro) 78%,var(--verde));color:#fff}
.vgbanner.hidden{display:none}
.vgbanner .nb{white-space:nowrap}
.vgbanner{display:block}

body.escuro #selbar button{background:rgba(0,0,0,.2);color:var(--sobreVerde)}
body.escuro{--cartao:#1c2b26;--texto:#e6efea;--suave:#9db3aa;--verde:#57b98c;--vermelho:#e0746a;--sobreVerde:#101915;--verdeclaro:#24443a;--vermelhoclaro:#4a2420;background:#101915;color:#e6efea}
body.escuro .kpk,body.escuro .kpmc,body.escuro input,body.escuro textarea,body.escuro select,body.escuro .tipotoggle button,body.escuro .catchip,body.escuro .moedachip,body.escuro .contachip,body.escuro .vtabs button,body.escuro .movnav button,body.escuro .fchips select,body.escuro .favchip,body.escuro .pinbtn,body.escuro .taxainp{background:#1c2b26;color:#e6efea;border-color:#3a4a43}
body.escuro nav{background:#101915;border-top-color:#2c3b35}
body.escuro nav button{color:#9db3aa}
body.escuro .contarow,body.escuro .notaedit,body.escuro .moedachip.on{background:#1c2b26;border-color:#2c3b35}
body.escuro .moedachip.on{background:#3a3421;color:#e8d9a8}
body.escuro .teamcard{background:#1c2b26;color:#e6efea}
body.escuro .diasep{color:#9db3aa}
body.escuro .objvals{color:#9db3aa}
body.escuro .defcard h4,body.escuro .studio,body.escuro .resmes,body.escuro .credh2{color:#e6efea}
body.escuro #movq,body.escuro #detalhes,body.escuro #bktxt,body.escuro #csvtxt{background:#1c2b26;color:#e6efea;border-color:#3a4a43}
body.escuro .contarow button,body.escuro #fotoprev button{background:#2c3b35;color:#e6efea;border-color:#3a4a43}
body.escuro .orchojetag{color:#9db3aa;border-color:#3a4a43}
#csvtxt.hidden,#csvcopy.hidden,#csvdoimp.hidden,#csvfile.hidden{display:none}

#divbtn.hidden,#divbox.hidden{display:none}
#divbtn{margin:4px 0 8px}
.calnomes{display:grid;grid-template-columns:repeat(7,1fr);font-size:calc(10px*var(--fs,1));color:var(--suave);text-align:center;margin-bottom:3px}
.calgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:10px}
.calcel{background:var(--cartao);border-radius:var(--r-sm);padding:5px 1px;text-align:center;min-height:46px;cursor:pointer}
.calcel .cd{font-size:calc(12px*var(--fs,1));font-weight:700}
.calcel .cv{font-size:calc(9px*var(--fs,1));white-space:nowrap;font-weight:700}
.calcel.hoje{outline:2px solid var(--verde)}
.calcel.fora{background:transparent;cursor:default;min-height:0;padding:0}
body.escuro .calcel.fora{background:transparent}

/* beta.49 - menu de grupos das Definicoes */
#defmenu{display:flex;flex-direction:column;gap:10px;margin-top:6px}
.defmrow{display:flex;justify-content:space-between;align-items:center;width:100%;background:var(--cartao,#fff);border:1px solid #e2dccb;border-radius:12px;padding:17px 18px;font-size:calc(17px*var(--fs,1));font-weight:600;color:#22302a;cursor:pointer;text-align:left}
.defmrow:active{background:#f4f1e8}
.defmchev{color:#9a937f;font-size:calc(22px*var(--fs,1));font-weight:400}
#defvoltar{background:none;border:none;color:var(--verde);font-size:calc(16px*var(--fs,1));font-weight:700;padding:10px 0 2px;text-align:left;cursor:pointer}

/* beta.50 - detalhe patrimonio */
.patbox{background:#f2efe7;padding:18px;border-radius:16px;max-width:340px;width:92%;max-height:82vh;overflow:auto}
.patrow{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid #e2dccb}
.patrow span:last-child{text-align:right}
.pattotal{font-weight:700;font-size:calc(18px*var(--fs,1))}
.patrow .neg{color:var(--vermelho)}
/* beta.53 - seccoes colapsaveis no Inicio */
.hcol{cursor:pointer;-webkit-tap-highlight-color:transparent}
.hcol .hchev{float:right;opacity:.55;font-size:calc(14px*var(--fs,1));transition:transform .15s}
.hcol.colapsado .hchev{transform:rotate(-90deg)}
.hcol.colapsado{opacity:.75}
/* beta.54 - Mais opcoes no formulario Adicionar */
.maisbtn{width:100%;text-align:left;background:var(--verdeclaro);border:1px solid var(--verde);border-radius:12px;padding:10px 14px;margin:10px 0 4px;font-size:calc(15px*var(--fs,1));font-weight:700;color:var(--verde);cursor:pointer;-webkit-tap-highlight-color:transparent}
.maisbtn .hchev{float:right;opacity:1;color:var(--verde);transition:transform .15s}
.maisbtn.aberto .hchev{transform:rotate(180deg)}
#maisbox{padding-top:2px}

/* beta.56 INICIO: dialogs proprios (substituem prompt/alert/confirm nativos do Android) */
.dlg{position:fixed;inset:0;background:rgba(15,40,34,.55);display:flex;align-items:center;justify-content:center;z-index:9500;padding:24px}
.dlgcard{background:var(--cartao);color:var(--texto);border-radius:var(--r-lg);padding:22px;width:100%;max-width:320px;box-shadow:0 12px 32px rgba(0,0,0,.3)}
.dlgmsg{white-space:pre-line;color:var(--texto);font-size:calc(15px*var(--fs,1));line-height:1.45;margin-bottom:16px;word-break:break-word}
.dlginput{width:100%;box-sizing:border-box;padding:10px 12px;border:2px solid var(--verde);border-radius:12px;font-size:calc(16px*var(--fs,1));margin:-6px 0 16px;background:var(--cartao);color:var(--texto)}
.dlgrow{display:flex;gap:10px;justify-content:flex-end}
.dlgbtn{flex:none;padding:10px 18px;border-radius:12px;font-size:calc(14px*var(--fs,1));font-weight:700;cursor:pointer;border:2px solid var(--verde)}
.dlgok{background:var(--verde);color:var(--sobreVerde)}
.dlgcancel{background:var(--cartao);color:var(--verde)}
/* beta.56 FIM */

/* beta.57 INICIO: botao visivel Alterar em cada linha de movimento (pedido Paulo 16 out 08:28 - so havia Apagar visivel; tocar na linha ja abria a edicao desde a beta.11) */
.movedit{background:none;border:none;color:var(--suave);font-size:calc(15px*var(--fs,1));padding:2px;cursor:pointer}
/* beta.57 FIM */

/* beta.58 INICIO: teclado numerico Montante (so adiciona) */
#kpsheet{position:fixed;inset:0;background:rgba(15,40,34,.55);z-index:998;display:flex;align-items:flex-end;justify-content:center}
#kpsheet.hidden{display:none}
.kpcard{background:var(--cartao);width:100%;max-width:480px;border-radius:var(--r-lg) 16px 0 0;padding:10px 14px 16px;box-shadow:0 -4px 24px rgba(0,0,0,.25)}
.kptop{display:flex;justify-content:space-between;align-items:center;font-weight:700;color:var(--texto);padding:2px 2px 8px}
.kpx{background:none;border:none;font-size:calc(18px*var(--fs,1));color:var(--suave);padding:4px 8px;cursor:pointer;min-width:48px;min-height:48px}
.kpmoedas{display:flex;gap:6px;overflow-x:auto;padding-bottom:8px}
.kpmc{border:1px solid #d8d2c2;background:var(--cartao,#fff);color:var(--texto);border-radius:999px;padding:4px 10px;font-size:calc(14px*var(--fs,1));cursor:pointer;white-space:nowrap}
.kpmc.on{background:var(--verde);color:var(--sobreVerde);border-color:var(--verde)}
.kpgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.kpk{font-size:calc(22px*var(--fs,1));padding:13px 0;border:1px solid #d8d2c2;border-radius:999px;background:var(--cartao,#fff);color:var(--texto);cursor:pointer}
.kpk:active{background:var(--verdeclaro)}
.kpfeito{border:none;border-radius:999px;background:var(--verde);color:var(--sobreVerde);font-size:calc(26px*var(--fs,1));font-weight:700;cursor:pointer;padding:6px 18px}
/* beta.58 FIM */
/* beta.61 - barra inferior com icones, FAB +, grelha Mais, ecra Backup */
nav button svg{display:block;width:22px;height:22px;margin:0 auto 2px}
nav button span{display:block}
.fabadd{position:fixed;right:16px;bottom:calc(66px + env(safe-area-inset-bottom));width:56px;height:56px;border-radius:50%;background:var(--verde);color:var(--sobreVerde);border:none;font-size:calc(32px*var(--fs,1));font-weight:600;line-height:1;box-shadow:0 4px 12px rgba(0,0,0,.28);cursor:pointer;z-index:60}
.fabadd.hidden{display:none}
.fabadd{transition:transform .18s ease}
.fabadd:active{transform:scale(.94)}
.fabadd.aberto{transform:rotate(45deg)}
.fabadd.aberto:active{transform:rotate(45deg) scale(.94)}
.fabmemo{right:84px;width:46px;height:46px;background:var(--cartao,#fff);color:var(--verde);border:2px solid var(--verde);padding:10px}
.fabmemo svg{width:100%;height:100%;display:block}
body.escuro .fabmemo{background:#23282a;color:#7fd4ae;border-color:#7fd4ae}
.acwrap{position:relative}
.aclist{position:absolute;left:0;right:0;top:100%;z-index:70;background:var(--cartao,#fff);border:1px solid #d8d5cc;border-radius:12px;box-shadow:0 6px 16px rgba(0,0,0,.18);overflow:hidden;margin-top:2px}
.aclist.hidden{display:none}
.acitem{display:block;width:100%;text-align:left;padding:10px 12px;background:none;border:none;font-size:calc(15px*var(--fs,1));font-family:inherit;cursor:pointer;color:inherit}
.acitem:active{background:rgba(0,0,0,.06)}
body.escuro .aclist{background:#2b3133;border-color:#454b4d}
.maisgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.maistile{background:var(--cartao);border:none;border-radius:12px;padding:20px 6px;display:flex;flex-direction:column;align-items:center;gap:8px;font:inherit;font-size:calc(13px*var(--fs,1));font-weight:600;color:var(--texto);cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.maistile svg{width:26px;height:26px;color:var(--verde)}
.maistile:active{transform:scale(.96)}
body.escuro .maistile{background:#1c2b26;color:#e6efea}
body.escuro .maistile svg{color:#7fc7a5}
body.escuro .fabadd{box-shadow:0 4px 12px rgba(0,0,0,.5)}
#bkfileimp.hidden{display:none}
.bkbtns button:disabled{opacity:.5;cursor:default}
#bktxt.hidden,#bkcopy.hidden,#bkdoimp.hidden{display:none}

.taxagrip{background:none;border:none;padding:6px 2px;color:var(--suave);cursor:grab;touch-action:none;display:flex;align-items:center}
.taxarow.dragging{opacity:.55;background:#f7f1e3;border-radius:8px}

/* Cor do tema (Estilo) - 6 cores, verde e o original sem classe */
body.tema-vermelho{--verde:#a83b28;--verdeclaro:#f7e3de;--verdescuro:#5f1f14}
body.tema-rosa{--verde:#b8497e;--verdeclaro:#f8e3ef;--verdescuro:#63203f}
body.tema-azul{--verde:#2a6f9e;--verdeclaro:#e0eef7;--verdescuro:#16394f}
body.tema-preto{--verde:#44443e;--verdeclaro:#e9e9e4;--verdescuro:#20201c}
body.tema-branco{--verde:#8a8672;--verdeclaro:#f4f2ea;--verdescuro:#4a473c}
body.escuro.tema-vermelho{--verde:#e0746a;--verdeclaro:#4a2620}
body.escuro.tema-rosa{--verde:#dd93bd;--verdeclaro:#452232}
body.escuro.tema-azul{--verde:#7ab3da;--verdeclaro:#233c4d}
body.escuro.tema-preto{--verde:#9a9a90;--verdeclaro:#2e2e2a}
body.escuro.tema-branco{--verde:#b3ac95;--verdeclaro:#3a382f}
.temadots{display:flex;gap:10px;margin-top:8px}
.temadot{width:30px;height:30px;border-radius:50%;border:2px solid #d8d2c2;cursor:pointer;padding:0;flex:none}
.temadot.on{border-color:var(--texto);box-shadow:0 0 0 2px var(--texto) inset}

body.escuro .vtabs{border-color:#2c3d36}
body.escuro .vtabs button{color:#9db3aa;background:none}
body.escuro .vtabs button.on{color:#7ec8a9;border-bottom-color:#7ec8a9;background:none}
body.escuro .movtotais{border-color:#2c3d36;background:#101915;box-shadow:0 -2px 10px rgba(0,0,0,.4)}
body.escuro .movtotais .mt-l{color:#9db3aa}
body.escuro .movtotais .mt-v.t{color:#e6efea}
body.escuro .diasep .ds-dia{color:#e6efea}
body.escuro .diasep .ds-ano{color:#9db3aa}
body.escuro .diasep .ds-sem{background:#24352f;color:#9db3aa}

/* beta.75 - E2 calendario estilo MM: receita+despesa por dia, dia selecionado com lista */
.calcel.sel{outline:2px solid var(--ouro);background:var(--verdeclaro)}
body.escuro .calcel.sel{background:#24382f}
.calcel .cv{margin-top:1px}

/* beta.77 - E4 ecra Contas estilo MM */
.cvgrupo{font-size:calc(13px*var(--fs,1));color:var(--suave);text-transform:uppercase;letter-spacing:.6px;margin:14px 2px 6px}
.cvbig{display:block;font-size:calc(32px*var(--fs,1));font-weight:700;margin:4px 0 2px}

/* beta.78 - E3 Estat estilo MM */
#totview{position:relative}
#totperbtn{border:1.5px solid #d8d4c8;border-radius:12px;padding:5px 10px;font-size:calc(13px*var(--fs,1));font-weight:600;background:var(--cartao,#fff);color:#17211d;margin-left:6px}
#esttipo{margin-bottom:8px}
.esttot{font-weight:400;opacity:.85}
#estpie{width:100%;height:auto;display:block}
#esttip{margin:4px auto 8px;max-width:320px;background:var(--cartao);border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.25);padding:8px 14px;text-align:center;font-weight:600}
.estrow{display:flex;align-items:center;gap:10px;padding:9px 2px;border-bottom:1px solid rgba(128,128,128,.18)}
.estpct{min-width:44px;text-align:center;color:#fff;font-weight:700;font-size:calc(12px*var(--fs,1));border-radius:8px;padding:4px 6px}
.estname{flex:1;font-weight:600}
.estval{font-weight:700}
.cddettop{display:flex;align-items:center;gap:10px}
#cddvoltar{background:none;border:none;font-size:calc(24px*var(--fs,1));color:var(--texto);cursor:pointer;padding:2px 8px 2px 0}
#cddtit{margin:0;font-size:calc(19px*var(--fs,1))}
.cddtot{font-size:calc(32px*var(--fs,1));font-weight:700;margin:0 0 10px}
.cdrow{display:flex;gap:10px;padding:9px 2px;border-bottom:1px solid rgba(128,128,128,.18)}
.cdrow .cdnome{flex:1}
.cdrow.on{font-weight:700}
.cdpct{min-width:44px;text-align:right;color:var(--suave)}
.cdval{font-weight:600}
#cddlinha{width:100%;height:auto;margin:10px 0}
#totpermenu{position:absolute;right:10px;top:88px;background:var(--cartao);border-radius:var(--r-md);box-shadow:0 6px 24px rgba(0,0,0,.25);z-index:40;display:flex;flex-direction:column;min-width:160px;overflow:hidden;padding:4px 0}
#totpermenu button{background:none;border:none;padding:13px 18px;font-size:calc(15px*var(--fs,1));text-align:left;color:var(--texto);cursor:pointer}
#totpermenu button:active{background:var(--verdeclaro)}
#totmesmodal,#totpermodal{position:fixed;inset:0;background:rgba(0,0,0,.45);align-items:center;justify-content:center;z-index:60}
.tmmcard{background:var(--cartao);border-radius:var(--r-lg);padding:16px;width:92%;max-width:340px}
.tmmtop{display:flex;justify-content:space-between;align-items:center;font-weight:700}
.tmmtop button{background:none;border:none;font-weight:700;color:var(--verde);font-size:calc(14px*var(--fs,1));cursor:pointer;padding:4px 6px}
.tmmyear{display:flex;justify-content:space-between;align-items:center;margin:12px 0;font-size:calc(17px*var(--fs,1))}
.tmmyear button{background:none;border:none;font-size:calc(24px*var(--fs,1));color:var(--texto);cursor:pointer;padding:0 10px}
.tmmgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.tmmgrid button{background:none;border:1px solid rgba(128,128,128,.25);border-radius:8px;padding:9px 0;font-weight:600;color:var(--texto);cursor:pointer}
.tmmgrid button.on{border-color:var(--verde);color:var(--verde);background:var(--verdeclaro)}
.tpflab{display:block;margin:10px 0;font-weight:600}
.tpflab input{margin-left:8px}
.esttipic svg{width:16px;height:16px;vertical-align:-2px}

.vhead{display:flex;align-items:center;gap:6px;margin-bottom:12px}
.vhead h2{margin:0;flex:1}
.vhback{background:none;border:none;color:inherit;padding:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-left:-6px}
.vhback svg{width:24px;height:24px}
#fotovoltar{position:absolute;top:10px;left:10px;z-index:99;background:rgba(0,0,0,.4);border:none;color:#fff;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer}
#fotovoltar svg{width:22px;height:22px}

.frow{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;background:none;border:none;border-bottom:1px solid #e2dccd;padding:12px 2px;font-size:calc(16px*var(--fs,1));color:var(--texto);cursor:pointer;text-align:left}
.frow span{color:var(--suave)}
.frow b{font-weight:600}
.addbtns{display:flex;gap:10px}
.addbtns .bigadd{flex:1}
.addbtns .addnext{flex:0 0 auto;background:var(--verdeclaro);color:var(--verde)}
.bsheet{position:fixed;inset:0;background:rgba(15,40,34,.55);z-index:998;display:flex;align-items:flex-end;justify-content:center}
.bsheet.hidden{display:none}
.bcard{background:var(--cartao);width:100%;max-width:480px;border-radius:var(--r-lg) 16px 0 0;box-shadow:0 -4px 24px rgba(0,0,0,.25);max-height:72vh;display:flex;flex-direction:column}
.btop{display:flex;justify-content:space-between;align-items:center;background:var(--verdescuro);color:#fff;padding:12px 14px;font-weight:700;border-radius:16px 16px 0 0}
.btop button{background:none;border:none;color:#fff;cursor:pointer;padding:4px;display:flex;min-width:48px;min-height:48px;align-items:center;justify-content:center}
.btop svg{width:20px;height:20px}
.bicons{display:flex;gap:12px}
.bbody{overflow-y:auto;padding:12px 14px 18px}
.bchips{display:flex;flex-wrap:wrap;gap:8px}
body.escuro .frow{border-color:#2a3a33}

/* calculadora (lote E7) */
#calcsheet{position:fixed;inset:0;background:rgba(15,40,34,.55);z-index:999;display:flex;align-items:flex-end;justify-content:center}
#calcsheet.hidden{display:none}
.calccard{max-width:400px;max-height:92vh;max-height:92dvh;overflow-y:auto}
.calcvisor{background:var(--verdescuro);color:#fff;border-radius:12px;padding:14px 16px;font-size:calc(28px*var(--fs,1));font-weight:700;text-align:right;min-height:30px;margin-bottom:10px;overflow:hidden;white-space:nowrap}
.calcgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.calck{background:var(--cartao2,rgba(128,128,128,.12));border:none;border-radius:999px;padding:14px 0;font-size:calc(20px*var(--fs,1));font-weight:600;color:var(--texto);cursor:pointer}
.calck:active{transform:scale(.95);opacity:.8}
.calcop{color:var(--verde);font-weight:700}
.calcac{color:var(--vermelho);font-weight:700}
.calceq{background:var(--verde);color:var(--sobreVerde);font-weight:700}
.calcfeito{background:var(--verde);color:var(--sobreVerde);font-weight:700;font-size:calc(26px*var(--fs,1));grid-column:4;grid-row:4 / span 2}
.kpcalcbtn{display:flex;align-items:center;justify-content:center}

/* Dia/Hora estilo MM (lote E7) */
#addview label[for="data"],#addview label[for="hora"],#addview #data,#addview #hora{display:none}
#frowdia{cursor:default}
.dhb{background:none;border:none;font:inherit;color:var(--texto);cursor:pointer;padding:0;text-align:right}
.dhb.fh{color:var(--verde);font-weight:700;margin-left:10px}
#diasheet,#horasheet{position:fixed;inset:0;background:rgba(15,40,34,.55);z-index:999;display:flex;align-items:center;justify-content:center}
#diasheet.hidden,#horasheet.hidden{display:none}
.dhcard{max-width:340px;border-radius:16px;padding:0 0 10px}
.dhhead{background:var(--verde);color:var(--sobreVerde);border-radius:16px 16px 0 0;padding:14px 18px 16px}
.dhhead .dhyear{opacity:.8;font-size:calc(14px*var(--fs,1))}
.dhhead .dhbig{font-size:calc(26px*var(--fs,1));font-weight:700}
.dhheadh{display:flex;align-items:center;gap:2px}
.dhheadh .dhbig{background:none;border:none;color:#fff;opacity:.75;cursor:pointer;font-size:calc(34px*var(--fs,1))}
.dhheadh .dhbig.dhsel{opacity:1;text-decoration:underline}
.dhcalnav{display:flex;justify-content:space-between;align-items:center;padding:10px 14px 4px;font-weight:700;color:var(--texto)}
.dhcalnav button{background:none;border:none;font-size:calc(22px*var(--fs,1));color:var(--texto);cursor:pointer;padding:0 10px;min-width:48px;min-height:48px}
.dhgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:6px 12px;text-align:center}
html body.fs-max #diasheet .kpcard{max-width:100vw;margin-left:0;margin-right:0}
html body.fs-max #diasheet .dhgrid{gap:0;padding:6px 2px}
html body.fs-max #diasheet .dhd{justify-self:center}
.dhw{font-size:calc(12px*var(--fs,1));color:var(--suave);padding:6px 0}
.dhd{background:none;border:none;border-radius:50%;aspect-ratio:1;font-size:calc(14px*var(--fs,1));color:var(--texto);cursor:pointer;min-width:48px;min-height:48px}
.dhd.on{background:var(--verde);color:var(--sobreVerde);font-weight:700}
.dhbtns{display:flex;justify-content:flex-end;gap:18px;padding:8px 16px 4px;align-items:center}
.dhbtns button{background:none;border:none;color:var(--verde);font-weight:700;font-size:calc(14px*var(--fs,1));cursor:pointer;padding:6px 4px;min-height:48px;min-width:48px}
.dhsp{flex:1}
#ttecl{color:var(--suave)}
.dial{position:relative;width:250px;height:250px;margin:10px auto;background:var(--verdeclaro);border-radius:50%}
#dial.hidden{display:none}
.dhtype.hidden{display:none}
.dnum{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border:none;border-radius:50%;background:none;color:var(--texto);font-size:calc(15px*var(--fs,1));cursor:pointer}
.dnum.inner{font-size:calc(12px*var(--fs,1));color:var(--suave)}
.dnum.on{background:var(--verde);color:var(--sobreVerde);font-weight:700}
.dhtype{display:flex;justify-content:center;align-items:center;gap:6px;padding:14px 0}
.dhtype input{width:56px;text-align:center;font-size:calc(22px*var(--fs,1));padding:8px 0;border:1px solid var(--suave);border-radius:12px;background:var(--cartao);color:var(--texto)}
.dhtype span{font-size:calc(22px*var(--fs,1));color:var(--texto)}

/* adicionar moeda na fila (lote E8) */
.kpmadd{font-weight:700;border-style:dashed;color:var(--verde)}
#moedasheet{position:fixed;inset:0;background:rgba(15,40,34,.55);z-index:999;display:flex;align-items:center;justify-content:center}
#moedasheet .kpcard{max-height:100dvh;overflow-y:auto}
#moedasheet .kptop{background:var(--verde);color:var(--sobreVerde);border-radius:16px 16px 0 0;padding:13px 14px;font-size:calc(16px*var(--fs,1))}
#moedasheet .kptop .kpx{color:var(--sobreVerde)}
#moedasheet .msform{padding:12px 14px 8px}
#moedasheet.hidden{display:none}
.msform{display:flex;flex-direction:column;gap:8px;padding:4px 2px}
.msform input{padding:11px 12px;border:1px solid #d8d2c2;border-radius:12px;font-size:calc(15px*var(--fs,1));background:var(--cartao);color:var(--texto)}
body.escuro .msform input{border-color:#2a3a33}

/* E9: grelha de icones na edicao de categoria + fusao */
#catediticons{display:grid;grid-template-columns:repeat(9,1fr);gap:6px;margin:4px 0 10px}
.caticosel{aspect-ratio:1;border:1px solid #d8d2c2;border-radius:12px;background:var(--cartao);color:var(--texto);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px}
.caticosel svg{width:20px;height:20px}
.caticosel.on{border-color:var(--verde);background:var(--verdeclaro);color:var(--verde)}
body.escuro .caticosel{border-color:#2a3a33}
.catchip.on{border-color:var(--verde);background:var(--verdeclaro);color:var(--verde)}
#catmerge{border:2px solid var(--ouro);border-radius:12px;padding:10px;margin:8px 0}

#catmerge.hidden{display:none}

/* lista mundial de moedas (lote M1) */
#listamoedas{position:fixed;inset:0;background:rgba(15,40,34,.55);z-index:999;display:flex;align-items:center;justify-content:center}
#listamoedas.hidden{display:none}
#listamoedas .kptop{background:var(--verde);color:var(--sobreVerde);border-radius:16px 16px 0 0;padding:13px 14px;font-size:calc(16px*var(--fs,1))}
#listamoedas .kptop .kpx{color:#fff}
.mlq{margin:12px 14px 6px;padding:11px 12px;border:1px solid #d8d2c2;border-radius:12px;font-size:calc(15px*var(--fs,1));background:var(--cartao);color:var(--texto);width:calc(100% - 28px);box-sizing:border-box}
body.escuro .mlq{border-color:#2a3a33}
.mllist{max-height:52vh;overflow-y:auto;padding:0 4px 10px}
.mlrow{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:none;border-bottom:1px solid #e6e1d2;padding:11px 12px;font-size:calc(15px*var(--fs,1));color:var(--texto);cursor:pointer;font-family:inherit}
body.escuro .mlrow{border-color:#22332c}
.mlrow .mlcod{font-weight:700;min-width:46px}
.mlrow .mlnome{flex:1;color:var(--texto)}
.mlrow .mlsim{color:var(--suave)}
.mlrow.ja{opacity:.55}
.mlrow .mlcheck{color:var(--verde);font-weight:700}
.mlrow .mlplus{color:var(--verde);font-size:calc(20px*var(--fs,1));line-height:1}
.mlrow .mlnovo{flex:1;color:var(--verde);font-weight:700}
.taxaedit{color:var(--suave);display:flex;align-items:center}

/* simbolo da moeda dentro do campo Montante (estilo MM: a direita por defeito) */
#valorwrap{position:relative;display:block}
#valorwrap input{width:100%;padding-right:52px;box-sizing:border-box}
#valorwrap.antes input{padding-right:12px;padding-left:52px}
#valorsimbdir{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--suave);font-weight:700;font-size:calc(15px*var(--fs,1));pointer-events:none;max-width:44px;overflow:hidden;white-space:nowrap}
#valorwrap.antes #valorsimbdir{right:auto;left:14px}

/* select da posicao do simbolo no form da moeda */
.msform select{padding:11px 12px;border:1px solid #d8d2c2;border-radius:12px;font-size:calc(15px*var(--fs,1));background:var(--cartao);color:var(--texto);appearance:auto}
body.escuro .msform select{border-color:#2a3a33}

/* pre-visualizacao ao vivo no form da moeda (estilo MM) */
.msprev{margin:0 0 2px;text-align:center;font-size:calc(14px*var(--fs,1));font-weight:600;color:var(--suave);min-height:17px}

/* letras de seccao na lista de adicionar moeda (estilo MM) */
.mlsec{padding:8px 14px 2px;font-size:calc(12px*var(--fs,1));font-weight:700;color:var(--suave);letter-spacing:.4px}

/* mini teclado proprio da taxa de cambio (estilo MM) */
.mskptx{padding-top:4px}
.mskgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding-bottom:8px}
.mskgrid .kpk{background:var(--cartao);color:var(--texto)}
body.escuro .mskgrid .kpk{border-color:#2a3a33;background:#1c2924;color:#e8e4da}
#defraprow{display:flex;gap:8px}
.defrap{flex:1;min-width:0;text-align:center}
.kprap{display:flex;gap:8px;justify-content:center;padding:6px 10px 2px}
.kprapk{flex:1;border:1px solid #cfc7b8;background:var(--cartao,#fff);color:var(--texto,#222);border-radius:12px;padding:10px 4px;font-size:calc(15px*var(--fs,1));font-weight:700;min-height:44px}

.hbloco.hb-p{zoom:.87}
.hbloco.hb-g{zoom:1.13}
.horow .contabtns{margin-left:auto}
.demobanner{background:#44506e;color:#fff}
.demobanner b{text-decoration:underline}

.hpeg{cursor:grab;font-size:calc(14px*var(--fs,1));touch-action:none}
.horow.adrag{opacity:.75;box-shadow:0 3px 10px rgba(0,0,0,.25);position:relative;z-index:2}

.horow .hpeg{margin-right:8px;flex:none}

#oktoast{position:fixed;left:50%;top:64px;transform:translateX(-50%);background:var(--verde);color:var(--sobreVerde);padding:10px 20px;border-radius:16px;font-weight:700;font-size:calc(15px*var(--fs,1));z-index:1200;box-shadow:0 4px 16px rgba(0,0,0,.28);opacity:0;pointer-events:none;transition:opacity .25s}
#oktoast.on{opacity:1}

/* FAB 3 ações (beta.107) */
#fabmenu{position:fixed;right:16px;bottom:calc(var(--navH,60px) + 126px);z-index:901;display:flex;flex-direction:column;gap:10px;align-items:flex-end}
#fabmenu.hidden,#fabbg.hidden{display:none}
#fabmenu button{display:flex;align-items:center;gap:10px;background:var(--cartao);border:none;border-radius:16px;padding:8px 8px 8px 16px;font:inherit;font-weight:600;color:var(--texto);box-shadow:0 3px 10px rgba(0,0,0,.22);cursor:pointer}
#fabmenu .fmi{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:calc(20px*var(--fs,1));color:#fff}
#fabmenu .fmi-d{background:var(--corDes)}
#fabmenu .fmi-r{background:var(--corRec)}
#fabmenu .fmi-t{background:var(--verde)}
#fabbg{position:fixed;inset:0;z-index:900}
body.escuro #fabmenu button{background:#23282a;color:#e6efea}

/* Ordenar lista (beta.109) */
#movnav .movord{margin-left:8px}
body.escuro #movnav .movord{background:#1c2b26;color:#e6efea;border-color:#3a4a43}

/* Esconder valores (beta.110) */
.saldocard{position:relative}
#escondebtn{position:absolute;top:10px;right:12px;background:none;border:none;color:#fff;opacity:.75;font-size:calc(17px*var(--fs,1));cursor:pointer;padding:4px}
#escondebtn.off{opacity:.4}
/* Sombras suaves nos cartoes do inicio (beta.113) */
.saldocard,.contarow,.patcard,.objrow,.mov,.card7d{box-shadow:0 1px 4px rgba(23,33,29,.10)}
body.escuro .saldocard,body.escuro .contarow,body.escuro .patcard,body.escuro .objrow,body.escuro .mov,body.escuro .card7d{box-shadow:0 1px 4px rgba(0,0,0,.45)}
#oktoast{display:flex;align-items:center;gap:8px}
#oktoast .oktic{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--sobreVerde);color:var(--verde);font-size:calc(12px*var(--fs,1));font-weight:800;flex:none}
.diasep.hoje .ds-sem{background:var(--verde);color:var(--sobreVerde)}
.mov{border-left:3px solid transparent}
.mov-d{border-left-color:var(--vermelho)}
.mov-r{border-left-color:var(--verde)}
.mov-t{border-left-color:var(--ouro)}
nav button.active{box-shadow:inset 0 3px 0 var(--verde)}
.saldocard{background:linear-gradient(160deg,var(--verdescuro) 0%,color-mix(in srgb,var(--verdescuro) 78%,var(--verde)) 100%)}
.bigadd{box-shadow:0 2px 6px rgba(58,43,5,.25)}
.bigadd:active{transform:scale(.98)}
.totrow,.totresumo,.totcontarow,#totpie,#totarea,.defcard,.orcrow,.teamcard{box-shadow:0 1px 4px rgba(23,33,29,.10)}
body.escuro .totrow,body.escuro .totresumo,body.escuro .totcontarow,body.escuro #totpie,body.escuro #totarea,body.escuro .defcard,body.escuro .orcrow,body.escuro .teamcard{box-shadow:0 1px 4px rgba(0,0,0,.45)}
.mov-d .movic{background:var(--vermelhoclaro)}
.mov-t .movic{background:#fdf3dc}
#movq:focus,.fchips select:focus,input:focus-visible,textarea:focus-visible{outline:2px solid var(--verde);outline-offset:1px}
/* beta.124: teclado no fundo, formulario visivel e uma barra de moedas */
#kpsheet{inset:auto 0 0;background:transparent;pointer-events:none}
#kpsheet>.kpcard{pointer-events:auto;max-height:60dvh;overflow-y:auto;padding:8px 12px max(10px,env(safe-area-inset-bottom));box-shadow:0 -2px 10px rgba(0,0,0,.14)}
#kpsheet .kpgrid{grid-template-columns:repeat(4,1fr);gap:6px}
#kpsheet .kpk{font-size:calc(21px*var(--fs,1));padding:9px 0}
#kpsheet .kpcalcbtn{background:none;border:none;padding:4px 6px;color:var(--suave);font-size:calc(20px*var(--fs,1))}
#kpsheet .kpfeito{grid-column:4;grid-row:4 / span 2}
#kpsheet .kprap{margin-bottom:4px}
body.kpaberto main{flex:none;height:calc(100dvh - var(--kpH,330px) - var(--headerH,46px));padding-bottom:16px}
body.kpaberto nav{display:none}
body.kpaberto #moedachips{display:none}
body.kpaberto .moeda-label-kp{display:none}
/* Conter a largura do formulario: Continuar nao pode manter width:100% num flex auto. */
.addbtns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.addbtns .bigadd{width:100%;min-width:0}
main{min-width:0;overflow-x:hidden}
#addview,#moedachips{min-width:0;max-width:100%}
@media (orientation:landscape) and (max-height:500px){
 #kpsheet>.kpcard{max-width:none;padding:3px 10px;max-height:60dvh}
 #kpsheet .kptop{font-size:calc(13px*var(--fs,1));padding:0 2px 2px}
 #kpsheet .kpx{font-size:calc(14px*var(--fs,1));padding:0 8px}
 #kpsheet .kprap{margin:0;gap:4px;padding:0}
 #kpsheet .kprap button{padding:2px 10px;min-height:24px;margin:0;font-size:calc(12px*var(--fs,1))}
 #kpsheet .kpmoedas{padding-bottom:3px}
 #kpsheet .kpmc{padding:1px 8px;font-size:calc(12px*var(--fs,1))}
 #kpsheet .kpgrid{gap:3px}
 #kpsheet .kpk,#kpsheet .kpfeito{font-size:calc(16px*var(--fs,1));padding:1px 0;min-height:26px}
}
/* Guardar e a acao principal; Continuar tem apenas a largura do rotulo. */
.addbtns{grid-template-columns:minmax(0,1fr) auto}
.addbtns .addnext{width:auto;padding-left:16px;padding-right:16px}
/* beta.125: metade inferior dedicada, sem camada sobre o formulario. */
body.painelaberto main,body.kpaberto.painelaberto main{height:calc(50dvh - var(--headerH,45px));flex:none;overflow-y:auto;padding-bottom:16px}
body.painelaberto nav{display:none}
#sheetcat,#sheetconta{inset:50% 0 0;height:50%;background:transparent;pointer-events:none}
#kpsheet{inset:auto 0 0;height:36dvh;background:transparent;pointer-events:none}
#kpsheet>.kpcard,#sheetcat>.bcard,#sheetconta>.bcard{pointer-events:auto;height:100%;max-height:none;max-width:600px;overflow:hidden;display:flex;flex-direction:column;border-radius:12px 12px 0 0}
#kpsheet .kpgrid{flex:1;min-height:0;grid-template-rows:repeat(5,minmax(0,1fr))}
#kpsheet .kpk,#kpsheet .kpfeito{min-height:0;padding:2px 0}
#sheetcat .bbody{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:0;flex:1;min-height:0;overflow-y:auto;align-content:start}
#sheetcat #catchips{display:flex;flex-direction:column;flex-wrap:nowrap;overflow-y:auto;gap:0;padding:6px;border-right:1px solid #d8d2c2}
#sheetcat #subbox{overflow-y:auto;padding:6px;min-width:0}
#sheetcat #subbox.hidden{display:block;visibility:hidden}
#sheetcat #subchips{display:flex;flex-direction:column;gap:4px}
#sheetcat .catchip,#sheetcat .contachip{width:100%;flex:none;min-height:42px;text-align:left;border-radius:8px}
#sheetconta .bbody{flex:1;min-height:0;overflow-y:auto}
#sheetconta #contachips,#sheetconta #contachips2{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
#sheetconta .contachip{width:100%;min-width:0;min-height:58px;white-space:normal;overflow-wrap:anywhere;border-radius:8px}
@media (orientation:landscape) and (max-height:500px){
 #kpsheet>.kpcard{max-width:none;padding:2px 8px}
 #kpsheet .kprap{display:none}
 #kpsheet .kpgrid{gap:2px}
 #kpsheet .kpk,#kpsheet .kpfeito{min-height:0;font-size:calc(14px*var(--fs,1));padding:0}
 #sheetcat .btop,#sheetconta .btop{padding:5px 10px}
 #sheetcat .catchip,#sheetcat .contachip{min-height:32px}
}
#sheetconta #contachips.hidden,#sheetconta #contachips2box.hidden{display:none}
/* beta.126: alcance curto do polegar, sem mudar a ordem. */
#fabmenu{bottom:calc(128px + env(safe-area-inset-bottom));gap:4px}
/* beta127: entradas visivelmente acionáveis, sem seleção automática. */
#frowcat{border:2px solid var(--verde);border-radius:12px;background:var(--verdeclaro);padding:12px;gap:10px;margin:8px 0;min-height:48px;color:var(--verde)}
#frowcatval{font-size:calc(14px*var(--fs,1));text-align:right}
#sheetcat #catchips{gap:6px}
#sheetcat .catchip{background:var(--verde);color:var(--sobreVerde);border:2px solid var(--verde);font-weight:700;min-height:44px;box-shadow:0 2px 2px #0002;justify-content:flex-start;padding:8px 10px}
#sheetcat .catchip::after{content:'›';margin-left:auto;font-size:calc(20px*var(--fs,1))}
#sheetcat .catchip.on{background:var(--amarelo,#e9b641);color:#142e25;border-color:#a77716;box-shadow:inset 0 0 0 1px #fff8}
#sheetcat .catchip svg{color:var(--verde);flex-shrink:0}
#sheetcat #subbox label{display:block;font-size:calc(14px*var(--fs,1));font-weight:700;line-height:1.4;color:var(--verde);margin:5px 2px 10px}
#sheetcat .catdica{font-size:calc(13px*var(--fs,1));line-height:1.5;color:var(--suave);padding:0 2px}
body.escuro #frowcat{background:#223d32;color:#e6efea;border-color:#79ae94}
body.escuro #sheetcat #subbox label{color:#c9e5d6}
@media(max-height:500px){#sheetcat .catchip{min-height:34px;padding:4px 8px}}
/* beta128: separadores próprios para distinguir campos do registo. */
#addview{--linhaCampo:#91a89b}
#addview #frowconta,#addview #frowconta2,#addview #frowdia{border-bottom:1px solid var(--linhaCampo);padding-bottom:12px;margin-bottom:12px}
#addview #valorwrap{padding-bottom:12px;margin-bottom:10px;border-bottom:1px solid var(--linhaCampo)}
#addview #catbox{padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid var(--linhaCampo)}
#addview .acwrap{padding-bottom:12px;margin-bottom:10px;border-bottom:1px solid var(--linhaCampo)}
#addview #detalhes{margin-bottom:12px;border-bottom:2px solid var(--linhaCampo)}
#addview #frowcatval{overflow-wrap:anywhere;min-width:0}
body.escuro #addview{--linhaCampo:#6c8b79}
/* beta129: nomes dentro da linha, sempre visíveis. */
#addview .campolinha{display:grid;grid-template-columns:68px minmax(0,1fr);align-items:center;gap:8px;border-bottom:1px solid var(--linhaCampo);padding:10px 0;margin-bottom:8px;min-width:0}
#addview .campolinha>label{margin:0;font-size:calc(14px*var(--fs,1));color:var(--suave);line-height:1.35}
#addview .campolinha #valorwrap,#addview .campolinha .acwrap{margin:0;padding:0;border:none;min-width:0}
#addview .campolinha #moedachips{margin:0;min-width:0;max-width:100%}
#addview .campolinha #valor,#addview .campolinha #nota{margin:0;box-sizing:border-box;width:100%;min-width:0}
#addview #linhanota>label{font-size:calc(14px*var(--fs,1))}
#addview #linhavalor #valorwrap{display:block}
#addview #linhavalor #valorsimbdir{top:50%;transform:translateY(-50%)}
/* beta129 revisão09:00: nomes fora da caixa, linhas sem molduras. */
#addview #frowcat{border:none;border-bottom:1px solid var(--linhaCampo);border-radius:0;background:transparent;padding:12px 0;margin:0;box-shadow:none;color:var(--texto);gap:8px}
#addview #catbox{padding:0;margin-bottom:10px;border:none}
#addview #frowcat>span{font-size:calc(14px*var(--fs,1));flex-shrink:0}
#addview #frowcatval{margin-left:auto;color:var(--verde)}
#addview #frowcat::after,#addview #frowconta::after,#addview #frowconta2::after{content:'›';font-size:calc(22px*var(--fs,1));font-weight:700;color:var(--verde);margin-left:5px}
#addview #frowconta,#addview #frowconta2{background:transparent;border-radius:0;border-left:0;border-right:0;border-top:0;box-shadow:none;gap:8px}
#addview #frowcontaval,#addview #frowconta2val{margin-left:auto}
#addview .campolinha #valor,#addview .campolinha #nota{border:none;border-radius:0;background:transparent;box-shadow:none;padding-top:10px;padding-bottom:10px;color:var(--texto)}
#addview .campolinha #valor{padding-left:34px}
#addview #frowcat:focus-visible,#addview #frowconta:focus-visible,#addview .campolinha input:focus-visible{outline:2px solid var(--verde);outline-offset:2px}
body.escuro #addview #frowcatval,body.escuro #addview #frowcat::after,body.escuro #addview #frowconta::after{color:#8dceb0}
/* beta130: contas no próprio teclado, também nas partes. */
#kpsheet .kpgrid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr))}
#kpsheet .kpop{background:var(--cartao,#fff);color:var(--verde);font-weight:700}
#kpsheet .kpacc{color:var(--vermelho)}
body.escuro #kpsheet .kpop{background:#1c2b26;color:#7fd6a8}
#divlist input[data-parte="0"]{background:var(--verdeclaro);border-style:dashed;color:var(--verde)}
#divlist input{cursor:pointer}
/* Grelha estável: dígitos na ordem habitual, operações numa coluna. */
#kpsheet .kpk[data-k="ac"]{grid-area:1/1}#kpsheet .kpk[data-k="/"]{grid-area:1/2}#kpsheet .kpk[data-k="*"]{grid-area:1/3}#kpsheet .kpk[data-k="ap"]{grid-area:1/4}
#kpsheet .kpk[data-k="7"]{grid-area:2/1}#kpsheet .kpk[data-k="8"]{grid-area:2/2}#kpsheet .kpk[data-k="9"]{grid-area:2/3}#kpsheet .kpk[data-k="-"]{grid-area:2/4}
#kpsheet .kpk[data-k="4"]{grid-area:3/1}#kpsheet .kpk[data-k="5"]{grid-area:3/2}#kpsheet .kpk[data-k="6"]{grid-area:3/3}#kpsheet .kpk[data-k="+"]{grid-area:3/4}
#kpsheet .kpk[data-k="1"]{grid-area:4/1}#kpsheet .kpk[data-k="2"]{grid-area:4/2}#kpsheet .kpk[data-k="3"]{grid-area:4/3}#kpsheet .kpfeito{grid-area:4/4/6/5}
#kpsheet .kpk[data-k="00"]{grid-area:5/1}#kpsheet .kpk[data-k="0"]{grid-area:5/2}#kpsheet .kpk[data-k=","]{grid-area:5/3}
/* beta131: um risco entre blocos, nunca linha vazia de moeda. */
#addview #frowconta,#addview #frowconta2,#addview #frowdia,#addview #linhamoeda{border-bottom:0;margin-bottom:0}
#addview #linhamoeda{padding-bottom:0}
body.kpaberto #addview #linhamoeda{display:none}
#addview #linhavalor{border-bottom:1px solid var(--linhaCampo);margin-bottom:0;padding-bottom:12px}
#addview #frowcat{border-bottom:1px solid var(--linhaCampo)}
#addview #linhanota{border-bottom:0;margin-bottom:10px}
#addview #detalhes{border-bottom:0}
/* beta131 referência09:12: risco apenas sob a zona de valor. */
#addview #frowconta,#addview #frowconta2,#addview #frowdia,#addview #frowcat,#addview #linhavalor,#addview #linhamoeda,#addview #linhanota{position:relative;border:0!important;margin-bottom:0;padding-top:12px;padding-bottom:12px;min-height:48px;box-sizing:border-box}
#addview #frowconta::before,#addview #frowconta2::before,#addview #frowdia::before,#addview #frowcat::before,#addview #linhavalor::after,#addview #linhanota::after{content:'';position:absolute;bottom:0;left:76px;right:0;border-bottom:1px solid var(--linhaCampo);height:0;pointer-events:none}
#addview #frowconta>span,#addview #frowconta2>span,#addview #frowdia>.flab,#addview #frowcat>span{width:68px;flex:0 0 68px;text-align:left;font-size:calc(14px*var(--fs,1))}
#addview #frowdia{gap:8px;justify-content:flex-start}
#addview #frowdia #diatxt{font-size:calc(14px*var(--fs,1));margin-left:auto;min-width:0}
#addview #frowdia #horatxt{font-size:calc(14px*var(--fs,1));margin-left:0}
#addview .formfaixa{height:14px;background:#dfe5df;margin:16px -10px}
body.escuro #addview .formfaixa{background:#263930}
#addview #catbox{margin-bottom:0}
body.kpaberto #addview #linhamoeda{display:none!important}
/* Alinhamento da referência: coluna de nomes e bloco secundário aberto. */
#addview .campolinha{grid-template-columns:78px minmax(0,1fr)}
#addview #frowdia>.flab,#addview #frowcat>span,#addview #frowconta>span{width:78px;flex-basis:78px;color:var(--suave)}
#addview #frowdia::before,#addview #frowcat::before,#addview #frowconta::before,#addview #linhavalor::after,#addview #linhanota::after{left:86px}
#addview #frowdia,#addview #frowcat,#addview #frowconta,#addview #linhavalor,#addview #linhanota{min-height:58px;padding-top:14px;padding-bottom:14px}
#addview #linhamoeda{padding:3px 0 3px 86px;display:block;min-height:0}
#addview #linhamoeda>label{display:none}
#addview #linhamoeda .moedachip{font-size:calc(10px*var(--fs,1));padding:3px 7px}
#addview #linhavalor #valor{font-size:calc(18px*var(--fs,1))}
#addview #divbtn{font-size:calc(10px*var(--fs,1));padding:3px 7px;margin:4px 0 4px 86px}
#addview #linhanota>label{font-size:calc(14px*var(--fs,1))}
#addview .formfaixa{height:20px;margin:16px -10px 20px}
#addview #fotobox{margin-top:8px}
#addview #detalhes{border:0;border-radius:0;border-bottom:1px solid var(--linhaCampo);background:transparent;box-shadow:none}
/* Proporções do modelo observado: cinco linhas sem extras intercalados. */
#addview .tipotoggle{margin-bottom:16px}
#addview #frowdia,#addview #frowcat,#addview #frowconta,#addview #linhavalor,#addview #linhanota{height:46px;min-height:46px;padding-top:8px;padding-bottom:8px}
#addview .campolinha{margin-top:0;grid-template-columns:78px minmax(0,1fr)}
#addview #frowcatval,#addview #frowcontaval{margin-left:0;text-align:left;flex:1;font-weight:400;color:var(--texto);font-size:calc(16px*var(--fs,1))}
#addview #frowcat::after,#addview #frowconta::after{display:none}
#addview #frowdia #diatxt{margin-left:0;font-size:calc(13px*var(--fs,1));white-space:nowrap}
#addview #horatxt{font-weight:400!important;font-size:calc(16px*var(--fs,1))!important;color:var(--texto)}
#addview #linhavalor #valor,#addview #linhanota #nota{padding-top:0;padding-bottom:0;font-size:calc(16px*var(--fs,1));font-weight:400;height:30px}
#addview #linhavalor #valor{padding-left:20px}
#addview #linhavalor #valorsimbdir{left:0;font-size:calc(16px*var(--fs,1))}
#addview #linhanota #nota{padding-left:0}
#addview .formfaixa{height:12px;margin:26px -10px 24px}
#addview #etqchips{margin:0 10px 14px;min-height:32px}
#addview #detalherow{position:relative;display:flex;align-items:center;margin:0 10px 24px;border-bottom:1px solid var(--linhaCampo)}
#addview #detalhes{border:0;min-height:38px;height:auto;overflow:hidden;padding:8px 0;margin:0;resize:none;font-size:calc(16px*var(--fs,1))}
#addview #fotobtn{flex:0 0 32px;background:transparent;border:0;padding:0;margin:0;font-size:calc(25px*var(--fs,1));color:var(--suave)}
#addview #fotobox{margin:0}
#addview #linhamoeda{padding:0 0 3px 0}
#addview #divbtn{margin:2px 0 14px}
#addview .addbtns{margin-top:12px;grid-template-columns:3.2fr 1fr;gap:8px}
#addview .addbtns button{border-radius:8px;min-height:48px}
#addview #linhanota>label{white-space:nowrap}
#addview .addbtns button{padding-left:8px;padding-right:8px;font-size:calc(14px*var(--fs,1))}
#addview #fotobtn svg{display:block;margin:auto}

/* beta132: subcategoria por parte, sem alterar as cinco linhas-base. */
#divlist .contaadd{display:grid;grid-template-columns:minmax(0,1fr) 92px 34px;gap:6px}
#divlist .contaadd select,#divlist .contaadd input{min-width:0;width:100%;box-sizing:border-box}
#divlist .divsub{grid-column:1/-1;font-size:calc(13px*var(--fs,1))}
/* beta133: duas colunas do modelo, sem criar grupos de contas. */
#sheetconta.vistagrupos #contachips,#sheetconta.vistagrupos #contachips2box{display:none!important}
#sheetconta.vistagrupos .bbody{padding:0;overflow:hidden;display:flex}
#contagrupos{display:grid;grid-template-columns:1fr 1fr;flex:1;min-width:0;overflow:hidden}
#contagrupos.hidden{display:none}
.contagruposnomes,.contagruposlista{overflow-y:auto;min-width:0}
.contagruposnomes{border-right:1px solid var(--linhaCampo)}
#sheetconta .contagrupo,#contagrupos .contachip{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:54px;margin:0;padding:10px 12px;border:0;border-bottom:1px solid var(--linhaCampo);border-radius:0;background:transparent;color:var(--texto);text-align:left;font-size:calc(14px*var(--fs,1));box-sizing:border-box}
#sheetconta .contagrupo.on{background:var(--verdeclaro)}
.contagrupo span{font-size:calc(22px*var(--fs,1));margin-left:8px}
.contagruposlista p{padding:10px}
#contagrupos .contagruposnomes{border-right:1px solid #b9c3bd}
#sheetconta .contagrupo,#contagrupos .contachip{border-bottom:1px solid #b9c3bd}
body.escuro #contagrupos,body.escuro #contagrupos button{background:var(--fundo);color:var(--texto)}
#sheetcat .catchip::after{display:none}
#sheetcat .catsubabrir{margin-left:auto;display:flex;align-items:center;justify-content:center;min-width:38px;min-height:36px;font-size:calc(24px*var(--fs,1));border-left:1px solid #ffffff70}
#sheetcat .catsubabrir:focus-visible{outline:2px solid var(--amarelo)}
/* beta134: separadores finos e suaves, sem alterar posições. */
#addview{--linhaCampo:#d9d8d2}
body.escuro #addview{--linhaCampo:#38483f}
#sheetconta .contagrupo,#contagrupos .contachip{border-bottom-color:#deded8}
#contagrupos .contagruposnomes{border-right-color:#deded8}
body.escuro #sheetconta .contagrupo,body.escuro #contagrupos .contachip,body.escuro #contagrupos .contagruposnomes{border-color:#38483f}
/* beta135: seleção de etiquetas, ações grandes e área vazia com arte existente. */
#etiquetasPainel{position:fixed;inset:0;z-index:1500;background:var(--fundo);display:flex;flex-direction:column;color:var(--texto);overflow-y:auto}
#etiquetasPainel.hidden{display:none}
.etiquetasBarra{display:flex;align-items:center;gap:2px;padding:8px 3px;background:var(--verdescuro);color:white;min-height:56px;flex:none}
.etiquetasBarra h2{flex:1;min-width:0;margin:0;font-size:calc(17px*var(--fs,1));font-weight:600;overflow-wrap:break-word}
.etiquetasBarra.estreita{flex-wrap:wrap}
.etiquetasBarra.estreita h2{flex:1 1 100%;order:2}
.etiquetasBarra button{border:0;background:none;color:inherit;font-size:calc(28px*var(--fs,1));min-width:48px;min-height:48px;border-radius:8px}
.etiquetasBarra button.on{background:#ffffff30}
.etiquetasAjuda{display:flex;align-items:center;gap:16px;padding:22px 18px;border-bottom:1px solid #deded8;color:var(--suave);background:var(--cartao);flex:none}
.etiquetasAjuda>span{font-size:calc(30px*var(--fs,1))}.etiquetasAjuda p{font-size:calc(15px*var(--fs,1));margin:0;line-height:1.4}
#etiquetasLista{flex:1;overflow:auto;min-height:0}
.etiquetaLinha{display:flex;align-items:center;padding:0 12px;background:var(--cartao);border-bottom:1px solid #deded8;min-height:58px}
.etiquetaLinha label{display:flex;align-items:center;gap:16px;flex:1;min-height:58px;cursor:pointer;overflow-wrap:anywhere}
.etiquetaLinha input{width:24px;height:24px;accent-color:var(--verde);flex:none}
.etiquetaLinha button{width:44px;height:44px;border:0;background:none;color:var(--texto);font-size:calc(24px*var(--fs,1))}
.etiquetasRodape{padding:12px;background:var(--cartao);border-top:1px solid #deded8;flex:none}
#etiquetasOK{width:100%;padding:15px;border:0;border-radius:12px;background:var(--verde);color:white;font-size:calc(17px*var(--fs,1))}
.etiquetasVazio{height:100%;min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--suave);gap:10px}
.etiquetasVazio img{width:120px;height:120px;object-fit:contain;filter:grayscale(1);opacity:.10;pointer-events:none}
.gravetoMarca{flex:1 1 0;min-height:0;display:flex;align-items:center;justify-content:center;pointer-events:none;padding:24px 0;overflow:hidden}
.gravetoMarca img{width:124px;height:124px;object-fit:contain;filter:grayscale(1);opacity:.075;pointer-events:none}
.page{min-height:100%;display:flex;flex-direction:column}
body.escuro .gravetoMarca img,body.escuro .etiquetasVazio img{filter:grayscale(1) brightness(2);opacity:.10}
#etiquetasPainel{background:var(--bg549,#f2efe7)}
body.escuro #etiquetasPainel{background:#101c17}
.dlg{z-index:2300}
.etiquetaLinha label,.etiquetaLinha label span{font-size:calc(16px*var(--fs,1));font-weight:400;color:var(--texto)}
#etiquetasLista{display:flex;flex-direction:column}
#etiquetasLista>.gravetoMarca{flex:1}
#etiquetasPainel .etiquetasAjuda>span{flex:none}

body.tecladosistema nav,body.tecladosistema .fabadd,body.tecladosistema .fabmemo,body.tecladosistema #fabmenu,body.tecladosistema .movtotais{display:none!important}
body.tecladosistema main{padding-bottom:16px;scroll-padding-bottom:16px}

#fotoMenu{position:fixed;z-index:2400;width:160px;background:var(--cartao);color:var(--texto);box-shadow:0 4px 12px #0004;border:1px solid #ddd;padding:4px 0}
#fotoMenu.hidden{display:none}
#fotoMenu button{display:block;width:100%;border:0;background:transparent;color:inherit;text-align:left;padding:14px 18px;font:inherit;min-height:48px}
#fotoMenu button:focus-visible,#fotoMenu button:hover{background:var(--verdeclaro);color:var(--verde)}
/* Largura real do símbolo, sem valores absolutos que tapem os dígitos. */
#addview #linhavalor #valorwrap.antes{display:flex;align-items:center;gap:10px;min-width:0}
#addview #linhavalor #valorwrap.antes #valorsimbdir{position:static;transform:none;max-width:none;overflow:visible;flex:0 0 auto;order:0;font-weight:400;white-space:nowrap}
#addview #linhavalor #valorwrap.antes input{flex:1;min-width:0;width:0;padding-left:0;padding-right:0;order:1}
#addview #linhamoeda{display:none!important}
#addview #linhavalor{grid-template-columns:78px minmax(0,1fr) auto;column-gap:8px;height:42px;min-height:42px;padding-top:6px;padding-bottom:6px}
#moedasLinha{display:flex;gap:2px;align-items:center}
#moedasLinha .moedaLinha{border:1px solid #d5d4cc;border-radius:12px;background:var(--cartao,#fff);color:var(--texto);width:23px;height:26px;padding:0;font-size:calc(12px*var(--fs,1));line-height:1;min-width:0}
#moedasLinha .moedaLinha.on{border-color:var(--ouro);background:#fff4d7}
body.escuro #moedasLinha .moedaLinha{background:#20392e;color:#fff}
#addview #linhavalor #valorwrap.antes{gap:5px}
#addview #linhavalor #valorsimbdir{font-size:calc(14px*var(--fs,1))}
#marcadorTopo{margin-left:auto;background:transparent;border:0;color:var(--verde);width:40px;height:40px;font-size:calc(28px*var(--fs,1));flex:0 0 40px}
#addview #addcopy{display:none!important}
#editarAcoes{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:6px;margin:14px 0 34px}
#editarAcoes.hidden{display:none}
#editarAcoes button{background:transparent;border:1px solid #a8afa9;border-radius:8px;padding:10px 4px;min-height:44px;color:var(--texto);font-size:calc(14px*var(--fs,1))}
#editarAcoes #editarApagar{color:var(--vermelho)}
#marcadoresPainel{position:fixed;inset:0;background:var(--bg549,#f2efe7);color:var(--texto);z-index:1500;display:flex;flex-direction:column}
#marcadoresPainel.hidden{display:none}
.marcadoresBarra{display:flex;align-items:center;gap:12px;background:var(--verdescuro);color:#fff;padding:10px}
.marcadoresBarra h2{font-size:calc(20px*var(--fs,1));margin:0}
.marcadoresBarra button{background:transparent;border:0;color:inherit;font-size:calc(30px*var(--fs,1));min-width:48px;min-height:48px}
.marcadoresAjuda{font-size:calc(14px*var(--fs,1));line-height:1.5;padding:16px}
#marcadoresLista{overflow-y:auto;flex:1;padding:0 12px 20px}
.marcadorLinha{display:flex;border-bottom:1px solid #d9d8d2;align-items:center}
.marcadorEscolher{flex:1;min-width:0;text-align:left;background:transparent;border:0;padding:14px 4px;color:inherit}
.marcadorEscolher strong,.marcadorEscolher small{display:block;overflow-wrap:anywhere}
.marcadorEscolher strong{font-size:calc(16px*var(--fs,1));margin-bottom:5px}
.marcadorEscolher small{font-size:calc(13px*var(--fs,1));color:var(--suave)}
.marcadorApagar{width:44px;min-height:48px;background:transparent;border:0;font-size:calc(26px*var(--fs,1));color:var(--vermelho)}
body.escuro #marcadoresPainel{background:#101c17}
/* beta139: opções de registo, com arte e cores Graveto. */
.reg139Abrir{width:100%;border:0;border-bottom:1px solid #ddd;background:transparent;color:var(--verde);padding:12px 4px;text-align:left;font:inherit;font-size:calc(13px*var(--fs,1))}#reg139Painel{position:fixed;inset:0;z-index:1500;background:var(--bg,#f7f5ef);display:flex;flex-direction:column}#reg139Painel.hidden{display:none}.reg139Corpo{overflow:auto;padding:12px 18px 40px;flex:1;max-width:640px;width:100%;box-sizing:border-box;margin:auto}.reg139Corpo label{display:block;margin:14px 0 6px;font-weight:600}.reg139Corpo input:not([type=checkbox]),.reg139Corpo select{width:100%;padding:10px;border:1px solid #bbb;border-radius:8px;box-sizing:border-box;background:var(--paper,#fff);color:inherit;font:inherit}.reg139Check{display:flex!important;align-items:center;gap:10px}.reg139Check input{width:20px;height:20px}.plano139{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #ccc;align-items:center}.plano139 span{flex:1}.plano139 button{padding:9px}#reg139voz{font-size:calc(13px*var(--fs,1));padding:8px;border:0;background:transparent;color:var(--verde)}#fotoZoom139{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);display:flex;gap:12px;z-index:2}#fotoZoom139 button{padding:12px 18px;background:var(--cartao,#fff);color:#183c2e;border:0;border-radius:8px;font-size:calc(20px*var(--fs,1))}#fotoview{overflow:auto}#fotoviewimg{touch-action:pan-x pan-y pinch-zoom}.escuro #reg139Painel{background:#17251f}.escuro .reg139Corpo input,.escuro .reg139Corpo select{background:#24352b;color:#eee}

#reg139Painel .hidden{display:none!important}#reg139Painel #r139ok{font-size:calc(17px*var(--fs,1));width:48px}#reg139Painel .marcadoresBarra h2{font-size:calc(19px*var(--fs,1))}
/* beta140 */
.homeVistas140{display:flex;gap:3px;overflow-x:auto;margin:-2px -4px 12px;padding:5px 0;border-bottom:1px solid #b8c9c0;flex-shrink:0}.homeVistas140 button{white-space:nowrap;border:0;background:transparent;padding:10px 8px;color:var(--verde);font:inherit;font-size:calc(13px*var(--fs,1));border-bottom:3px solid transparent}.homeVistas140 button.on{border-bottom-color:var(--verde);font-weight:700}.homeResumo140{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid #ffffff38}.homeResumo140>div{flex:1;min-width:80px;font-size:calc(11px*var(--fs,1))}.homeResumo140 strong{display:block;font-size:calc(15px*var(--fs,1));margin-top:4px}.homeResumo140>p{flex-basis:100%;margin:2px 0;opacity:.85;font-size:calc(11px*var(--fs,1))}.pesquisa140{margin:6px 0 12px}.pesquisa140 select{font:inherit;font-size:calc(13px*var(--fs,1));padding:8px;border:1px solid #bbcabe;border-radius:8px;background:var(--paper,#fff);color:inherit}.pesquisa140 small{display:block;font-size:calc(11px*var(--fs,1));margin-top:4px;color:#66776c}#pesqDatas140{display:flex;gap:8px;margin-top:8px}#pesqDatas140.hidden{display:none}#pesqDatas140 label{font-size:calc(12px*var(--fs,1));flex:1}#pesqDatas140 input{width:100%;box-sizing:border-box}.escuro .pesquisa140 select{background:#24352b}
.homeResumo140>p{color:#e0ece4!important;opacity:1}.homeVistas140{scrollbar-width:thin}.homeVistas140 button{padding:10px 7px}#homeview>.gravetoMarca{order:999}
.notaComVoz140{position:relative} .notaComVoz140 #nota{padding-right:46px!important;box-sizing:border-box} .notaComVoz140 #reg139voz{position:absolute;right:2px;bottom:5px;width:42px;height:42px;padding:9px;display:flex;align-items:center;justify-content:center;color:var(--verde)}
.notaComVoz140 #reg139voz{bottom:auto;top:50%;transform:translateY(-50%)}
#orcMesNav141{padding:10px 0}#orcMesNav141 input{font:inherit;padding:8px;border:1px solid #bbcabe;border-radius:8px;background:var(--paper,#fff);color:inherit}#orcMesNav141.hidden,#subOrc141.hidden{display:none}#subOrcPainel141{position:fixed;inset:0;background:var(--bg,#f7f5ef);z-index:1500;display:flex;flex-direction:column}#subOrcPainel141.hidden,#subOrcPainel141 .hidden{display:none!important}.subOrcLinha141{display:block;text-align:left;width:100%;padding:14px 10px;margin:8px 0;border:1px solid #d3dbd5;border-radius:8px;background:var(--paper,#fff);color:inherit;font:inherit}.subOrcLinha141>span,.subOrcLinha141>small{display:block;margin-top:6px}.subOrcLinha141 .orcbar{margin:10px 0}.escuro #subOrcPainel141{background:#17251f}.escuro .subOrcLinha141,.escuro #orcMesNav141 input{background:#24352b;color:#eee}
#contaPainel142{position:fixed;inset:0;background:var(--bg,#f7f5ef);display:flex;flex-direction:column;z-index:1500}#contaPainel142.hidden{display:none}.contaLinha142{width:100%;padding:14px 10px;border:0;border-bottom:1px solid #ccd5ce;background:transparent;color:inherit;font:inherit;display:grid;grid-template-columns:1fr auto;text-align:left;gap:5px}.contaLinha142 small{grid-column:1/-1;color:#687a6d}.c142stat{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #cdd5cd}.c142datas{display:flex;gap:10px}.c142datas label{width:50%}#c142gestao{margin-top:20px}#novaGrupo142,#novaTipo142{max-width:100%;font:inherit;padding:9px;margin:4px 0}.escuro #contaPainel142{background:#17251f}#contaPainel142 textarea{box-sizing:border-box;width:100%;font:inherit;padding:10px;border-radius:8px;border:1px solid #bbcabe}
.historico143{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 0;border-bottom:1px solid #cbd4cd}.historico143 span{flex-basis:100%;font-size:calc(13px*var(--fs,1))}.historico143 button{padding:9px 14px;border:1px solid #aabdac;border-radius:8px;background:var(--paper,#fff);color:inherit}#resetPainel143{position:fixed;inset:0;background:var(--bg,#f7f5ef);display:flex;flex-direction:column;z-index:1500}#resetPainel143.hidden{display:none}#resetConfirma143,#resetCancelar143{padding:13px 16px;margin:12px 4px;border-radius:8px;border:0;font:inherit}#resetConfirma143{background:#af3d31;color:white}#resetConfirma143:disabled{opacity:.4}#resetTexto143{font-size:calc(20px*var(--fs,1));letter-spacing:2px}.escuro #resetPainel143{background:#17251f}
#contasStats144{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--bg,#f7f5ef);z-index:1500}#contasStats144.hidden{display:none}#contasStats144 h2{font-size:calc(18px*var(--fs,1))}#cs144contas{display:flex;flex-wrap:wrap;gap:8px}#cs144contas label{display:flex;align-items:center;gap:8px;padding:8px;background:#e5eee7;border-radius:8px;margin:0;font-size:calc(13px*var(--fs,1))}#cs144contas input{width:18px;height:18px}.escuro #contasStats144{background:#17251f}.escuro #cs144contas label{background:#24352b}
#c145opcoes.hidden,#c145preferencia.hidden,#c145prepagar.hidden{display:none!important}
#moverSub147{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--bg,#f7f5ef);z-index:1500}#moverSub147.hidden{display:none}.subdefrow{flex-wrap:wrap;gap:5px}.subdefrow .contanome{min-width:100px;flex:1}.subdefrow .btn{font-size:calc(12px*var(--fs,1));padding:8px}.escuro #moverSub147{background:#17251f}
.livroAtual148{display:block;width:100%;padding:7px 14px;border:0;border-bottom:1px solid #b9cbbf;text-align:left;background:#e4eee7;color:#1b5e40;font:inherit;font-size:calc(12px*var(--fs,1));flex-shrink:0}#livrosPainel148{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--bg,#f7f5ef);z-index:1500}#livrosPainel148.hidden,#livrosFicheiro148.hidden{display:none}.livroLinha148{display:flex;gap:8px;border-bottom:1px solid #bdccbf;padding:10px 0}.livroLinha148 button{padding:12px;border:0;background:#e2ece4;color:#17472e;border-radius:8px;font:inherit}.livroEscolher148{flex:1;text-align:left}.livroEscolher148:disabled{opacity:.7;font-weight:700}.escuro #livrosPainel148{background:#17251f}.escuro .livroAtual148{background:#213b2b;color:#b6d7c3}
.dlg .dlgbtns{flex-wrap:wrap}.dlg button{max-width:100%;white-space:normal}body>section>button{margin:8px 8px 8px 0;padding:10px}
#smsPainel150{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--bg,#f7f5ef);z-index:1500}#smsPainel150.hidden,#smsFicheiro150.hidden{display:none}.smsCorpo150{overflow:auto;flex:1;padding:16px 18px 50px;max-width:650px;width:100%;box-sizing:border-box;margin:auto}.smsCorpo150 textarea{box-sizing:border-box;width:100%;padding:10px;font:inherit;border:1px solid #bbccbe;border-radius:8px}.smsDraft150{background:var(--cartao,#fff);border:1px solid #bfcec2;border-radius:8px;padding:12px;margin:14px 0}.smsOriginal150{font-size:calc(12px*var(--fs,1));word-break:break-word;max-height:90px;overflow:auto;color:#586e5e}.smsGrid150{display:grid;grid-template-columns:1fr 1fr;gap:8px}.smsDraft150 label{display:block;font-size:calc(12px*var(--fs,1));margin:5px 0}.smsDraft150 input:not([type=checkbox]),.smsDraft150 select{box-sizing:border-box;width:100%;padding:9px;min-width:0;font:inherit;border:1px solid #bbccbe;border-radius:8px}.smsCheck150{display:flex!important;align-items:center;gap:8px}.smsCheck150 input{width:20px;height:20px}.escuro #smsPainel150{background:#17251f}.escuro .smsDraft150{background:#24352b}
#pcPainel152{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--bg,#f7f5ef);z-index:1500}#pcPainel152.hidden{display:none}.escuro #pcPainel152{background:#17251f}#pcUrl152{display:block;margin:6px 0;color:var(--verde)}
.hidden{display:none!important}
#bankPainel154{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--bg,#f7f5ef);z-index:1500}#bankPainel154.hidden{display:none}.escuro #bankPainel154{background:#17251f}
/* beta.163: barra dos Movimentos fica fixa no topo; a lista rola por baixo */
.movtopo{position:sticky;top:-14px;z-index:40;margin:0 -14px;padding:8px 14px 6px;background:var(--bg549,#f2efe7);border-bottom:1px solid #e2dccb}
body.escuro .movtopo{background:#101915;border-bottom-color:#2c3d36}
#movview #selbar{position:static}
#movview #selmenu{position:static;margin-bottom:8px}
/* beta.164: lixeira de movimentos */
.lixo162row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid #eee7d8}
.lixo162info b{display:block;font-size:calc(14px*var(--fs,1))}
.lixo162info .sub{font-size:calc(11px*var(--fs,1))}
.lixo162ac{display:flex;gap:6px;flex-shrink:0}
.lixo162ac button{padding:6px 10px;border:1px solid #d8d2c2;border-radius:8px;background:var(--cartao,#fff);font-size:calc(12px*var(--fs,1))}
body.escuro .lixo162row{border-bottom-color:#2c3d36}
body.escuro .lixo162ac button{background:#1b2b24;border-color:#3a4f46;color:#e6efea}

/* beta.165 polimento: listas deslizaveis com o dedo + conteudo livre da barra inferior */
main{padding-bottom:calc(var(--navH,60px) + 22px)}
#moedachips{padding-right:18px;scroll-padding:0 18px}
#etqchips{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:6px;padding-right:14px;scrollbar-width:thin}
#etqchips .etqchip,#etqchips .contachip{flex:none}

/* beta.165 calculadora: conta em curso + negativo em tom de despesa */
.calcexpr{min-height:16px;font-size:calc(13px*var(--fs,1));font-weight:500;opacity:.82;text-align:right;overflow-x:auto;white-space:nowrap;scrollbar-width:none;margin-bottom:2px}
.calcexpr::-webkit-scrollbar{display:none}
.calcvisor.neg .calcval{color:#ffab9e}
#kpmoedas{padding-right:14px;scroll-padding:0 14px}

/* Lote 166: barra do topo confortavel, sem duplicar separadores; pesquisa recolhida; passo de mes dos Orcamentos */
.homeVistas140{flex-wrap:wrap;gap:4px 2px;margin:0 -4px 10px;padding:8px 4px;overflow-x:visible;position:sticky;top:0;z-index:6;background:var(--bg549,#f2efe7)}
.homeVistas140 button{flex:1 1 21%;text-align:center;font-size:calc(14px*var(--fs,1));padding:9px 4px}
#movtabs{display:none}
#movview h2{margin:10px 0 6px;line-height:1.25}
.movsub{font-size:calc(12px*var(--fs,1));color:#66776c;margin-top:1px}
.reg139linha{display:flex;justify-content:flex-end;margin:2px 0 2px}
.reg139linha .reg139Abrir{width:auto;text-align:right;border-bottom:0;padding:6px 2px}
#pesqBtn166{border:1px solid var(--border,#bbcabe);background:var(--paper,#fff);color:var(--verde);border-radius:8px;padding:6px 8px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
#pesqBtn166.on{background:var(--verde);color:var(--sobreVerde);border-color:var(--verde)}
#pesqWrap166{margin:0 0 4px}
#pesqWrap166.hidden{display:none}
.orcMesLab{display:block;font-size:calc(13px*var(--fs,1));font-weight:600;margin:10px 0 4px}
.orcMesStep{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--border,#bbcabe);border-radius:8px;background:var(--paper,#fff);padding:6px 10px}
.orcMesStep button{border:0;background:transparent;color:var(--verde);font-size:calc(20px*var(--fs,1));padding:2px 12px}
.orcMesStep span{font-weight:600;font-size:calc(14px*var(--fs,1))}
.escuro .orcMesStep,.escuro #pesqBtn166{background:#24352b}

/* beta.169: marca de agua unica, fixa no ecra, atras de tudo; titulo sem sobreposicao */
.gravetoMarcaFixa{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:0}
.gravetoMarcaFixa img{width:150px;height:150px;object-fit:contain;filter:grayscale(1);opacity:.075}
body.escuro .gravetoMarcaFixa img{filter:grayscale(1) brightness(2);opacity:.10}
header,main{position:relative;z-index:1}
nav{z-index:1}
#movhojeWrap{display:flex;justify-content:center;margin:-2px 0 8px}
#movhojeWrap.hidden{display:none}
#movhoje{border:1.5px solid var(--verde);background:var(--cartao,#fff);color:var(--verde);border-radius:16px;padding:6px 16px;font:inherit;font-size:calc(13px*var(--fs,1));font-weight:700}
body.escuro #movhoje{background:#101915}

/* beta.170: nota do dia na lista de Movimentos */
.notadia{display:flex;align-items:center;gap:8px;padding:8px 10px;margin-bottom:8px;background:var(--cartao);border-radius:var(--r-md);font-size:calc(14px*var(--fs,1));cursor:pointer}
.notadia .nd-dot{width:10px;height:10px;border-radius:50%;flex:none}
.notadia .nd-txt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--texto)}
body.escuro .notadia{background:#1b2923}
.notacard .nd-dia{font-size:calc(12px*var(--fs,1));opacity:.75;margin-top:6px}

/* beta.171: texto da app nao selecionavel (sem menu Copiar/Selecionar do Android); campos de escrita continuam selecionaveis */
body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
input,textarea,[contenteditable]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}

/* beta.172: barra de separadores fica visivel ao rolar (tambem com teclado aberto) */
body.escuro .homeVistas140{background:#101915}

/* beta.179 - cartao de confirmacao frase -> movimentos */
.iaf179 .iaf179t{font-weight:700;margin-bottom:6px}
.iaf179l{background:#f6f3ea;border:1px solid #e0d9c8;border-radius:8px;padding:6px 8px;margin:4px 0;font-size:calc(13px*var(--fs,1))}
.iaf179a{font-size:calc(12px*var(--fs,1));color:#8a8578;margin:6px 0}
.iaf179b{display:flex;gap:8px;margin-top:4px}
.iaf179ok{flex:1;background:var(--verdescuro);color:#fff;border:none;border-radius:12px;padding:9px 0;font-size:calc(14px*var(--fs,1))}
.iaf179no{flex:1;background:var(--cartao,#fff);color:var(--verdescuro);border:1px solid #d8d0bd;border-radius:12px;padding:9px 0;font-size:calc(14px*var(--fs,1))}
.iaf179ok:disabled,.iaf179no:disabled{opacity:.55}

#ajudabusca180{width:100%;box-sizing:border-box;padding:10px 12px;border-radius:var(--r-md);border:1px solid var(--linha,#d5d9d3);font:inherit;margin:4px 0 10px;background:var(--cartao)}
.faq180{background:var(--cartao);border-radius:var(--r-md);margin-bottom:8px;padding:0 12px}
.faq180 summary{padding:12px 0;font-weight:600;cursor:pointer}
.faq180 p{margin:0 0 12px;line-height:1.45;font-size:calc(14px*var(--fs,1))}
.ultcopia180{font-weight:600}

.temadots{flex-wrap:wrap}
.sec180{display:flex;align-items:center;gap:10px;margin:8px 0}
.sec180 .sw180{width:22px;height:22px;border-radius:8px;flex:none;border:1px solid rgba(0,0,0,.2)}
.sec180 span.n{flex:1}
.sec180 select{font:inherit;padding:6px 8px;border-radius:12px;border:1px solid var(--linha,#ccc);background:var(--cartao);color:var(--texto)}
#seccores180.off{opacity:.45;pointer-events:none}

.notadir185{text-align:right;max-width:120px;font-size:calc(11px*var(--fs,1));color:var(--suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.semsep185 .diasep{display:none}

.contauso186{display:block;font-size:calc(11px*var(--fs,1));color:var(--suave)}
.orchome186{cursor:pointer}

.estgraf187{display:flex;justify-content:flex-end;margin:4px 0}
#estgbtn187{border:1px solid var(--linha,#d8d2c2);background:var(--card,#fff);border-radius:16px;padding:6px 12px;font-size:calc(13px*var(--fs,1))}
.estbars187{display:flex;align-items:flex-end;gap:6px;height:220px;padding:22px 6px 0;border-bottom:1px solid #d8d2c2}
.estcol187{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;cursor:pointer}
.estcol187 .ev{font-size:calc(10px*var(--fs,1));color:var(--suave);white-space:nowrap}
.estcol187 .eb{width:100%;border-radius:6px 6px 0 0;margin-top:2px;transition:filter .15s}
.estcol187.sel .eb{filter:brightness(.6)}
.estcap187{text-align:center;font-weight:600;margin:10px 0 6px}
.estleg187{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:calc(12px*var(--fs,1));margin:6px 0 10px}
.estleg187 i{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px}
.estcol187{min-width:0}
.estcol187 .ev{font-size:calc(9px*var(--fs,1));max-width:100%;overflow:hidden;text-overflow:clip}
.estbars187{gap:4px}

.verifk188{position:absolute;left:-4px;top:-4px;width:16px;height:16px;border-radius:50%;background:#111;color:#fff;font-size:calc(11px*var(--fs,1));line-height:16px;text-align:center}
.movver188{border:0;background:none;font-size:calc(16px*var(--fs,1));color:#bbb;padding:4px 6px}
.movver188.on{color:#1b8f4e;font-weight:700}
.pct189row{display:flex;gap:10px}.pct189row label{flex:1;font-size:calc(12px*var(--fs,1));color:var(--mut,#777)}
.pct189row input{display:block;width:100%;box-sizing:border-box;margin-top:4px;padding:10px;font-size:calc(16px*var(--fs,1));border:1px solid #ccc;border-radius:12px}
.orcgrp190{display:flex;justify-content:space-between;padding:10px 12px;margin:6px 0;border-radius:12px;background:rgba(0,0,0,.05);font-size:calc(15px*var(--fs,1))}
.orcmv190{margin-left:6px;white-space:nowrap}.orcmv190 button{border:0;background:transparent;font-size:calc(15px*var(--fs,1));padding:4px 7px;color:inherit}.orcmv190 button:disabled{opacity:.25}
.rec222btn{width:100%;text-align:left;padding:10px;border-radius:12px;border:1px solid #8884;background:var(--cartao);color:inherit;font-size:calc(15px*var(--fs,1))}
.rec222row{display:grid;grid-template-columns:34px 1fr auto;gap:4px 10px;align-items:center}
.rec222row .objacoes{grid-column:1/4}
.r222ic{width:30px;height:30px;color:var(--cor,#2e9e5b)}.r222ic svg{width:100%;height:100%}
.r222sub{font-size:calc(12px*var(--fs,1));opacity:.7}.r222val{font-weight:700;font-size:calc(14px*var(--fs,1))}
#roda222{position:fixed;inset:0;z-index:9000}.r222fundo{position:absolute;inset:0;background:#0008}
.r222folha{position:absolute;left:0;right:0;bottom:0;background:var(--cartao,#fff);color:#222;border-radius:18px 18px 0 0;padding:14px 16px 18px}
body.escuro .r222folha,.r222folha{--x:0}
@media (prefers-color-scheme:dark){.r222folha{background:#1e2a24;color:#eee}}
body.escuro .r222folha{background:#1e2a24;color:#eee}
.r222folha h3{margin:0 0 8px;text-align:center;font-size:calc(15px*var(--fs,1))}
.r222cols{position:relative;display:flex;gap:6px;height:150px}
.r222c{flex:1;overflow-y:auto;scroll-snap-type:y mandatory;text-align:center;scrollbar-width:none;padding:0}
.r222c div{height:30px;line-height:30px;scroll-snap-align:center;opacity:.5;font-size:calc(16px*var(--fs,1))}
.r222c div.on{opacity:1;font-weight:700;font-size:calc(18px*var(--fs,1))}
.r222sel{position:absolute;left:0;right:0;top:60px;height:30px;border-top:1px solid #8886;border-bottom:1px solid #8886;pointer-events:none}
.r222bt{display:flex;gap:8px;margin-top:12px}.r222bt button{flex:1;padding:11px;border-radius:12px;border:1px solid #8886;background:transparent;color:inherit;font-size:calc(15px*var(--fs,1))}
.r222bt .r222ok{background:#2e9e5b;color:#fff;border-color:#2e9e5b}
#calc223{position:fixed;inset:0;z-index:9000}.c223fundo{position:absolute;inset:0;background:#0008}
.c223folha{position:absolute;left:0;right:0;bottom:0;background:var(--cartao,#fff);color:#222;border-radius:18px 18px 0 0;padding:14px 14px 18px}
@media (prefers-color-scheme:dark){.c223folha{background:#1e2a24;color:#eee}}
body.escuro .c223folha{background:#1e2a24;color:#eee}
.c223folha h3{margin:0 0 8px;text-align:center;font-size:calc(15px*var(--fs,1))}
.c223vis{min-height:44px;text-align:right;font-size:calc(28px*var(--fs,1));font-weight:700;padding:6px 8px;border-radius:12px;background:#8882;overflow-x:auto;white-space:nowrap}
.c223grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}
.c223grid button,.c223bt button{padding:13px 0;border-radius:12px;border:1px solid #8886;background:transparent;color:inherit;font-size:calc(20px*var(--fs,1))}
.c223bt{display:flex;gap:8px;margin-top:8px}.c223bt button{flex:1;font-size:calc(16px*var(--fs,1))}
.c223bt .c223ok{background:#2e9e5b;color:#fff;border-color:#2e9e5b}
#idm223{position:fixed;inset:0;z-index:9000}
.idm223row{display:flex;align-items:center;gap:12px;width:100%;padding:12px 6px;border:0;border-bottom:1px solid #8883;background:transparent;color:inherit;font-size:calc(17px*var(--fs,1));text-align:left}
.idmfl{font-size:calc(28px*var(--fs,1))}.idmn{flex:1}.idmc{width:22px;height:22px;border-radius:50%;border:2px solid #8888}.idmc.on{border-color:#2e9e5b;background:radial-gradient(#2e9e5b 45%,transparent 50%)}
.idmfl{width:34px;height:34px;border-radius:50%;display:inline-block}
.idmfl-pt{background:linear-gradient(90deg,#046a38 40%,#da291c 40%)}
.idmfl-en{background:linear-gradient(#0000 42%,#fff 42%,#fff 58%,#0000 58%),linear-gradient(90deg,#0000 42%,#fff 42%,#fff 58%,#0000 58%),linear-gradient(#0000 46%,#c8102e 46%,#c8102e 54%,#0000 54%),linear-gradient(90deg,#0000 46%,#c8102e 46%,#c8102e 54%,#0000 54%),#012169}
.r225tabs{display:flex;gap:4px;margin:8px 0}.r225tabs button{flex:1;padding:9px 4px;border:0;border-bottom:3px solid transparent;background:transparent;color:inherit;font-size:calc(14px*var(--fs,1));opacity:.7}.r225tabs button.on{border-color:#2e9e5b;color:#2e9e5b;opacity:1;font-weight:700}
.r225nav{display:flex;gap:6px;align-items:center}.r225nav button{padding:9px 12px;border-radius:12px;border:1px solid #8884;background:transparent;color:inherit}.r225nav .r225y{flex:1;font-weight:700;font-size:calc(14px*var(--fs,1))}
.r225g{display:flex;align-items:flex-end;gap:3px;height:170px;margin:10px 0;padding-top:14px}
.r225col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:0}.r225b{width:80%;border-radius:3px 3px 0 0}.r225m{font-size:calc(10px*var(--fs,1));margin-top:3px}.r225v{font-size:calc(9px*var(--fs,1));opacity:.7;height:12px;overflow:hidden}
.r225l{background:var(--cartao);border-radius:var(--r-md);padding:4px 12px;margin:8px 0}
.r225r{display:flex;justify-content:space-between;gap:8px;padding:11px 0;border-bottom:1px solid #8883;font-size:calc(14px*var(--fs,1))}.r225r:last-child{border-bottom:0}
.r225big{padding:16px 0;font-size:calc(16px*var(--fs,1))}
.r225cr{align-items:center;justify-content:flex-start}.r225cr i{width:26px;height:26px}.r225cr i svg{width:100%;height:100%}.r225cr em{width:4px;height:22px;border-radius:2px}.r225cr span{flex:1}.r225cr u{text-decoration:none;opacity:.7;min-width:48px;text-align:right}
.r225anel{width:170px;height:170px;border-radius:50%;margin:14px auto;display:flex;align-items:center;justify-content:center}.r225anel div{width:100px;height:100px;border-radius:50%;background:var(--cartao,#fff);display:flex;align-items:center;justify-content:center;text-align:center;font-size:calc(13px*var(--fs,1))}
.o226row{display:flex;align-items:center;gap:10px;padding:10px 6px;border-bottom:1px solid #8883}.o226row i{width:28px;height:28px;color:#2e9e5b}.o226row i svg{width:100%;height:100%}
.o226tx{flex:1;min-width:0}.o226tx b{display:block;font-size:calc(15px*var(--fs,1))}.o226tx small{opacity:.7;font-size:calc(12px*var(--fs,1))}
.o226def{padding:8px 12px;border-radius:12px;border:1px solid #2e9e5b;background:transparent;color:#2e9e5b;font-size:calc(13px*var(--fs,1))}.o226def.on{background:#2e9e5b;color:#fff}
.o226top{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:var(--cartao);border-radius:var(--r-md);padding:12px;margin:8px 0}.o226top small{display:block;opacity:.7;font-size:calc(12px*var(--fs,1))}.o226top b{font-size:calc(20px*var(--fs,1))}.o226top button{grid-column:1/3}
.o226h{margin:14px 0 4px}.o226svg{width:100%;height:auto}.o226chart{background:var(--cartao);border-radius:var(--r-md);padding:8px}
.o227sub{font-size:calc(12px*var(--fs,1));opacity:.75;margin:6px 0}
.o228q{width:100%;padding:10px;border-radius:12px;border:1px solid #8884;margin:6px 0;background:var(--cartao);color:inherit}
.o228est{font-size:calc(11px*var(--fs,1));padding:3px 9px;border-radius:12px;background:#8883}.o228est.e-ativa{background:#2e9e5b;color:#fff}.o228est.e-proxima{background:#3b82c4;color:#fff}
.o228card{cursor:pointer}
.o229atr{margin-left:8px;background:var(--vermelho);color:#fff;border-radius:8px;padding:1px 7px;font-size:calc(11px*var(--fs,1))}
.o229top{display:flex;align-items:center;gap:14px;padding:8px 0}.o229anel{width:96px;height:96px;margin:0}.o229anel div{width:62px;height:62px;font-size:calc(15px*var(--fs,1))}.o229tx small{display:block;opacity:.7;font-size:calc(12px*var(--fs,1))}.o229tx b{display:block;font-size:calc(17px*var(--fs,1));margin-bottom:4px}
.o230top{display:flex;align-items:center;justify-content:space-between;gap:10px}.o230l small{display:block;font-size:calc(11px*var(--fs,1));color:#6b7280;margin-top:6px}.o230v{display:block;font-size:calc(26px*var(--fs,1));color:#e5484d}.o230pt{display:flex;gap:18px;margin-top:6px}.o230pt b{display:block;font-size:calc(15px*var(--fs,1))}.o230anel{width:78px;height:78px;flex:none}
.o230h{display:flex;justify-content:space-between;margin:14px 4px 6px;font-weight:700}.o230r{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #eef0f3}.o230r:last-child{border:0}.o230r small{width:24px;color:#6b7280}.o230r span{flex:1}.o230r.atr small{color:#e5484d;font-weight:700}.o230pg{border:0;background:#2e9e6b;color:#fff;border-radius:12px;padding:5px 12px;font-size:calc(12px*var(--fs,1))}
.o230lim{margin:8px 0}.o230lt{display:flex;flex-direction:column;margin-bottom:6px}.o230lt small{color:#6b7280}.o230lc{display:flex;align-items:center;gap:18px}.o230lc span{flex:1}.o230lc small{display:block;font-size:calc(11px*var(--fs,1));color:#6b7280}.o230lc strong{font-size:calc(20px*var(--fs,1))}.o230ch{margin-top:8px;width:100%;border:0;background:#e6f6f1;color:#1a7f5a;border-radius:12px;padding:9px;font-weight:700}
.o230anel{width:88px;height:88px;margin:0}.o230anel div{width:56px;height:56px;font-size:calc(14px*var(--fs,1))}
.h232chk{display:flex;align-items:center;margin-right:6px}.h232chk input{width:22px;height:22px;accent-color:#2e9e6b;margin:0}.hpeg{touch-action:none;font-size:calc(20px*var(--fs,1))}#hrest232{margin-top:10px;width:100%}
#addview.comp232:not(.abre232) .x232{display:none!important}#mais232{margin:10px 0}
.o234m{display:flex;align-items:center;gap:14px;width:100%;padding:12px 6px;border:0;border-bottom:1px solid #eef0f3;background:transparent;font-size:calc(16px*var(--fs,1));text-align:left;color:inherit}.o234m:last-child{border:0}.o234i{width:38px;height:38px;border-radius:50%;background:#e6f6f1;display:flex;align-items:center;justify-content:center;font-size:calc(20px*var(--fs,1));flex:none}
.o235c{display:flex;align-items:center;gap:14px;width:100%;padding:16px;margin-bottom:12px;border:0;border-radius:16px;background:var(--cartao,#fff);box-shadow:0 1px 4px rgba(0,0,0,.12);text-align:left;color:inherit}.o235c b{display:block;font-size:calc(16px*var(--fs,1));margin-bottom:4px}.o235c small{display:block;font-size:calc(13px*var(--fs,1));opacity:.75;line-height:1.3}.o235i{font-size:calc(34px*var(--fs,1));flex:none;width:48px;text-align:center}
.h236{display:flex;align-items:center;justify-content:space-between;gap:10px}.oculto236{display:none!important}
.sw236{position:relative;display:inline-block;width:46px;height:26px;flex:none;margin:0}.sw236 input{opacity:0;position:absolute;inset:0;width:100%;height:100%;margin:0;z-index:2;cursor:pointer}.sw236 span{position:absolute;inset:0;border-radius:12px;background:#c9ccd1;transition:.15s}.sw236 span:before{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:var(--cartao,#fff);box-shadow:0 1px 3px rgba(0,0,0,.3);transition:.15s}.sw236 input:checked+span{background:#2e9e6b}.sw236 input:checked+span:before{left:23px}.sw236 input:disabled{cursor:default}.sw236 input:disabled+span{opacity:.5}
.plana236 .horow{box-shadow:none;border-radius:0;border-bottom:1px solid #e3e6ea;background:transparent;padding:10px 4px;align-items:center}.d236{display:block;font-size:calc(12px*var(--fs,1));opacity:.65;font-weight:400;margin-top:2px}.dica236{background:#e6f6f1;border-radius:12px;padding:10px 12px;font-size:calc(13px*var(--fs,1));display:flex;gap:10px;align-items:center}.dica236 button{border:0;background:#2e9e6b;color:#fff;border-radius:12px;padding:6px 12px}
.plana236 .horow{border:0;border-bottom:1px solid #e3e6ea;border-radius:0}.plana236 .horow .containfo{flex:1;text-align:left;margin:0 8px}.plana236 .horow .contanome{display:block;text-align:left;margin:0}.plana236 .horow .hpeg{margin:0}
#conv237{position:fixed;inset:0;z-index:9999;background:var(--cartao,#fff);display:flex;flex-direction:column;align-items:center;padding:60px 24px 28px;text-align:left}#conv237 h2{align-self:stretch;font-size:calc(26px*var(--fs,1));margin:18px 0 4px;color:#1a2e26}#conv237 .c1{align-self:stretch;font-size:calc(17px*var(--fs,1));color:#6b7580;margin:0 0 14px}#conv237 .c2{align-self:stretch;font-size:calc(15px*var(--fs,1));line-height:1.5;color:#555;margin:0 0 22px}#conv237 input{align-self:stretch;font-size:calc(20px*var(--fs,1));text-align:center;padding:14px;border:2px solid #2e9e6b;border-radius:28px;color:#1f6f50;background:var(--cartao,#fff)}#conv237 .cb{margin-top:auto;align-self:stretch;display:flex;flex-direction:column;gap:10px}#conv237 .cb button{border:0;border-radius:28px;padding:16px;font-size:calc(16px*var(--fs,1));font-weight:600;background:#2e9e6b;color:#fff}#conv237 .cb .no{background:transparent;color:#1f6f50}
#graf238{color:var(--texto);position:fixed;inset:0;z-index:9000;background:var(--cartao);display:flex;flex-direction:column;overflow:hidden}.g238h{background:var(--verde);color:var(--sobreVerde);display:flex;align-items:center;gap:14px;padding:14px 12px}.g238h b{font-size:calc(19px*var(--fs,1));flex:1}.g238h button{background:transparent;border:0;color:#fff;font-size:calc(22px*var(--fs,1));padding:4px 8px}.g238ac{display:flex;gap:4px}
.g238seg{background:var(--verde);padding:4px 14px 22px;display:flex}.g238seg{gap:0}.g238seg button{flex:1;border:0;background:rgba(0,0,0,.22);color:#fff;padding:10px;display:flex;justify-content:center}.g238seg button:first-child{border-radius:28px 0 0 28px}.g238seg button:last-child{border-radius:0 28px 28px 0}.g238seg button.on{background:var(--cartao);color:var(--verde);border-radius:28px}.g238seg svg{width:24px;height:24px}
.g238corpo{flex:1;overflow:auto;background:var(--cartao);border-radius:22px 22px 0 0;margin-top:-14px;padding:14px 12px 30px}.g238pills{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px}.g238pills button{flex:none;border:0;background:#ebecef;border-radius:16px;padding:9px 14px;font-size:calc(14px*var(--fs,1));color:#333}.g238pills button.on{background:var(--verdeclaro);color:var(--verde);font-weight:600}
.g238nav{display:flex;justify-content:center;align-items:center;gap:26px;margin:16px 0}.g238nav span{font-size:calc(15px*var(--fs,1));letter-spacing:.5px;min-width:150px;text-align:center}.g238nav button{border:0;background:transparent;font-size:calc(24px*var(--fs,1))}
.g238svg{width:100%;height:auto}.g238tot{margin-top:6px;font-size:calc(16px*var(--fs,1))}.g238lg{display:flex;gap:16px;justify-content:center;font-size:calc(13px*var(--fs,1))}.g238lg i,.g238li i{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:6px}.g238det{display:block;margin:8px 0 0 auto;border:0;background:transparent;color:var(--verde);font-weight:700;font-size:calc(16px*var(--fs,1))}
.g238pie{width:230px;height:230px;display:block;margin:6px auto}.g238li{display:flex;align-items:center;gap:6px;padding:8px 4px;border-bottom:1px solid #eceef0;font-size:calc(14px*var(--fs,1))}.g238li span{flex:1}.g238li em{font-style:normal;min-width:80px;text-align:right}.g238li b{min-width:38px;text-align:right}
.g238vz{text-align:center;padding:20px 10px}.g238vz h4{font-size:calc(18px*var(--fs,1));margin:8px 0 4px}.g238vz p{color:#666;font-size:calc(14px*var(--fs,1));margin:0}
.g238menu{position:absolute;top:50px;right:10px;background:var(--cartao);border-radius:12px;box-shadow:0 3px 14px rgba(0,0,0,.3);padding:14px 16px;z-index:5;font-size:calc(15px*var(--fs,1))}.g238menu input{margin-left:12px;width:20px;height:20px;vertical-align:middle}
.g238dr{position:absolute;inset:0;z-index:6;display:flex;flex-direction:row-reverse}.g238dr .g238bg{flex:0 0 26%;background:rgba(0,0,0,.45);order:2}.g238dr .g238dh{display:none}.g238dr{background:transparent}.g238dr>.g238db,.g238dr>.g238dh{order:1}
.g238db{flex:1;background:var(--cartao);overflow:auto;padding:0 18px 20px;order:1}.g238dh{background:var(--verde);color:var(--sobreVerde);font-weight:700;font-size:calc(19px*var(--fs,1));padding:22px 18px}.g238dr .g238dh{display:block;position:absolute;top:0;left:26%;right:0;z-index:1}.g238dr .g238db{margin-top:70px;margin-left:26%;flex:none;width:74%}.g238dr h5{font-size:calc(17px*var(--fs,1));margin:20px 0 6px;color:var(--texto)}.g238rd{display:flex;align-items:center;gap:12px;padding:11px 0;font-size:calc(16px*var(--fs,1))}.g238rd input{width:22px;height:22px;accent-color:var(--verde)}
.g238tb{width:100%;border-collapse:collapse;font-size:calc(13px*var(--fs,1))}.g238tb th,.g238tb td{padding:8px 4px;text-align:right;border-bottom:1px solid #eceef0}.g238tb td:first-child,.g238tb th:first-child{text-align:left}.g238tb .tt td{font-weight:700}.g238ok{margin-top:14px;width:100%;border:0;border-radius:16px;background:var(--verde);color:var(--sobreVerde);padding:13px;font-size:calc(16px*var(--fs,1));font-weight:600}
.ov239{position:fixed;inset:0;z-index:9000;background:var(--cartao);color:var(--texto);display:flex;flex-direction:column}.ov239h{display:flex;align-items:center;gap:14px;padding:14px 12px;color:#fff;font-size:calc(19px*var(--fs,1))}.ov239h b{flex:1}.ov239b{background:transparent;border:0;color:#fff;font-size:calc(24px*var(--fs,1))}.ov239c{flex:1;overflow:auto;padding:0 16px 30px}
.d239top{margin:0 -16px;padding:16px;text-align:center;border-radius:0 0 22px 22px}.d239n{font-size:calc(19px*var(--fs,1));font-weight:700;margin-bottom:10px}.d239top small{opacity:.65}.d239s{font-size:calc(34px*var(--fs,1));font-weight:700;margin:4px 0 14px}.d239s.neg{color:var(--vermelho)}.d239rj{border:0;color:#fff;border-radius:28px;padding:14px 30px;font-size:calc(15px*var(--fs,1));letter-spacing:1.5px;font-weight:700;width:88%}
.d239g{display:grid;grid-template-columns:1fr 1fr;gap:16px 10px;padding:18px 0;border-bottom:1px solid #e3e6ea}.d239g small{display:block;opacity:.65;font-size:calc(12px*var(--fs,1))}.d239g b{font-size:calc(15px*var(--fs,1))}.vm{color:var(--vermelho)}.vr{color:var(--corRec,#1d7a54)}
.d239lin{display:flex;justify-content:space-between;align-items:center;padding:16px 0}.d239bt{display:flex;flex-direction:column;gap:10px}.d239bt button{border:1px solid var(--verde);background:transparent;color:var(--verde);border-radius:16px;padding:13px;font-size:calc(15px*var(--fs,1));font-weight:600}
.sm239m{border-top:1px solid #e3e6ea;padding:12px 0}.sm239m h4{font-size:calc(15px*var(--fs,1));margin:0 0 8px}.sm239r{display:flex;align-items:center;justify-content:space-around;text-align:center}.sm239r small{display:block;opacity:.65;font-size:calc(12px*var(--fs,1))}.sm239r b{font-size:calc(15px*var(--fs,1))}.sm239f{display:flex;justify-content:space-between;background:rgba(128,128,128,.12);border-radius:16px;padding:9px 16px;margin-top:8px}
.c239cores{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 10px}.c239cores button{width:34px;height:34px;border-radius:50%;border:2px solid transparent}.c239cores button.on{border-color:var(--texto);box-shadow:0 0 0 2px var(--cartao) inset}.c239cores .nt{width:auto;border-radius:16px;padding:0 12px;background:#ebecef;font-size:calc(13px*var(--fs,1))}
#tour240{position:fixed;inset:0;z-index:9500}
.t240h{position:fixed;border-radius:12px;box-shadow:0 0 0 9999px rgba(0,0,0,.62);border:3px solid var(--verde);pointer-events:none;transition:all .25s}
.t240b{position:fixed;left:16px;right:16px;background:var(--verde);color:var(--sobreVerde);border-radius:16px;padding:16px 18px;box-shadow:0 6px 24px rgba(0,0,0,.35)}
.t240b b{font-size:calc(18px*var(--fs,1));display:block;margin-bottom:6px}.t240b p{margin:0 0 12px;font-size:calc(14px*var(--fs,1));line-height:1.4}
.t240r{display:flex;align-items:center;justify-content:space-between}.t240n{font-size:calc(12px*var(--fs,1));opacity:.8}
.t240r button{background:none;border:none;color:#fff;font:inherit;font-weight:700;padding:8px 6px}
.t240ok{background:var(--cartao,#fff)!important;color:var(--verde)!important;border-radius:16px;padding:8px 18px!important}
#onb242{position:fixed;inset:0;z-index:99999;background:var(--cartao);color:var(--texto);display:flex;flex-direction:column;padding:16px 20px 20px;overflow:auto}
.o242top{display:flex;align-items:center;gap:12px}.o242top button{background:none;border:none;font:inherit;font-size:calc(18px*var(--fs,1));color:var(--suave);padding:6px}
.o242bar{flex:1;display:flex;gap:6px}.o242bar i{flex:1;height:5px;border-radius:3px;background:#d8d4c8}.o242bar i.on{background:var(--verde)}
.o242p{flex:1;text-align:center;padding-top:18px}.o242p.hidden{display:none}.o242art{font-size:84px;background:var(--verde);border-radius:16px;padding:22px;margin-bottom:20px;color:var(--sobreVerde)}
.o242p h2{font-size:calc(26px*var(--fs,1));margin:6px 0}.o242p p{color:var(--suave);margin:0 0 16px}.o242p label{display:block;text-align:left;font-weight:700;margin:12px 0 4px}
.o242p input,.o242p select{width:100%;box-sizing:border-box;padding:12px;font:inherit;border:1.5px solid var(--verde);border-radius:12px;background:var(--cartao);color:var(--texto)}
.o242val{font-size:44px;font-weight:700;text-align:right;padding:6px 14px;border-bottom:2px solid var(--verde);margin-bottom:10px}
.o242kb{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.o242kb button{padding:14px;font:inherit;font-size:calc(20px*var(--fs,1));border:none;border-radius:var(--r-md);background:var(--cartao);color:var(--texto);box-shadow:0 1px 3px rgba(0,0,0,.2)}
.o242nota{font-size:calc(12px*var(--fs,1));margin-top:10px!important}
.o242next{background:var(--verde);color:var(--sobreVerde);border:none;border-radius:12px;padding:16px;font:inherit;font-size:calc(17px*var(--fs,1));font-weight:700;margin-top:12px}
#pp242{margin:10px 12px;background:var(--cartao);border-radius:12px;padding:10px 12px;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.pp242h{display:flex;align-items:center;gap:10px;margin-bottom:4px}.pp242h b{flex:1}.pp242h span{font-size:calc(12px*var(--fs,1));color:var(--suave)}.pp242s{background:none;border:none;color:var(--verde);font:inherit;font-weight:700}
.pp242r{display:flex;align-items:center;gap:14px;width:100%;background:none;border:none;border-top:1px solid #e3dfd3;padding:8px 2px;text-align:left;font:inherit;color:var(--texto)}
.pp242r i{font-style:normal;font-size:calc(24px*var(--fs,1));font-weight:700;color:var(--vermelho);width:26px;text-align:center}.pp242r i.ok{color:var(--verde)}
.pp242r span{display:flex;flex-direction:column}.pp242r small{font-size:calc(12px*var(--fs,1));color:var(--suave)}
.at242{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 14px}.at242 button{border:1.5px solid var(--verde);background:var(--cartao);color:var(--verde);border-radius:16px;padding:7px 12px;font:inherit;font-size:calc(13px*var(--fs,1));font-weight:600}.at242 button.on{background:var(--verde);color:var(--sobreVerde)}
#totpermodal .at242{margin-bottom:10px}
.ex243{display:flex;flex-direction:column;gap:10px;padding:10px 16px}.ex243c{display:flex;align-items:center;gap:14px;background:var(--cartao);border:none;border-radius:12px;padding:14px;text-align:left;font:inherit;color:var(--texto);box-shadow:0 1px 4px rgba(0,0,0,.15)}
.ex243c i{font-style:normal;font-size:calc(28px*var(--fs,1));width:46px;height:46px;border-radius:12px;background:var(--verde);color:var(--sobreVerde);display:flex;align-items:center;justify-content:center}
.ex243c span{flex:1;display:flex;flex-direction:column}.ex243c b{font-size:calc(16px*var(--fs,1))}.ex243c small{color:var(--suave);font-size:calc(12px*var(--fs,1));margin-top:2px}.ex243c em{font-style:normal;font-size:calc(22px*var(--fs,1));color:var(--suave)}
#resta244{margin:8px 16px;padding:14px;text-align:center}
.r244t{font-size:calc(13px*var(--fs,1));color:var(--suave);font-weight:700}
.r244v{font-size:calc(34px*var(--fs,1));font-weight:800;line-height:1.2}
.r244s{font-size:calc(13px*var(--fs,1));color:var(--suave);margin-bottom:8px;min-height:16px}
.r244e{display:flex;justify-content:space-between;font-size:calc(11px*var(--fs,1));color:var(--suave)}
.r244b{position:relative;height:10px;border-radius:8px;background:#e6ebe8;margin:8px 0 4px}
.r244b i{display:block;height:100%;border-radius:8px;background:var(--verdeclaro);border:1px solid var(--verde);box-sizing:border-box}
.r244b u{position:absolute;top:-3px;width:2px;height:16px;background:var(--texto);text-decoration:none}
.r244h{font-size:calc(11px*var(--fs,1));color:var(--suave)}
.exp245{display:block;font-size:calc(12px*var(--fs,1));line-height:1.35;color:var(--suave);margin:-2px 4px 10px 30px}
#tot246hdr{background:var(--verde);color:var(--sobreVerde);border-radius:16px;padding:14px 14px 12px;margin-bottom:10px}
#tot246hdr h2{color:#fff;margin:0 0 6px;font-size:calc(22px*var(--fs,1))}
#tot246hdr .movnav{margin:0;justify-content:center;gap:10px}
#tot246hdr .movnav span{color:#fff;font-size:calc(17px*var(--fs,1));font-weight:700;min-width:130px;text-align:center;text-transform:capitalize}
#tot246hdr .movnav button{background:rgba(0,0,0,.22);border:0;color:#fff;border-radius:50%;width:38px;height:38px;padding:0;font-size:calc(15px*var(--fs,1))}
#tot246hdr #totperbtn{border-radius:16px;width:auto;padding:0 12px;font-size:calc(14px*var(--fs,1))}
#tot246btns{display:flex;gap:10px;margin-bottom:10px}
#tot246btns button{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;border:0;background:var(--verdeclaro);color:var(--verde);border-radius:12px;padding:12px;font:inherit;font-weight:700;font-size:calc(15px*var(--fs,1))}
#totview .vtabs{gap:8px;background:transparent;border:0;padding:0}
#totview .vtabs button{border:0;border-radius:16px;background:var(--verdeclaro);color:var(--verde);font-weight:700;padding:8px 6px}
#totview .vtabs button.on{background:var(--verde);color:var(--sobreVerde)}
#totview .totresumo{padding:16px 14px;border-radius:16px;text-align:center}
#totview .totresumo>span{flex:1;font-size:calc(13px*var(--fs,1));color:var(--suave)}
#totview .totresumo b{font-size:calc(16px*var(--fs,1));margin-top:4px;white-space:nowrap}
#est246{text-align:center}
#est246 .g238pie{width:210px;height:210px}
#totview #estlist{background:var(--cartao);border-radius:16px;padding:4px 12px;box-shadow:0 1px 4px rgba(23,33,29,.10)}
#totview .estrow{border-bottom:1px solid #eceef0;padding:11px 2px}
#totview .estrow:last-child{border-bottom:0}
#totview .estpct{border-radius:12px;font-size:calc(12px*var(--fs,1));min-width:44px;text-align:center}
#totview .estval{font-weight:700}
#totview #totresumomeses h4,#totview #totresumomeses .tmtit{font-size:calc(12px*var(--fs,1));letter-spacing:.5px;text-transform:uppercase;color:var(--suave)}
#totview #totresumomeses>div{border-radius:16px}
.estgraf187 button{border:0;background:var(--verdeclaro);color:var(--verde);border-radius:16px;font-weight:700;padding:8px 14px}
#frase246{background:var(--verdeclaro);color:var(--verdescuro);border-radius:12px;padding:10px 14px;margin:0 0 10px;font-size:calc(13.5px*var(--fs,1));line-height:1.4;font-weight:600}
/* beta.249: topo dos Relatórios simplificado */
#tottabs button[data-t="graf"]{display:none}
#tot246hdr #totperbtn{font-size:0!important;width:38px!important;height:38px;padding:0!important;margin-left:0;border-radius:50%!important;background:rgba(0,0,0,.22) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><rect x='4' y='5' width='16' height='15' rx='2'/><path d='M4 10h16M9 3v4M15 3v4'/></svg>") center/20px no-repeat}
#tot246btns button{white-space:nowrap;font-size:calc(14px*var(--fs,1));padding:12px 6px}
/* beta.250: Relatório PDF com o grafismo dos Gráficos */
#over203.r249{padding:0;background:var(--verde)}
#over203.r249 .o203h{background:var(--verde);color:var(--sobreVerde);padding:14px 12px 4px;gap:14px}
#over203.r249 .o203h b{font-size:calc(19px*var(--fs,1))}
#over203.r249 .o203b{color:#fff;font-size:calc(24px*var(--fs,1));padding:0 8px}
#over203.r249 .o203t{background:var(--verde);color:var(--sobreVerde);margin:0;padding:0 18px 28px;text-align:left;font-size:calc(15px*var(--fs,1));opacity:.9}
#over203.r249 .o203c{background:var(--cartao,#fff);border-radius:22px 22px 0 0;margin-top:-16px;padding:14px 12px 30px;min-height:calc(100vh - 70px);position:relative}
#over203.r249 .r225tabs{gap:8px;margin:0 0 8px;overflow-x:auto}
#over203.r249 .r225tabs button{flex:none;border:0;background:#ebecef;border-radius:16px;padding:9px 14px;font-size:calc(14px*var(--fs,1));color:#333;opacity:1}
#over203.r249 .r225tabs button.on{background:var(--verdeclaro);color:var(--verde);font-weight:600;border:0}
#over203.r249 .r225nav{justify-content:center;gap:26px;margin:12px 0}
#over203.r249 .r225nav button{border:0;background:transparent;font-size:calc(24px*var(--fs,1));padding:0 8px}
#over203.r249 .r225nav .r225y{flex:none;font-size:calc(15px*var(--fs,1));letter-spacing:.5px;font-weight:400;min-width:150px;font-size:calc(14px*var(--fs,1))}
#over203.r249 .r225l{background:transparent;padding:0;border-radius:0}
#over203.r249 .r225r{padding:10px 4px;border-bottom:1px solid #eceef0}
/* beta.251: mês e calendário por baixo dos botões */
#tot246hdr{padding:14px 16px}
#tot246hdr h2{margin:0}
#totview>.movnav{display:flex;align-items:center;justify-content:center;gap:12px;margin:2px 0 10px}
#totview>.movnav span{color:var(--texto,#17211d);font-size:calc(16px*var(--fs,1));font-weight:700;min-width:140px;text-align:center;text-transform:capitalize}
#totview>.movnav button{background:var(--verdeclaro);border:0;color:var(--verde);border-radius:50%;width:38px;height:38px;padding:0;font-size:calc(15px*var(--fs,1))}
#totview>.movnav #totperbtn{background:var(--verdeclaro) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d7a54' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><rect x='4' y='5' width='16' height='15' rx='2'/><path d='M4 10h16M9 3v4M15 3v4'/></svg>") center/20px no-repeat;font-size:0!important;width:38px!important;height:38px;padding:0!important;border-radius:50%!important}
/* beta.253 */
#totview #totcontas:not(:empty){background:var(--cartao);border-radius:16px;padding:4px 12px;box-shadow:0 1px 4px rgba(23,33,29,.10)}
#totcontas .tc253{border-bottom:1px solid #eceef0;padding:11px 2px}
#totcontas .tc253:last-child{border-bottom:0}
#totcontas .tc253 .estname{flex:1;display:flex;flex-direction:column;min-width:0}
#totcontas .tc253 small{color:#6b7570;font-size:calc(11.5px*var(--fs,1));font-weight:400}
#totcontas .tc253 .movic{width:36px;height:36px;border-radius:50%;background:var(--verdeclaro);color:var(--verde);display:flex;align-items:center;justify-content:center;flex:none}
#totcontas .tc253 .estval{font-weight:700;white-space:nowrap}
/* beta.254 */
#exp254{position:fixed;inset:0;z-index:9700;display:flex;align-items:flex-end}
#exp254 .e254f{position:absolute;inset:0;background:rgba(0,0,0,.45)}
#exp254 .e254b{position:relative;width:100%;background:var(--cartao,#fff);border-radius:22px 22px 0 0;padding:18px 18px 26px}
#exp254 h3{margin:0 0 4px}
#exp254 button{display:block;width:100%;border:0;background:var(--verdeclaro);color:var(--verde);font-weight:700;font-size:calc(15px*var(--fs,1));border-radius:12px;padding:14px;margin-top:10px}
#g238exp{background:transparent;border:0;color:#fff}
.g238dr{background:rgba(0,0,0,.45)!important}.g238dr .g238db,.g238dr .g238dh{box-shadow:none}
/* beta.258: Período visível */
#totview>.movnav #totperbtn{background:var(--verdeclaro) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d7a54' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><rect x='4' y='5' width='16' height='15' rx='2'/><path d='M4 10h16M9 3v4M15 3v4'/></svg>") 10px center/18px no-repeat;font-size:calc(14px*var(--fs,1))!important;font-weight:700;color:var(--verde);width:auto!important;height:38px;padding:0 14px 0 34px!important;border-radius:16px!important}
#over203.r249 .r225nav .r225c{border:0;background:var(--verdeclaro);color:var(--verde);border-radius:50%;width:38px;height:38px;padding:0;display:flex;align-items:center;justify-content:center;flex:none}
#over203.r249 .r225nav{gap:10px}
#over203.r249 .r225nav .r225y{min-width:0;flex:1}
#per259{position:fixed;inset:0;z-index:99999;display:flex;align-items:flex-end}
#per259 .p259f{position:absolute;inset:0;background:rgba(0,0,0,.45)}
#per259 .p259b{position:relative;width:100%;max-height:82vh;display:flex;flex-direction:column;background:var(--cartao,#fff);border-radius:22px 22px 0 0;padding:16px 16px 22px}
#per259 h3{margin:0 0 8px;text-align:center;color:var(--verde)}
#per259 .p259l{overflow-y:auto;display:flex;flex-direction:column}
#per259 .p259l button{display:flex;align-items:center;justify-content:space-between;text-align:left;border:0;background:none;padding:10px 6px;border-bottom:1px solid rgba(0,0,0,.07);font:inherit;color:inherit}
#per259 .p259l button b{display:block;font-weight:600}
#per259 .p259l button small{display:block;opacity:.65;font-size:calc(12px*var(--fs,1));margin-top:2px}
#per259 .p259l button i{font-style:normal;color:var(--verde);font-weight:700;min-width:20px;text-align:right}
#per259 .p259l button.on b{color:var(--verde)}
#per259 .p259c b{color:var(--verde)}
#per259 .p259s{margin-top:8px}
#flt260{position:fixed;inset:0;z-index:99999;display:flex;align-items:flex-end}
#flt260 .f260f{position:absolute;inset:0;background:rgba(0,0,0,.45)}
#flt260 .f260b{position:relative;width:100%;max-height:90vh;display:flex;flex-direction:column;background:var(--cartao,#fff);border-radius:22px 22px 0 0;padding:16px 14px 18px}
#flt260 .f260h{display:flex;align-items:center;gap:10px}
#flt260 h3{margin:0;flex:1;color:var(--verde)}
#flt260 .f260l{border:0;background:none;color:var(--vermelho);font:inherit;font-weight:600}
#flt260 .f260x{border:0;background:var(--verdeclaro);color:var(--verde);width:34px;height:34px;border-radius:50%;font-size:calc(16px*var(--fs,1))}
#flt260 .f260c{overflow-y:auto;padding:4px 0 10px}
#flt260 h5{margin:14px 0 6px;font-size:calc(11px*var(--fs,1));letter-spacing:.08em;text-transform:uppercase;opacity:.65}
#flt260 .f260g{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#flt260 .f260g button{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1.5px solid rgba(0,0,0,.1);border-radius:12px;background:var(--cartao,#fff);font:inherit;color:inherit;text-align:left;min-width:0}
#flt260 .f260g button i{width:11px;height:11px;border-radius:50%;flex:none}
#flt260 .f260g button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#flt260 .f260g button.on{border-color:var(--verde);background:var(--verdeclaro);color:var(--verde);font-weight:600}
#flt260 .f260ok{margin-top:8px;border:0;border-radius:12px;padding:14px;background:var(--verde);color:var(--sobreVerde);font:inherit;font-weight:700}
#totview>.movnav #totfilbtn{position:relative;border:0;background:var(--verdeclaro);color:var(--verde);border-radius:50%;width:38px;height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex:none}
#totview>.movnav #totfilbtn em{position:absolute;top:-3px;right:-3px;font-style:normal;font-size:calc(10px*var(--fs,1));min-width:16px;height:16px;border-radius:8px;background:var(--verde);color:var(--sobreVerde);display:flex;align-items:center;justify-content:center}
#totview>.movnav #totfilbtn em:empty{display:none}
#g238fil.on,#totfilbtn.on{background:var(--verde)!important;color:var(--sobreVerde)!important}
#totview>.movnav{gap:4px}
#totview>.movnav #totperbtn{padding-left:30px!important;padding-right:10px!important;font-size:calc(13px*var(--fs,1));white-space:nowrap}
#totview>.movnav #totfilbtn{width:34px;height:34px;margin-left:2px}
#totview>.movnav #totnavlabel{font-size:calc(15px*var(--fs,1))}
#ct261 .ct261a{position:relative;overflow:hidden;background:linear-gradient(160deg,var(--verdescuro),color-mix(in srgb,var(--verdescuro) 70%,var(--verde)));color:#fff;border-radius:16px;padding:18px 18px 14px;margin-bottom:12px}
#ct261 .k{display:block;font-size:calc(11px*var(--fs,1));letter-spacing:.12em;opacity:.75}
#ct261 .ct261a strong{display:block;font-size:calc(30px*var(--fs,1));margin:6px 0 2px}
#ct261 .s{display:block;font-size:calc(12px*var(--fs,1));opacity:.75}
#ct261 svg{display:block;width:100%;height:70px;margin-top:10px}
#ct261 .y{position:absolute;right:16px;bottom:10px;font-size:calc(11px*var(--fs,1));opacity:.7}
#ct261 .ct261b{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
#ct261 .ct261b>div{background:var(--cartao,#fff);border-radius:16px;padding:12px 14px;box-shadow:0 1px 4px rgba(0,0,0,.08)}
#ct261 .ct261b .k{color:inherit;opacity:.6}
#ct261 .ct261b strong{display:block;font-size:calc(20px*var(--fs,1));margin:4px 0 2px}
#ct261 .ct261b .pos{color:var(--verde)}#ct261 .ct261b .neg{color:var(--vermelho)}
#cvgrupos .contarow{align-items:center;gap:10px}
#cvgrupos .ic261{width:40px;height:40px;border-radius:50%;background:var(--verdeclaro);display:flex;align-items:center;justify-content:center;font-size:calc(20px*var(--fs,1));flex:none}
#cvgrupos .bar261{height:5px;border-radius:3px;background:rgba(0,0,0,.08);margin-top:6px;overflow:hidden}
#cvgrupos .bar261 i{display:block;height:100%;background:var(--verde);border-radius:3px}
#cvgrupos .bar261 i.neg{background:var(--vermelho)}
#cvgrupos .lp261{border:0;background:none;color:var(--verde);font-size:calc(18px*var(--fs,1));padding:6px;flex:none}
#cvgrupos .contaLinha142{grid-template-columns:40px 1fr auto 24px;align-items:center;column-gap:10px}
#cvgrupos .contaLinha142 .ic261{grid-row:1/3;grid-column:1}
#cvgrupos .contaLinha142 small{grid-column:2/4;grid-row:2}
#cvgrupos .contaLinha142 .bar261{grid-column:2/4;grid-row:3;margin-top:2px}
#cvgrupos .contaLinha142 .lp261{grid-column:4;grid-row:1/3;padding:0}
.lv261{display:flex;align-items:center;gap:12px;background:var(--cartao,#fff);border-radius:16px;padding:14px;margin:8px 0;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.lv261 .ic{font-size:calc(24px*var(--fs,1))}.lv261 .nm{flex:1;font-weight:600}
.lv261 .at{font-size:calc(11px*var(--fs,1));letter-spacing:.1em;font-weight:700;color:var(--verde);background:var(--verdeclaro);border-radius:12px;padding:5px 10px}
.lv261 .ed{border:0;background:none;color:var(--verde);font-size:calc(18px*var(--fs,1));padding:4px 6px}
.lv261.on{border:1.5px solid var(--verde)}
#recform .r262oc{display:none!important}
#recform .r262chip{width:100%;display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border:1.5px solid var(--verde);border-radius:12px;background:var(--verdeclaro);color:var(--verde);font:inherit;font-weight:600;text-align:left}
#rep262{position:fixed;inset:0;z-index:5000;display:flex;align-items:flex-end}
#rep262 .r262f{position:absolute;inset:0;background:rgba(0,0,0,.45)}
#rep262 .r262b{position:relative;width:100%;max-height:92vh;display:flex;flex-direction:column;background:var(--cartao,#fff);border-radius:22px 22px 0 0;padding:16px 14px 18px}
#rep262 .r262h{display:flex;align-items:center}#rep262 h3{margin:0;flex:1;color:var(--verde)}
#rep262 .r262x{border:0;background:var(--verdeclaro);color:var(--verde);width:34px;height:34px;border-radius:50%}
#rep262 .r262c{overflow-y:auto;padding-bottom:8px}
#rep262 h5{margin:14px 0 6px;font-size:calc(11px*var(--fs,1));letter-spacing:.08em;text-transform:uppercase;opacity:.65}
#rep262 .r262t{display:flex;gap:6px;background:var(--verdeclaro);border-radius:12px;padding:4px}
#rep262 .r262t button{flex:1;border:0;background:none;padding:9px 4px;border-radius:12px;font:inherit;color:inherit}
#rep262 .r262t button.on{background:var(--verde);color:var(--sobreVerde);font-weight:600}
#rep262 .r262n{margin-top:8px}
#rep262 .r262g{display:grid;gap:6px}
#rep262 .s7{grid-template-columns:repeat(7,1fr)}#rep262 .d31{grid-template-columns:repeat(7,1fr);margin-top:6px}#rep262 .m12{grid-template-columns:repeat(4,1fr)}
#rep262 .r262g button{border:1.5px solid rgba(0,0,0,.1);background:var(--cartao,#fff);border-radius:12px;padding:9px 0;font:inherit;color:inherit}
#rep262 .r262g button.on{background:var(--verde);color:var(--sobreVerde);border-color:var(--verde);font-weight:700}
#rep262 .r262d{width:100%;text-align:left;padding:12px 14px;border:1.5px solid rgba(0,0,0,.1);border-radius:12px;background:var(--cartao,#fff);font:inherit;color:inherit}
#rep262 .r262bt{display:flex;gap:10px;margin-top:10px}
#rep262 .r262bt button{flex:1;padding:13px;border-radius:12px;font:inherit;font-weight:700;border:1.5px solid rgba(0,0,0,.15);background:var(--cartao,#fff);color:inherit}
#rep262 .r262bt .r262ok{background:var(--verde);color:var(--sobreVerde);border-color:var(--verde)}
.ico262{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:6px 0 12px}
.ico262 button{border:1.5px solid rgba(0,0,0,.1);background:var(--cartao,#fff);border-radius:12px;font-size:calc(22px*var(--fs,1));padding:8px 0}
.ico262 button.on{border-color:var(--verde);background:var(--verdeclaro)}
.g238rgs{display:flex;gap:6px;justify-content:flex-end;margin:4px 0 6px}
.g238rgs .g238rg{border:0;border-radius:12px;padding:6px 12px;background:var(--verdeclaro);color:var(--verde);font:inherit;font-weight:600}
.g238rgs .g238rg.on{background:var(--verde);color:var(--sobreVerde)}
.rvd263c{margin:10px 0;padding:12px 14px;border-radius:12px;background:var(--verdeclaro);color:var(--verde)}
.rvd263t{width:100%;margin-top:6px}.rvd263t td.neg{color:var(--vermelho)}
.catpeg218{font-size:1.7rem!important;padding:8px 14px!important;color:var(--verde)!important;touch-action:none;-webkit-user-select:none;user-select:none}
.contarow.adrag{box-shadow:0 4px 14px rgba(0,0,0,.25);background:var(--verdeclaro)}
#cat264{z-index:99999!important}
.dlg{z-index:99998!important}
/* beta.269: Início no novo estilo */
.hbloco>h3.hcol{display:flex;align-items:center;gap:10px;margin:20px 4px 8px;font-size:calc(11px*var(--fs,1))!important;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--suave,#6b7a73)}
.hbloco>h3.hcol::after{content:'';flex:1;height:1px;background:rgba(0,0,0,.1);order:1}
.hbloco>h3.hcol .hchev{order:2;margin-left:0;font-size:calc(13px*var(--fs,1))}
.hbloco>h3.hcol .objaddbtn,.hbloco>h3.hcol button{order:0;text-transform:none;letter-spacing:0;font-size:calc(13px*var(--fs,1));font-weight:700;color:var(--verde);background:none;border:0;padding:2px 4px}
.hbloco .rescard199,.hbloco .objrow,.hbloco .saldocard{border-radius:16px}
.hbloco .rescard199,.hbloco .objrow{padding:16px 14px}
.hbloco #ultimos{background:var(--cartao,#fff);border-radius:16px;overflow:hidden;padding:2px 0}
.hbloco #ultimos .mov:not(.mov751){padding-top:14px;padding-bottom:14px}/* 782: linhas no formato novo (40px) tambem no Início, como em Movimentos */
.hbloco #ultimos .mov751:first-child{margin-top:8px}/* 782: afasta a 1.ª linha do menu ⋯ do bloco */
body.escuro .hbloco>h3.hcol::after{background:rgba(255,255,255,.12)}
body.escuro .hbloco #ultimos{background:#1c2b26}
/* beta.270: Movimentos no novo estilo */
#movlist .mov{border-radius:16px;border-left-width:0!important;padding:11px 10px;margin-bottom:8px;gap:10px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
#movlist .mov .movic{width:42px;height:42px;border-radius:12px;flex:none}
#movlist .mov .movcat{font-weight:700}
#movlist .diasep{margin:16px 4px 8px}
#movview select{border-radius:12px;min-height:40px}
#movview #movord,#movview #movbusca,#movview .movnav button{border-radius:12px}
/* beta.271: Relatórios e Gráficos no novo estilo */
#totview .totresumo,#totview .totvs>div,#totview #frase246,#totview .o203card,#graf238,#totview .estbox{border-radius:16px}
#totview .totresumo{padding:18px 12px}
#totview #frase246{padding:14px 16px}
#totview #tot246btns button{border-radius:16px;padding:14px 10px;min-height:50px}
#totview .vtabs button{border-radius:12px;padding:11px 8px}
#totview .movnav button{border-radius:12px}
#totview .sech{display:flex;align-items:center;gap:10px;margin:20px 4px 8px;font-size:calc(11px*var(--fs,1));letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--suave,#6b7a73)}
#totview .sech::after{content:'';flex:1;height:1px;background:rgba(0,0,0,.1)}
body.escuro #totview .sech::after{background:rgba(255,255,255,.12)}
/* beta.272: Contas e Livros no novo estilo */
#cvgrupos .contaLinha142{background:var(--cartao,#fff);border:0!important;border-left-width:0!important;border-radius:16px;padding:14px 12px;margin-bottom:8px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
#cvgrupos .contaLinha142 .ic261{width:44px;height:44px;border-radius:12px}
#cvgrupos .contaLinha142 .bar261{height:6px;border-radius:3px}
#contasview h3.cvgrupo{display:flex;align-items:center;gap:10px;margin:20px 4px 8px;font-size:calc(11px*var(--fs,1));letter-spacing:.14em;font-weight:700}
#contasview h3.cvgrupo::after{content:'';flex:1;height:1px;background:rgba(0,0,0,.1)}
#contasview #statsContas144{border-radius:16px;padding:13px}
#contasview .cvkpi,#contasview .cv261k>div{border-radius:16px}
#livrosPainel148 .livro148,#livrosPainel148 .lv148,#livrosPainel148 [class*=livroRow],#livrosPainel148 button.card{border-radius:16px;padding:16px 14px}
#livrosPainel148 .orcdef{border-radius:16px;padding:13px}
body.escuro #contasview h3.cvgrupo::after{background:rgba(255,255,255,.12)}
body.escuro #cvgrupos .contaLinha142{background:#1c2b26}
/* beta.273 */
.subdefrow{border-radius:12px!important;padding:6px 10px!important;margin:6px 0!important;background:var(--card,#fff)!important;border:1px solid rgba(0,0,0,.06)!important;box-shadow:none!important}
.subdefrow button{border-radius:12px!important;min-height:36px;font-weight:600}
.defcard h3,.defcard>b:first-child{font-size:calc(12px*var(--fs,1));letter-spacing:.08em;text-transform:uppercase}
/* beta.274: Orçamentos, Lembretes, Repetir */
#orcview .rec222btn,#orcview .orcdef{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;background:var(--cartao,#fff)!important;border:0!important;border-radius:16px!important;padding:15px 16px!important;margin:8px 0!important;font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.06)}
#orcview .orctotal,#orcview .orcdetcard{background:var(--cartao,#fff)!important;border:0!important;border-radius:16px!important;padding:16px!important;box-shadow:0 1px 3px rgba(0,0,0,.06)}
#orcview .orctotal .tothead{font-size:calc(15px*var(--fs,1))}
#orcview .orctotal .totval{font-weight:800}
#orcview .orcMesStep{border-radius:16px!important;padding:6px 4px;background:var(--cartao,#fff);box-shadow:0 1px 3px rgba(0,0,0,.06)}
#orcview .sub{font-size:calc(12px*var(--fs,1));opacity:.75;line-height:1.4}
#orcview h3,#orcview h4{display:flex;align-items:center;gap:10px;font-size:calc(11px*var(--fs,1));letter-spacing:.14em;text-transform:uppercase;margin:20px 4px 8px}
#orcview h3::after,#orcview h4::after{content:'';flex:1;height:1px;background:rgba(0,0,0,.1)}
#orcview .orcedit{border-radius:16px}
#orcview .orceditbtns button{border-radius:12px;min-height:44px}
body.escuro #orcview .rec222btn,body.escuro #orcview .orcdef,body.escuro #orcview .orctotal,body.escuro #orcview .orcdetcard,body.escuro #orcview .orcMesStep{background:#1c2b26!important}
/* beta.275 */
.nov275{border-radius:16px!important;padding:14px 16px!important;margin:8px 0!important}
.nov275h{display:flex;justify-content:space-between;align-items:center;font-size:calc(12px*var(--fs,1));letter-spacing:.1em;font-weight:700;cursor:pointer;min-height:26px}
.nov275h i{font-style:normal;font-size:calc(20px*var(--fs,1));transition:transform .15s}
.nov275.aberta .nov275h i{transform:rotate(90deg)}
.nov275b{margin-top:8px;font-size:calc(14px*var(--fs,1));line-height:1.45;color:#2f3b35}
.nov275b div{margin:4px 0}
/* beta.276 */
#rep262 .r276o{display:block;width:100%;text-align:left;border:1.5px solid rgba(0,0,0,.1);background:var(--cartao,#fff);border-radius:12px;padding:13px 14px;margin:8px 0;font:inherit}
#rep262 .r276o.on{border-color:var(--verde);background:var(--verdeclaro);color:var(--verde);font-weight:700}
/* beta.276: Backup, Ferramentas, Ajuda no novo estilo */
#backupview .defcard,#toolsview .defcard{background:var(--cartao,#fff)!important;border:0!important;border-radius:16px!important;padding:16px!important;box-shadow:0 1px 3px rgba(0,0,0,.06)}
#backupview .defcard h4,#toolsview .defcard h4,#backupview .defcard h3,#toolsview .defcard h3{font-size:calc(11px*var(--fs,1));letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin:0 0 8px;opacity:.85}
#backupview .bkbtns button,#toolsview .bkbtns button,#toolsview .conv211m,#backupview .rec222btn{border-radius:12px!important;min-height:46px}
#toolsview input,#toolsview select{border-radius:12px!important}
#ajudaview .faq180{background:var(--cartao,#fff);border-radius:16px;padding:6px 16px;margin:8px 0;box-shadow:0 1px 3px rgba(0,0,0,.06);border:0}
#ajudaview .faq180 summary{padding:12px 0;min-height:26px;list-style:none;display:flex;justify-content:space-between;gap:10px;cursor:pointer}
#ajudaview .faq180 summary::-webkit-details-marker{display:none}
#ajudaview .faq180 summary::after{content:'›';font-size:calc(20px*var(--fs,1));transition:transform .15s}
#ajudaview .faq180[open] summary::after{transform:rotate(90deg)}
#ajudaview .bigadd{border-radius:16px!important}
body.escuro #backupview .defcard,body.escuro #toolsview .defcard,body.escuro #ajudaview .faq180{background:#1c2b26!important}
/* beta.277 */
.imp277h{display:flex;align-items:center;gap:10px;font-size:calc(11px*var(--fs,1));letter-spacing:.14em;margin:20px 16px 8px}
.imp277h::after{content:'';flex:1;height:1px;background:rgba(0,0,0,.1)}
.imp277t{margin:0 12px!important;padding:6px 14px!important;border-radius:16px!important}
.imp277r{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:11px 0;border-bottom:1px solid rgba(0,0,0,.07);font-size:calc(13px*var(--fs,1))}
.imp277r:last-child{border:0}
.imp277r b{display:block;font-size:calc(14px*var(--fs,1))}
.imp277r em{display:inline-block;font-style:normal;font-size:calc(9px*var(--fs,1));letter-spacing:.08em;text-transform:uppercase;font-weight:700;border-radius:8px;padding:3px 6px;margin-top:4px}
.imp277r em.ob{background:#fbe3df;color:#b3372b}.imp277r em.op{background:#ece8dc;color:#5a5f5b}
.imp277x{margin:0 12px;background:#14211d;color:#e7efe9;border-radius:16px;padding:14px;font-size:calc(11px*var(--fs,1));overflow-x:auto;line-height:1.6}
/* beta.278 */
#bal278{position:fixed;z-index:99990;background:#1f5fe0;color:#fff;border-radius:16px;padding:14px 16px;box-shadow:0 8px 24px rgba(0,0,0,.28);font-size:calc(14px*var(--fs,1));line-height:1.4}
#bal278 p{margin:0 0 10px}
#bal278 button{width:100%;border:0;background:var(--cartao,#fff);color:#1f5fe0;border-radius:12px;padding:10px;font:inherit;font-weight:700}
#bal278 i{position:absolute;top:-8px;width:16px;height:16px;background:#1f5fe0;transform:rotate(45deg);border-radius:3px}
#bal278 i.b{top:auto;bottom:-8px}
.bal278inl{display:flex;align-items:center;gap:10px;background:var(--verdeclaro);color:var(--verde);border-radius:12px;padding:10px 12px;margin:0 0 10px;font-size:calc(13px*var(--fs,1));line-height:1.35}
.bal278inl button{border:0;background:var(--verde);color:var(--sobreVerde);border-radius:12px;padding:8px 12px;font:inherit;font-weight:700;white-space:nowrap}
/* beta.290: lista de contas sem texto cortado */
#contasdef .contarow{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;row-gap:8px;align-items:start;padding:12px}
#contasdef .contarow .containfo{grid-column:1;grid-row:1}
#contasdef .contarow .contavals{grid-column:2;grid-row:1;text-align:right}
#contasdef .contarow .contanome{white-space:normal;overflow-wrap:anywhere;font-size:calc(14.5px*var(--fs,1));line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#contasdef .contarow .contamoeda{font-size:calc(12px*var(--fs,1));margin-top:2px}
#contasdef .contarow .contabtns{grid-column:1/3;grid-row:2;padding-right:42px;margin:0;gap:6px;flex-wrap:wrap}
#contasdef .contarow .contabtn{min-width:34px;height:34px;font-size:calc(14px*var(--fs,1));padding:0 4px;border-radius:12px}
#contasdef .contarow .movdel{grid-column:1/3;grid-row:2;justify-self:end;width:34px;height:34px;font-size:calc(17px*var(--fs,1));padding:0;border:1.5px solid #d8d2c2;border-radius:12px;background:var(--cartao,#fff)}
/* beta.291: Segurança em submenu */
.seg291row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid rgba(0,0,0,.08);padding:14px 4px;color:inherit;font:inherit;cursor:pointer}
.seg291row:last-child{border-bottom:0}
.seg291row .si{width:34px;height:34px;border-radius:12px;background:var(--verdeclaro,#e3efe9);color:var(--verde,#1f6b4f);display:flex;align-items:center;justify-content:center;flex:none}
.seg291row .si svg{width:20px;height:20px}
.seg291row .st{flex:1;min-width:0}.seg291row .st b{display:block;font-size:calc(15px*var(--fs,1));font-weight:600}.seg291row .st small{display:block;font-size:calc(12px*var(--fs,1));color:var(--suave,#6b7a73);margin-top:2px}
.seg291row .sv{font-size:calc(13px*var(--fs,1));color:var(--suave,#6b7a73);white-space:nowrap}.seg291row .sa{color:var(--suave,#6b7a73);font-size:calc(20px*var(--fs,1))}
.prot291 .bar291{height:8px;border-radius:8px;background:rgba(0,0,0,.1);overflow:hidden;margin:8px 0 6px}.prot291 .bar291 i{display:block;height:100%;background:var(--verde,#1f6b4f);border-radius:8px}
.prot291 h4 small{float:right;font-weight:600;color:var(--verde,#1f6b4f);font-size:calc(14px*var(--fs,1))}
.chips291{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 6px}
.chip291{padding:10px 14px;border-radius:12px;border:2px solid #d8d2c2;background:var(--cartao,#fff);font-size:calc(14px*var(--fs,1));font-weight:600;color:var(--suave);cursor:pointer}
.chip291.on{border-color:var(--verde,#1f6b4f);color:var(--verde,#1f6b4f);background:var(--verdeclaro,#e3efe9)}
body.escuro .chip291{background:#1c2b26;border-color:#2c3b35;color:#e6efea}body.escuro .seg291row{border-bottom-color:rgba(255,255,255,.08)}
.rsum293{background:var(--cartao,#fff);border:1px solid #e3ddd2;border-radius:12px;padding:12px;margin-bottom:10px;box-shadow:0 1px 4px rgba(23,33,29,.10)}
.rsum293 .rsr{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;text-align:center}.rsum293 small{display:block;font-size:calc(11px*var(--fs,1));color:var(--suave,#6b7a73)}.rsum293 b{font-size:calc(13.5px*var(--fs,1));white-space:nowrap}.rsum293 b.neg{color:var(--vermelho,#c0392b)}.rsum293 b.pos,.rsum293 b.sf{color:var(--verde,#1f6b4f)}.rsum293 b.sf.neg{color:var(--vermelho,#c0392b)}
.rsum293 .rsn{margin:8px 0 0;font-size:calc(11.5px*var(--fs,1));color:var(--suave,#6b7a73);text-align:center}
body.escuro .rsum293{background:#1c2b26;border-color:#2c3b35}
.defvoltar293{background:none;border:0;color:var(--verde,#1f6b4f);font-size:calc(16px*var(--fs,1));font-weight:600;padding:12px 4px;cursor:pointer}
.etq294{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:12px;font-size:calc(11px*var(--fs,1));font-weight:700;vertical-align:middle}
.etq294.des{background:#fbe4e0;color:#b3382b}.etq294.rec{background:#dff0e6;color:var(--verde)}.etq294.pau{background:#ece8dd;color:#6b6556}
.objrow.pausado294{opacity:.6}
body.escuro .etq294.des{background:#3a2420;color:#f0a094}body.escuro .etq294.rec{background:#1f3a2e;color:#8fd0aa}body.escuro .etq294.pau{background:#2c3b35;color:#c9d2cd}
.rf295 .chip291{padding:6px 11px;font-size:calc(13px*var(--fs,1));border-radius:12px}.rf295{gap:6px;margin:4px 0 10px}
.oa-lem296{display:block;width:100%;flex:1 0 100%;margin-top:8px;padding:8px;border:1.5px solid #d8d2c2;border-radius:12px;background:var(--cartao,#fff);font-size:calc(13px*var(--fs,1));color:var(--suave);cursor:pointer}
.lemav296{background:var(--verdeclaro,#e3efe9);border-radius:12px;padding:10px 12px;margin-bottom:10px;font-size:calc(13px*var(--fs,1))}.lemav296 b{display:block;margin-bottom:4px;font-size:calc(12px*var(--fs,1));letter-spacing:.08em;text-transform:uppercase;color:var(--verde,#1f6b4f)}
body.escuro .oa-lem296{background:#1c2b26;border-color:#2c3b35;color:#e6efea}body.escuro .lemav296{background:#1f3a2e}
.prest297{margin:6px 0 8px}.prest297t{font-size:calc(13px*var(--fs,1));color:var(--suave);margin-bottom:4px}.prest297b{height:8px;border-radius:8px;background:#e6e1d3;overflow:hidden}.prest297b i{display:block;height:100%;background:var(--verde,#1f6b4f);border-radius:8px}
.rdiv297{margin-top:6px;font-size:calc(13px*var(--fs,1));font-weight:600;color:#b3402f;text-align:center}body.escuro .prest297b{background:#2c3b35}
/* beta.301 */
#movchips{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#movchips select,#movchips button{width:100%;min-width:0;box-sizing:border-box;text-overflow:ellipsis}
#totview{padding-bottom:84px}
#totnavlabel{text-transform:none}
#totmes{padding-right:80px;box-sizing:border-box}
#movchips select{max-width:none!important;width:100%!important;display:block;font-size:calc(13px*var(--fs,1))}
#totview #totnavlabel{text-transform:none!important}
/* beta.305: Ações rápidas em folha */
#fabbg{background:rgba(0,0,0,.38)}
#fabmenu,body.navmov #fabmenu{left:0;right:0;bottom:0;top:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch;padding:22px 16px calc(24px + env(safe-area-inset-bottom));background:var(--cartao);border-radius:24px 24px 0 0;box-shadow:0 -6px 24px rgba(0,0,0,.25);z-index:905}
#fabmenu.hidden{display:none}
#fabmenu::before{content:"Ações rápidas";grid-column:1/3;font-weight:800;font-size:calc(18px*var(--fs,1));color:var(--texto);margin-bottom:2px}
#fabmenu button{flex-direction:column-reverse;align-items:flex-start;justify-content:space-between;gap:12px;min-height:88px;border-radius:16px;padding:14px;box-shadow:none;border:1.5px solid rgba(0,0,0,.08);text-align:left;font-size:calc(15px*var(--fs,1))}
#fabmenu button[data-tipo=d]{background:rgba(214,69,65,.10)}
#fabmenu button[data-tipo=r]{background:rgba(31,138,76,.12)}
#fabmenu button[data-tipo=t]{background:rgba(232,176,72,.18)}
#fabmenu button[data-rec]{background:rgba(120,100,200,.12)}
#fabmenu .fmi-c{background:#7a68c8}
body.escuro #fabmenu button{color:#e6efea}
#fabadd.aberto{z-index:900}
#fabmenu button[data-tipo=d]{order:1}#fabmenu button[data-tipo=r]{order:2}#fabmenu button[data-tipo=t]{order:3}#fabmenu button[data-rec]{order:4}
/* beta.306 Entrada rápida */
#entrada306{padding:0 14px 20px}
#entrada306 .vhead{display:flex;align-items:center;gap:10px;margin:8px 0}
#entrada306 .vhead h2{margin:0;font-size:calc(20px*var(--fs,1))}
.ent306tipo{display:inline-flex;background:var(--cartao,#fff);border:1.5px solid #d8d4c8;border-radius:16px;padding:3px;margin:6px 0}
.ent306tipo button{border:0;background:none;padding:7px 16px;border-radius:16px;font:inherit;font-weight:600;color:#666}
.ent306tipo button.on{background:#fae1de;color:#c83c37}
.ent306tipo button[data-t=r].on{background:#dcefe3;color:#1f8a4c}
.ent306chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}
.ent306card{background:var(--cartao,#fff);border:1.5px solid #d8d4c8;border-radius:16px;padding:12px;margin-bottom:10px}
.ent306h{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;color:var(--verde,#1f6e46)}
.ent306h button{border:0;background:none;font-size:calc(16px*var(--fs,1));color:#888}
.ent306r{display:flex;gap:8px;margin-bottom:8px}
.ent306r input{flex:1;min-width:0;border:0;background:#f4f2eb;border-radius:12px;padding:11px;font:inherit;font-weight:700;font-size:calc(16px*var(--fs,1))}
.ent306cat{flex:1.2;display:flex;align-items:center;gap:8px;border:0;background:#f4f2eb;border-radius:12px;padding:0 10px;font:inherit;text-align:left;min-width:0}
.ent306cat i,#ent306cats i{width:16px;height:16px;border-radius:50%;display:inline-block;flex:none}
.ent306cat span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ent306contas{display:flex;gap:6px;overflow-x:auto;width:100%}
.ent306contas button{border:1.5px solid #d8d4c8;background:var(--cartao,#fff);border-radius:12px;padding:6px 12px;font:inherit;font-size:calc(13px*var(--fs,1));white-space:nowrap}
.ent306contas button.on{background:#dcefe3;border-color:var(--verde);font-weight:700}
input.ent306nota{width:100%;box-sizing:border-box;border:0;background:#f4f2eb;border-radius:12px;padding:10px;font:inherit}
.ent306addb{width:100%;border:2px solid var(--verde,#1f6e46);background:none;color:var(--verde,#1f6e46);border-radius:12px;padding:11px;font:inherit;font-weight:700}
#ent306rod{position:fixed;left:0;right:0;bottom:var(--navH,60px);background:var(--cartao,#fff);padding:10px 14px;box-shadow:0 -4px 14px rgba(0,0,0,.12);z-index:50;display:none}

#ent306tot{font-weight:700;margin-bottom:8px}
.ent306btns{display:flex;gap:10px}
.ent306btns button{flex:1;border-radius:12px;padding:12px;font:inherit;font-weight:700;border:1.5px solid #bbb;background:none}
.ent306btns #ent306grava{flex:2;background:var(--verde,#1f6e46);color:#fff;border:0}
.ent306btns #ent306grava:disabled{opacity:.45}
#ent306sheet{position:fixed;inset:0;z-index:960}
#ent306sheet.hidden{display:none}
.ent306bg{position:absolute;inset:0;background:rgba(0,0,0,.4)}
.ent306fol{position:absolute;left:0;right:0;bottom:0;background:var(--cartao,#fff);border-radius:24px 24px 0 0;padding:18px 14px 28px;max-height:70%;overflow:auto}
.ent306fol h3{margin:0 0 12px}
#ent306cats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px 6px}
#ent306cats button{border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:6px;font:inherit;font-size:calc(11px*var(--fs,1))}
#ent306cats i{width:46px;height:46px}
#fabmenu button[data-ent]{grid-column:1/3;order:5;flex-direction:row-reverse;align-items:center;min-height:56px;background:rgba(31,110,70,.10)}
#fabmenu .fmi-e{background:var(--verde,#1f6e46)}
#ent306sheet{z-index:3000!important}
/* beta.307 */
.p307{margin:4px 0 10px}.p307c{display:flex;gap:8px}.p307c>div{flex:1;background:var(--card,#fff);border-radius:12px;padding:10px 12px;box-shadow:0 1px 4px rgba(0,0,0,.08)}.p307c small{display:block;font-size:calc(11px*var(--fs,1));opacity:.7}.p307c b{font-size:calc(17px*var(--fs,1))}.p307f{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.p307f .chip291{padding:6px 10px;font-size:calc(13px*var(--fs,1));border-width:1.5px}
/* beta.308: barrinha no topo das folhas */
.bcard,.kpcard{position:relative}
.bcard::before,.kpcard::before,.r222folha::before,.c223folha::before,.e254b::before,.p259b::before,.f260b::before,.r262b::before,.ent306fol::before,#fabmenu::before{content:'';position:absolute;top:6px;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:2px;background:rgba(128,128,128,.55);z-index:5;pointer-events:none}
.tam308{display:flex;gap:8px;flex-wrap:wrap}
.saldocard.neg310{background:#3f4650}body.escuro .saldocard.neg310{background:#2b3138}
#mtTot.neg311{color:var(--vermelho)}body.escuro #mtTot.neg311{color:#ff8a7a}
.neg312{color:var(--vermelho)!important}body.escuro .neg312{color:#ff8a7a!important}
/* beta.313: bolas de cor por secção */
.bola313{width:38px;height:38px;border-radius:50%;border:3px solid rgba(128,128,128,.35);padding:0;cursor:pointer;flex:none}
.bola313.gr{width:32px;height:32px}
.bola313.tema{border:2px dashed #8a8a8a;background:transparent}
.bola313.on{outline:3px solid var(--verdescuro,var(--verdescuro));outline-offset:2px}
.bolas313{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:12px 6px}
.sub313{text-align:center;font-size:calc(12px*var(--fs,1));opacity:.7;padding:0 0 12px}
#sheetcor313 .bcard{padding-top:10px}
/* beta.314: folha Ações rápidas do botão + */
.ab314{display:flex;flex-direction:column;gap:8px;padding:10px 6px 16px}
.abr314{display:flex;align-items:center;gap:14px;width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--linha,#ddd);background:var(--cartao);color:var(--texto);font:inherit;font-size:calc(16px*var(--fs,1));text-align:left}
.abr314 .fmi{position:static;flex:none;width:36px;height:36px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:calc(18px*var(--fs,1));margin:0}
.abr314 .fmi{color:#fff}.abr314 .fmi-d{background:var(--corDes)}.abr314 .fmi-r{background:var(--corRec)}.abr314 .fmi-t,.abr314 .fmi-e{background:var(--verde)}.abr314 .fmi-c{background:#7a68c8}

.o242chs{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;justify-content:center}.o242ch{border:0;border-radius:16px;padding:10px 16px;background:#e6edf5;color:#1d3557;font-size:calc(15px*var(--fs,1))}.o242ch.on{background:var(--verde);color:var(--sobreVerde)}

.o242novo{display:flex;gap:8px;margin-top:14px}.o242novo input{flex:1;min-width:0}.o242novo button{border:0;border-radius:12px;padding:0 14px;background:var(--verde);color:var(--sobreVerde);font-size:calc(14px*var(--fs,1))}.o242todas{display:block;margin:14px auto 0;border:0;background:none;color:var(--verde);font-size:calc(14px*var(--fs,1));text-decoration:underline}

.o242res{margin-top:16px}.o242ri{background:var(--cartao,#fff);border-radius:12px;padding:12px;margin:8px 0;font-size:calc(15px*var(--fs,1));color:#1b1b1b}.o242ri{border:1px solid #e3e0d3}


/* beta.345: variáveis de cantos e espaços + um só estilo de caixa de escrita (geometria; as cores não mudam) */
:root{--r-sm:8px;--r-md:12px;--r-lg:16px;--r-pill:999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px}
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]):not([type=hidden]):not(#valor):not(#nota):not(#lockpin):not(#lockreccod):not(#thhi):not(#tmmi):not(.l328):not(.ent306nota):not(.defrap):not(#conv237h),
select:not(.oculto236),
textarea:not(#detalhes):not(#csvtxt):not(#bktxt){border-radius:var(--r-md)!important;border-width:1px!important;border-style:solid!important;font-size:calc(15px*var(--fs,1))!important;padding:var(--sp-2) var(--sp-3)!important;box-sizing:border-box}

/* beta.346: listas (select) legíveis no modo escuro (fundo e letra no tom escuro, também dentro de #defview e cartões) */
body.escuro select,body.escuro #defview select,body.escuro .selmcard select,body.escuro .selmcard input,body.escuro .fchips select,body.escuro .msform select{background-color:#1c2b26!important;color:#e6efea!important;border-color:#3a4a43!important}
body.escuro select option{background:#1c2b26;color:#e6efea}

/* beta.347: linha pequena 'vs mês anterior' no Relatório anual */
.vs347{display:block;font-size:calc(11px*var(--fs,1));font-weight:600;margin-top:1px}

/* beta.353: Entrada rápida - botões +1/+5/+10 e Hoje/Ontem numa linha só */
.r353 .ent306contas{gap:4px;overflow:visible}.r353 .ent306contas button{padding:6px 8px;font-size:calc(13px*var(--fs,1));flex:none}

/* beta.354: cartões da lista das Definições legíveis no modo escuro */
body.escuro .defmrow{background:var(--cartao);border-color:#2a3a33;color:var(--texto)}
body.escuro .defmrow:active{background:#24352f}
body.escuro .defmrow small,body.escuro .defmrow .sub{color:var(--suave)}

/* beta.356: faixa de dados de exemplo a vermelho (tom próprio, texto branco legível) */
#demobanner{background:#b3261e;color:#fff}body.escuro #demobanner{background:#8f2a24;color:#fff}

/* beta.357b: "+ Nova" no seletor de categoria da Entrada rápida */
#ent306cats .nova306::before{content:"+";width:16px;height:16px;border-radius:50%;border:1.5px dashed currentColor;display:flex;align-items:center;justify-content:center;font-size:calc(12px*var(--fs,1));line-height:1;box-sizing:content-box;padding:0}
#ent306cats .nova306{font-weight:700;color:var(--verde,#1f6b4a)}

/* beta.360: teclado numérico mais baixo (teclas 46px -> 38px) */
.np328k{padding-top:6px!important;padding-bottom:6px!important}

/* beta.395: categorias do arranque em chips coloridos */
.o395ch{display:inline-flex;align-items:center;gap:6px;background:color-mix(in srgb,var(--c395) 16%,#fff)!important;color:#3b4a44!important;font-weight:700}.o395ch svg{color:var(--c395)}.o395ch.on{background:var(--c395)!important;color:#fff!important}.o395ch.on svg{color:#fff}

/* beta.404: folha Categoria e Escolher moeda só com as cores do tema (variáveis) */
#sheetcat .btop,#listamoedas .kptop{background:var(--cartao);color:var(--verde);border-bottom:1px solid var(--verdeclaro)}
#sheetcat .btop button,#sheetcat .btop svg,#listamoedas .kptop .kpx{color:var(--verde)}
#sheetcat .catchip{background:var(--cartao);color:var(--texto);border:1.5px solid color-mix(in srgb,var(--suave) 30%,transparent);box-shadow:none;border-radius:12px;font-weight:600}
#sheetcat .catchip svg{width:30px;height:30px;padding:6px;box-sizing:border-box;border-radius:12px;background:var(--verdeclaro)}
#sheetcat .catchip.on{background:var(--verdeclaro);border-color:var(--verde);color:var(--texto);box-shadow:none}
#sheetcat .catsubabrir{border-left:1px solid color-mix(in srgb,var(--suave) 30%,transparent);color:var(--verde)}
#sheetcat #catchips{border-right-color:color-mix(in srgb,var(--suave) 30%,transparent)}
#sheetcat .contachip{background:var(--cartao);color:var(--texto);border:1.5px solid color-mix(in srgb,var(--suave) 30%,transparent);border-radius:12px}
#sheetcat .contachip.on{background:var(--verdeclaro);border-color:var(--verde);color:var(--texto)}

/* beta.405: folha Conta só com as cores do tema */
#sheetconta .btop{background:var(--cartao);color:var(--verde);border-bottom:1px solid var(--verdeclaro)}
#sheetconta .btop button,#sheetconta .btop svg{color:var(--verde)}
#sheetconta .contachip{background:var(--cartao);color:var(--texto);border:1.5px solid color-mix(in srgb,var(--suave) 30%,transparent);border-radius:12px}
#sheetconta .contachip.on{background:var(--verdeclaro);border-color:var(--verde);color:var(--texto)}
#sheetconta .contagrupo{border-bottom-color:color-mix(in srgb,var(--suave) 25%,transparent)}
#sheetconta .contagrupo.on{background:var(--verdeclaro)}
#sheetconta #contagrupos .contagruposnomes,#sheetconta .contagruposnomes{border-color:color-mix(in srgb,var(--suave) 25%,transparent)}
#defview .ss403b{width:100%;box-sizing:border-box;flex:0 0 auto;align-self:stretch}
#defview label .ss403b{margin-top:4px}
#defview .contaadd label{flex:1 1 100%}#defview .contaadd .ss403b{flex:1 1 120px;width:auto}#defview .contaadd label .ss403b{width:100%}
#divlist .contaadd label{grid-column:1/-1}#divlist .contaadd .ss403b{min-width:0}#divlist .contaadd #contamoeda+*{}
#defview .contaadd #contasaldo{flex:1 1 100%}#defview .contaadd label{display:block;width:100%;box-sizing:border-box}
#defview .contaadd label .ss403b{display:flex!important;width:100%!important;max-width:none!important;box-sizing:border-box}
#defview .contaadd>div:not(.hidden){flex:1 1 100%;min-width:0}
.fchips .ss403b{flex:0 1 auto;min-height:36px;padding:0 10px;font-size:calc(13px*var(--fs,1));border-radius:var(--r-md,12px);max-width:48%}
.objform .ss403b{width:100%;box-sizing:border-box;flex:0 0 auto}
.fchips .ss403b{flex:1 1 45%;max-width:none}
:root{--r-icone:30%}
.formas410{display:flex;gap:8px}
.forma410{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border:1.5px solid rgba(0,0,0,.14);border-radius:var(--r-md,12px);background:var(--cartao,#fff);color:var(--texto,#222);font:inherit;font-size:calc(12px*var(--fs,1))}
.forma410.on{border-color:var(--verde);background:var(--verdeclaro);color:var(--verde);font-weight:700}
.pv410{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--verdeclaro);color:var(--verde);border-radius:var(--r-icone);box-sizing:border-box}
.forma410.on .pv410{background:var(--cartao,#fff)}
.pv410 svg{width:22px;height:22px}
.movic,.mi268,.mi215,.ic261,#cvgrupos .contaLinha142 .ic261,#sp403 .ic,#moe389 .ic{border-radius:var(--r-icone)!important}
.forma410[data-f=quad] .pv410{border-radius:8%}.forma410[data-f=arred] .pv410{border-radius:30%}.forma410[data-f=circ] .pv410{border-radius:50%}
.ss403b{width:100%;box-sizing:border-box}.fchips .ss403b{width:auto}
#sp403 .sec412{font-size:calc(11px*var(--fs,1));letter-spacing:.12em;text-transform:uppercase;color:var(--suave);margin:6px 2px 0}#sp403 .r .ic{font-size:calc(13px*var(--fs,1))}#sp403 .add412 .n{color:var(--verde);font-weight:700}
#sp403 .r.t412{flex-direction:column;align-items:stretch;gap:0;padding:12px 14px;height:auto}
#sp403 .t412 b{font-size:calc(16px*var(--fs,1))}
#sp403 .t412 ul{margin:6px 0 0;padding-left:18px;font-size:calc(13px*var(--fs,1));opacity:.8}
#sp403 .t412 .fr390{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-top:10px}
#sp403 .t412 .fr390 button{flex:none;white-space:nowrap;border:1.5px solid rgba(0,0,0,.14);background:transparent;border-radius:var(--r-md,12px);height:34px;padding:0 12px;font:inherit;font-size:calc(14px*var(--fs,1));color:inherit}
#sp403 .t412 .fr390 button.on{background:var(--verde);color:var(--sobreVerde,#fff);border-color:var(--verde)}
#sp403 .sw412{display:block;width:22px;height:22px;border-radius:50%}
#sp403 .sw412.tema{border:2px dashed var(--suave);background:transparent;box-sizing:border-box}

/* beta.416: Populares na moeda */
#sp403 .pop416{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 2px}#sp403 .chip416{border:1px solid var(--verde);background:var(--cartao,#fff);color:var(--verde);border-radius:var(--r-chip,99px);padding:6px 14px;font-weight:700;font-size:calc(13px*var(--fs,1));min-height:48px}#sp403 .chip416.on{background:var(--verde);color:var(--sobreVerde)}

/* beta.417: erro junto ao campo */
.err417{margin:6px 2px 0;color:var(--vermelho);font-size:calc(13px*var(--fs,1));font-weight:700}

/* beta.419: filtro de contas */
#cfilt418{margin:8px 0}.cf418chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.cf418chips button{border:1px solid var(--verde);background:var(--cartao,#fff);color:var(--verde);border-radius:var(--r-chip,99px);padding:6px 14px;font-weight:700;font-size:calc(13px*var(--fs,1))}.cf418chips button.on{background:var(--verde);color:var(--sobreVerde)}.cf418q{width:100%;box-sizing:border-box}

/* beta.420: Contas - arrastar e folha */
.peg420{border:0;background:transparent;color:var(--suave);font-size:calc(20px*var(--fs,1));line-height:1;padding:6px 8px;margin-right:2px;touch-action:none;cursor:grab}.mais420{border:1px solid var(--verde);background:var(--cartao,#fff);color:var(--verde);border-radius:var(--r-chip,99px);width:34px;height:34px;font-size:calc(18px*var(--fs,1));font-weight:700;margin-left:6px}.contarow.adrag{box-shadow:var(--sombra,0 6px 18px rgba(0,0,0,.18));opacity:.92}
#contasdef .contarow{display:flex!important;flex-wrap:nowrap!important;align-items:center;gap:8px;padding:12px;border-radius:var(--r-card,12px)}#contasdef .contarow .containfo{flex:1 1 auto;min-width:0}#contasdef .contarow .contanome{font-size:calc(15px*var(--fs,1));font-weight:700}#contasdef .contarow .contamoeda{font-size:calc(12px*var(--fs,1));color:var(--suave)}#contasdef .contarow .contavals{flex:0 0 auto;text-align:right}#contasdef .contarow .peg420,#contasdef .contarow .mais420{flex:0 0 auto}

/* beta.423: exemplo do formato */
.fmtex419{margin:10px 0 0;padding:10px 12px;border-radius:var(--r-card,12px);background:var(--verdeclaro);color:var(--verdescuro);font-weight:700;font-size:calc(13px*var(--fs,1))}

.vgtipos{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
#vgtipos .vgtipo{width:auto;margin:0;border:1px solid var(--suave);background:var(--cartao);color:var(--texto);border-radius:999px;padding:6px 12px;font-size:calc(14px*var(--fs,1));font-weight:400;cursor:pointer}
#vgtipos .vgtipo.on{border-color:var(--tc);background:var(--verdeclaro);color:var(--texto);font-weight:700}
.vgdot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--tc);vertical-align:middle}
.vgrow{border-left:5px solid var(--tc)}

/* beta.425 */
.r225tabs button{display:inline-flex;align-items:center;justify-content:center}
.r225tabs button svg{flex:none}
#over203.r249 .r225tabs{gap:5px}
#over203.r249 .r225tabs button{padding:9px 9px;font-size:calc(13px*var(--fs,1));gap:5px}

#homeview .homeVistas140,.homeVistas140{border-bottom:0;gap:6px}
.homeVistas140 button{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:0;border-bottom:0;border-radius:16px;background:var(--cartao);color:var(--suave);font-size:calc(13px*var(--fs,1));padding:8px 6px}
.homeVistas140 button.on{background:var(--verdeclaro);color:var(--verde);border-bottom:0;font-weight:700}
.homeVistas140 button svg{flex:none}

#orctabs{border-bottom:0;gap:6px}
#orctabs button{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:0;border-bottom:0;border-radius:16px;background:var(--cartao);color:var(--suave);font-size:calc(13px*var(--fs,1));padding:8px 6px;margin-bottom:0}
#orctabs button.on{background:var(--verdeclaro);color:var(--verde);border-bottom:0;font-weight:700}
#homeview .homeVistas140,.homeVistas140{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;gap:6px;padding:6px 4px}
.homeVistas140::-webkit-scrollbar{display:none}
.homeVistas140 button{flex:0 0 auto;font-size:calc(13px*var(--fs,1));padding:8px 12px}

#homeview .homeVistas140,.homeVistas140{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;gap:4px;padding:6px 4px}
.homeVistas140 button,#orctabs button{flex:1 1 auto;min-width:0;padding:8px 6px}
.so429 button:not(.on) span{display:none}
.so429 button:not(.on){flex:0 0 auto;padding:8px 10px}
.so429 button.on{flex:1 1 auto}
#det430btn{display:block;margin:10px auto 0;border:0;border-radius:16px;background:color-mix(in srgb,var(--verdeclaro) 18%,transparent);color:inherit;font:inherit;font-size:calc(13px*var(--fs,1));font-weight:600;padding:7px 16px}
#det430.hidden{display:none}
#det430 .sub,#det430 .homeResumo140,#det430 .homeResumo140 *{color:inherit!important;opacity:1!important}
#det430 .sub{font-size:calc(13px*var(--fs,1))}
#tip431{display:none;position:fixed;z-index:9999;background:var(--verdescuro);color:var(--sobreVerde);font-size:calc(13px*var(--fs,1));font-weight:600;padding:6px 12px;border-radius:var(--r-md,12px);box-shadow:0 2px 8px rgba(0,0,0,.25);pointer-events:none}
.homeVistas140 button span,#orctabs button span,.r225tabs button span{display:inline-block;max-width:140px;overflow:hidden;white-space:nowrap;opacity:1;transition:max-width .28s ease,opacity .22s ease}
.homeVistas140 button,#orctabs button,.r225tabs button{transition:padding .28s ease,gap .28s ease,background .2s ease,color .2s ease}
.so429 button:not(.on) span{display:inline-block;max-width:0;opacity:0}
.so429 button:not(.on){gap:0}
.so429 button:not(.on){padding:8px}
.so429{gap:3px}
.so429 button.on{padding:8px 10px;flex:1 1 auto;min-width:fit-content}

#det430 .sub{padding:9px 0;margin:0;border-top:1px solid color-mix(in srgb,currentColor 25%,transparent)}
#det430 .sub:first-child{border-top:0}
#det430 .homeResumo140{margin-top:0;padding-top:9px}
#det430 .homeResumo140>div{margin-bottom:6px}
#det430 .dif433.pos{color:color-mix(in srgb,var(--verde) 20%,var(--verdeclaro))!important;white-space:nowrap;font-weight:700}
#det430 .dif433.neg{color:color-mix(in srgb,var(--vermelho) 60%,var(--cartao))!important;font-weight:700}
#homeview .saldocard #edbtn365{position:absolute;top:10px;right:46px;left:auto;width:30px;height:30px;padding:0;margin:0;border:0;border-radius:50%;background:color-mix(in srgb,var(--verdeclaro) 18%,transparent);color:inherit;font-size:0;display:flex;align-items:center;justify-content:center}
#homeview .saldocard #edbtn365::before{content:'\270E';font-size:calc(17px*var(--fs,1));line-height:1}
#det430 .dif433{white-space:nowrap}

.livAv434{width:44px;height:44px;padding:0!important;border-radius:50%!important;background:var(--verdeclaro)!important;font-size:calc(24px*var(--fs,1))!important;line-height:1;flex:none}
#sp403 .zoom434{font-size:84px;line-height:1.2;text-align:center;background:var(--verdeclaro);border-radius:var(--r-md,12px);margin:4px 0 8px}
#sp403 .grade434{display:grid!important;grid-template-columns:repeat(6,1fr);gap:6px;margin-top:8px}
#sp403 .e434{font-size:calc(26px*var(--fs,1));height:46px;border:1.5px solid transparent;border-radius:var(--r-md,12px);background:transparent}
#sp403 .e434.on{border-color:var(--verde);background:var(--verdeclaro)}
.lv261 .ic.av434{cursor:pointer}

/* beta.435: COMPONENTE CENTRAL DE PÍLULAS. Mudar aqui muda todos os menus/filtros em pílula da app. */
:root{--pill-bg:var(--cartao);--pill-fg:var(--suave);--pill-on-bg:var(--verdeclaro);--pill-on-fg:var(--verde);--pill-r:20px;--pill-gap:6px;--pill-fs:13px;--pill-py:8px;--pill-px:8px;--pill-anim:.28s;--rbtn-size:36px}
.pill435{display:flex!important;flex-wrap:nowrap!important;gap:var(--pill-gap)!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none;border:0!important;background:transparent!important;padding:6px 4px!important;margin:0 0 8px!important}
.pill435::-webkit-scrollbar{display:none}
.pill435>button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;flex:1 0 auto!important;border:0!important;border-bottom:0!important;border-radius:var(--pill-r)!important;background:var(--pill-bg)!important;color:var(--pill-fg)!important;font:inherit;font-size:var(--pill-fs)!important;padding:var(--pill-py) var(--pill-px)!important;margin:0!important;opacity:1!important;font-weight:400;white-space:nowrap;transition:padding var(--pill-anim) ease,gap var(--pill-anim) ease,background .2s ease,color .2s ease}
.pill435>button.on{background:var(--pill-on-bg)!important;color:var(--pill-on-fg)!important;font-weight:700!important}
.pill435>button svg{flex:none}
.pill435>button span{display:inline-block;max-width:140px;overflow:hidden;white-space:nowrap;opacity:1;transition:max-width var(--pill-anim) ease,opacity .22s ease}
.pill435.so429>button:not(.on){flex:0 0 auto!important;gap:0!important;padding:var(--pill-py)!important}
.pill435.so429>button:not(.on) span{max-width:0;opacity:0}
.pill435.so429>button.on{flex:1 1 auto!important;min-width:fit-content}
.pill435 .esttot{font-size:calc(11px*var(--fs,1));opacity:.8;margin-left:2px}
.rbtn435{width:var(--rbtn-size);height:var(--rbtn-size);border-radius:50%;border:0;background:var(--pill-bg);color:var(--pill-fg);display:inline-flex;align-items:center;justify-content:center;flex:none;padding:0}
.pill435.so429{gap:3px!important}

/* beta.436 migalhas */
.crumb436{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;overflow-x:auto;margin:6px 0 8px;font-size:var(--pill-fs,13px)}
.crumb436 .sep436{color:var(--suave)}
.crumb436 .cb436{border:0;background:var(--pill-bg,var(--verdeclaro));color:var(--pill-fg,var(--verdescuro));border-radius:var(--pill-r,999px);padding:var(--pill-py,5px) var(--pill-px,8px);white-space:nowrap;font:inherit;max-width:45%;overflow:hidden;text-overflow:ellipsis}
.crumb436 .cb436.on{background:var(--pill-on-bg,var(--verde));color:var(--pill-on-fg,var(--sobreVerde))}
/* beta.437: Adicionar em 2 passos */
#bk437{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.38)}
#sheet437{position:fixed;left:0;right:0;bottom:0;z-index:1001;background:var(--cartao);color:var(--texto);border-radius:var(--r-lg,22px) var(--r-lg,22px) 0 0;padding:10px 16px calc(16px + env(safe-area-inset-bottom));max-height:86vh;overflow-y:auto}
#sheet437 .g437{width:40px;height:4px;border-radius:4px;background:var(--suave);opacity:.5;margin:0 auto 10px}
#sheet437 h3{margin:8px 0 6px;font-size:calc(16px*var(--fs,1))}
.p437{display:flex;gap:6px}.p437 i{flex:1;height:5px;border-radius:8px;background:var(--verdeclaro)}.p437 i.on{background:var(--verde)}
#sheet437 .h437{margin:12px 0 6px;font-size:calc(12px*var(--fs,1));letter-spacing:.06em;text-transform:uppercase;color:var(--suave)}
#sheet437 .c437{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:var(--cartao);color:var(--texto);border:1.5px solid var(--verdeclaro);border-radius:var(--r-md,16px);padding:10px 12px;margin-bottom:8px;font:inherit}
#sheet437 .c437.on{border-color:var(--verde);background:var(--verdeclaro)}
#sheet437 .i437{width:40px;height:40px;border-radius:12px;background:var(--verdeclaro);color:var(--verdescuro);display:flex;align-items:center;justify-content:center;font-size:calc(20px*var(--fs,1));flex:none}
#sheet437 .c437.on .i437{background:var(--verde);color:var(--sobreVerde)}
#sheet437 .t437 b{display:block}#sheet437 .t437 small{color:var(--suave)}
#sheet437 .n437{width:100%;margin-top:6px;border:0;border-radius:999px;padding:13px;background:var(--verde);color:var(--sobreVerde);font:inherit;font-weight:700}
/* beta.437b: lista simples (modo f do Botao +) — herda a folha; linhas simples sem descricao */
#listab437{position:fixed;left:0;right:0;bottom:0;z-index:1001;background:var(--cartao);color:var(--texto);border-radius:var(--r-lg,22px) var(--r-lg,22px) 0 0;padding:10px 16px calc(16px + env(safe-area-inset-bottom));max-height:86vh;overflow-y:auto}
#listab437 .g437{width:40px;height:4px;border-radius:4px;background:var(--suave);opacity:.5;margin:0 auto 10px}
#listab437 h3{margin:8px 0 10px;font-size:calc(16px*var(--fs,1))}
#listab437 .c437{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:var(--cartao);color:var(--texto);border:0;border-bottom:1px solid var(--nav-linha,#e5e2da);border-radius:0;padding:12px 4px;margin:0;font:inherit;min-height:48px}
#listab437 .c437:last-of-type{border-bottom:0}
#listab437 .i437{width:34px;height:34px;border-radius:10px;background:var(--verdeclaro);color:var(--verdescuro);display:flex;align-items:center;justify-content:center;font-size:calc(18px*var(--fs,1));flex:none}
#listab437 .t437 b{display:block;font-weight:600}
#passo437{display:none;position:absolute;left:0;right:0;top:calc(100% + 6px);margin:0;pointer-events:none}#passo437 .p437 i{height:4px}body.passo437 #passo437{display:block}#passo437 small{display:block;margin-top:2px;font-size:calc(11px*var(--fs,1));color:var(--suave)}
/* beta.438 objetivos: estado e arquivados */
#objestado438{margin:8px 0}
.ch438{margin-left:6px;font-size:calc(11px*var(--fs,1));padding:2px 8px;border-radius:var(--pill-r,999px);background:var(--verdeclaro);color:var(--verdescuro);font-weight:600}
.arqh438{display:block;width:100%;text-align:left;background:none;border:0;color:var(--suave);font:inherit;font-weight:600;padding:10px 2px}
.arqr438{display:flex;align-items:center;gap:8px;padding:8px 2px;border-bottom:1px solid var(--verdeclaro)}
.arqr438 .n{flex:1;font-weight:600}.arqr438 small{color:var(--suave)}
.arqr438 button{background:var(--verdeclaro);color:var(--verdescuro);border:0;border-radius:var(--pill-r,999px);padding:5px 12px;font:inherit;font-size:calc(12px*var(--fs,1))}
.objrow .objacoes{flex-wrap:wrap}.objrow .objacoes button{min-width:0;flex:1 1 auto;padding:6px 8px}

/* beta.439: barra sticky do Início com fundo do ecrã; separadores de categorias em pílula central */
.homeVistas140.pill435{background:var(--pill-bar-bg)!important;box-shadow:0 -24px 0 var(--pill-bar-bg)}
body.escuro{--pill-bar-bg:#101915}
.cattabs218.pill435{margin:8px 0 10px!important}
/* beta.440 objetivos: plano mensal */
#sum440{display:flex;gap:8px;margin:6px 0 10px}
#sum440 span{flex:1;background:var(--cartao);border-radius:var(--r-md,14px);padding:8px 10px;font-size:calc(11px*var(--fs,1));color:var(--suave);display:flex;flex-direction:column}
#sum440 b{font-size:calc(14px*var(--fs,1));color:var(--texto)}
.plano440{margin-top:6px;font-size:calc(12px*var(--fs,1));font-weight:600;padding:4px 10px;border-radius:var(--pill-r,999px);background:var(--verdeclaro);color:var(--verdescuro);display:inline-block}
.plano440.mau{background:var(--vermelhoclaro);color:var(--vermelho)}
.plano440.sem{background:transparent;color:var(--suave);padding-left:0}

/* beta.441: barra de baixo em vidro (semitransparente, desfoca o conteúdo que passa por baixo) */
nav{background:var(--nav-vidro)!important;-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);border-top:1px solid var(--nav-linha)!important;z-index:950}
body.escuro{--nav-vidro:rgba(34,42,38,.32);--nav-linha:rgba(255,255,255,.2);--nav-ativo:rgba(255,255,255,.14)}
/* beta.442: barra do topo recolhível */
header{transition:max-height .22s ease,padding .22s ease,opacity .18s ease;max-height:80px;overflow:hidden}
body.hdr442 header{max-height:0;padding-top:0;padding-bottom:0;opacity:0}

/* beta.443: barra de baixo FLUTUANTE em cápsula de vidro, ativo em oval (cores só por variáveis) */
nav{left:var(--nav-margem)!important;right:var(--nav-margem)!important;bottom:calc(var(--nav-margem) + env(safe-area-inset-bottom))!important;border-radius:999px!important;border:1px solid var(--nav-linha)!important;padding:5px 6px!important;box-shadow:0 6px 24px rgba(0,0,0,.14)}
nav button{border-radius:999px!important;padding:6px 2px!important;background:transparent}
nav button.active{background:var(--nav-ativo)!important;box-shadow:none!important}
/* beta.444 património: contas recolhível */
.pc444{margin-top:10px;border-top:1px solid var(--verdeclaro);padding-top:8px}
.ph444{display:flex;align-items:center;gap:8px;width:100%;background:none;border:0;font:inherit;color:var(--texto);padding:4px 0}
.ph444 .ch444{width:18px;color:var(--suave)}.ph444 b{flex:1;text-align:left}.ph444 .pv444{font-weight:700}
.pb444{display:flex;gap:2px;height:8px;border-radius:999px;overflow:hidden;margin:6px 0 8px}.pb444 i{display:block;min-width:3px}
.pt444.hidden{display:none}
.pr444{display:flex;align-items:center;gap:8px;padding:6px 0;border-top:1px solid var(--verdeclaro);font-size:calc(13px*var(--fs,1))}
.pd444{width:10px;height:10px;border-radius:50%;flex:none}.pn444{flex:1}.pq444{color:var(--suave);width:36px;text-align:right}.pw444{font-weight:600;width:92px;text-align:right}.pw444.neg{color:var(--vermelho)}
body.escuro #over203{background:#101915;color:var(--texto)}

.pers456{margin:8px 0}.pers456>button{border:1.5px solid var(--verde)!important;color:var(--verde)!important;font-weight:700!important}.pers456>button.on{color:var(--pill-on-fg)!important}

.hb457{padding:6px 2px}.hr457{margin:0 0 12px}.hn457{display:flex;justify-content:space-between;font-size:calc(14px*var(--fs,1));margin-bottom:4px}.hn457 b{font-weight:700}.ht457{position:relative;height:18px;background:var(--verdeclaro);border-radius:8px;overflow:hidden}.ht457 i{display:block;height:100%;border-radius:8px}.ht457 em{position:absolute;right:8px;top:0;line-height:18px;font-size:calc(11px*var(--fs,1));font-style:normal;color:var(--texto)}
.tip457{position:absolute;display:none;pointer-events:none;background:var(--cartao);color:var(--texto);border:1px solid var(--nav-linha);border-radius:8px;padding:5px 9px;font-size:calc(12px*var(--fs,1));font-weight:700;box-shadow:0 2px 8px rgba(0,0,0,.2);z-index:5;white-space:nowrap}
.top326{flex-wrap:wrap!important}.top326>.g238seg{flex:1 1 100%!important;min-width:0}

.lg458{display:flex;flex-wrap:wrap;gap:6px 12px;padding:8px 2px;font-size:calc(12px*var(--fs,1))}.lg458 i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px}
.g238seg button{padding:10px 0!important;min-width:0}.g238seg svg{width:22px!important;height:22px!important}
.g238seg>button{padding:10px 6px!important;flex:1 1 0!important;min-width:0!important}.g238seg{gap:2px!important}

.fn459{padding:8px 0}.fr459{margin:0 0 12px;text-align:center}.fb459{height:34px;margin:0 auto 4px;border-radius:8px}.ft459{display:flex;justify-content:space-between;font-size:calc(13px*var(--fs,1))}
.tip457{white-space:normal!important;max-width:200px}

.kpi460{margin:14px;padding:16px;border-radius:16px;background:var(--cartao);box-shadow:0 1px 4px rgba(0,0,0,.12)}.kl460{font-size:calc(13px*var(--fs,1));color:var(--suave)}.kv460{font-size:calc(34px*var(--fs,1));font-weight:800;margin:4px 0}.kd460{font-size:calc(13px*var(--fs,1));font-weight:700;margin-bottom:10px}.kspk460{width:100%;height:60px;display:block}.ks460{display:flex;justify-content:space-between;font-size:calc(11px*var(--fs,1));color:var(--suave);margin-top:6px}.g238seg{overflow-x:auto;scrollbar-width:none}.g238seg::-webkit-scrollbar{display:none}.g238seg button{min-width:30px!important;flex:1 0 auto!important}
.g238seg{display:grid!important;grid-template-columns:repeat(9,1fr);gap:4px!important;overflow:visible!important}.g238seg button,.g238seg button:first-child,.g238seg button:last-child{border-radius:16px!important;min-width:0!important;flex:none!important;padding:8px 0!important}
.g238seg{grid-template-columns:repeat(9,minmax(0,1fr))!important}.g238seg svg{width:19px!important;height:19px!important}.g238seg button{overflow:hidden}.heat461{max-height:230px;width:auto;display:block;margin:0 auto}
.bar462w{position:relative;margin:8px 14px 0}.bc462{position:absolute;left:0;right:0;height:190px;border-radius:16px;color:#fff;padding:8px 18px;box-shadow:0 -2px 8px rgba(0,0,0,.18);transition:top .35s ease,transform .35s ease;cursor:pointer;overflow:hidden}.bc462:not(.frente){height:60px}.bn462{font-weight:700;font-size:calc(15px*var(--fs,1));text-align:center}.bc462.frente .bn462{text-align:left;font-size:calc(17px*var(--fs,1))}.bv462{font-size:calc(34px*var(--fs,1));font-weight:800;margin-top:26px}.bm462{font-size:calc(13px*var(--fs,1));opacity:.9;margin-top:4px}.bver462{position:absolute;right:14px;bottom:12px;border:0;border-radius:var(--pill-r);padding:7px 14px;background:var(--cartao);color:var(--verde);font-weight:700}.bad462{display:block;width:calc(100% - 28px);margin:16px 14px;padding:14px;border:0;border-radius:var(--pill-r);background:var(--verde);color:var(--sobreVerde);font-weight:700;font-size:calc(15px*var(--fs,1))}
/* beta463: pílulas e botões no modo escuro usam as variáveis do tema (corrige herança do :root) */
body{--pill-bg:var(--cartao);--pill-fg:var(--suave);--pill-on-bg:var(--verdeclaro);--pill-on-fg:var(--verde)}
#toolsview .conv211m{background:var(--verdeclaro)!important;color:var(--verde)!important;font-weight:700}
/* beta464: revisão grupo 2, fundos pastel fixos passam a variáveis de tema no escuro */
body.escuro .ent306tipo button.on{background:var(--vermelhoclaro);color:var(--vermelho)}
body.escuro .ent306tipo button[data-t=r].on{background:var(--verdeclaro);color:var(--verde)}
body.escuro .ent306tipo button{color:var(--suave)}
body.escuro .ent306cat{background:var(--verdeclaro);color:var(--texto)}
body.escuro #ent306cats button{color:var(--texto)}
body.escuro .ent306btns button{color:var(--texto);border-color:var(--suave)}
body.escuro .emp392tag.r{background:var(--vermelhoclaro)!important;color:var(--vermelho)!important}
body.escuro .emp392tag.d{background:var(--verdeclaro)!important;color:var(--verde)!important}
/* beta466: folhas no escuro, ícones e etiquetas com variáveis do tema */
body.escuro .c264ic button{color:var(--texto)}
body.escuro .imp277r em.ob{background:var(--vermelhoclaro);color:var(--vermelho)}
body.escuro .imp277r em.op{background:var(--verdeclaro);color:var(--suave)}
body.escuro .o203b,body.escuro .o203h b{color:var(--texto)}
/* beta467: botões sem cor própria no escuro herdam a cor do tema */
:where(body.escuro button){color:var(--texto)}
body.escuro :where(#entrada306) button.on{background:var(--verdeclaro);color:var(--verde)}
/* beta468: Carregar mais nos Movimentos */
.movmais467{display:block;width:calc(100% - 24px);margin:12px auto 80px;padding:12px;border:0;border-radius:var(--r-pill,999px);background:var(--verdeclaro);color:var(--verde);font:inherit;font-size:calc(14px*var(--fs,1));font-weight:700}
/* beta469: linha compacta nos Movimentos (opção Compacta) */
.compacta468{padding:6px 10px;margin-bottom:4px}
.compacta468:not(.aberta468) .movinfo>:not(.movcat):not(.movsub){display:none}
.compacta468:not(.aberta468) .movconv,.compacta468:not(.aberta468) .movsaldo{display:none}
.compacta468:not(.aberta468) .movfotobox{display:none}
.compacta468 .movcat,.compacta468 .movsub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline}
.compacta468:not(.aberta468) .movsub::before{content:' · '}
.compacta468 .movsub{font-size:calc(13px*var(--fs,1));color:var(--suave)}
.compacta468.aberta468{background:var(--verdeclaro)}
.compacta468:not(.aberta468) .movinfo{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* beta470: faixa Saldo do dia no calendário */
.saldodia470{display:flex;justify-content:space-between;align-items:center;margin:8px 0 4px;padding:10px 14px;border-radius:var(--r-md);background:var(--verdeclaro);color:var(--verde);font-size:calc(14px*var(--fs,1))}
.saldodia470 b{font-size:calc(15px*var(--fs,1));color:var(--texto)}
/* beta471: etiqueta Ajuste */
.ajuste471{display:inline-block;margin-top:3px;padding:1px 8px;border-radius:var(--r-pill,999px);background:var(--verdeclaro);color:var(--verde);font-size:calc(11px*var(--fs,1));font-weight:700}

/* beta.472 Privacidade no 1.º arranque */
.priv471{text-align:left;display:flex;flex-direction:column;gap:12px}.pr471{display:flex;flex-direction:column;gap:6px;background:var(--cartao);border:1px solid var(--borda,var(--verde));border-radius:12px;padding:12px}.pr471>span{font-weight:700;color:var(--texto)}
.pr471:has(.sw471){flex-direction:row;align-items:center;justify-content:space-between}
.sw471{width:46px;height:26px;border-radius:12px;border:0;background:var(--suave);position:relative;flex:none;padding:0}.sw471::after{content:'';position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .15s}.sw471.on{background:var(--verde)}.sw471.on::after{left:23px}
.o242p[data-p=priv]{overflow-y:auto}.priv471 .pill435{flex-wrap:wrap!important;overflow:visible!important}.priv471 .pill435 button{flex:1 1 auto}
.priv471 .pill435 button{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;max-width:none!important}
.priv471 #pv471bk{flex-direction:column!important}.priv471 #pv471bk button{width:100%;flex:none!important;min-width:0!important}
.priv471 .pill435 button{height:auto!important;min-height:34px;padding:8px 14px!important;line-height:1.2}
.priv471 .pill435,.priv471 .pill435 button{-webkit-mask-image:none!important;mask-image:none!important}
.priv471 .pill435>button span{max-width:none!important;white-space:normal!important}

/* beta.481: seleção de texto desativada em toda a app; só permitida nas caixas de entrada. Sem realce azul ao tocar. */
*{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}
input,textarea,[contenteditable],[contenteditable] *{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}
::selection{background:transparent}
input::selection,textarea::selection,[contenteditable]::selection,[contenteditable] *::selection{background:var(--verdeclaro,#cfe8d8)}

/* beta.482: botão + sempre por cima da barra de baixo (antes ficava 6 px por baixo do topo); a lista sobe para o último movimento não ficar tapado. */
.fabadd{bottom:calc(var(--navH,72px) + 8px + env(safe-area-inset-bottom))}
main{padding-bottom:calc(var(--navH,60px) + 86px)}

/* beta.486: Personalizado passa a ícone redondo ao lado do mês (Relatórios > Categorias e Gráficos). Tocar no mês abre o Período. */
.pers456{display:inline-flex;align-items:center;margin-left:6px}
.pers456 button{width:38px;height:38px;border-radius:50%;border:none;padding:0;display:inline-flex;align-items:center;justify-content:center;background:var(--verdeclaro,#e3f0e8);color:var(--verde,#1f7a56)}
.pers456 button.on{background:var(--verde,#1f7a56);color:var(--sobreVerde,#fff)}
.g238nav{gap:12px}
.g238nav span{min-width:120px}
.g238nav .pers456{margin-left:0}

/* beta.491: ilustração do estado vazio mais clara (um só sítio, vale em todos os ecrãs) */
.g238vz svg{opacity:.5}
.g238vz h4{color:var(--suave,#6b7a73)}
#movlist .g238vz{padding:0 16px 90px}
#movlist .g238vz svg{width:120px;height:99px}
#movlist .g238vz h4{font-size:calc(16px*var(--fs,1))}
#movlist .g238vz{padding:6px 16px 120px}
#movlist .g238vz svg{width:96px;height:79px}
#movlist .g238vz h4{margin:2px 0 2px}

/* beta.494: toque unificado nos gráficos - o item tocado fica destacado e o balão fica até tocares fora */
.sel457{stroke:var(--texto,#17211d)!important;stroke-width:2px!important;filter:brightness(1.12)}
.hr457.sel457{outline:2px solid var(--verde);outline-offset:1px;border-radius:8px;stroke:none!important}
.pers456 button.on{color:#fff}

.verdet495{margin-left:8px;border:0;border-radius:999px;padding:4px 12px;background:var(--verde);color:var(--sobreVerde);font:inherit;font-size:calc(13px*var(--fs,1));font-weight:600;cursor:pointer}
.perf498{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0;padding:8px 14px;border-radius:var(--pill-r,20px);background:var(--verdeclaro);color:var(--verde);font-weight:600;font-size:calc(13px*var(--fs,1))}.perf498 button{border:0;background:var(--cartao);color:var(--verde);border-radius:50%;width:26px;height:26px;font-size:calc(13px*var(--fs,1));cursor:pointer}

.livSep499{display:block;margin:12px auto;border:0;border-radius:var(--pill-r,20px);padding:10px 18px;background:var(--verdeclaro);color:var(--verde);font:inherit;font-weight:700;cursor:pointer}

.conqN501{margin:4px 2px 10px;color:var(--suave);font-weight:600}.conq501{display:flex;align-items:center;gap:12px;background:var(--cartao);border-radius:var(--r-lg,16px);padding:12px 14px;margin-bottom:8px;opacity:.55;filter:grayscale(1)}.conq501.on{opacity:1;filter:none;border-left:4px solid var(--verde)}.conq501 div{flex:1}.conq501 small{display:block;color:var(--suave)}.conqI501{font-size:calc(28px*var(--fs,1))}.conq501 em{font-style:normal;font-weight:700;color:var(--verde)}
/* beta507: elementos já redondos (pílula) mantêm-se redondos depois de uniformizar os cantos */
#persbtn199,#movprev,#movnext,#pesqBtn166,#movord,#fFav,#estgbtn187,.orcMesStep,.sw236 span,.sw217,#statsContas144,.g238seg button,.g238pills button,#seg324,#seg324 button,.r225p,.r225n{border-radius:999px!important}
body #orcMesNav141 .orcMesStep,body .g238seg button,body .g238seg button.on{border-radius:999px!important}
html body #graf238 .g238seg button,html body #graf238 .g238seg button:not(.on){border-radius:999px!important}
/* beta508: variáveis usadas no código mas nunca definidas passam a seguir o modo escuro (modo claro igual) */
body.escuro{--card:var(--cartao);--paper:var(--cartao);--tx:var(--texto);--mut:var(--suave);--bg:#101915;--linha:#2c3b35;--border:#2c3b35;--fundo2:#16221d}
.g238pills.pill435>button span{max-width:none!important}.g238pills.pill435>button{flex:0 0 auto!important}
:root{--fs:1}

:root{--fimSab:#2f7fd0;--fimDom:#d9534a;--fimTxt:#ffffff}
body.escuro{--fimSab:#3d78b8;--fimDom:#b8453d}
.diasep .ds-sem.fim513.sab{background:var(--fimSab);color:var(--fimTxt)}
.diasep .ds-sem.fim513.dom{background:var(--fimDom);color:var(--fimTxt)}
body.escuro .diasep .ds-sem.fim513.sab{background:var(--fimSab);color:var(--fimTxt)}
body.escuro .diasep .ds-sem.fim513.dom{background:var(--fimDom);color:var(--fimTxt)}
.calnomes .fim513t.sab{color:var(--fimSab);font-weight:700}
.calnomes .fim513t.dom{color:var(--fimDom);font-weight:700}
.calcel.fim513c.sab .cd{color:var(--fimSab);font-weight:700}
.calcel.fim513c.dom .cd{color:var(--fimDom);font-weight:700}
.diasep.hoje .ds-sem.fim513,body.escuro .diasep.hoje .ds-sem.fim513{background:var(--verde);color:var(--sobreVerde)}
/* beta.514: nível "Como o Money Manager": valor e nome maiores, texto secundário menor, totais maiores (só listas de Movimentos) */
body.fsmm514 .mov .movcat{font-size:calc(14px*var(--fs,1))}
body.fsmm514 .mov .movval{font-size:calc(15px*var(--fs,1))}
body.fsmm514 .mov .movsub{font-size:calc(11px*var(--fs,1))}
body.fsmm514 .mov .movdata{font-size:calc(9.5px*var(--fs,1))}
body.fsmm514 .movtotais .mt-l{font-size:calc(13px*var(--fs,1))}
body.fsmm514 .movtotais .mt-v{font-size:calc(19px*var(--fs,1))}
/* beta.515: barra principal por cima dos ecrãs de consulta */
body.consulta515 nav{z-index:9100!important}
body.consulta515 #graf238,body.consulta515 #over203.r249{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
/* beta.517: Movimentos compactos (variável --espV) e totais fixos no topo */
:root{--espV:4px}
#movview .homeVistas140{margin-bottom:var(--espV)!important;padding-top:var(--espV)!important;padding-bottom:var(--espV)!important}
#movview>h2{margin:var(--espV) 0 var(--espV)!important}
#movview .movtopo{padding-top:var(--espV);padding-bottom:var(--espV)}
#movview #movtabs{margin-bottom:var(--espV)!important}
#movview .movnav{margin-bottom:var(--espV)!important}
#movview .movtopo #movtotais{position:static!important;bottom:auto!important;z-index:auto!important;box-shadow:none!important;border:0!important;background:transparent!important;padding:2px 4px 0!important;margin:0!important}
body.escuro #movview .movtopo #movtotais{background:transparent!important;box-shadow:none!important;border:0!important}
#movview #movchips{margin:var(--espV) 0 var(--espV)!important;gap:6px!important}
#movview #movchips .ss403b{height:32px!important}
body.tecladosistema #movview .movtopo #movtotais{display:grid!important}
/* beta.518: em Movimentos só a pílula Dia/Calendário/Semana/Mês/Tudo (fila de ícones global escondida só aqui) */
#movview>.homeVistas140{display:none!important}
/* beta.520: sábado/domingo coloridos no seletor de data */
.dhw.sab,.dhd.sab:not(.on){color:var(--fimSab)}
.dhw.dom,.dhd.dom:not(.on){color:var(--fimDom)}
.dhw.sab,.dhw.dom{font-weight:700}
body.escuro .dhw.sab,body.escuro .dhd.sab:not(.on){color:#7ab3ef}
body.escuro .dhw.dom,body.escuro .dhd.dom:not(.on){color:#e0746a}
/* beta.521: só a barra de baixo; fila de ícones do topo escondida também em Início, Orçamento e Notas */
.homeVistas140{display:none!important}
/* beta.524: letra maior na folha Categoria (a pedido do Paulo; igual ao Money Manager) + vista "ver tudo" */
#sheetcat .catchip,#sheetcat .contachip{font-size:calc(14px*var(--fs,1));min-height:48px}
#sheetcat .catchip svg{width:32px;height:32px}
#sheetcat #subbox label{font-size:calc(15px*var(--fs,1))}
#sheetcat .catdica{font-size:calc(14px*var(--fs,1))}
#shcatall524{background:none;border:0;color:inherit;padding:6px;margin:0 2px;cursor:pointer}
#shcatall524 svg{width:24px;height:24px;display:block}
#shcatall524.on{color:var(--verde)}
#catTodas524{display:none;flex-direction:column;gap:6px;padding:6px;overflow-y:auto}
#sheetcat.todas524 #catchips,#sheetcat.todas524 #subbox{display:none!important}
#sheetcat.todas524 #catTodas524{display:flex}
#catTodas524 .tcat524{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;text-align:left;font:inherit;font-size:calc(15px*var(--fs,1));font-weight:700;color:var(--texto);background:var(--verdeclaro);border:1.5px solid color-mix(in srgb,var(--verde) 40%,transparent);border-radius:12px;padding:8px 12px;margin-top:6px}
#catTodas524 .tcat524 svg{width:28px;height:28px;flex:none}
#catTodas524 .tsubs524{display:flex;flex-wrap:wrap;gap:6px;padding:0 0 4px 12px}
#catTodas524 .tsub524{font:inherit;font-size:calc(14px*var(--fs,1));color:var(--texto);background:var(--cartao);border:1.5px solid color-mix(in srgb,var(--suave) 30%,transparent);border-radius:12px;padding:8px 12px;min-height:40px}
/* beta.525: letra mínima 13px (secundário) e 14px (listas) em Início e Movimentos, via --fs */
#mesatual,.scrot,#receitasmes,#despesasmes,.sech.hcol,.hcol,.contamoeda,.contauso186,.contaeur,.d7val,.d7dia,.movdata,.movnota,.movconv,.mt-l,#fFav,.ds-ano,.ds-sem{font-size:calc(13px*var(--fs,1))!important}
#livroAtual148,.resttl199,#homeview .pos,#homeview .neg,.patline,.movsub,.movdet,#vg241sub{font-size:calc(13px*var(--fs,1))!important}
.movcat{font-size:calc(14px*var(--fs,1))!important}
#mesatual{font-size:calc(12px*var(--fs,1))!important;white-space:nowrap}
/* beta.526: letra mínima em Mais e Definições (13px secundário), via --fs */
.sec268 b,.mgrp215>.sub285,.sub285,.mn215 small,.mn268 small,#defview .defcard>p,#defview .sub{font-size:calc(13px*var(--fs,1))!important}
nav button span{font-size:calc(12px*var(--fs,1))!important}
/* beta.527: letra mínima 13px nos restantes ecrãs (Contas, Orçamento, Subscrições, Ferramentas, Cópia, Relatórios, Lembretes), via --fs */
:is(#contasview,#orcview,#subview,#toolsview,#backupview,#totview,#notaview) :is(.sub,.defcard h4,.defcard label,.defcard p,.bkbtns button,.bkbtns label,h3.cvgrupo,.sa393c h4,.k,.s,.y,small,#totmes,#orcmes,.totval,#subOrc141 h3,#pct189r,.pct189row label){font-size:calc(13px*var(--fs,1))!important}
/* beta.531: seletor de emoji do livro: lista com scroll, botão sempre visível, último emoji escolhido (não os 2 primeiros) */
#sp403 .b:has(.grade434){display:flex!important;flex-direction:column;max-height:88vh;overflow:hidden!important}
#sp403 .zoom434{font-size:56px;margin:2px 0 6px;flex:none}
#sp403 .grade434{overflow-y:auto!important;-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:110px;touch-action:pan-y}
#sp403 .ok434{flex:none}
#sp403 .q403{flex:none}
/* beta.532: folhas de escolha (moeda etc.) abrem POR CIMA do assistente inicial (antes ficavam atrás e não se podia escolher) */
body:has(#onb242) #sp403{z-index:100001!important}
/* beta.532: moeda escolhida junto ao valor do assistente */
#o242val[data-m]::after{content:" " attr(data-m);color:var(--suave);font-size:.6em}
#o242c1{flex-wrap:wrap}
/* beta.532: PIN no passo Privacidade + avisos por cima do assistente */
body:has(#onb242) .dlg{z-index:100002!important}
#pv471pbox{display:flex;gap:8px;align-items:center}#pv471pbox.hidden{display:none}#pv471pbox input{flex:1;min-width:0}#pv471pbox button{flex:none;padding:10px 14px;border-radius:12px;border:0;background:var(--verde);color:#fff;font-weight:700}
/* beta.533: Primeiros passos menos apertado */
#pp242{margin:12px 14px;padding:14px 16px;border-radius:16px}
.pp242h{margin-bottom:8px}.pp242h b{font-size:calc(17px*var(--fs,1))}.pp242h span{font-size:calc(14px*var(--fs,1))}.pp242s{font-size:calc(15px*var(--fs,1));padding:6px 4px}
.pp242r{gap:16px;padding:14px 2px;border-top:1px solid var(--borda,#e3dfd3);font-size:calc(16px*var(--fs,1));min-height:56px}
.pp242r i{font-size:calc(26px*var(--fs,1));width:30px}.pp242r small{font-size:calc(13px*var(--fs,1));margin-top:2px}
.bkbtns select{flex:0 0 auto;padding:9px 10px;border-radius:12px;border:2px solid var(--verde);background:var(--cartao,#fff);color:var(--texto,#17211d);font-weight:700;font-size:calc(14px*var(--fs,1))}

/* beta.549: fundo escuro à escolha (preto, cinzento, castanho). Só muda superfícies; o destaque verde fica. */
body.escuro.fd549-preto{--cartao:#121212;background:#000000}
body.escuro.fd549-preto #splash{background:#000000;color:#e6efea}
body.escuro.fd549-preto{--cartao:#121212;--texto:#e6efea;--suave:#9db3aa;--verde:#57b98c;--vermelho:#e0746a;--sobreVerde:#000000;--verdeclaro:#24443a;--vermelhoclaro:#4a2420;background:#000000;color:#e6efea}
body.escuro.fd549-preto .kpk,body.escuro.fd549-preto .kpmc,body.escuro.fd549-preto input,body.escuro.fd549-preto textarea,body.escuro.fd549-preto select,body.escuro.fd549-preto .tipotoggle button,body.escuro.fd549-preto .catchip,body.escuro.fd549-preto .moedachip,body.escuro.fd549-preto .contachip,body.escuro.fd549-preto .vtabs button,body.escuro.fd549-preto .movnav button,body.escuro.fd549-preto .fchips select,body.escuro.fd549-preto .favchip,body.escuro.fd549-preto .pinbtn,body.escuro.fd549-preto .taxainp{background:#121212;color:#e6efea;border-color:#2a2a2a}
body.escuro.fd549-preto nav{background:#000000;border-top-color:#2a2a2a}
body.escuro.fd549-preto .contarow,body.escuro.fd549-preto .notaedit,body.escuro.fd549-preto .moedachip.on{background:#121212;border-color:#2a2a2a}
body.escuro.fd549-preto .teamcard{background:#121212;color:#e6efea}
body.escuro.fd549-preto #movq,body.escuro.fd549-preto #detalhes,body.escuro.fd549-preto #bktxt,body.escuro.fd549-preto #csvtxt{background:#121212;color:#e6efea;border-color:#2a2a2a}
body.escuro.fd549-preto .contarow button,body.escuro.fd549-preto #fotoprev button{background:#2a2a2a;color:#e6efea;border-color:#2a2a2a}
body.escuro.fd549-preto .orchojetag{color:#9db3aa;border-color:#2a2a2a}
body.escuro.fd549-preto .maistile{background:#121212;color:#e6efea}
body.escuro.fd549-preto .vtabs{border-color:#2a2a2a}
body.escuro.fd549-preto .movtotais{border-color:#2a2a2a;background:#000000;box-shadow:0 -2px 10px rgba(0,0,0,.4)}
body.escuro.fd549-preto .diasep .ds-sem{background:#121212;color:#9db3aa}
body.escuro.fd549-preto .frow{border-color:#2a2a2a}
body.escuro.fd549-preto .msform input{border-color:#2a2a2a}
body.escuro.fd549-preto .caticosel{border-color:#2a2a2a}
body.escuro.fd549-preto .mlq{border-color:#2a2a2a}
body.escuro.fd549-preto .msform select{border-color:#2a2a2a}
body.escuro.fd549-preto .mskgrid .kpk{border-color:#2a2a2a;background:#1c2924;color:#e8e4da}
body.escuro.fd549-preto #movnav .movord{background:#121212;color:#e6efea;border-color:#2a2a2a}
body.escuro.fd549-preto #kpsheet .kpop{background:#121212;color:#7fd6a8}
body.escuro.fd549-preto #addview{--linhaCampo:#2a2a2a}
body.escuro.fd549-preto #sheetconta .contagrupo,body.escuro.fd549-preto #contagrupos .contachip,body.escuro.fd549-preto #contagrupos .contagruposnomes{border-color:#2a2a2a}
body.escuro.fd549-preto #etiquetasPainel{background:#000000}
body.escuro.fd549-preto #marcadoresPainel{background:#000000}
body.escuro.fd549-preto .movtopo{background:#000000;border-bottom-color:#2a2a2a}
body.escuro.fd549-preto .lixo162row{border-bottom-color:#2a2a2a}
body.escuro.fd549-preto #movhoje{background:#000000}
/* beta.172: barra de separadores fica visivel ao rolar (tambem com teclado aberto) */ body.escuro.fd549-preto .homeVistas140{background:#000000}
body.escuro.fd549-preto .r222folha{background:#121212;color:#eee}
body.escuro.fd549-preto .c223folha{background:#121212;color:#eee}
body.escuro.fd549-preto .hbloco #ultimos{background:#121212}
body.escuro.fd549-preto #cvgrupos .contaLinha142{background:#121212}
body.escuro.fd549-preto #orcview .rec222btn,body.escuro.fd549-preto #orcview .orcdef,body.escuro.fd549-preto #orcview .orctotal,body.escuro.fd549-preto #orcview .orcdetcard,body.escuro.fd549-preto #orcview .orcMesStep{background:#121212!important}
body.escuro.fd549-preto #backupview .defcard,body.escuro.fd549-preto #toolsview .defcard,body.escuro.fd549-preto #ajudaview .faq180{background:#121212!important}
body.escuro.fd549-preto .chip291{background:#121212;border-color:#2a2a2a;color:#e6efea}
body.escuro.fd549-preto .rsum293{background:#121212;border-color:#2a2a2a}
body.escuro.fd549-preto .etq294.rec{background:#121212;color:#8fd0aa}
body.escuro.fd549-preto .etq294.pau{background:#2a2a2a;color:#c9d2cd}
body.escuro.fd549-preto .oa-lem296{background:#121212;border-color:#2a2a2a;color:#e6efea}
body.escuro.fd549-preto .lemav296{background:#121212}
body.escuro.fd549-preto .prest297b{background:#2a2a2a}
também dentro de #defview e cartões) */ body.escuro.fd549-preto select,body.escuro.fd549-preto #defview select,body.escuro.fd549-preto .selmcard select,body.escuro.fd549-preto .selmcard input,body.escuro.fd549-preto .fchips select,body.escuro.fd549-preto .msform select{background-color:#121212!important;color:#e6efea!important;border-color:#2a2a2a!important}
body.escuro.fd549-preto select option{background:#121212;color:#e6efea}
/* beta.354: cartões da lista das Definições legíveis no modo escuro */ body.escuro.fd549-preto .defmrow{background:var(--cartao);border-color:#2a2a2a;color:var(--texto)}
body.escuro.fd549-preto .defmrow:active{background:#121212}
body.escuro.fd549-preto{--pill-bar-bg:#000000}
body.escuro.fd549-preto #over203{background:#000000;color:var(--texto)}
/* beta508: variáveis usadas no código mas nunca definidas passam a seguir o modo escuro (modo claro igual) */ body.escuro.fd549-preto{--card:var(--cartao);--paper:var(--cartao);--tx:var(--texto);--mut:var(--suave);--bg:#000000;--linha:#2a2a2a;--border:#2a2a2a;--fundo2:#16221d}
body.escuro.fd549-cinza{--cartao:#26282c;background:#1a1b1e}
body.escuro.fd549-cinza #splash{background:#1a1b1e;color:#e6efea}
body.escuro.fd549-cinza{--cartao:#26282c;--texto:#e6efea;--suave:#9db3aa;--verde:#57b98c;--vermelho:#e0746a;--sobreVerde:#1a1b1e;--verdeclaro:#24443a;--vermelhoclaro:#4a2420;background:#1a1b1e;color:#e6efea}
body.escuro.fd549-cinza .kpk,body.escuro.fd549-cinza .kpmc,body.escuro.fd549-cinza input,body.escuro.fd549-cinza textarea,body.escuro.fd549-cinza select,body.escuro.fd549-cinza .tipotoggle button,body.escuro.fd549-cinza .catchip,body.escuro.fd549-cinza .moedachip,body.escuro.fd549-cinza .contachip,body.escuro.fd549-cinza .vtabs button,body.escuro.fd549-cinza .movnav button,body.escuro.fd549-cinza .fchips select,body.escuro.fd549-cinza .favchip,body.escuro.fd549-cinza .pinbtn,body.escuro.fd549-cinza .taxainp{background:#26282c;color:#e6efea;border-color:#3a3d42}
body.escuro.fd549-cinza nav{background:#1a1b1e;border-top-color:#3a3d42}
body.escuro.fd549-cinza .contarow,body.escuro.fd549-cinza .notaedit,body.escuro.fd549-cinza .moedachip.on{background:#26282c;border-color:#3a3d42}
body.escuro.fd549-cinza .teamcard{background:#26282c;color:#e6efea}
body.escuro.fd549-cinza #movq,body.escuro.fd549-cinza #detalhes,body.escuro.fd549-cinza #bktxt,body.escuro.fd549-cinza #csvtxt{background:#26282c;color:#e6efea;border-color:#3a3d42}
body.escuro.fd549-cinza .contarow button,body.escuro.fd549-cinza #fotoprev button{background:#3a3d42;color:#e6efea;border-color:#3a3d42}
body.escuro.fd549-cinza .orchojetag{color:#9db3aa;border-color:#3a3d42}
body.escuro.fd549-cinza .maistile{background:#26282c;color:#e6efea}
body.escuro.fd549-cinza .vtabs{border-color:#3a3d42}
body.escuro.fd549-cinza .movtotais{border-color:#3a3d42;background:#1a1b1e;box-shadow:0 -2px 10px rgba(0,0,0,.4)}
body.escuro.fd549-cinza .diasep .ds-sem{background:#26282c;color:#9db3aa}
body.escuro.fd549-cinza .frow{border-color:#3a3d42}
body.escuro.fd549-cinza .msform input{border-color:#3a3d42}
body.escuro.fd549-cinza .caticosel{border-color:#3a3d42}
body.escuro.fd549-cinza .mlq{border-color:#3a3d42}
body.escuro.fd549-cinza .msform select{border-color:#3a3d42}
body.escuro.fd549-cinza .mskgrid .kpk{border-color:#3a3d42;background:#1c2924;color:#e8e4da}
body.escuro.fd549-cinza #movnav .movord{background:#26282c;color:#e6efea;border-color:#3a3d42}
body.escuro.fd549-cinza #kpsheet .kpop{background:#26282c;color:#7fd6a8}
body.escuro.fd549-cinza #addview{--linhaCampo:#3a3d42}
body.escuro.fd549-cinza #sheetconta .contagrupo,body.escuro.fd549-cinza #contagrupos .contachip,body.escuro.fd549-cinza #contagrupos .contagruposnomes{border-color:#3a3d42}
body.escuro.fd549-cinza #etiquetasPainel{background:#1a1b1e}
body.escuro.fd549-cinza #marcadoresPainel{background:#1a1b1e}
body.escuro.fd549-cinza .movtopo{background:#1a1b1e;border-bottom-color:#3a3d42}
body.escuro.fd549-cinza .lixo162row{border-bottom-color:#3a3d42}
body.escuro.fd549-cinza #movhoje{background:#1a1b1e}
/* beta.172: barra de separadores fica visivel ao rolar (tambem com teclado aberto) */ body.escuro.fd549-cinza .homeVistas140{background:#1a1b1e}
body.escuro.fd549-cinza .r222folha{background:#26282c;color:#eee}
body.escuro.fd549-cinza .c223folha{background:#26282c;color:#eee}
body.escuro.fd549-cinza .hbloco #ultimos{background:#26282c}
body.escuro.fd549-cinza #cvgrupos .contaLinha142{background:#26282c}
body.escuro.fd549-cinza #orcview .rec222btn,body.escuro.fd549-cinza #orcview .orcdef,body.escuro.fd549-cinza #orcview .orctotal,body.escuro.fd549-cinza #orcview .orcdetcard,body.escuro.fd549-cinza #orcview .orcMesStep{background:#26282c!important}
body.escuro.fd549-cinza #backupview .defcard,body.escuro.fd549-cinza #toolsview .defcard,body.escuro.fd549-cinza #ajudaview .faq180{background:#26282c!important}
body.escuro.fd549-cinza .chip291{background:#26282c;border-color:#3a3d42;color:#e6efea}
body.escuro.fd549-cinza .rsum293{background:#26282c;border-color:#3a3d42}
body.escuro.fd549-cinza .etq294.rec{background:#26282c;color:#8fd0aa}
body.escuro.fd549-cinza .etq294.pau{background:#3a3d42;color:#c9d2cd}
body.escuro.fd549-cinza .oa-lem296{background:#26282c;border-color:#3a3d42;color:#e6efea}
body.escuro.fd549-cinza .lemav296{background:#26282c}
body.escuro.fd549-cinza .prest297b{background:#3a3d42}
também dentro de #defview e cartões) */ body.escuro.fd549-cinza select,body.escuro.fd549-cinza #defview select,body.escuro.fd549-cinza .selmcard select,body.escuro.fd549-cinza .selmcard input,body.escuro.fd549-cinza .fchips select,body.escuro.fd549-cinza .msform select{background-color:#26282c!important;color:#e6efea!important;border-color:#3a3d42!important}
body.escuro.fd549-cinza select option{background:#26282c;color:#e6efea}
/* beta.354: cartões da lista das Definições legíveis no modo escuro */ body.escuro.fd549-cinza .defmrow{background:var(--cartao);border-color:#3a3d42;color:var(--texto)}
body.escuro.fd549-cinza .defmrow:active{background:#26282c}
body.escuro.fd549-cinza{--pill-bar-bg:#1a1b1e}
body.escuro.fd549-cinza #over203{background:#1a1b1e;color:var(--texto)}
/* beta508: variáveis usadas no código mas nunca definidas passam a seguir o modo escuro (modo claro igual) */ body.escuro.fd549-cinza{--card:var(--cartao);--paper:var(--cartao);--tx:var(--texto);--mut:var(--suave);--bg:#1a1b1e;--linha:#3a3d42;--border:#3a3d42;--fundo2:#16221d}
body.escuro.fd549-castanho{--cartao:#2a201b;background:#1b1411}
body.escuro.fd549-castanho #splash{background:#1b1411;color:#e6efea}
body.escuro.fd549-castanho{--cartao:#2a201b;--texto:#e6efea;--suave:#9db3aa;--verde:#57b98c;--vermelho:#e0746a;--sobreVerde:#1b1411;--verdeclaro:#24443a;--vermelhoclaro:#4a2420;background:#1b1411;color:#e6efea}
body.escuro.fd549-castanho .kpk,body.escuro.fd549-castanho .kpmc,body.escuro.fd549-castanho input,body.escuro.fd549-castanho textarea,body.escuro.fd549-castanho select,body.escuro.fd549-castanho .tipotoggle button,body.escuro.fd549-castanho .catchip,body.escuro.fd549-castanho .moedachip,body.escuro.fd549-castanho .contachip,body.escuro.fd549-castanho .vtabs button,body.escuro.fd549-castanho .movnav button,body.escuro.fd549-castanho .fchips select,body.escuro.fd549-castanho .favchip,body.escuro.fd549-castanho .pinbtn,body.escuro.fd549-castanho .taxainp{background:#2a201b;color:#e6efea;border-color:#43342c}
body.escuro.fd549-castanho nav{background:#1b1411;border-top-color:#43342c}
body.escuro.fd549-castanho .contarow,body.escuro.fd549-castanho .notaedit,body.escuro.fd549-castanho .moedachip.on{background:#2a201b;border-color:#43342c}
body.escuro.fd549-castanho .teamcard{background:#2a201b;color:#e6efea}
body.escuro.fd549-castanho #movq,body.escuro.fd549-castanho #detalhes,body.escuro.fd549-castanho #bktxt,body.escuro.fd549-castanho #csvtxt{background:#2a201b;color:#e6efea;border-color:#43342c}
body.escuro.fd549-castanho .contarow button,body.escuro.fd549-castanho #fotoprev button{background:#43342c;color:#e6efea;border-color:#43342c}
body.escuro.fd549-castanho .orchojetag{color:#9db3aa;border-color:#43342c}
body.escuro.fd549-castanho .maistile{background:#2a201b;color:#e6efea}
body.escuro.fd549-castanho .vtabs{border-color:#43342c}
body.escuro.fd549-castanho .movtotais{border-color:#43342c;background:#1b1411;box-shadow:0 -2px 10px rgba(0,0,0,.4)}
body.escuro.fd549-castanho .diasep .ds-sem{background:#2a201b;color:#9db3aa}
body.escuro.fd549-castanho .frow{border-color:#43342c}
body.escuro.fd549-castanho .msform input{border-color:#43342c}
body.escuro.fd549-castanho .caticosel{border-color:#43342c}
body.escuro.fd549-castanho .mlq{border-color:#43342c}
body.escuro.fd549-castanho .msform select{border-color:#43342c}
body.escuro.fd549-castanho .mskgrid .kpk{border-color:#43342c;background:#1c2924;color:#e8e4da}
body.escuro.fd549-castanho #movnav .movord{background:#2a201b;color:#e6efea;border-color:#43342c}
body.escuro.fd549-castanho #kpsheet .kpop{background:#2a201b;color:#7fd6a8}
body.escuro.fd549-castanho #addview{--linhaCampo:#43342c}
body.escuro.fd549-castanho #sheetconta .contagrupo,body.escuro.fd549-castanho #contagrupos .contachip,body.escuro.fd549-castanho #contagrupos .contagruposnomes{border-color:#43342c}
body.escuro.fd549-castanho #etiquetasPainel{background:#1b1411}
body.escuro.fd549-castanho #marcadoresPainel{background:#1b1411}
body.escuro.fd549-castanho .movtopo{background:#1b1411;border-bottom-color:#43342c}
body.escuro.fd549-castanho .lixo162row{border-bottom-color:#43342c}
body.escuro.fd549-castanho #movhoje{background:#1b1411}
/* beta.172: barra de separadores fica visivel ao rolar (tambem com teclado aberto) */ body.escuro.fd549-castanho .homeVistas140{background:#1b1411}
body.escuro.fd549-castanho .r222folha{background:#2a201b;color:#eee}
body.escuro.fd549-castanho .c223folha{background:#2a201b;color:#eee}
body.escuro.fd549-castanho .hbloco #ultimos{background:#2a201b}
body.escuro.fd549-castanho #cvgrupos .contaLinha142{background:#2a201b}
body.escuro.fd549-castanho #orcview .rec222btn,body.escuro.fd549-castanho #orcview .orcdef,body.escuro.fd549-castanho #orcview .orctotal,body.escuro.fd549-castanho #orcview .orcdetcard,body.escuro.fd549-castanho #orcview .orcMesStep{background:#2a201b!important}
body.escuro.fd549-castanho #backupview .defcard,body.escuro.fd549-castanho #toolsview .defcard,body.escuro.fd549-castanho #ajudaview .faq180{background:#2a201b!important}
body.escuro.fd549-castanho .chip291{background:#2a201b;border-color:#43342c;color:#e6efea}
body.escuro.fd549-castanho .rsum293{background:#2a201b;border-color:#43342c}
body.escuro.fd549-castanho .etq294.rec{background:#2a201b;color:#8fd0aa}
body.escuro.fd549-castanho .etq294.pau{background:#43342c;color:#c9d2cd}
body.escuro.fd549-castanho .oa-lem296{background:#2a201b;border-color:#43342c;color:#e6efea}
body.escuro.fd549-castanho .lemav296{background:#2a201b}
body.escuro.fd549-castanho .prest297b{background:#43342c}
também dentro de #defview e cartões) */ body.escuro.fd549-castanho select,body.escuro.fd549-castanho #defview select,body.escuro.fd549-castanho .selmcard select,body.escuro.fd549-castanho .selmcard input,body.escuro.fd549-castanho .fchips select,body.escuro.fd549-castanho .msform select{background-color:#2a201b!important;color:#e6efea!important;border-color:#43342c!important}
body.escuro.fd549-castanho select option{background:#2a201b;color:#e6efea}
/* beta.354: cartões da lista das Definições legíveis no modo escuro */ body.escuro.fd549-castanho .defmrow{background:var(--cartao);border-color:#43342c;color:var(--texto)}
body.escuro.fd549-castanho .defmrow:active{background:#2a201b}
body.escuro.fd549-castanho{--pill-bar-bg:#1b1411}
body.escuro.fd549-castanho #over203{background:#1b1411;color:var(--texto)}
/* beta508: variáveis usadas no código mas nunca definidas passam a seguir o modo escuro (modo claro igual) */ body.escuro.fd549-castanho{--card:var(--cartao);--paper:var(--cartao);--tx:var(--texto);--mut:var(--suave);--bg:#1b1411;--linha:#43342c;--border:#43342c;--fundo2:#16221d}
body.fundotema549:not(.escuro){--bg549:color-mix(in srgb,var(--verde) 9%,#f7f5ee);--pill-bar-bg:color-mix(in srgb,var(--verde) 9%,#f7f5ee)}
body.fundotema549:not(.escuro) header{box-shadow:inset 0 -3px 0 color-mix(in srgb,var(--verde) 35%,transparent)}

/* beta.551: intensidade das cores dos gráficos (1 a 5; 3 = como sempre) */
body{--int551:1}
body.int551-1{--int551:.35}body.int551-2{--int551:.7}body.int551-4{--int551:1.35}body.int551-5{--int551:1.8}
.g238svg,.g238pie,.h359svg,.kspk460,.o226svg,.o226chart,.estgraf187,.r225anel,.resdonut,.o229anel,.o230anel,.o203cv,.intprev551 i{filter:saturate(var(--int551))}
.intprev551{display:flex;gap:6px;margin-top:6px}.intprev551 i{flex:1;height:22px;border-radius:6px}
.intprev551 i:nth-child(1){background:#e5484d}.intprev551 i:nth-child(2){background:#f5a524}.intprev551 i:nth-child(3){background:#2e9e6b}.intprev551 i:nth-child(4){background:#2f8fd8}.intprev551 i:nth-child(5){background:#7a4aa8}.intprev551 i:nth-child(6){background:#e0566e}

/* beta.552: abas visíveis */
.ab552{display:flex;align-items:center;gap:10px;padding:10px 8px;border-bottom:1px solid var(--nav-linha);background:var(--cartao);touch-action:none}
.ab552 .gr552{font-size:calc(20px*var(--fs,1));color:var(--suave);padding:0 6px;cursor:grab;touch-action:none;user-select:none}
.ab552 .nm552{flex:1;font-size:calc(14px*var(--fs,1))}
.ab552.arr552{background:var(--verdeclaro);box-shadow:0 2px 8px rgba(0,0,0,.18)}
.ab552 input{width:20px;height:20px}
#bkp554{flex-wrap:wrap}#bkp554 button{flex:0 1 auto}
/* beta.557: cartões de movimento e cabeçalho do dia */
.diasep .ds-r::before{content:'Receitas: ';font-weight:600}
.diasep .ds-d::before{content:'Despesas: ';font-weight:600}
html[lang=en] .diasep .ds-r::before{content:'Income: '}
html[lang=en] .diasep .ds-d::before{content:'Expenses: '}
.diasep .ds-tots{display:flex;flex-direction:column;align-items:flex-end;gap:1px}
.movetq{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}
.movetq .etq557{border:1.2px solid var(--suave);border-radius:999px;padding:1px 8px;font-size:calc(10.5px*var(--fs,1));font-weight:600;color:var(--texto);background:transparent}
.movconta557{display:inline-block;margin-top:3px;border-radius:999px;padding:1px 8px;font-size:calc(10.5px*var(--fs,1));font-weight:600;color:var(--suave);background:var(--verdeclaro)}

/* beta.569: correcoes visuais (i) e contrastes */
.i569{flex:0 0 auto;width:22px;height:22px;border-radius:50%;border:1px solid var(--linha,#e2e8e2);background:transparent;color:var(--suave);font-size:12px;font-weight:700;padding:0;margin-left:6px;cursor:pointer}
.p396barlab{display:block;font-size:10px;color:var(--suave);margin-top:1px}
.p396nota{text-align:center;color:var(--suave);font-size:calc(13px*var(--fs,1));padding:12px 8px;margin:4px 0}
#orcview .orcdef{color:var(--verdescuro,var(--texto))!important}
body.escuro #orcview .orcdef:not(.orcdest581){color:var(--verde)!important}
#r159Painel .ss403b .t{white-space:normal;overflow:visible;text-overflow:unset}
#r159add{min-height:46px!important;padding:12px 22px!important;font-weight:700;font-size:calc(15px*var(--fs,1))!important}

/* beta.570 */
.vzbtn570{margin:2px 0 8px;background:none;border:1.5px dashed var(--verde);color:var(--verdescuro);border-radius:12px;padding:6px 14px;font-weight:700;font-size:calc(13px*var(--fs,1));cursor:pointer}

/* beta.572 */
.l572esv{background:none;border:1.5px solid var(--vermelho,#c0392b);color:var(--vermelho,#c0392b);border-radius:12px;padding:6px 12px;font-weight:700;font-size:calc(13px*var(--fs,1));cursor:pointer}
.l572v{font-size:calc(28px*var(--fs,1));font-weight:800;text-align:center;padding:10px 0 14px}
.l572v.neg{color:var(--corDes)}.l572v.pos{color:var(--verde)}
.l572l{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--linha,#e2e8e2);font-size:calc(14px*var(--fs,1))}
.l572l span{color:var(--suave)}.l572l b{text-align:right}
.l572b{display:flex;gap:8px;margin-top:12px}
.l572b .emp392add{flex:1;margin:0}
.l572del{flex:1;background:none;border:1.5px solid var(--vermelho,#c0392b);color:var(--vermelho,#c0392b);border-radius:12px;padding:12px;font-weight:700;font-size:calc(14px*var(--fs,1));cursor:pointer}

/* beta.573 */
.vermais{display:block;width:100%;margin:8px 0 0;padding:10px 12px;border:1.5px solid var(--verde);border-radius:14px;background:transparent;color:var(--verde);font-size:var(--fs);font-weight:600;text-align:center}
.vermais:active{background:var(--verdeSuave,#e8f3ee)}

/* beta.575 */
#movchips.recolhidos575{display:none}
#movchips.recolhidos575.abertos575{display:flex}
.f575btn{margin:0 0 8px}
.calgrid.cal575{padding-bottom:180px}

/* beta.578 */
.pag578card{background:var(--cartao);border:1px solid var(--borda);border-radius:12px;padding:10px;margin-bottom:8px}
.pag578txt{display:block;margin-bottom:8px}
.pag578txt strong{display:block;font-size:calc(14px*var(--fs,1));color:var(--verdescuro)}
.pag578txt span{font-size:calc(13px*var(--fs,1));color:var(--suave)}
.pag578btns{display:flex;gap:8px}
.pag578ok{flex:1;background:var(--verde);color:#fff;border:none;border-radius:10px;padding:8px;font-size:calc(14px*var(--fs,1))}
.pag578no{flex:1;background:#f3efe7;border:1px solid var(--borda);border-radius:10px;padding:8px;font-size:calc(14px*var(--fs,1));color:var(--texto)}

/* beta.579 */
#qta579{position:fixed;inset:0;z-index:5200;display:flex;align-items:flex-end}
#qta579.hidden{display:none}
#qta579 .qta579bg{position:absolute;inset:0;background:rgba(0,0,0,.35)}
.qta579card{position:relative;background:var(--cartao);width:100%;border-radius:16px 16px 0 0;padding:14px;border-top:1px solid var(--borda)}
.qta579tit{font-size:calc(15px*var(--fs,1));color:var(--verdescuro);margin-bottom:10px;font-weight:600}
body.escuro .qta579tit{color:var(--texto)}
.qta579modos{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.qta579modos button{border:1px solid var(--borda);background:#f3efe7;border-radius:999px;padding:7px 12px;font-size:calc(13px*var(--fs,1));color:var(--texto);min-height:48px}
.qta579modos button.on{background:var(--verde);color:#fff;border-color:var(--verde)}
body.escuro .qta579modos button{background:var(--verdeclaro);border-color:transparent;color:var(--texto)}
body.escuro .qta579modos button.on{background:var(--verde);color:var(--sobreVerde);border-color:var(--verde)}
body.escuro #qta579limpar{background:var(--verdeclaro);border-color:transparent}
#sp403 .x{color:var(--texto)}
.qta579vals{display:flex;gap:8px;margin-bottom:12px}
.qta579vals input{flex:1;border:1px solid var(--borda);border-radius:10px;padding:9px;font-size:calc(14px*var(--fs,1));background:#fff;color:var(--texto)}
.qta579vals input.hidden{display:none}
.qta579btns{display:flex;gap:8px}
#qta579limpar{flex:1;background:#f3efe7;border:1px solid var(--borda);border-radius:10px;padding:9px;font-size:calc(14px*var(--fs,1));color:var(--texto)}
#qta579ok{flex:1;background:var(--verde);color:var(--sobreVerde);border:none;border-radius:10px;padding:9px;font-size:calc(14px*var(--fs,1))}
#fQuantia579.on{background:var(--verde);color:#fff;border-color:var(--verde)}

#qta579h1,#qta579h2{background:#fff}
/* beta.580 */
#saldoConta580{display:flex;justify-content:space-between;align-items:center;background:var(--cartao);border:1px solid var(--borda);border-radius:12px;padding:9px 12px;margin-bottom:8px}
#saldoConta580.hidden{display:none}
#saldoConta580 span{font-size:calc(13px*var(--fs,1));color:var(--suave)}
#saldoConta580 strong{font-size:calc(15px*var(--fs,1));color:var(--verdescuro)}
/* beta.581 */
.orcvazio581{text-align:center;padding:26px 10px 6px}
.orcvazio581 .vazio{font-size:calc(15px*var(--fs,1))}
.vazio581sub{color:var(--suave);font-size:calc(13px*var(--fs,1));margin-top:4px}
.orcdef.orcdest581{display:block;width:100%;margin-top:10px;background:var(--verde);color:#fff;border:none;border-radius:12px;padding:12px;font-size:calc(15px*var(--fs,1))}
/* beta.582 */
#comuns582{margin-bottom:12px}
.comuns582tit{font-size:calc(13px*var(--fs,1));color:var(--suave);margin-bottom:6px}
.comuns582btns{display:flex;flex-wrap:wrap;gap:8px}
.comum582{border:1px solid var(--borda);background:var(--cartao);border-radius:999px;padding:7px 12px;font-size:calc(13px*var(--fs,1));color:var(--texto);text-align:left}
.faq180.comum582alvo{outline:2px solid var(--verde);border-radius:12px}
/* beta.583 */
.ia583btn{display:inline-block;margin-top:6px;border:1px solid var(--verde);background:none;color:var(--verde);border-radius:999px;padding:5px 12px;font-size:calc(13px*var(--fs,1))}

/* beta.586 */
.b586btn{background:none;border:0;padding:4px;cursor:pointer;color:#fff}
.b586btn svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;display:block}
.b586livro{border:1px solid rgba(255,255,255,.45);background:none;color:#fff;border-radius:999px;padding:3px 9px;font-size:calc(12px*var(--fs,1));cursor:pointer;white-space:nowrap;max-width:130px;overflow:hidden;text-overflow:ellipsis}
.b586dot{display:inline-block;width:9px;height:9px;flex:none;border-radius:50%;margin-left:4px;align-self:center}
.b586folha{position:fixed;right:10px;top:52px;background:var(--cartao,#fff);color:var(--texto,#17211d);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.25);padding:6px;z-index:9998;display:flex;flex-direction:column;min-width:190px}
.b586folha button{background:none;border:0;text-align:left;padding:10px 12px;font-size:calc(15px*var(--fs,1));color:inherit;cursor:pointer;border-radius:8px}
.b586folha button:active{background:var(--verdeclaro,#e3f2ea)}
.b586fechar{color:var(--suave,#5c6b64)!important;font-size:calc(13px*var(--fs,1))!important}

body.barra586 header h1::before{content:none;margin:0}

/* beta.586 v2: logo Variante 2 na barra (só com a opção ligada) */
body.barra586 header h1{display:flex;align-items:center}
#b586logo{height:24px;width:24px;object-fit:contain;margin-right:6px;border-radius:6px}

/* beta.587: anterior/seguinte no detalhe do movimento */
#nav587{margin-left:auto;display:inline-flex;gap:6px}
#nav587 button{width:34px;height:34px;border-radius:50%;border:1px solid var(--borda,#d8e0da);background:var(--cartao,#fff);color:var(--texto,#17211d);font-size:20px;line-height:1;cursor:pointer;padding:0}
#nav587 button:disabled{opacity:.35;cursor:default}

/* beta.588: separador Lembretes no Calendário */
.cal588pills{margin:0 0 10px;display:flex}
.cal588dots{display:flex;gap:3px;justify-content:center;margin-top:3px;align-items:center}
.cal588dot{width:7px;height:7px;border-radius:50%}
.cal588mais{font-size:10px;color:var(--suave,#5c6b64)}
.cal588cab{display:flex;align-items:center;justify-content:space-between;gap:8px}
.cal588add{border:1px solid var(--verde,#2f6b4f);color:var(--verde,#2f6b4f);background:none;border-radius:999px;padding:5px 12px;font-size:calc(13px*var(--fs,1));cursor:pointer;white-space:nowrap}

/* beta.589: sino de avisos no Início */
#sino589{position:relative;background:none;border:0;padding:4px;cursor:pointer;color:#fff}
#sino589 svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;display:block}
#sino589n{position:absolute;top:-3px;right:-5px;min-width:16px;height:16px;border-radius:8px;background:#c0392b;color:#fff;font-size:10px;font-weight:800;line-height:16px;text-align:center;padding:0 3px}
.sino589f{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:9999;display:flex;align-items:flex-end}
.sino589card{background:var(--cartao,#fff);color:var(--texto,#17211d);width:100%;border-radius:16px 16px 0 0;padding:14px;max-height:70vh;display:flex;flex-direction:column}
.sino589h{display:flex;align-items:center;justify-content:space-between}
.sino589h h3{margin:0}
.sino589x{background:none;border:0;font-size:18px;cursor:pointer;color:var(--suave,#5c6b64);padding:6px;min-width:48px;min-height:48px}
.sino589c{overflow-y:auto;margin-top:6px}
.sino589row{display:flex;align-items:center;gap:8px;width:100%;background:none;border:0;padding:10px 4px;text-align:left;cursor:pointer;color:inherit;font-size:calc(14px*var(--fs,1));border-bottom:1px solid var(--borda,#e5ebe6)}
.sino589t{flex:1}
.sino589d{color:var(--suave,#5c6b64);font-size:calc(12px*var(--fs,1))}
.sino589pag{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 4px;border-bottom:1px solid var(--borda,#e5ebe6);font-size:calc(14px*var(--fs,1))}
.sino589pb{display:flex;gap:6px}
.sino589pb button{border:1px solid var(--verde,#2f6b4f);color:var(--verde,#2f6b4f);background:none;border-radius:999px;padding:4px 10px;font-size:calc(12px*var(--fs,1));cursor:pointer}
/* beta.596 visual do resumo da viagem */
.vg596hero{position:relative;background:var(--verdescuro);color:var(--sobreVerde);border-radius:16px;padding:14px 64px 14px 16px;margin:8px 0}
.vg601flag{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:38px;line-height:1}
.vg596hero small{display:block;opacity:.75;font-size:calc(11px*var(--fs,1));letter-spacing:.08em;text-transform:uppercase}
.vg596hero b{display:block;font-size:calc(24px*var(--fs,1));margin:2px 0}
.vg596hero span{opacity:.85;font-size:calc(13px*var(--fs,1))}
.vg596card{background:var(--cartao);border-radius:var(--r-md);padding:12px 14px;margin:8px 0}
.vg596card>small{display:block;opacity:.7;font-size:calc(11px*var(--fs,1));letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}
.vg596row{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.vg596row b{font-size:calc(20px*var(--fs,1))}
.vg596row span{opacity:.7;font-size:calc(13px*var(--fs,1))}
.vg596card .orcbar{margin:10px 0 6px}
.vg596pct{font-size:calc(13px*var(--fs,1));opacity:.85;margin:0 0 8px}
.vg596edit{width:100%;text-align:center;padding:9px;border-radius:12px;border:1px solid #8884;background:transparent;color:inherit;font-size:calc(14px*var(--fs,1))}
.vg596rest{font-size:calc(13px*var(--fs,1));opacity:.85;margin:4px 0 0}
.vg596rest.over{color:var(--vermelho);opacity:1;font-weight:600}
/* beta.598 pontinho: movimento que conta para a viagem só pelas datas */
.vg598dot{width:8px;height:8px;border-radius:50%;background:var(--verde);display:inline-block;flex:none;align-self:center;margin-right:6px}

/* beta.603: faixa do Modo privado */
#priv603bar{display:block;width:100%;background:var(--amarelo,#f2b01e);color:#3a2b00;font-weight:700;font-size:calc(12px*var(--fs,1));padding:6px 10px;border:0;text-align:center}

/* beta.608: botão "?" discreto no cartão do orçamento da viagem */
.vg608q{margin-left:8px;width:22px;height:22px;border-radius:50%;border:1.5px solid var(--verde);background:none;color:var(--verde);font-size:calc(13px*var(--fs,1));font-weight:700;line-height:1;padding:0;vertical-align:middle;cursor:pointer}
.vg608q:active{background:var(--verde);color:#fff}

/* beta.624: barra de cima — alvos de toque >=44px, espacamento, seletor de livro mais curto (Paulo 20:22) */
body.barra586 header{gap:2px}
body.barra586 header h1{flex:0 0 auto;white-space:nowrap}
.b586btn{background:none;border:0;padding:10px;cursor:pointer;color:#fff;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.b586btn svg{width:22px;height:22px}
.b586livro{max-width:none;min-width:0;flex:1 1 auto;min-height:44px;display:inline-flex;align-items:center;justify-content:center;text-align:center}
.b586dot{margin-left:0}

/* ===== beta.625: Pesquisar (Flujo-2, aprovado Paulo 20:35) + Adicionar em 2 passos (aprovado 20/10 13:50) + filtros saem de Movimentos (nada apagado: ficam no Pesquisar e em ⋮ > Filtros) ===== */
#movchips{display:none}
#passo625{padding:6px 2px}
.passo625t{font-weight:600;margin:4px 2px 12px}
.passo625cards{display:flex;flex-direction:column;gap:12px}
.p625card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:16px;border-radius:16px;border:2px solid transparent;background:var(--cartao);box-shadow:var(--sombra,0 1px 4px rgba(0,0,0,.08));text-align:left;min-height:64px}
.p625card b{font-size:16px}
.p625card span{font-size:12px;color:var(--suave)}
.p625d{color:var(--vermelho)}.p625r{color:var(--verde)}.p625t{color:var(--acento,#3a6ea5)}
.p625card:active{transform:scale(.98)}
#addview.p625s1>*:not(.vhead):not(#passo625){display:none!important}
#addview.p625s1 #passo625{display:block!important}
#avz625{margin:10px 0}
#avz625t{width:100%;display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:12px;background:var(--cartao);box-shadow:var(--sombra,0 1px 4px rgba(0,0,0,.08));font-weight:600;min-height:44px}
#avz625c{margin-top:4px}
#avz625.fechado #avz625c{display:none}
#avz625.fechado #avz625seta{transform:rotate(-90deg)}
.pesq625box{padding:10px 12px 4px}
#pesq625q{width:100%;padding:13px 14px;border-radius:14px;border:1px solid var(--nav-linha);background:var(--cartao);font-size:15px;min-height:44px}
.pesq625chips{display:flex;gap:8px;padding:10px 12px 4px}
.pesq625chips button{flex:1;padding:10px 0;border-radius:999px;background:var(--cartao);font-weight:600;font-size:13px;min-height:44px;box-shadow:var(--sombra,0 1px 4px rgba(0,0,0,.08))}
.pesq625chips button.on{background:var(--verde);color:#fff}
.pesq625row{display:flex;gap:8px;padding:8px 12px}
.pesq625btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 0;border-radius:14px;background:var(--cartao);font-weight:600;font-size:13px;min-height:44px;box-shadow:var(--sombra,0 1px 4px rgba(0,0,0,.08))}
#pesq625cnt{padding:8px 14px 2px;margin:0}
#pesq625res{padding:0 12px 20px;display:flex;flex-direction:column;gap:8px}
#pesq625vazio{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--suave);padding:70px 20px;text-align:center}
.pesq625sh{position:fixed;inset:0;z-index:960}
.pesq625sh .f{position:absolute;inset:0;background:rgba(0,0,0,.4)}
.pesq625sh .b{position:absolute;left:0;right:0;bottom:0;background:var(--fundo);border-radius:18px 18px 0 0;padding:14px;max-height:76%;display:flex;flex-direction:column;gap:8px}
.pesq625sh .b h3{margin:0 0 4px}
.pesq625sh .lst{overflow-y:auto;display:flex;flex-direction:column;gap:4px}
.pesq625sh .lst button{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;background:var(--cartao);text-align:left;min-height:44px}
.pesq625sh .lst button.on{outline:2px solid var(--verde)}
.pesq625sh .acoes{display:flex;gap:8px}
.pesq625sh .acoes button{flex:1;padding:12px 0;border-radius:12px;font-weight:600;min-height:44px;background:var(--cartao)}
.pesq625sh .acoes .okb{background:var(--verde);color:#fff}
.pesq625sh .datas{display:flex;gap:8px}
.pesq625sh .datas label{flex:1;font-size:12px;color:var(--suave);display:flex;flex-direction:column;gap:4px}
.pesq625sh .datas input{padding:10px;border-radius:10px;border:1px solid var(--nav-linha);background:var(--cartao);font-size:14px;min-height:44px}

/* beta.625: botão «Barras» dos Relatórios já não fica tapado pelo + nem pela barra (queixa do Paulo 20:39) */
#totview .estgraf187{margin-bottom:110px}
#totview .estgraf187 #estgbtn187{min-height:44px}

/* beta.626: Orçamento em semicírculo (Flujo-1) */
#semi626{margin:10px 12px 4px;padding:12px 14px;border-radius:16px;background:var(--cartao);box-shadow:var(--sombra,0 1px 4px rgba(0,0,0,.08))}
.semi626t{font-weight:700;margin-bottom:2px}
.semi626svg{width:100%;display:block}
.semi626row{display:flex;justify-content:space-between;margin-top:2px}
.semi626row small{display:block;color:var(--suave);font-size:11px}
.semi626row b{font-size:15px}

/* beta.626: Scanner de recibos (Flujo-6) */
.scan626{padding:16px 14px;display:flex;flex-direction:column;gap:10px}
.scan626 p{margin:0}
#scan626est{display:flex;flex-direction:column;align-items:center;gap:10px;padding:26px 0}
.scan626spin{width:34px;height:34px;border-radius:50%;border:4px solid var(--nav-linha);border-top-color:var(--verde);animation:spin626 1s linear infinite}
@keyframes spin626{to{transform:rotate(360deg)}}
/* beta.643: IRS */
#irs643view{position:fixed;inset:0;background:var(--bg,#f7f5ef);display:flex;flex-direction:column;z-index:1500;overflow-y:auto}
#irs643view.hidden{display:none}
.escuro #irs643view{background:#17251f}
.irs643row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--borda,#d8d2c2)}
.irs643row select{max-width:190px}
.irs643setor{display:flex;justify-content:space-between;padding:8px 0 2px;color:var(--verde,#1d7a54)}
.irs643cat{display:flex;justify-content:space-between;padding:2px 0 2px 14px;color:var(--txt2,#5c584e);font-size:14px}
#irs643view h3{margin:16px 0 6px}
#irs643view .reg139Corpo{padding-bottom:90px}

/* ===== beta.678: correcoes com antes/depois (👍 Paulo via main) ===== */
/* (2) chip «Viagem» ja nao sai do ecra: a barra dos Relatorios quebra linha e o chip corta com reticencias */
#totview .movnav{flex-wrap:wrap;row-gap:6px}
#totvg594{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#totview>.movnav #totvg594{width:auto;min-width:38px;max-width:100%;padding:0 14px;border-radius:19px;font-size:calc(13px*var(--fs,1));font-weight:600}
/* (3) faixa de resumo automatico legivel nos temas escuros */
body.escuro #frase246{background:var(--cartao,#1c2b26);color:var(--texto,#e8ece9)}
/* (4) valores dos cartoes do Resumo do Inicio ja nao partem em varias linhas */
.resval199 span,.resval199 b{white-space:nowrap}

/* ===== t36-2 (22 out, 👍 Paulo 15:06 via main): recuos safe-area para o edge-to-edge que o Android 15 impõe a targetSdk 35+. Sem viewport-fit=cover no index.html os env() valiam 0 — por isso as regras antigas com env() nunca fizeram efeito. Em Android antigo env()=0 e nada muda. Não usa user-scalable=no nem 100vh fixo (acessibilidade/teclado). */
header{padding-top:calc(10px + env(safe-area-inset-top))}
body.hdr442 header{padding-top:0}
main{padding-bottom:calc(var(--navH,60px) + 22px + env(safe-area-inset-bottom))}
.movtotais{bottom:calc(var(--navH,60px) + env(safe-area-inset-bottom))}
#ent306rod{bottom:calc(var(--navH,60px) + env(safe-area-inset-bottom))}
#fabmenu{bottom:calc(var(--navH,60px) + 126px + env(safe-area-inset-bottom))}
#rep667{bottom:calc(76px + env(safe-area-inset-bottom))!important}
#rep667 .bug761{width:calc(13px*var(--fs,1));height:calc(13px*var(--fs,1));vertical-align:-2px;margin-right:4px}
.bbody{padding-bottom:calc(18px + env(safe-area-inset-bottom))}
.kpcard{padding-bottom:max(16px,env(safe-area-inset-bottom))}
#repov667 .rep667card{padding-bottom:calc(26px + env(safe-area-inset-bottom))!important}
#reg139Painel,#livrosPainel148,#iaview,#orcdet{padding-top:env(safe-area-inset-top)}
#iaview,#orcdet{padding-bottom:env(safe-area-inset-bottom)}
#reg139Painel .reg139Corpo{padding-bottom:calc(40px + env(safe-area-inset-bottom))}
#onb242{padding-top:calc(16px + env(safe-area-inset-top));padding-bottom:calc(20px + env(safe-area-inset-bottom))}
#lockview{padding-bottom:env(safe-area-inset-bottom)}
#oktoast{top:calc(64px + env(safe-area-inset-top))}

/* ===== beta.681: faixa sólida atrás da barra de estado (👍 Paulo 15:35:27 via main) — com edge-to-edge (Android 15 / targetSdk 35+) o conteúdo passa por baixo da hora/ícones; a faixa esconde-o. Altura 0 onde não há inset (Android antigo, simulador) = nada muda. pointer-events:none para nunca bloquear toques. */
body::after{content:'';position:fixed;top:0;left:0;right:0;height:env(safe-area-inset-top);background:var(--verdescuro,#14342c);z-index:1400;pointer-events:none}

/* beta.683 (👍 Paulo 15:57:13 via main): título «Mais» sai do ecrã Mais (redundante com o separador); acesso aos atalhos passa ao chip 🔧 no canto dos cards */
#maisview>h2{display:none}

/* beta.684 (👍 Paulo 16:01:55+16:01:58 via main): painel «Atalhos do topo» no estilo Blocos do Início — folha abaixo da barra de estado, linhas com pega de arrasto + interruptor, «Repor o padrão» no topo, contador + «Fechar» no fim. Nada removido: os mesmos atalhos, o mesmo máximo de 4, arrasto dos cards no ecrã «Mais» mantido. */
.esc670ov{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:960;display:flex;align-items:flex-end}
.esc670folha{background:var(--cartao,#fff);color:var(--texto,#1d2723);width:100%;border-radius:18px 18px 0 0;padding:18px 16px calc(14px + env(safe-area-inset-bottom));max-height:calc(100% - env(safe-area-inset-top) - 40px);display:flex;flex-direction:column;box-sizing:border-box}
.esc670cab{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.esc670cab h3{margin:0;font-size:calc(20px*var(--fs,1))}
.esc670cab button{border:0;background:none;color:var(--verde,#1d7a54);font:inherit;font-weight:700;font-size:calc(14px*var(--fs,1));cursor:pointer;padding:4px 0}
.esc670dica{margin:2px 0 10px}
.esc670lista{overflow-y:auto;min-height:0;-webkit-overflow-scrolling:touch}
.esc670lin{display:flex;align-items:center;gap:10px;padding:11px 4px;border-bottom:1px solid var(--nav-linha,#e2ded2)}
.esc670lin:last-child{border-bottom:0}
.esc670pega{color:var(--suave,#8a938e);font-size:18px;cursor:grab;padding:2px 6px;touch-action:none;user-select:none;-webkit-user-select:none}
.esc670nome{flex:1;font-size:calc(16px*var(--fs,1));font-weight:600}
.esc670lin input:not(:checked)~span{}
.esc670lin:has(input:not(:checked)) .esc670nome{font-weight:400}
.esc670arr{opacity:.55}
.esc670msg{color:var(--vermelho,#c0392b);min-height:18px;margin:6px 0 0;font-size:calc(13px*var(--fs,1))}
.esc670rod{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}
#esc670ok{border:0;border-radius:14px;background:var(--verde,#1d7a54);color:var(--sobreVerde,#fff);font:inherit;font-weight:700;font-size:calc(15px*var(--fs,1));padding:10px 26px;cursor:pointer}

/* beta.685 (👍 Paulo 16:13:32 via main): pega de 2 riscos no topo de cada cartão do ecrã «Mais» — pista visual de que se podem arrastar. Só indicador; o arrasto continua no cartão inteiro. */
#maistemas656>button.defcard{position:relative;padding-top:24px!important}
#maistemas656>button.defcard::before{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:26px;height:8px;border-top:2.5px solid var(--suave,#8a938e);border-bottom:2.5px solid var(--suave,#8a938e);opacity:.6;border-radius:2px;pointer-events:none}
/* beta.697: arco do splash gira continuamente durante o carregamento real (sem % falsa nem progresso fingido) */
#sp-arco.gira697{transform-origin:37px 37px;animation:spgira697 1.1s linear infinite}
@keyframes spgira697{to{transform:rotate(360deg)}}

/* beta.698: folha Montante na area da referencia (36%), carrossel ciclico de moedas com bandeiras grandes, 9 teclas rapidas 3x3 configuraveis na roda. */
#kpsheet>.kpcard{padding:6px 10px max(6px,env(safe-area-inset-bottom))}
#kpsheet .kptop{padding:0 2px 4px}
#kpsheet .kptop span{flex:1;text-align:left;padding-left:6px}
#kpgear{background:none;border:none;padding:4px 6px;color:var(--suave)}
#kpzona{display:flex;gap:8px;align-items:stretch;padding-bottom:4px;height:112px}
#kpzona #kpmoedas{flex:1;display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:4px;align-items:center;margin:0;padding:0;scrollbar-width:none;-webkit-overflow-scrolling:touch}
#kpzona #kpmoedas::-webkit-scrollbar{display:none}
#kpzona .kpmc{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:44px;padding:4px 6px;border-radius:12px}
#kpzona .kpmc .kpb{font-size:calc(20px*var(--fs,1));line-height:1.15}
#kpzona .kpmc .kbc{font-size:calc(10px*var(--fs,1));font-weight:700;line-height:1.1}
#kpzona .kpmedit{border-style:dashed}
#kpzona .kpdir{flex:1.35;display:grid;grid-template-rows:repeat(3,1fr);gap:4px}
#kpzona .kpdir .kprap{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:0;margin:0;overflow:visible}
#kpzona .kprapk{min-height:0;min-width:0;padding:2px 4px;font-size:calc(13px*var(--fs,1))}
#kpzona .kpqv{border-style:dashed;opacity:.55}
#kpcfg698{position:fixed;inset:0;z-index:9600;background:rgba(15,40,34,.45);display:flex;align-items:center;justify-content:center}
#kpcfg698.hidden{display:none}
.kpcfgc{background:var(--cartao,#fff);color:var(--texto,#222);width:92%;max-width:340px;max-height:86dvh;display:flex;flex-direction:column;border-radius:16px;padding:12px;box-shadow:0 6px 28px rgba(0,0,0,.28)}
.kpcfgt{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:calc(16px*var(--fs,1));margin-bottom:4px}
.kpcfgt button{border:0;background:none;font-size:calc(18px*var(--fs,1));color:inherit}
.kpcfgh{font-size:calc(12px*var(--fs,1));opacity:.75;margin-bottom:6px}
.kpcfglista{overflow-y:auto;min-height:0}
.kpcfgl{display:flex;align-items:center;gap:8px;padding:5px 0;border-top:1px solid #e5ddcc}
.kpcfgv{flex:1;min-width:0;font-weight:700;font-size:calc(15px*var(--fs,1));border:1px solid #cfc7b8;border-radius:8px;padding:6px 8px;background:var(--cartao,#fff);color:inherit}
.kpcfgops{display:flex;gap:4px}
.kpcfgops button{border:1px solid #cfc7b8;background:var(--cartao,#fff);color:inherit;border-radius:8px;padding:4px 9px;font-size:calc(13px*var(--fs,1))}
.kpcfgops button.on{background:var(--verde,#1f6f54);border-color:var(--verde,#1f6f54);color:#fff}
.kpcfgguarda{width:100%;margin-top:8px;border:0;border-radius:12px;padding:11px;font-weight:700;font-size:calc(15px*var(--fs,1));background:var(--verde,#1f6f54);color:#fff}
.kpcfgnota{font-size:calc(11px*var(--fs,1));opacity:.65;text-align:center;margin-top:5px}

/* ===== beta.699: indicadores de posicao (pontinhos) em caixas que deslizam na horizontal — sem setas; gestos mantidos ===== */
.kdots699{position:absolute;display:none;justify-content:center;align-items:center;gap:5px;pointer-events:none;z-index:6;height:0;overflow:visible}
.kdots699 i{display:block;width:5px;height:5px;border-radius:99px;background:currentColor;opacity:.35;transition:width .18s,opacity .18s}
.kdots699 i.on{opacity:1;width:14px}

/* ===== beta.699: calculadora — desenho escolhido pelo Paulo (ref. Claude, 23/10): 5 colunas, teclas grandes, 9 atalhos numa fila, moedas em carrossel com pontinhos dentro da caixa ===== */
#kpsheet{height:42dvh}
#kpsheet .kptop{display:none}
#kpzona{height:auto;align-items:center;gap:6px;padding-bottom:6px}
#kpzona #kpmoedas{flex:1 1 auto;min-width:0}
#kpzona .kpfixos{flex:none;display:flex;gap:6px;align-items:center}
#kpzona .kpfixos button{width:40px;height:40px;flex:none;border-radius:12px;border:1px solid #d8d2c2;background:var(--cartao,#fff);color:var(--texto);display:flex;align-items:center;justify-content:center;padding:0;font-size:calc(17px*var(--fs,1));cursor:pointer}
#kpsheet .kpdir{display:flex;gap:4px;margin:0 0 6px}
#kpsheet .kpdir .kprap{display:contents}
#kpsheet .kprapk{flex:1 1 0;min-width:0;min-height:36px;padding:4px 2px;font-size:calc(13px*var(--fs,1));border-radius:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#kpsheet .kpgrid{grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(4,minmax(0,1fr));gap:6px}
#kpsheet .kpk,#kpsheet .kpfeito{font-size:calc(24px*var(--fs,1));padding:0;display:flex;align-items:center;justify-content:center;border-radius:14px}
#kpsheet .kpfeito{grid-column:5;grid-row:3 / span 2}
@media (orientation:landscape) and (max-height:500px){
 #kpsheet{height:56dvh}
 #kpsheet .kpdir .kprap{display:none}
 #kpsheet .kpk,#kpsheet .kpfeito{font-size:calc(16px*var(--fs,1))}
}

/* beta.706: chat do Zé volta a ficar por cima da navegação inferior (regressão da barra em vidro da 441; só empilhamento, sem mudar o desenho) */
#iaview{z-index:960}

/* ===== beta.707: teclado — 4 colunas iguais (teclas ~27% mais largas, «>» no canto inferior direito, fonte igual) e faixa do topo alinhada: botões da direita com a altura das moedas e pega cinzenta sem tocar nas moedas (aprovado pelo Paulo 👍 23/10 16:38) ===== */
#kpsheet .kpgrid{grid-template-columns:repeat(4,1fr)}
#kpsheet .kpfeito{grid-column:4;grid-row:4 / span 2}
#kpsheet>.kpcard{padding-top:14px}
#kpzona{align-items:flex-start}
#kpzona .kpfixos button{height:calc(11px + 34px*var(--fs,1))}

/* ===== beta.711: grafico de ritmo diario do orcamento (css) ===== */
.rit711{margin-top:10px;border-top:1px solid rgba(23,33,29,.10);padding-top:8px}
.rit711tit{font-size:calc(12px*var(--fs,1));font-weight:700;color:var(--suave);margin-bottom:4px}
.rit711svg{display:block;width:100%;height:96px}
.rit711bar{fill:var(--corDes);opacity:.8}
.rit711rest{fill:var(--verde);opacity:.12}
.rit711pace{stroke:var(--verde);stroke-width:2}
.rit711hoje{stroke:var(--verdescuro);stroke-width:2}
.rit711eixo{position:relative;display:flex;justify-content:space-between;font-size:calc(10px*var(--fs,1));color:var(--suave);padding:2px 0 20px}
.rit711hojetag{position:absolute;bottom:0;transform:translateX(-50%);font-weight:700;color:var(--verdescuro);border:1px solid var(--verdescuro);border-radius:4px;padding:0 3px;background:var(--cartao);white-space:nowrap;font-size:calc(9px*var(--fs,1))}
.rit711nota{font-size:calc(11px*var(--fs,1));color:var(--suave);margin:2px 0 0;line-height:1.4}
body.escuro .rit711{border-top-color:rgba(255,255,255,.12)}
body.escuro .rit711hoje{stroke:#c9d6cf}
body.escuro .rit711hojetag{color:#9db3aa;border-color:#3a4a43}
body.escuro .rit711bar{opacity:.9}









/* ===== beta.713: cartão piloto «Evolução mensal» (Relatórios) ===== */
#em713{margin:0 0 14px}
.e7in{background:var(--cartao,#fff);border-radius:22px;padding:14px 14px 10px;box-shadow:0 1px 4px rgba(30,40,34,.08)}
.e7in.max{background:none;box-shadow:none;border-radius:0;padding:10px 14px;min-height:100%;box-sizing:border-box;overflow:auto}
.e7top{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}
.e7tit{flex:1;min-width:130px}
.e7tit h3{margin:0;font-size:1.15rem;color:var(--verde)}
.e7tit small{font-size:calc(11px*var(--fs,1));opacity:.65}
.e7ctl{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.e7b{border:0;background:var(--verdeclaro,#e7efe4);color:var(--verde);width:38px;height:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none}
.e7b svg{width:19px;height:19px}
.e7b:active{transform:scale(.94)}
.e7b:disabled,.e7b.off{opacity:.35;cursor:default}
.e7b.e7x{background:rgba(0,0,0,.08);color:inherit;font-size:1.05rem}
.e7olho{position:relative}
.e7olho.on{background:var(--verde);color:#fff}
.e7olho.on::after{content:'';position:absolute;top:-3px;right:-3px;width:9px;height:9px;border-radius:50%;background:#eab53c;border:2px solid var(--cartao,#fff)}
.e7seg{display:inline-flex;background:var(--verdeclaro,#e7efe4);border-radius:12px;padding:3px;gap:2px}
.e7seg button{border:0;background:none;color:var(--verde);width:34px;height:32px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.e7seg button svg{width:17px;height:17px}
.e7seg button.on{background:var(--verde);color:#fff}
.e7pills{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 4px}
.e7pill{border:1.5px solid var(--nav-linha,#d8d4c8);background:var(--cartao,#fff);color:inherit;border-radius:999px;padding:9px 14px;font:inherit;font-weight:600;font-size:calc(13px*var(--fs,1));display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.e7pill .e7seta{opacity:.55;font-size:.85em}
.e7pill.e7mais{background:var(--verde);border-color:var(--verde);color:#fff}
.e7pill.e7mais svg{width:16px;height:16px}
.e7graf{margin:6px 0 2px}
.e7svg{width:100%;height:auto;display:block}
.e7anel{max-width:300px;margin:0 auto}
.e7in.max .e7anel{max-width:min(46vh,420px)}
.e7grid{stroke:var(--nav-linha,#e0ddd2);stroke-width:1}
.e7ax{fill:var(--suave,#8a8a80)}
.e7orclab{fill:var(--corDes,#c0392b);font-weight:700}
.e7ct1{fill:var(--suave,#8a8a80);font-size:11px}
.e7ct2{fill:var(--texto,#17211d);font-size:16px;font-weight:800}
.e7bb{fill:var(--cartao,#fff);stroke:var(--nav-linha,#d8d4c8)}
.e7bt0{fill:var(--suave,#8a8a80)}
.e7bt1{fill:var(--texto,#17211d);font-weight:700}
.e7expt{display:flex;flex-direction:column;gap:1px;margin-bottom:4px}
.e7expt b{font-size:calc(12px*var(--fs,1));color:var(--verde)}
.e7expt small{font-size:calc(10px*var(--fs,1));opacity:.55}
.e7leg{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:8px 0 2px}
.e7chip{border:0;background:var(--verdeclaro,#eef0e6);color:inherit;border-radius:999px;padding:6px 11px;font:inherit;font-size:calc(12px*var(--fs,1));display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.e7chip i{width:10px;height:10px;border-radius:50%;flex:none}
.e7chip.off{opacity:.45}
.e7chip.off span{text-decoration:line-through}
.e7chip.e7mm,.e7chip.e7ant,.e7chip.e7orc{cursor:default;background:none;padding:6px 4px}
.e7chip.e7orc i,.e7chip.e7mm i{border-radius:0}
.e7mml{width:16px!important;height:0!important;border-top:2.5px dotted #eab53c}
.e7orcl{width:16px!important;height:0!important;border-top:2.5px dashed var(--corDes,#c0392b)}
.e7b.e7cats{width:32px;height:32px;border-radius:10px;margin-left:auto}
.e7b.e7cats svg{width:16px;height:16px}
.e7ins{margin:8px 2px 0;font-weight:700;font-size:calc(13px*var(--fs,1));color:var(--corDes,#c0392b)}
.e7ins.e7inssub{color:var(--suave,#8a8a80);font-weight:400}
.e7mos{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}
.e7mos>div{background:var(--verdeclaro,#eef0e6);border-radius:14px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.e7mos small{font-size:calc(10.5px*var(--fs,1));opacity:.65}
.e7mos b{font-size:calc(15px*var(--fs,1))}
.e7mos .e7up{color:var(--corDes,#c0392b)}
.e7mos .e7dn{color:var(--verde)}
.e7det{margin-top:10px;background:var(--verdeclaro,#eef0e6);border-radius:14px;padding:10px 12px}
.e7det h4{margin:0 0 6px;font-size:calc(12.5px*var(--fs,1));color:var(--verde)}
.e7drow{display:flex;align-items:center;gap:8px;padding:5px 0;border-top:1px solid rgba(0,0,0,.05)}
.e7drow:first-of-type{border-top:0}
.e7drow span{flex:1;display:flex;align-items:center;gap:8px;min-width:0}
.e7dot{width:10px;height:10px;border-radius:50%;flex:none;display:inline-block}
.e7drow b{font-variant-numeric:tabular-nums}
.e7drow small{opacity:.6;min-width:42px;text-align:right}
/* folha inferior */
.em713sheet{position:fixed;inset:0;z-index:9700;display:flex;align-items:flex-end}
.em713sheet .e7sf{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.em713sheet .e7sb{position:relative;width:100%;max-height:88vh;display:flex;flex-direction:column;background:var(--cartao,#fff);border-radius:22px 22px 0 0;padding:16px 14px calc(18px + env(safe-area-inset-bottom,0px))}
.em713sheet h3{margin:0 0 8px;color:var(--verde);font-size:1.1rem}
.em713sheet .e7sc{overflow-y:auto}
.e7op{display:flex;justify-content:space-between;align-items:center;width:100%;border:0;background:none;color:inherit;font:inherit;padding:12px 6px;border-radius:10px;cursor:pointer;text-align:left}
.e7op:active{background:var(--verdeclaro,#eef0e6)}
.e7op.on{color:var(--verde);font-weight:700}
.e7op.e7ac{font-weight:600}
.e7pers{padding:10px 6px;border-top:1px solid var(--nav-linha,#e0ddd2);margin-top:6px}
.e7pers>span{font-weight:700}
.e7datas{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;margin-top:8px}
.e7datas label{display:flex;flex-direction:column;font-size:calc(11px*var(--fs,1));opacity:.8;gap:3px}
.e7datas input{font:inherit;padding:8px;border:1.5px solid var(--nav-linha,#d8d4c8);border-radius:10px;background:var(--cartao,#fff);color:inherit}
.e7ok{border:0;background:var(--verde);color:#fff;font:inherit;font-weight:700;padding:10px 18px;border-radius:12px;cursor:pointer}
.e7lin{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 2px;border-top:1px solid var(--nav-linha,#e0ddd2)}
.e7lin:first-of-type{border-top:0}
.e7lin b{font-size:calc(14px*var(--fs,1))}
.e7subn{display:block;font-weight:400}
.e7seg2{display:inline-flex;background:var(--verdeclaro,#eef0e6);border-radius:10px;padding:2px;gap:2px}
.e7seg2 button{border:0;background:none;color:inherit;font:inherit;font-size:calc(12px*var(--fs,1));padding:7px 10px;border-radius:8px;cursor:pointer}
.e7seg2 button.on{background:var(--verde);color:#fff;font-weight:700}
.e7seg2 button:disabled{opacity:.4;cursor:default}
.e7mmbox{display:inline-flex;gap:6px}
.e7mmbox button{border:1.5px solid var(--nav-linha,#d8d4c8);background:none;color:inherit;font:inherit;font-size:calc(12px*var(--fs,1));padding:7px 12px;border-radius:999px;cursor:pointer}
.e7mmbox button.on{background:var(--verde);border-color:var(--verde);color:#fff;font-weight:700}
.e7mmbox button:disabled{opacity:.4}
.e7h4{margin:14px 0 2px;font-size:calc(11px*var(--fs,1));letter-spacing:.08em;text-transform:uppercase;opacity:.65}
.e7gapply{flex:1;border:0;background:none;color:var(--verde);font:inherit;font-weight:700;text-align:left;cursor:pointer;padding:4px 0}
.e7gdel{border:0;background:none;color:var(--corDes,#c0392b);font-size:1.3rem;cursor:pointer;padding:0 6px}
.e7catl{cursor:pointer}
.e7catl input{width:20px;height:20px;accent-color:var(--verde)}
/* maximizado */
#em713max{position:fixed;inset:0;z-index:9600;background:var(--bg,#f3efe4)}
#em713max .e7rot{position:absolute;inset:0;padding:8px 10px;box-sizing:border-box}
#em713max .e7rot.gira{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(90deg)}
#em713max .e7tit h3{font-size:1.25rem}
body.escuro .e7b.e7x{background:rgba(255,255,255,.12)}
body.escuro .e7pill{border-color:rgba(255,255,255,.18)}
body.escuro .e7pers,.escuro .e7lin{border-top-color:rgba(255,255,255,.1)}
body #em713 svg.e7svg,body #em713 svg.e7anel,body #em713max svg.e7svg,body #em713max svg.e7anel{filter:saturate(var(--int551,1))}
/* beta.713 fix: maximizado com scroll completo + cabeçalho e filtros sempre acessíveis */
#em713max .e7rot{overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:28px}
#em713max .e7in .e7top{position:sticky;top:-8px;z-index:6;background:var(--bg,#f3efe4);padding-top:6px}
#em713max .e7in .e7pills{position:sticky;top:52px;z-index:6;background:var(--bg,#f3efe4);padding:4px 0}
/* beta.713 fix2: o scroller do maximizado e o .e7in (sticky pegajoso so funciona com este contentor) */
#em713max .e7rot{overflow:hidden;padding-bottom:0}
#em713max .e7in{height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:32px;box-sizing:border-box}
/* correção fiel 19:46: controlos diretos (linhas A/B/C) */
.e7rowA,.e7rowB,.e7rowC{display:flex;gap:8px;align-items:center;margin:6px 0;flex-wrap:wrap}
.e7rowA .e7pill{margin:0}
.e7rowB{justify-content:space-between}
.e7segT,.e7segG{display:inline-flex;background:var(--verdeclaro,#eef0e6);border-radius:10px;padding:2px;gap:2px}
.e7segT button,.e7segG button{border:0;background:transparent;color:inherit;font:600 13px/1 inherit;padding:7px 12px;border-radius:8px;cursor:pointer}
.e7segG button{padding:7px 10px}
.e7segT button.on,.e7segG button.on{background:var(--cartao,#fff);color:inherit;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.e7filt{display:inline-flex;align-items:center;gap:4px}
.e7filt svg{width:14px;height:14px}
.e7n{background:var(--verde);color:#fff;border-radius:8px;font-size:10px;padding:1px 5px;font-style:normal}
.e7pills .e7pill.on{border-color:var(--verde);color:var(--verde);font-weight:700}
.e7sel{max-width:150px;border:1px solid var(--nav-linha,#d8d4c8);border-radius:8px;background:var(--cartao,#fff);color:inherit;padding:6px;font:inherit;font-size:13px}
.e7coroa{paint-order:stroke;stroke:var(--cartao,#fff);stroke-width:2px}
.e7pers2{margin-top:6px}
.e7rowC{flex-wrap:wrap;row-gap:6px}
.e7rowC .e7pills{margin:0;gap:6px}
.e7rowC .e7pills .e7pill{padding:7px 11px;font-size:calc(12.5px*var(--fs,1))}

/* gaveta compacta: valor com slider e datas numa fila */
.e7linv{flex-direction:column;align-items:stretch}
.e7valrow{flex-wrap:nowrap;gap:8px;align-items:center}
.e7valrow label{display:flex;flex-direction:row;align-items:center;gap:4px;white-space:nowrap}
.e7valrow input[type=number]{width:64px;padding:6px}
.e7rng2{position:relative;flex:1;min-width:70px;height:26px}
.e7rng2 input[type=range]{position:absolute;left:0;top:50%;transform:translateY(-50%);width:100%;margin:0;padding:0;pointer-events:none;-webkit-appearance:none;appearance:none;background:transparent;height:26px}
.e7rng2 input[type=range]::-webkit-slider-runnable-track{height:4px;background:var(--verdeclaro,#eef0e6);border-radius:2px}
.e7rng2 input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:18px;height:18px;border-radius:50%;background:var(--verde);margin-top:-7px;cursor:pointer;border:2px solid var(--cartao,#fff)}
.e7rng2 input[type=range]::-moz-range-track{height:4px;background:var(--verdeclaro,#eef0e6);border-radius:2px}
.e7rng2 input[type=range]::-moz-range-thumb{pointer-events:auto;width:14px;height:14px;border-radius:50%;background:var(--verde);border:2px solid var(--cartao,#fff);cursor:pointer}
.e7datarow{flex-wrap:wrap;gap:6px;align-items:center;max-width:100%}
.e7datarow label{display:flex;flex-direction:row;align-items:center;gap:6px;white-space:nowrap;font-size:calc(11px*var(--fs,1));flex:1 1 100%;min-width:0}
.e7datarow input[type=date]{flex:1;width:auto;min-width:0;padding:8px 10px;font-size:calc(13px*var(--fs,1))}
.e7datarow .e7ok{margin-left:auto;padding:7px 14px;font-size:calc(12px*var(--fs,1))}
.e7mmbox{flex-wrap:nowrap}
.e7mmbox button{padding:7px 10px;white-space:nowrap}

/* ===== beta.715 — piloto: correção de toques no max (.gira) =====
   Sintoma real no telefone do Paulo: depois de deslizar no max, os botões
   D/S/M/A, períodos e Filtros "não fazem nada". Reproduzido em Chromium com
   toques reais: position:sticky dentro de contentor com transform (rotate 90°)
   perde o hit-testing após scroll — o toque não atinge o botão visível.
   Correção mínima: o max deixa de usar sticky; os controlos deslizam com o
   conteúdo (como no cartão inline) e todos os toques passam a atingir. */
#em713max .e7rot>.e7top{position:absolute;top:6px;left:10px;right:10px;z-index:7;background:var(--bg,#f3efe4)}
#em713max .e7in .e7pills{position:static}
















/* ===== beta.716: Início fiel — secções colapsáveis, cartões do topo, A tratar (css) ===== */
.hsec716,.htop716-wrap,.hbloco[data-bloco="hoje"],.hbloco[data-bloco="atratar"]{background:var(--cartao);border-radius:14px;margin:6px 12px;box-shadow:0 1px 3px rgba(23,33,29,.07);overflow:hidden}
.hsec716.hidden,.htop716-wrap.hidden{display:none}
.hsec716-h{display:flex;align-items:center;gap:4px;width:100%;padding:11px 11px;background:none;border:0;text-align:left;cursor:pointer;color:var(--texto);min-height:48px}
.hsec716-mid{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.hsec716-mid b{font-size:calc(15px*var(--fs,1))}
.hsec716-sub{font-size:calc(11.5px*var(--fs,1));color:var(--sub,#5c6b63);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hsec716-val{font-weight:700;font-size:calc(13px*var(--fs,1));white-space:nowrap;color:var(--verde)}
.hsec716-cv{flex:none;transition:transform .18s ease;color:var(--sub,#5c6b63)}
.hsec716-cv.ab{transform:rotate(180deg)}
.hsec716-p{padding:0 0 8px;border-top:1px solid var(--nav-linha)}
.hsec716-p>.hbloco{margin:8px 10px;box-shadow:none;background:transparent}
.hsec716-p>.hbloco>.card7d,.hsec716-p>.hbloco>.saldocard{box-shadow:none}
.explorar716{display:flex;align-items:center;justify-content:space-between;margin:10px 14px 2px}
.explorar716 h2{margin:0;font-size:calc(16px*var(--fs,1))}
.explorar716.hidden{display:none}
.hoje716-corpo{padding:4px 8px 10px}
.hoje716-corpo #ola242{padding:2px 8px 4px!important}
.hoje716-corpo #resta244{margin:6px 4px 8px}
.hoje716-g3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;padding:6px 8px 2px}
.hoje716-g3>div{min-width:0;background:rgba(29,122,84,.07);border:1px solid rgba(29,122,84,.16);border-radius:10px;padding:8px 5px;display:flex;flex-direction:column;gap:2px}
body.escuro .hoje716-g3>div{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}
.hoje716-g3 small{font-size:calc(11px*var(--fs,1));color:var(--sub,#5c6b63)}
.hoje716-g3 b{font-size:calc(14px*var(--fs,1))}
.hoje716-g3 b.pos{color:var(--verde)}
.hoje716-g3 b.neg{color:var(--vermelho)}
#atratar716corpo{padding:8px 10px 12px;display:flex;flex-direction:column;gap:8px}
.atr716-row{display:flex;align-items:center;gap:10px;padding:10px 4px;border-bottom:1px solid var(--nav-linha)}
.atr716-row:last-child{border-bottom:0}
.atr716-mid{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.atr716-mid b{font-size:calc(14px*var(--fs,1))}
.atr716-mid small{font-size:calc(11.5px*var(--fs,1));color:var(--sub,#5c6b63)}
.atr716-reg,.atr716-fat{flex:none}
.atr716-alerta{margin-top:4px;width:100%;text-align:left;background:rgba(192,57,43,.09);color:var(--vermelho);border:1px solid rgba(192,57,43,.25);border-radius:10px;padding:10px 12px;font-size:calc(13px*var(--fs,1));cursor:pointer}
.mov716bar{display:flex;gap:6px;padding:10px 12px 2px;flex-wrap:wrap}
.mov716mais{margin:8px 12px 12px;width:calc(100% - 24px)}
.hsec716-val.neg{color:var(--vermelho)}
.hsec716-mid b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#homeview .hoje716-g3 b,#homeview .hoje716-g3 b.pos,#homeview .hoje716-g3 b.neg{white-space:nowrap;font-size:calc(11px*var(--fs,1))!important}
/* lotes do mov ficam a cargo do mov716 (filtro+lote único); esconder o botão legado SÓ nesta secção */
.hsec716[data-sec716="mov"] .vermais664{display:none!important}
.hsec716-p .reshome199{gap:6px!important}
.hsec716-p .reshome199 .rescard199{flex:0 0 calc(50% - 3px)!important;width:calc(50% - 3px)!important;min-width:0!important}
.hsec716-p .reshome199 .resval199{min-width:0}
#homeview .hsec716-p .reshome199 .resval199 .pos,#homeview .hsec716-p .reshome199 .resval199 .neg,#homeview .hsec716-p .reshome199 .resval199 b{white-space:nowrap;font-size:calc(10px*var(--fs,1))!important}
.hsec716-p .reshome199 .respie199{width:40px;height:40px;-webkit-mask:radial-gradient(circle 11px,transparent 98%,#000 100%);mask:radial-gradient(circle 11px,transparent 98%,#000 100%)}
.hsec716-p .reshome199 .resrow199{gap:6px}
.hsec716-p .reshome199 .rescard199{padding:6px}
#homeview .hsec716-p #respct681{flex-wrap:wrap}
#homeview .hsec716-p #respct681 button{white-space:nowrap;font-size:calc(12px*var(--fs,1))}

/* ronda 4: € nunca separado do valor no cartão Saldo; linhas da dica compactas */
#homeview .hsec716-p .saldocard .resumo{gap:16px;flex-wrap:wrap;justify-content:center}
#homeview .hsec716-p .saldocard .resumo span{white-space:nowrap}
#homeview .hbloco[data-bloco="dica"]{margin:6px 12px}

/* ronda 5: defeitos visíveis (gate main 21:51) */
.b586livro{flex:0 0 auto!important;min-width:max-content!important}
body.escuro .hsec716-sub{color:#a8bdb2}
/* ===== beta.716 ronda 6 — a última linha tem de conseguir subir acima do FAB (paisagem e retrato) */
#homeview{padding-bottom:118px}

/* ===== beta.717: FAB «+» tapava o fim do Início em retrato (Paulo 22:13 Android real) ===== */
/* FAB chega a ~140px do fundo com safe-area; o padding antigo (118px) deixava a última faixa de conteúdo sob o FAB no scroll máximo. */
#homeview{padding-bottom:calc(150px + env(safe-area-inset-bottom))}

/* ===== beta.717: controlos do gráfico em 3 linhas cheias (Paulo 21:51 «3 linhas, mesmo formato do seletor de tipos» + 21:52 «encher as 3 linhas, esticar caixas, alinhado, pouco espaço branco»; funções preservadas) ===== */
.e7-717>.e7top,.e7-717>.e7rowA,.e7-717>.e7rowB,.e7-717>.e7rowC,#em713max .e7top{display:none!important}
.e7-717w{display:flex;flex-direction:column;gap:6px;margin:4px 0 8px}
.e7-717r{display:flex;gap:5px;align-items:center;width:100%;flex-wrap:wrap}
.e7-717r .e7segT{flex:1 1 auto;display:flex}
.e7-717r .e7segT button{flex:1 1 0;white-space:nowrap;padding:7px 4px;font-size:calc(12px*var(--fs,1))}
.e7-717r .e7pill{margin:0;padding:7px 10px;font-size:calc(12px*var(--fs,1));display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.e7-717r2>.e7pill{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}
.e7-717r .e7segG button{padding:7px 8px;font-size:calc(12px*var(--fs,1))}
.e7-717r .e7seg{display:inline-flex}
.e7-717r .e7seg button{width:34px;height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center}
.e7-717r .e7b{flex:0 0 34px;width:34px;height:34px;border-radius:11px;padding:0}
/* beta.911: pills de periodo com gap 3px e fonte 11px - «Custom» (EN) ficava cortado nas pills de 41-47px (scrollWidth>clientWidth); PT «Pers.» ja cabia */
.e7-717r3>.e7pills{flex:1 1 auto;margin:0;display:flex;gap:2px;flex-wrap:nowrap}
.e7-717r3>.e7pills .e7pill{flex:1 1 0;padding:7px 2px;font-size:calc(10px*var(--fs,1));min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.e7-717r3>.e7filt,.e7-717r3>.e7mais{font-size:0;flex:0 0 32px;width:32px;height:32px;padding:0;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;gap:0}
.e7-717r3>.e7filt svg,.e7-717r3>.e7mais svg{width:17px;height:17px}
.e7-717r3>.e7filt .e7n{font-size:10px;margin-left:1px}
/* beta.717 ajuste linha 2: caber D S M A + conta + tipos sem esmagar a conta */
.e7-717r2{gap:4px}
.e7-717r2 .e7segG button{padding:7px 5px;font-size:calc(11.5px*var(--fs,1))}
.e7-717r2 .e7seg button{width:31px;height:31px}
.e7-717r2>.e7pill{font-size:calc(11.5px*var(--fs,1));padding:7px 6px}
/* beta.717 ajuste fino linha 2: conta sem corte; beta.911: gap 3->2px para a linha caber a 360px tambem em EN (pill Accounts) */
.e7-717r2{gap:2px}
.e7-717r2>.e7pill{font-size:calc(11px*var(--fs,1));padding:7px 4px}
.e7-717r2 .e7segG button{padding:7px 4px;font-size:calc(11px*var(--fs,1))}
/* ===== beta.717: mosaicos de leitura rapida do grafico 713 — o valor nunca se parte e o € nunca se separa do numero (regra financeira permanente); fonte um pouco menor e padding mais justo para «28 800,00 €» caber numa linha */
.e7mos>div{padding:10px 8px}
.e7mos b{white-space:nowrap;font-size:calc(13px*var(--fs,1));letter-spacing:-.2px}
/* beta.717: teclado por cima da folha de emprestimo enquanto edita o Valor dela */
#kpsheet.kp717top{z-index:1001}

/* ===== beta.717e: Saldo/Resumo conforme referência 22:16 (bloco marcado) ===== */
#homeview .saldocard{text-align:left}
#homeview .saldocard .scrot{display:block;text-align:left;margin-left:0}
#homeview .saldocard #saldo{display:block;text-align:left;margin:2px 0 8px}
#homeview .saldocard .resumo{display:flex;justify-content:space-between;gap:12px}
#homeview .saldocard .resumo>span{display:flex;flex-direction:column;gap:2px}
#homeview .saldocard .resumo .lb717e{font-size:calc(11px*var(--fs,1))!important;font-weight:400;opacity:.85}
#homeview .saldocard .resumo b{font-size:calc(15px*var(--fs,1))!important;font-weight:800}
#homeview .saldocard #det430btn{display:block;width:100%;box-sizing:border-box;margin-top:12px;padding:11px;border:1px solid rgba(255,255,255,.45);border-radius:10px;background:transparent;color:var(--sobreVerde,#fff);font-size:calc(14px*var(--fs,1));text-align:center;cursor:pointer}
.hbloco[data-bloco="res"]{display:flex;flex-wrap:wrap;align-items:center}
.hbloco[data-bloco="res"] h3.sech{flex:1 1 auto;margin:0}
.hbloco[data-bloco="res"] #respct681{flex:0 0 auto}
.hbloco[data-bloco="res"] #reshome199{flex:1 0 100%}
.rescard199 .ant717e{font-weight:400;color:var(--suave)}
.rescard199 .resval199 .lb717e{font-size:calc(10px*var(--fs,1));color:var(--suave);font-weight:400}
.ressaldo717e{display:flex;justify-content:space-between;align-items:baseline;margin-top:8px}
.ressaldo717e .lb717e{font-size:calc(11px*var(--fs,1));color:var(--suave);font-weight:400}
.ressaldo717e b{font-size:calc(13px*var(--fs,1))}
#homeview .saldocard #nota602{text-align:left;margin:4px 0 0}

/* ===== beta.717f: fidelidade referência Saldo/Resumo, gate main 00:45 ===== */
#homeview .hsec716-p .saldocard #saldo{font-size:calc(30px*var(--fs,1))!important;font-weight:800;line-height:1.1;margin:3px 0 8px;white-space:nowrap}
#homeview .hsec716-p .saldocard .scrot{font-size:calc(11px*var(--fs,1))!important;line-height:1.25}
#homeview .hsec716-p .saldocard #nota602{text-align:left!important;font-size:calc(10px*var(--fs,1))!important;margin:4px 0!important;line-height:1.3}
#homeview .hsec716-p .saldocard .resumo{justify-content:space-between;flex-wrap:nowrap;gap:8px}
#homeview .hsec716-p .saldocard .resumo>span{min-width:0}
#homeview .hsec716-p .saldocard .resumo .lb717e{font-size:calc(9px*var(--fs,1))!important}
#homeview .hsec716-p .saldocard .resumo b{font-size:calc(13px*var(--fs,1))!important;white-space:nowrap}
#homeview .hsec716-p .saldocard #det430btn{font-size:calc(12px*var(--fs,1))!important;padding:8px;margin-top:8px}
#homeview .hsec716-p .reshome199{align-items:stretch}
#homeview .hsec716-p .reshome199 .rescard199{display:flex;flex-direction:column;padding:8px;box-sizing:border-box}
#homeview .hsec716-p .reshome199 .resttl199{font-size:calc(9px*var(--fs,1))!important;white-space:nowrap;line-height:1.35;margin-bottom:8px;letter-spacing:-.15px}
#homeview .hsec716-p .reshome199 .resrow199{gap:5px;align-items:center;flex:1}
#homeview .hsec716-p .reshome199 .respie199{width:28px;height:28px;-webkit-mask:radial-gradient(circle 8px,transparent 98%,#000 100%);mask:radial-gradient(circle 8px,transparent 98%,#000 100%)}
#homeview .hsec716-p .reshome199 .resval199{display:grid;grid-template-columns:auto 1fr;gap:4px 3px;flex:1;align-items:baseline;line-height:1.2}
#homeview .hsec716-p .reshome199 .resval199 .lb717e{font-size:calc(8px*var(--fs,1))!important}
#homeview .hsec716-p .reshome199 .resval199 .pos,#homeview .hsec716-p .reshome199 .resval199 .neg{font-size:calc(9px*var(--fs,1))!important;text-align:right;letter-spacing:-.2px;font-weight:700}
#homeview .hsec716-p .reshome199 .ressaldo717e{border-top:1px dashed var(--nav-linha,#d8d2c2);padding-top:7px;margin-top:9px;gap:3px}
#homeview .hsec716-p .reshome199 .ressaldo717e b{font-size:calc(10px*var(--fs,1))!important;white-space:nowrap;letter-spacing:-.2px}
#homeview .hsec716-p .reshome199 .ressaldo717e .lb717e{font-size:calc(9px*var(--fs,1))!important}
#det430 .homeResumo140>div{min-width:90px;flex:1 1 90px}
#det430 .homeResumo140 strong{white-space:nowrap;font-size:calc(13px*var(--fs,1))!important}
#resleg326 .categorias717f{font-size:calc(11px*var(--fs,1));font-weight:700;color:var(--suave);margin:8px 0 4px}

/* ===== beta.717g: revisão integrada escura (contraste dos controlos e valores) ===== */
body.escuro #homeview .saldocard #det430btn{color:#edf4ef!important;border-color:#94a79e}
body.escuro #homeview .hsec716-p .reshome199 .resval199 .pos{color:#8cdbaf!important}
body.escuro #homeview .hsec716-p .reshome199 .resval199 .neg{color:#ffb4a8!important}
body.escuro #resleg326 .l326seg .chip291.on{border-color:#74d3a4!important;background:#234e3a!important;color:#edf4ef!important}
/* ===== beta.717j: sub-orçamento tem folha z1600; teclado deve ficar visível por cima ===== */
#kpsheet.kp717sub{z-index:1601}
/* beta.717k: overlay de relatorios/orcamentos (over203, z9000) tapava o teclado no Definir */
#kpsheet.kp717over{z-index:9001}
#subOrcPainel141 .orceditbtns button{background:var(--verde);color:var(--sobreVerde);border:1px solid var(--verde)}
#subOrcPainel141 .orceditbtns button:disabled{color:var(--texto);background:var(--cartao);opacity:.7}

/* Candidate718: pilot gestures + fullscreen graph-only. Stable717 unchanged. */
#em713 svg.e7svg,#em713max svg.e7svg{touch-action:pan-y!important}
#em713max .gira svg.e7svg{touch-action:pan-x!important}
#em713max .e7rot{display:flex;flex-direction:column;gap:0;padding:8px 10px;overflow:hidden}
#em713max .e7-717w{flex:0 0 auto;margin:0 0 6px}
#em713max .e7in{flex:1 1 0;min-height:0;height:auto;padding:0!important;overflow:hidden;display:flex;flex-direction:column}
#em713max .e7exp{flex:1 1 0;min-height:0;display:flex;flex-direction:column}
#em713max .e7expt,#em713max .e7mos,#em713max .e7det,#em713max .e7ins{display:none}
#em713max .e7graf{flex:1 1 0;min-height:0;position:relative;margin:0}
#em713max .e7graf>svg{width:100%;height:100%;display:block}
#em713max .e7leg{flex:0 0 auto;max-height:42px;overflow:auto;flex-wrap:nowrap}
/* DSMA reachable without losing the account selector or chart views. */
.e7-717r2 .e7segG{flex:0 0 auto;display:flex}
/* beta.911: botoes do grao 40->30px de largura (altura 44px mantida) - com 40px a linha 2 (grao+Contas+tipos) estourava ~40-70px a 360/390px e o flex-wrap da 899 partia-a em 2 linhas (Contas esticada + icones orfaos); 28px (e icones 24px, sangria +-8px) devolve as 3 linhas cheias do desenho 717 sem cortar nada; apertos da pill Contas (44px min, 10.5px) e dos icones de tipo (22px) ficam confinados ao cartao inline (#em713), vista maximizada intocada */
.e7-717r2 .e7segG button{min-width:28px;min-height:44px;padding:4px 2px;font-size:13px}
.e7-717r2>.e7pill{min-width:48px;font-size:12px;overflow:hidden;text-overflow:ellipsis}
.e7-717r2 .e7seg:not(.e7segG) button{width:28px}
#em713max .e7-717r2 .e7segG button{min-width:44px;min-height:44px}
#em713 .e7-717r2{width:calc(100% + 16px);margin-left:-8px;margin-right:-8px}
#em713 .e7-717r2>.e7pill{flex:1 1 auto;min-width:44px;font-size:10px;padding:7px 2px}
.e7-717r2 .e7seg:not(.e7segG){flex:0 0 auto}
#em713 .e7-717r2 .e7seg:not(.e7segG) button{width:24px}

/* 719: pilot sheets follow the same logical landscape as the maximized graph. */
.em713sheet .e7sheetrot719{position:absolute;inset:0;display:flex;align-items:flex-end}
.em713sheet .e7sheetrot719.gira719{inset:auto;top:50%;left:50%;transform:translate(-50%,-50%) rotate(90deg)}
.em713sheet .gira719 .e7sb{max-height:92%;padding-bottom:14px}
.em713sheet .gira719 .e7sc{min-height:0;touch-action:pan-x}
.em713sheet .e7select719{display:flex;flex-wrap:wrap;gap:6px}

/* 720: nested pilot export/name/confirmation dialogs follow fullscreen. */
.e7dialog720 .e7dialogrot720{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(90deg);display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}
.e7dialog720 .bottom720{align-items:flex-end;padding:0}
#exp254.e7dialog720 .e254b{max-height:92%;overflow:auto;touch-action:pan-x}
.e7dialog720 .dlgcard{max-height:95%;overflow:auto;touch-action:pan-x}
/* 720: compact landscape pilot menus, keep normal card menus unchanged. */
.em713sheet .gira719{justify-content:center}
.em713sheet .gira719 .e7sb{width:min(600px,92%);border-radius:18px 18px 0 0}
#exp254.e7dialog720 .e254b{width:min(600px,92%);border-radius:18px 18px 0 0}

.em713sheet.e7full720{justify-content:center}
.em713sheet.e7full720 .e7sheetrot719{justify-content:center}
.em713sheet.e7full720 .e7sb,#exp254.e7full720 .e254b{width:min(600px,92%);border-radius:18px 18px 0 0}

/* beta.721: legenda completa numa folha; nomes não são cortados. */
#em713 .e7chip{max-width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere}
#em713max .e7leg{max-height:none;min-height:38px;overflow:visible;flex-wrap:wrap;justify-content:space-between;margin-top:4px}
#em713max .e7legend721{min-height:36px;font-size:12px;padding:6px 14px}
.em713sheet .e7catl span{min-width:0;overflow-wrap:anywhere;white-space:normal}
.em713sheet .e7catl input{flex:none}

/* beta724: Dica visivel e leitura do saldo/resumo sem microletra. */
#homeview .hbloco[data-bloco="dica"] .dicaZe{margin-top:0;cursor:default;padding-right:28px}
#homeview .hsec716-h{padding:12px;gap:8px;min-height:64px}
#homeview .hsec716-mid b{font-size:calc(15px*var(--fs,1))}
#homeview .hsec716-sub{font-size:calc(12px*var(--fs,1));white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35}
#homeview .hsec716-val{font-size:calc(13px*var(--fs,1));max-width:44%;white-space:normal;text-align:right;overflow-wrap:anywhere}
#homeview .hsec716-p .saldocard #saldo{font-size:calc(32px*var(--fs,1))!important}
#homeview .hsec716-p .saldocard .resumo .lb717e{font-size:calc(11px*var(--fs,1))!important}
#homeview .hsec716-p .saldocard .resumo b{font-size:calc(14px*var(--fs,1))!important}
#homeview .hsec716-p .reshome199 .rescard199{padding:10px}
#homeview .hsec716-p .reshome199 .resttl199{font-size:calc(12px*var(--fs,1))!important;white-space:normal}
#homeview .hsec716-p .reshome199 .resrow199{flex-wrap:wrap}
#homeview .hsec716-p .reshome199 .resval199{min-width:100%;grid-template-columns:auto 1fr}
#homeview .hsec716-p .reshome199 .resval199 .lb717e{font-size:calc(11px*var(--fs,1))!important}
#homeview .hsec716-p .reshome199 .resval199 .pos,#homeview .hsec716-p .reshome199 .resval199 .neg{font-size:calc(11px*var(--fs,1))!important}
#homeview .hsec716-p .reshome199 .ressaldo717e{flex-wrap:wrap}
#homeview .hsec716-p .reshome199 .ressaldo717e b{font-size:calc(13px*var(--fs,1))!important}
#homeview .hsec716-p .reshome199 .ressaldo717e .lb717e{font-size:calc(11px*var(--fs,1))!important}
/* beta724: alinhar os dois meses mesmo quando o anterior ocupa duas linhas. */
#homeview .hsec716-p .reshome199 .resttl199{min-height:2.7em;line-height:1.35}
#homeview .hsec716-p .saldocard #nota602{max-height:2.6em;overflow:auto;font-size:calc(11px*var(--fs,1))!important;line-height:1.3}
#homeview .dicaZe .dz-tt{font-size:calc(14px*var(--fs,1))}
#homeview .dicaZe .dz-txt{font-size:calc(14px*var(--fs,1));line-height:1.45}
/* beta724 revisão: modos de meses separados do título e da legenda de categorias. */
#homeview .hbloco[data-bloco="res"]>h3{flex-wrap:wrap;gap:8px;height:auto}
#homeview .hbloco[data-bloco="res"] #respct681{flex:1 0 100%;justify-content:flex-start!important;margin:4px 0 8px!important}
#homeview .hbloco[data-bloco="res"] #respct681 button{min-height:32px;padding:4px 6px!important}
#homeview .hbloco[data-bloco="res"] .categorias717f{font-size:calc(12px*var(--fs,1));margin-top:12px}
#homeview #exp716btn{margin-right:0;max-width:100%;white-space:normal}
.saudacao724{display:flex;align-items:flex-start;gap:10px;margin:10px 12px;padding:14px;border:1px solid var(--nav-linha);background:var(--cartao);border-radius:16px;color:var(--texto)}
.s724avatar{width:60px;height:66px;flex:none;color:var(--verde)}.s724avatar svg{width:60px;height:60px}.s724avatar svg *{stroke:currentColor}
.s724body{min-width:0;flex:1}.s724body strong{font-size:calc(16px*var(--fs,1))}.s724body p{font-size:calc(13px*var(--fs,1));line-height:1.4;margin:7px 0}.s724tip{color:var(--suave)}
.s724x{flex:none;border:0;background:none;color:var(--suave);font-size:24px;padding:0 3px;min-height:32px}.s724add{padding:8px 12px;border:1px solid var(--verde);color:var(--verde);border-radius:12px;background:transparent;font:inherit;font-size:calc(13px*var(--fs,1))}
.saudacao724opt{display:flex;justify-content:space-between;gap:10px;padding:16px;border-radius:12px;background:var(--cartao);color:var(--texto);margin:10px 12px}.saudacao724opt input{width:22px;height:22px}
/* Saudação curta: avatar na mesma linha do título, corpo usa a largura disponível. */
.saudacao724{position:relative;padding:14px 38px 14px 14px;display:block}
.s724avatar{float:left;width:44px;height:48px;margin:0 10px 4px 0}.s724avatar svg{width:44px;height:44px}
.s724body strong{display:block;min-height:38px;padding-top:8px}.s724body p{clear:both;margin:8px 0;font-size:calc(13px*var(--fs,1))}.s724x{position:absolute;right:10px;top:10px}
/* beta724: data e hora em linhas próprias em ecrãs estreitos. */
#card700 #frowdia{flex-wrap:wrap;justify-content:flex-start;row-gap:5px;padding:10px 0}
#card700 #frowdia>b{white-space:normal;overflow-wrap:normal;line-height:1.35}
#card700 #frowdia #frowhoraval,#card700 #frowdia .hora{flex-basis:auto;margin-left:8px}
@media(max-width:380px){#card700 #frowdia{display:grid;grid-template-columns:1fr;gap:4px;align-items:start}#card700 #frowdia>span:first-child{font-size:calc(12px*var(--fs,1));line-height:1.2}#card700 #frowdia>b{font-size:calc(14px*var(--fs,1))}}
/* Data/hora são botões, não texto: impedir largura mínima herdada e overflow na linha seguinte. */
#card700 #frowdia{display:grid!important;grid-template-columns:1fr!important;gap:4px!important;align-items:start!important;overflow:hidden}
#card700 #frowdia #diatxt,#card700 #frowdia #horatxt{position:static!important;width:100%!important;min-width:0!important;max-width:100%!important;flex:none!important;text-align:left!important;white-space:normal!important;height:auto!important;min-height:28px;padding:2px 0!important;font-size:calc(14px*var(--fs,1))!important;line-height:1.3!important;margin:0!important}
#card700 .r700:has(#frowdia){align-items:center;min-height:100px}
#card700 #frowdia{height:auto!important;min-height:106px!important;overflow:visible!important;grid-auto-rows:min-content!important}
#card700 #frowdia #diatxt,#card700 #frowdia #horatxt{overflow:visible!important;border:0!important;line-height:1.5!important}
/* beta725: aviso de leitura manual, largura estável para não empilhar cada palavra. */
#oktoast{box-sizing:border-box;width:max-content;max-width:calc(100vw - 32px);min-width:min(280px,calc(100vw - 32px));white-space:normal;line-height:1.35;text-align:left}
.filterContext725{background:var(--cartao);color:var(--texto);border:1px solid var(--nav-linha);border-radius:12px;padding:12px;margin:10px 0;font-size:calc(13px*var(--fs,1));line-height:1.4}
.filterContext725 p{margin:0 0 5px;font-weight:700}.filterContext725 small{display:block;font-size:calc(12px*var(--fs,1));color:var(--suave)}.filterContext725 button{font:inherit;color:var(--verde);background:transparent;border:1px solid var(--verde);border-radius:12px;padding:9px 12px;margin-top:8px}
.reserva725note{font-size:calc(12px*var(--fs,1));line-height:1.4;color:var(--suave);margin:8px 0}.reserva725btn{font:inherit;font-size:calc(13px*var(--fs,1));padding:9px 12px;border:1px solid var(--verde);border-radius:12px;color:var(--verde);background:transparent;margin-top:8px}
#over203 .manual725check{display:flex!important;align-items:center;justify-content:flex-start;gap:10px;margin:12px 0;font-size:calc(14px*var(--fs,1));line-height:1.35}#over203 .manual725check input{width:22px!important;height:22px;min-width:22px;flex:0 0 22px;margin:0}#over203 .manual725 textarea{font-size:calc(13px*var(--fs,1))!important;line-height:1.4;padding:12px;border-radius:12px}#over203 .manual725>.sub{font-size:calc(14px*var(--fs,1));line-height:1.4}
/* beta725: a ação de explorar nunca fica debaixo do botão flutuante. */
#homeview .explorar716,#homeview #explorar716{padding-right:68px;box-sizing:border-box}
#oktoast.aviso725{background:#fff0c5;color:#604000;border:1px solid #d9aa38}

/* residual 729: lista Movimentos em ecrãs estreitos - dar ar à coluna do nome (categoria "Casamento" partia a palavra; etiqueta encostava à quantia). Só geometria: padding/gap/ícone. */
@media(max-width:380px){
 #movlist .mov{padding:9px 7px;gap:7px}
 #movlist .mov .movic{width:32px;height:32px;border-radius:10px}
 #movlist .mov .movic svg{width:18px;height:18px}
 #movlist .mov .movcat{font-size:calc(12.5px*var(--fs,1))!important}
 #movlist .movvalbox{margin-left:5px}
}

/* residual 729r2: header homeview ≤389px — overflow de 38px cortava o menu ⋮ (pré-existente; exposto pelo fix do .b586dot). Compacta sem ocultar botões e sem tocar nos alvos de 44px: padding/gap do header, folgas do Zé/sino/livro. */
@media(max-width:389px){
 body.barra586 header{padding:8px 6px;gap:1px}
 body.barra586 #iabtn{padding:5px 8px}
 body.barra586 #sino589{padding:4px 2px}
 body.barra586 .b586livro{padding:3px 7px;flex:0 1 auto!important;min-width:0!important;display:inline-block;text-align:left}
}

/* beta.750e rev2 (Paulo 25out 08:05:38 «falta o topo mais uma vez»; rev1 contaminava o corpo — cartoes branco-sobre-branco): faixa escura 745 (var(--verdescuro), referencia aprovada «Selecionar etiqueta») SO no topo dos overlays over203. Corpo/tipografia/cartoes INTOCADOS. Classe separada da r249 (app.js:6323 usa-a para contexto de swipe dos Relatorios). */
#over203.topo750e .o203h{background:var(--verdescuro);color:#fff;margin:0 -12px;padding:calc(10px + env(safe-area-inset-top)) 12px 6px;gap:10px}
#over203.topo750e .o203h b{color:#fff}
#over203.topo750e .o203b{color:#fff}
#over203.topo750e .o203h .i375{color:#fff;border-color:#fff}
#over203.topo750e .o203t{background:var(--verdescuro);color:#fff;margin:0 -12px 12px;padding:2px 18px 12px;text-align:center}

/* beta.750e rev3 (25/10/2026): nomes de conta em 1 linha com reticencias - pedido Paulo 08:22 */
#card700 #frowconta>b,#card700 #frowconta2>b{flex:1;min-width:0;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#sheetconta .contachip{display:block;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:44px;padding-top:0;padding-bottom:0}
#card700 #parabox{min-width:0}
#card700 #parabox>#frowconta2{width:100%}

/* ===== bloco 1 topo comum (Paulo 25out: «comeca bloco 1» 09:42:57, escopo 👍 09:45:52 = SÓ topo comum): pílula verde-escura opaca flutuante, hora/bateria fora da pílula (direção visual confirmada pelo main 09:50); safe-area passa de padding (dentro) para margin (fora). Título/ações de cada ecrã, ⋮, sino, olho, livro e versão/Reportar preservados. ===== */
header{margin:calc(6px + env(safe-area-inset-top)) 8px 6px;border-radius:22px;padding-top:8px;padding-bottom:8px;box-shadow:0 2px 10px rgba(0,0,0,.22)}
@media(max-width:389px){header{margin-left:6px;margin-right:6px}}
/* bloco 1: botão Zé = conjunto da referência Qwen, aprovado pelo Paulo 25out («a bola e balao, mete como o qwen igual» 10:19:34 + «sim isso mesmo» 10:19:55): botão amarelo REDONDO (balão) + bolinha verde pequena no canto inferior direito sobre o contorno. Substitui a 1.ª ideia «toda dentro». Função/estados (clique abre Zé, cores rede, netEstilo586='ia' sem bolinha) preservados. */
#iabtn{position:relative;overflow:visible}
/* medidas tiradas da referência Qwen completa (Paulo 10:20:36 «ou medir e ajustar as nossas medidas»): círculo ≈73% da faixa do topo (49px→36px), bolinha ≈26% do círculo, centro da bolinha a ~1,1 raios a ~45° (metade fora, em cima do contorno inferior direito) */
body.barra586 #iabtn{width:calc(34px*var(--fs,1));height:calc(34px*var(--fs,1));min-height:0;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:none}
#iabtn .b586dot{position:absolute;bottom:calc(-1px*var(--fs,1));right:calc(-1px*var(--fs,1));width:calc(9px*var(--fs,1));height:calc(9px*var(--fs,1));margin:0;flex:none;border-radius:50%;box-shadow:0 0 0 1.5px var(--verdescuro)}
/* bloco 1: espaçamento VISUAL coerente no topo (Paulo 25out 10:25:29 «toma atencao ao espaco estre os icons... o sino esta perto da bola e o olho afastado... o ... podia chegar mais para a direira»). Medidas da referência Qwen: lacunas entre ícones ≈20/16/21px e ⋮ a ~15px da borda. Aplica-se só quando o ⋮ segue o Zé (home/mov/...); ecrãs com Zé no fim (Definições) intactos. Alvos de toque mantidos; só margens. */
body.barra586 header{padding-left:8px!important;padding-right:8px!important}
body.barra586 header .b586livro{padding-left:6px;padding-right:6px}
#iabtn:has(+ .b586btn){margin-left:11px}
#iabtn + .b586btn{margin-left:13px}
/* Movimentos (lupa+funil ocupam mais que olho+sino): margens menores para a pílula do livro não cortar (medido 412px) */
header:has(.b586btn[title="Pesquisar movimentos"]) #iabtn:has(+ .b586btn){margin-left:6px}
header:has(.b586btn[title="Pesquisar movimentos"]) #iabtn + .b586btn{margin-left:8px}
@media(max-width:389px){
 body.barra586 header{padding-left:6px!important;padding-right:6px!important}
 #iabtn:has(+ .b586btn){margin-left:7px}
 #iabtn + .b586btn{margin-left:4px}
}

/* bloco 1: contador de filtros ativos no funil do topo (Movimentos) */
.b586btn[data-f744funil]{position:relative;overflow:visible}
.b586btn .fun744n{position:absolute;top:-3px;right:-3px;min-width:16px;height:16px;border-radius:8px;background:var(--ouro,#e8b54a);color:var(--verdescuro);font-size:11px;font-weight:800;line-height:16px;text-align:center;padding:0 3px;pointer-events:none}
.b586btn .fun744n.hidden{display:none}

/* bloco 1: topos próprios também em pílula (main 09:54 — reg744/overlays/painéis entram no topo comum; ←, título e ações preservados) */
/* Adicionar movimento (faixa reg744, .page no fluxo): safe-area sai do padding para a margem */
body.reg744 #reg744{margin:calc(6px + env(safe-area-inset-top)) 8px 6px;border-radius:22px;padding-top:6px;box-shadow:0 2px 10px rgba(0,0,0,.22)}
/* Painéis fixos COM safe-area no contentor (style.css:2652: reg139Painel, livrosPainel148, iaview): margem simples; cancela o padding safe-area da 745 */
#iaview .iatop{margin:6px 8px;border-radius:22px;box-shadow:0 2px 10px rgba(0,0,0,.22)}
#livrosPainel148 .marcadoresBarra,#reg139Painel .marcadoresBarra{margin:6px 8px;border-radius:22px;box-shadow:0 2px 10px rgba(0,0,0,.22);padding-top:6px!important;padding-bottom:6px!important}
/* Painéis SEM safe-area no contentor: safe-area passa para a margem */
#etiquetasPainel .etiquetasBarra,#marcadoresPainel .marcadoresBarra,#contaPainel142 .marcadoresBarra,#subOrcPainel141 .marcadoresBarra,#contasStats144 .marcadoresBarra,#resetPainel143 .marcadoresBarra,#moverSub147 .marcadoresBarra,#irs643view .marcadoresBarra,#teso645view .marcadoresBarra{margin:calc(6px + env(safe-area-inset-top)) 8px 6px;border-radius:22px;box-shadow:0 2px 10px rgba(0,0,0,.22);padding-top:6px!important;padding-bottom:6px!important}
/* Overlays over203 (Conquistas, Viagens, etc.): a faixa escura 750e vira pílula (o overlay tem 12px de padding lateral — a pílula fica embutida) */
#over203.topo750e .o203h{margin:calc(6px + env(safe-area-inset-top)) 0 0;border-radius:18px 18px 0 0;padding-top:10px}
#over203.topo750e .o203t{margin:0 0 12px;border-radius:0 0 18px 18px}
#over203.topo750e .o203t:empty{display:none}
#over203.topo750e .o203h:has(+ .o203t:empty){border-radius:18px;margin-bottom:12px}

/* bloco 1 (main 09:54 ponto 4): nome de livro longo + fonte grande não podem empurrar Zé/⋮ para fora da pílula — o seletor de livro encolhe com reticências em TODAS as larguras (antes só ≤389px) */
header .b586livro{flex:0 1 auto!important;min-width:0!important;max-width:40vw;display:inline-block;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* beta.782: botões Cancelar/OK da janela dlg191 ilegíveis no modo escuro (texto claro em fundo claro) */
body.escuro .dlg191ov button:not(.btn2){background:var(--cartao);color:var(--texto);border:1.5px solid var(--suave);border-radius:12px;padding:8px 14px;font:inherit}
body.escuro .dlg191ov button.btn{background:var(--verde);color:var(--sobreVerde);border-color:var(--verde)}
/* beta.782: Gráficos > Categorias e Tempo (Futuro) no modo escuro: botões e datas com texto claro em fundo claro */
body.escuro .o204chip,body.escuro .o206seg button{background:#26352f;color:var(--texto)}
body.escuro .o204chip.on,body.escuro .o206seg button.on{background:#2f5f4c;color:#fff}
body.escuro .o204row{border-bottom-color:#2a3a34}
body.escuro .o204row small{color:var(--suave)}
body.escuro #over203 input[type=date]{background:#1c2b26;color:var(--texto);color-scheme:dark}
/* beta.782: modo escuro, botões com texto claro em fundo claro (Recomeçar, período CSV, chips do assistente, janelas simples) */
body.escuro #resetCancelar143{background:var(--cartao);color:var(--texto);border:1.5px solid var(--suave)}
body.escuro #per259 .r262d{width:100%;text-align:left;padding:12px 14px;border:1.5px solid var(--suave);border-radius:12px;background:var(--cartao);font:inherit;color:var(--texto)}
body.escuro #iachips button{color:var(--verde)}
body.escuro > div[style*="z-index:9999"] button:not([style*="background"]):not(.btn):not(.btn2){background:var(--cartao);color:var(--texto);border:1.5px solid var(--suave);border-radius:12px}
body.escuro > div[style*="z-index:9999"] button.btn{background:var(--verde);color:var(--sobreVerde);border:0;border-radius:12px}
#empsheet392 .kpx,#empcalc394sh .kpx,#p397sh .kpx{color:var(--sobreVerde)}

/* ===== beta.786 — Teclado + formulário Adicionar movimento (par de maquetes aprovado 27out 13:14) ===== */
body.reg744 nav{display:none!important}
/* cartão do montante: compacto, rosa/verde/azul suave por tipo, olho à direita */
body #valorcard631{padding:7px 14px 8px!important;gap:2px!important;margin:6px 0!important;border-radius:14px!important;box-shadow:none!important}
body #valorcard631[data-t742="d"],body #valorcard631.z776h[data-t742="d"]{background:#f8e4e2!important;color:#9b2018!important}
body #valorcard631[data-t742="r"],body #valorcard631.z776h[data-t742="r"]{background:#e2f1e7!important;color:#1b6e3f!important}
body #valorcard631[data-t742="t"],body #valorcard631.z776h[data-t742="t"]{background:#e3ecf6!important;color:#2c5f94!important}
body #valorcard631 .ha700 #vc631tipo{font-size:calc(12px*var(--fs,1))!important;color:inherit!important;opacity:.95}
body #valorcard631 .hb700 #vc631valor{font-size:calc(28px*var(--fs,1))!important;font-weight:800;color:inherit!important}
body #valorcard631 #calc700{display:none!important}
body #valorcard631 #valorhint776{font-size:calc(11.5px*var(--fs,1))!important;color:inherit!important;background:transparent!important;padding:0!important;min-height:0!important;margin:0!important}
#olho791{flex:0 0 auto;width:48px;height:40px;border:1px solid rgba(0,0,0,.10);background:#fff;color:var(--verde);border-radius:12px;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer}
#olho791 svg{width:26px;height:26px}
/* categorias rápidas */
#catrap791{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 6px;margin:0 0 2px;scrollbar-width:none}
#catrap791::-webkit-scrollbar{display:none}
#catrap791.hidden{display:none}
#catrap791 button{flex:0 0 auto;height:34px;padding:0 12px;border:1.5px solid var(--verde);background:var(--verdeclaro,#e7f2ec);color:var(--verde);border-radius:999px;font:inherit;font-size:calc(14px*var(--fs,1));font-weight:700;white-space:nowrap;cursor:pointer}
#catrap791 button.on{background:var(--verde);color:var(--sobreVerde,#fff)}
#catrap791 button.todas791{border-color:#a9aaa4;background:transparent;color:var(--suave,#666);font-weight:600}
/* erro contextual na linha Categoria */
#caterr791{display:none;align-items:center;gap:6px;color:#b3261e;font-size:calc(13px*var(--fs,1));padding:0 12px 6px 57px;line-height:1.2}
#caterr791.on{display:flex}
#caterr791 svg{width:15px;height:15px;flex:none}
body #card700 #frowcatval{color:var(--suave,#777)!important;font-weight:400!important}
body #card700 .r700:has(#frowcat){box-shadow:none!important;border-color:transparent!important;background:transparent!important}
/* Mais detalhes: faixa de 5 ferramentas sempre visível + cartão «Mais detalhes ›» */
#md742{display:flex!important;flex-direction:column;background:transparent!important;border:0!important;overflow:visible!important;margin-top:8px!important}
#md742c{background:var(--cartao);border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:2px 6px!important}
#md742h{background:var(--cartao)!important;border:1px solid rgba(0,0,0,.08)!important;border-radius:14px;margin-top:8px}
#md742 .mdg742 button{min-height:46px!important;padding:3px 2px!important}
#md742 #addnext{width:100%;margin-top:10px;background:var(--verdeclaro)!important;color:var(--verde)!important}
/* Guardar: barra fixa no fundo, 56 dp, cinzento se inválido, ausente com o teclado aberto */
body .addbtns.stick700{bottom:calc(12px + env(safe-area-inset-bottom))!important;left:16px!important;right:16px!important;border-top:0!important;background:transparent!important;padding:0!important;margin:0!important}
body .addbtns.stick700 #addsave{flex:1 1 auto!important;width:100%;height:56px;min-height:56px;border-radius:16px;font-size:calc(18px*var(--fs,1));background:var(--verde)!important;color:var(--sobreVerde,#fff)!important}
body .addbtns.stick700 #addnext{display:none!important}
body .addbtns.stick700.dis791 #addsave{background:#cdd8d0!important;color:#7b8a82!important;box-shadow:none!important}
body.kpaberto .addbtns.stick700{display:none!important}
/* teclado aberto: painel com visor, chips só de símbolos, ferramentas, atalhos e teclas */
#kpvisor791{display:none}
@media (min-height:620px){
 body #kpsheet{height:min(446px,60dvh)!important}
 #kpsheet>.kpcard{max-height:none!important;display:flex!important;flex-direction:column;padding:12px 16px max(10px,env(safe-area-inset-bottom))!important;gap:6px}
 #kpsheet #kpzona{display:contents!important}
 #kpsheet #kpvisor791{display:flex;order:0;align-items:center;justify-content:space-between;gap:10px;height:44px;flex:none;border:1.5px solid var(--verde);border-radius:12px;background:var(--cartao,#fff);padding:0 14px}
 #kpvisor791 .kvx{color:var(--suave,#777);font-size:calc(16px*var(--fs,1));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 #kpvisor791 .kvv{color:var(--verde);font-weight:800;font-size:calc(24px*var(--fs,1));white-space:nowrap}
 #kpsheet #kpmoedas{order:1;flex:none;width:100%;gap:6px;padding:0!important;overflow-x:auto;scroll-snap-type:x proximity}
 #kpsheet #kpmoedas .kpmc{flex:0 0 calc((100% - 24px)/5);height:34px;min-height:34px;padding:0 2px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:calc(15px*var(--fs,1));scroll-snap-align:start}
 #kpsheet #kpmoedas .kpmc .kpb{display:none!important}
 #kpsheet #kpmoedas .kpmc .kbc{font-size:calc(15px*var(--fs,1))!important;font-weight:800}
 #kpsheet .kdots699{order:2;flex:none;height:8px;margin:0}
 #kpsheet .kpfixos{order:3;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;flex:none}
 #kpsheet .kpfixos>button{height:32px;min-height:32px;width:auto;padding:0;border:1px solid #d8d2c2;background:var(--cartao,#fff);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--verde)}
 #kpsheet .kpfixos>button svg{width:20px;height:20px}
 #kpsheet .kpdir{order:4;display:grid!important;grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;flex:none;padding:0!important}
 #kpsheet .kpdir .kprap{display:contents!important}
 #kpsheet .kpdir .kprapk{height:30px;min-height:30px;padding:0;margin:0;border-radius:10px;font-size:calc(13px*var(--fs,1))}
 #kpsheet .kpgrid{order:5;flex:1 1 auto!important;min-height:0;gap:6px!important}
 #kpsheet .kpk,#kpsheet .kpfeito{border-radius:14px!important;font-size:calc(24px*var(--fs,1))!important}
}
/* beta.786 ajustes 1 */
body .addbtns.stick700{display:block!important}
body .addbtns.stick700 #addsave{display:block!important;width:100%!important;max-width:none!important}
#caterr791{padding-bottom:2px!important}
body #valorcard631 #valorhint776{white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;font-size:calc(11px*var(--fs,1))!important}
#catrap791 button:not(.todas791){flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;padding:0 10px;font-size:calc(13px*var(--fs,1))}
#catrap791 button.todas791{flex:none;padding:0 10px;font-size:calc(13px*var(--fs,1))}
#catrap791+.kdots699{display:none!important}
#md742 #md742h .chv742{transform:none!important}
#md742.ab742 #md742h .chv742{transform:rotate(90deg)!important}
body.kpaberto #valorcard631 #valorhint776{display:none!important}
body.kpaberto #card700 .r700{min-height:34px!important}
body.kpaberto #valorcard631{margin:4px 0!important}
body.kpaberto .tipotoggle{margin-bottom:2px!important}
@media (min-height:620px){
 #kpsheet #kpmoedas{gap:0!important}
 #kpsheet #kpmoedas .kpmc{flex:0 0 calc((100% - 30px)/5)!important;margin-right:6px!important}
 #kpsheet .kdots699{order:2!important;flex:none;height:8px}
}
@media (min-height:620px){ #kpsheet .kdots699{position:relative!important;height:8px!important;margin:-2px 0 0!important} }
#caterr791{font-size:calc(12px*var(--fs,1))!important}
body.kpaberto #valorcard631{padding:3px 12px 4px!important;gap:0!important}
body.kpaberto #valorcard631 .hb700 #vc631valor{font-size:calc(24px*var(--fs,1))!important;line-height:1.05!important}
body.kpaberto #olho791{height:32px;width:44px}
body.kpaberto #valorcard631 .hb700{min-height:0!important}
body.kpaberto #catrap791{padding:0 2px 2px!important;margin:0!important}
body.kpaberto #catrap791 button{height:30px}
body.kpaberto #card700 .r700,body.kpaberto #card700 .r700 *{min-height:0}
body.kpaberto #card700 .r700{height:32px!important;padding-top:0!important;padding-bottom:0!important}
body.kpaberto #caterr791{padding-top:0!important;margin-top:-4px}
body.kpaberto #card700{margin-top:4px!important}
body.kpaberto #card700 .r700{height:30px!important}
body.kpaberto .tipotoggle{margin-top:-10px!important}
body:has(#addview:not(.hidden)) #addview{padding-bottom:96px}
/* beta.786 escuro */
body.escuro #valorcard631[data-t742="d"],body.escuro #valorcard631.z776h[data-t742="d"]{background:#3a2422!important;color:#ffb4ab!important}
body.escuro #valorcard631[data-t742="r"],body.escuro #valorcard631.z776h[data-t742="r"]{background:#1f3a2b!important;color:#8fe0b0!important}
body.escuro #valorcard631[data-t742="t"],body.escuro #valorcard631.z776h[data-t742="t"]{background:#1f2f43!important;color:#a8c8f0!important}
body.escuro #olho791{background:#1c2924;border-color:#2a3a33;color:#7fd6a8}
body.escuro #catrap791 button:not(.todas791){background:#1c2b26;color:#7fd6a8;border-color:#3f8a69}
body.escuro #catrap791 button.on{background:var(--verde);color:#fff}
body.escuro #caterr791{color:#ffb4ab}
body.escuro .addbtns.stick700.dis791 #addsave{background:#2a3a33!important;color:#7d8f86!important}
body.escuro #kpvisor791{background:#1c2924;border-color:#3f8a69}
body.escuro #kpvisor791 .kvv{color:#7fd6a8}
#valorcard631.mascara791 #vc631valor{filter:blur(9px)}
/* beta.786 proporções da maquete aprovada (compactar fechado) */
#addview .tipotoggle button{padding:5px 8px!important;height:32px!important;min-height:0!important;font-size:12px!important;line-height:1.1!important}
#addview .tipotoggle{height:32px!important}
#valorcard631{padding:4px 12px 4px!important;margin-top:4px!important}
#valorcard631 .ha700{height:12px!important}
#valorcard631 #vc631tipo{font-size:11px!important}
#valorcard631 .hb700{height:30px!important}
#valorcard631 #vc631valor{font-size:22px!important;height:auto!important;line-height:1.1!important}
#olho791{height:30px!important;min-height:0!important;width:44px!important}
#olho791 svg{height:20px!important;width:20px!important}
#valorhint776{display:none!important}
#catrap791{height:30px!important;padding:0 2px!important;margin:4px 0 !important}
#catrap791 button{height:26px!important;font-size:11.5px!important;padding:0 9px!important}
#card700{margin-top:5px!important}
#card700 .r700{min-height:0!important;height:34px!important;padding:2px 12px!important}
#card700 .r700 .ick742 svg{height:18px!important;width:18px!important}
#card700 .r700 .frow,#card700 .r700 .fval{font-size:13px!important}
#caterr791{height:14px!important;font-size:11px!important;padding:0 12px 0 57px!important}
#md742{margin-top:5px!important}
#md742h{height:38px!important;min-height:0!important;padding:2px 14px!important;margin-top:5px!important}
#md742c{padding:1px 6px!important}
#md742c .mdg742 button{height:38px!important;padding:2px!important}
#addview .tipotoggle{margin-top:-14px!important}
#card700 .r700{height:31px!important}
#card700 .r700 .frow,#card700 .r700 .fval,#card700 .r700 label{font-size:12.5px!important}
#valorcard631{padding:3px 12px!important}
#md742c .mdg742 button{height:34px!important;font-size:10.5px!important}
#md742h{height:34px!important}
#addview .tipotoggle{margin-top:-9px!important}
body.esc791 #kpvisor791 .kvx,body.esc791 #kpvisor791 .kvv{filter:blur(8px)}
body.escuro #valorcard631 #vc631valor,body.escuro #valorcard631 #vc631tipo{color:inherit!important}
body.kpaberto #md742{display:none!important}
body.escuro #valorcard631,body.escuro #valorcard631 *{transition:none!important}
html body.escuro #valorcard631[data-t742="d"] .hb700 #vc631valor,html body.escuro #valorcard631[data-t742="d"] .ha700 #vc631tipo{color:#ffb4ab!important}
html body.escuro #valorcard631[data-t742="r"] .hb700 #vc631valor,html body.escuro #valorcard631[data-t742="r"] .ha700 #vc631tipo{color:#8fe0b0!important}
html body.escuro #valorcard631[data-t742="t"] .hb700 #vc631valor,html body.escuro #valorcard631[data-t742="t"] .ha700 #vc631tipo{color:#a8c8f0!important}
body.kbd791 .addbtns.stick700{position:static!important;margin:10px 16px 16px!important;left:auto!important;right:auto!important;bottom:auto!important}
body.kbd791 #addview{padding-bottom:16px!important}
/* beta.786f */
#acoes791{background:var(--cartao);border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:1px 6px;margin-top:5px}
#acoes791 .mdg742 button{height:34px!important;font-size:10.5px!important;min-height:0!important;padding:2px!important}
#md742 #md742h{margin:5px 0 0!important;order:0!important}
#md742.ab742 #md742c{display:block!important;margin-top:6px}
#md742 #md742c .mdg742 button{height:38px!important}
body.sem-espaco791 #acoes791,body.sem-espaco791 #md742{display:none!important}
body.kpaberto:not(.sem-espaco791) #md742{display:block!important}
#md742 #addnext{display:block!important;background:transparent!important;border:1.5px solid var(--verde)!important;color:var(--verde)!important;height:44px!important;min-height:0!important;font-size:14px!important;border-radius:14px!important;margin-top:10px!important;box-shadow:none!important}
#md742 #addnext.dis791{border-color:#b5c2ba!important;color:#8a9a91!important}
body.escuro #md742 #addnext.dis791{border-color:#3c4f46!important;color:#7d8f86!important}
/* alinhamento: valores das linhas à direita, rótulos numa coluna fixa */
#card700 .r700 .frow:not(#frowdia){display:flex!important;align-items:center}
#card700 .r700 .frow:not(#frowdia)>span:first-child{flex:0 0 76px}
#card700 .r700 .frow:not(#frowdia) b{flex:1;text-align:right}
#card700 #frowdia{display:flex!important;align-items:center}
#card700 #frowdia .flab{flex:0 0 76px;font-size:12.5px!important;position:static!important}
#card700 #frowdia .fval{margin-left:auto;text-align:right}
#card700 #frowdia #horatxt{margin-left:8px}
#card700 #nota{text-align:right}
#card700 #nota{padding-right:30px!important}
#addview{padding-bottom:90px!important}
html body #card700 .acwrap #nota,html body #card700 #nota{padding-right:46px!important;text-overflow:ellipsis}
/* beta.786g — quando cabe, a geometria com a calculadora aberta é igual à fechada */
html body.kpaberto.natural791 .tipotoggle{margin:-9px 0 14px!important}
html body.kpaberto.natural791 #valorcard631{margin:6px 0!important;padding:7px 14px 8px!important;gap:2px!important}
html body.kpaberto.natural791 #valorcard631 .hb700 #vc631valor{font-size:calc(28px*var(--fs,1))!important;line-height:1.1!important}
html body.kpaberto.natural791 #catrap791{margin:4px 0!important;padding:0 2px!important}
html body.kpaberto.natural791 #caterr791{margin:0!important}
html body.kpaberto.natural791 #card700{margin-top:5px!important}
html body.kpaberto.natural791 #card700 .r700{height:31px!important;min-height:0!important;padding:2px 12px!important}
/* beta.786g2 */
html body #card700 #frowdia #diatxt{margin-left:auto!important;width:auto!important;flex:0 0 auto!important;text-align:right!important}
html body #card700 #frowdia #horatxt{margin-left:8px!important;width:auto!important;flex:0 0 auto!important}
html body.kpaberto.tight791 #catrap791{display:none!important}
html body.kpaberto.tight791 #card700 .r700{height:28px!important;min-height:0!important;padding-top:0!important;padding-bottom:0!important}
html body.kpaberto.tight791 #card700{margin-top:2px!important}
html body.kpaberto.tight791 #valorcard631{margin:2px 0!important}
html body #card700 #frowdia #horatxt{margin-right:12px!important}
html body #card700 #frowdia .flab{width:76px!important;min-width:0!important;flex:0 0 76px!important}
html body #card700 #frowdia #horatxt{margin-left:6px!important;margin-right:8px!important}
/* beta.786j — estabilidade do formulário + folha Categoria em duas colunas */
html body #caterr791{display:flex!important;visibility:hidden}
html body #caterr791.on{visibility:visible}
html body.calcaberta741 #card700 #frowdia #diatxt{margin-left:auto!important;width:auto!important;flex:0 0 auto!important;text-align:right!important;padding:0!important}
html body.calcaberta741 #card700 #frowdia #horatxt{margin-left:6px!important;margin-right:8px!important;width:auto!important;flex:0 0 auto!important;text-align:right!important;padding:0!important}
html body.calcaberta741 #card700 #frowdia .flab{width:76px!important;min-width:0!important;flex:0 0 76px!important}
html body.calcaberta741 #card700 #frowdia{gap:0!important}
html body.catv3 #sheetcat .bbody{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-content:start;gap:6px;padding:6px;overflow-y:auto;overflow-x:hidden}
html body.catv3 #sheetcat #catchips{display:contents}
html body.catv3 #sheetcat #catchips .catchip{width:100%;min-width:0;white-space:normal;line-height:1.15;gap:8px}
html body.catv3 #sheetcat #catchips .catchip>span:not(.catsubabrir){flex:1;min-width:0;overflow-wrap:anywhere}
html body.catv3 #sheetcat #subbox,html body.catv3 #sheetcat #subbox.hidden{grid-column:1/-1;display:block;visibility:visible;overflow:visible;padding:4px 2px 6px;border-radius:12px;background:color-mix(in srgb,var(--verde) 8%,transparent)}
html body.catv3 #sheetcat #subbox.nosub806{display:none!important}
html body.catv3 #sheetcat #subchips{display:flex;flex-direction:row;flex-wrap:wrap;gap:6px}
html body.catv3 #sheetcat #subchips .contachip{width:auto;max-width:100%;min-height:40px;padding:6px 12px;border-radius:20px}
html body.catv3 #sheetcat #subchips .catdica{display:none}
#catrec806{grid-column:1/-1;order:-1}
#catrec806.vazio806{display:none}
#catrec806 .rt806{font-size:calc(12px*var(--fs,1));font-weight:700;color:var(--suave);margin:2px 2px 4px}
#catrec806 .rg806{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}
#catrec806 button{display:flex;align-items:center;gap:8px;min-height:44px;min-width:0;text-align:left;font:inherit;font-size:calc(14px*var(--fs,1));font-weight:700;color:var(--texto);background:var(--verdeclaro);border:1.5px solid color-mix(in srgb,var(--verde) 40%,transparent);border-radius:12px;padding:6px 10px;cursor:pointer}
#catrec806 button svg{width:26px;height:26px;flex:none}
#catrec806 button span{flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.15}
html body.catv3 #sheetcat.todas524 #catrec806{display:none!important}
html body.catv3 #sheetcat #catTodas524{grid-column:1/-1}
html body.catv3 #sheetcat #catchips .catchip{padding:6px 4px 6px 8px;gap:6px;font-size:calc(13.5px*var(--fs,1))}
html body.catv3 #sheetcat #catchips .catchip svg{width:28px;height:28px}
html body.catv3 #sheetcat #catchips .catchip>span:not(.catsubabrir){overflow-wrap:normal;word-break:normal;hyphens:none}
html body.catv3 #sheetcat #catchips .catsubabrir{min-width:48px;margin-left:2px}

/* beta.786l: Ordenar */
html body.catv3 #sheetcat #catord807{border:0;background:transparent;color:var(--verde);font:inherit;font-weight:700;font-size:calc(14px*var(--fs,1));min-height:48px;padding:0 10px}
html body.catv3 #sheetcat.ord807 #catrec806,html body.catv3 #sheetcat.ord807 #subbox{display:none!important}
html body.catv3 #sheetcat .catchip .hd807{flex:none;display:inline-flex;align-items:center;justify-content:center;width:34px;min-height:34px;margin-left:auto;font-size:20px;font-weight:700;color:var(--suave);touch-action:none}
html body.catv3 #sheetcat .catchip.arr807{opacity:.75;box-shadow:0 4px 14px rgba(0,0,0,.25)}
html body.catv3 #sheetcat #catord807{align-self:center;line-height:1;margin:0;display:inline-flex;align-items:center}
html body.catv3 #sheetcat .btop .bicons{align-items:center}
html body.catv3 #sheetcat.ord807 .catchip .catsubabrir{display:none}
/* beta.786m: estabilidade - pontinhos das moedas no espaço livre entre moedas e ícones (sem linha própria); painel mais baixo na mesma medida, teclas iguais */
@media (min-height:620px){
 html body #kpsheet .kdots699{height:0!important;margin:-6px 0 0!important;position:relative!important;top:1px}
 html body #kpsheet{height:min(434px,60dvh)!important}
}
/* beta.786m: linha Dia/hora igual com a calculadora aberta e fechada (mesmo espaço, tamanho e alinhamento) */
html body.calcaberta741 #card700 #frowdia{gap:8px!important}
html body.calcaberta741 #card700 #frowdia #diatxt,html body.calcaberta741 #card700 #frowdia #horatxt{font-size:calc(14px*var(--fs,1))!important}
html body.calcaberta741 #card700 #frowdia #horatxt{text-align:left!important}
html body.calcaberta741 #card700 #frowdia{align-items:flex-start!important}
html body.calcaberta741 #card700 #frowdia #diatxt,html body.calcaberta741 #card700 #frowdia #horatxt{padding:2px 0!important}

/* beta.786m: abas dentro do cartão do valor (sai o texto repetido «Despesa»; o aviso «Preenche os dados» fica oculto) */
html body.tabcard786 #valorcard631{padding:6px 10px 8px!important;gap:4px!important;margin-top:0!important}
html body.tabcard786 #valorcard631 .tipotoggle{margin:0!important;display:flex;gap:6px;width:100%}
html body.tabcard786 #valorcard631 .ha700{height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible}
html body.tabcard786 #valorcard631 .hb700{margin:0!important;min-height:0!important}
html body.tabcard786 #valorcard631 #passo437,html body.tabcard786 #valorcard631 #vc631tipo{display:none!important}
/* beta.786m: teclas pintadas (só cor), visor com conta pequena e resultado maior */
html body #kpsheet .kpk.kpop{background:#dff0e6;border-color:#9ccbb0;color:#0f6b45;font-weight:800}
html body #kpsheet .kpk.kpop.kpacc{background:#fbe3df;border-color:#e3a8a0;color:#b3261e}
html body #kpsheet .kpk.kpop.kpsel786{background:#1f7a55;border-color:#1f7a55;color:#fff}
html body.escuro #kpsheet .kpk.kpop{background:#1f3a2e;border-color:#2f5a46;color:#7fd6a8}
html body.escuro #kpsheet .kpk.kpop.kpacc{background:#3a2220;border-color:#6a3a36;color:#ff9a90}
html body.escuro #kpsheet .kpk.kpop.kpsel786{background:#2e8a63;border-color:#2e8a63;color:#fff}
html body #kpvisor791 .kvx{font-size:calc(12.5px*var(--fs,1))!important;font-weight:400!important}
html body #kpvisor791 .kvv{font-size:calc(30px*var(--fs,1))!important;line-height:1!important}
/* beta.786m: com as abas no cartão, o estado «cabe» (calculadora aberta) usa as mesmas medidas do fechado */
html body.tabcard786.kpaberto.natural791 #valorcard631{margin:0 0 6px!important;padding:6px 10px 8px!important;gap:4px!important}
html body.tabcard786.kpaberto.natural791 #valorcard631 .tipotoggle{margin:0!important}
html body.tabcard786.kpaberto.natural791 #valorcard631 .hb700 #vc631valor{font-size:calc(28px*var(--fs,1))!important;line-height:1.1!important}

/* beta.786m: janela baixa com a calculadora aberta - cartão do valor fixo, só o formulário desliza; teclas e campos com o tamanho normal */
html body.kpaberto.rola786 #valorcard631{position:sticky!important;top:0;z-index:6}
html body.calcaberta741 #addview{padding-bottom:14px!important}
html body.kpaberto #valorcard631{position:sticky!important;top:0;z-index:6}
html body #kpsheet{height:434px!important}
/* beta.786n: Teclas rápidas com o teclado por cima */
#kpsheet.kp786cfg{z-index:9650}
#kpcfg698.pad786{align-items:flex-start;padding-top:8px}
#kpcfg698.pad786 .kpcfgc{max-height:calc(100dvh - 434px - 16px)}
#kpcfg698.pad786 .kpcfgh,#kpcfg698.pad786 .kpcfgnota{display:none}

/* beta.786o */
#guardahint786{display:none;text-align:center;color:#8a4b00;font-size:calc(12px*var(--fs,1));line-height:1.2;padding:0 8px 4px}
html body.fs-max #guardahint786{width:auto;white-space:normal}
html body.fs-max #reg744 .reg744t b{white-space:normal}
html body.fs-max .addbtns.stick700 #addsave{white-space:normal;font-size:calc(16px*var(--fs,1))}
#guardahint786.on{display:block}
body.escuro #guardahint786{color:#ffcf8a}
#md742 #md742h .chv742{transition:none!important;display:inline-block;transform:rotate(90deg)!important}
#md742.ab742 #md742h .chv742{transform:rotate(-90deg)!important}
#guardahint786{width:max-content;max-width:100%;margin:0 auto 4px;padding:2px 10px 3px;border-radius:10px;background:var(--cartao,#fff);box-shadow:0 0 0 1px rgba(0,0,0,.08)}
/* beta.786o: ao arrastar a folha para baixo, o formulário por trás aparece inteiro (não cortado a meio ecrã) */
body.arrasta786.painelaberto main,body.arrasta786.kpaberto.painelaberto main{height:calc(100dvh - var(--headerH,45px))!important}
/* beta.786o: o texto junto de Guardar não tapa o último botão do formulário */
body:not(.kpaberto):not(.kbd791):has(#guardahint786.on) #addview{padding-bottom:118px!important}
/* beta.786p: Teclas rápidas com o teclado aberto - linhas inteiras (sem linha cortada junto ao título) */
#kpcfg698.pad786 .kpcfglista{scroll-snap-type:y mandatory}
#kpcfg698.pad786 .kpcfglista>*{scroll-snap-align:start}
/* beta.786q: o anel de foco e a borda esquerda dos campos das Teclas rápidas não ficam cortados pela lista rolável */
.kpcfglista{padding-left:5px;padding-right:5px}
.kpcfglista .kpcfgl{margin-left:-0px}
/* beta.786t: a pega de ordenar recebe o gesto, nao o scroll da folha. */
#sheetcat.ord807 .hd807{touch-action:none;user-select:none;-webkit-user-select:none}
/* Organizar mantém a seleção anterior e mostra uma ordem única em linhas. */
html body.catv3 #sheetcat.ord807 .bbody{display:flex!important;flex-direction:column!important;gap:8px}
html body.catv3 #sheetcat.ord807 .hintOrg786{width:100%;margin:0 0 4px;flex:none}
html body.catv3 #sheetcat.ord807 #catchips{display:flex!important;flex-direction:column!important;width:100%;gap:7px}
html body.catv3 #sheetcat.ord807 #catchips .catchip{width:100%!important;min-height:52px!important;height:auto!important;padding:10px!important}
html body.catv3 #sheetcat.ord807 #shcatall524,html body.catv3 #sheetcat.ord807 #shcatedit{display:none!important}
html body.catv3 #sheetcat.ord807 .btop>span:first-child{flex:1;white-space:nowrap}
html body.catv3 #sheetcat.ord807 #catord807{font-size:13px;padding:6px;min-width:76px}
/* A gaveta termina acima de Guardar quando chega ao fim do scroll. */
body:not(.kpaberto):not(.kbd791) #addview{padding-bottom:118px!important}

/* beta.786x: leitura multiano aprovada, mesma aritmética e janela MAX. */
.e7period786x{display:flex;flex-direction:column;gap:3px;margin:8px 0 10px;padding:9px 11px;border-radius:10px;background:var(--verdeclaro,#eef0e6);font-size:calc(11px*var(--fs,1));line-height:1.4;overflow-wrap:anywhere}
.e7period786x b{font-size:calc(12px*var(--fs,1))}.e7period786x small{font-size:calc(10px*var(--fs,1));opacity:.78}
.e7not786x{font-size:calc(10px*var(--fs,1));line-height:1.4;color:var(--suave,#777);margin:8px 0}
#em713max .e7period786x{flex:none;display:flex;flex-direction:row;flex-wrap:wrap;gap:3px 12px;margin:0 0 3px;padding:3px 8px;font-size:10px}
#em713max .e7period786x b,#em713max .e7period786x small{font-size:10px}#em713max .e7not786x{display:none}

/* beta.786y: não aplicar contorno de seleção a letras ou alvos invisíveis. */
#graf238 .g238cont g.sel457,#graf238 .g238cont .gau460 rect.sel457{stroke:none!important;stroke-width:0!important}
#graf238 .g238cont g.sel457 text{stroke:none!important;stroke-width:0!important;font-weight:600}
#graf238 .g238cont g.sel457 rect{stroke:var(--texto,#17211d);stroke-width:1.5}
#graf238 .g238cont g.sel457 rect:first-of-type{stroke:none}
#graf238 .g238cont .gau460:has(rect.sel457)>line{stroke-width:4}
.g786yjanela{padding:10px 12px;margin:8px 0 14px;border-radius:12px;background:var(--verdeclaro,#e5f2eb);font-size:calc(12px*var(--fs,1));line-height:1.45}
/* beta.786z: ficha com valor em destaque e mesmos controlos. */
#ficha634 .ficha786z{position:relative;padding:20px!important;border-radius:22px 22px 0 0!important;max-height:88%!important;overscroll-behavior:contain}
#ficha634 .f786ztitulo{margin:0 46px 6px 0!important;font-size:calc(20px*var(--fs,1));line-height:1.3;overflow-wrap:anywhere}
#ficha634 .f786zvalor{display:flex!important;flex-direction:column;align-items:flex-start;gap:5px!important;padding:6px 0 18px!important;border:0!important}
#ficha634 .f786zvalor>b{font-size:calc(28px*var(--fs,1));text-align:left!important;line-height:1.25}
#ficha634 .f786zrow{font-size:calc(13px*var(--fs,1));line-height:1.45;min-width:0}#ficha634 .f786zrow>b{min-width:0;white-space:pre-wrap}
#ficha634 .f786zbtn{border:0!important;border-radius:12px;background:var(--verdeclaro,#eef4ee);color:var(--verde);font-weight:600;font-size:calc(13px*var(--fs,1));padding:10px 7px;overflow-wrap:anywhere}
#ficha634 .f786zbtn.f786zprincipal{background:var(--verde);color:white}
#ficha634 .f786zfechar{position:absolute;right:14px;top:12px;width:44px;height:44px;border-radius:50%;border:0;background:var(--verdeclaro,#eef4ee);color:var(--verde);font-size:18px}

/* beta.786ab: cartões de opções adaptam-se ao espaço, mesmos controlos. */
#md742 .sws700{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:8px}
#md742 .sws700>div,#md742 .sws700>label{width:auto;min-width:0;gap:8px}
#md742 .sws700 label{min-width:0;overflow-wrap:anywhere}

/* PT/EN text-fit: keep each short balance summary together without shrinking text. */
#homeview #hsec716s-saldo{display:flex!important;flex-wrap:wrap;gap:2px 10px}
#hsec716s-saldo>span{white-space:nowrap}

body:has(#fire631view:not(.hidden)) header .vh750t{white-space:normal;line-height:1.15;font-size:calc(15px*var(--fs,1));overflow-wrap:normal}




/* ===== beta.897: Relatórios Etapa 1 - landing + organização dos menus ===== */
#rel897dots{flex:none;position:sticky;right:0;margin-left:auto;background:var(--verdeclaro);color:var(--verde);border:0;border-radius:50%;width:38px;height:38px;min-height:38px;font-size:20px;font-weight:800;line-height:1;display:inline-flex;align-items:center;justify-content:center;padding:0 0 3px}
#rel897menu{position:fixed;top:56px;right:10px;left:10px;z-index:96;background:var(--cartao,#fff);border-radius:14px;box-shadow:0 10px 30px rgba(15,30,22,.22);padding:6px;max-width:520px;margin:0 auto}
@media(min-width:560px){#rel897menu{left:auto;width:340px}}
#rel897menu .r897mi{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:0;border-radius:10px;padding:9px 8px;min-height:44px;color:var(--texto,#17211d)}
#rel897menu .r897mi:active{background:var(--verdeclaro)}
#rel897menu .r897ic{flex:none;width:30px;height:30px;border-radius:9px;background:var(--verdeclaro);color:var(--verde);display:inline-flex;align-items:center;justify-content:center}
#rel897menu .r897ic svg{width:16px;height:16px}
#rel897menu .r897mtx{flex:1;min-width:0;display:flex;flex-direction:column}
#rel897menu .r897mtx b{font-size:calc(14px*var(--fs,1))}
#rel897menu .r897mtx small{font-size:calc(11px*var(--fs,1));color:var(--suave,#7d8b82)}
#rel897menu .r897ch{color:var(--suave,#7d8b82);font-weight:800}
.r897sel{margin:0 0 10px;position:relative}
.r897sel .r897selbtn{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:var(--cartao,#fff);border:1px solid var(--borda,#e3e9e5);border-radius:12px;padding:9px 12px;min-height:44px;color:var(--texto,#17211d)}
.r897sel .r897seltx{flex:1;min-width:0;display:flex;align-items:baseline;gap:8px}
.r897sel .r897seltx b{font-size:calc(14px*var(--fs,1));white-space:nowrap}
.r897sel .r897seltx small{font-size:calc(11px*var(--fs,1));color:var(--suave,#7d8b82);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.r897sel .r897car{color:var(--suave,#7d8b82);font-size:12px}
.r897sel .r897drop{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:40;background:var(--cartao,#fff);border:1px solid var(--borda,#e3e9e5);border-radius:12px;box-shadow:0 10px 26px rgba(15,30,22,.16);padding:4px;max-height:300px;overflow-y:auto}
.r897sel .r897it{display:block;width:100%;text-align:left;background:none;border:0;border-radius:9px;padding:8px 10px;color:var(--texto,#17211d)}
.r897sel .r897it:active{background:var(--verdeclaro)}
.r897sel .r897it b{display:block;font-size:calc(13px*var(--fs,1))}
.r897sel .r897it small{display:block;font-size:calc(11px*var(--fs,1));color:var(--suave,#7d8b82)}
.r897chartcard{background:var(--cartao,#fff);border-radius:14px;box-shadow:0 1px 4px rgba(20,40,30,.07);padding:12px 12px 10px;margin:0 0 10px}
.r897chartcard .r897ct{font-size:calc(14px*var(--fs,1));font-weight:800;color:var(--texto,#17211d)}
.r897chartcard .r897cs{font-size:calc(11px*var(--fs,1));color:var(--suave,#7d8b82);margin:1px 0 6px}
.r897chartcard .r897cbody svg{width:100%;height:auto;display:block}
.r897chartcard .r897cbody .g238vz{margin:0 auto}
.r897expl{background:var(--verdeclaro);border-radius:10px;padding:8px 10px;margin:8px 0 10px;font-size:calc(11.5px*var(--fs,1));color:var(--verdeesc,#1d4a38)}
.r897expl b{display:block;margin-bottom:2px}
.r897chartcard .r897full{display:block;width:100%;text-align:center;background:none;border:1px solid var(--borda,#e3e9e5);border-radius:10px;padding:8px;min-height:38px;color:var(--verde);font-weight:700;font-size:calc(12.5px*var(--fs,1));margin-top:8px}
#rel897evo .r897f{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:calc(11px*var(--fs,1));color:var(--suave,#7d8b82);padding:6px 2px 0}
#rel897evo .r897f b{color:var(--texto,#17211d)}
#rel897evo .r897svg text{fill:var(--suave,#7d8b82)}
#rel897meses{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 10px}
#rel897meses .r897mini{background:var(--cartao,#fff);border-radius:12px;box-shadow:0 1px 4px rgba(20,40,30,.07);padding:9px 10px}
#rel897meses .r897mini small{font-size:calc(11px*var(--fs,1));color:var(--suave,#7d8b82);text-transform:capitalize}
#rel897meses .r897mini b{display:block;font-size:calc(14px*var(--fs,1));color:var(--texto,#17211d);margin:1px 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#rel897meses .r897bar{height:4px;border-radius:2px;background:var(--verdeclaro)}
#rel897meses .r897bar i{display:block;height:4px;border-radius:2px;background:var(--verde)}
#rel821menu,#tot246btns{display:none!important}
#rel897navrow{display:flex;align-items:center;gap:8px;margin:0 0 8px}
#rel897navrow .movnav{flex:1;min-width:0;justify-content:center}
#rel897navrow #rel897dots{position:static;margin-left:auto}
/* beta.897b: divisor «Mais gráficos» no seletor + controlos compactos (maquete v3), alvo de toque >= 36px */
.r897sel .r897div{padding:8px 12px 4px;font-size:calc(10.5px*var(--fs,1));font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--suave,#7d8b82);border-top:1px solid var(--borda,#e3e9e5);margin-top:4px}
.r897sel .r897drop{max-height:60vh;overflow-y:auto}
#totview #frase246{padding:10px 14px;margin:0 0 8px}
.r897sel .r897selbtn{padding:7px 12px;min-height:40px}
#totview #tottabs button{padding:5px 12px;font-size:calc(12.5px*var(--fs,1));min-height:36px}
#rel897navrow{margin:0 0 6px}
#rel897navrow .movnav{margin-bottom:0}
/* Meses lado a lado (aprovado Paulo 30out 04:16): densidade 2x/3x/4x/5x/carrossel, padrao 3x */
.resdens{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 8px}
.resdens button{border:1px solid var(--linha,#e4dfd2);background:var(--cartao);border-radius:999px;padding:6px 12px;min-height:34px;font-size:calc(12.5px*var(--fs,1));font-weight:700;color:var(--verdeesc,#1d4a38);cursor:pointer}
.resdens button.on{background:var(--verde);color:#fff;border-color:var(--verde)}
.resaviso5{font-size:calc(11.5px*var(--fs,1));color:var(--suave);margin:0 0 8px}
#totresumomesesg.resgrid{display:grid;gap:8px}
#totresumomesesg.den2{grid-template-columns:repeat(2,1fr)}
#totresumomesesg.den3{grid-template-columns:repeat(3,1fr)}
#totresumomesesg.den4{grid-template-columns:repeat(4,1fr)}
#totresumomesesg.den5{grid-template-columns:repeat(5,minmax(calc(64px*var(--fs,1)),1fr));overflow-x:auto} /* fonte aumentada: mantem 5 colunas com largura minima legivel e deslize horizontal explicito, sem cortar valores nem encolher fontes */
#totresumomesesg.resgrid .resblock{margin-bottom:0}
#totresumomesesg.resgrid .resmes{font-size:calc(11px*var(--fs,1));text-align:center;margin:0 0 2px}
#totresumomesesg.resgrid .resrow{flex-direction:column;align-items:stretch;gap:6px;padding:8px 6px}
#totresumomesesg.resgrid .resdonut{width:44px;height:44px;margin:0 auto}
#totresumomesesg.resgrid .resdonutin{width:26px;height:26px}
#totresumomesesg.resgrid .resvals div{flex-direction:column;gap:0;text-align:center;font-size:calc(10px*var(--fs,1))}
#totresumomesesg.resgrid .resvals b{white-space:nowrap;overflow:hidden;max-width:100%}
#totresumomesesg.den2 .resdonut{width:52px;height:52px}
#totresumomesesg.den2 .resdonutin{width:32px;height:32px}
#totresumomesesg.den2 .resvals div{font-size:calc(12px*var(--fs,1))}
#totresumomesesg.den4 .resdonut{width:34px;height:34px}
#totresumomesesg.den4 .resdonutin{width:20px;height:20px}
#totresumomesesg.den4 .resvals div{font-size:calc(9px*var(--fs,1))}
#totresumomesesg.den5 .resdonut{width:28px;height:28px}
#totresumomesesg.den5 .resdonutin{width:16px;height:16px}
#totresumomesesg.den5 .resvals div{font-size:calc(8px*var(--fs,1))}
#totresumomesesg.den5 .resmes{font-size:calc(9.5px*var(--fs,1))}
#totresumomesesg.rescarr{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}
#totresumomesesg.rescarr .resblock{flex:0 0 72%;scroll-snap-align:start;margin-bottom:0}
/* Meses densidade - revisao main 04:24: titulos com altura uniforme no 4x/5x (alinha donuts), texto por baixo tambem no carrossel */
#totresumomesesg.den4 .resmes,#totresumomesesg.den5 .resmes{min-height:2.3em;line-height:1.15}
#totresumomesesg.rescarr .resrow{flex-direction:column;align-items:stretch;gap:8px}
#totresumomesesg.rescarr .resdonut{width:52px;height:52px;margin:0 auto}
#totresumomesesg.rescarr .resdonutin{width:32px;height:32px}
#totresumomesesg.rescarr .resvals div{flex-direction:column;gap:0;text-align:center;font-size:calc(11.5px*var(--fs,1))}
#totresumomesesg.rescarr .resmes{text-align:center}

#totresumomesesg.resgrid.resmais{-webkit-mask-image:linear-gradient(to right,#000 88%,rgba(0,0,0,.35) 97%,transparent 100%);mask-image:linear-gradient(to right,#000 88%,rgba(0,0,0,.35) 97%,transparent 100%)}

/* 29-011 (Paulo 29out 09:31:43 «carregamos no dia e a semana salta para o lado»): largura fixa do rotulo do periodo no topo dos Movimentos - os icones Dia/Calendario/Semana/Mes/Tudo deixam de andar com o texto (30/10, out 2026, 26/10-01/11). So layout. */
#barra760 #movnavlabel{flex:0 0 72px!important;width:72px!important;max-width:72px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:clip}

/* 911: chip «Viagem» do filtro de Relatorios (modo compacto rel902 move-o para fora da .movnav e perdia o estilo: aparecia como botao cinzento nativo + ⓘ solto por baixo). Mesmo estilo de pilula dos outros chips; ⓘ na mesma linha. So aparencia. */
#totview>#totvg594{display:inline-block;vertical-align:middle;box-sizing:border-box;margin:4px 6px 4px 10px;min-height:38px;max-width:calc(100% - 78px);padding:0 14px;border:1px solid rgba(0,0,0,.18);border-radius:999px;background:#fff;color:#17211d;font-family:inherit;font-size:calc(13.5px*var(--fs,1));font-weight:600;line-height:36px}
#totview>#totvg594{align-self:flex-start}
#totview>#totvg594+.aj901{align-self:flex-end;position:relative;top:-33px;margin:0 16px -20px 0!important}

/* Pelo Mundo: dialogos abertos a partir da selecao de despesas ficavam por baixo do painel (z-index 99999) */
#m900selov~.dlg191ov,#m900selov~.dlg{z-index:100000!important}

/* 28-014: chip «Como usar os gráficos» no topo de Relatórios + folha com 4 dicas */
.chip28014{display:inline-block;background:#dfeee6;color:var(--verde,#1d7a54);border:1.5px solid var(--verde,#1d7a54);border-radius:14px;padding:6px 12px;font-weight:700;font-size:calc(12px*var(--fs,1));margin:0 0 8px}
body.escuro .chip28014{background:#173126}
#dicas28014sh{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:18px}
#dicas28014sh.hidden{display:none}
.dicas28014ov{position:absolute;inset:0;background:rgba(20,28,24,.45)}
.dicas28014card{position:relative;background:var(--card,#fff);border-radius:16px;padding:14px;max-width:420px;width:100%;max-height:80vh;overflow:auto;box-shadow:0 8px 30px rgba(0,0,0,.25)}
.dicas28014top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.dicas28014top b{font-size:calc(15px*var(--fs,1));color:var(--texto,#1E4D3A)}
#dicas28014x{border:0;background:none;font-size:17px;color:var(--suave,#5c6b64);padding:4px 8px;cursor:pointer}
.dicas28014tip{background:var(--bg,#F5F2EA);border:1.5px solid var(--linha,#e0dac8);border-radius:12px;padding:9px 10px;margin:6px 0;font-size:calc(12.5px*var(--fs,1));color:var(--texto,#2E4033);line-height:1.45}
.dicas28014tip b{color:var(--verde,#1E4D3A)}

/* 28-025: frase-sintese no detalhe do grafico Evolucao */
.e7frase825{margin:2px 0 8px;font-size:13px;line-height:1.35;color:var(--txt2,#5a6b64)}

/* 30-009: Evolucao em duas linhas */
.e7-2linL2{display:flex;align-items:center;gap:8px;margin:2px 0 6px;flex-wrap:wrap}
.e7-2linOc{display:none!important}
.e7-2linMais{margin-left:auto}

.e7-2linShOv{position:fixed;inset:0;background:rgba(20,22,20,.45);z-index:9600;display:flex;align-items:flex-end;justify-content:center}
.e7-2linSh{background:var(--card,#fff);color:var(--tx,#222);width:100%;max-width:430px;max-height:78vh;border-radius:14px 14px 0 0;padding:10px 14px 16px;overflow-y:auto;box-shadow:0 -6px 24px rgba(0,0,0,.25)}
.e7-2linShCab{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.e7-2linShX{border:0;background:none;font-size:20px;color:inherit;cursor:pointer;padding:2px 8px}
.e7-2linShCorpo h4{margin:10px 0 4px;font-size:12px;opacity:.75}
.e7-2linShCorpo .e7seg2{display:flex;flex-wrap:wrap;gap:6px}
.e7-2linShCorpo .sub{font-size:12px;opacity:.7;margin:2px 0}

.e7-2linL1{display:flex;align-items:center;gap:6px;margin:2px 0 4px}
.e7-2linTit{font-size:15px}
.e7-2linAcc{margin-left:auto;display:flex;gap:4px}

/* 27-043 duplicacao: aviso + candidatos no Marcar recebido */
.rr786aviso{background:var(--verdeclaro,#e3f2ea);border-radius:10px;padding:8px 10px;font-size:12.5px;margin:10px 0 0;color:var(--verdescuro,#14342c)}
.rr786duph{font-size:12.5px;font-weight:700;margin:10px 0 4px}
.rr786cand{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;min-height:48px;border:1.5px solid var(--verde,#1d7a54);border-radius:12px;background:var(--cartao,#fff);color:var(--texto);font:inherit;padding:8px 10px;margin-top:6px;cursor:pointer}
.rr786cand small{opacity:.65}
.rr786nova{font-size:12px;opacity:.7;margin:8px 0 0}

.rr786novah{font-size:13px;font-weight:700;margin:10px 0 0;color:var(--verdescuro,#14342c)}

/* 26-007 FOLHA v1 (lote 1: sheetcat + sheetconta) — aprovado Paulo 31out 15:32:41 ajuste 4: pega visivel, X >=48dp, fecha no veu, bloqueia scroll do fundo. Legados fabmenu/fabbg/sheetab314 INATIVO, intocados. */
#sheetcat>.bcard,#sheetconta>.bcard{height:auto;max-height:86vh;max-width:600px;margin:0 auto;border-radius:22px 22px 0 0}
#sheetcat>.bcard::before,#sheetconta>.bcard::before{content:'';display:block;width:40px;height:4px;border-radius:2px;background:var(--mut,#8fa89f);opacity:.6;margin:8px auto 2px}
#sheetcat .bx,#sheetconta .bx{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0}
body.folha-aberta{overflow:hidden}

/* 26-007 FOLHA v1.1 — letra grande (ate 200%): cabecalho nao sobrepoe, X e icones sempre acessiveis, chips sem extravasamento */
#sheetcat .btop,#sheetconta .btop{flex-wrap:wrap;row-gap:6px}
#sheetcat .btop>span:first-child,#sheetconta .btop>span:first-child{min-width:0;overflow-wrap:anywhere}
#sheetcat .bicons,#sheetconta .bicons{flex-shrink:0;margin-left:auto}
#sheetcat .catchip{white-space:normal;overflow-wrap:anywhere;line-height:1.15;height:auto;min-height:44px}
body.fs-alto #sheetcat .bbody{grid-template-columns:minmax(0,1fr)}
html body.catv3.fs-alto #sheetcat .bbody{grid-template-columns:minmax(0,1fr)!important}

/* ===== 26-007 lote 2 (31 out): achados visuais do QA v5, corrigidos em fs-max =====
   (a) titulo da faixa reg744 deixava de caber e entrava debaixo da estrela a 200%
   (b) em rola786 a 200%, o valorcard sticky tapava a linha Dia no scroll maximo: folga extra no fim do main
   (d) pill Reportar (sempre flutuante, decisao 27-033/24-011 mantida): badge nao escala com a letra e afasta-se mais da linha Conta em repouso */
html body.fs-max #reg744 .reg744t{overflow:hidden;padding-right:6px}
html body.fs-max #reg744 .reg744t b{max-width:100%;font-size:calc(14.5px*var(--fs,1))}
html body.kpaberto.rola786.fs-max main{padding-bottom:calc(var(--navH,60px) + 130px + env(safe-area-inset-bottom))}
html body.fs-max #rep667{font-size:12px;padding:14px 12px}
html body.fs-max:has(#addview:not(.hidden)) #rep667{margin-bottom:94px}
/* espaco estrutural entre Conta e Dia a 200% para a pill flutuante ficar numa faixa limpa, sem tocar linhas/divisores */
html body.fs-max #addview #frowdia{margin-top:64px}
/* (c) chevron das linhas card700: em fs-max a r700 passa a bloco e o chv742 caia orfao a esquerda; fica preso a direita, centrado na linha */
html body.fs-max #card700 .r700{position:relative}
html body.fs-max #card700 .r700>.chv742{position:absolute;right:12px;top:50%;transform:translateY(-50%);margin:0}
/* 30-008: topo compacto do Anel (cartao rel897 Categorias) */
.est008topo{margin:2px 0 8px}
.est008ins{display:flex;align-items:center;gap:8px;background:var(--verdeclaro,#e3f2ea);border-radius:10px;padding:7px 10px;font-size:13.5px;font-weight:600;color:var(--verdescuro,#14342c);margin-bottom:8px}
.est008ic{display:inline-flex;width:18px;height:18px}
.est008row{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}
.est008esq{display:flex;align-items:center;gap:8px}
.est008chip{border:1.5px solid var(--verdescuro,#14342c);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700;color:var(--verdescuro,#14342c);background:var(--cartao,#fff);cursor:pointer}
.est008info{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--verde,#1d7a54);color:var(--verde,#1d7a54);font-size:12px;font-weight:700;font-style:italic;background:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.est008per{font-size:12.5px;font-weight:600;color:var(--suave,#43524b);border:1px solid #d8d4c8;border-radius:999px;padding:5px 10px;background:var(--cartao,#fff);cursor:pointer}

/* COLAR VALORES (20261102-001): icone Colar ao lado do campo valor (Registar e Editar) */
#valorwrap input{padding-right:100px}#valorwrap.antes input{padding-right:52px;padding-left:12px}
#valorcolar{position:absolute;right:44px;top:50%;transform:translateY(-50%);width:48px;height:48px;min-width:48px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--verde,#1d7a54);padding:0;margin:0}
#valorwrap.antes #valorcolar{right:4px}
#valorcolar.nocartao{right:70px;top:auto;bottom:-3px;transform:none;color:#1d7a54;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:24px;width:48px;height:48px;z-index:3}

/* ===== FASE 5 (g) revisão ecrãs — correções pequenas Início (4 nov 2026, ramo feat/f5-g-ecras) ===== */
/* banner de cópias: com letra grande o texto e o botão deixam de se sobrepor */
#banner672{flex-wrap:wrap}
#banner672>span{flex:1 1 150px;min-width:0}
/* cabeçalho de secção colapsável: com letra a 200% o valor passa para linha própria em vez de esmagar o texto */
.hsec716-h{flex-wrap:wrap}
.hsec716-val{margin-left:auto;white-space:normal;text-align:right;overflow-wrap:anywhere}
.hsec716-mid b{overflow-wrap:break-word}
/* navegação inferior: rótulos nunca saem do ecrã com letra grande (reticências em vez de corte fora do botão) */
nav button{min-width:0;overflow:hidden}
nav button>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* chip do livro no cabeçalho: nunca trunca a uma só letra */
body.barra586 .b586livro{min-width:56px!important}
/* FASE5(g) chip livro: fonte nao duplica a 200% (senao trunca a uma letra) */
body.barra586 .b586livro{font-size:calc(12px*min(var(--fs,1),1.3))!important}
/* FASE5(g) cartao topo saldo: a 200% o valor passa para linha propria; titulo e sub deixam de cortar a meio */
.htop716-wrap .hsec716-h{flex-wrap:wrap}
.htop716-wrap .hsec716-mid{flex:1 1 55%;min-width:0}
.htop716-wrap .hsec716-mid b{white-space:normal}
.htop716-wrap .hsec716-sub{display:block;-webkit-line-clamp:unset;max-height:none}
/* FASE5(g) refinamentos: sub do cartao topo com especificidade suficiente; numeros de dinheiro nao partem a meio */
#homeview .htop716-wrap .hsec716-sub{display:block!important;-webkit-line-clamp:unset!important;white-space:normal!important;overflow:visible!important}
#homeview .htop716-wrap .hsec716-mid b{white-space:normal!important}
/* valores monetarios grandes: nunca partir o numero; fonte com teto 1.5x para caber */
#homeview .saldocard #saldo{font-size:calc(38px*min(var(--fs,1),1.5));overflow-wrap:normal!important;word-break:keep-all!important;white-space:normal}
#receitasmes,#despesasmes{overflow-wrap:normal!important;word-break:keep-all!important}
/* FASE5(g) sub do cartao topo: espacos nbsp tornam a linha indivisivel - teto de fonte 1.4x + quebra de emergencia */
#homeview .htop716-wrap .hsec716-sub{font-size:calc(12px*min(var(--fs,1),1.4))!important;overflow-wrap:anywhere}
/* FASE5(g) saldo grande: teto 1.2x (1.5x cortava); receitas/despesas do cartao: teto 1.3x */
#homeview .saldocard #saldo{font-size:calc(38px*min(var(--fs,1),1.2))!important}
.saldocard #receitasmes,.saldocard #despesasmes{font-size:calc(13px*min(var(--fs,1),1.3))!important}
/* FASE5(g) saldo grande: igualar especificidade da regra 3198 e limitar; b do resumo com teto */
#homeview .hsec716-p .saldocard #saldo{font-size:calc(32px*min(var(--fs,1),1.3))!important;white-space:normal!important;overflow-wrap:normal;word-break:keep-all}
#homeview .hsec716-p .saldocard .resumo b{font-size:calc(15px*min(var(--fs,1),1.3))!important}
/* FASE5(b) margem inferior em TODOS os ecras (main cobre Inicio, Movimentos, Registar, Relatorios, Mais...): escala com a letra */
main{padding-bottom:calc(60px*var(--fs,1) + 30px)}
body.kpaberto main{padding-bottom:16px}
/* FASE5(b) selo Reportar compacto: menos largura */
#rep667{padding:7px 10px!important}
/* FASE5(g) Movimentos a 200%: pills de totais sem empurrar a 3.a para fora; rotulo do mes escala; cabecalho do painel quebra */
#p760tot{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#p760tot .p760pill{min-width:0}
#p760tot .p760pill span{white-space:normal;line-height:1.2;font-size:calc(9px*min(var(--fs,1),1.4))}
#p760tot .p760pill b{font-size:calc(12px*min(var(--fs,1),1.4));overflow-wrap:anywhere}
#barra760 #movnavlabel{max-width:calc(80px*var(--fs,1))!important}
#p760head{flex-wrap:wrap}
#p760head>*{min-width:0}
/* FASE5(g) Movimentos 200% (2.a passagem: regras p760/barra760 sao injetadas por JS depois do stylesheet - precisam !important) */
#p760tot{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#p760tot .p760pill{min-width:0!important}
#p760tot .p760pill span{white-space:normal!important;line-height:1.2!important;font-size:calc(9px*min(var(--fs,1),1.4))!important}
#p760tot .p760pill b{font-size:calc(12px*min(var(--fs,1),1.4))!important;overflow-wrap:normal!important;word-break:keep-all}
#barra760 #movnavlabel{max-width:calc(80px*var(--fs,1))!important;font-size:calc(12px*min(var(--fs,1),1.3))!important}
#p760head{flex-wrap:wrap!important}
/* FASE5(c) aviso «Desfazer» 5 s da tecla AC */
#undotoast905{position:fixed;left:50%;bottom:calc(90px*var(--fs,1));transform:translateX(-50%);background:var(--verde);color:var(--sobreVerde);padding:10px 16px;border-radius:16px;font-weight:700;font-size:calc(15px*var(--fs,1));z-index:1300;box-shadow:0 4px 16px rgba(0,0,0,.28);opacity:0;pointer-events:none;transition:opacity .25s;display:flex;align-items:center;gap:10px;max-width:92vw}
#undotoast905.on{opacity:1;pointer-events:auto}
#undobtn905{background:var(--sobreVerde);color:var(--verde);border:0;border-radius:12px;padding:6px 14px;font-weight:800;font-size:calc(14px*var(--fs,1));cursor:pointer;min-height:36px}
/* F5(g) revisao ecras 200%: limitar escalas que cortam dinheiro/titulos (JS injeta regras depois, daí !important) */
#rel902nav>button.rel902lab{font-size:calc(12px*min(var(--fs,1),1.3))!important;max-width:calc(104px*min(var(--fs,1),1.3))!important}
header .vh750t{font-size:calc(17px*min(var(--fs,1),1.4))!important}
#ct261 .ct261b>div{min-width:0}
#ct261 .ct261b strong{font-size:min(calc(20px*var(--fs,1)),30px)}
#rel825cmd .r825val{font-size:calc(19px*min(var(--fs,1),1.25))!important}
/* F5(g) ronda 3 (revisao main 2026-11-04): header, seletor de seccao, teclado, selo Reportar a 200% */
#rep667{bottom:calc(76px*min(var(--fs,1),2) + env(safe-area-inset-bottom))!important}
body.fs-max header{gap:2px!important;padding-right:8px!important}
body.fs-max header #iabtn{font-size:calc(13px*min(var(--fs,1),1.3))!important;padding:5px 9px!important}
body.fs-max header .b586btn{min-width:30px!important;width:30px!important;height:30px!important;min-height:30px!important;padding:3px!important}
.r897sel .r897seltx{padding-right:66px!important;box-sizing:border-box!important}
.r897sel .r897seltx b{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
#kpsheet .kpk{font-size:calc(22px*min(var(--fs,1),1.5))!important}
#kpzona .kprapk{font-size:calc(13px*min(var(--fs,1),1.25))!important}
#kpzona .kpmc .kbc{font-size:calc(10px*min(var(--fs,1),1.35))!important}
#ct261 .ct261b strong{font-size:min(calc(20px*var(--fs,1)),26px)}
/* F5(g) ronda 3b: o teclado real fica numa folha no body, nao dentro de #kpzona — regras sem prefixo */
.kpk{font-size:calc(22px*min(var(--fs,1),1.4))!important}
.kprapk{font-size:calc(15px*min(var(--fs,1),1.25))!important}
.kpmc .kbc{font-size:calc(10px*min(var(--fs,1),1.35))!important}
/* F5(g) ronda 3c: a folha e #kpsheet — vencer a regra de 2 IDs */
#kpsheet #kpmoedas .kpmc .kbc{font-size:calc(15px*min(var(--fs,1),1.15))!important}
#kpsheet .kprapk{font-size:calc(13px*min(var(--fs,1),1.15))!important}
#kpsheet .kprapk:not(.kpqv){font-size:calc(13px*min(var(--fs,1),1.15))!important}
#kpsheet .kprapk.kpqv{font-size:9px!important;letter-spacing:0!important}
/* F5(g) ronda 3d: lapis da conta fora da margem a 200% (coluna fixa 24px vs glyph 36px+) */
#cvgrupos .contaLinha142{grid-template-columns:40px minmax(0,1fr) auto auto!important}
#cvgrupos .contaLinha142 .lp261{font-size:calc(18px*min(var(--fs,1),1.3))!important}
/* F5(g) ronda 4: evitar colisao nome/saldo e cortes no Mais a 200%. */
body.fs-max #cvgrupos .contaLinha142{grid-template-columns:44px minmax(0,1fr) auto!important}
body.fs-max #cvgrupos .contaLinha142>.ic261{grid-column:1;grid-row:1/4}
body.fs-max #cvgrupos .contaLinha142>span:not(.ic261):not(.lp261){grid-column:2;grid-row:1;min-width:0;overflow-wrap:anywhere}
body.fs-max #cvgrupos .contaLinha142>strong{grid-column:2;grid-row:2;min-width:0;white-space:normal;overflow-wrap:anywhere}
body.fs-max #cvgrupos .contaLinha142>small{grid-column:2;grid-row:3}
body.fs-max #cvgrupos .contaLinha142>.bar261{grid-column:2;grid-row:4}
body.fs-max #cvgrupos .contaLinha142>.lp261{grid-column:3;grid-row:1/4}
#maistemas656{grid-template-columns:repeat(2,minmax(0,1fr))!important}
#maistemas656>.defcard{min-width:0;max-width:100%;overflow-wrap:anywhere}
body.fs-max header #iabtn .b586dot{bottom:2px!important;right:2px!important}
body.fs-max #maistemas656{grid-template-columns:minmax(0,1fr)!important}
/* FAB «+» (fixo, right:16..72px) nunca tapa texto/valores: area reservada lateral nas listas das vistas com FAB (Paulo 4nov 13:54) */
#movlist .mov,.hbloco #ultimos .mov,#totlist .totrow,.totcontarow,.totresumo{padding-right:86px!important}
/* cabecalhos de dia: a reserva vai no contentor (nao no span do valor) e o texto da data quebra para a linha seguinte em vez de truncar/colidir */
#movlist .dia751{padding-right:86px!important;flex-wrap:wrap!important}
#movlist .dia751 .d751w{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;min-width:0}
#movlist .dia751 .d751tt{margin-left:auto}
/* metadados da linha (data · categoria · hora): quebram para 2.a linha em vez de sumir */
.mov751-sub{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
