:root{--bg:#071521;--bg2:#0b1d2e;--surface:#102739;--surface2:#132e42;--muted:#8fa9b6;--text:#eff9f9;--line:#234053;--accent:#2ee2ba;--accent-ink:#063128;--warning:#ffd17b;--negative:#ff8f91;--positive:#72ead0;--radius:19px;--shadow:0 16px 40px #0000001a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 13% -12%,#17475a 0,#071521 43%);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.45;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}h1,h2,p{margin:0}h1{font-size:clamp(1.55rem,3.6vw,2.3rem);font-weight:760;letter-spacing:-.038em;line-height:1.15}h2{font-size:1.1rem;letter-spacing:-.025em;font-weight:720}p{line-height:1.5}.app-shell{max-width:1070px;margin:auto;padding:0 28px 120px}.topbar{height:87px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff12}.brand{display:flex;gap:12px;align-items:center}.brand-icon{width:43px;height:43px;border:1px solid #3d8b89;background:#103d45;color:var(--accent);border-radius:14px;display:grid;place-items:center}.brand-icon svg{height:36px}.brand strong{display:block;font-weight:850;letter-spacing:.14em;font-size:1.05rem}.brand span{display:block;color:#a9c3c7;font-size:.74rem;letter-spacing:.015em}.avatar{width:33px;height:33px;display:grid;place-items:center;background:#213c4e;border:1px solid #3a5866;border-radius:50%;font-size:.83rem;color:#d9f9f5;font-weight:800}.walletbar{display:flex;align-items:center;gap:10px;margin:24px 0 30px}.walletbtn{background:transparent;color:#abc2ce;border:1px solid #2a4657;padding:10px 17px;border-radius:50px;font-weight:650;font-size:.88rem;transition:.15s}.walletbtn.active{color:var(--accent);border-color:#228f81;background:#103c40}.walleticon{font-size:1.2em;padding-right:4px}.walletnote{margin-left:auto;color:#607c8c;font-size:.75rem}.eyebrow{color:var(--accent);letter-spacing:.15em;font-size:.64rem;font-weight:830;margin-bottom:8px}.section-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:22px}.section-head h1{max-width:690px}.month-picker{display:flex;align-items:center;gap:6px;border:1px solid #2c4855;background:#102837;padding:4px;border-radius:50px;white-space:nowrap}.month-picker #month-label{font-size:.79rem;min-width:112px;text-align:center;font-weight:720;text-transform:capitalize}.month-nav{border:0;background:transparent;color:#d6eff0;font-size:1.5rem;width:27px;height:29px;line-height:1;border-radius:30px}.month-nav:hover{background:#244756}.balance-card{border:1px solid #28665e;border-radius:26px;padding:29px 31px 27px;background:radial-gradient(circle at 90% 4%,#196356 0,transparent 39%),linear-gradient(117deg,#143d40 0%,#103536 56%,#102e37 100%);box-shadow:var(--shadow);position:relative;overflow:hidden}.balance-card:after{content:'';position:absolute;width:250px;height:250px;right:-100px;top:-115px;border:1px solid #ffffff13;border-radius:50%;pointer-events:none}.balance-top{display:flex;justify-content:space-between;align-items:center;color:#b8d8d1;letter-spacing:.11em;font-size:.68rem;font-weight:750}.balance-chip{color:#92e0cb;letter-spacing:.08em;background:#124e47;border:1px solid #277d70;padding:7px 11px;border-radius:50px}.main-balance{font-size:clamp(2.15rem,5vw,3.75rem);line-height:1.2;font-weight:810;letter-spacing:-.055em;margin:12px 0 2px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.main-balance.negative{color:#ffc6c4}.balance-sub{font-size:.8rem;color:#9fc0b9;margin-bottom:25px}.balance-grid{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid #ffffff22;padding-top:22px;gap:20px}.mini-stat{border-right:1px solid #ffffff24;min-width:0}.mini-stat:last-child{border-right:0}.mini-stat>span{font-size:.76rem;color:#b2d0cf;display:flex;gap:6px;align-items:center}.stat-icon{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:8px;font-size:1.04rem}.stat-icon.positive{background:#176655;color:#8af5d5}.stat-icon.negative{background:#6b363b;color:#ffacaf}.mini-stat strong{display:block;font-size:clamp(1.06rem,2.4vw,1.53rem);letter-spacing:-.04em;font-weight:780;margin-top:7px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.quick-card,.panel{background:linear-gradient(150deg,#10283a,#0e2536);border:1px solid #213e50;border-radius:var(--radius);box-shadow:var(--shadow)}.quick-card{margin-top:20px;padding:24px 27px}.card-head>div{display:flex;align-items:center;gap:13px}.icon-pill{width:37px;height:37px;border-radius:13px;background:#1e4a4d;color:#8cffe0;display:inline-grid;place-items:center;font-size:1.3rem;flex:0 0 auto}.card-head h2{font-size:1.2rem}.card-head p{color:var(--muted);font-size:.81rem;margin-top:3px}.quick-form{display:flex;gap:9px;margin-top:20px}.quick-form input,.history-filters input,.history-filters select,.goals-form input,.dialog-form input,.dialog-form select{border:1px solid #315064;background:#0a1b2a;color:var(--text);min-width:0;border-radius:12px;padding:14px 15px;outline:none}.quick-form input::placeholder,.history-filters input::placeholder,.goals-form input::placeholder,.dialog-form input::placeholder{color:#718d9d}.quick-form input{flex:1;font-size:.94rem}.mic-button{width:51px;min-width:51px;border:1px solid #3b6976;border-radius:13px;background:#1b4051;color:var(--accent);display:grid;place-items:center}.mic-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.mic-button svg rect{fill:currentColor;stroke:none}.mic-button.listening{background:#693a42;color:#ffb7b8;animation:pulse 1.15s infinite}.primary-btn{background:var(--accent);border:1px solid var(--accent);color:var(--accent-ink);border-radius:12px;padding:13px 18px;font-weight:820;white-space:nowrap;transition:background .15s}.primary-btn:hover{background:#65f6d7}.primary-btn span{padding-left:8px}.examples{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:13px}.examples>span{font-size:.73rem;color:#809ba9}.example-btn{background:#1b394b;border:1px solid #345065;color:#b9d4df;border-radius:50px;padding:6px 10px;font-size:.72rem}.example-btn:hover{border-color:#61c7b6}.voice-hint{color:#6e8b9b;font-size:.71rem;margin-top:13px}.dashboard-columns{display:grid;grid-template-columns:1fr 1fr;gap:19px;margin-top:20px}.panel{padding:24px}.panel-title{display:flex;justify-content:space-between;gap:13px;align-items:center;margin-bottom:23px}.panel-title .eyebrow{margin-bottom:4px}.panel-heading{display:flex;align-items:center;gap:12px}.mentor-symbol{background:#364545;color:#ffe2aa}.mentor-main{font-size:1.04rem;line-height:1.5;font-weight:720;margin:0 0 16px;color:#e8f5ed}.mentor-tips{color:#a9c5cf;font-size:.81rem;display:grid;gap:10px}.mentor-tip{display:flex;gap:9px;align-items:flex-start}.mentor-tip .tip-bullet{color:var(--accent);font-weight:900}.text-link{color:var(--accent);font-size:.8rem;font-weight:740;background:none;border:0;padding:0;text-align:left}.text-link:hover{text-decoration:underline}.mentor-card>.text-link{margin-top:19px}.muted-small{font-size:.73rem;color:#7f9aa8}.category-chart{display:grid;gap:15px}.cat-header{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.79rem}.cat-header span:last-child{font-weight:750;font-variant-numeric:tabular-nums}.cat-track,.goal-track{height:8px;border-radius:40px;background:#284153;overflow:hidden;margin-top:8px}.cat-fill,.goal-fill{height:100%;border-radius:40px;background:#53e5c4;min-width:2px}.cat-row:nth-child(2) .cat-fill{background:#69a9f5}.cat-row:nth-child(3) .cat-fill{background:#eeb97c}.cat-row:nth-child(4) .cat-fill{background:#d1a0e9}.cat-row:nth-child(5) .cat-fill{background:#e98d9f}.empty-hint{color:var(--muted);font-size:.83rem}.recent-panel{margin-top:19px}.recent-panel .panel-title{margin-bottom:9px}.transaction-list{display:grid}.tx-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #264253}.tx-row:last-child{border-bottom:0}.tx-avatar{width:43px;height:43px;flex:0 0 43px;background:#1d4350;border-radius:14px;display:grid;place-items:center;font-size:1.2rem}.tx-details{min-width:0;flex:1}.tx-details strong{font-size:.88rem;font-weight:690;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tx-details span{display:block;color:var(--muted);font-size:.72rem;margin-top:3px}.tx-money{white-space:nowrap;text-align:right;font-weight:770;font-size:.93rem;font-variant-numeric:tabular-nums}.tx-money.expense{color:#ff9d9b}.tx-money.income{color:#81efcf}.tx-edit{border:0;background:transparent;color:#93b3c4;font-size:1.05rem;padding:8px 5px;border-radius:8px;margin-left:2px}.tx-edit:hover{background:#244255}.tx-empty{padding:28px 4px 13px;text-align:center;color:#89a5b3;font-size:.84rem}.tx-empty span{font-size:1.8rem;display:block;margin-bottom:8px}.view{display:none}.view.active{display:block;animation:fadein .15s ease}.page-head{margin:18px 0 25px}.page-head>p:last-child{color:#8facbc;font-size:.88rem;margin-top:10px}.history-filters{display:grid;grid-template-columns:1fr 158px 125px;gap:10px}.history-filters input,.history-filters select{width:100%;font-size:.82rem}.history-summary{margin-top:17px;padding:14px 0;border-bottom:1px solid var(--line);font-size:.8rem;color:#9eb8c5;display:flex;justify-content:space-between;gap:12px}.history-summary strong{color:#eaf9f3}.full-list .tx-row{padding:18px 1px}.goals-form{display:grid;grid-template-columns:1fr 1fr auto;gap:13px;align-items:end}.field{display:grid;gap:7px}.field label{font-size:.78rem;color:#b6d0d6;font-weight:650}.field input,.field select{width:100%}.goal-progress{margin-top:24px;display:grid;gap:19px}.goal-info{display:flex;justify-content:space-between;gap:10px;font-size:.84rem;margin-bottom:7px}.goal-info strong{color:#daefe9}.goal-track{height:12px}.goal-fill.warning{background:#f3bd6f}.goal-fill.danger{background:#ff7f87}.goal-caption{font-size:.77rem;color:#8eaab7;margin-top:7px}.planning-insights{display:grid;gap:15px;color:#afcad2;font-size:.88rem}.insight-line{border-left:2px solid var(--accent);padding-left:13px}.disclaimer{font-size:.76rem;color:#658392;margin:16px 6px}.settings-panel{margin-bottom:19px}.settings-panel h2{margin-bottom:11px}.setting-desc,.privacy-points{color:#a7c2cb;font-size:.84rem;line-height:1.65}.settings-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:19px}.outline-btn{border-radius:11px;background:transparent;border:1px solid #3a5b6c;padding:11px 15px;color:#d9f1f1;font-weight:680;font-size:.83rem}.outline-btn:hover{background:#234355}.privacy-points{display:grid;gap:12px}.privacy-points strong{color:#e8f5ed}.danger-btn{border:1px solid #a7555c;background:transparent;color:#ffa8ae;border-radius:11px;padding:11px 15px;margin-top:20px;font-size:.83rem;font-weight:670}.app-version{text-align:center;color:#6b8a9b;font-size:.7rem;margin:30px 0}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(1070px,100%);height:72px;background:#0a1b2aee;backdrop-filter:blur(18px);border-top:1px solid #274353;z-index:20;display:flex;justify-content:space-around;align-items:center;padding:0 20px env(safe-area-inset-bottom)}.nav-button{background:none;border:0;display:grid;place-items:center;gap:3px;font-size:.67rem;color:#8caab7;min-width:75px;padding:7px 12px;border-radius:14px;font-weight:710}.nav-button.active{color:var(--accent);background:#133638}.nav-icon{font-size:1.5rem;line-height:1.1;font-weight:500}.floating-add{position:fixed;right:max(23px,calc((100vw - 1030px)/2));bottom:88px;z-index:19;border:0;width:52px;height:52px;border-radius:17px;background:var(--accent);color:#063128;font-size:2rem;line-height:1;font-weight:450;box-shadow:0 10px 24px #0005}.transaction-dialog{color:var(--text);width:min(470px,calc(100% - 25px));max-height:calc(100dvh - 24px);background:#10293a;border:1px solid #497184;border-radius:20px;padding:0;box-shadow:0 30px 90px #000b}.transaction-dialog::backdrop{background:#010b13bd;backdrop-filter:blur(5px)}.dialog-form{padding:24px}.dialog-top{display:flex;align-items:start;justify-content:space-between;margin-bottom:20px}.dialog-top h2{font-size:1.4rem}.dialog-close{border:0;color:#b9d7da;background:transparent;font-size:2rem;line-height:1}.type-toggle{display:flex;border-radius:12px;overflow:hidden;border:1px solid #3a5b6c;margin-bottom:18px}.type-toggle label{flex:1;cursor:pointer}.type-toggle input{position:absolute;opacity:0;pointer-events:none}.type-toggle span{display:block;padding:12px 7px;text-align:center;color:#a2bdc8;font-size:.85rem;font-weight:730}.type-toggle input:checked+span{background:#205448;color:#99f7dc}.type-toggle label:first-child input:checked+span{background:#57373c;color:#ffc4c6}.dialog-form>.field{margin-bottom:14px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.toast{position:fixed;bottom:88px;left:50%;transform:translate(-50%,12px);min-width:220px;max-width:calc(100% - 30px);padding:12px 19px;border:1px solid #2c8075;border-radius:13px;color:#e7fff6;background:#16483f;box-shadow:0 10px 35px #0008;z-index:90;font-size:.82rem;font-weight:630;pointer-events:none;opacity:0;transition:.2s;text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}.toast.error{background:#55292f;border-color:#9c5759;color:#ffdbdb}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@keyframes fadein{from{opacity:.7;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{50%{box-shadow:0 0 0 5px #f7a7a61c}}@media(max-width:850px){.app-shell{padding:0 19px 125px}.dashboard-columns{grid-template-columns:1fr}.walletnote{display:none}.history-filters{grid-template-columns:1fr 1fr}.history-filters input:first-child{grid-column:1/-1}.goals-form{grid-template-columns:1fr 1fr}.goals-form button{grid-column:1/-1}.quick-card{padding:21px}}@media(max-width:570px){.topbar{height:75px}.walletbar{margin:18px 0 23px}.section-head{display:block;margin-bottom:15px}.section-head h1{margin-bottom:17px}.month-picker{display:inline-flex}.balance-card{border-radius:22px;padding:23px 21px}.balance-grid{gap:10px;padding-top:18px}.mini-stat>span{font-size:.67rem}.mini-stat strong{font-size:1.02rem}.result-stat{grid-column:1/-1;border-right:0;border-top:1px solid #ffffff1d;padding-top:11px;display:flex;justify-content:space-between;align-items:center}.result-stat strong{margin:0}.balance-grid{grid-template-columns:1fr 1fr}.mini-stat:nth-child(2){border:0}.quick-card{padding:19px 17px}.quick-form{flex-wrap:wrap}.quick-form input{width:calc(100% - 61px);flex:auto}.quick-form .primary-btn{flex:1}.mic-button{height:50px}.panel{padding:19px 17px}.panel-heading .icon-pill{display:none}.card-head h2{font-size:1.08rem}.history-filters{grid-template-columns:1fr 1fr}.tx-avatar{width:38px;height:38px;flex-basis:38px}.tx-row{gap:9px}.tx-money{font-size:.84rem}.tx-details strong{font-size:.81rem}.goals-form{grid-template-columns:1fr}.goals-form button{grid-column:1}.field-row{grid-template-columns:1fr}.floating-add{right:17px;bottom:86px}.bottom-nav{height:70px;padding-left:8px;padding-right:8px}.nav-button{min-width:64px;padding:7px 8px}.balance-sub{font-size:.74rem}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Norte 2.0 · conversa responsiva */
.mentor-links{display:flex;align-items:center;gap:17px;flex-wrap:wrap;margin-top:18px}.mentor-links .primary-btn{padding:10px 16px;font-size:.83rem}.mentor-links .text-link{margin:0}
.chat-head{margin-bottom:20px}.chat-panel{border:1px solid #2e5262;border-radius:22px;background:#102839;overflow:hidden;box-shadow:0 13px 40px #0003}
.chat-topline{display:flex;align-items:center;gap:9px;padding:17px 22px;border-bottom:1px solid #244456;font-size:.88rem;background:#112e40}.online-dot{background:#64e0ba;width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 4px #47cc9d1b}.chat-local{margin-left:auto;color:#85a5ae;font-size:.74rem}.chat-thread{height:clamp(340px,53vh,600px);min-height:320px;overflow-y:auto;padding:22px;display:flex;flex-direction:column;gap:17px;overscroll-behavior:contain}.chat-message{display:flex;align-items:flex-end;gap:9px;max-width:90%}.chat-message.user{align-self:flex-end;flex-direction:row-reverse}.chat-avatar{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#174f4e;color:#95ffe1;font-weight:790;font-size:.74rem;flex:0 0 30px}.chat-message.user .chat-avatar{background:#31506b;color:#dbf2fd}.chat-bubble{padding:13px 16px;border:1px solid #2a5660;background:#173746;color:#e1f0f3;border-radius:16px 16px 16px 3px;font-size:.87rem;line-height:1.65;overflow-wrap:anywhere;white-space:normal}.chat-message.user .chat-bubble{background:#1b5a4e;border-color:#357d6c;color:#e9fff3;border-radius:16px 16px 3px 16px}.chat-bottom{border-top:1px solid #264a59;padding:13px 18px 17px;background:#0e2535}.chat-suggestions{display:flex;gap:8px;overflow-x:auto;padding-bottom:9px}.chat-suggestions button{white-space:nowrap;border:1px solid #325c66;border-radius:100px;background:#173846;color:#cde7e5;padding:8px 13px;font-size:.74rem}.chat-undo-row{min-height:21px}.undo-last{border:0;background:none;color:#ffba8a;font-size:.77rem;padding:0 2px 6px}.chat-form{display:flex;gap:8px;align-items:center;background:#17394a;border:1px solid #3d6672;border-radius:13px;padding:6px}.chat-form input{border:0;background:transparent;min-width:0;flex:1;padding:10px 8px;color:#e8f6f6;outline:0;font-size:.88rem}.chat-form input::placeholder{color:#779ba9}.chat-mic,.chat-send{width:42px;height:42px;flex:0 0 42px;border:0;border-radius:11px;display:grid;place-items:center;font-size:1.1rem}.chat-mic{color:#b9e5dd;background:#235063}.chat-mic.listening{background:#783b3d;animation:pulse 1s infinite}.chat-send{color:#073426;background:#75e7c3}.chat-disclosure{font-size:.67rem;color:#849fac;line-height:1.5;margin:10px 2px 0}
@media(max-width:570px){.chat-thread{height:calc(100dvh - 366px);min-height:330px;padding:17px 11px}.chat-message{max-width:98%}.chat-bubble{padding:11px 12px;font-size:.83rem}.chat-topline{padding:15px 14px}.chat-bottom{padding:12px}.chat-mic,.chat-send{width:40px;height:40px;flex-basis:40px}.nav-button{min-width:0;flex:1;padding:7px 2px;font-size:.62rem}.nav-icon{font-size:1.3rem}.mentor-links{gap:12px}}

/* Norte 3.0 — registro independente de entradas / saídas */
.register-section{margin-top:20px}.register-intro{display:flex;align-items:end;justify-content:space-between;gap:15px;margin:6px 3px 15px}.register-intro h2{font-size:1.23rem}.register-intro-hint{color:#7e9ca9;font-size:.73rem}
.register-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.register-card{padding:23px;border-radius:20px;border:1px solid #2b5060;background:linear-gradient(145deg,#102b3d,#0e2535);box-shadow:var(--shadow)}.income-register{border-top:3px solid #4ce5b7}.expense-register{border-top:3px solid #ff9591}
.register-header{display:flex;align-items:center;gap:12px;margin-bottom:18px}.register-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;font-size:1.6rem;font-weight:700;background:#19483d;color:#87f6d4}.expense-register .register-icon{background:#4e313a;color:#ffb9b6}.register-header h3{margin:0;font-size:1.13rem;letter-spacing:-.025em}.register-header p{font-size:.76rem;color:#93b1bf;margin-top:3px}
.register-form{display:grid;gap:13px}.register-form .field input{min-width:0;width:100%;padding:12px 13px;background:#091d2b;border:1px solid #355469;border-radius:11px;color:var(--text)}.register-form .field input::placeholder{color:#7291a2}.register-form .field input[type=date]{color-scheme:dark}.register-form .primary-btn{margin-top:2px}.save-income{background:#45e4b4;border-color:#45e4b4}.save-expense{background:#ffb9a5;border-color:#ffb9a5;color:#351b18}.save-expense:hover{background:#ffd1bf}
.input-with-voice{display:flex;gap:7px}.input-with-voice input{flex:1}.input-with-voice .mic-button{min-width:47px;width:47px;border-radius:11px}.method-fieldset{border:0;min-width:0;padding:0;margin:2px 0 0}.method-fieldset legend{color:#bad2d8;font-size:.79rem;font-weight:700;padding:0;margin-bottom:10px}.method-fieldset legend span{color:#ffb6ac}.method-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.method-option{display:block;position:relative;cursor:pointer}.method-option input{position:absolute;opacity:0;width:1px;height:1px}.method-option span{display:block;text-align:center;padding:10px 4px;border:1px solid #345a6c;border-radius:10px;background:#122f40;color:#c1d4db;font-size:.77rem;font-weight:700;transition:.1s}.method-option input:checked+span{border-color:#ffbcac;background:#623c40;color:#ffebdf}.method-option input:focus-visible+span{outline:2px solid #8deaca;outline-offset:2px}.method-option input:not(:checked)+span:hover{background:#284659}
.register-section .quick-card{margin-top:17px}.payment-panel{margin-top:19px}.payment-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.payment-stat{background:#102f40;border:1px solid #284d5d;border-radius:13px;padding:13px 12px}.payment-stat span{display:block;color:#a6c1cd;font-size:.75rem}.payment-stat strong{display:block;font-size:1.05rem;letter-spacing:-.02em;margin-top:5px;overflow-wrap:anywhere}.payment-stat small{font-size:.7rem;color:#819eae}.payment-note{margin-top:14px;color:#7695a4;font-size:.73rem}.dialog-method{margin-top:14px}.tx-details .method-tag{display:inline-block;color:#c6dfe4;font-weight:600}.history-filters{grid-template-columns:minmax(0,1fr) 150px 112px 140px}
@media(max-width:850px){.register-grid{grid-template-columns:1fr}.history-filters{grid-template-columns:1fr 1fr}.history-filters input:first-child{grid-column:1/-1}.payment-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:570px){.register-intro{display:block}.register-intro-hint{display:block;margin-top:7px}.register-card{padding:19px 16px}.payment-summary{grid-template-columns:repeat(2,1fr)}.payment-stat:last-child{grid-column:1/-1}.method-grid{gap:5px}.method-option span{padding:11px 2px;font-size:.74rem}.history-filters select{min-width:0}}

/* Norte 3.1: apoio ao ditado com o teclado Android */
.voice-fallback-inline{font-size:.76rem;line-height:1.5;color:#bad1dc;margin-top:9px}
.voice-fallback-inline strong{color:#a2f4db}
.interpret-button{display:inline-flex;align-items:center;justify-content:center;background:#214f4d;border:1px solid #418779;border-radius:10px;color:#9ff4dc;font-size:.78rem;font-weight:750;padding:10px 12px;margin-top:10px;width:100%;min-height:44px}
.interpret-button:focus-visible{outline:2px solid #8ceacc;outline-offset:2px}
.voice-help-panel:not([hidden]){margin-top:13px;padding:12px 14px;background:#273b45;border:1px solid #587c88;border-radius:12px;color:#e4f5f1;font-size:.76rem;line-height:1.55}
.voice-help-panel strong{color:#8df1d0}
.voice-hint{line-height:1.55}


/* NORTE 3.2 — Identidade visual inspirada na HTell
   Azul marinho + laranja; verde apenas para entradas; coral/vermelho para saídas.
   Paleta ilustrativa, sem depender dos códigos HEX oficiais da marca. */
:root {
  --bg: #061927;
  --bg2: #09243A;
  --surface: #0F2A40;
  --surface2: #15344C;
  --muted: #A0B9C8;
  --text: #F5F8FC;
  --line: #2A4960;
  --accent: #FF812C;
  --accent-ink: #231408;
  --warning: #FFC17E;
  --negative: #F47C74;
  --positive: #35C99B;
}
body {background: radial-gradient(ellipse at 10% -8%, #17486B 0, #071B2B 39%, #061725 78%);}
.topbar {border-bottom-color:#28455A;}
.brand-icon {color:#FF812C; background:#173750; border-color:#8B542F;}
.brand-icon svg circle:last-child {fill:#0D2840;}
.brand span {color:#B9CAD8;}
.avatar {background:#193A54;border-color:#43647D;color:#FFF4EB;}
.walletbtn {color:#C0D0DE;border-color:#345570;}
.walletbtn.active {color:#FFD0AB;border-color:#FF812C;background:#392B26;}
.walletnote {color:#87A0B4;}
.eyebrow {color:#FFA464;}
.month-picker {background:#0F2D46;border-color:#365672;}
.month-nav {color:#F6F9FC;}
.month-nav:hover {background:#204864;}
.balance-card {
  background:radial-gradient(circle at 90% 2%,#1D5170 0,transparent 46%),linear-gradient(116deg,#133C5B 0%,#0C2D48 53%,#09233A 100%);
  border-color:#3B6A89;
  box-shadow:0 18px 48px #0004;
}
.balance-card::before {content:'';position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,#FF812C,#FDB36E,transparent);}
.balance-top {color:#D4E2ED;}
.balance-chip {color:#FFD4B1;background:#593C29;border-color:#CC7540;}
.balance-sub {color:#B6CAD9;}
.mini-stat>span {color:#BBD0DE;}
.stat-icon.positive {background:#114D48;color:#72E4BD;}
.stat-icon.negative {background:#64363C;color:#FFAAA7;}
.quick-card,.panel {background:linear-gradient(150deg,#102D45,#0D263B);border-color:#2C4C65;}
.icon-pill {background:#4A3023;color:#FFAE6C;}
.quick-form input,.history-filters input,.history-filters select,.goals-form input,.dialog-form input,.dialog-form select {background:#091E30;border-color:#355673;}
.quick-form input::placeholder,.history-filters input::placeholder,.goals-form input::placeholder,.dialog-form input::placeholder {color:#829DAF;}
.mic-button {color:#FFAF7B;background:#1C415F;border-color:#436A83;}
.mic-button.listening {color:#FFC2A0;background:#653D35;}
.primary-btn,.primary-btn:focus-visible {background:#FF812C;border-color:#FF812C;color:#211508;}
.primary-btn:hover {background:#FFA25B;}
.example-btn {background:#17344B;border-color:#375774;color:#CEDDE8;}
.example-btn:hover {border-color:#FF9B55;}
.mentor-symbol {background:#4A362E;color:#FFD2A2;}
.mentor-main {color:#F0F4F8;}
.mentor-tips {color:#B7C9D7;}
.cat-track,.goal-track {background:#2B455B;}
.cat-fill,.goal-fill {background:#FF812C;}
.cat-row:nth-child(2) .cat-fill {background:#4A91C6;}
.cat-row:nth-child(3) .cat-fill {background:#36B995;}
.cat-row:nth-child(4) .cat-fill {background:#E0B16D;}
.cat-row:nth-child(5) .cat-fill {background:#AD96D6;}
.tx-avatar {background:#1B3A55;}
.tx-money.income {color:#66DCB4;}
.tx-money.expense {color:#FFA29B;}
.tx-row {border-bottom-color:#2B4A62;}
.outline-btn {border-color:#50708A;color:#E5EDF4;}
.outline-btn:hover {background:#1C405A;}
.bottom-nav {background:#091E30F5;border-top-color:#31536E;}
.nav-button {color:#A3B9C9;}
.nav-button.active {background:#473021;color:#FFAC70;}
.floating-add {background:#FF812C;color:#221508;box-shadow:0 10px 28px #FF812C35;}
.transaction-dialog {background:#102B41;border-color:#4B7391;}
.type-toggle input:checked+span {background:#104E44;color:#80F1C3;}
.type-toggle label:first-child input:checked+span {background:#5D353B;color:#FFC6C0;}
.toast {background:#174A42;border-color:#359E7A;color:#E8FFF5;}
.chat-panel {background:#102B42;border-color:#345A76;}
.chat-topline {background:#15364F;border-bottom-color:#315473;}
.online-dot {background:#34CF9B;box-shadow:0 0 0 4px #34CF9B20;}
.chat-avatar {background:#503521;color:#FFD3B6;}
.chat-bubble {background:#173D55;border-color:#375C73;color:#EFF6FA;}
.chat-message.user .chat-bubble {background:#5D3D25;border-color:#BA7139;color:#FFF1E7;}
.chat-bottom {background:#0C263B;border-top-color:#294B64;}
.chat-suggestions button {background:#173C54;border-color:#3D627C;color:#E5EFF7;}
.chat-form {background:#173B54;border-color:#52738D;}
.chat-mic {background:#28526D;color:#FFBF8E;}
.chat-send {background:#FF812C;color:#201308;}
.register-card {background:linear-gradient(145deg,#11324A,#0B263B);border-color:#31536B;}
.income-register {border-top-color:#35C99B;}
.expense-register {border-top-color:#F47C74;}
.register-icon {background:#15473D;color:#7AE3BA;}
.expense-register .register-icon {background:#53333C;color:#FFA9A4;}
.register-header p {color:#B1C8D6;}
.register-form .field input {background:#091F32;border-color:#395C75;}
.register-form .field input::placeholder {color:#8DA8B9;}
/* Ações de entrada/saída mantêm sua semântica, não confundindo tipo com marca. */
.save-income {background:#35C99B;border-color:#35C99B;color:#062F24;}
.save-income:hover {background:#6AE3BF;}
.save-expense {background:#F47C74;border-color:#F47C74;color:#311211;}
.save-expense:hover {background:#FFA19B;}
.method-fieldset legend {color:#D5E2EC;}
.method-fieldset legend span {color:#FFA19B;}
.method-option span {background:#15354B;border-color:#3B6078;color:#D9E5EE;}
.method-option input:checked+span {border-color:#FF9D55;background:#563B2B;color:#FFE0C5;box-shadow:inset 0 0 0 1px #FF9D55;}
.method-option input:focus-visible+span {outline-color:#FFB078;}
.method-option input:not(:checked)+span:hover {background:#21455D;}
.payment-stat {background:#14354C;border-color:#355A74;}
.payment-stat span {color:#B7CAD6;}
.payment-stat small {color:#95AFC1;}
.voice-fallback-inline {color:#BBD0DE;}
.voice-fallback-inline strong {color:#FFB57E;}
.interpret-button {background:#3D332A;border-color:#B9703C;color:#FFC29A;}
.interpret-button:focus-visible {outline-color:#FFAE76;}
.voice-help-panel:not([hidden]) {background:#273646;border-color:#547188;color:#E8F3FA;}
.voice-help-panel strong {color:#FFBB8D;}

/* NORTE 4.0 — Controles sem seletor global; finanças mostradas lado a lado. */
.scope-dashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.scope-dashboard .balance-card{padding:23px 20px;border-radius:22px}
.scope-dashboard .balance-top{font-size:.62rem;letter-spacing:.075em;gap:8px}
.scope-dashboard .balance-chip{white-space:nowrap;font-size:.65rem}
.scope-dashboard .main-balance{font-size:clamp(1.7rem,3vw,2.8rem);margin:17px 0 7px}
.scope-dashboard .balance-sub{min-height:36px;margin-bottom:13px;font-size:.77rem}
.scope-dashboard .balance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px;padding-top:16px}
.scope-dashboard .mini-stat{border-right:0}
.scope-dashboard .mini-stat.result-stat{grid-column:1/-1;padding-top:11px;border-top:1px solid #ffffff1c}
.scope-dashboard .mini-stat strong{font-size:clamp(.97rem,1.75vw,1.27rem)}
.scope-dashboard .mini-stat>span{font-size:.68rem}
.scope-dashboard .scope-htell{background:radial-gradient(circle at 96% 0%,#5b3827 0,transparent 45%),linear-gradient(115deg,#17344d,#0b283f 65%,#0a2134);border-color:#9b6137}
.scope-dashboard .scope-htell::before{background:linear-gradient(90deg,#FF812C,#F5B46F,transparent)}
.scope-dashboard .scope-personal::before{background:linear-gradient(90deg,#4089B9,#FF812C,transparent)}
.scope-disclaimer{font-size:.73rem;color:#a9c3d6;margin:10px 3px 24px}
.scope-fieldset{margin:0;border:0;padding:0;min-width:0}
.scope-fieldset legend{font-size:.81rem;font-weight:750;color:#d2e0eb;margin-bottom:9px}
.scope-fieldset legend span{color:#ffa463}
.scope-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.scope-option{position:relative;cursor:pointer;display:block}
.scope-option input{position:absolute;opacity:0;width:1px;height:1px}
.scope-option span{display:block;padding:12px 14px;text-align:center;border:1px solid #3f6079;background:#153950;border-radius:12px;color:#d8e4ef;font-weight:750;font-size:.87rem;min-height:44px}
.scope-option input:checked+span{border:2px solid #ff954b;background:#563622;color:#ffdec3;padding:11px 13px}
.scope-option input:focus-visible+span{outline:3px solid #ffc490;outline-offset:2px}
.scope-option span:hover{border-color:#ffac70}
.scope-analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.scope-insight{min-width:0;background:#0c2539;border:1px solid #31516a;padding:18px;border-radius:15px}
.scope-insight h3,.payment-scope h3{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:.94rem;color:#e9f4fa}
.scope-insight .mentor-main{font-size:1.02rem;line-height:1.5}
.scope-dot{width:9px;height:9px;display:inline-block;border-radius:50%;background:#4e9ed1;flex:none}
.scope-dot.htell{background:#ff943c}
.scope-dot.personal{background:#4e9ed1}
.category-card,.mentor-card{margin-top:20px}
.scope-insight .muted-small{margin-left:auto;font-size:.7rem}
.payment-scope+.payment-scope{margin-top:22px;padding-top:18px;border-top:1px solid #2e4c61}
.payment-scope h3{margin:0 0 10px}
.tx-wallet{font-size:.65rem;display:inline-block!important;padding:2px 6px;border-radius:6px;font-weight:750;background:#1a4a68;color:#acd9f5}
.tx-wallet.htell{background:#4d382c;color:#ffc08a}
.history-summary{display:grid!important;grid-template-columns:1fr 1fr;gap:12px}
.history-scope-summary{display:grid;gap:3px;padding:12px;border:1px solid #385c72;border-radius:12px;background:#102d45;font-size:.81rem}
.history-scope-summary>strong{font-size:1rem;color:#ffaf71}
.history-scope-summary>small{color:#9eb8c9}
.history-scope-summary b{color:#f1f7fc;font-weight:750}
.history-filters{grid-template-columns:repeat(2,minmax(0,1fr)) 115px 140px}
.history-filters input:first-of-type{grid-column:span 2}
#planning-wallet,#delete-wallet{border:1px solid #3f6079;border-radius:10px;background:#0d263c;color:#f1f6f9;padding:11px;min-height:44px}
#planning-wallet{min-width:150px}
.delete-scope{margin:18px 0}
.dialog-scope{margin:12px 0 16px}
@media(max-width:800px){.scope-dashboard{grid-template-columns:1fr}.scope-dashboard .balance-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.scope-dashboard .mini-stat.result-stat{grid-column:auto;border-top:0;padding-top:0}.scope-analytics-grid{grid-template-columns:1fr}.history-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.scope-dashboard .balance-card{padding:21px 18px}.scope-dashboard .balance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scope-dashboard .mini-stat.result-stat{grid-column:1/-1;border-top:1px solid #ffffff1c;padding-top:12px}.scope-dashboard .main-balance{font-size:2.35rem}.scope-insight{padding:14px}.history-summary{grid-template-columns:1fr 1fr}.history-scope-summary{padding:10px;font-size:.73rem}.history-filters input:first-of-type{grid-column:1/-1}.history-filters{grid-template-columns:1fr 1fr}.history-filters select{min-width:0}}

/* NORTE 5.0 — Agenda de pagamentos */
.agenda-home{padding:22px;border:1px solid #34546d;background:linear-gradient(135deg,#102e45 0%,#0a2438 100%);border-radius:20px;margin:18px 0 26px;box-shadow:var(--shadow)}
.agenda-home-intro{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px}
.agenda-home-intro h2{font-size:1.2rem;letter-spacing:-.02em;margin:1px 0 5px}
.agenda-home-intro p:last-child{color:#a6c0d3;font-size:.78rem;line-height:1.5}
.agenda-home-action{border:1px solid #f99244;border-radius:11px;color:#ffb77b;background:#503821;font-weight:750;min-height:43px;padding:0 16px;white-space:nowrap}
.agenda-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.agenda-mini{border:1px solid #33516b;border-radius:14px;background:#0a2235;padding:15px 16px;min-width:0}
.agenda-mini.htell{border-color:#785539}
.agenda-mini-name{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#e2edf6;font-weight:750}
.agenda-mini-amount{font-weight:850;font-size:1.55rem;letter-spacing:-.04em;margin:9px 0 5px;overflow-wrap:anywhere}
.agenda-mini-sub{font-size:.75rem;color:#acc2d0}
.agenda-okay,.agenda-overdue{font-size:.74rem;font-weight:750;margin-top:10px}
.agenda-okay{color:#68dcb3}.agenda-overdue,.danger-text{color:#ffa9a0!important}
.agenda-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-bottom:18px}
.agenda-stat{display:grid;gap:13px;background:#102b41;border:1px solid #345572;border-radius:18px;padding:19px}
.agenda-stat.htell{border-top:3px solid #ff943c}.agenda-stat.personal{border-top:3px solid #4e9ed1}
.agenda-stat-title{font-weight:830;color:#eaf4fb;display:flex;align-items:center;gap:9px}
.agenda-stat>div:not(:first-child){display:flex;flex-direction:column;gap:2px;border-top:1px solid #284760;padding-top:11px}
.agenda-stat small{font-size:.78rem;color:#b3c7d6}.agenda-stat strong{font-size:1.17rem;color:#fff}.agenda-stat span:not(.scope-dot){font-size:.71rem;color:#9bb4c8}
.agenda-create-panel,.agenda-list-panel{margin-top:18px}.agenda-create-panel .register-form{max-width:740px}
.agenda-create-panel input,.agenda-create-panel select,#pay-date{background:#0a2134;color:#f0f7ff;border:1px solid #3c6078;border-radius:11px;padding:12px;min-height:46px;width:100%;color-scheme:dark}
.agenda-help{font-size:.77rem;color:#a5bfce;line-height:1.6;margin:3px 0 5px}
.bill-form-actions{display:flex;gap:10px;flex-wrap:wrap}.bill-form-actions button{min-height:46px}
.agenda-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}
.agenda-filters select{min-height:44px;width:100%;border:1px solid #40617a;color:#ecf4fb;background:#0d273c;border-radius:10px;padding:10px}
.bill-list{display:grid;gap:12px}.bill-row{background:#0a2236;border:1px solid #31536c;border-radius:15px;padding:16px;min-width:0}
.bill-title-line{display:flex;align-items:center;justify-content:space-between;gap:10px}.bill-title-line>div:first-child{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.bill-amount{font-size:1.07rem;font-weight:840;color:#f6fafb;white-space:nowrap}
.bill-row h3{margin:11px 0 4px;font-size:1rem;overflow-wrap:anywhere}.bill-row p{font-size:.78rem;color:#abc5d4}
.bill-badge{display:inline-block;padding:4px 8px;border-radius:30px;font-size:.66rem;font-weight:780}
.bill-badge.pending{background:#27465b;color:#c7e1f5}.bill-badge.today{background:#604926;color:#ffdb9b}
.bill-badge.overdue{background:#62383a;color:#ffd0c8}.bill-badge.paid{background:#184f43;color:#a8f5c6}
.bill-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.bill-actions button{border:1px solid #42627b;background:#183950;color:#e3f1fa;padding:9px 12px;min-height:41px;border-radius:10px;font-size:.76rem;font-weight:750}
.bill-actions .bill-pay{background:#f58e40;border-color:#f58e40;color:#241305}.bill-actions .bill-delete{background:transparent;color:#ffb5ac;border-color:#784b55}
.pay-summary{display:flex;flex-direction:column;gap:5px;border:1px solid #3c5872;background:#0c283c;border-radius:12px;padding:14px;margin:13px 0 18px}
.pay-summary strong{color:#fff;font-size:1rem}.pay-summary span{color:#aec7d5;font-size:.8rem;line-height:1.5}
.expense-status-fieldset{border:0;margin:0;padding:0;min-width:0}.expense-status-fieldset legend{font-size:.79rem;font-weight:750;color:#d2e0eb;margin-bottom:9px}.expense-status-fieldset legend span{color:#ffa463}
.expense-status-hint{font-size:.73rem;color:#aec6d5;margin-top:8px}
[hidden]{display:none!important}
@media(max-width:800px){.agenda-stats{grid-template-columns:1fr}}
@media(max-width:570px){.agenda-home{padding:17px 14px}.agenda-home-intro{align-items:flex-start;flex-direction:column}.agenda-mini-grid{grid-template-columns:1fr 1fr;gap:7px}.agenda-mini{padding:12px 9px}.agenda-mini-amount{font-size:1.18rem}.agenda-mini-sub{font-size:.68rem}.agenda-okay,.agenda-overdue{font-size:.67rem}.agenda-stats{gap:12px}.agenda-stat{padding:15px}.agenda-filters{grid-template-columns:1fr 1fr}.bill-actions button{padding:9px}.bottom-nav{overflow-x:auto;gap:0;padding:0 3px;scrollbar-width:none;justify-content:space-between}.bottom-nav .nav-button{min-width:0;flex:1;padding:7px 1px;font-size:.58rem}.bottom-nav .nav-icon{font-size:1.24rem}.bill-amount{font-size:.95rem}}

/* Norte 5.1 — compromissos previstos no resultado acumulado */
.scope-dashboard .balance-ledger{display:grid;gap:9px;padding:12px 13px;margin:0 0 18px;border:1px solid #ffffff25;background:#071b2c88;border-radius:13px}
.scope-dashboard .balance-ledger>div{display:flex;justify-content:space-between;align-items:center;gap:9px}
.scope-dashboard .balance-ledger span{font-size:.73rem;color:#c1d5e5;line-height:1.3}
.scope-dashboard .balance-ledger strong{font-size:.92rem;white-space:nowrap;font-variant-numeric:tabular-nums}
.scope-dashboard .balance-ledger .pending-value{color:#ffc49e}
.scope-dashboard .balance-sub{margin-bottom:14px}
@media(max-width:570px){.scope-dashboard .balance-ledger{padding:10px 11px;gap:8px}.scope-dashboard .balance-ledger span{font-size:.69rem}.scope-dashboard .balance-ledger strong{font-size:.84rem}}
