*{margin:0;padding:0;box-sizing:border-box}body{background:linear-gradient(135deg,#232526,#414345);color:#f5f6fa;font-family:Inter,Segoe UI,Arial,sans-serif;min-height:100vh}main{max-width:600px;margin:40px auto;background:#222428f2;border-radius:18px;box-shadow:0 8px 32px #2c3e502e;padding:32px 24px;transition:box-shadow .3s}h1{text-align:center;color:#fff;margin-bottom:8px;font-size:2.8rem;font-weight:700;letter-spacing:1px;transition:color .3s}h1 span{font-size:1.1rem;color:#a5b4fc;margin-left:2px}form{margin-top:24px;animation:fadeIn .7s}.amount{display:flex;gap:8px;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}form input[type=number],form input[type=text],form input[type=datetime-local]{width:100%;background:#31363fd9;color:#f5f6fa;border:2px solid #30313d;padding:10px 12px;border-radius:8px;font-size:1rem;margin-bottom:8px;transition:border-color .2s,background .2s}form input:focus{border-color:#6366f1;background:#31363f;outline:none}.basic{display:flex;gap:8px;margin-bottom:8px;flex-wrap:wrap;align-items:center}form label{font-size:1.2rem;color:#a5b4fc;margin-right:2px;cursor:pointer}form input[type=radio]{accent-color:#6366f1;margin-right:8px;margin-left:2px;transform:scale(1.2)}form button{width:100%;margin-top:8px;border:none;padding:12px;border-radius:8px;background:linear-gradient(90deg,#6366f1,#60a5fa);color:#fff;font-size:1.1rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #6366f114;transition:background .2s,box-shadow .2s}form button:hover{background:linear-gradient(90deg,#60a5fa,#6366f1);box-shadow:0 4px 16px #6366f126}.transactions{margin-top:24px}.transaction{display:flex;justify-content:space-between;align-items:flex-start;margin-top:16px;padding:16px 12px;background:#31363fd9;border-radius:12px;box-shadow:0 2px 8px #2c3e5014;border-top:1px solid #30313d;animation:slideUp .5s;transition:box-shadow .2s,background .2s}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.transaction:first-child{border-top:none}.transaction .name{font-size:1.15rem;font-weight:500;color:#fff;margin-bottom:2px}.transaction .description{font-size:.85rem;color:#a5b4fc;margin-top:2px}.transaction .right{text-align:right;min-width:90px}.transaction .dateTime{font-size:.75rem;color:#94a3b8;margin-top:2px}.transaction .price.green{color:#22c55e;font-weight:600;font-size:1.1rem;letter-spacing:1px;transition:color .2s}.transaction .price.red{color:#ef4444;font-weight:600;font-size:1.1rem;letter-spacing:1px;transition:color .2s}@media (max-width: 600px){main{max-width:98vw;padding:18px 6px;margin:12px auto;border-radius:10px}h1{font-size:2rem}.transaction{flex-direction:column;gap:6px;padding:12px 8px}.transaction .right{min-width:unset;text-align:left}form input,form button{font-size:.98rem;padding:8px}}.navbar{max-width:1100px;margin:0 auto;padding:20px 24px 0;display:flex;justify-content:space-between;align-items:center}.navbar .brand{font-size:1.3rem;font-weight:700;color:#fff}.nav-user{display:flex;align-items:center;gap:12px;color:#a5b4fc}.link-button{background:none;border:none;color:#a5b4fc;cursor:pointer;font-size:.9rem;padding:0;text-decoration:underline}.link-button.danger{color:#ef4444}.centered-page{display:flex;justify-content:center;align-items:center;min-height:60vh;color:#a5b4fc}.auth-page{max-width:420px;margin:60px auto;background:#222428f2;border-radius:18px;box-shadow:0 8px 32px #2c3e502e;padding:32px 28px}.auth-form h1{font-size:1.6rem;margin-bottom:20px;text-align:left}.auth-form label{display:block;margin-bottom:14px;font-size:.9rem;color:#a5b4fc}.auth-form input{width:100%;margin-top:6px;background:#31363fd9;color:#f5f6fa;border:2px solid #30313d;padding:10px 12px;border-radius:8px;font-size:1rem}.auth-form button{width:100%;margin-top:8px;border:none;padding:12px;border-radius:8px;background:linear-gradient(90deg,#6366f1,#60a5fa);color:#fff;font-size:1.05rem;font-weight:600;cursor:pointer}.auth-form button:disabled{opacity:.6;cursor:not-allowed}.auth-switch{margin-top:16px;text-align:center;font-size:.9rem;color:#94a3b8}.auth-switch a{color:#a5b4fc}.field-error{display:block;color:#ef4444;font-size:.8rem;margin-top:4px}.dashboard{max-width:1100px;margin:24px auto 60px;display:flex;flex-direction:column;gap:20px;padding:0 16px}.panel{background:#222428f2;border-radius:18px;box-shadow:0 8px 32px #2c3e502e;padding:24px}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.panel-header h2{font-size:1.2rem;color:#fff}button.secondary{background:#6366f126;color:#a5b4fc;border:1px solid #6366f1;padding:8px 14px;border-radius:8px;cursor:pointer;font-size:.9rem}.transaction-form select,.transaction-form input{width:100%;background:#31363fd9;color:#f5f6fa;border:2px solid #30313d;padding:10px 12px;border-radius:8px;font-size:1rem;margin-bottom:8px}.transaction-form .amount{display:flex;gap:8px;align-items:center}.sign-toggle{display:flex;gap:6px}.sign-btn{border:2px solid #30313d;background:#31363fd9;color:#94a3b8;padding:10px 14px;border-radius:8px;cursor:pointer;font-size:.9rem;white-space:nowrap}.sign-btn.active.income{background:#22c55e;border-color:#22c55e;color:#0b1e12;font-weight:600}.sign-btn.active.expense{background:#ef4444;border-color:#ef4444;color:#2a0b0b;font-weight:600}.form-actions{display:flex;gap:10px}.form-actions button[type=submit]{flex:1;border:none;padding:12px;border-radius:8px;background:linear-gradient(90deg,#6366f1,#60a5fa);color:#fff;font-size:1.05rem;font-weight:600;cursor:pointer}.form-actions button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}.summary-card{background:#31363fd9;border-radius:12px;padding:16px}.summary-label{font-size:.8rem;color:#94a3b8;margin-bottom:6px}.summary-value{font-size:1.3rem;font-weight:700;color:#fff}.summary-value.green{color:#22c55e}.summary-value.red{color:#ef4444}.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.chart-card{background:#31363f99;border-radius:12px;padding:16px}.chart-card.wide{grid-column:1 / -1}.chart-card h3{font-size:1rem;color:#a5b4fc;margin-bottom:8px}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.filters input,.filters select{background:#31363fd9;color:#f5f6fa;border:2px solid #30313d;padding:8px 10px;border-radius:8px;font-size:.9rem}.filters input[type=text]{flex:1;min-width:180px}.category-badge{display:inline-block;font-size:.7rem;color:#a5b4fc;background:#6366f126;border-radius:6px;padding:2px 8px;margin:4px 0}.item-actions{display:flex;gap:10px;margin-top:6px;justify-content:flex-end}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:20px;color:#94a3b8;font-size:.9rem}.pagination button{background:#6366f126;color:#a5b4fc;border:1px solid #6366f1;padding:6px 12px;border-radius:8px;cursor:pointer}.pagination button:disabled{opacity:.4;cursor:not-allowed}.empty-state{color:#94a3b8;text-align:center;padding:24px}@media (max-width: 700px){.charts-grid{grid-template-columns:1fr}}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
