@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";
:root{--ink:#14213d;--muted:#73809a;--line:#e8ebf2;--surface:#fff;--bg:#f6f7fb;--indigo:#5846e8;--green:#17a673;--orange:#f17a45;--blue:#3286e8}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:DM Sans,sans-serif}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{color:#fff;z-index:30;background:#101938;flex-direction:column;width:252px;padding:28px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;padding:0 8px 28px;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#806cf9,#5141dd);border-radius:12px;place-items:center;width:37px;height:37px;font:800 20px Manrope;display:grid;box-shadow:0 8px 24px #5846e84d}.brand-mark.large{width:56px;height:56px;font-size:28px}.brand span:nth-child(2){flex-direction:column;display:flex}.brand strong{font:700 19px Manrope}.brand small,.profile small{color:#98a2bd;font-size:11px}.sidebar nav{gap:6px;display:grid}.sidebar nav button{color:#9ca7c1;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:13px;padding:12px 14px;display:flex}.sidebar nav button:hover,.sidebar nav button.active{color:#fff;background:#ffffff10}.sidebar nav button.active{box-shadow:inset 3px 0 #7868f4}.profile{border-top:1px solid #ffffff14;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-top:auto;padding:15px 8px 0;display:grid}.profile span:nth-child(2){flex-direction:column;min-width:0;display:flex}.profile strong{font-size:13px}.profile small{text-overflow:ellipsis;overflow:hidden}.avatar{background:#2e3c62;border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.icon{color:inherit;background:0 0;border:0;border-radius:9px;place-items:center;padding:7px;display:grid}.icon:hover{background:#ffffff12}.workspace{max-width:1650px;margin-left:252px;padding:34px clamp(20px,4vw,54px) 60px}.workspace header{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.workspace h1{margin:3px 0;font:800 clamp(25px,3vw,34px) Manrope}.eyebrow{color:#8a94aa;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.primary{background:var(--indigo);color:#fff;border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:12px 17px;font-weight:700;display:inline-flex;box-shadow:0 8px 20px #5846e82c}.primary:disabled{opacity:.55}.wide{width:100%}.metrics{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.metric{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px;position:relative;overflow:hidden}.metric:after{content:"";opacity:.07;background:currentColor;border-radius:50%;width:78px;height:78px;position:absolute;top:-25px;right:-25px}.metric p,.metric small{color:var(--muted);margin:0}.metric strong{margin:10px 0;font:700 clamp(20px,2vw,27px) Manrope;display:block}.metric.indigo{color:var(--indigo)}.metric.green{color:var(--green)}.metric.orange{color:var(--orange)}.metric.blue{color:var(--blue)}.content-grid,.bottom-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,.8fr);gap:18px;margin-top:18px;display:grid}.bottom-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:23px}.panel h2{margin:4px 0;font:700 18px Manrope}.panel-head{justify-content:space-between;align-items:center;display:flex}.pill{color:var(--indigo);background:#f0efff;border-radius:20px;padding:6px 10px;font-size:11px;font-weight:700}.cashflow{min-height:310px}.flow-visual{border-bottom:1px solid var(--line);background:repeating-linear-gradient(0deg,#0000 0 44px,#eef0f5 45px);justify-content:center;align-items:flex-end;gap:36px;height:180px;padding-top:30px;display:flex}.flow-bar{border-radius:10px 10px 2px 2px;width:58px;min-height:14px}.flow-bar.income{background:linear-gradient(#5bd5ad,#1aa373)}.flow-bar.expense{background:linear-gradient(#ffb084,#ef7642)}.legend{color:var(--muted);justify-content:center;gap:25px;margin-top:16px;font-size:12px;display:flex}.legend i{border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.legend .green{background:var(--green)}.legend .orange{background:var(--orange)}.assistant{color:#fff;background:linear-gradient(155deg,#151e43,#22245d)}.assistant .eyebrow,.assistant p,.assistant small{color:#b1b8d1}.ai-orb{color:#a99eff;background:#ffffff14;border-radius:15px;place-items:center;width:48px;height:48px;margin-bottom:26px;display:grid}.composer{background:#fff;border-radius:12px;margin:24px 0 11px;padding:5px;display:flex}.composer input{min-width:0;color:var(--ink);border:0;outline:0;flex:1;padding:8px}.composer button{background:var(--indigo);color:#fff;border:0;border-radius:9px;place-items:center;width:38px;display:grid}.composer button:disabled{background:#c4c5cd}.transaction-list{margin-top:12px}.transaction,.account{border-bottom:1px solid #eef0f4;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:13px 0;display:grid}.transaction:last-child,.account:last-child{border:0}.transaction span:nth-child(2),.account span:nth-child(2){flex-direction:column;display:flex}.transaction small,.account small{color:var(--muted);margin-top:3px;font-size:12px}.transaction b,.account b{font-size:13px}.positive{color:var(--green)}.tx-icon,.account-icon{border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.tx-icon svg,.account-icon svg{width:18px}.tx-icon.income{color:var(--green);background:#e8f8f2}.tx-icon.expense{color:var(--orange);background:#fff0e9}.tx-icon.transfer{color:var(--indigo);background:#efeeff}.account-icon{color:#4b5d88;background:#eff2fb}.text-button{color:var(--indigo);background:0 0;border:0;font-weight:700}.empty{color:#a0a8b9;text-align:center;align-content:center;place-items:center;min-height:170px;display:grid}.empty svg{opacity:.45}.error{color:brown;background:#fff0f0;border:1px solid #ffd3d3;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:18px;padding:12px 16px;display:flex}.error button{color:inherit;background:0 0;border:0;font-weight:700}.menu,.mobile-close{display:none}.center{place-items:center;min-height:100vh;display:grid}.loader{border:3px solid #ddd;border-top-color:var(--indigo);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth{background:#101938;grid-template-columns:1.15fr .85fr;min-height:100vh;display:grid}.auth-copy{color:#fff;background:radial-gradient(circle at 25% 30%,#5141dd52,#0000 35%);flex-direction:column;justify-content:center;padding:clamp(40px,8vw,120px);display:flex}.auth-copy h1{max-width:780px;margin:25px 0;font:800 clamp(38px,5vw,68px)/1.08 Manrope}.auth-copy>p:last-child{color:#adb6ce;max-width:600px;font-size:18px;line-height:1.7}.auth-card{background:#fff;border-radius:22px;align-self:center;gap:20px;margin:40px clamp(24px,8vw,100px);padding:36px;display:grid;box-shadow:0 30px 80px #0004}.auth-card h2{margin:5px 0;font:800 28px Manrope}.auth-card label{gap:8px;font-size:13px;font-weight:600;display:grid}.auth-card input{border:1px solid #dce0e9;border-radius:10px;outline:0;padding:12px}.auth-card input:focus{border-color:var(--indigo);box-shadow:0 0 0 3px #5846e817}.form-error{color:#b23434;margin:0;font-size:13px}.assistant>.primary,.assistant>.text-button{margin-top:14px}.assistant>small{margin-top:12px;line-height:1.45;display:block}@media (max-width:1050px){.metrics{grid-template-columns:repeat(2,1fr)}.content-grid,.bottom-grid{grid-template-columns:1fr}.assistant{min-height:290px}.auth{grid-template-columns:1fr}.auth-copy{display:none}.auth-card{justify-self:center;width:calc(100% - 40px);max-width:480px}}@media (max-width:760px){.sidebar{transition:all .25s;transform:translate(-102%)}.sidebar.open{transform:none;box-shadow:20px 0 60px #0005}.mobile-close,.menu{display:grid}.mobile-close{margin-left:auto}.workspace{margin-left:0;padding:22px 15px 45px}.workspace header{align-items:flex-start}.workspace header .primary{padding:11px;font-size:0}.metrics{grid-template-columns:1fr 1fr;gap:10px}.metric{padding:17px}.metric strong{font-size:18px}.content-grid,.bottom-grid{gap:12px;margin-top:12px}.panel{padding:18px}.cashflow{min-height:280px}}@media (max-width:470px){.metrics{grid-template-columns:1fr}.workspace h1{font-size:23px}.transaction{grid-template-columns:auto 1fr}.transaction b{grid-column:2}.auth-card{padding:25px}}
