:root{--bg: #f5f5f5;--bg-card: #fff;--text: #333;--text-secondary: #666;--border: #e0e0e0;--border-light: #f0f0f0;--input-border: #ccc;--link: #2563eb;--primary: #16a34a;--primary-hover: #15803d;--danger: #dc2626;--btn-secondary-bg: #e5e7eb;--btn-secondary-bg-hover: #d1d5db;--btn-secondary-text: #333;--shadow: rgba(0,0,0,.06);--shadow-md: rgba(0,0,0,.08);--modal-backdrop: rgba(0,0,0,.4);--tab-border: #e5e7eb;--navbar-hover: #f0f0f0;--progress-bg: #e5e7eb}[data-theme=dark]{--bg: #1a1a2e;--bg-card: #16213e;--text: #e0e0e0;--text-secondary: #a0a0b0;--border: #2a2a4a;--border-light: #2a2a4a;--input-border: #3a3a5a;--link: #60a5fa;--primary: #22c55e;--primary-hover: #16a34a;--danger: #ef4444;--btn-secondary-bg: #2a2a4a;--btn-secondary-bg-hover: #3a3a5a;--btn-secondary-text: #e0e0e0;--shadow: rgba(0,0,0,.2);--shadow-md: rgba(0,0,0,.3);--modal-backdrop: rgba(0,0,0,.6);--tab-border: #2a2a4a;--navbar-hover: #2a2a4a;--progress-bg: #2a2a4a}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg);color:var(--text);line-height:1.6;transition:background-color .2s,color .2s}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:800px;margin:0 auto;padding:20px}.navbar{background:var(--bg-card);border-bottom:1px solid var(--border);padding:12px 24px;display:flex;justify-content:space-between;align-items:center}.navbar h1{font-size:1.4rem;color:var(--primary)}.navbar button{background:none;border:1px solid var(--input-border);color:var(--text);padding:6px 14px;border-radius:4px;cursor:pointer}.navbar button:hover{background:var(--navbar-hover)}.form-card{background:var(--bg-card);border-radius:8px;padding:32px;max-width:400px;margin:60px auto;box-shadow:0 2px 8px var(--shadow-md)}.form-card h2{margin-bottom:20px;text-align:center}.form-card input{width:100%;padding:10px 12px;margin-bottom:14px;border:1px solid var(--input-border);border-radius:4px;font-size:.95rem;background:var(--bg);color:var(--text)}.form-card button{width:100%;padding:10px;background:var(--primary);color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer}.form-card button:hover{background:var(--primary-hover)}.form-card p{text-align:center;margin-top:14px;font-size:.9rem}.error-msg{color:var(--danger);font-size:.85rem;margin-bottom:10px;text-align:center}.card{background:var(--bg-card);border-radius:8px;padding:20px;margin-bottom:12px;box-shadow:0 1px 4px var(--shadow)}.card h3{margin-bottom:6px}.card .meta{color:var(--text-secondary);font-size:.85rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h2{font-size:1.3rem}.btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text)}.btn-secondary:hover{background:var(--btn-secondary-bg-hover)}.btn:disabled{opacity:.5;cursor:not-allowed}.inline-form{display:flex;gap:8px;margin-bottom:16px}.inline-form input{flex:1;padding:8px 12px;border:1px solid var(--input-border);border-radius:4px;background:var(--bg);color:var(--text)}.balance-positive{color:var(--primary);font-weight:600}.balance-negative{color:var(--danger);font-weight:600}.balance-zero{color:var(--text-secondary)}.expense-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--border-light)}.expense-item:last-child{border-bottom:none}.card>div:last-child{border-bottom:none!important}.tabs{display:flex;gap:0;margin-bottom:20px;border-bottom:2px solid var(--tab-border)}.tab{padding:10px 20px;cursor:pointer;background:none;border:none;font-size:.95rem;color:var(--text-secondary);border-bottom:2px solid transparent;margin-bottom:-2px}.tab.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--modal-backdrop);display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--bg-card);border-radius:8px;padding:24px;width:90%;max-width:420px;box-shadow:0 4px 20px #00000026}.modal h3{margin-bottom:16px}.modal input{width:100%;padding:10px 12px;margin-bottom:12px;border:1px solid var(--input-border);border-radius:4px;font-size:.95rem;background:var(--bg);color:var(--text)}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}select{background:var(--bg);color:var(--text);border:1px solid var(--input-border)}.theme-toggle{background:none;border:1px solid var(--input-border);color:var(--text);padding:4px 10px;border-radius:4px;cursor:pointer;font-size:.85rem}.theme-toggle:hover{background:var(--navbar-hover)}@media (max-width: 600px){.container{padding:12px}.navbar{padding:10px 14px}.navbar h1{font-size:1.2rem}.inline-form{flex-wrap:wrap}.inline-form input,.inline-form select{min-width:0}.section-header h2{font-size:1.1rem}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.tab{padding:8px 14px;font-size:.85rem;white-space:nowrap}.expense-item{gap:8px}.form-card{margin:20px auto;padding:20px}}
