/* FOURMI THINK — Barbeiro: Minhas finanças (Marinho & Latão). Só vale com #personal-finance-dialog.bpf-on e na folha #bpf-sheet.
   Reaproveita as peças de barber-finance.css (.bfi-*); aqui ficam o diálogo, as abas e os gráficos. */
#personal-finance-dialog.bpf-on{--b-navy:#0d1b2e;--b-navy2:#16263d;--b-brass:#d4a853;--b-brass2:#e8c77d;--b-cta:#f0c13a;--b-cta2:#e2ae2a;--b-paper:#fffdf8;--b-cream:#f5f1e8;--b-line:#e7dfcd;--b-soft:#e6ebf2;--b-tag:#f8edd2;--b-gold:#8a6410;--b-muted:#5f6b66;--b-ink:#14201b;--b-wine:#5b1f2a;--b-wine2:#6c2734;--b-ok:#1f7a50;--b-okbg:#dcefe4;--b-warn:#a8392b;--b-warnbg:#f6dcd6;
  width:min(520px,calc(100vw - 20px));max-width:calc(100vw - 20px);background:var(--b-cream)!important;color:var(--b-ink)!important}
#personal-finance-dialog.bpf-on::backdrop{background:rgba(8,15,26,.62);backdrop-filter:blur(6px)}
#personal-finance-dialog.bpf-on .personal-finance-shell{padding:12px 12px calc(18px + env(safe-area-inset-bottom,0px))!important;overflow-x:hidden}
#personal-finance-dialog.bpf-on .personal-finance-shell>:not(#bpf){display:none!important}
.bpf{gap:0}
.bpf .bpf-hero{gap:12px}
.bpf-bar-r{display:flex;align-items:center;gap:8px}
.bpf-cur{min-height:34px;padding:4px 26px 4px 10px;border:1px solid rgba(255,253,248,.18);border-radius:999px;background:rgba(255,253,248,.08) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8c77d' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 8px center/14px;color:var(--b-paper);font:inherit;font-size:.76rem;font-weight:800;appearance:none;-webkit-appearance:none;cursor:pointer}
.bpf-cur option{color:#14201b}
.bpf-period{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.bpf-tabs{display:flex;gap:6px;margin:12px -12px 0;padding:2px 12px 4px;overflow-x:auto;scrollbar-width:none}
.bpf-tabs::-webkit-scrollbar{display:none}
.bpf-tabs button{flex:none;min-height:38px;padding:7px 13px;border:1.5px solid var(--b-line);border-radius:999px;background:var(--b-paper);color:var(--b-ink)!important;font:inherit;font-size:.8rem;font-weight:700;white-space:nowrap;cursor:pointer}
.bpf-tabs button[aria-pressed="true"]{border-color:var(--b-navy);background:var(--b-navy);color:var(--b-paper)!important}
.bpf-body{padding-top:6px}
.bpf-card{padding:12px 12px 10px;border:1px solid var(--b-line);border-radius:18px;background:var(--b-paper)}
/* Barras por mês */
.bpf-chart{position:relative;height:150px}
.bpf-chart.is-visits{height:130px}
.bpf-zero{position:absolute;left:0;right:0;border-top:1px solid #e3dac6}
.bpf-cols{position:absolute;inset:0;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr))}
.bpf-col{position:relative;display:block;min-width:0;height:100%;padding:0;border:0;border-radius:10px;background:transparent;cursor:pointer}
.bpf-col:hover,.bpf-col:focus-visible{background:rgba(13,27,46,.05)}
.bpf-col.is-on{background:rgba(212,168,83,.12)}
.bpf-pair{position:absolute;top:0;left:12%;right:12%;display:flex;align-items:flex-end;justify-content:center;gap:2px;height:100%}
.bpf-pair i{display:block;flex:1;max-width:16px;min-height:0;border-radius:4px 4px 1px 1px}
.bpf-pair i.is-in{background:var(--b-navy)}.bpf-pair i.is-out{background:#a5596a}
.bpf-col.is-on .bpf-pair i.is-in{box-shadow:0 0 0 2px var(--b-brass)}
.bpf-pair i.is-visit{position:relative;max-width:26px;background:#c9d2df}
.bpf-col.is-on .bpf-pair i.is-visit{background:var(--b-navy)}
.bpf-pair i.is-visit small{position:absolute;left:50%;bottom:4px;transform:translateX(-50%);color:var(--b-navy);font-size:.62rem;font-weight:800;font-style:normal}
.bpf-col.is-on .bpf-pair i.is-visit small{color:var(--b-paper)}
.bpf-line{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.bpf-line polyline{fill:none;stroke:var(--b-brass);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}
.bpf-dot{position:absolute;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:var(--b-brass);pointer-events:none}
.bpf-dot.is-on{width:10px;height:10px;margin:-5px 0 0 -5px;box-shadow:0 0 0 2px var(--b-paper)}
.bpf-mlabels{display:grid;grid-template-columns:repeat(var(--n,6),minmax(0,1fr));margin-top:6px;text-align:center}
.bpf-mlabels span,.bpf-mlabels button{overflow:hidden;color:var(--b-muted);font-size:.66rem;font-weight:700;text-overflow:clip;white-space:nowrap}
.bpf-mlabels .is-on{color:var(--b-navy);font-weight:800}
.bpf-mlabels.is-buttons button{min-height:30px;padding:0;border:0;border-radius:8px;background:transparent;cursor:pointer}
.bpf-mlabels.is-buttons button:hover{background:rgba(13,27,46,.05);color:var(--b-navy)}
.bpf-legend{display:flex;flex-wrap:wrap;gap:12px;margin:8px 2px 0;color:var(--b-muted);font-size:.7rem;font-weight:700}
.bpf-legend i{display:inline-block;width:9px;height:9px;margin-right:5px;border-radius:3px;vertical-align:-1px}
.bpf-legend i.is-in{background:var(--b-navy)}.bpf-legend i.is-out{background:#a5596a}.bpf-legend i.is-net{background:var(--b-brass)}.bpf-legend i.is-prev{background:#b7c0cc}.bpf-legend i.is-visit{background:#c9d2df}
.bpf-svg{display:block;width:100%;height:auto}
.bpf-svg .bpf-grid{fill:none;stroke:#ece4d2}
.bpf-svg .bpf-prev{fill:none;stroke:#b7c0cc;stroke-width:2.5;stroke-dasharray:5 4}
.bpf-svg .bpf-cur{fill:none;stroke:var(--b-navy);stroke-width:3;stroke-linejoin:round}
.bpf-svg .bpf-end{fill:var(--b-brass)}
.bfi-k em.bpf-good{color:var(--b-ok);font-weight:800}.bfi-k em.bpf-bad{color:var(--b-warn);font-weight:800}
.bfi-av.bpf-ok{background:var(--b-okbg);color:var(--b-ok)}
.bpf-badge{flex:none;padding:4px 8px;border-radius:999px;font-size:.66rem;font-weight:800;white-space:nowrap}
.bpf-badge.is-ok{background:var(--b-okbg);color:var(--b-ok)}.bpf-badge.is-gold{background:var(--b-tag);color:var(--b-gold)}.bpf-badge.is-red{background:var(--b-warnbg);color:var(--b-warn)}
/* Negócio e casa */
.bpf-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.bpf-sc{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding:12px;border:1px solid var(--b-line);border-radius:16px;background:var(--b-paper);text-align:left}
.bpf-sc small{font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
.bpf-sc b{max-width:100%;overflow:hidden;font-family:Literata,Georgia,serif;font-size:1.2rem;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}
.bpf-sc b.is-out{color:var(--b-wine)}
.bpf-sc em{font-style:normal;font-size:.72rem;opacity:.8}
.bpf-sc.is-navy{border:0;background:linear-gradient(160deg,var(--b-navy2),var(--b-navy));color:var(--b-paper)!important}
.bpf-sc.is-navy b{color:var(--b-brass2)}
.bpf-flow{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border:1px solid var(--b-line);border-radius:18px;background:var(--b-paper)}
.bpf-fr{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px;padding:4px 2px;border:0;background:transparent;font-size:.86rem;text-align:left}
.bpf-fr b{font-family:Literata,Georgia,serif;white-space:nowrap;font-variant-numeric:tabular-nums}
.bpf-fr b.is-out{color:var(--b-wine)}
.bpf-fr.is-total{margin-top:4px;padding-top:10px;border-top:1px dashed #d8ccb0;font-weight:800}
.bpf-fr.is-total b{color:var(--b-ok);font-size:1.08rem}
.bpf-fr.is-total.is-neg b{color:var(--b-warn)}
.bpf-donutw{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid var(--b-line);border-radius:18px;background:var(--b-paper)}
.bpf-donut{width:104px!important;height:104px!important;flex:none;transform:none}
.bpf-donut circle{fill:none;stroke-width:6}
.bpf-dl{display:grid;flex:1;gap:2px;min-width:0}
.bpf-dli{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:30px;padding:2px;border:0;background:transparent;font-size:.8rem;text-align:left}
.bpf-dli span{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.bpf-dli i{width:9px;height:9px;border-radius:3px;flex:none}
.bpf-dli b{font-family:Literata,Georgia,serif}
/* Metas */
.bpf-mini-hero{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;border-radius:18px;background:radial-gradient(80% 120% at 100% 0,rgba(212,168,83,.22),transparent 60%),linear-gradient(160deg,var(--b-navy2),var(--b-navy));color:var(--b-paper)}
.bpf-mini-hero small{color:rgba(255,253,248,.75);font-size:.78rem}
.bpf-mini-hero strong{font-family:Literata,Georgia,serif;font-size:2rem;line-height:1.1;color:var(--b-brass2);font-variant-numeric:tabular-nums}
.bpf-goal{display:flex;flex-direction:column;gap:8px;width:100%;padding:14px;border:1px solid var(--b-line);border-radius:18px;background:var(--b-paper);text-align:left;box-sizing:border-box}
.bpf-goal-row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.bpf-goal-row b{font-size:.94rem}
.bpf-goal small{color:var(--b-muted);font-size:.76rem;line-height:1.35}
.bpf-goal strong{font-family:Literata,Georgia,serif;color:var(--b-navy);font-size:.92rem;white-space:nowrap}
.bfi-track.is-light{height:9px}
.bfi-track.is-green i{background:linear-gradient(90deg,#2f8a5f,#58b282)}
.bpf-sheet .bfi-track{display:block}
.bfi-seg.is-two{grid-template-columns:repeat(2,minmax(0,1fr))}
/* Movimentações */
.bpf-search{display:flex;align-items:center;gap:8px;min-height:46px;padding:0 12px;border:1.5px solid var(--b-line);border-radius:16px;background:var(--b-paper);color:var(--b-muted)}
.bpf-search input{flex:1;min-width:0;height:44px;border:0;background:transparent;color:var(--b-ink);font:inherit;font-size:.9rem;outline:0}
.bpf-search:focus-within{border-color:var(--b-navy)}
.bpf-moves{display:flex;flex-direction:column;gap:10px}
.bpf-daynet{letter-spacing:0;text-transform:none;font-size:.74rem}
.bpf-more{min-height:44px;border:1.5px dashed #d8ccb0;border-radius:14px;background:transparent;color:var(--b-navy)!important;font-weight:800}
/* Folha */
.bpf-sheet .bfi-sb>.bfi-lb:first-child{margin-top:0}
.bpf-form label{display:flex;flex-direction:column;gap:6px;margin:0;color:var(--b-muted);font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.bpf-form input{width:100%;min-height:48px;padding:10px 12px;border:1.5px solid var(--b-line);border-radius:14px;background:var(--b-paper);color:var(--b-ink);font:inherit;font-size:.95rem;font-weight:500;letter-spacing:0;text-transform:none;box-sizing:border-box;outline:0}
.bpf-form input:focus{border-color:var(--b-navy);box-shadow:0 0 0 3px rgba(13,27,46,.1)}
.bpf-amount input{font-family:Literata,Georgia,serif;font-size:1.5rem;font-weight:700;color:var(--b-navy)}
.bpf-err{min-height:1em;margin:0;color:var(--b-warn);font-size:.82rem;font-weight:700}
.bpf-err:empty{display:none}
.bpf-danger{min-height:46px;margin-top:6px;border:1.5px solid #e9c9c3;border-radius:14px;background:transparent;color:var(--b-warn)!important;font-weight:800}
@media (max-width:360px){.bpf-sc b{font-size:1.02rem}.bpf-donut{width:84px!important;height:84px!important}.bpf-tabs button{padding:7px 11px}}
.bpf .bpf-line,.bpf .bpf-svg{width:100%;height:100%;stroke:none}
.bpf .bpf-svg{height:auto}
/* Pizzas */
.bpf-pie-card{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--b-line);border-radius:18px;background:var(--b-paper)}
.bpf-pie-card h4{margin:0;font-size:.95rem}
.bpf-q{margin:-6px 0 0;color:var(--b-muted);font-size:.74rem;line-height:1.35}
.bpf-pie-row{display:grid;grid-template-columns:118px minmax(0,1fr);gap:14px;align-items:center}
.bpf-pie{position:relative;width:118px;height:118px;border-radius:50%}
.bpf-pie span{position:absolute;inset:20px;display:grid;place-content:center;gap:1px;border-radius:50%;background:var(--b-paper);text-align:center;line-height:1.1}
.bpf-pie b{font-family:Literata,Georgia,serif;font-size:.82rem;color:var(--b-navy);font-variant-numeric:tabular-nums}
.bpf-pie small{color:var(--b-muted);font-size:.64rem;font-weight:700}
.bpf-pls{display:grid;min-width:0}
.bpf-pl{display:grid;grid-template-columns:10px minmax(0,1fr) auto;column-gap:7px;align-items:center;width:100%;padding:6px 0;border:0;border-top:1px solid #f0eadc;background:transparent;font-size:.8rem;text-align:left}
.bpf-pl:first-child{border-top:0}
.bpf-pl i{width:10px;height:10px;border-radius:3px}
.bpf-pl span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.bpf-pl b{font-family:Literata,Georgia,serif;font-variant-numeric:tabular-nums}
.bpf-pl em{grid-column:2/4;color:var(--b-muted);font-size:.68rem;font-style:normal;font-weight:700}
.bpf-pie-card .bfi-tip b{color:var(--b-navy)}
@media (max-width:360px){.bpf-pie-row{grid-template-columns:96px minmax(0,1fr);gap:10px}.bpf-pie{width:96px;height:96px}.bpf-pie span{inset:16px}.bpf-pie b{font-size:.74rem}}
