@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=Manrope:wght@400;500;600;700;800&display=swap";*{box-sizing:border-box}body{color:#132036;background:#edf4fb;min-width:320px;margin:0;font-family:Manrope,sans-serif}button,input,select{font:inherit}button{cursor:pointer}:root{--ink:#132036;--muted:#718198;--blue:#1877e8;--navy:#0c2545;--pale:#edf4fb;--line:#dbe6f1;--green:#09865e;--red:#ce543d;--amber:#c78316;--white:#fff}.app-shell{background:radial-gradient(circle at 95% 5%, #dceeff 0, transparent 26rem), var(--pale);min-height:100vh;display:flex}.sidebar{z-index:5;color:#d6e4f5;background:#0c2545;flex-direction:column;width:250px;padding:25px 15px 18px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-head{justify-content:space-between;align-items:center;display:flex}.brand-mark{color:#0c2545;background:linear-gradient(135deg,#8bd0ff,#fff);border-radius:13px;place-items:center;width:39px;height:39px;font:700 24px/1 Fraunces,serif;display:grid}.brand-name{color:#fff;margin:15px 8px 32px;font:600 20px Fraunces,serif}.brand-name small{color:#90a9c4;margin-top:4px;font:500 10px Manrope,sans-serif;display:block}.sidebar nav{gap:7px;display:grid}.sidebar nav button,.sign-out{color:#a8c0da;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;width:100%;padding:11px 12px;font-weight:600;display:flex;position:relative}.sidebar nav button:hover,.sidebar nav button.active{color:#fff;background:#1e4e80}.sidebar nav b{color:#0c2545;background:#ffe49d;border-radius:50%;place-items:center;width:19px;height:19px;margin-left:auto;font:700 10px DM Mono,monospace;display:grid}.sign-out{color:#a8c0da;margin-top:auto}.sign-out:hover{color:#fff}.main-content{width:calc(100% - 250px);margin-left:250px;padding:31px 42px 110px}.topbar{justify-content:space-between;align-items:center;gap:24px;max-width:1380px;margin:0 auto 30px;display:flex}.eyebrow{color:#6380a0;letter-spacing:.12em;text-transform:uppercase;margin:0 0 4px;font:700 10px/1.2 DM Mono,monospace}.topbar h1,h2{color:var(--ink);margin:0;font-family:Fraunces,serif}.topbar h1{font-size:31px}.topbar-actions{align-items:center;gap:12px;display:flex}.user-badge{color:#075da7;background:#dbeeff;border-radius:50%;place-items:center;width:36px;height:36px;font-weight:800;display:grid}.primary-button,.review-button,.google-button{border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;font-weight:800;display:inline-flex}.primary-button{color:#fff;background:var(--blue);padding:12px 15px;box-shadow:0 8px 15px #1877e82b}.primary-button:hover{background:#0866cc}.primary-button:disabled{opacity:.7;cursor:wait}.review-button{color:#8a5505;background:#fff4d6;padding:10px 12px}.review-button b{color:#fff;background:#d89625;border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;display:grid}.icon-button{color:#48637f;background:0 0;border:0;place-items:center;display:grid}.close-menu,.mobile-menu{display:none}.page-stack{gap:19px;max-width:1380px;margin:auto;display:grid}.summary-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.stat-card,.panel{background:#fff;border:1px solid #e4edf5;box-shadow:0 15px 34px #2357830d}.stat-card{border-radius:15px;min-height:136px;padding:20px}.stat-card span{border-radius:9px;place-items:center;width:32px;height:32px;margin-bottom:13px;display:grid}.stat-card p{color:#74869d;margin:0 0 5px;font-size:12px;font-weight:700}.stat-card strong{color:#152843;font:600 20px Fraunces,serif}.stat-card.blue span{color:#0d6ad2;background:#e3f1ff}.stat-card.ink span{color:#1d4b7e;background:#e8edf5}.stat-card.red span{color:var(--red);background:#ffede8}.stat-card.green span{color:var(--green);background:#e5f8f0}.dashboard-grid{grid-template-columns:1.3fr 1fr;gap:19px;display:grid}.dashboard-grid.lower{grid-template-columns:.85fr 1.15fr}.panel{border-radius:15px;padding:23px}.panel-title{justify-content:space-between;align-items:center;gap:18px;display:flex}.panel-title>svg{color:#97aabf}.panel h2{font-size:20px}.flow-bars{gap:20px;padding:35px 0 8px;display:grid}.flow-bars div{color:#617991;grid-template-columns:42px 1fr 120px;align-items:center;gap:10px;font-size:12px;font-weight:700;display:grid}.flow-bars i{background:linear-gradient(90deg,#197be8,#7fc1ff);border-radius:9px;min-width:22px;height:14px;display:block}.flow-bars i.expense{background:linear-gradient(90deg,#e66d58,#ffc2b8)}.flow-bars b{text-align:right;color:#24415e;font:500 11px DM Mono,monospace}.category-bars{gap:15px;margin-top:27px;display:grid}.category-bars div{color:#405a76;grid-template-columns:135px 1fr 100px;align-items:center;gap:10px;font-size:12px;display:grid}.category-bars i{background:#edf3f9;border-radius:8px;height:8px;display:block;overflow:hidden}.category-bars i b{background:#4ca2ec;border-radius:8px;height:100%;display:block}.category-bars strong{text-align:right;color:#37536e;font:500 10px DM Mono,monospace}.account-list,.transaction-rows{margin-top:19px;display:grid}.account-list>div{border-bottom:1px solid #eef3f7;align-items:center;gap:10px;padding:10px 0;display:flex}.account-list>div:last-child{border-bottom:0}.account-icon{background:#eff6fd;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:17px;display:grid}.account-list span:nth-child(2){color:#1d3956;font-size:13px;font-weight:700}.account-list small{color:#8292a6;margin-top:2px;font-size:10px;font-weight:500;display:block}.account-list strong{color:#203c58;margin-left:auto;font:500 11px DM Mono,monospace}.transaction-row{border-bottom:1px solid #eef3f7;grid-template-columns:32px minmax(120px,1fr) 110px auto auto;align-items:center;gap:10px;padding:11px 0;display:grid}.transaction-row:last-child{border-bottom:0}.transaction-icon{border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.transaction-icon.expense{color:var(--red);background:#ffede9}.transaction-icon.income{color:var(--green);background:#e4f8f0}.transaction-icon.transfer{color:#307bd0;background:#e4f1ff}.transaction-main{color:#203a56;text-align:left;background:0 0;border:0;min-width:0;padding:0}.transaction-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.transaction-main small{color:#8190a4;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;display:block;overflow:hidden}.transaction-row time{color:#8798aa;font:500 9px DM Mono,monospace}.transaction-row>b{text-align:right;min-width:85px;font:500 10px DM Mono,monospace}.transaction-row>b.expense{color:var(--red)}.transaction-row>b.income{color:var(--green)}.transaction-row>b.transfer{color:#3177be}.review-chip{color:#976111;background:#fff1d0;border:0;border-radius:7px;padding:5px 7px;font-size:10px;font-weight:800}.delete-row{color:#aab5c0;background:0 0;border:0;padding:4px;font-size:10px}.delete-row:hover{color:var(--red)}.empty{color:#8393a5;text-align:center;padding:27px 0;font-size:13px}.table-tools{justify-content:space-between;gap:16px;display:flex}.search{border:1px solid var(--line);color:#8296ad;background:#fff;border-radius:10px;align-items:center;gap:8px;min-width:230px;padding:0 12px;display:flex}.search input{color:#243c58;border:0;outline:0;width:100%;padding:11px 0}.filter-tabs,.type-tabs{gap:7px;display:flex}.filter-tabs button,.type-tabs button{color:#71839a;background:#fff;border:1px solid #dce7f1;border-radius:8px;padding:8px 10px;font-size:11px;font-weight:800}.filter-tabs button.selected{color:#fff;background:#1b77dc;border-color:#1b77dc}.transaction-panel{min-height:500px}.transaction-rows.full{margin-top:8px}.transaction-rows.full .transaction-row{grid-template-columns:38px minmax(150px,1fr) 130px auto auto auto;padding:15px 2px}.transaction-rows.full .transaction-icon{width:34px;height:34px}.transaction-rows.full .transaction-main strong{font-size:13px}.management{grid-template-columns:1fr 1.5fr;align-items:start}.add-management{gap:23px;display:grid}.add-management form{gap:9px;display:grid}.add-management input,.add-management select,.dialog input,.dialog select{color:#203b58;background:#fbfdff;border:1px solid #dce7f1;border-radius:9px;outline:0;width:100%;padding:10px;font-size:13px}.add-management input:focus,.add-management select:focus,.dialog input:focus,.dialog select:focus{border-color:#3f98ea;box-shadow:0 0 0 3px #1d84e51a}.management-grid{gap:10px;display:grid}.management-row{background:#fff;border:1px solid #e2ecf5;border-radius:13px;align-items:center;gap:11px;padding:12px;display:flex}.management-row div{min-width:0}.management-row strong{color:#243e5b;font-size:13px;display:block}.management-row small{color:#8493a6;margin-top:3px;font-size:10px;display:block}.management-row b{color:#2a4866;margin-left:auto;font:500 10px DM Mono,monospace}.management-row button{color:#8494a5;background:#f3f6f9;border:0;border-radius:7px;margin-left:auto;padding:6px;font-size:10px}.management-row b+button{margin-left:8px}.settings-panel{max-width:700px}.settings-panel>div{color:#78899d;border-bottom:1px solid #edf2f7;justify-content:space-between;padding:16px 0;font-size:12px;display:flex}.settings-panel strong{color:#27425e}.muted{color:#75869b;font-size:13px;line-height:1.6}.dialog-backdrop{z-index:20;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a213f88;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog{background:#fff;border-radius:18px;width:min(100%,520px);max-height:calc(100vh - 40px);padding:25px;overflow:auto;box-shadow:0 30px 70px #091c3499}.dialog header{justify-content:space-between;align-items:start;margin-bottom:20px;display:flex}.dialog form{gap:14px;display:grid}.dialog label{color:#526d88;gap:6px;font-size:11px;font-weight:800;display:grid}.type-tabs{padding-bottom:2px;overflow:auto}.type-tabs .selected{color:#fff;background:#1a77df;border-color:#1a77df}.type-tabs .type-expense.selected{background:#d2624c;border-color:#d2624c}.type-tabs .type-income.selected{background:#0b8a63;border-color:#0b8a63}.form-error{color:#a23b2e;background:#fff0ed;border-radius:8px;margin:0;padding:10px;font-size:12px}.demo-banner,.error-banner{color:#66521f;background:#fff2cf;border-radius:10px;max-width:1380px;margin:0 auto 18px;padding:10px 13px;font-size:12px;font-weight:700}.error-banner{color:#a54030;background:#fff0ed;justify-content:space-between;display:flex}.error-banner button{color:inherit;background:0 0;border:0;font-weight:800}.loading-grid{grid-template-columns:repeat(4,1fr);gap:16px;max-width:1380px;margin:auto;display:grid}.loading-grid i{background:linear-gradient(100deg,#fff 25%,#f1f6fa 37%,#fff 63%) 0 0/400% 100%;border-radius:15px;height:136px;animation:1.1s infinite shimmer}.screen-center{color:#66809a;background:#eff6fc;place-content:center;justify-items:center;min-height:100vh;display:grid}.loading-mark{color:#fff;background:#1978df;border-radius:16px;place-items:center;width:52px;height:52px;font:700 30px Fraunces,serif;display:grid}.sign-in{background:#f6fbff;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);min-height:100vh;display:grid}.sign-in>section{align-content:center;justify-items:start;max-width:530px;margin:auto;padding:42px;display:grid}.sign-in h1{color:#102c4d;margin:15px 0;font:600 clamp(39px,5vw,67px)/1.02 Fraunces,serif}.sign-in .brand-mark{margin-bottom:40px}.sign-in .muted{max-width:410px;margin:0 0 25px}.google-button{color:#173758;background:#fff;padding:13px 16px;box-shadow:0 8px 22px #1f4d7a1a}.google-button span{color:#4285f4;place-items:center;width:21px;height:21px;font-weight:900;display:grid}.sign-in small{color:#8b9cae;margin-top:18px}.sign-in aside{background:radial-gradient(circle at 72% 21%,#4da3ee,#0000 30rem),linear-gradient(145deg,#102e50,#0d5eaf);place-items:center;display:grid;overflow:hidden}.sign-in-card{color:#d9edff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff12;border:1px solid #ffffff2b;border-radius:23px;width:min(80%,390px);padding:31px;box-shadow:0 30px 60px #071d3d55}.sign-in-card span,.sign-in-card p{color:#b8d7f3;font-size:12px}.sign-in-card strong{color:#fff;margin:9px 0 31px;font:600 33px Fraunces,serif;display:block}.sign-in-card div{align-items:end;gap:9px;height:80px;display:flex}.sign-in-card i{background:#8cd0ff;border-radius:8px 8px 0 0;width:11%}.sign-in-card i:first-child{height:25%}.sign-in-card i:nth-child(2){height:47%}.sign-in-card i:nth-child(3){height:36%}.sign-in-card i:nth-child(4){height:73%}.sign-in-card i:nth-child(5){height:56%}.sign-in-card i:nth-child(6){height:100%}@keyframes shimmer{to{background-position-x:-400%}}.mobile-nav{display:none}@media (width<=1050px){.summary-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.dashboard-grid.lower,.management{grid-template-columns:1fr}.main-content{padding:28px 25px 100px}.transaction-rows.full .transaction-row{grid-template-columns:38px 1fr auto auto}.transaction-rows.full time,.transaction-rows.full .delete-row{display:none}}@media (width<=760px){.sidebar{width:270px;transition:transform .2s;transform:translate(-100%);box-shadow:15px 0 38px #0b294155}.sidebar.open{transform:translate(0)}.close-menu,.mobile-menu{display:grid}.main-content{width:100%;margin:0;padding:20px 17px 95px}.topbar{margin-bottom:22px}.topbar h1{font-size:25px}.topbar-actions .review-button{display:none}.topbar-actions .primary-button{padding:10px;font-size:0}.topbar-actions .primary-button svg{margin:0}.summary-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{min-height:110px;padding:14px}.stat-card span{width:27px;height:27px;margin-bottom:9px}.stat-card strong{font-size:15px}.stat-card p{font-size:10px}.panel{padding:17px}.panel h2{font-size:18px}.flow-bars div{grid-template-columns:32px 1fr}.flow-bars b{text-align:left;grid-column:2}.category-bars div{grid-template-columns:105px 1fr}.category-bars strong{display:none}.transaction-row{grid-template-columns:32px minmax(100px,1fr) auto auto}.transaction-row time{display:none}.transaction-row>b{min-width:auto;font-size:9px}.transaction-panel{min-height:400px}.table-tools{display:grid}.search{min-width:0}.filter-tabs{overflow:auto}.management-row b{font-size:9px}.add-management form{grid-template-columns:1fr}.mobile-nav{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border:1px solid #dfe9f1;border-radius:17px;justify-content:space-around;align-items:end;padding:7px 4px;display:flex;position:fixed;bottom:10px;left:10px;right:10px;box-shadow:0 12px 25px #15395924}.mobile-nav button{color:#7790aa;background:0 0;border:0;justify-items:center;gap:3px;padding:5px 6px;font-size:8px;display:grid}.mobile-nav button svg{width:18px}.mobile-nav button.active{color:#1677dd}.mobile-nav button.add{color:#fff;background:#1677dd;border-radius:13px;place-items:center;width:38px;height:38px;margin-top:-20px;display:grid;box-shadow:0 7px 15px #1677dd66}.mobile-nav button.add svg{width:21px}.dialog-backdrop{align-items:end;padding:0}.dialog{border-radius:20px 20px 0 0;width:100%;max-height:90vh;padding:22px 18px 34px}.sign-in{grid-template-columns:1fr}.sign-in aside{display:none}.sign-in>section{padding:30px}.sign-in h1{font-size:45px}.sign-in .brand-mark{margin-bottom:28px}}
