/* Glass interface: opaque fallbacks preserve contrast without backdrop-filter. */
:root{--ink:#163449;--green:#087f83;--green-dark:#0d4456;--muted:#536b7c;--gold:#64d9d5;--bg:#edf5f8;--line:#d3e3eb;--white:#fff}
body{background:radial-gradient(ellipse at 85% 0%,#98dfdf70,transparent 42%),radial-gradient(ellipse at 12% 58%,#bfcaf04a,transparent 50%),#edf5f8;background-attachment:fixed;color:var(--ink);font-size:15px}
body:before{content:'';position:fixed;width:300px;height:300px;right:-120px;top:24%;border-radius:50%;background:#88dedc30;filter:blur(35px);pointer-events:none;z-index:-1}
h1{font-weight:720;letter-spacing:-1.8px}h2{font-weight:680;letter-spacing:-.6px}.eyebrow{color:#426f7c;letter-spacing:1.9px}.muted,.footnote{color:var(--muted)}
.panel{background:#ffffffbf;border:1px solid #ffffff;border-radius:24px;box-shadow:0 12px 35px #244e6a08,inset 0 1px 0 #ffffff;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.sidebar{width:246px;background:#ffffff9e;border-right:1px solid #ffffff;padding:35px 22px;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);color:var(--ink)}
.brand{color:var(--ink);font-size:11px;gap:12px}.brand strong{font-size:13px}.seal,.seal.small{background:linear-gradient(135deg,#13c5c1,#087e88);color:white;border:1px solid #ffffffa6;box-shadow:0 7px 18px #168f8b28;font-family:system-ui;font-weight:700;border-radius:15px}.side-label{color:#58788a;letter-spacing:1.6px}.sidebar nav{gap:9px}.sidebar nav a{color:#4f697b;border:1px solid transparent;padding:13px 14px;border-radius:14px;font-weight:550}.sidebar nav a:hover{background:#ffffffd9;color:#086f76}.sidebar nav a[aria-current=page]{background:#e0f5f5;color:#08656b;border-color:#ffffff;box-shadow:0 4px 12px #2f77850b}.side-bottom{color:#58788a}
.workspace{margin-left:246px;padding:0 40px 20px;max-width:1760px}.topbar{border-bottom:1px solid #d3e4eb9e;height:85px}.user{gap:12px}.user>span{padding:7px 13px;background:#ffffff80;border-radius:30px}.logout{color:#3f6275;background:#ffffffad;border:1px solid #fff;border-radius:12px;margin-top:0;width:auto}.heading{padding:30px 0 25px}.heading h1{font-size:clamp(30px,3vw,42px);line-height:1.12}.heading .muted{margin-top:12px}.year-filter select,.year-filter input{background:#ffffffb5;border-color:#fff;border-radius:13px}.year-filter button{border-radius:13px}.sync-status{display:inline-block;background:#ffffff6e;border:1px solid #fff;padding:9px 14px;border-radius:12px;font-size:11px;margin-bottom:20px}
button,.button{background:#087f83;border-radius:13px;transition:background .15s,box-shadow .15s}button:hover,.button:hover{background:#05656b;box-shadow:0 5px 16px #087f8320}input,select,textarea{border-color:#c8dce4;border-radius:12px}input:focus,select:focus,button:focus,a:focus,summary:focus,textarea:focus{outline:3px solid #168eaa;outline-offset:3px}
.today-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:25px;padding:32px 36px;border-radius:28px;background:radial-gradient(ellipse at 25% 0%,#51d4ce80,transparent 65%),linear-gradient(120deg,#0b777e,#12667b);color:white;border:1px solid #ffffffb0;box-shadow:0 18px 40px #13868d25;position:relative;overflow:hidden}.today-hero:after{content:'';position:absolute;width:260px;height:260px;right:-110px;bottom:-170px;border:40px solid #ffffff0a;border-radius:50%;pointer-events:none}.hero-pill{display:inline-block;border:1px solid #ffffff45;border-radius:30px;background:#ffffff13;padding:5px 10px;font-size:9px;letter-spacing:1.5px;margin-bottom:22px}.today-hero .eyebrow{color:#c2f2ed;margin:0 0 8px}.today-hero h2{font-size:30px;margin-bottom:12px;letter-spacing:-1px}.hero-copy>p:not(.eyebrow){font-size:13px;color:#e0f5f5;line-height:1.8}.hero-link{display:inline-flex;align-items:center;gap:20px;color:#fff;font-size:12px;font-weight:650;padding:10px 0;min-height:44px}.hero-link span{font-size:22px}.hero-numbers{display:flex;flex-direction:column;justify-content:center;padding-left:25px;border-left:1px solid #ffffff29;min-width:0}.hero-numbers>p{color:#d7f4f2;font-size:12px;margin-bottom:6px}.hero-numbers>strong{font-size:clamp(30px,3.2vw,45px);letter-spacing:-1.6px;font-weight:680;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.hero-flows{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.hero-flows span{display:block;font-size:11px;color:#d5f4f1}.hero-flows b{display:block;font-size:17px;font-weight:600;margin-top:5px;white-space:nowrap}.hero-numbers>small{font-size:10px;color:#d3f0f1}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0 30px}.quick-actions>a{display:flex;align-items:center;gap:15px;background:#ffffffaf;padding:16px 20px;border:1px solid white;border-radius:19px;box-shadow:0 5px 18px #244e6a06;color:var(--ink)}.quick-actions>a>span{display:grid;place-items:center;width:43px;height:43px;background:#dff3f4;color:#087f83;border-radius:13px;font-size:23px}.quick-actions strong{font-size:13px;display:block}.quick-actions small{font-size:11px;color:var(--muted);display:block}.quick-actions b{margin-left:auto;font-size:20px;color:#087f83}.annual-label{margin:10px 0 18px}.annual-label .eyebrow{margin-bottom:4px}.annual-label h2{font-size:22px}
.kpis{gap:16px}.metric{position:relative;padding:25px;min-width:0}.metric p{font-size:12px;color:#506d7e}.metric strong{font-variant-numeric:tabular-nums;font-size:clamp(23px,2.2vw,32px);font-weight:680;letter-spacing:-1px}.metric span{font-size:11px}.metric.highlight{background:linear-gradient(130deg,#e4f6f7dd,#c9eaf0d9);border-color:#fff;color:#124758}.highlight p,.highlight span{color:#396b79}.metric .positive{color:#137676}.detail-grid{gap:20px}.badge{background:#ffffff94;color:#486b7a;border:1px solid #d6e7ed;border-radius:30px}.legend .in:before{background:#08999b}.legend .out:before{background:#62769d}.chart text{fill:#4c6b7d}.chart{padding-top:15px}.period{border-color:#dce8ed}.comparison strong{font-variant-numeric:tabular-nums}.notice{background:#f4f8edcf;border:1px solid #e2eacb;border-radius:19px}.notice p{color:#586f56}.notice strong{color:#38554a}.notice-dot{background:#658b5d}.group-row th{background:#e0f0f3;color:#285e70}.total-row td{background:#f0f7f9}.cash-row td{background:#176f7d}.roadmap{background:#e3f0f4a6}.tags span{background:#ffffffaa}.table-wrap{border-radius:10px;scrollbar-width:thin}td,th{border-color:#dbe7ed}th{color:#557282}td{font-variant-numeric:tabular-nums}.classification td.reason{color:var(--muted)}.classification{border-color:#d6e5ec}.auth-story{background:radial-gradient(ellipse at 10% 90%,#24aca8,transparent 75%),#0d465d}.auth-story h1{font-family:inherit;letter-spacing:-1.5px;font-weight:650}.auth-story .eyebrow{color:#d0eff0}.auth-story>p:not(.eyebrow){color:#d0e8ec}.auth-form{background:#ffffff66;backdrop-filter:blur(16px)}.auth-form h2{color:var(--ink)}.secret{background:#edf7f9}.users-workspace{margin-left:auto;margin-right:auto}.page-footer{color:#5e7c8e}.mobile-dock{display:none}.install-app{background:#fff;color:#08656b;border:1px solid #b8dbe1;border-radius:30px;box-shadow:0 5px 20px #274e6c14;bottom:18px}.install-app:hover{color:white}.empty-chart{background:#f3f9fb}
@media(min-width:1500px){.workspace{padding-left:50px;padding-right:50px}.panel{padding:30px}}
@media(max-width:1100px){.sidebar{width:210px;padding:28px 16px}.workspace{margin-left:210px;padding:0 25px 20px}.today-hero{padding:28px;gap:16px}.hero-numbers{padding-left:18px}.hero-flows{gap:10px}.hero-flows b{font-size:14px}.users-workspace{margin-left:auto;margin-right:auto}}
@media(max-width:760px){.sidebar{position:static;width:100%;background:transparent;border:0;padding:22px 20px 0;backdrop-filter:none}.sidebar .brand{font-size:10px}.sidebar .brand strong{font-size:12px}.sidebar .seal{width:42px;height:42px}.sidebar nav{flex-direction:row;overflow-x:auto;gap:5px;margin-top:18px;padding-bottom:4px}.sidebar nav a{white-space:nowrap;font-size:11px;padding:9px 12px;min-height:40px}.side-label,.side-bottom{display:none}.workspace{margin:0;padding:0 18px 110px}.topbar{height:59px}.topbar .eyebrow{font-size:8px}.user{font-size:11px;gap:8px}.user>span{padding:5px 9px}.logout{min-height:36px;padding:6px 10px}.heading{padding:24px 0 18px;display:block}.heading h1{font-size:34px;letter-spacing:-1.5px}.heading .muted{font-size:12px}.year-filter{margin-top:18px;max-width:none;grid-template-columns:1fr 90px}.sync-status{font-size:10px;line-height:1.6;display:block;padding:10px 12px}.today-hero{display:flex;flex-direction:column;padding:25px;border-radius:25px;gap:0}.hero-pill{margin-bottom:19px;font-size:8px}.today-hero h2{font-size:28px}.hero-copy>p:not(.eyebrow){display:none}.hero-link{font-size:11px;padding:0 0 18px}.hero-numbers{padding:20px 0 0;border-left:0;border-top:1px solid #ffffff30}.hero-numbers>strong{font-size:38px}.hero-flows{margin:17px 0;gap:15px}.hero-flows b{font-size:18px}.hero-numbers>small{font-size:10px}.quick-actions{gap:10px;margin:14px 0 26px}.quick-actions>a{padding:14px 12px;gap:9px;align-items:flex-start;flex-wrap:wrap;border-radius:18px}.quick-actions>a>span{width:34px;height:34px;font-size:21px}.quick-actions strong{font-size:12px}.quick-actions small{font-size:10px;line-height:1.5;margin-top:4px}.quick-actions b{display:none}.annual-label h2{font-size:21px}.annual-label .eyebrow{font-size:8px}.kpis{grid-template-columns:1fr 1fr;gap:11px}.metric{padding:18px 15px;border-radius:20px}.metric p{font-size:11px;margin-bottom:9px}.metric strong{font-size:clamp(18px,5vw,23px);letter-spacing:-.6px}.metric span{font-size:10px;line-height:1.5;margin-top:9px}.metric.highlight{grid-column:1/-1;padding:21px}.metric.highlight strong{font-size:31px}.panel{border-radius:22px;padding:21px}.metric{padding:18px 15px}.detail-grid{grid-template-columns:1fr;gap:16px;margin-top:20px}.panel h2{font-size:20px}.chart{margin-left:-8px;width:calc(100% + 16px)}.chart text{font-size:11px}.notice{padding:16px;gap:10px}.notice p{font-size:11px}.mobile-dock{display:flex;position:fixed;bottom:12px;left:14px;right:14px;padding:8px 6px max(8px,env(safe-area-inset-bottom));background:#f9fdfff0;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border:1px solid white;box-shadow:0 8px 32px #254e6c26;border-radius:23px;z-index:30;justify-content:space-around}.mobile-dock a{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;font-size:9px;line-height:1.3;color:#526f7e;min-height:49px;border-radius:15px;max-width:95px}.mobile-dock a span{font-size:23px;line-height:1.25;margin-bottom:3px}.mobile-dock a[aria-current=page]{background:#d9f1f2;color:#076f77;font-weight:700}.install-app{bottom:98px;right:16px;font-size:10px;min-height:38px;padding:8px 14px}.page-footer{padding-bottom:25px}.users-workspace .kpis{grid-template-columns:1fr}.users-workspace .metric.highlight{grid-column:auto}.auth-layout{grid-template-columns:1fr}.auth-story{padding:30px 26px}.auth-form{padding:32px 26px 50px}.day-filter{max-width:none}.day-navigation{gap:14px}.dre-section{margin-top:18px}.dre-section table{font-size:11px}.heading .eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@supports not (backdrop-filter:blur(1px)){.panel,.sidebar{background:#f7fcfd}.mobile-dock{background:#f8fcff}}
@media print{body{background:white}.sidebar,.topbar,.mobile-dock,.install-app,.quick-actions{display:none}.workspace{margin:0;padding:0}.panel,.today-hero{box-shadow:none;backdrop-filter:none;break-inside:avoid}.today-hero{background:#e5f3f5;color:#163449}.hero-numbers>p,.hero-numbers>small,.hero-flows span,.hero-link,.hero-copy>p:not(.eyebrow){color:#163449}}
.value-chart{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.value-chart-period{padding:18px;border:1px solid #d9e7ed;border-radius:18px;background:#ffffff80;min-width:0}.value-chart-period h3{font-size:15px;margin-bottom:12px}.value-bar{display:block;color:var(--ink);padding:10px 0;min-width:0;min-height:44px}.value-bar-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}.value-bar-heading>span{font-size:11px;line-height:1.5;min-width:0}.value-bar-heading strong{font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700}.value-bar svg{display:block;width:100%;height:12px}.value-bar small{display:block;color:var(--muted);font-size:11px;margin-top:7px}.value-bar:hover .value-bar-heading{color:#087f83}.expense-ranking{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}.expense-ranking>a{border-bottom:1px solid #dbe7ed;padding:16px 0}.expense-ranking .value-bar-heading{align-items:flex-start}.expense-ranking .value-bar-heading>span{font-size:12px}#lancamentos,#comparativo{scroll-margin-top:24px}@media(max-width:760px){.value-chart,.expense-ranking{grid-template-columns:1fr}.value-chart-period{padding:16px}.value-bar-heading strong{font-size:14px}.value-bar-heading>span{font-size:11px}.expense-ranking .value-bar-heading{flex-wrap:wrap;gap:5px}.expense-ranking .value-bar-heading strong{margin-left:auto}}
/* One shared navigation with stable functional groups on every authenticated page. */
.sidebar{overflow-y:auto}.sidebar .grouped-menu{display:flex;flex-direction:column;gap:24px;margin:34px 0 26px}.menu-group{display:flex;flex-direction:column;gap:4px}.menu-group h2{font-size:9px;text-transform:uppercase;letter-spacing:1.6px;color:#54758a;margin:0 12px 7px;font-weight:750}.sidebar .menu-group>a{font-size:12px;padding:10px 11px;display:flex;gap:9px;align-items:center;min-height:44px}.menu-group>a>span{font-size:17px;width:18px;text-align:center;flex-shrink:0}.sidebar~.users-workspace{margin-left:246px;margin-right:0;max-width:1700px}.sidebar~.centered{margin-left:246px}.mobile-menu{position:static;flex:1;max-width:95px}.mobile-menu>summary{list-style:none;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:9px;min-height:49px;padding:0;color:#526f7e;line-height:1.3;border-radius:15px}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu>summary>span{font-size:23px;line-height:1.25;margin-bottom:3px}.mobile-menu[open]>summary{background:#d9f1f2;color:#076f77;font-weight:700}.mobile-menu-sheet{position:absolute;bottom:calc(100% + 12px);left:0;right:0;background:#f7fcfff5;border:1px solid white;border-radius:23px;box-shadow:0 8px 35px #163b5a2b;padding:22px;max-height:calc(100dvh - 140px);overflow-y:auto;overscroll-behavior:contain;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.mobile-menu-title{border-bottom:1px solid #d4e4ed;padding-bottom:14px;margin-bottom:17px}.mobile-menu-title strong{font-size:15px;display:block}.mobile-menu-title small{display:block;font-size:10px;color:#536b7c;margin-top:4px}.mobile-menu-sheet .grouped-menu{display:grid;gap:18px}.mobile-menu-sheet .menu-group h2{margin-left:8px}.mobile-menu-sheet .menu-group>a{display:flex;align-items:center;gap:9px;font-size:12px;color:#294f64;border-radius:12px;padding:9px 10px;min-height:44px}.mobile-menu-sheet a[aria-current=page]{background:#dff2f4;color:#08656b;font-weight:650}.mobile-menu-sheet a:hover{background:#e8f4f8}.mobile-dock:has(.mobile-menu[open])~.install-app{visibility:hidden}@media(max-width:1100px){.sidebar~.users-workspace,.sidebar~.centered{margin-left:210px}}@media(max-width:760px){.sidebar .grouped-menu{display:none}.sidebar~.users-workspace,.sidebar~.centered{margin-left:0}.sidebar .brand{min-height:44px}.sidebar .side-bottom{display:none}.mobile-dock{gap:2px}.mobile-menu-sheet .menu-group h2{display:block}.sidebar{padding-bottom:0}}@media print{.mobile-menu-sheet{display:none}}
.budget-editor{max-width:470px;min-width:240px;text-align:left;white-space:normal}.budget-editor>button{justify-content:center}.budget-editor label{font-size:12px}.budget-editor input,.budget-editor textarea{font-size:16px}.budget-editor .footnote{font-size:10px}
