@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,d09GMgABAAAAAAaEABMAAAAADFgAAAYdAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbbhwoP0hWQVJpBmA/U1RBVIE4AFwvbBEICoJ8gkMLFAAwhCoBNgIkAyIEIAWGUAdiDAcbvgpRVHJOI/viwCYyfSFrJjFIG8raYpYj9+IeSF0s6zD+Lk/4OGrZHhHV+wvt2ffuWPwlA51lIICIosSVmyOKEs5Uzlx3NKeXIgn1ssCydUybDV0IHga+SszIyfrQe9bLTFNxjayzgs76hNsDoSYtRe32fiJ4gxBjrP8L+w//zzHjv7Yqyr9o2vOBDXhCo2jMtr4uwAK/gV1U0PxAq/EAD+yW9EoKOL1KLw8rHrFgCSgRTQRzBzpeXVhweEDlyfY8gIoOa2CQJzrTAHIIoitTMVV2dyFwpJ2iAEQTpSkhPitxD3YwuZHEagTcAhyKAcBmUyPdhTovJThOw6HYiaF2M/J7erdi2OUutor6ES6Ac88AvfZvKpb6fJoArohb524042j6Jij36NI7P8Pb7s721naN9gcTtcjXQP4l+8BKEzFVGMxxoHqlq8Ul4LGneFJBDFaOdKpLPcg8P14YSDwIcn75hdlyJLTBlZ4voL6tT46yC/njunXqpJ0/bSvmrH1o3kRlwZ+j0DBogkF3KbDRVBlbOc+fY5HVXwPoT9hfekPnyZMaEmenYLMSg5npqegFOsgXsBv1IoF9aIVfSCNHkk6+gIzILsiYuhWQCfUtZEpbkRntQxBZgw7MwFbMcRvwJrAnBlDqs7isLtL7pO84Xru1i7ah7tckH1Wreqq6K9u0amxU1bcff/s2Y1ni3rh2I8zHzqkm3PGvv3mzC6NDBz/UcOBIg+nm88rxN8MbdtypvHUL5o1c2zG0urYpRmW+VHZdiba6GXN/3v0B3i3nt4RBsbfAu8ftLqRcTIlZ4VYheFTAS5nXLS65VZrbuW3daF2Ze1ChyGXWZN6u9nUuH1LfyTERifZXEpIueMe28vF8FOoTnsONzw+1djo9P71lZGx1vM8mH/BhvSa2HDsRZ1+Ul+RmpnPOIaEuwWnZZdkgQWAAyCDDZ1wk+0sh7wseAAwA6UlHxbftCgYAAwKAgwIAEA7ACfHIRbV7J6dwF/ZzcRRmAjXUYKAGWAlDCCFmKnH+LJEQfHKEmVrfmKwSEab36AcubXQBoDYJV/aRV+funFD8wAXLSLYbwr9+DR+h/qZIKCfeqRG5ghHpdY0zcV2nuz5iJMhAFjaTDwOcoyKGG9JHrCfdp4cC+kCvUrxc7+bliIMiHj95sPIbUeWZEP/HLnN2tlr9EBeRiktHuWvErx98fRz1MuEvHO3FDRgtsSzL/P0hsDLK2n5/uHMOjvTst0HD6t+80ZN798j7j//kjqHxIOZDFPR/FxurFD6/HxGbB799RPHLx5F89MoBOub9jVuOWtmPH3o9H3r26DIuff+LqPLwff/xryDRmiAYmjxiK0GwS9XU+k8QpUrHsCTs4qH89Fv44ubWbQmOE51M7J8Pt8+h+NKt3zZpa2L9zZqcRlyEc4MaNGdfjQCxgIygn78ne4yAzcLWA3zAJ6RRGbijvHr1W+XN8ywrG0EoZSySb0/A9KsllI7Q/Pq8hLu76tfTy5cF4X8bQxTtYp2vr6/+1oI4AhgAlNYFryt62VaX9ktO6VsAeDLeWx6fff4vdV1ts7N6+gw9GCsQnqPB0QUttB9nEc7Aaf4XM0NQ90VJ+HV1rG04znGCmXcpPCA9+nxdMPgPlT7Dz83NMfZuMJaNeRqbc+tjd2QER/b0B44d7nv5Rif7VC8svYkx9SKWwb3YzN2M3cY8jSNLl+PYZqfjxNTxOLXVCmfmduDc0ty1kLbjeiGfIrDFJXWPTTMD5TKupR8cpZgJeXTofId8NoUj6E8XfAc2k4WPdbCberDYAp8Q7L5dUo8wE8cs9QINZYvwXKzvBS4v/n+fQZkGrrFysKEIuFBgjQpxiHH1XA+ZBI+C+oAoxhYKECc42rGOc8L4mYhsiThGfFjOcKmFubPpDgwnY1918Fwo8ouenDJxvGP96HFWJ28hiOy251oKjkcbGz2POMme8CTMThx6wqOPsFtPI6j6HhDyDTxFQYnL88FcXGAGHl3ZuueRbEuxbK6Hc84ZDvRrREtLzyjj8Xkd/uShR1b0sYd8Nh8/c8znxCnadxQcf2nFVWIyw1g+4StXav9j75s+CQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-vietnamese-wght-normal-CHiFlh_0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-ext-wght-normal-Dg-wlmqe.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/hanken-grotesk-latin-wght-normal-CaVRRdDk.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f4f3ef;--surface: #ffffff;--surface-2: #f4f3ef;--line: #e6e4de;--line-strong: #d3d0c8;--fg: #0e0f0c;--ink-2: #3a3d38;--muted: #5f625c;--ink-4: #8e918a;--primary: #1f7a4d;--primary-600: #17603c;--primary-700: #124c30;--primary-bg: #e7f1eb;--pos: #1a7f4b;--neg: #c2362f;--neg-bg: #fbedeb;--warn: #b8660b;--warn-bg: #fbf1df;--warn-deep: #7a4508;--neg-deep: #9e2a24;--neg-line: #f1c9c4;--br-bg: #e4f0f1;--cur-ars: #0e0f0c;--cur-brl: #24707a;--cur-usd: #34558b;--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--font: "Hanken Grotesk Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--shadow: 0 1px 2px rgba(14, 15, 12, .06);--shadow-pop: 0 12px 32px -8px rgba(14, 15, 12, .18), 0 2px 6px rgba(14, 15, 12, .06)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;width:100%}body{margin:0;overflow-x:hidden;background:var(--bg);color:var(--fg);font-family:var(--font);font-feature-settings:"tnum" 1,"cv11" 1;-webkit-font-smoothing:antialiased;color-scheme:light}button,input,select,textarea{font-family:inherit}::-moz-selection{background:#cfe5d8;color:var(--fg)}::selection{background:#cfe5d8;color:var(--fg)}input,textarea{caret-color:var(--primary)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}a{color:var(--primary-600);text-underline-offset:3px}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:10px;border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}.container{max-width:1200px;margin-inline:auto;padding:1rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:40px;padding:0 1rem;border-radius:var(--radius-sm);border:1px solid transparent;background:var(--primary);color:#fff;font-weight:600;cursor:pointer;transition:background-color .15s ease}.btn:hover{background:var(--primary-600)}.btn:active{background:var(--primary-700)}.btn:disabled{opacity:.55;cursor:not-allowed}.input{width:100%;min-height:40px;padding:.55rem .75rem;border:1px solid var(--line-strong);border-radius:var(--radius);outline:none;background:#fff;color:var(--fg);transition:box-shadow .15s ease,border-color .15s ease}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1f7a4d29}.row{display:flex;gap:1rem}.col{display:flex;flex-direction:column;gap:.5rem}.center-screen{min-height:100vh;display:grid;place-items:center;padding:1rem;background:var(--bg)}.text-muted{color:var(--muted)}.link{color:var(--primary-600);text-decoration:none}.link:hover{text-decoration:underline}.auth-grid{display:grid;gap:2rem;align-items:center}@media (min-width: 960px){.auth-grid{grid-template-columns:1.2fr 1fr}}.auth-hero{display:none}@media (min-width: 960px){.auth-hero{display:block}}.money{font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:-.005em}@keyframes row-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}.row-in{animation:row-in .16s cubic-bezier(.16,1,.3,1)}@media (prefers-reduced-motion: reduce){.row-in{animation:none}}.wordmark{display:inline-flex;align-items:center;gap:8px;font-weight:650;letter-spacing:-.02em;color:var(--fg)}.wordmark-mark{width:1.45em;height:1.45em;-o-object-fit:contain;object-fit:contain;display:block}.app-shell{display:flex;min-height:100vh;background:var(--bg)}.app-main{flex:1;min-width:0;height:100vh;display:flex;flex-direction:column}.app-scroll{flex:1;min-height:0;overflow-y:auto}.app-content{max-width:1240px;margin:0 auto;padding:28px 32px 48px}.sidebar{--topbar-h: 56px;z-index:40;width:232px;flex:0 0 232px;height:100vh;position:sticky;top:0;display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--line);padding:0 12px 16px}.sidebar-head{flex:none;display:flex;align-items:center;height:var(--topbar-h);margin:0 -12px 12px;padding:0 20px;border-bottom:1px solid var(--line)}.sidebar-nav{flex:1;min-height:0;overflow-y:auto;display:grid;align-content:start;gap:2px}.topbar{--topbar-h: 56px;position:relative;z-index:30;flex:none;display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--topbar-h);padding:0 16px 0 32px;background:var(--surface);border-bottom:1px solid var(--line)}.topbar-company{min-width:0;margin:0;font-size:20px;font-weight:650;letter-spacing:-.02em;line-height:1.2;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-tools{flex:none;display:flex;align-items:center;gap:4px}.topbar-rates{display:flex;align-items:center;margin:0 12px 0 0}.topbar-rate{display:flex;align-items:baseline;gap:6px;padding:0 12px;font-size:13px}.topbar-rate+.topbar-rate{border-left:1px solid var(--line)}.topbar-rate dt{color:var(--muted)}.topbar-rate dd{margin:0;color:var(--fg);font-weight:600}.topbar-switch{display:inline-flex;align-items:center;gap:6px;height:34px;margin-left:8px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-2);font:500 13px var(--font);cursor:pointer;transition:background-color .12s ease}.topbar-switch:hover{background:var(--surface-2)}.topbar-switch:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.sidebar-link{display:flex;align-items:center;gap:10px;width:100%;min-height:38px;padding:0 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-2);font:500 14px var(--font);text-decoration:none;cursor:pointer;transition:background-color .12s ease,color .12s ease}.sidebar-link:hover{background:var(--surface-2);color:var(--fg)}.sidebar-link.is-active{background:var(--primary-bg);color:var(--primary-700);font-weight:600}.sidebar-link svg{flex:none}.sidebar-foot{margin-top:auto;display:grid;gap:4px;padding-top:12px;border-top:1px solid var(--line)}.sidebar-user{display:flex;align-items:center;gap:8px;padding:8px 4px 0 10px}.sidebar-user-name{flex:1;min-width:0;display:grid;line-height:1.25}.sidebar-user-name strong{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-name span{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-btn{display:inline-grid;place-items:center;width:36px;height:36px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:background-color .12s ease,color .12s ease}.icon-btn:hover{background:var(--surface-2);color:var(--fg)}.m-shell{min-height:100vh;background:var(--bg)}.m-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;height:calc(52px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 12px 0 16px;background:#f4f3efeb;backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid transparent}.m-top h1{margin:0;font-size:17px;font-weight:650;letter-spacing:-.01em}.m-content{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.m-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;padding:6px max(6px,env(safe-area-inset-left)) calc(6px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-right));background:var(--surface);border-top:1px solid var(--line)}.m-tab{flex:1;display:grid;justify-items:center;gap:3px;min-height:52px;padding:7px 0 4px;border:0;background:transparent;color:var(--muted);font:500 11px var(--font);cursor:pointer;border-radius:10px}.m-tab.is-active{color:var(--fg);font-weight:650}.m-tab.is-active svg{color:var(--primary)}.m-sheet-item{display:flex;align-items:center;gap:14px;width:100%;min-height:52px;padding:0 20px;border:0;background:transparent;color:var(--fg);font:500 15px var(--font);text-align:left;cursor:pointer}.m-sheet-item:active{background:var(--surface-2)}.m-sheet-item svg{color:var(--muted)}.m-sheet-item.is-danger,.m-sheet-item.is-danger svg{color:var(--neg)}.money-sym{margin-right:.18em;font-weight:500;opacity:.72}.money-dec{font-size:.82em;opacity:.6;font-weight:500}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}.page-title{margin:0;font-size:26px;font-weight:650;letter-spacing:-.02em;line-height:1.15}.page-sub{margin:6px 0 0;font-size:14px;color:var(--muted)}.page-actions{display:flex;gap:8px;flex-wrap:wrap}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px}.panel+.panel{margin-top:16px}.panel-flush{padding:0;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-flush .panel-head{padding:16px 20px 0}.panel-title{margin:0;font-size:15px;font-weight:650;letter-spacing:-.005em}.panel-actions{display:flex;gap:8px;align-items:center}.summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:16px}.summary-item{display:grid;gap:4px;padding:16px 20px;border-left:1px solid var(--line);min-width:0}.summary-item:first-child{border-left:0}.summary-label{font-size:13px;color:var(--muted)}.summary-value{font-size:22px;font-weight:650;letter-spacing:-.015em;line-height:1.2}.summary-hint{font-size:12px;color:var(--muted)}.tag{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:6px;background:var(--surface-2);color:var(--ink-2);font-size:12px;font-weight:500;white-space:nowrap}.tag-dot{width:7px;height:7px;border-radius:2px;flex:none}.empty{display:grid;justify-items:center;gap:6px;padding:48px 20px;text-align:center}.empty-title{margin:0;font-size:15px;font-weight:600}.empty-hint{margin:0;font-size:14px;color:var(--muted);max-width:40ch}.chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:2px 0}.chips::-webkit-scrollbar{display:none}.chip{flex:none;height:34px;padding:0 14px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface);color:var(--ink-2);font:500 14px var(--font);cursor:pointer;display:inline-flex;align-items:center;gap:6px}.chip.is-on{background:var(--primary-bg);border-color:#9cc4ae;color:var(--primary-700);font-weight:600}.chip-add{border-style:dashed;color:var(--muted)}.new-cat{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%}.new-cat-name{flex:1 1 160px;min-width:0;height:44px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--fg);font:500 15px var(--font)}.new-cat .pl-select{flex:1 1 150px}.new-cat-error{width:100%}.chip-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--primary);color:#fff;font-size:11px;font-weight:650}.m-page{padding:4px 16px 96px}.m-summary{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 2px 14px}.m-summary-main{display:grid;gap:2px}.m-summary-label{font-size:13px;color:var(--muted)}.m-summary-value{font-size:30px;font-weight:650;letter-spacing:-.025em;line-height:1.1}.m-summary-side{display:grid;justify-items:end;gap:2px;font-size:14px}.day-group{margin-top:14px}.day-head{position:sticky;top:calc(52px + env(safe-area-inset-top));z-index:5;display:flex;justify-content:space-between;align-items:baseline;padding:8px 4px 6px;background:var(--bg);font-size:13px;font-weight:600;color:var(--ink-2)}.day-head .money{font-weight:600;color:var(--muted)}.list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.list-row{display:flex;align-items:center;gap:12px;width:100%;min-height:60px;padding:10px 14px;border:0;border-top:1px solid var(--line);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.list-row:first-child{border-top:0}.list-row:active{background:var(--surface-2)}@media (hover: hover){.list-row:hover{background:#faf9f6}}.list-main{flex:1;min-width:0;display:grid;gap:3px}.list-title{font-size:15px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-meta{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:6px}.list-amount{display:grid;justify-items:end;gap:2px;font-size:15px}.cat-dot{width:8px;height:8px;border-radius:2px;flex:none}.fab-new{position:fixed;right:16px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:25;display:inline-flex;align-items:center;gap:8px;height:52px;padding:0 20px 0 16px;border:0;border-radius:14px;background:var(--primary);color:#fff;font:650 15px var(--font);box-shadow:0 10px 24px -8px #124c3080;cursor:pointer}.fab-new:active{transform:scale(.98)}.sheet{padding:4px 20px calc(16px + env(safe-area-inset-bottom))}.sheet-grip{width:36px;height:4px;border-radius:4px;background:var(--line-strong);margin:10px auto 12px}.sheet-title{margin:0;font-size:18px;font-weight:650;letter-spacing:-.01em}.sheet-amounts{display:grid;gap:2px;margin:8px 0 16px;font-size:26px}.kv{display:grid;grid-template-columns:120px 1fr;gap:10px 12px;margin:0;padding:14px 0;border-top:1px solid var(--line);font-size:14px}.kv dt{color:var(--muted)}.kv dd{margin:0;overflow-wrap:anywhere}.sheet-actions{display:flex;gap:8px;padding-top:12px}.sheet-actions>*{flex:1}.toolbar{display:grid;gap:12px;margin-bottom:16px}.toolbar-fields{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:auto}.dtable{width:100%;border-collapse:collapse;font-size:14px}.dtable th{position:sticky;top:0;z-index:1;padding:10px 14px;background:#faf9f6;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:600;text-align:left;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.dtable td{padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:middle}.dtable tbody tr:last-child td{border-bottom:0}.dtable tr.is-clickable{cursor:pointer}.dtable tbody tr:hover td{background:#faf9f6}.dtable .num{text-align:right}.dtable .muted{color:var(--muted)}.dtable .strong{font-weight:550}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stack-end{display:grid;justify-items:end;gap:2px}.row-actions{white-space:nowrap;text-align:right}.row-actions .icon-btn{width:32px;height:32px;opacity:0}.dtable tr:hover .row-actions .icon-btn,.row-actions .icon-btn:focus-visible{opacity:1}@media (hover: none){.row-actions .icon-btn{opacity:1}}.icon-btn.is-danger:hover{background:var(--neg-bg);color:var(--neg)}.modal-overlay{position:fixed;inset:0;z-index:1300;display:flex;align-items:center;justify-content:center;padding:16px;background:#0e0f0c6b;animation:overlay-in .16s ease-out}.modal-content{width:100%;max-height:92vh;display:flex;flex-direction:column;background:var(--surface);border-radius:var(--radius-lg);box-shadow:0 24px 64px -12px #0e0f0c52;overflow:hidden;animation:modal-in .2s cubic-bezier(.16,1,.3,1)}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 16px 16px 24px;border-bottom:1px solid var(--line)}.modal-header h2{margin:0;display:flex;align-items:center;gap:8px;font-size:17px;font-weight:650;letter-spacing:-.01em;color:var(--fg)}.modal-icon{display:inline-flex;color:var(--muted)}.btn-close{display:inline-grid;place-items:center;width:36px;height:36px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.btn-close:hover{background:var(--surface-2);color:var(--fg)}.modal-body{padding:20px 24px;overflow-y:auto;flex:1}.modal-actions{display:flex;gap:8px;justify-content:flex-end;padding:14px 24px;border-top:1px solid var(--line);background:#faf9f6}.confirm .modal-actions{background:transparent;border-top:0;padding-top:0}.confirm-title{margin:0 0 8px;font-size:17px;font-weight:650}.confirm-text{margin:0;color:var(--muted);font-size:14px;line-height:1.5}@keyframes overlay-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.99)}}@media (prefers-reduced-motion: reduce){.modal-overlay,.modal-content{animation:none}}.btn-primary,.btn-secondary,.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 16px;border:1px solid transparent;border-radius:var(--radius-sm);font:600 14px var(--font);cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-600)}.btn-secondary{background:var(--surface);color:var(--fg);border-color:var(--line-strong)}.btn-secondary:hover:not(:disabled){border-color:var(--fg)}.btn-danger{background:var(--neg);color:#fff}.btn-danger:hover:not(:disabled){background:#9e2a24}.btn-secondary:disabled,.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-primary:disabled{background:var(--surface-2);border-color:var(--line);color:var(--ink-4);cursor:not-allowed}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-weight:550;color:var(--ink-2);font-size:13px}.form-group input,.form-group select,.form-group textarea{min-height:40px;padding:8px 12px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;color:var(--fg);font:400 15px var(--font);transition:border-color .15s ease,box-shadow .15s ease}.form-group textarea{min-height:80px;resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1f7a4d29}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:var(--surface-2);cursor:not-allowed}.error-message{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 12px;border:1px solid #f1c9c4;border-radius:var(--radius);background:var(--neg-bg);color:#9e2a24;font-size:14px}@media (max-width: 600px){.modal-overlay{align-items:flex-end;padding:0}.modal-content{max-width:none!important;max-height:94vh;border-radius:16px 16px 0 0;animation-name:sheet-in}.modal-header{padding:12px 12px 12px 20px}.modal-body{padding:16px 20px}.modal-actions{padding:12px 20px calc(12px + env(safe-area-inset-bottom))}.modal-actions>*{flex:1}.modal-actions{flex-wrap:wrap}.modal-actions>.modal-reason{flex:1 1 100%;margin:0;text-align:center}.confirm.modal-content{margin:0}}@keyframes sheet-in{0%{transform:translateY(24px);opacity:0}}.form-sheet{min-height:100%;display:flex;flex-direction:column}.form-sheet-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 10px 0;background:var(--bg)}.form-sheet-head h2{margin:0;font-size:17px;font-weight:650}@media (min-width: 900px){.form-sheet.is-dialog{background:var(--surface)}.form-sheet.is-dialog .form-sheet-head{flex-direction:row-reverse;justify-content:space-between;padding-left:24px;background:var(--surface);border-bottom:1px solid var(--line)}.form-sheet.is-dialog .form-sheet-head>span{display:none}.form-sheet.is-dialog .form-sheet-head h2{text-align:left}.form-sheet.is-dialog .form-sheet-foot{background:#faf9f6}.form-sheet.is-dialog .form-sheet-actions{justify-content:flex-end}.form-sheet.is-dialog .form-sheet-actions>*{flex:none;min-width:140px}}.form-sheet-body{flex:1;display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:20px;padding:4px 16px 24px}.form-sheet-foot{position:sticky;bottom:0;z-index:3;padding:10px 16px calc(12px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--line)}.form-sheet-actions{display:flex;gap:8px}.form-sheet-actions>*{flex:1}.form-missing{margin:0 0 8px;font-size:13px;color:var(--muted)}.amount-field{display:grid;justify-items:center;gap:10px;padding:18px 12px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.seg{display:inline-flex;padding:3px;background:var(--surface-2);border-radius:10px}.seg-btn{min-width:76px;height:32px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--muted);font:550 14px var(--font);cursor:pointer}.seg-btn.is-on{background:var(--surface);color:var(--fg);box-shadow:0 1px 2px #0e0f0c14,0 0 0 1px var(--line)}.amount-input{display:flex;align-items:baseline;justify-content:center;gap:6px;width:100%;cursor:text}.amount-sym{font-size:26px;font-weight:500;color:var(--muted)}.amount-input input{width:100%;max-width:280px;border:0;outline:0;background:transparent;color:var(--fg);font:650 44px var(--font);letter-spacing:-.03em;text-align:left;font-variant-numeric:tabular-nums;caret-color:var(--primary)}.amount-input input::-moz-placeholder{color:var(--line-strong)}.amount-input input::placeholder{color:var(--line-strong)}.field-error{margin:0;font-size:13px;color:var(--neg)}.pick{margin:0;padding:0;border:0;min-width:0}.pick legend{padding:0;margin-bottom:8px;font-size:13px;font-weight:600;color:var(--ink-2)}.pick-chips{display:flex;flex-wrap:wrap;gap:8px}.chip-tall{height:auto;min-height:44px;padding:6px 14px;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;border-radius:12px}.chip-tall small{font-size:12px;opacity:.75}.chip.is-on .cat-dot{outline:1.5px solid #fff}.chip-date{min-width:150px;color:var(--ink-2);font-variant-numeric:tabular-nums}.link-btn{justify-self:start;padding:6px 0;border:0;background:none;color:var(--primary-600);font:550 14px var(--font);cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.pl-hint{margin-top:8px}.pl-split{display:inline-flex;align-items:center;gap:6px;margin-top:4px;min-height:44px}.pick .pl-legend{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:4px}.pl-legend .link-btn{font-size:13px}.pay-lines{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.pl-row{padding:10px 8px 10px 10px;border-bottom:1px solid var(--line);animation:row-in .16s cubic-bezier(.16,1,.3,1)}.pl-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) 36px;gap:8px;align-items:center}.pl-select{position:relative;display:block;min-width:0}.pl-select select{width:100%;height:44px;padding:0 30px 0 12px;-moz-appearance:none;appearance:none;-webkit-appearance:none;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--fg);font:550 15px var(--font);text-overflow:ellipsis;cursor:pointer}.pl-select svg{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.pl-amount{display:flex;align-items:center;gap:6px;height:44px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);cursor:text;min-width:0}.pl-amount:focus-within,.pl-select select:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-bg);outline:0}.pl-amount.is-error{border-color:var(--neg)}.pl-amount input{flex:1;min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--fg);font:650 18px var(--font);letter-spacing:-.01em;font-variant-numeric:tabular-nums;text-align:right}.pl-amount input::-moz-placeholder{color:var(--line-strong)}.pl-amount input::placeholder{color:var(--line-strong)}.pl-sym{font:600 14px var(--font);color:var(--cur-ars)}.pl-sym[data-cur=BRL]{color:var(--cur-brl)}.pl-sym[data-cur=USD]{color:var(--cur-usd)}.pl-cur{height:28px;padding:0 4px;border:0;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink-2);font:600 13px var(--font);cursor:pointer}.pl-remove:disabled{opacity:.3;cursor:default;background:transparent}.pl-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;margin-top:6px;padding-left:2px;font-size:12.5px;color:var(--muted)}.pl-fx{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px;font-variant-numeric:tabular-nums}.pl-rate{width:68px;height:26px;padding:0 6px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg);font:550 13px var(--font);font-variant-numeric:tabular-nums}.pl-rate:focus-visible{border-color:var(--primary);outline:0;box-shadow:0 0 0 3px var(--primary-bg)}.pl-rate::-moz-placeholder{color:var(--ink-2)}.pl-rate::placeholder{color:var(--ink-2)}.pl-add{display:flex;align-items:center;gap:8px;width:100%;height:48px;padding:0 14px;border:0;border-radius:0 0 var(--radius-lg) var(--radius-lg);background:transparent;color:var(--primary-600);font:550 14px var(--font);cursor:pointer}.pl-add:hover{background:var(--surface-2)}.pl-add:disabled{color:var(--ink-4);background:transparent;cursor:default}.pl-foot{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;min-height:48px;margin-top:10px;padding:8px 12px;border-radius:var(--radius);background:var(--surface-2);color:var(--ink-2);font-size:14px}.pl-total{margin-right:auto}.pl-dot{color:var(--ink-4)}.pl-state{display:inline-flex;align-items:center;gap:4px;font-weight:600}.pl-foot.is-ok{background:var(--primary-bg)}.pl-foot.is-ok .pl-state{color:var(--primary-700)}.pl-foot.is-short{background:var(--warn-bg)}.pl-foot.is-short .pl-state{color:var(--warn-deep)}.pl-foot.is-over{background:var(--neg-bg)}.pl-foot.is-over .pl-state{color:var(--neg)}.btn-mini{height:32px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg);font:600 13px var(--font);cursor:pointer}.btn-mini:hover{border-color:var(--ink-4)}.amount-total{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 12px}.pl-amount[data-cur=BRL] input{color:var(--cur-brl)}.pl-amount[data-cur=USD] input{color:var(--cur-usd)}.pay-period-fields{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:8px}.pay-year{height:44px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--fg);font:550 15px var(--font);font-variant-numeric:tabular-nums}.pay-year:focus-visible{border-color:var(--primary);outline:0;box-shadow:0 0 0 3px var(--primary-bg)}.pl-select select:disabled,.pay-year:disabled{color:var(--ink-4);background:var(--surface-2)}@media (max-width: 600px){.pl-remove{width:44px;height:44px;margin-right:-8px}.pl-select select{padding-right:26px}.pl-rate{height:44px;width:92px;font-size:15px}.pl-cur{align-self:stretch;height:auto;min-height:42px;margin-left:-8px;padding:0 6px}.btn-mini{min-height:44px;padding:0 16px}}.breakdown{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px}.breakdown .muted{color:var(--muted)}.breakdown.is-stacked{display:grid;gap:2px}.amount-row{display:flex;align-items:center;gap:12px;min-height:56px;padding:8px 14px;border-top:1px solid var(--line);cursor:text}.amount-row:first-child{border-top:0}.amount-row-name{flex:1;min-width:0;display:grid;font-size:15px;font-weight:550}.amount-row-name small{font-size:12px;font-weight:500;color:var(--muted)}.amount-row-input{display:flex;align-items:baseline;gap:4px;width:46%;max-width:200px;padding:6px 10px;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff}.amount-row-input:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #1f7a4d29}.amount-row-input span{color:var(--muted);font-size:14px}.amount-row-input input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--fg);font:600 18px var(--font);text-align:right;font-variant-numeric:tabular-nums}.amount-row-input input[aria-invalid=true]{color:var(--neg)}.form-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:14px;color:var(--muted)}.form-total-values{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end;font-size:20px;color:var(--fg)}.home-date{margin:4px 2px 12px;font-size:22px;font-weight:650;letter-spacing:-.02em}.home-today{display:grid;grid-template-columns:1fr 1fr;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.home-cell{display:grid;align-content:start;gap:2px;padding:14px 16px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.home-cell+.home-cell{border-left:1px solid var(--line)}.home-cell-label{font-size:13px;color:var(--muted)}.home-cell-hint{margin-top:4px;font-size:12px;color:var(--muted)}.home-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.home-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface);color:var(--fg);font:600 15px var(--font);cursor:pointer}.home-action.is-primary{background:var(--primary);border-color:var(--primary);color:#fff}.home-section{margin-top:24px}.home-h{margin:0 2px 8px;font-size:13px;font-weight:600;color:var(--ink-2)}.list-row.is-static{cursor:default}.list-row.is-static:active,.list-row.is-static:hover{background:transparent}.row-chevron{color:var(--ink-4);flex:none}.home .m-page{padding-bottom:32px}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 600px){.form-grid-2{grid-template-columns:1fr}}.form-hint{margin:0;font-size:13px;color:var(--muted);line-height:1.45}.form-group input[aria-invalid=true]{border-color:var(--neg)}.sched-wrap{overflow-x:auto;margin-top:6px}.sched{border-collapse:separate;border-spacing:4px}.sched th{font-size:12px;font-weight:600;color:var(--muted);text-align:center;padding:0 2px}.sched th[scope=row]{text-align:left;padding-right:6px;color:var(--ink-2)}.sched-cell{width:48px;height:40px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:var(--fg);font:600 15px var(--font);text-align:center;font-variant-numeric:tabular-nums}.sched-cell::-moz-placeholder{color:var(--ink-4);font-weight:400}.sched-cell::placeholder{color:var(--ink-4);font-weight:400}.sched-cell.is-on{background:var(--primary-bg);border-color:#b7d3c3;color:var(--primary-700)}.sched-cell:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1f7a4d29}.week-bar{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;margin-bottom:12px;padding:8px 12px 8px 8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.week-nav{display:flex;align-items:center;gap:4px}.week-label{min-width:130px;text-align:center;font-size:16px;font-weight:650;letter-spacing:-.01em}.week-stats{display:flex;gap:18px;flex-wrap:wrap;font-size:14px;color:var(--muted)}.week-stats strong,.week-stats .money{color:var(--fg)}.week-draft{margin:0 0 12px;padding:8px 12px;border-radius:var(--radius);background:var(--warn-bg);color:#7a4508;font-size:13px}.pw-fieldset{border:0;padding:0;margin:0;min-width:0}.hours-input{width:64px;height:34px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:var(--fg);font:500 14px var(--font);text-align:center;font-variant-numeric:tabular-nums}.hours-input:disabled{background:var(--surface-2);border-color:var(--line);color:var(--ink-4)}.hours-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1f7a4d29}.hours-input::-webkit-inner-spin-button,.hours-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.hours-input{-moz-appearance:textfield}.pw-check{width:18px;height:18px;accent-color:var(--primary)}.pw-breakdown{font-size:12px;color:var(--muted)}.pw-table tr.is-paid td{background:#fbfcfb}.pw-table tr.is-paid .strong{color:var(--muted)}.pay-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:96px;height:36px;padding:0 14px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg);font:600 14px var(--font);cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.pay-btn:hover:not(:disabled){background:var(--fg);border-color:var(--fg);color:#fff}.pay-btn.is-paid{background:var(--primary-bg);border-color:#c5ddcf;color:var(--primary-700)}.pay-btn.is-paid:hover:not(:disabled){background:#dcebe2}.pay-btn:disabled{opacity:.55;cursor:not-allowed}.pw-cards{display:grid;gap:10px}.pw-card{display:grid;gap:10px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.pw-card.is-paid{background:#fbfcfb}.pw-card-head{display:flex;align-items:flex-start;gap:12px}.pw-normal{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink-2)}.pw-paid-with{font-size:12.5px;color:var(--muted)}.pay-sheet{display:grid;gap:20px}.pay-sheet-total{display:grid;justify-items:start;gap:2px}.pay-period{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.pay-period .MuiTextField-root{width:140px}.fe-paid-with{color:var(--muted)}.link-btn.is-danger{color:var(--neg)}.modal-reason{margin:0 auto 0 0;align-self:center}.pw-normal input{width:20px;height:20px;accent-color:var(--primary)}.pw-hours{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pw-hours label{display:grid;gap:4px;font-size:12px;color:var(--muted)}.pw-hours .hours-input{width:100%;height:42px;font-size:16px}.pw-card .pay-btn{width:100%;height:44px}.pw-card-actions{display:flex;align-items:center;gap:8px}.pw-card-actions .pay-btn{flex:1}.pw-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px}.adv-summary{display:grid;gap:6px;margin:0}.adv-summary>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.adv-summary dt{font-size:14px;color:var(--muted)}.adv-summary dd{margin:0}.adv-summary .is-total{padding-top:8px;border-top:1px solid var(--line)}.adv-summary .is-total dt{color:var(--fg);font-weight:600}.adv-excess{margin:0;padding:8px 12px;border-radius:var(--radius);background:var(--warn-bg);color:#7a4508;font-size:13.5px}.adv-list{display:grid;margin:0;padding:0;list-style:none;border:1px solid var(--line);border-radius:var(--radius)}.adv-item{display:flex;align-items:center;gap:10px;padding:10px 12px}.adv-item+.adv-item{border-top:1px solid var(--line)}.hist-week+.hist-week{border-top:1px solid var(--line)}.hist-week>.list-row{border-top:0}.hist-detail{padding:4px 14px 12px 44px;background:#faf9f6;border-top:1px solid var(--line)}.hist-emp{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.hist-week-actions{display:flex;justify-content:flex-end;padding-top:8px}.text-btn{flex:none;padding:6px 8px;border:0;border-radius:6px;background:transparent;color:var(--primary-600);font:600 13px var(--font);cursor:pointer}.text-btn:hover{background:var(--primary-bg)}@media (max-width: 600px){.hist-detail{padding-left:14px}}.fe-summary{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 2px 12px;font-size:14px;color:var(--muted)}.fe-summary strong{color:var(--fg)}.fe-summary .is-neg,.fe-summary .is-neg strong{color:var(--neg)}.fe-month{color:var(--fg);font-weight:650;text-transform:capitalize}.fe-dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--line-strong)}.fe-dot.is-paid{background:var(--pos)}.fe-dot.is-overdue{background:var(--neg)}.fe-dot.is-soon{background:var(--warn)}.fe-status.is-overdue{color:var(--neg)}.fe-status.is-soon{color:var(--warn)}.fe-status.is-paid{color:var(--pos)}.fe-row.is-paid .list-title{color:var(--ink-2);font-weight:500}.fe-paid{display:flex;align-items:center;gap:2px}.fe-paid .money{margin-right:8px}.fe-hist-total{display:inline-flex;align-items:baseline;gap:12px;margin-left:auto;font-size:14px;color:var(--muted)}.fe-month-total{display:inline-flex;gap:10px}.fe-day{display:grid;justify-items:center;width:40px;flex:none;line-height:1.05;color:var(--muted)}.fe-day span{font-size:10px;text-transform:uppercase;letter-spacing:.06em}.fe-day strong{font-size:18px;color:var(--fg);font-weight:650}@media (max-width: 600px){.fe-hist-total{margin-left:0}}.form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px;padding-top:16px;border-top:1px solid var(--line)}@media (max-width: 600px){.form-actions>*{flex:1}}.tabs-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px;border-bottom:1px solid var(--line)}.tabs-row .MuiTabs-root{border-bottom:0}.dtable tr.row-detail td{background:#faf9f6;padding:4px 20px 12px}.dtable tr.row-detail:hover td{background:#faf9f6}.row-detail .kv{max-width:520px;border-top:0}.settings-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}.settings-nav{position:sticky;top:16px;display:grid;gap:2px}.settings-panel{min-height:320px}.settings-panel .cat-section .list{margin:0 -20px -20px;border:0;border-top:1px solid var(--line);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;align-items:start}.back-link{display:inline-flex;align-items:center;gap:6px;margin:0 0 10px}.panel-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0;border:0;background:none;color:var(--fg);cursor:pointer;text-align:left}.settings-panel .MuiTableContainer-root{box-shadow:none;border:1px solid var(--line);border-radius:var(--radius)}.settings-panel .MuiTableCell-root:last-child{white-space:nowrap}.settings-panel .MuiTableCell-body{padding-top:10px;padding-bottom:10px}.MuiChip-filled.MuiChip-colorSuccess,.MuiChip-filled.MuiChip-colorPrimary{background:var(--primary-bg);color:var(--primary-700)}.MuiChip-filled.MuiChip-colorError{background:var(--neg-bg);color:#9e2a24}.MuiChip-filled.MuiChip-colorWarning{background:var(--warn-bg);color:#7a4508}.MuiChip-filled.MuiChip-colorInfo,.MuiChip-filled.MuiChip-colorSecondary{background:#e9eef5;color:var(--cur-usd)}.MuiChip-filled.MuiChip-colorDefault{background:var(--surface-2);color:var(--ink-2)}.MuiChip-outlined{border-color:var(--line-strong)}.dash-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:24px;align-items:start}.dash-grid .home-section:first-child{margin-top:0}.dash-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 10px}.dash-month{display:grid;grid-template-columns:repeat(3,1fr);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.dash-month>div{display:grid;align-content:start;gap:4px;padding:16px 18px}.dash-month>div+div{border-left:1px solid var(--line)}.month-pace{margin-top:16px}.month-pace-chart{height:220px}.dash-analysis>*+*{margin-top:16px}@media (max-width: 1100px){.dash-grid{grid-template-columns:1fr}}.stat-card{background:var(--surface);padding:14px 18px;border:1px solid var(--line);border-radius:var(--radius-lg);text-align:left;min-width:140px;box-shadow:none}.stat-number{display:block;font-size:22px;font-weight:650;letter-spacing:-.015em;color:var(--fg);font-variant-numeric:tabular-nums}.stat-label{display:block;margin-top:2px;font-size:13px;color:var(--muted)}.dashboard-page .card{box-shadow:none}.login{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:var(--bg)}.login-card{width:min(100%,400px);padding:32px 28px;background:var(--surface);border:1px solid var(--line);border-radius:18px}.login-logo{display:block;width:240px;max-width:100%;height:auto;margin:0 auto 4px}.login-title{margin:28px 0 4px;font-size:24px;font-weight:650;letter-spacing:-.02em}.login-sub{margin:0 0 24px;color:var(--muted);font-size:14px}.login-form{display:grid;gap:16px}.login-section{display:grid;gap:8px;justify-items:start;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.login-section-title{margin:0;font-size:15px;font-weight:600}.login .notice{margin:-8px 0 20px}.login-pass{position:relative;display:flex}.login-pass input{flex:1;padding-right:44px}.login-pass .icon-btn{position:absolute;right:2px;top:2px}.login-submit{width:100%;min-height:46px;font-size:15px}.login-help{margin:20px 0 0;font-size:13px;color:var(--muted);text-align:center}.login-card{position:relative}.login-busy{position:absolute;inset:0;z-index:2;display:grid;place-content:center;justify-items:center;gap:14px;border-radius:inherit;background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:var(--ink-2);font-size:15px;font-weight:550;animation:overlay-in .16s ease-out}.login-busy .spinner{width:34px;height:34px;border-width:3px;border-color:color-mix(in srgb,var(--primary) 20%,transparent);border-top-color:var(--primary)}@media (prefers-reduced-motion: reduce){.login-busy{animation:none}.login-busy .spinner{animation-duration:1.6s}}.global-busy{position:fixed;inset:0;z-index:1400;display:grid;place-items:center;padding:16px;background:color-mix(in srgb,var(--surface) 55%,transparent);-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);cursor:progress;animation:overlay-in .18s ease-out}.global-busy-card{display:grid;justify-items:center;gap:12px;min-width:148px;padding:20px 26px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-pop);color:var(--ink-2);font-size:15px;font-weight:550}.page-loading{display:grid;place-items:center;min-height:40vh}.page-loading .spinner{width:28px;height:28px;border-width:3px;border-color:color-mix(in srgb,var(--primary) 20%,transparent);border-top-color:var(--primary)}.global-busy .spinner{width:34px;height:34px;border-width:3px;border-color:color-mix(in srgb,var(--primary) 20%,transparent);border-top-color:var(--primary)}@media (prefers-reduced-motion: reduce){.global-busy{animation:none}.global-busy .spinner{animation-duration:1.6s}}.field-error{font-size:13px;color:var(--neg)}.toasts{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:9999;display:grid;gap:8px;width:min(420px,calc(100vw - 24px));pointer-events:none}.toast{display:flex;align-items:flex-start;gap:10px;padding:12px 10px 12px 14px;border-radius:12px;background:#1b1c19;color:#f4f3ef;box-shadow:var(--shadow-pop);pointer-events:auto;animation:toast-in .22s cubic-bezier(.16,1,.3,1)}.toast-body{flex:1;min-width:0;display:grid;gap:2px;font-size:14px;line-height:1.4}.toast-body strong{font-weight:600}.toast-body span{color:#c9cbc4}.toast-close{flex:none;display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:#a7a9a2;cursor:pointer}.toast-close:hover{background:#ffffff14;color:#fff}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}}@media (max-width: 899px){.toasts{top:auto;bottom:calc(84px + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion: reduce){.toast{animation:none}}.money-pending{display:inline-block;min-width:2ch;color:var(--ink-4);font-weight:500;animation:pending 1.2s ease-in-out infinite}@keyframes pending{50%{opacity:.35}}@media (prefers-reduced-motion: reduce){.money-pending{animation:none}}.money-dec.is-zero{display:none}.list-amount .money-dec.is-zero,.dtable .num .money-dec.is-zero,.stack-end .money-dec.is-zero{display:inline;visibility:hidden}.list-meta.is-text{display:block}.row-icon{flex:none;color:var(--muted)}.cx-amount{display:flex;align-items:center;gap:8px;height:56px;padding:0 14px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);cursor:text}.cx-amount:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-bg)}.cx-amount-label{font-size:13px;font-weight:600;color:var(--ink-2);min-width:40px}.cx-amount input{flex:1;min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--fg);font:650 24px var(--font);letter-spacing:-.02em;font-variant-numeric:tabular-nums;text-align:right}.cx-amount input:disabled{color:var(--ink-2)}.cx-amount[data-cur=BRL] input{color:var(--cur-brl)}.cx-amount[data-cur=USD] input{color:var(--cur-usd)}.cx-amount .amount-sym[data-cur=BRL],.cx-rate .amount-sym[data-cur=BRL]{color:var(--cur-brl)}.cx-amount .amount-sym[data-cur=USD],.cx-rate .amount-sym[data-cur=USD]{color:var(--cur-usd)}.cx-arrow{display:grid;place-items:center;height:20px;margin:-8px 0;color:var(--muted)}.cx-rate{display:flex;align-items:center;gap:8px;padding:0 2px;font-size:14px;color:var(--ink-2)}.cx-rate input{width:120px;height:44px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--fg);font:600 16px var(--font);font-variant-numeric:tabular-nums}.cx-rate input:focus-visible{border-color:var(--primary);outline:0;box-shadow:0 0 0 3px var(--primary-bg)}.cx-route{display:inline-flex;flex-wrap:wrap;align-items:center;gap:2px 6px}.list-title.cx-route{white-space:normal}.cx-amounts{flex:none}.cx-route svg{color:var(--muted);flex:none}.cx-amounts{display:grid;justify-items:end;gap:2px}.home-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.home-section-head .link-btn{font-size:14px}.cal-page{max-width:880px}.cal-note{margin:10px 2px 0}.cal-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:12px 2px 4px;font-size:13px;color:var(--muted)}.cal-legend span{display:inline-flex;align-items:center;gap:6px}.cal-swatch{display:inline-block;width:14px;height:14px;border-radius:4px;border:1px solid var(--line-strong);background:var(--surface)}.cal-swatch.is-ar{background:var(--surface-2);border-color:var(--fg)}.cal-swatch.is-br{background:var(--br-bg);border-color:var(--cur-brl)}.cal-swatch.is-bill{box-shadow:inset 0 -3px 0 var(--warn)}.cal-swatch.is-pay{box-shadow:inset 0 0 0 2px var(--line-strong);border-style:dashed}.cal-month{margin-top:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.cal-month-title{margin:0;padding:14px 16px;border-bottom:1px solid var(--line);font-size:16px;font-weight:650;text-transform:capitalize}.cal-body{display:grid;grid-template-columns:280px minmax(0,1fr)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;align-content:start;padding:14px 16px;border-right:1px solid var(--line)}.cal-wd{font-size:11px;font-weight:600;color:var(--muted);text-align:center;padding-bottom:2px}.cal-day{position:relative;display:grid;place-items:center;height:32px;border:1px solid transparent;border-radius:8px;font-size:13px;font-variant-numeric:tabular-nums;color:var(--ink-2)}.cal-day.is-past{color:var(--ink-4)}.cal-day.is-pay{border-color:var(--line-strong);border-style:dashed}.cal-day.is-ar{background:var(--surface-2);border:1px solid var(--fg);color:var(--fg);font-weight:650}.cal-day.is-br{background:var(--br-bg);border:1px solid var(--cur-brl);color:var(--cur-brl);font-weight:650}.cal-day.is-ar.is-br{background:linear-gradient(135deg,var(--surface-2) 50%,var(--br-bg) 50%);border-color:var(--fg);color:var(--fg)}.cal-day.has-bill:after{content:"";position:absolute;left:25%;right:25%;bottom:3px;height:2px;border-radius:2px;background:var(--warn)}.cal-day.is-today{outline:2px solid var(--fg);outline-offset:-1px}.cal-events{margin:0;padding:0;list-style:none}.cal-event{display:flex;gap:14px;padding:12px 16px;border-bottom:1px solid var(--line)}.cal-event:last-child{border-bottom:0}.cal-empty{padding:14px 16px;font-size:14px;color:var(--muted)}.cal-event-date{display:grid;justify-items:center;flex:none;width:36px}.cal-event-wd{font-size:11px;font-weight:600;text-transform:uppercase;color:var(--muted)}.cal-event-day{font-size:20px;font-weight:650;line-height:1.1;font-variant-numeric:tabular-nums}.cal-event-main{display:grid;gap:6px;min-width:0}.cal-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:14px;line-height:1.35}.cal-flag{display:inline-grid;place-items:center;min-width:26px;height:20px;padding:0 5px;border-radius:5px;font-size:11px;font-weight:700;letter-spacing:.02em}.cal-flag.is-ar{background:var(--surface-2);color:var(--fg);box-shadow:inset 0 0 0 1px var(--line-strong)}.cal-flag.is-br{background:var(--br-bg);color:var(--cur-brl)}.cal-bills{color:var(--ink-2)}.cal-long{font-size:13px;color:var(--primary-600);font-weight:550}.cal-warn{font-size:13px;color:var(--warn-deep);align-items:flex-start}.cal-warn svg{flex:none;margin-top:2px}.tag.is-warn{background:var(--warn-bg);color:var(--warn-deep)}@media (max-width: 760px){.cal-body{grid-template-columns:1fr}.cal-grid{border-right:0;border-bottom:1px solid var(--line)}.cal-day{height:40px;font-size:14px}}.cat-toolbar{display:flex;justify-content:flex-end;margin-bottom:12px}.cat-intro{margin:0 0 12px}.cat-row{gap:12px}.cat-row.is-off .list-title{color:var(--muted)}.cat-row .pl-select{width:180px;flex:none}.cat-type-tag{display:none}@media (max-width: 600px){.cat-type-tag{display:inline-flex}}.row-actions.is-visible .icon-btn{opacity:1}.cat-types{display:grid;gap:8px}.cat-type{display:grid;grid-template-columns:20px 1fr;gap:2px 10px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);cursor:pointer}.cat-type input{grid-row:span 2;margin:3px 0 0;accent-color:var(--primary)}.cat-type.is-on{border-color:#9cc4ae;background:var(--primary-bg)}.cat-type-label{font-weight:600;font-size:14px}.cat-type-hint{font-size:13px;color:var(--muted)}.cat-type-hint.is-cost{grid-column:2;color:var(--ink-2);font-variant-numeric:tabular-nums}.cat-colors{display:flex;flex-wrap:wrap;gap:8px}.cat-color{width:32px;height:32px;border-radius:8px;border:2px solid transparent;box-shadow:inset 0 0 0 1px #0000001f;cursor:pointer}.cat-color.is-on{border-color:var(--fg)}@media (max-width: 600px){.cat-row{flex-wrap:wrap}.cat-row .list-main{flex:1 1 calc(100% - 120px)}.cat-row .pl-select{display:none}}.share-bar{display:block;height:4px;margin-top:4px;border-radius:2px;background:var(--surface-2);overflow:hidden}.share-bar>span{display:block;height:100%;border-radius:2px;background:var(--primary)}.recon{display:grid;gap:10px;padding:14px 0 4px;border-top:1px solid var(--line)}.recon-h{margin:0;font-size:13px;font-weight:600;color:var(--ink-2)}.recon-row{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:12px;align-items:start}.recon-name{display:grid;gap:2px;min-width:0}.recon-cell{display:grid;gap:2px;justify-items:end}.recon-empty{padding:12px 0 0;margin:0;border-top:1px solid var(--line)}@media (max-width: 600px){.recon-row{grid-template-columns:repeat(3,minmax(0,1fr))}.recon-name{grid-column:1 / -1}.recon-cell{justify-items:start}}.tag.is-neg{background:var(--neg-bg);color:var(--neg)}.share-row .list-amount{min-width:132px}@media (max-width: 600px){.dash-month{grid-template-columns:1fr}.dash-month>div+div{border-left:0;border-top:1px solid var(--line)}.share-row .list-amount{min-width:0}}.list-meta>.meta-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gaps{display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:2px 10px}.list-meta.gaps-line{overflow:visible;flex-wrap:wrap;white-space:normal}.gaps-line .gaps{justify-content:flex-start}.dash-tab>*+*{margin-top:16px}.dash-tab>.seg{display:flex;width:-moz-fit-content;width:fit-content;max-width:100%;overflow-x:auto}.dash-tab .summary{margin-bottom:0}.delta{font-size:12px;color:var(--muted)}.delta.is-good{color:var(--pos)}.delta.is-bad{color:var(--neg)}@media (max-width: 600px){.dash-tab>.seg .seg-btn{min-width:0;padding:0 10px}}.dash-tab .list-meta.is-text{white-space:normal}.dash-tab.is-updating>:not(.seg){opacity:.55;transition:opacity .15s}.recharts-legend-item-text{color:var(--ink-2)!important}@media (max-width: 600px){.summary{grid-template-columns:1fr}.summary-item{border-left:0;border-top:1px solid var(--line)}.summary-item:first-child{border-top:0}}.m-sheet-grip{width:36px;height:4px;border-radius:4px;background:var(--line-strong);margin:10px auto 6px}.m-sheet-user{padding:8px 20px 12px;border-bottom:1px solid var(--line)}.m-sheet-name{font-weight:650}.m-sheet-mail{font-size:13px;color:var(--muted)}.alert-row{display:grid;gap:4px;align-items:start;padding-top:12px;padding-bottom:12px}.alert-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.alert-head .tag{margin-top:1px;flex:none}.alert-title{font-size:15px;font-weight:600}.alert-text{margin:0;font-size:14px;line-height:1.5;color:var(--ink-2)}.alert-hint{margin:0;font-size:13px;color:var(--muted)}.status-ok{margin:0;font-size:15px;line-height:1.55;color:var(--ink-2)}.list-title.status-issue{white-space:normal}.status-go{flex:none;color:var(--ink-4)}.notif{position:relative}.notif-bell{position:relative;color:var(--ink-4)}.notif-bell:has(.notif-count){color:var(--muted)}.notif-count{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--neg);color:#fff;font-size:10px;font-weight:600;line-height:16px;text-align:center;font-variant-numeric:tabular-nums}.notif-panel{position:absolute;top:calc(100% + 8px);z-index:1000;width:min(340px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);overflow:hidden}.notif-panel.is-right{right:0}.notif-panel.is-left{left:0}.notif-head{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 16px;border-bottom:1px solid var(--line)}.notif-head h3{flex:1;margin:0;font-size:14px;font-weight:600}.notif-head .link-btn{font-size:13px}.notif-list{max-height:360px;overflow-y:auto}.notif-empty{margin:0;padding:28px 16px;text-align:center;font-size:14px;color:var(--muted)}.notif-item{display:flex;align-items:flex-start;gap:10px;padding:12px 8px 12px 16px;border-top:1px solid var(--line)}.notif-item:first-child{border-top:0}.notif-item.is-unread{background:var(--primary-bg);cursor:pointer}.notif-icon{flex:none;margin-top:2px;color:var(--muted)}.notif-icon.is-success{color:var(--pos)}.notif-icon.is-error{color:var(--neg)}.notif-icon.is-warning{color:var(--warn)}.notif-body{flex:1;min-width:0;display:grid;gap:2px}.notif-body p{margin:0}.notif-title{font-size:14px;font-weight:600}.notif-text{font-size:13px;line-height:1.45;color:var(--ink-2);overflow-wrap:anywhere}.notif-time{font-size:12px;color:var(--ink-4);font-variant-numeric:tabular-nums}.notif-remove{width:28px;height:28px;flex:none}.notice{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:10px 12px;border-radius:var(--radius);font-size:14px;line-height:1.45}.notice-text{flex:1;min-width:0}.notice .link-btn{flex:none;padding:0;font-size:14px}.notice.mt{margin:16px 0 0}.invitation-actions{display:flex;gap:8px;flex:none}.invitation-actions button{min-height:36px;padding:0 12px}@media (max-width: 520px){.invitations .notice{flex-wrap:wrap}}.notice.is-error{background:var(--neg-bg);color:var(--neg-deep);border:1px solid var(--neg-line)}.notice.is-error .link-btn{color:var(--neg-deep);text-decoration:underline}.notice.is-info{background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line)}.modal-body .notice,.MuiDialogContent-root .notice{margin:0}.factura-form{display:grid;gap:16px}.factura-day input{max-width:96px}.factura-amount{display:grid;grid-template-columns:1fr 112px;gap:6px 12px}.factura-amount .form-hint{grid-column:1 / -1;margin:0}.form-hint.proj-note{margin-top:8px}.nowrap{white-space:nowrap}.proj-pending .list{margin:0 -20px;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0}.proj-pending .list-row{padding:10px 20px}.proj-pending .list-title{white-space:normal}@media (min-width: 900px){.proj-pending .list{display:grid;grid-template-columns:1fr 1fr}.proj-pending .list-row:nth-child(2){border-top:0}.proj-pending .list-row:nth-child(2n){border-left:1px solid var(--line)}}.label-opt{font-weight:400;color:var(--muted)}.check-row{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-2);cursor:pointer}.check-row input{width:18px;height:18px;accent-color:var(--primary)}.pl-person{display:grid;gap:8px;margin-top:12px}.pl-person .pl-hint{margin-top:0}.debt-row .btn-mini{flex:none}.debt-row .list-title{white-space:normal}.debt-items .debt-item{min-height:52px;cursor:pointer}.debt-item input{width:18px;height:18px;flex:none;accent-color:var(--primary)}.amount-field .form-hint{text-align:center}.tag.is-start{margin-left:6px;background:var(--primary-bg);color:var(--primary-700)}.icon-btn.is-on{color:var(--primary)}.start-copy{display:grid;gap:10px}.start-copy p{margin:0}.balances-since{margin:-4px 2px 8px}.company-picker{display:grid;gap:8px;margin:0;padding:0;list-style:none}.company-option{display:flex;align-items:center;gap:12px;width:100%;min-height:60px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--fg);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.company-option:hover:not(:disabled){border-color:var(--primary);background:var(--surface-2)}.company-option:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.company-option:disabled{cursor:default}.company-option.is-current{border-color:var(--primary)}.company-option>svg{flex:none;color:var(--muted)}.company-option.is-current>svg{color:var(--primary)}.company-option-main{flex:1;min-width:0;display:grid;gap:2px}.company-option-name{font-weight:600;overflow-wrap:anywhere}.company-option-role{font-size:13px;color:var(--muted)}.login-back{display:inline-flex;align-items:center;gap:6px;margin-top:16px}.company-current{display:flex;align-items:center;gap:8px;width:100%;min-width:0;font-size:13px;color:var(--muted)}.company-current>svg{flex:none}.company-current-name{flex:1;min-width:0;color:var(--fg);font-weight:600;text-align:left;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.company-current.is-button{border:0;border-radius:var(--radius-sm);background:none;font:inherit;font-size:13px;cursor:pointer}.company-current.is-button:hover{background:var(--surface-2)}.company-current.is-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.company-switch{display:inline-flex;align-items:center;gap:4px;flex:none;color:var(--primary-600);font-weight:550}.company-current.is-sheet{min-height:44px;margin-top:8px;padding:0;font-size:15px}.company-current.is-sheet .company-switch{min-height:44px;font-size:15px}.settings-sub{margin:0;font-size:15px;font-weight:650}.empresa-block{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.empresa-block .cat-toolbar{justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.empresa-name{margin:0}.empresa-name-row{display:flex;gap:12px;flex-wrap:wrap}.empresa-name-row input{flex:1 1 240px;min-width:0}.empresa-name-row .btn-secondary{flex:none}.admin-tabs{margin-bottom:16px}.admin-companies{display:grid;gap:16px}.admin-companies .panel.is-off{opacity:.75}.admin-tag{margin-left:8px;vertical-align:middle}.temp-pass{display:grid;gap:12px}.temp-pass p{margin:0}.temp-pass-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.temp-pass-value{flex:1 1 200px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);color:var(--fg);font:600 20px/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.04em;text-align:center;-webkit-user-select:all;-moz-user-select:all;user-select:all}.admin-companies-line{white-space:normal;display:block}.admin-companies .panel-head{flex-wrap:wrap;row-gap:8px}.admin-companies .panel-actions{flex-wrap:wrap}.admin-companies .panel-actions .btn-secondary{white-space:nowrap}.admin-companies .panel-title{min-width:0;overflow-wrap:anywhere}.ai-config{display:grid;gap:12px}.ai-config .settings-sub{margin-top:16px}.ai-switch{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.ai-key-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px}.ai-key-row code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.ai-key-form{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.ai-key-form .form-group{flex:1 1 260px}.ai-params{display:grid;gap:12px}.ai-params textarea,.ai-read textarea{width:100%;resize:vertical;font:inherit}.is-danger-text{color:var(--neg-deep, #b42318)}.ai-trigger{color:var(--primary-600)}.ai-read{display:grid;gap:14px}.ai-read-files{display:flex;gap:10px;flex-wrap:wrap}.ai-read-files .btn-secondary{flex:1 1 140px;justify-content:center}.ai-read-file{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius)}.ai-read-file img{width:44px;height:44px;-o-object-fit:cover;object-fit:cover;border-radius:var(--radius-sm)}.ai-read-file-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.ai-read-busy{display:flex;align-items:center;gap:8px;margin:0;color:var(--primary-600);font-size:14px}.ai-notice{display:block}.ai-doubts{margin:6px 0 0;padding-left:18px}.ai-doubts li{margin:2px 0}.ai-cta{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px;border:1px dashed var(--primary);border-radius:var(--radius-lg);background:var(--surface);color:var(--primary-600);font:inherit;text-align:left;cursor:pointer}.ai-cta:hover{background:var(--surface-2)}.ai-cta:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.ai-cta>svg{flex:none}.ai-cta strong{display:block;font-weight:600}.ai-cta-sub{display:block;font-size:13px;color:var(--muted)}.ai-skip{display:block;margin-top:6px;padding:4px 0;font-size:14px}.ai-provider{width:100%;max-width:360px;min-height:44px;padding:0 12px;border:1px solid var(--line-strong, var(--line));border-radius:var(--radius);background:var(--surface);color:var(--fg);font:inherit}.ai-switch-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.ai-dot-row{margin:0}.ai-dot{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:550}.ai-dot i{flex:none;width:10px;height:10px;border-radius:50%;background:var(--muted)}.ai-dot.is-ok{color:var(--primary-600)}.ai-dot.is-ok i{background:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 20%,transparent)}.ai-dot.is-fail{color:var(--neg-deep, #b42318)}.ai-dot.is-fail i{background:var(--neg-deep, #b42318)}.ai-dot.is-none,.ai-dot.is-busy{color:var(--muted)}.ai-dot.is-busy i{animation:ai-pulse 1s ease-in-out infinite}@keyframes ai-pulse{50%{opacity:.3}}@media (prefers-reduced-motion: reduce){.ai-dot.is-busy i{animation:none}}.ai-confirm{display:grid;gap:14px}.ai-confirm-title{margin:0;font-weight:650}.ai-confirm-kv{margin:0}.ai-missing{color:var(--neg-deep, #b42318);font-weight:550}.ai-impact,.ai-confirm-doubts{padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);font-size:14px}.ai-impact ul,.ai-confirm-doubts ul{margin:6px 0 0;padding-left:18px;display:grid;gap:4px}.ai-impact-balance{display:inline-flex;align-items:center;gap:6px;margin-left:6px;white-space:nowrap}.source-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-right:6px;border-radius:6px;vertical-align:-4px;flex:none}.source-badge.is-telegram{background:color-mix(in srgb,#229ED9 14%,transparent);color:#1b7fb0}.source-badge.is-ia{background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary-600)}.tg-config{display:grid;gap:12px}.tg-config .settings-sub{margin-top:4px}.tg-link-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:end}@media (max-width: 700px){.tg-link-form{grid-template-columns:1fr}}.analista{display:flex;flex-direction:column;min-height:calc(100vh - 140px);max-width:780px}.chat{flex:1;display:flex;flex-direction:column;gap:16px;padding-bottom:16px}.chat-empty{padding:28px 0 8px;display:grid;gap:10px}.chat-empty-title{margin:0;font:650 22px/1.2 var(--font);letter-spacing:-.02em;color:var(--fg)}.chat-empty .form-hint{margin:0 0 6px;max-width:60ch}.msg{font-size:15px;line-height:1.55;color:var(--fg);animation:row-in .16s cubic-bezier(.16,1,.3,1)}.msg p{margin:0}.msg.is-user{align-self:flex-end;max-width:min(80%,560px);padding:10px 14px;background:var(--surface);border:1px solid var(--line);border-radius:14px 14px 4px;white-space:pre-wrap;overflow-wrap:anywhere}.msg.is-analyst{align-self:stretch;max-width:68ch}.msg.is-error{color:var(--neg-deep, #9e2a24)}.msg.is-thinking{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-size:14px}.answer{display:grid;gap:10px}.answer ul,.answer ol{margin:0;padding-left:20px;display:grid;gap:4px}.answer strong{font-weight:650}.dots{display:inline-flex;gap:4px}.dots i{width:6px;height:6px;border-radius:50%;background:var(--ink-4, #8e918a);animation:dot 1.1s ease-in-out infinite}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes dot{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.msg-drafts{margin-top:12px;display:grid;gap:10px;padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-radius:14px;justify-items:start}.msg-draft{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;-moz-column-gap:12px;column-gap:12px;align-items:center}.msg-draft-name{font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-draft .list-meta{grid-column:1}.msg-draft .money{grid-column:2;grid-row:1 / span 2}.msg-saved{font-size:14px;font-weight:600;color:var(--primary-700, #124c30)}.composer{position:sticky;bottom:0;z-index:5;padding:8px 0 16px;background:var(--bg)}.composer-box{display:flex;align-items:flex-end;gap:6px;padding:6px 6px 6px 14px;background:var(--surface);border:1px solid var(--line-strong);border-radius:14px}.composer-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #1f7a4d29}.composer-box textarea{flex:1;min-height:36px;max-height:160px;padding:7px 0;border:0;outline:none;resize:none;background:transparent;font:400 15px/1.45 var(--font);color:var(--fg);field-sizing:content}.composer-mic.is-on{background:var(--neg-bg, #fbedeb);color:var(--neg)}.composer-send{flex:none;display:inline-grid;place-items:center;width:36px;height:36px;border:0;border-radius:10px;background:var(--primary);color:#fff;cursor:pointer;transition:background-color .12s ease}.composer-send:hover:not(:disabled){background:var(--primary-600)}.composer-send:disabled{background:var(--line-strong);color:var(--surface);cursor:default}.composer-notice{margin-bottom:8px}.composer-restart{margin-top:8px}@media (max-width: 899px){.analista{min-height:calc(100vh - 160px);max-width:none}.composer{bottom:calc(64px + env(safe-area-inset-bottom));padding-bottom:10px}.msg.is-user{max-width:88%}.msg-drafts .MuiButton-root{width:100%;min-height:44px}}@media (prefers-reduced-motion: reduce){.msg,.dots i{animation:none}}.analyst-log{display:grid;gap:8px;justify-items:start;margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.analyst-log>.form-hint{margin:0}.analyst-log-title{margin:0;font:650 18px/1.2 var(--font);letter-spacing:-.01em;color:var(--fg)}.analyst-log-day{width:100%;margin-top:8px}.analyst-log-dayhead{margin:0 0 6px;padding:0 4px;font-size:13px;font-weight:600;color:var(--ink-2)}.analyst-log-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.analyst-log-item+.analyst-log-item{border-top:1px solid var(--line)}.analyst-log-item summary{display:grid;grid-template-columns:minmax(0,1fr) auto;-moz-column-gap:12px;column-gap:12px;row-gap:2px;align-items:center;padding:12px 14px;cursor:pointer;list-style:none}.analyst-log-item summary::-webkit-details-marker{display:none}.analyst-log-item summary:hover{background:var(--surface-2)}.analyst-log-item summary:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.analyst-log-q{grid-column:1;font-weight:550;font-size:15px;color:var(--fg);overflow-wrap:anywhere}.analyst-log-item .list-meta{grid-column:1}.analyst-log-chev{grid-column:2;grid-row:1 / span 2;color:var(--muted);transition:transform .15s ease}.analyst-log-item[open] .analyst-log-chev{transform:rotate(180deg)}.analyst-log-answer{padding:0 14px 14px;font-size:15px;line-height:1.55;color:var(--fg)}.analyst-log-answer p{margin:0}@media (prefers-reduced-motion: reduce){.analyst-log-chev{transition:none}}.bubble-toggle{margin:0 4px 0 0}.bubble-toggle .MuiFormControlLabel-label{font-size:14px;color:var(--ink-2)}.analista>.bubble-toggle{align-self:flex-start;margin:0 0 4px}.analyst-fab{position:fixed;right:24px;bottom:24px;z-index:25;display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--line-strong);border-radius:50%;background:var(--surface);color:var(--primary);box-shadow:0 10px 24px -10px #14181259;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.analyst-fab:hover{box-shadow:0 12px 28px -10px #14181273}.analyst-fab:active{transform:scale(.96)}.analyst-fab:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.analyst-panel{display:flex;flex-direction:column;height:100%;min-height:0}.analyst-panel-head{flex:none;display:flex;align-items:center;gap:2px;padding:10px 10px 10px 20px;border-bottom:1px solid var(--line)}.analyst-panel-head h2{flex:1;margin:0;font:650 17px var(--font);letter-spacing:-.01em;color:var(--fg)}.chat.is-panel{min-height:0;overflow-y:auto;padding:0 20px 16px;overscroll-behavior:contain}.chat.is-panel .chat-empty{padding-top:20px}.chat.is-panel .chat-empty-title{font-size:19px}.composer.is-panel{position:static;flex:none;padding:8px 16px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg)}@media (max-width: 899px){.analyst-fab{right:16px;bottom:calc(76px + env(safe-area-inset-bottom));width:48px;height:48px}.m-shell:has(.fab-new) .analyst-fab{bottom:calc(140px + env(safe-area-inset-bottom))}.chat.is-panel{padding:0 16px 12px}}.cost-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 2px 8px}.cost-head .MuiToggleButton-root{padding:2px 10px;font-size:12px}.cost-card{overflow:hidden}.cost-pad{padding:14px 14px 12px;display:grid;gap:6px}.cost-lede{margin:0;font-size:15px;color:var(--ink-2)}.cost-lede b{color:var(--fg)}.cost-lede .cost-queda{color:var(--primary);font-size:22px;font-variant-numeric:tabular-nums}.cost-lede .cost-queda.is-loss{color:var(--neg)}.cost-bar{display:flex;height:34px;border-radius:var(--radius-sm);overflow:hidden;margin-top:6px;border:1px solid var(--line)}.cost-bar>div{display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;white-space:nowrap;color:#fff;font-size:12px;font-weight:650;font-variant-numeric:tabular-nums}.cost-bar>div.is-queda{color:var(--primary-700)}.cost-row{min-height:44px;padding:8px 14px}.cost-row .list-title{flex:1;min-width:0;font-size:14px}.cost-row.is-total .list-title,.cost-row.is-total .cost-money{font-weight:650}.cost-dot{display:inline-block;width:10px;height:10px;border-radius:3px;flex:none;margin-right:8px}.cost-row .cost-dot{margin-right:0}.cost-money{font-variant-numeric:tabular-nums;font-size:14px}.cost-pct{font-variant-numeric:tabular-nums;font-size:13px;color:var(--muted);min-width:52px;text-align:right}.cost-kpis{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.cost-kpis>div{display:grid;align-content:start;gap:2px;padding:12px 14px}.cost-kpis>div+div{border-left:1px solid var(--line)}.cost-kpis b{font-size:16px;font-variant-numeric:tabular-nums}.cost-foot{border-top:1px solid var(--line);padding:10px 14px;display:flex;justify-content:flex-start}.cost-dlg-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 24px 8px}.cost-dlg-head h2{margin:0 0 2px;font-size:22px;font-weight:650;letter-spacing:-.01em;text-wrap:balance}.cost-dlg{display:grid;gap:28px;padding:8px 24px 28px!important}.cost-dlg section{display:grid;gap:10px;min-width:0}.cost-dlg h3{margin:0;font-size:16px;font-weight:650;display:flex;align-items:center;gap:6px}.cost-sub{margin:4px 0 0;font-size:14px;font-weight:650}.cost-ai{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px}.cost-ai-off{background:var(--surface-2);border-radius:var(--radius);padding:12px 14px}.cost-ai-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.cost-ai-lede{margin:0;font-size:15px;line-height:1.55;max-width:70ch}.cost-points{list-style:none;margin:0;padding:0;display:grid;gap:10px}.cost-points li{display:grid;grid-template-columns:84px 1fr;gap:10px;align-items:start}.cost-points p{margin:2px 0 0;font-size:14px;color:var(--ink-2);line-height:1.5}.cost-tone{justify-self:start;font-size:12px;font-weight:650;padding:2px 8px;border-radius:999px}.cost-tone.is-ok{background:var(--primary-bg);color:var(--primary-700)}.cost-tone.is-warn{background:var(--warn-bg);color:var(--warn-deep)}.cost-tone.is-bad{background:var(--neg-bg);color:var(--neg-deep)}.cost-actions{margin:0;padding-left:20px;display:grid;gap:4px;font-size:14px}.cost-note{margin:0;font-size:13px;background:var(--warn-bg);color:var(--warn-deep);padding:8px 12px;border-radius:var(--radius-sm)}.cost-legend{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--ink-2)}.cost-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px}.cost-legend b{font-variant-numeric:tabular-nums;margin-left:4px}.cost-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius)}.cost-table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}.cost-table th,.cost-table td{padding:8px 12px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}.cost-table th:first-child,.cost-table td:first-child{text-align:left}.cost-table th{font-size:12px;font-weight:600;color:var(--muted)}.cost-table tr.is-group td{font-weight:650;background:var(--surface-2)}.cost-table tr.is-retiros td{color:var(--neg-deep)}.cost-table tr.is-total td{font-weight:700;color:var(--primary-700)}.cost-table td.is-line{padding-left:30px;color:var(--ink-2);white-space:normal}.cost-table tr:last-child td{border-bottom:0}.cost-bench{display:grid;gap:16px}.cost-brow{display:grid;grid-template-columns:120px 1fr 64px;gap:6px 12px;align-items:center}.cost-blabel{font-size:14px;font-weight:600}.cost-track{position:relative;height:12px;background:var(--surface-2);border:1px solid var(--line);border-radius:6px}.cost-range{position:absolute;top:-1px;bottom:-1px;background:var(--primary-bg);border:1px solid var(--primary);border-radius:6px}.cost-mark{position:absolute;top:-6px;width:4px;height:22px;border-radius:2px;background:var(--fg)}.cost-bval{text-align:right;font-variant-numeric:tabular-nums}.cost-bval.is-bad{color:var(--neg)}.cost-bval.is-ok{color:var(--primary)}.cost-brow small{grid-column:2 / 4;font-size:12px;color:var(--muted)}.cost-months{display:flex;gap:8px;align-items:flex-end;height:160px}.cost-mcol{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;height:100%;min-width:0}.cost-mcol b{font-size:12px;font-variant-numeric:tabular-nums}.cost-mcol span{font-size:12px;color:var(--muted)}.cost-mbar{width:100%;max-width:48px;background:var(--primary);border-radius:4px 4px 0 0;min-height:2px}.cost-levers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.cost-levers>div{border:1px solid var(--line);border-radius:var(--radius);padding:14px;display:grid;gap:4px;align-content:start}.cost-levers b{font-size:20px;font-variant-numeric:tabular-nums}.cost-levers p{margin:0;font-size:13px;color:var(--ink-2);line-height:1.45}.cost-calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.cost-calc-in{display:grid;gap:14px}.cost-calc-out{margin:0;display:grid;grid-template-columns:1fr auto;gap:6px 16px;font-size:14px;font-variant-numeric:tabular-nums}.cost-calc-out dd{margin:0;text-align:right}.cost-calc-out .is-total{border-top:1px solid var(--line);padding-top:6px;font-weight:700}.cost-calc-out dd.is-bad{color:var(--neg)}@media (max-width: 720px){.cost-kpis,.cost-levers,.cost-calc{grid-template-columns:1fr}.cost-kpis>div+div{border-left:0;border-top:1px solid var(--line)}.cost-dlg-head{padding:16px 16px 4px}.cost-dlg{padding:8px 16px 24px!important}.cost-brow{grid-template-columns:92px 1fr 56px}.cost-points li{grid-template-columns:1fr;gap:4px}}.rf-steps{margin:0 0 12px;padding-left:20px;display:grid;gap:4px}.rf-form{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:12px}.rf-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.rf-toolbar .MuiToggleButton-root{padding:2px 10px;font-size:12px}.rf-kpis{display:grid;grid-template-columns:repeat(3,1fr);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.rf-kpis>div{display:grid;align-content:start;gap:4px;padding:14px 16px}.rf-kpis>div+div{border-left:1px solid var(--line)}.rf-kpis b{font-size:22px;font-variant-numeric:tabular-nums}.rf-gap{margin:12px 0 0;font-size:14px;color:var(--ink-2);max-width:80ch}.rf-filter{display:inline-flex;align-items:center;gap:8px;margin:16px 0 8px;font-size:14px}.rf-filters{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0 8px}.rf-filters .rf-filter{margin:0}.rf-filters .MuiToggleButton-root{padding:2px 10px;font-size:12px}.rf-reasons .MuiToggleButton-root{gap:6px;text-transform:none}.rf-count{font-variant-numeric:tabular-nums;color:var(--muted);font-weight:600}.rf-dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}.rf-dot.is-bad{background:var(--neg)}.rf-dot.is-warn{background:var(--warn)}.rf-table td.rf-name{white-space:normal;min-width:160px}.rf-table td.rf-name small,.rf-table td.rf-qty small{display:block;color:var(--muted);font-size:12px}.cost-tone.is-none{background:var(--surface-2);color:var(--muted)}@media (max-width: 720px){.rf-form,.rf-kpis{grid-template-columns:1fr}.rf-kpis>div+div{border-left:0;border-top:1px solid var(--line)}}.rp-bar{display:flex;align-items:center;gap:12px 14px;flex-wrap:wrap;margin:0 0 20px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.rp-bar.is-off{background:var(--surface-2);border:0}.rp-bar-icon{color:var(--primary);flex:none}.rp-bar-text{display:grid;gap:2px;flex:1 1 260px;min-width:0}.rp-bar-text b{font-size:15px;font-weight:650}.rp-bar-actions{display:flex;gap:8px;flex-wrap:wrap}.rp-head-actions{display:flex;align-items:center;gap:8px}.rp-wait{display:grid;justify-items:center;gap:14px;padding:48px 12px;text-align:center;color:var(--ink-2)}.rp-wait p{margin:0;max-width:46ch}.rp-wait .spinner{width:32px;height:32px;border-width:3px;border-color:color-mix(in srgb,var(--primary) 20%,transparent);border-top-color:var(--primary)}.rp-kpis{display:grid;grid-template-columns:repeat(3,1fr);margin-top:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.rp-kpis>div{display:grid;align-content:start;gap:2px;padding:12px 14px;min-width:0}.rp-kpis>div+div{border-left:1px solid var(--line)}.rp-kpis b{font-size:18px;font-variant-numeric:tabular-nums}.rp-p{margin:0;font-size:14px;line-height:1.55;color:var(--ink-2);max-width:75ch}.rp-actions{margin:0;padding:0;list-style:none;counter-reset:rp;display:grid;gap:10px}.rp-actions li{counter-increment:rp;display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:start;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.rp-actions li:before{content:counter(rp);display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--primary-bg);color:var(--primary-700);font-size:13px;font-weight:700}.rp-actions p{margin:2px 0 0;font-size:14px;color:var(--ink-2);line-height:1.5}.rp-impact{font-size:13px;font-weight:650;color:var(--primary-700);background:var(--primary-bg);padding:2px 8px;border-radius:999px;white-space:nowrap;font-variant-numeric:tabular-nums}.rp-table td,.rp-table th{white-space:nowrap}.rp-table td:first-child{white-space:normal}.rp-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rp-menu-box{display:grid;align-content:start;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius)}.rp-menu-box ul{margin:4px 0 0;padding-left:18px;font-size:14px;display:grid;gap:2px}.rp-months{display:grid;gap:6px}.rp-month{display:grid;grid-template-columns:76px 1fr 150px;gap:10px;align-items:center;font-size:14px}.rp-month-name{color:var(--ink-2);text-transform:capitalize}.rp-month-val{text-align:right;font-variant-numeric:tabular-nums}.rp-month-val small{color:var(--muted);margin-left:4px}.rp-track{height:10px;background:var(--surface-2);border-radius:5px;overflow:hidden}.rp-track i{display:block;height:100%;background:var(--primary);border-radius:5px}.rp-track.is-low i{background:var(--warn)}@media (max-width: 720px){.rp-actions li{grid-template-columns:28px 1fr}.rp-impact{grid-column:2;justify-self:start}.rp-kpis{grid-template-columns:1fr}.rp-kpis>div+div{border-left:0;border-top:1px solid var(--line)}.rp-menu{grid-template-columns:1fr}.rp-month{grid-template-columns:64px 1fr 116px}.rp-head-actions .MuiSelect-select{max-width:120px}}.stack-start{display:grid;justify-items:start;gap:2px}.inst-overdue-hint{color:var(--neg);font-weight:550}.inst-card .panel-head{margin-bottom:8px}.inst-title{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.inst-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 20px;padding:0 20px 14px;font-size:14px;color:var(--ink-2)}.inst-bar{flex:1 1 140px;max-width:260px;height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.inst-bar>span{display:block;height:100%;background:var(--primary);border-radius:inherit}.inst-done{color:var(--pos);font-weight:600}.inst-notes{margin:-6px 20px 12px;font-size:13px}.inst-card .table-wrap{border:0;border-top:1px solid var(--line);border-radius:0}.dtable tr.inst-paid td{color:var(--muted)}.inst-toggle{display:block;margin-top:12px}.inst-pay-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.inst-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.inst-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.inst-list li{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--line);font-size:14px}.inst-list li:last-child{border-bottom:0}.inst-list-main{display:grid;justify-items:start;gap:4px;min-width:0}.inst-list li.inst-paid{color:var(--muted)}.inst-list .inst-undo{opacity:1;width:32px;height:32px}@media (max-width: 899px){.inst-summary .summary{grid-template-columns:1fr 1fr}.inst-summary .summary-item:nth-child(odd){border-left:0}.inst-summary .summary-item:nth-child(n+3){border-top:1px solid var(--line)}.inst-summary .summary-item{padding:14px 16px}.inst-summary .summary-value{font-size:19px}.inst-card .panel-head{padding:14px 16px 0}.inst-meta{padding:0 16px 12px}.inst-notes{margin:-4px 16px 10px}}@media (max-width: 560px){.inst-form-row{grid-template-columns:1fr}}.invest-partners{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-bottom:16px}.invest-partners>.invest-partner{display:grid;align-content:start;gap:10px;padding:16px 18px;margin:0}.dtable td.nowrap{white-space:nowrap}.invest-partner .inst-bar{max-width:none;flex:none}.invest-partner-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px}.invest-partner-total{font-size:24px;line-height:1.1}.invest-partner-goal{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px;font-size:14px;color:var(--ink-2)}.invest-goal-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px}.invest-cur{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px}.invest-filters{display:flex;gap:8px;flex-wrap:wrap}.invest-note{font-size:12px;margin-top:2px}.invest-amounts{display:grid;justify-items:end;gap:2px;font-size:14px}.invest-row-actions{display:inline-flex;gap:2px}@media (max-width: 899px){.invest-partners{grid-template-columns:1fr;gap:10px}.invest-partners>.invest-partner{padding:14px 16px}.invest-panel .panel-head{flex-wrap:wrap;gap:10px}.invest-panel .panel-actions{width:100%}.invest-filters{width:100%;flex-wrap:nowrap}.invest-filters>*{flex:1 1 0;min-width:0!important}}.login:has(.install-sheet){padding-bottom:300px}.install-sheet{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:20;display:grid;gap:12px;max-width:440px;margin:0 auto;padding:16px 16px 10px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 32px #141e1929;animation:install-in .22s cubic-bezier(.2,.8,.2,1)}@keyframes install-in{0%{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}@media (prefers-reduced-motion: reduce){.install-sheet{animation:none}}.install-head{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:start}.install-icon{width:44px;height:44px;border-radius:10px}.install-title{margin:0;font-size:16px;font-weight:650;letter-spacing:-.01em}.install-sub{margin:2px 0 0;font-size:13px;color:var(--muted)}.install-steps{margin:0;padding:0 0 0 22px;display:grid;gap:8px;font-size:14px;color:var(--ink-2)}.install-glyph{vertical-align:-3px;color:var(--primary)}.install-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%}.install-later{justify-self:center;font-size:13px;padding:6px 12px}.login:has(.install-reopen){align-content:center}.install-reopen{justify-self:center;display:inline-flex;align-items:center;gap:6px;margin-top:16px;font-size:13px}.push-config{display:grid;gap:12px;padding:16px;margin-bottom:20px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.push-config-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--primary)}.push-config-head h3{margin:0;font-size:16px;font-weight:650;color:var(--fg)}.push-config .form-hint{margin:0}.push-config-actions{display:flex;gap:8px;flex-wrap:wrap}.push-invite{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;margin:12px 16px 0;padding:10px 8px 10px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.push-invite-icon{color:var(--primary)}.push-invite-text{display:grid;gap:1px;font-size:14px;min-width:0}.push-invite-text span{font-size:12.5px;color:var(--muted)}.push-invite-cta{padding:8px 14px}.push-config .notice{margin:0}
