:root{--bg: #f5f6f8;--bg-card: #ffffff;--bg-hover: #f2efff;--bg-input: #ffffff;--border: #f2f3f5;--text: #0f172a;--text-muted: #6b7280;--text-secondary: #4b5563;--primary: #6c4dff;--primary-hover: #5b3ef4;--primary-light: rgba(108, 77, 255, .1);--danger: #ef4444;--danger-hover: #dc2626;--success: #22c55e;--warning: #f59e0b;--radius: 6px;--radius-sm: 8px;--shadow: 0 .125rem 0 rgba(10, 10, 10, .04)}[data-theme=dark]{--bg: #0f172a;--bg-card: #111827;--bg-hover: #1e293b;--bg-input: #1e293b;--border: #334155;--text: #f8fafc;--text-muted: #94a3b8;--text-secondary: #64748b;--primary: #6c4dff;--primary-hover: #5b3ef4;--primary-light: rgba(108, 77, 255, .15);--danger: #ef4444;--danger-hover: #dc2626;--success: #22c55e;--warning: #f59e0b;--shadow: 0 .125rem 0 rgba(10, 10, 10, .08)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);min-height:100vh}input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;border:1.5px solid #d0d4db;border-radius:4px;cursor:pointer;position:relative;transition:all .15s;flex-shrink:0;margin:0;background:var(--bg-input)}input[type=checkbox]:hover{border-color:var(--primary)}input[type=checkbox]:checked{background:var(--primary);border-color:var(--primary)}input[type=checkbox]:checked:after{content:"";position:absolute;top:2px;left:5.5px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:16px;color:var(--text-muted)}.spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}.login-card{background:var(--bg-card);border:1px solid var(--border);border-radius:28px;padding:40px;width:100%;max-width:400px;box-shadow:var(--shadow)}.login-card h1{font-size:24px;margin-bottom:4px;text-align:center}.login-card .subtitle{color:var(--text-muted);text-align:center;font-size:14px;margin-bottom:28px}.login-card label{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:var(--text-muted)}.login-card input{width:100%;padding:12px 16px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:14px;margin-bottom:16px;outline:none;transition:border-color .15s,box-shadow .15s}.login-card input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #6c4dff0f}.login-card .error{background:#ef44441a;color:var(--danger);padding:10px;border-radius:var(--radius-sm);font-size:13px;margin-bottom:16px;border:1px solid rgba(239,68,68,.2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:12px 24px;border:none;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none}.btn-primary{background:var(--primary);color:#fff;width:100%}.btn-primary:hover{background:var(--primary-hover)}.btn-sm{padding:8px 16px;font-size:12px}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:var(--danger-hover)}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border)}.btn-ghost:hover{background:var(--bg-hover);color:var(--text)}.btn-icon{background:transparent;border:none;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);color:var(--text-muted);font-size:16px;transition:all .2s}.btn-icon:hover{background:var(--bg-hover);color:var(--danger)}.header-icon-btn{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--text-muted);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.header-icon-btn:hover{background:var(--bg-hover);color:var(--text)}.user-menu-wrapper{position:relative}.user-menu-trigger{width:32px;height:32px;border-radius:50%;border:none;background:var(--bg-hover);color:var(--text);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.user-menu-trigger:hover{background:var(--primary);color:#fff}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);z-index:200;overflow:hidden}.user-menu-item{display:block;width:100%;padding:10px 16px;border:none;background:none;font-size:13px;text-align:left;cursor:pointer;color:var(--text);transition:background .15s}.user-menu-item:hover{background:var(--bg-hover)}.user-menu-item.name{font-weight:600;color:var(--text-muted);cursor:default}.user-menu-item.name:hover{background:none}.user-menu-divider{height:1px;background:var(--border);margin:0}.fin-summary-bar{display:flex;gap:16px;padding:10px 24px;background:var(--bg-card);border-bottom:1px solid var(--border);font-size:13px;overflow-x:auto;flex-wrap:wrap}.fin-summary-bar .fin-summary-label{font-weight:600}.fin-summary-bar .fin-summary-sep{color:var(--text-muted)}.fin-summary-bar .fin-summary-income{color:var(--success)}.fin-summary-bar .fin-summary-expense{color:var(--danger)}.home-actions{display:flex;gap:12px;align-items:center;justify-content:center}.home-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width: 768px){.home-bottom-grid{grid-template-columns:1fr}}.lists-content{max-width:800px}.tx-month-nav{display:flex;align-items:center;gap:12px}.dashboard{min-height:100vh;display:flex;flex-direction:column}.dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:var(--bg-card);border-bottom:1px solid var(--border)}.dashboard-header h1{font-size:18px;display:flex;align-items:center;gap:8px}.header-right{display:flex;align-items:center;gap:16px}.header-right span{color:var(--text-muted);font-size:14px}.tabs{display:flex;background:var(--bg-card);border-bottom:1px solid var(--border);padding:0 24px}.tab{padding:14px 24px;font-size:14px;font-weight:500;cursor:pointer;color:var(--text-muted);border-bottom:2px solid transparent;transition:all .2s;background:none;border-top:none;border-left:none;border-right:none}.tab:hover{color:var(--text);background:var(--bg-hover)}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.tab-content{flex:1;padding:24px;overflow-y:auto}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.card .card{box-shadow:none}.card-header{display:flex;align-items:center;justify-content:flex-start;margin-bottom:16px;gap:12px}.card-header h2{font-size:18px;font-weight:600;white-space:nowrap}.card-header .btn{width:auto;white-space:nowrap}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:0}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px;text-align:center}.stat-card .stat-value{display:block;font-size:22px;font-weight:700;color:var(--primary)}.stat-card .stat-label{display:block;font-size:10px;color:var(--text-muted);margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;align-items:center}.filters input,.filters select{padding:8px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:13px;outline:none;min-width:120px;transition:border-color .15s,box-shadow .15s}.filters input:focus,.filters select:focus{border-color:var(--primary);box-shadow:0 0 0 2px #6c4dff0f}.filters input::placeholder{color:var(--text-muted)}.table-wrapper{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}thead th{text-align:left;padding:10px 12px;font-weight:600;color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}thead th:hover{color:var(--text)}tbody tr{border-bottom:1px solid var(--border);transition:background .15s}tbody tr:hover{background:var(--bg-hover)}tbody td{padding:10px 12px;vertical-align:middle}.amount{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.amount.positive{color:var(--success)}.amount.negative{color:var(--text)}.badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500}.badge-image{background:#6c4dff26;color:var(--primary)}.badge-text{background:#22c55e26;color:var(--success)}.badge-audio{background:#f59e0b26;color:var(--warning)}.badge-manual{background:#94a3b826;color:var(--text-muted)}.card-info{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500}.card-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.empty-state{text-align:center;padding:40px 20px;color:var(--text-muted)}.empty-state p{font-size:14px}.pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;font-size:13px;color:var(--text-muted)}.pagination button{padding:6px 12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;font-size:13px}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination button:hover:not(:disabled){background:var(--primary);border-color:var(--primary)}.pagination .page-info{padding:0 8px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:28px;padding:28px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0006}.modal h2{font-size:18px;margin-bottom:20px}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:12px;font-weight:500;color:var(--text-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.3px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:13px;outline:none;transition:border-color .15s,box-shadow .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px #6c4dff0f}.form-group textarea{resize:vertical;min-height:60px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.credit-card-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;align-items:center;gap:16px;transition:border-color .2s}.credit-card-item:hover{border-color:var(--primary)}.card-color-swatch{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.card-details{flex:1}.card-details .card-name{font-weight:600;font-size:15px}.card-details .card-meta{font-size:12px;color:var(--text-muted);margin-top:2px}.card-details .card-meta span{display:inline-block;margin-right:12px}.card-actions{display:flex;gap:4px}@media (max-width: 768px){.dashboard-header{padding:12px 16px}.tabs{padding:0 16px;overflow-x:auto}.tab-content{padding:16px}.stats-row{grid-template-columns:1fr 1fr}.form-row,.cards-grid{grid-template-columns:1fr}.filters{flex-direction:column}.filters input,.filters select{width:100%}}.header-switcher{display:flex;background:var(--bg-hover);padding:4px;border-radius:20px;border:1px solid var(--border)}.switch-btn{padding:6px 16px;font-size:13px;font-weight:500;cursor:pointer;border-radius:16px;border:none;background:transparent;color:var(--text-muted);transition:all .2s}.switch-btn:hover{color:var(--text)}.switch-btn.active{background:var(--bg-card);color:var(--primary);box-shadow:var(--shadow)}.home-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width: 768px){.home-grid{grid-template-columns:1fr}}.home-summary-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.quick-actions-row{display:flex;gap:12px;margin-top:16px}.tasks-container{display:grid;grid-template-columns:240px 1fr;gap:20px;align-items:start}.tasks-content{max-width:800px}@media (max-width: 768px){.tasks-container{grid-template-columns:1fr}}.task-list{display:flex;flex-direction:column;gap:10px}.task-item{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;padding:8px 16px;display:flex;align-items:center;justify-content:space-between;transition:transform .15s,border-color .15s}.task-item:hover{border-color:var(--primary)}.task-item.completed{opacity:.6}.task-item-left{display:flex;align-items:center;gap:12px}.task-item-left input[type=checkbox]{width:18px;height:18px;cursor:pointer}.task-item-content{display:flex;flex-direction:column}.task-title{font-weight:600;font-size:14px}.task-item.completed .task-title{text-decoration:line-through}.task-desc{font-size:12px;color:var(--text-muted);margin-top:2px}.task-meta{display:flex;gap:8px;align-items:center;margin-top:4px}.priority-tag{font-size:10px;padding:1px 6px;border-radius:4px;font-weight:700;text-transform:uppercase}.priority-high{background:#ef444426;color:var(--danger)}.priority-medium{background:#f59e0b26;color:var(--warning)}.priority-low{background:#6c4dff26;color:var(--primary)}.lists-content textarea:focus,.lists-content input:focus{border-color:var(--primary)!important;box-shadow:0 0 0 2px #6c4dff0f!important;outline:none!important;transition:border-color .15s,box-shadow .15s}.switch-icon,.tab-icon{width:14px;height:14px;margin-right:4px;vertical-align:middle;display:inline-block}.header-mobile-title{display:none}@media (max-width: 768px){.dashboard{padding-bottom:74px!important}.header-logo{display:none!important}.header-mobile-title{display:flex!important;align-items:center!important;font-size:1.25rem!important;font-weight:700!important;color:var(--text)!important;font-family:inherit}.mobile-hidden{display:none!important}.header-switcher{position:fixed!important;bottom:0!important;left:0!important;right:0!important;height:64px!important;background:var(--bg-card)!important;border:none!important;border-top:1px solid var(--border)!important;border-radius:0!important;padding:4px 8px!important;display:flex!important;justify-content:space-around!important;align-items:center!important;box-shadow:0 -2px 12px #00000014!important;z-index:1000!important}.switch-btn{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;flex:1!important;padding:4px 0!important;height:100%!important;border-radius:8px!important;font-size:10px!important;font-weight:600!important;gap:2px!important;background:transparent!important;border:none!important}.switch-btn.active{background:transparent!important;color:var(--primary)!important;box-shadow:none!important}.switch-icon{width:22px!important;height:22px!important;margin-right:0!important;margin-bottom:2px!important}.tabs{padding:0 8px!important;overflow-x:auto!important;white-space:nowrap!important;flex-wrap:nowrap!important;scrollbar-width:none!important}.tabs::-webkit-scrollbar{display:none!important}.tab{padding:12px 16px!important;font-size:13px!important;flex-shrink:0!important;border-bottom:2px solid transparent!important}.tab.active{border-bottom-color:var(--primary)!important}.tab-icon{width:14px!important;height:14px!important;margin-right:4px!important}.calendar-container,.lists-container{flex-direction:column!important;align-items:stretch!important}.calendar-container>.card,.lists-container>.card{max-width:100%!important;min-width:100%!important;flex:1!important}.card-header{flex-wrap:wrap!important;justify-content:space-between!important;align-items:center!important;gap:8px!important}.card-header h2{font-size:15px!important;white-space:normal!important}.table-wrapper{width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;margin-bottom:12px!important}.table-wrapper table{min-width:650px!important}.transactions-grid-container{grid-template-columns:1fr!important}.task-item{flex-direction:column!important;align-items:flex-start!important;gap:12px!important}.task-item>div:last-child{width:100%!important;justify-content:flex-end!important;display:flex!important}}.calendar-container,.lists-container{display:flex;gap:20px;align-items:flex-start}.transactions-grid-container{display:grid;grid-template-columns:1fr 350px;gap:20px;align-items:start}
