@import "https://fonts.googleapis.com/css2?family=Inter+Tight:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg:#0a1118;--bg-elev:#0f1923;--accent:#58c0bf;--accent-rgb:88, 192, 191;--fg:#e8edf2;--fg-muted:#9aa8b6;--border:#ffffff14;--success:#22c55e;--error:#ef4444;--font-sans:"Inter Tight", "Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", monospace;--radius-lg:16px;--radius-sm:6px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg);color:var(--fg);font-family:var(--font-sans);min-height:100vh;line-height:1.5;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:#58c0bf4d}.auth-container{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:440px;padding:40px 32px;animation:.8s cubic-bezier(.2,.7,.2,1) revealUp;box-shadow:0 20px 40px #00000080}.auth-title{background:linear-gradient(135deg, #fff 30%, var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:8px;font-size:2rem;font-weight:700}.auth-subtitle{color:var(--fg-muted);margin-bottom:32px;font-size:.95rem}.form-group{flex-direction:column;margin-bottom:20px;display:flex}.form-label{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.85rem;font-weight:500}.form-input{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--fg);font-family:var(--font-sans);background:#ffffff08;outline:none;padding:12px 16px;font-size:1rem;transition:all .3s}.form-input:focus{border-color:var(--accent);background:#ffffff0d;box-shadow:0 0 12px #58c0bf26}.form-select{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--fg);font-family:var(--font-sans);cursor:pointer;outline:none;padding:12px 16px;font-size:1rem;transition:all .3s}.form-select:focus{border-color:var(--accent);box-shadow:0 0 12px #58c0bf26}.btn{background:var(--accent);color:var(--bg);border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .3s cubic-bezier(.2,.8,.2,1);display:inline-flex}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #58c0bf4d}.btn:active{transform:translateY(0)}.btn-secondary{color:var(--fg);border:1px solid var(--border);background:0 0}.btn-secondary:hover{border-color:var(--fg-muted);box-shadow:none;background:#ffffff0d}.auth-footer{text-align:center;color:var(--fg-muted);margin-top:24px;font-size:.9rem}.auth-link{color:var(--accent);cursor:pointer;font-weight:500;text-decoration:none}.auth-link:hover{text-decoration:underline}.dashboard-container{max-width:1400px;margin:0 auto;padding:40px 24px;animation:.9s cubic-bezier(.2,.7,.2,1) revealUp}.dashboard-header{justify-content:space-between;align-items:center;margin-bottom:40px;display:flex}.user-info{align-items:center;gap:12px;display:flex}.user-name{font-size:1.5rem;font-weight:600}.bento-grid{grid-template-columns:repeat(12,1fr);gap:20px;display:grid}.bento-item{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;padding:28px;transition:all .3s cubic-bezier(.2,.8,.2,1);display:flex}.bento-item:hover{border-color:#58c0bf40;box-shadow:0 10px 30px #0003}.col-12{grid-column:span 12}.col-8{grid-column:span 8}.col-6{grid-column:span 6}.col-4{grid-column:span 4}@media (width<=1024px){.col-8,.col-6,.col-4{grid-column:span 12}}.balance-container{grid-template-columns:repeat(3,1fr);gap:24px;width:100%;display:grid}@media (width<=768px){.balance-container{grid-template-columns:1fr}}.stat-card{padding:16px 0}.stat-label{text-transform:uppercase;color:var(--fg-muted);letter-spacing:.05em;margin-bottom:8px;font-size:.85rem}.stat-value{font-size:2.2rem;font-weight:700;font-family:var(--font-mono)}.stat-value.income{color:var(--success)}.stat-value.expense{color:var(--error)}.section-title{align-items:center;gap:10px;margin-bottom:24px;font-size:1.25rem;font-weight:600;display:flex}.transaction-list{flex-direction:column;gap:12px;max-height:400px;padding-right:4px;display:flex;overflow-y:auto}.transaction-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff05;justify-content:space-between;align-items:center;padding:16px;transition:all .2s;display:flex}.transaction-item:hover{background:#ffffff0a;border-color:#ffffff26}.transaction-info{flex-direction:column;gap:4px;display:flex}.transaction-desc{font-weight:500}.transaction-meta{color:var(--fg-muted);gap:12px;font-size:.8rem;display:flex}.transaction-category{background:#ffffff0f;border-radius:4px;padding:2px 8px}.transaction-amount{font-weight:600;font-family:var(--font-mono)}.transaction-amount.income{color:var(--success)}.transaction-amount.expense{color:var(--error)}.delete-btn{color:var(--fg-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex}.delete-btn:hover{color:var(--error);background:#ef44441a}.chart-container{flex-direction:column;gap:16px;margin-top:12px;display:flex}.chart-bar-group{flex-direction:column;gap:8px;display:flex}.chart-bar-info{justify-content:space-between;font-size:.9rem;display:flex}.chart-bar-bg{background:#ffffff0d;border-radius:5px;height:10px;overflow:hidden}.chart-bar-fill{background:var(--accent);border-radius:5px;height:100%;transition:width 1s cubic-bezier(.2,.8,.2,1)}@keyframes revealUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1;box-shadow:0 0 10px #58c0bf33}}.empty-state{text-align:center;color:var(--fg-muted);padding:40px 0}.landing-container{max-width:1200px;margin:0 auto;padding:60px 24px;animation:.9s cubic-bezier(.2,.7,.2,1) revealUp}.landing-nav{justify-content:space-between;align-items:center;margin-bottom:80px;display:flex}.landing-logo{letter-spacing:-.02em;background:linear-gradient(135deg, #fff 40%, var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.5rem;font-weight:700}.hero-section{text-align:center;max-width:800px;margin-bottom:100px;margin-left:auto;margin-right:auto}.hero-title{letter-spacing:-.03em;background:linear-gradient(to right, #fff, var(--fg-muted), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:24px;font-size:3.5rem;font-weight:800;line-height:1.15}.hero-subtitle{color:var(--fg-muted);margin-bottom:40px;font-size:1.25rem;line-height:1.6}.features-title{text-align:center;letter-spacing:-.02em;margin-bottom:48px;font-size:2rem;font-weight:700}.feature-icon-wrapper{color:var(--accent);border-radius:var(--radius-sm);background:#58c0bf1a;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:20px;display:flex}.feature-title{margin-bottom:12px;font-size:1.25rem;font-weight:600}.feature-desc{color:var(--fg-muted);font-size:.95rem;line-height:1.5}.landing-footer{border-top:1px solid var(--border);text-align:center;color:var(--fg-muted);margin-top:120px;padding-top:40px;font-size:.9rem}
