*{box-sizing:border-box}html{background:#0b0710}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f5f3ff;background:#0b0710}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.app-shell{min-height:100vh;padding-bottom:84px}.topbar{height:72px;background:#0e0915;color:#fff;display:flex;align-items:center;padding:0 max(24px,calc((100vw - 1180px)/2));gap:24px;position:sticky;top:0;z-index:30;border-bottom:1px solid #2c203a;box-shadow:0 8px 30px #0008}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px}.brand-mark{width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,#7c3aed,#a855f7);display:grid;place-items:center;color:#fff;box-shadow:0 8px 24px #7c3aed55}.desktop-nav{display:flex;gap:18px;margin-left:auto}.desktop-nav a{opacity:.78;font-size:14px}.desktop-nav a:hover{opacity:1;color:#c4b5fd}.top-actions{display:flex;align-items:center;gap:10px}.user-chip{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c4b5fd;font-size:12px}.install-btn{border:1px solid #7c3aed66;background:#7c3aed20;color:#e9ddff;border-radius:999px;padding:9px 14px;cursor:pointer}.content{width:min(1180px,calc(100% - 32px));margin:28px auto 0}.page-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:20px}.page-head h1{margin:4px 0 0;font-size:30px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.1em;color:#a78bfa}.page-head input[type=month]{background:#17121f;border:1px solid #342743;color:#f5f3ff;border-radius:12px;padding:10px 12px;color-scheme:dark}.balance-hero{background:linear-gradient(135deg,#26113f,#5b21b6 55%,#7c3aed);color:white;border-radius:26px;padding:28px;display:flex;flex-direction:column;box-shadow:0 18px 45px #7c3aed30;border:1px solid #8b5cf64f}.balance-hero span{font-size:13px;font-weight:800;letter-spacing:.05em}.balance-hero strong{font-size:44px;line-height:1.15;margin:12px 0 4px}.balance-hero small{color:#ddd6fe}.stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin:18px 0}.stat{background:#17121f;border:1px solid #2c2238;border-radius:18px;padding:18px;min-height:112px;box-shadow:0 8px 24px #0004}.stat span{display:block;font-size:12px;font-weight:800;text-transform:uppercase;color:#a8a0b5}.stat strong{display:block;margin-top:14px;font-size:21px}.income strong,.positive{color:#c4b5fd}.expense strong,.negative{color:#fb7185}.eventual strong{color:#fbbf24}.bills strong{color:#a78bfa}.invest strong{color:#60a5fa}.patrimony strong{color:#e879f9}.card{background:#17121f;border:1px solid #2c2238;border-radius:20px;padding:20px;box-shadow:0 10px 30px #0004;margin-bottom:18px}.comparison{display:flex;justify-content:space-between;align-items:center}.comparison p{margin:4px 0 0}.section-title{display:flex;align-items:center;justify-content:space-between;margin-top:24px}.section-title h2,.card h2{font-size:18px;margin:0 0 14px}.list-row{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #2a2134}.list-row:last-child{border:0}.list-row small,.investment-card small,td small{display:block;color:#91899e;margin-top:3px}.quick-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:20px}.quick{background:#17121f;border:1px solid #342743;border-radius:16px;padding:18px;text-align:center;font-weight:700;box-shadow:0 8px 25px #0004}.quick:hover{border-color:#7c3aed;color:#c4b5fd}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.form-grid label,.stack label{font-size:13px;font-weight:700;color:#b5adbf;display:flex;flex-direction:column;gap:7px}.form-grid input,.form-grid select,.stack input,.inline-form input{width:100%;border:1px solid #392c49;border-radius:12px;padding:11px 12px;background:#100c16;color:#f5f3ff;color-scheme:dark}.form-grid input:focus,.form-grid select:focus,.stack input:focus,.inline-form input:focus{outline:2px solid #7c3aed88;border-color:#8b5cf6}.full{grid-column:1/-1}.check{flex-direction:row!important;align-items:center}.check input{width:auto}.btn{border:0;border-radius:12px;padding:11px 17px;font-weight:800;cursor:pointer;display:inline-flex;justify-content:center;align-items:center}.btn.primary{background:linear-gradient(135deg,#7c3aed,#9333ea);color:white;box-shadow:0 8px 20px #7c3aed38}.btn.secondary{background:#2a1d3b;color:#d8b4fe;border:1px solid #5b3b79}.btn.small{padding:8px 11px;font-size:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:720px}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid #2a2134;font-size:14px}th{font-size:11px;text-transform:uppercase;color:#93899f}.badge{font-size:10px;font-weight:800;background:#2a2230;border-radius:999px;padding:4px 7px}.badge.paid{background:#302249;color:#c4b5fd}.badge.pending{background:#3b2d18;color:#fbbf24}.row-actions{display:flex;gap:8px}.row-actions form{margin:0}.link-btn,.card-link{border:0;background:transparent;color:#a78bfa;padding:4px;cursor:pointer;font-weight:700}.link-btn.danger{color:#fb7185}.cards-grid,.investment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.credit-card{min-height:180px;border-radius:22px;padding:22px;color:white;background:linear-gradient(135deg,#120b1c,#4c1d95 55%,#7c3aed);display:flex;flex-direction:column;box-shadow:0 18px 35px #0006;border:1px solid #8b5cf655}.credit-card strong{font-size:24px;margin:28px 0 6px}.credit-card small{opacity:.8}.card-link{color:#e9d5ff;text-align:left;margin-top:auto;padding:10px 0 0}.investment-card h3{margin:6px 0 18px}.investment-values{display:flex;gap:28px}.investment-values strong{display:block;margin-top:4px}.investment-card details{margin-top:18px}.inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.inline-form input{width:auto;flex:1;min-width:120px}.big-number{font-size:26px;font-weight:800;color:#c4b5fd}.alert{padding:12px 15px;border-radius:12px;margin-bottom:15px}.alert.ok{background:#2d2142;color:#d8b4fe;border:1px solid #6d4d91}.alert.error{background:#3b1720;color:#fda4af;border:1px solid #6b2534}.muted{color:#98909f}.small{font-size:12px}.auth-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,#3b1763,#130b1d 48%,#0b0710 48.1%)}.auth-card{width:min(430px,100%);background:#17121f;padding:30px;border-radius:24px;border:1px solid #352745;box-shadow:0 26px 80px #000a}.auth-card h1{font-size:28px;margin:24px 0 8px}.auth-brand{color:#e9d5ff}.auth-switch a{color:#c4b5fd}.stack{display:grid;gap:14px;margin-top:24px}.bottom-nav{display:none}
@media(max-width:900px){.desktop-nav{display:none}.stats-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr 1fr}.cards-grid,.investment-grid{grid-template-columns:1fr 1fr}.quick-grid{grid-template-columns:repeat(3,1fr)}.user-chip{display:none}}
@media(max-width:600px){.app-shell{padding-bottom:92px}.topbar{height:64px;padding:0 16px}.brand span:last-child{display:none}.top-actions{margin-left:auto}.install-btn{font-size:12px}.content{width:calc(100% - 24px);margin-top:18px}.page-head{align-items:center}.page-head h1{font-size:25px}.balance-hero{border-radius:22px;padding:24px}.balance-hero strong{font-size:36px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:15px;min-height:105px}.stat strong{font-size:18px}.comparison{align-items:flex-start}.quick-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.cards-grid,.investment-grid{grid-template-columns:1fr}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:78px;background:#100c16;border-top:1px solid #2c2238;display:flex;z-index:40;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -8px 28px #0007}.bottom-nav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10px;color:#9d94a8}.bottom-nav span{font-size:21px}.bottom-nav .launch span{width:45px;height:45px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#9333ea);color:#fff;display:grid;place-items:center;font-size:28px;margin-top:-22px;box-shadow:0 7px 18px #7c3aed66}.bottom-nav .launch{color:#c4b5fd}.auth-body{background:linear-gradient(#241136 0 28%,#0b0710 28%)}.auth-card{padding:24px}.table-wrap{margin:0 -12px}.page-head input[type=month]{max-width:138px}}
