/* A fonte Inter é carregada via <link rel="stylesheet"> no <head> de cada
   página (não-bloqueante, com preconnect), em vez de @import aqui. */
:root{--ink:#172e2c;--ink-soft:#45605d;--pine:#123e39;--pine-deep:#0d2927;--lime:#d6ed73;--cream:#f8f7f2;--paper:#fff;--line:#e8ece6;--shadow:0 20px 55px rgba(16,43,40,.10);font-family:"Inter","Segoe UI",Roboto,"Noto Sans",Arial,sans-serif;color:var(--ink);background:var(--cream);text-rendering:optimizeLegibility}*{box-sizing:border-box}body{min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid rgba(100,162,147,.42);outline-offset:2px}[hidden]{display:none!important}.ambient{position:fixed;border-radius:999px;pointer-events:none}.ambient-one{width:42vw;height:42vw;right:-18vw;top:-19vw;background:rgba(214,237,115,.28)}.ambient-two{width:26vw;height:26vw;left:-14vw;bottom:-14vw;background:rgba(223,140,86,.1)}.auth-screen{position:relative;z-index:1;min-height:100vh;display:grid;grid-template-columns:minmax(360px,48%) 1fr}.auth-story{position:relative;min-height:100vh;overflow:hidden;color:#f7faf7;padding:48px clamp(42px,7vw,112px);display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 76% 35%,rgba(135,184,156,.26),transparent 25%),linear-gradient(145deg,#174d46,#0d2c2a 74%)}.auth-story:after{content:"";position:absolute;width:560px;height:560px;right:-230px;bottom:-245px;border:1px solid rgba(214,237,115,.27);border-radius:50%;box-shadow:0 0 0 42px rgba(214,237,115,.04),0 0 0 95px rgba(214,237,115,.035)}.brand{display:inline-flex;align-items:center;gap:11px;width:fit-content;text-decoration:none;font-size:21px;font-weight:760;letter-spacing:-.8px}.brand-light{color:#fff}.brand-dark{color:var(--pine)}.brand-mark{width:25px;height:25px;display:inline-flex;align-items:end;gap:3px;padding:4px;background:var(--lime);border-radius:8px 8px 8px 2px}.brand-mark i{display:block;width:4px;border-radius:2px;background:var(--pine)}.brand-mark i:nth-child(1){height:7px}.brand-mark i:nth-child(2){height:12px}.brand-mark i:nth-child(3){height:17px}.auth-copy{margin:auto 0;padding-bottom:30px;position:relative;z-index:1}.eyebrow{display:inline-block;color:#78908c;font-size:10px;font-weight:800;letter-spacing:1.55px}.eyebrow-light{color:var(--lime)}.auth-copy h1{margin:17px 0 18px;max-width:630px;font-size:clamp(38px,4.05vw,66px);font-weight:540;letter-spacing:-3.1px;line-height:1.04}.auth-copy p{max-width:450px;color:rgba(247,250,247,.72);font-size:16px;line-height:1.65}.story-footer{position:relative;z-index:1;display:flex;align-items:center;gap:12px;color:rgba(247,250,247,.54);font-size:12px}.story-dash{width:31px;height:1px;background:var(--lime)}.login-panel{min-height:100vh;display:grid;place-items:center;padding:42px;background:rgba(255,255,255,.72);backdrop-filter:blur(13px)}.login-card{width:min(100%,410px)}.mobile-brand{display:none}.login-heading{margin-bottom:30px}.login-heading h2{margin:11px 0 8px;font-size:30px;letter-spacing:-1.5px}.login-heading p{margin:0;color:var(--ink-soft);font-size:14px}label{display:block;margin:18px 0 8px;color:#334b48;font-size:12px;font-weight:730}input:not([type=checkbox]){width:100%;height:50px;padding:0 14px;border:1px solid #dce4de;border-radius:11px;color:var(--ink);background:#fff}input:not([type=checkbox])::placeholder{color:#a4b0aa}input:not([type=checkbox]):focus{border-color:#72a494;box-shadow:0 0 0 4px rgba(114,164,148,.13);outline:0}.password-field{position:relative}.password-field input{padding-right:78px}.field-action{position:absolute;right:8px;top:9px;padding:7px 9px;color:#55726b;border:0;background:transparent;font-size:11px;font-weight:750}.form-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:17px 0 22px}.check-control{display:flex;align-items:center;gap:8px;margin:0;color:#637875;font-size:11px;font-weight:550}.check-control input{accent-color:var(--pine)}.text-button{padding:0;border:0;color:#397162;background:transparent;font-size:12px;font-weight:740}.form-error{margin:-8px 0 14px;color:#b6493c;font-size:12px}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:43px;padding:0 18px;border:1px solid var(--pine);border-radius:9px;color:#fff;background:var(--pine);font-size:13px;font-weight:740;box-shadow:0 8px 18px rgba(18,62,57,.16);transition:transform .16s,background .16s}.primary-button:hover{background:#1b534d;transform:translateY(-1px)}.full-button{width:100%;min-height:52px;justify-content:space-between;padding:0 20px}.primary-button[aria-busy=true]{opacity:.68;cursor:wait;transform:none}.security-note{display:flex;align-items:center;justify-content:center;gap:7px;margin:22px 0 0;color:#7b908b;font-size:11px}.security-note span{color:#74a895;font-size:9px}.app-shell{min-height:100vh;background:#f8faf7}.sidebar{position:fixed;inset:0 auto 0 0;z-index:4;width:244px;padding:31px 18px 21px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:var(--pine-deep)}.sidebar .brand{margin-left:10px}.wallet-switcher{margin:45px 8px 27px}.wallet-label,.card-label{display:block;color:#75928c;font-size:9px;font-weight:800;letter-spacing:1.25px}.wallet-button{width:100%;margin-top:10px;padding:10px 8px;display:flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.09);border-radius:10px;color:#fff;text-align:left;background:rgba(255,255,255,.045)}.wallet-button>span:nth-child(2){flex:1}.wallet-button strong,.wallet-button small{display:block}.wallet-button strong{font-size:12px}.wallet-button small{margin-top:3px;color:#98b1ac;font-size:10px}.wallet-initial,.avatar{display:grid;place-items:center;flex:0 0 auto;width:27px;height:27px;border-radius:8px;color:var(--pine);background:var(--lime);font-size:12px;font-weight:800}.main-nav{display:grid;gap:4px}.nav-item,.logout-button{width:100%;padding:11px 12px;display:flex;align-items:center;gap:12px;border:0;border-radius:8px;color:#a8bbb7;background:transparent;font-size:12px;text-align:left}.nav-item span,.logout-button span{width:14px;color:#9cb6ae;font-size:16px;text-align:center}.nav-item:hover,.nav-item.active{color:#fff;background:rgba(214,237,115,.1)}.nav-item.active span{color:var(--lime)}.sidebar-bottom{display:grid;gap:3px}.logout-button{margin-top:14px;color:#c1d1cc;border-top:1px solid rgba(255,255,255,.09);border-radius:0;padding-top:19px}.main-content{min-height:100vh;margin-left:244px}.topbar{height:81px;padding:0 clamp(28px,4.4vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(250,252,249,.85)}.month-selector,.user-menu,.icon-button,.select-button{border:0;color:#38514d;background:transparent}.month-selector{display:inline-flex;gap:16px;align-items:center;font-size:13px}.month-selector span{color:#8ba39e;font-size:20px}.topbar-actions{display:flex;align-items:center;gap:20px}.icon-button{position:relative;font-size:23px;color:#55716a}.notification-dot{position:absolute;top:4px;right:1px;width:6px;height:6px;border:1px solid #fff;border-radius:50%;background:#dd9161}.user-menu{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:700}.avatar{width:31px;height:31px;color:#fff;background:#4c8375}.dashboard{max-width:1380px;margin:0 auto;padding:47px clamp(28px,4.4vw,72px) 65px}.dashboard-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:33px}.dashboard-heading h1{margin:7px 0 5px;font-size:31px;letter-spacing:-1.55px}.dashboard-heading p{margin:0;color:#728884;font-size:13px}.metric-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:17px}.metric-card,.panel{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:var(--paper);box-shadow:0 5px 18px rgba(28,61,51,.025)}.metric-card{position:relative;min-height:158px;padding:21px 22px}.metric-card strong{display:block;position:relative;z-index:1;margin:13px 0 12px;color:#213a36;font-size:27px;letter-spacing:-1.25px}.metric-card p{position:relative;z-index:1;margin:0;color:#748883;font-size:11px}.trend{display:inline-grid;place-items:center;width:17px;height:17px;margin-right:4px;border-radius:5px;font-size:12px;font-weight:800}.trend.positive{color:#31715f;background:#e2f0e9}.trend.neutral{color:#899995;background:#eef1ef}.balance-card{color:#fff;border-color:var(--pine);background:linear-gradient(125deg,#1b514a,#123b37)}.balance-card .card-label,.balance-card p{color:#bbcec4}.balance-card strong{color:#fff}.balance-card .trend{color:#d8ee7b;background:rgba(214,237,115,.15)}.card-orb{position:absolute;width:140px;height:140px;right:-36px;top:-45px;border:1px solid rgba(214,237,115,.29);border-radius:50%;box-shadow:0 0 0 22px rgba(214,237,115,.04),0 0 0 45px rgba(214,237,115,.035)}.content-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:17px;margin-top:17px}.panel{min-height:286px;padding:23px}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.panel h2{margin:7px 0 0;font-size:16px;letter-spacing:-.55px}.select-button{padding:8px 10px;border:1px solid var(--line);border-radius:7px;font-size:11px}.empty-chart{height:187px;display:grid;grid-template-columns:1fr 1.5fr;align-items:end;gap:23px;padding-top:25px}.chart-columns{height:128px;display:flex;align-items:end;justify-content:space-between;gap:7px;padding:0 10px;border-bottom:1px solid #ecf0ed}.chart-columns i{display:block;width:8px;height:23%;border-radius:5px 5px 0 0;background:#e5ece8}.chart-columns i:nth-child(2){height:42%}.chart-columns i:nth-child(3){height:31%}.chart-columns i:nth-child(4){height:61%;background:#d5e3dd}.chart-columns i:nth-child(5){height:37%}.chart-columns i:nth-child(6){height:75%}.chart-columns i:nth-child(7){height:48%}.empty-chart strong,.empty-list strong{display:block;color:#3d5651;font-size:13px}.empty-chart p,.empty-list p,.muted{color:#5a706b;font-size:11px;line-height:1.6}.projection-panel{background:linear-gradient(160deg,#f3f8ec,#fff)}.status-pill{padding:5px 8px;border-radius:99px;color:#3d5a44;background:#e2efdc;font-size:9px;font-weight:800;text-transform:uppercase}.projection-value{margin:37px 0 8px;color:var(--pine);font-size:28px;font-weight:760;letter-spacing:-1.45px}.projection-panel .muted{max-width:285px;margin:0}.ghost-button{margin-top:20px;padding:0;border:0;color:#306d5d;background:transparent;font-size:12px;font-weight:760}.lower-grid .panel{min-height:215px}.empty-list{min-height:115px;display:flex;align-items:center;gap:12px}.empty-list>div{flex:1}.empty-list p{margin:3px 0 0}.empty-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;color:#4f8375;background:#edf4f0;font-size:20px}.small-outline-button{padding:8px 10px;border:1px solid #cee0d8;border-radius:7px;color:#397260;background:#fff;font-size:11px;font-weight:730}.round-add{display:grid;place-items:center;width:28px;height:28px;border:1px solid #dbe7e1;border-radius:50%;color:#47786a;background:#fff;font-size:17px}.goal-placeholder{min-height:125px;display:grid;place-items:center;align-content:center;text-align:center}.goal-placeholder>span{color:#9dbab0;font-size:24px}.goal-placeholder p{margin:6px 0;color:#718783;font-size:12px}.placeholder-view{max-width:760px;margin:0 auto;padding:110px 50px}.placeholder-view h1{font-size:38px;letter-spacing:-2px}.placeholder-view p{color:var(--ink-soft);line-height:1.65}.toast{position:fixed;z-index:15;left:50%;bottom:28px;transform:translateX(-50%);padding:12px 17px;border-radius:9px;color:#fff;background:var(--pine);box-shadow:var(--shadow);font-size:12px}@media(max-width:980px){.auth-screen{grid-template-columns:.85fr 1fr}.auth-story{padding:36px 44px}.auth-copy h1{font-size:46px}.sidebar{width:205px}.main-content{margin-left:205px}.metric-grid{grid-template-columns:1fr 1fr}.balance-card{grid-column:span 2}.content-grid{grid-template-columns:1fr}}@media(max-width:700px){.auth-screen{display:block}.auth-story{display:none}.login-panel{min-height:100vh;padding:28px 24px;background:#fafcf9}.mobile-brand{display:inline-flex;margin-bottom:60px}.sidebar{display:none}.main-content{margin-left:0}.topbar{height:66px;padding:0 18px}.month-selector{gap:8px;font-size:11px}.user-menu #user-name,.user-menu>span:last-child{display:none}.topbar-actions{gap:10px}.dashboard{padding:30px 18px 45px}.dashboard-heading{display:block}.dashboard-heading .primary-button{width:100%;margin-top:22px}.metric-grid{grid-template-columns:1fr}.balance-card{grid-column:auto}.empty-chart{grid-template-columns:1fr;height:215px}.chart-columns{height:70px}.content-grid{grid-template-columns:1fr}.empty-list{align-items:flex-start;flex-wrap:wrap}.small-outline-button{margin-left:44px}.login-heading h2{font-size:27px}}
.month-carousel{gap:10px}.month-carousel .icon-button{display:grid;place-items:center;width:32px;height:32px;border:1px solid transparent;border-radius:50%;font-size:24px;line-height:1;transition:background .16s,border-color .16s,color .16s}.month-carousel .icon-button:hover{border-color:#dfe8e3;background:#fff;color:var(--pine)}.month-carousel-track{display:grid;grid-template-columns:minmax(112px,1fr) minmax(164px,1.1fr) minmax(112px,1fr);align-items:center;gap:8px;min-width:min(48vw,520px);padding:4px;border:1px solid #e6ece8;border-radius:999px;background:rgba(255,255,255,.68);box-shadow:0 8px 24px rgba(20,52,47,.035)}.month-chip{min-height:34px;padding:0 13px;border:0;border-radius:999px;text-align:center;white-space:nowrap}.month-side{color:#839893;background:transparent;font-size:11px;font-weight:720}.month-side:hover{color:#365c54;background:#f2f6f3}.month-current{display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#1b514a,#123b37);font-size:13px;font-weight:820;letter-spacing:-.2px;box-shadow:0 8px 18px rgba(18,62,57,.16)}@media(max-width:900px){.topbar{height:auto;min-height:81px;gap:14px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.month-carousel{order:2;width:100%;justify-content:center}.month-carousel-track{min-width:0;width:min(100%,520px);grid-template-columns:minmax(82px,1fr) minmax(132px,1.25fr) minmax(82px,1fr)}.topbar-actions{margin-left:auto}}@media(max-width:560px){.month-carousel{gap:6px}.month-carousel .icon-button{width:28px;height:28px;font-size:21px}.month-carousel-track{gap:4px;padding:3px}.month-chip{min-height:31px;padding:0 8px}.month-side{font-size:9px}.month-current{font-size:11px}}
.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);justify-content:normal}.month-carousel{grid-column:2;justify-self:center}.topbar-actions{grid-column:3;justify-self:end}@media(max-width:900px){.topbar{display:grid;grid-template-columns:1fr;justify-items:center}.month-carousel{grid-column:1;width:100%;order:initial}.topbar-actions{grid-column:1;justify-self:end;margin-left:0}}

/* MesClaro beta design system */
:root{--mc-bg:#f4f7f1;--mc-surface:rgba(255,255,255,.82);--mc-surface-strong:#fff;--mc-border:rgba(35,65,59,.09);--mc-muted:#718783;--mc-shadow:0 18px 45px rgba(17,51,46,.08);--mc-shadow-soft:0 8px 22px rgba(17,51,46,.045);--mc-radius:20px;--mc-radius-sm:13px}body{color:#183532;background:radial-gradient(circle at 22% 0,rgba(214,237,115,.25),transparent 26vw),linear-gradient(135deg,#f7f9f3 0%,#eef5ef 52%,#f7f6ef 100%);font-feature-settings:"cv02","cv03","cv04","cv11"}.app-shell{background:transparent}.sidebar{width:260px;padding:28px 18px 22px;background:linear-gradient(165deg,#123e39 0%,#0d2927 66%,#091f1e 100%);box-shadow:14px 0 40px rgba(12,38,35,.14)}.main-content{margin-left:260px}.sidebar .brand{margin-left:8px;font-size:22px}.brand-mark{border-radius:10px 10px 10px 3px;box-shadow:0 8px 20px rgba(214,237,115,.16)}.wallet-switcher{margin:36px 6px 26px}.wallet-button{padding:13px 12px;border-color:rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.07);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.wallet-initial,.avatar{border-radius:11px}.main-nav{gap:7px}.nav-item,.logout-button{min-height:42px;padding:12px 13px;border-radius:14px;font-weight:650;letter-spacing:-.08px}.nav-item span,.logout-button span{display:grid;place-items:center;width:25px;height:25px;border-radius:9px;background:rgba(255,255,255,.06);font-size:12px}.nav-item:hover,.nav-item.active{background:rgba(214,237,115,.14);box-shadow:inset 0 0 0 1px rgba(214,237,115,.10)}.nav-item.active span{color:#123e39;background:var(--lime)}.topbar{position:sticky;top:0;z-index:3;height:82px;border-bottom:1px solid rgba(35,65,59,.08);background:rgba(247,250,247,.78);backdrop-filter:blur(18px);box-shadow:0 1px 0 rgba(255,255,255,.75)}.page-topbar{display:grid;grid-template-columns:1fr auto;justify-content:normal}.page-topbar strong{justify-self:start;color:#173b37;font-size:14px}.page-topbar .topbar-actions{justify-self:end}.page-topbar #user-name{color:#637b77;font-size:12px;font-weight:700}.dashboard,.finance-page{max-width:1360px}.dashboard-heading h1,.placeholder-view h1{font-weight:760;letter-spacing:-1.7px}.dashboard-heading p{font-size:14px}.eyebrow,.card-label,.wallet-label{color:#6d837f;letter-spacing:1.6px}.metric-grid,.content-grid,.finance-grid{gap:20px}.metric-card,.panel{border:1px solid var(--mc-border);border-radius:var(--mc-radius);background:var(--mc-surface);box-shadow:var(--mc-shadow-soft);backdrop-filter:blur(8px)}.metric-card{min-height:164px;padding:24px}.metric-card strong{font-size:clamp(25px,2.3vw,34px);font-weight:780}.panel{padding:25px}.panel h2{font-size:17px;font-weight:760}.balance-card{border-color:rgba(214,237,115,.22);background:radial-gradient(circle at 88% 4%,rgba(214,237,115,.28),transparent 34%),linear-gradient(135deg,#174d46 0%,#0d302e 100%);box-shadow:0 22px 42px rgba(18,62,57,.16)}input:not([type=checkbox]),select,.select-button{border:1px solid rgba(35,65,59,.11);border-radius:13px;background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.9);transition:border-color .16s,box-shadow .16s,transform .16s}input:not([type=checkbox]):focus,select:focus,.select-button:focus{border-color:#6fa895;box-shadow:0 0 0 4px rgba(111,168,149,.14);outline:0}.primary-button{min-height:46px;padding:0 20px;border:0;border-radius:14px;color:#fff;background:linear-gradient(135deg,#174d46,#0f3431);box-shadow:0 14px 26px rgba(18,62,57,.20);font-weight:760;letter-spacing:-.12px}.primary-button:hover{background:linear-gradient(135deg,#1d5c53,#123e39);box-shadow:0 18px 32px rgba(18,62,57,.25);transform:translateY(-1px)}.small-outline-button,.ghost-button,.text-button,.danger-button{border-radius:12px;font-weight:760}.small-outline-button{min-height:36px;padding:0 13px;border:1px solid rgba(35,65,59,.12);color:#2f6d5d;background:#fff;box-shadow:0 7px 14px rgba(31,70,63,.045)}.small-outline-button:hover{border-color:#b8d4c9;background:#f6fbf8}.ghost-button{min-height:38px;padding:0 12px;color:#346d61;background:#eef6f1}.danger-button{background:#fff8f7}.month-carousel-track{background:rgba(255,255,255,.78);box-shadow:var(--mc-shadow-soft)}.month-current{background:linear-gradient(135deg,#174d46,#0f3431)}.toast{border-radius:14px;box-shadow:var(--mc-shadow)}@media(max-width:980px){.sidebar{width:218px}.main-content{margin-left:218px}}@media(max-width:700px){.sidebar{display:none}.main-content{margin-left:0}.topbar{position:static}.page-topbar{grid-template-columns:1fr auto}}
.nav-item,.brand,.logout-button,.primary-button,.ghost-button,.text-button,.small-outline-button{text-decoration:none}.dashboard-priority-grid{align-items:stretch}.dashboard-metrics-row{margin-top:20px}.dashboard-priority-grid .panel{min-height:330px}.sidebar a{text-decoration:none}

/* Selects: um unico estilo para todo o app (antes so o modal era estilizado,
   e as demais telas caiam no visual nativo do navegador). */
select{appearance:none;-webkit-appearance:none;width:100%;min-height:46px;padding:0 40px 0 14px;border:1px solid rgba(35,65,59,.12);border-radius:14px;color:#183532;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2344635d' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9.5l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;background-size:15px 15px;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 7px 14px rgba(31,70,63,.045);font-size:13px;font-weight:720;cursor:pointer;transition:border-color .16s,box-shadow .16s}
select:hover{border-color:rgba(111,168,149,.38)}
select:focus{border-color:#6fa895;box-shadow:0 0 0 4px rgba(111,168,149,.14),inset 0 1px 0 rgba(255,255,255,.9);outline:0}
select:disabled{opacity:.65;background-color:#f4f7f4;cursor:not-allowed}
/* Variante compacta para filtros que vivem dentro de cabecalhos de painel. */
.select-button{width:auto;min-height:36px;padding:0 34px 0 12px;border-radius:12px;background-position:right 11px center;background-size:13px 13px;font-size:11px;font-weight:760}

/* Select customizado (select.js). O <select> nativo continua no DOM como
   fonte da verdade, mas fica invisivel: quem aparece e o botao + a lista. */
.ms-select{position:relative;display:block;width:100%}
.ms-select-compact{display:inline-block;width:auto;vertical-align:middle}
.ms-select-compact .ms-select-button{width:auto;min-width:0}
.ms-select>select{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;-webkit-appearance:none;appearance:none}
.ms-select-button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:46px;padding:0 14px;border:1px solid rgba(35,65,59,.12);border-radius:14px;color:#183532;background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 7px 14px rgba(31,70,63,.045);font-size:13px;font-weight:720;text-align:left;transition:border-color .16s,box-shadow .16s}
.ms-select-button:hover{border-color:rgba(111,168,149,.38)}
.ms-select-button:focus-visible{border-color:#6fa895;box-shadow:0 0 0 4px rgba(111,168,149,.14);outline:0}
.ms-select.is-open .ms-select-button{border-color:#6fa895;box-shadow:0 0 0 4px rgba(111,168,149,.14)}
.ms-select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ms-select-value.is-placeholder{color:#8ba39e;font-weight:640}
.ms-select-arrow{flex:0 0 auto;width:9px;height:9px;margin-right:2px;border-right:2px solid #44635d;border-bottom:2px solid #44635d;border-radius:1px;transform:translateY(-2px) rotate(45deg);transition:transform .18s}
.ms-select.is-open .ms-select-arrow{transform:translateY(1px) rotate(-135deg)}
.ms-select.is-disabled .ms-select-button{opacity:.62;background:#f4f7f4;cursor:not-allowed}
/* A lista vive no <body> para nao ser cortada por modais/paineis. */
.ms-select-list{position:fixed;z-index:60;overflow-y:auto;padding:6px;border:1px solid rgba(35,65,59,.10);border-radius:15px;background:#fff;box-shadow:0 20px 44px rgba(12,38,35,.18),0 2px 6px rgba(12,38,35,.06);animation:msSelectIn .13s ease-out}
@keyframes msSelectIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.ms-select-option{display:flex;align-items:center;gap:8px;min-height:38px;padding:8px 11px;border-radius:10px;color:#26433e;font-size:13px;font-weight:680;cursor:pointer}.ms-select-group{padding:10px 11px 5px;color:#7b908b;font-size:10px;font-weight:800;letter-spacing:.9px;text-transform:uppercase}.ms-select-group+.ms-select-option{margin-top:0}.ms-select-option+.ms-select-group{margin-top:6px;border-top:1px solid #eef2ee}
.ms-select-option>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ms-select-option.is-active{background:#eef6f1}
.ms-select-option.is-selected{color:#123e39;font-weight:820}
.ms-select-option.is-selected:after{content:"";flex:0 0 auto;width:6px;height:11px;margin-left:auto;border-right:2px solid #2f6d5d;border-bottom:2px solid #2f6d5d;transform:rotate(45deg) translateY(-1px)}
.ms-select-option.is-disabled{opacity:.5;cursor:not-allowed}
.ms-select-list::-webkit-scrollbar{width:6px}
.ms-select-list::-webkit-scrollbar-thumb{border-radius:99px;background:rgba(35,65,59,.18)}
/* Variante compacta, herdada do .select-button aplicado ao botao. */
.ms-select-button.select-button{min-height:36px;padding:0 12px;border-radius:12px;font-size:11px;font-weight:760}
.ms-select-button.select-button .ms-select-arrow{width:7px;height:7px}

/* Iconografia SVG (substituiu as letras-placeholder) */
svg{flex:0 0 auto}
.nav-item span svg,.logout-button span svg{width:15px;height:15px;stroke-width:1.9}
.nav-item span,.logout-button span{color:#c2d5cf}
.nav-item.active span svg{stroke-width:2.1}
.icon-button>svg{width:21px;height:21px}
.modal-close{display:grid;place-items:center}
.modal-close svg{width:17px;height:17px}
.hero-action span{display:grid;place-items:center;width:26px;height:26px;padding:5px;border-radius:9px;color:#123e39;background:var(--lime)}
.hero-action span svg{width:100%;height:100%;stroke-width:2.4}
.transaction-kind-button span svg{width:15px;height:15px;stroke-width:2.2}
.empty-icon svg{width:17px;height:17px}
.month-carousel .icon-button{font-size:24px}

/* Seletor de carteira funcional */
.wallet-switcher{position:relative}.wallet-button{cursor:pointer}.wallet-button[aria-expanded=true]{border-color:rgba(214,237,115,.4)}.wallet-menu{position:fixed;z-index:8;width:262px;padding:10px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:#0f322f;box-shadow:0 26px 52px rgba(6,20,19,.5)}.wallet-menu-list{display:grid;gap:4px;max-height:min(50vh,340px);overflow-y:auto}.wallet-menu-item{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:9px;width:100%;padding:9px 10px;border:1px solid transparent;border-radius:10px;color:#dbe7e2;text-align:left;background:transparent;font-size:12px}
.wallet-menu-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:9px;color:#cfe0da;background:rgba(255,255,255,.08)}
.wallet-menu-icon svg{width:15px;height:15px}
.wallet-menu-item.is-active .wallet-menu-icon{color:var(--pine);background:var(--lime)}
.wallet-menu-text{display:grid;gap:2px;min-width:0}
.wallet-initial svg{width:16px;height:16px}.wallet-menu-item:hover{background:rgba(255,255,255,.06)}.wallet-menu-item.is-active{border-color:rgba(214,237,115,.35);background:rgba(214,237,115,.1);color:#fff}.wallet-menu-item small{color:#93aca6;font-size:10px}.wallet-menu-all{margin-bottom:6px;padding-bottom:11px;border-bottom:1px solid rgba(255,255,255,.09);border-radius:10px 10px 0 0}.wallet-menu-empty{margin:4px 2px;color:#93aca6!important}.wallet-accept-form{display:grid;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.1)}.wallet-accept-form label{margin:0;color:#93aca6;font-size:10px;font-weight:700}.wallet-accept-form input{height:36px;padding:0 10px;border:1px solid rgba(255,255,255,.14);border-radius:9px;background:rgba(255,255,255,.05);color:#fff;font-size:12px}.wallet-accept-form input::placeholder{color:#7b948e}.wallet-accept-form .small-outline-button{border-color:rgba(255,255,255,.16);color:#e7f2ec;background:rgba(255,255,255,.05)}.wallet-accept-form .small-outline-button:hover{background:rgba(255,255,255,.1)}.wallet-accept-feedback{margin:8px 2px 0;color:#c8dcd4;font-size:11px;line-height:1.5}
