:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#173b53;background:#f5f8fa;font-size:15px;--navy:#153d59;--green:#7dba23;--line:#e0eaf0;--muted:#7891a3}*{box-sizing:border-box}html,body{margin:0;min-height:100%;-webkit-tap-highlight-color:transparent}body{overscroll-behavior-y:contain}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #54a9ce;outline-offset:2px}[hidden]{display:none!important}.brand{font-weight:850;letter-spacing:-.9px;font-size:28px;color:var(--navy)}.brand span{color:var(--green)}.login{min-height:100dvh;display:grid;place-items:center;padding:28px 21px;background:radial-gradient(ellipse at 100% 0%,#dceff3 0%,transparent 52%),#f1f6f9}.login-card{width:100%;max-width:410px}.login-icon{margin:70px 0 22px;background:#e6f2e0;color:#558b18;width:64px;height:64px;border-radius:20px;display:grid;place-items:center;font-size:33px}.login h1{font-size:29px;line-height:1.18;letter-spacing:-.75px;margin:0 0 13px;max-width:330px}.login p{color:#617c90;font-size:14px;line-height:1.55;margin:0 0 30px}.login label{display:block;font-weight:700;font-size:12px;margin:0 0 8px}.login input{width:100%;background:#fff;border:1px solid #b9d0df;padding:15px;border-radius:13px;font-size:16px}.primary{background:var(--navy);color:#fff;border:0;border-radius:14px;padding:16px 20px;font-weight:720}.wide{width:100%}.login .error{min-height:20px;margin:8px 0 0;color:#b53445;font-size:12px}.login small{display:block;text-align:center;color:#89a0ad;font-size:11px;margin-top:23px}.app{max-width:520px;min-height:100dvh;margin:auto;background:#f6f9fb;box-shadow:0 0 44px #10374a0b}.app-header{height:80px;padding:calc(14px + env(safe-area-inset-top)) 21px 12px;box-sizing:content-box;max-height:100px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:flex-end;justify-content:space-between}.app-header .brand{font-size:26px;line-height:1}.subbrand{font-size:9px;letter-spacing:1.7px;color:#91a4b3;margin-top:5px;font-weight:800}.head-button{border:1px solid var(--line);background:#f5f9fc;color:#295874;border-radius:13px;width:39px;height:39px;font-size:22px;display:grid;place-items:center}.page{display:none;padding:25px 19px 27px}.page.active{display:block}.app main{padding-bottom:calc(85px + env(safe-area-inset-bottom))}.eyebrow{font-size:10px;font-weight:850;letter-spacing:1.5px;color:#598c9f}.welcome h1,.page h1{font-size:26px;letter-spacing:-.6px;line-height:1.2;margin:8px 0}.welcome p,.page-sub{font-size:13px;color:#8095a5;margin:0 0 24px;line-height:1.45}.hero-card{border-radius:22px;padding:25px 22px;background:linear-gradient(125deg,#153d59,#26718a);box-shadow:0 12px 24px #14516d21;color:white;min-height:155px}.hero-card>span{font-size:12px;color:#c6e2ed}.hero-card strong{display:block;letter-spacing:-1px;font-size:clamp(26px,7.2vw,35px);margin-top:17px;overflow-wrap:anywhere}.hero-footer{font-size:11px;color:#c9e2e9;margin-top:17px;display:flex;gap:9px;align-items:center}.mini-dot{width:3px;height:3px;background:#aad4e2;border-radius:99px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:14px 0 27px}.stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px 12px;min-width:0}.stat small{font-size:10px;color:#7792a4;display:block;white-space:nowrap}.stat strong{display:block;margin-top:7px;font-size:25px;font-weight:760}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 13px}.section-head h2{font-size:17px;margin:0;letter-spacing:-.25px}.text-button{border:0;background:none;color:#1683a0;font-size:12px;font-weight:700;padding:6px 0}.stack{display:grid;gap:11px}.empty{background:#fff;border:1px dashed #cbdde7;color:#758d9d;padding:20px;border-radius:15px;font-size:13px;line-height:1.5;text-align:center}.alert-row,.investment-card,.future-row{border:1px solid var(--line);background:#fff;border-radius:17px;padding:16px;display:block;text-align:left;width:100%;color:inherit}.alert-row{display:flex;align-items:flex-start;gap:11px}.alert-symbol{font-size:19px;background:#fff5df;color:#b77b18;border-radius:12px;min-width:37px;height:37px;display:grid;place-items:center}.alert-symbol.late{background:#ffeded;color:#be4f51}.alert-row .info{flex:1;min-width:0}.alert-row strong,.investment-card strong,.future-row strong{font-size:13px;display:block;line-height:1.4}.alert-row p,.future-row p{color:#7993a3;font-size:12px;margin:6px 0 0;line-height:1.4}.alert-row .more{font-size:20px;color:#9fb5c2}.tag{font-size:10px;border-radius:99px;display:inline-flex;padding:5px 9px;font-weight:700;background:#f2f6f9;color:#52778c;white-space:nowrap}.tag.warning{background:#fff0d7;color:#956009}.tag.danger{background:#fff0f0;color:#bc4853}.tag.green{background:#eaf7e4;color:#528a25}.quick-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.quick-card{background:#fff;text-align:left;min-height:104px;border:1px solid var(--line);border-radius:17px;padding:17px;font-weight:700;font-size:12px;display:flex;flex-direction:column;gap:10px;color:var(--navy)}.quick-card>span:last-child{align-self:flex-end;color:#9bb1bc}.quick-icon{font-size:23px;color:#2684a0}.sync-note{text-align:center;margin:27px 0 0;font-size:10px;color:#9aaeba}.bottom-nav{position:fixed;z-index:20;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,520px);height:calc(72px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);padding:6px 6px env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(4,1fr);box-shadow:0 -5px 28px #09304b09}.bottom-nav button{border:0;background:none;color:#8fa3b3;display:flex;flex-direction:column;gap:3px;align-items:center;justify-content:center;font-size:10px;font-weight:650;position:relative}.bottom-nav button.active{color:#147b99}.nav-icon{font-size:25px;line-height:1.2}.bottom-nav i{position:absolute;top:4px;left:calc(50% + 9px);height:8px;width:8px;background:#e3a545;border:2px solid white;border-radius:50%}.filters{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:17px}.search-label{grid-column:1/-1}.filters input,.filters select{width:100%;border:1px solid #d7e4eb;border-radius:12px;background:#fff;color:var(--navy);padding:13px 12px;font-size:13px;min-width:0}.filters select{font-size:12px}.list-heading{font-size:11px;color:#93a7b4;margin-bottom:11px;font-weight:700}.investment-card .row-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.investment-card .type-label{font-size:10px;font-weight:780;color:#338399;margin:0 0 6px}.investment-card .subline{font-size:11px;color:#849cad;margin:7px 0}.investment-card .row-bottom{border-top:1px solid #edf3f6;display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:12px;gap:10px}.investment-card .amount{font-size:17px;font-weight:760}.investment-card .date{font-size:11px;color:#728c9b}.info-strip{display:flex;gap:10px;align-items:flex-start;background:#edf5f9;color:#5a7b91;font-size:12px;line-height:1.5;padding:13px;border-radius:13px;margin-bottom:25px}.info-symbol{font-size:17px}.count-pill,.soft-pill{font-size:10px;background:#e6f1f5;color:#4e8398;border-radius:99px;padding:5px 9px;font-weight:750}.other-card{background:#fff;border:1px solid var(--line);padding:18px;border-radius:18px;margin-bottom:12px}.other-card .section-head{margin:0 0 11px}.other-card h2{font-size:15px}.other-card p{color:#849aa8;font-size:12px;margin:6px 0 0}.other-card.muted{background:#f1f6f9;color:#648092}.other-balance{font-size:28px;letter-spacing:-.6px;font-weight:780}.small-stack{display:grid;gap:0;margin-top:11px}.small-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid #eef3f6;font-size:12px}.small-row span:first-child{color:#7892a3;min-width:0;overflow-wrap:anywhere}.small-row strong{font-weight:700;text-align:right;overflow-wrap:anywhere}.detail-backdrop{position:fixed;inset:0;background:#153d5977;z-index:40;display:flex;align-items:flex-end;justify-content:center}.detail-panel{width:min(520px,100%);max-height:93dvh;overflow:auto;overscroll-behavior:contain;background:#fff;border-radius:26px 26px 0 0;padding:10px 22px calc(24px + env(safe-area-inset-bottom));box-shadow:0 -16px 34px #173b5350}.drag-bar{width:43px;height:5px;background:#d5e3eb;border-radius:6px;margin:0 auto 23px}.detail-head{display:flex;align-items:center;justify-content:space-between}.detail-panel h2{font-size:24px;letter-spacing:-.5px;margin:10px 0 12px;overflow-wrap:anywhere}.status-pill{font-size:11px;background:#eaf5f1;color:#258459;padding:6px 11px;border-radius:99px;font-weight:750}.detail-value{background:#eef6f9;border-radius:16px;margin:23px 0;padding:19px}.detail-value small{color:#65889b;font-size:11px;display:block;margin-bottom:6px}.detail-value strong{font-size:26px}.detail-fields{display:grid;gap:0}.detail-field{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid #edf2f5;font-size:12px}.detail-field span{color:#7d94a2;max-width:42%}.detail-field strong{font-weight:650;text-align:right;max-width:58%;overflow-wrap:anywhere;white-space:pre-wrap}.detail-subhead{font-size:14px;color:#153d59;margin:20px 0 5px;font-weight:760}#toast{position:fixed;z-index:100;bottom:calc(90px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:max-content;max-width:90%;background:#183c58;color:white;border-radius:12px;padding:12px 16px;box-shadow:0 12px 26px #0002;font-size:12px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(min-width:520px){body{background:#eaf0f4}.app{border-left:1px solid #d9e5ea;border-right:1px solid #d9e5ea}}@media(max-width:360px){.page{padding:20px 13px}.stat{padding:12px 9px}.stat small{font-size:9px}.brand{font-size:25px}}

.connection-status{font-size:12px;line-height:1.45;border:1px solid #e6d49d;background:#fff8e4;color:#815d1f;padding:12px;border-radius:12px;margin:12px 0 5px}

/* Cápsulas consultivas aprovadas — altura variável e subcategorias completas */
.capsule-list{display:grid;gap:11px;margin-top:18px}
.summary-capsule{display:block;width:100%;text-align:left;border:1px solid #cfe0eb;border-radius:19px;background:#fff;color:var(--navy);padding:15px 14px;box-shadow:0 2px 10px #173b5306}
.summary-capsule:active{background:#fff}
.capsule-head{display:flex;align-items:center;gap:10px;font-size:14px}
.capsule-icon{display:grid;place-items:center;width:28px;height:28px;border:1px solid #d7e7ee;border-radius:9px;color:#086c89;background:#f2f9fc;font-size:17px;flex:0 0 28px}
.capsule-arrow{margin-left:auto;font-size:25px;line-height:1;color:#178a9e}
.capsule-content{display:grid;gap:0;margin-top:10px}
.capsule-item{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-top:1px solid #edf2f6;padding:10px 0 7px;font-size:12px}
.capsule-item-name{flex:1;min-width:0;color:#54748b;line-height:1.35}
.capsule-item-value{display:grid;text-align:right;gap:3px;font-weight:760;white-space:nowrap;font-size:12px}
.capsule-item-value small{font-weight:500;color:#86a0ae;font-size:10px}
.capsule-none{display:block;color:#93a6b2;font-size:12px;padding:8px 2px}
.history-panel h2{margin-bottom:5px}
.history-subtitle{font-size:12px;color:#7693a5;line-height:1.5;margin:0 0 17px}
.history-group{border:1px solid #dceaf1;border-radius:15px;margin:14px 0;overflow:hidden}
.history-group-title{background:#f3f9fc;padding:13px 12px;display:flex;justify-content:space-between;gap:9px;font-size:13px}
.history-group-title span{font-weight:800;white-space:nowrap}
.history-row{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-top:1px solid #edf3f7;font-size:12px}
.history-row span{color:#64849a}
.history-row strong{white-space:nowrap}

/* V04: cabeçalho compacto, mesma identificação visual e ícones do laptop */
.app-header{height:auto;min-height:61px;max-height:none;box-sizing:border-box;padding:calc(10px + env(safe-area-inset-top)) 19px 10px;align-items:center}
.app-header .brand{font-size:27px;line-height:1;letter-spacing:-.9px}
.subbrand{margin-top:4px;font-size:8px;letter-spacing:1.45px;color:#7893a3;font-weight:800}
.page{padding-top:18px}
.app-header .head-button{width:35px;height:35px}
.nav-icon,.quick-icon{display:inline-flex;align-items:center;justify-content:center}
.nav-icon svg{width:23px;height:23px}
.quick-icon svg{width:23px;height:23px}
.capsule-icon svg{width:20px;height:20px}
.alert-symbol svg{width:20px;height:20px}
.capsule-head{gap:10px}
.capsule-content{margin-top:8px}
.capsule-item{display:grid;grid-template-columns:minmax(0,1fr) 63px minmax(92px,auto);align-items:center;gap:7px;padding:8px 0 7px}
.capsule-item-name{display:block;font-size:11.5px;line-height:1.25;overflow-wrap:anywhere}
.capsule-item-date{font-size:10.5px;color:#7794a5;white-space:nowrap;text-align:center;font-variant-numeric:tabular-nums}
.capsule-item-value{display:block;font-size:11.5px;text-align:right;font-weight:760;white-space:nowrap;font-variant-numeric:tabular-nums}
.capsule-arrow svg{width:18px;height:18px}
@media(max-width:375px){.capsule-item{grid-template-columns:minmax(0,1fr) 52px minmax(85px,auto);gap:4px}.capsule-item-name,.capsule-item-value{font-size:10.5px}.capsule-item-date{font-size:9.5px}}

/* V05: navegação por cards, controles compactos e consulta individual */
.app main{padding-bottom:calc(18px + env(safe-area-inset-bottom))}
.page{padding-top:18px}
.welcome h1{margin-bottom:17px}
.hero-card{min-height:150px}
.stat{display:block;text-align:left;color:var(--navy);min-height:104px;cursor:pointer}
.stat small{white-space:normal;line-height:1.25;min-height:31px;font-size:10px;font-weight:700}
.stat strong{margin-top:7px}
.stat:active,.quick-card:active{background:#e9f4f7}
.alerts-pill{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;background:#153d59;border:0;color:#fff;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:700}
.alerts-pill svg{width:15px;height:15px}
.future-bottom{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:8px;color:#7893a3;font-size:11px}
.future-bottom strong{color:#173b53;white-space:nowrap;font-size:12px}
.quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.quick-card{min-height:65px;padding:9px 5px;border-radius:20px;display:flex;align-items:center;justify-content:center;text-align:center;gap:5px;font-size:10px;line-height:1.15}
.quick-icon svg{width:19px;height:19px}
.quick-card>span:last-child{align-self:auto;color:inherit}
.back-button{border:0;background:transparent;width:36px;height:36px;color:#153d59}
.back-button svg{width:24px;height:24px}
.summary-capsule{padding:0;overflow:hidden}
.capsule-head-button{display:flex;align-items:center;gap:10px;background:transparent;border:0;width:100%;text-align:left;color:var(--navy);font-size:14px;padding:14px 14px 7px}
.capsule-item:active,.capsule-item:focus-visible{background:#eef7fa}
.capsule-head-button strong{flex:1}
.capsule-arrow{margin-left:auto}
.capsule-content{margin:0 14px 9px}
.capsule-item{width:100%;border:0;border-top:1px solid #edf2f6;border-radius:0;background:transparent;color:inherit;min-height:37px;text-align:left;cursor:pointer}
.capsule-item-name{text-align:left}
.capsule-item-value{text-align:right}
#toast{bottom:calc(20px + env(safe-area-inset-bottom))}
@media(max-width:375px){.quick-grid{gap:5px}.quick-card{font-size:9.5px;padding:8px 3px}.stats{gap:6px}.stat{padding:11px 8px}.stat small{font-size:9px}.future-bottom{flex-wrap:wrap}}

/* V06: o cabeçalho é informativo; só o item tocado recebe destaque. */
.summary-capsule,.summary-capsule:active,.summary-capsule:focus-within{background:#fff}
.capsule-head-button{cursor:default}
.capsule-item:active{background:#eaf5fa}

/* V07 — lembretes: recurso isolado da consulta financeira. */
.reminder-float{position:fixed;z-index:31;right:max(13px,calc((100vw - 520px)/2 + 16px));bottom:calc(18px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:8px;border:0;border-radius:999px;background:#153d59;color:#fff;padding:11px 15px;min-height:45px;box-shadow:0 7px 20px #153d5940;font-size:12px;font-weight:750}
.reminder-float svg,.reminder-new svg{width:19px;height:19px}
.reminder-float:active{background:#205675}
.reminder-badge{background:#fff;color:#153d59;min-width:20px;height:20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;padding:0 5px}
.reminder-list{display:grid;gap:12px;margin:14px 0}
.reminder-card{background:#fff;border:1px solid #d7e7ee;border-radius:17px;padding:13px;box-shadow:0 2px 8px #173b5307}
.reminder-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.reminder-card-head strong{font-size:12px;color:#153d59}
.reminder-card-date{font-size:10px;color:#7a94a3;font-variant-numeric:tabular-nums}
.reminder-edit{width:100%;border:1px solid transparent;border-radius:9px;background:#f7fafc;color:#183d56;padding:10px 11px;min-height:82px;resize:vertical;font-size:14px;line-height:1.5;outline-offset:0}
.reminder-edit:focus{border-color:#69a9c1;background:#fff;outline:2px solid #d6edf4}
.reminder-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}
.reminder-delete{border:0;background:transparent;color:#a14c58;border-radius:9px;padding:9px 10px;font-size:12px;display:flex;gap:5px;align-items:center}
.reminder-delete svg{width:15px;height:15px}
.reminder-send{border:0;border-radius:999px;padding:9px 18px;background:#153d59;color:#fff;font-size:12px;font-weight:750}
.reminder-send:disabled{opacity:.4;cursor:default}
.reminder-new{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;border:1px solid #153d59;background:#153d59;color:white;border-radius:999px;padding:12px;font-size:13px;font-weight:750}
.reminder-local-note{font-size:11px;color:#8298a5;margin:18px 4px 10px;line-height:1.5}
.reminder-empty{border:1px dashed #bfd6e0;background:#fff;padding:20px 13px;border-radius:15px;text-align:center;font-size:12px;color:#819ba9}
@media(max-width:360px){.reminder-float{padding:10px 13px}}

/* V08: valores lado a lado, datas de atualização independentes. */
.totals-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0 0 13px}
.total-card{min-width:0;min-height:132px;border:0;border-radius:19px;color:#fff;padding:15px 12px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;box-shadow:0 7px 17px #173b5319}
.investment-total{background:linear-gradient(130deg,#153d59,#26718a)}
.patrimony-total{background:linear-gradient(130deg,#307d9a,#64aac1)}
.total-card>span{font-size:11px;line-height:1.3;color:#e3f3f8;min-height:28px}
.total-card strong{font-size:clamp(18px,4.75vw,27px);line-height:1.2;letter-spacing:-.65px;margin:8px 0 5px;white-space:nowrap;font-variant-numeric:tabular-nums}
.total-card small{margin-top:auto;font-size:10px;color:#e0eff5;line-height:1.2}
.total-card:active{filter:brightness(1.07)}
@media(max-width:360px){.totals-grid{gap:6px}.total-card{padding:12px 9px;min-height:118px}.total-card strong{font-size:17px}}
/* Botão Lembretes flutuante, centralizado horizontalmente e com espaço para rolagem. */
.reminder-float{left:50%;right:auto;transform:translateX(-50%);bottom:calc(18px + env(safe-area-inset-bottom));min-height:39px;padding:9px 13px;z-index:45}
.app main{padding-bottom:calc(104px + env(safe-area-inset-bottom))}
/* Mesmo padrão de círculos nos comandos de voltar e fechar. */
.app-header .back-button,.head-button.close-circle{width:37px;height:37px;min-width:37px;border-radius:50%;border:1px solid #d8e6ed;background:#f5f9fc;color:#153d59;display:grid;place-items:center}
.app-header .back-button svg,.head-button.close-circle svg{width:20px;height:20px}
/* Consulta e histórico em tela própria (não modal sobre fundo escurecido). */
.detail-backdrop{position:fixed!important;inset:0!important;z-index:60!important;background:#fff!important;display:block;overflow-y:auto;overscroll-behavior:contain;max-height:none;padding:0!important}
.detail-backdrop[hidden]{display:none!important}
.detail-panel{position:relative!important;inset:auto!important;width:100%!important;max-width:520px!important;min-height:100dvh!important;max-height:none!important;overflow:visible!important;border-radius:0!important;box-shadow:none!important;padding:calc(22px + env(safe-area-inset-top)) 20px calc(70px + env(safe-area-inset-bottom))!important;margin:0 auto!important;background:#fff!important;transform:none!important}
.detail-panel .drag-bar{display:none!important}
.detail-head{position:relative;gap:12px}
.detail-head .close-circle{margin-left:auto}
/* Lembretes em caixa com edição direta e único botão de envio. */
.reminder-backdrop{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:14px;background:#153d595c}
.reminder-backdrop[hidden]{display:none!important}
.reminder-dialog{width:min(100%,470px);max-height:min(82dvh,720px);display:flex;flex-direction:column;overflow:hidden;border-radius:21px;background:#fff;border:1px solid #d4e5ed;box-shadow:0 20px 45px #12384e38;padding:18px 16px 14px}
.reminder-dialog-top{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-bottom:10px}
.reminder-dialog-top h2{font-size:19px;margin:0;color:#153d59}
.reminder-count-text{font-size:11px;color:#718e9d}
.reminder-dialog-content{overflow-y:auto;min-height:0;display:grid;gap:10px;padding:2px 2px 9px}
.reminder-entry{border:1px solid #d5e6ee;border-radius:13px;padding:10px;background:#f9fcfe}
.reminder-entry-head{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:#7692a0;margin-bottom:7px}
.reminder-entry-head strong{color:#153d59}
.reminder-entry textarea{font:inherit;font-size:14px;line-height:1.4;background:#fff;border:1px solid #d7e6ed;border-radius:9px;resize:vertical;min-height:65px;width:100%;padding:9px;outline-color:#3e98b2;color:#173b53}
.reminder-dialog-actions{display:flex;justify-content:center;padding:10px 0 0}
.reminder-send-all{border:0;border-radius:999px;background:#153d59;color:#fff;padding:11px 34px;font-size:13px;font-weight:750}
.reminder-dialog-note{font-size:10px;color:#8197a5;text-align:center;line-height:1.35;margin:10px 0 0}

/* V09 — correções pontuais: ícones, botões circulares, pesquisa e lembretes. */
.app-header .back-button,.head-button.close-circle{display:flex;align-items:center;justify-content:center;place-items:initial;padding:0;line-height:1;flex-shrink:0}
.app-header .back-button .lucide-icon,.head-button.close-circle .lucide-icon{display:block;width:19px;height:19px;flex:none;margin:0;transform:none}
.reminder-float{z-index:75;min-height:34px;padding:7px 12px;gap:6px;font-size:11px;background:#397f99;box-shadow:0 5px 15px #173b5330}
.reminder-float:active{background:#2c6d88}
.reminder-float .lucide-icon{display:block;width:16px;height:16px;flex-shrink:0}
.reminder-badge{height:18px;min-width:18px;font-size:10px;padding:0 4px;color:#286f8b}
.alerts-pill .lucide-icon{display:block;width:15px;height:15px;flex:none}
.reminder-dialog-top{align-items:center}
.reminder-dialog-head-actions{display:flex;align-items:center;gap:10px}
.reminder-dialog-head-actions .close-circle{width:34px;height:34px;min-width:34px;display:flex;align-items:center;justify-content:center;padding:0}
.reminder-dialog-head-actions .close-circle .lucide-icon{width:18px;height:18px;display:block}
.detail-panel{padding-bottom:calc(115px + env(safe-area-inset-bottom))!important}
.search-label{position:relative;display:block;min-width:0}

.search-label input{padding-right:42px;cursor:pointer}
.search-label input::-webkit-search-cancel-button{display:none}
.search-chevron{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:16px;height:16px;display:grid;place-items:center;color:#153d59;pointer-events:none}
.search-chevron [data-lucide]{display:block;width:16px;height:16px}
.search-suggestions{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;max-height:260px;overflow-y:auto;background:#fff;border:1px solid #c9dce7;border-radius:12px;box-shadow:0 10px 25px #153d5929;padding:4px}
.search-suggestion{border:0;border-radius:8px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 9px;background:#fff;color:#153d59;font-size:12px;text-align:left}
.search-suggestion:active,.search-suggestion:focus-visible{background:#eaf4f8}
.search-suggestion small{font-size:10px;color:#7f97a4;white-space:nowrap}
.search-empty{padding:11px;color:#7f97a4;font-size:12px}


/* V10 - ajustes pontuais aprovados */
.app-header .header-actions{display:flex;align-items:center;justify-content:flex-end;gap:11px;min-width:0}
.app-header .header-updated{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:3px;min-width:0;white-space:nowrap}
.app-header .header-updated span{font-size:9px;color:#8299aa;line-height:1.2}
.app-header .header-updated strong{font-size:10px;color:#153d59;line-height:1.2;font-weight:700;font-variant-numeric:tabular-nums}
@media(max-width:365px){.app-header{padding-left:14px;padding-right:14px}.app-header .brand{font-size:24px}.app-header .header-actions{gap:5px}.app-header .header-updated span{font-size:8px}.app-header .header-updated strong{font-size:9px}}
/* Ícones centralizados pela mesma caixa de 24x24, dentro de botão circular */
.app-header button.back-button,.head-button.close-circle,.reminder-dialog-head-actions .close-circle{
  position:relative;display:block;width:38px;height:38px;min-width:38px;min-height:38px;
  border:1px solid #d8e6ed;border-radius:50%;background:#f5f9fc;color:#153d59;
  padding:0;margin:0;line-height:normal;flex-shrink:0;
}
.app-header button.back-button > [data-lucide],.head-button.close-circle > [data-lucide]{
  position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;padding:0;
}
.app-header button.back-button .lucide-icon,.head-button.close-circle .lucide-icon,
.reminder-dialog-head-actions .close-circle .lucide-icon{
  position:absolute;top:50%;left:50%;width:19px;height:19px;
  display:block;margin:0;flex:none;transform:translate(-50%,-50%);
}
/* Mesma seta Lucide para todas as listas do filtro, sem seta nativa duplicada */
.filters select{
 -webkit-appearance:none;appearance:none;
 padding:12px 31px 12px 10px;
 background-color:#fff;
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23153d59' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
 background-repeat:no-repeat;background-size:18px 18px;background-position:right 9px center;
}

/* V12: padrão único de filtros, fonte, setas e listas personalizadas. */
.filters .search-label input,.filters .mb-filter-trigger{font-size:12px;line-height:18px;min-height:45px;height:45px;border:1px solid #d7e4eb;border-radius:12px;background:#fff;color:#153d59}
.filters .search-label input{padding:12px 42px 12px 12px;width:100%}
.search-chevron{position:absolute;top:0;right:0;height:45px;width:40px;transform:none;display:flex;align-items:center;justify-content:center;color:#153d59;background:transparent;border:0;border-radius:0 12px 12px 0;padding:0;cursor:pointer}
.search-chevron .lucide-icon,.search-chevron [data-lucide]{width:18px;height:18px;display:block}
.mb-filter-picker{position:relative;min-width:0}
.mb-original-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}
.mb-filter-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;gap:6px;text-align:left;padding:8px 10px 8px 12px;cursor:pointer}
.mb-filter-trigger .mb-filter-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mb-filter-arrow{width:18px;height:18px;flex:none;display:flex;align-items:center;justify-content:center}
.mb-filter-arrow svg{width:18px;height:18px;display:block}
.mb-filter-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:100%;z-index:33;max-height:260px;overflow-y:auto;background:#fff;border:1px solid #c9dce7;border-radius:12px;box-shadow:0 10px 25px #153d5929;padding:4px}
.mb-filter-option{border:0;border-radius:8px;width:100%;background:#fff;color:#153d59;font-size:12px;line-height:18px;min-height:39px;padding:10px;text-align:left;display:block;cursor:pointer}
.mb-filter-option:hover,.mb-filter-option:focus-visible,.mb-filter-option[aria-selected=true]{background:#eaf4f8;outline:none}
.search-suggestion{font-size:12px;min-height:39px;line-height:18px}

/* V13: portão de entrada apenas no celular; mantém os controles da V12. */
.mobile-auth{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;background:#eef5fa;color:#203a52}
.mobile-auth[hidden]{display:none!important}
.mobile-auth-box{width:min(390px,100%);background:#fff;border:1px solid #d5e3ee;border-radius:18px;box-shadow:0 18px 60px #254c6a24;padding:30px 28px}
.mobile-auth-box h2{font-size:20px;color:#193b57;margin:24px 0 9px}
.mobile-auth-box p{font-size:13px;color:#5c7287;line-height:1.5;margin:0 0 22px}
.mobile-auth-box label{display:block;font-weight:700;font-size:12px;margin-bottom:8px}
.mobile-auth-box input{display:block;width:100%;font-size:16px;padding:13px 14px;background:#f5f9fc;border:1px solid #b9ccdb;border-radius:11px}
.mobile-auth-box button{width:100%;margin-top:17px;background:#126f9b;color:#fff;border:0;border-radius:999px;font-weight:750;padding:12px 16px}
.mobile-auth-box button:disabled{opacity:.65}
#mobileAuthError{min-height:18px;color:#be3546;font-size:12px;font-weight:650;margin-top:9px}

/* Avisos não devem impedir toques no botão Lembretes. */
#toast{pointer-events:none}

/* V17 — somente cards de investimentos, monitoramento FGC e olho do acesso. */
.access-code-wrap{position:relative}
.mobile-auth-box .access-code-wrap input{padding-right:51px}
.mobile-auth-box .access-eye{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:42px;height:40px;padding:0;margin:0;display:flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:transparent;color:#476d83}
.access-eye svg{display:block}
.quick-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.quick-card{min-width:0;padding:9px 3px;font-size:9px}
.investment-v17{padding:12px 12px 11px}
.investment-v17 .row-top{align-items:center}
.investment-v17 .row-top strong{font-size:14px}
.investment-v17 .subline{margin:3px 0 0;line-height:1.2}
.investment-v17-grid{display:grid;align-items:start;column-gap:6px;margin-top:9px;padding-top:8px;border-top:1px solid #edf2f5}
.investment-v17-grid.top-line{grid-template-columns:minmax(0,1.22fr) minmax(0,1fr) minmax(0,.98fr)}
.investment-v17-grid.metrics-line{grid-template-columns:minmax(0,1.48fr) minmax(0,1.13fr) minmax(0,.96fr)}
.investment-v17-grid>div{min-width:0}
.investment-v17-grid small{display:block;font-size:9.5px;color:#718899;line-height:1.2;white-space:nowrap;letter-spacing:-.2px}
.investment-v17-grid strong{display:block;font-size:12px;line-height:1.4;font-weight:720;white-space:nowrap;letter-spacing:-.2px;font-variant-numeric:tabular-nums}
.investment-v17-grid.top-line>div:nth-child(2){text-align:center}
.investment-v17-grid.top-line>div:nth-child(3){text-align:right}
.investment-v17-grid.metrics-line>div:nth-child(3){text-align:right}
.investment-v17-grid .is-positive{color:#078447}
.investment-v17-grid .is-negative{color:#bb404d}
@media(max-width:375px){.investment-v17{padding:11px 9px}.investment-v17-grid{column-gap:3px}.investment-v17-grid small{font-size:8.6px;letter-spacing:-.3px}.investment-v17-grid strong{font-size:11px}.quick-grid{gap:4px}.quick-card{font-size:8.5px;padding:8px 2px}}
.fgc-overview-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:13px 12px}
.fgc-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:11px}
.fgc-head>strong{font-size:14px;color:#173b53}
.fgc-link{border:0;background:none;color:#1684a1;display:flex;align-items:center;gap:2px;padding:5px 0;font-size:12px;font-weight:650}
.fgc-link svg{width:16px;height:16px}
.fgc-summary{display:grid;gap:11px}
.fgc-summary-row{display:flex;justify-content:space-between;gap:8px;font-size:12px;line-height:1.3}
.fgc-summary-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fgc-summary-row strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}
.fgc-track{height:5px;border-radius:30px;overflow:hidden;background:#e5edf3;margin-top:5px}
.fgc-track span{height:100%;display:block;background:#0788a2;border-radius:30px}
.fgc-summary-item.over .fgc-track span,.fgc-track.over span{background:#c6535b}
.fgc-summary-item.over .fgc-summary-row strong,.fgc-over{color:#b7404b}
.fgc-summary-item.near .fgc-track span{background:#d89e43}
.fgc-footnote{font-size:10px;color:#7d92a1;margin:14px 0 0}
.fgc-disclaimer{font-size:11px;color:#8297a5;line-height:1.5;margin-top:15px}
.fgc-empty{font-size:12px;color:#7d92a1;line-height:1.45}
.fgc-full-list{display:grid;gap:12px}
.fgc-group{border:1px solid #d9e7ee;background:#fff;border-radius:16px;padding:13px}
.fgc-group-head{display:flex;gap:9px;align-items:center;justify-content:space-between;font-size:13px}
.fgc-group-head strong:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}
.fgc-group-note{font-size:11px;line-height:1.4;color:#718899;margin-top:6px}
.fgc-investment{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #eaf1f4;padding-top:10px;margin-top:10px;font-size:12px}
.fgc-investment span{min-width:0;overflow-wrap:anywhere}
.fgc-investment small{display:block;color:#8097a6;font-size:10px;margin-top:3px}
.fgc-investment strong{white-space:nowrap;font-size:12px;font-variant-numeric:tabular-nums}


/* V18: somente fundo geral mais contrastante e botão Sair na Visão Geral. */
:root{background:#eaf1f5}
.app{background:#eaf1f5}
.welcome{position:relative}
.welcome .logout-button{
  position:absolute;top:0;right:0;display:inline-flex;align-items:center;justify-content:center;
  gap:6px;background:#fff;border:1px solid #d9e5ec;border-radius:999px;
  min-height:34px;padding:7px 12px;color:#153d59;font-size:12px;font-weight:700;
  box-shadow:0 1px 3px #153d590b;white-space:nowrap;line-height:1;
}
.welcome .logout-button svg{width:16px;height:16px;display:block}
.welcome .logout-button:active{background:#f0f5f8}
