*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root,[data-theme=dark]{--bg: #0f1117;--surface: #1a1d27;--surface2: #21253a;--surface3: #272b3e;--border: #2a2f45;--text: #e2e8f0;--text-muted: #6b7280;--text-dim: #9ca3af;--green: #34d399;--red: #f87171;--orange: #fb923c;--blue: #60a5fa;--purple: #a78bfa;--accent: #6366f1;--accent-hover: #818cf8;--shadow: 0 2px 8px rgba(0,0,0,.4);font-size:14px}[data-theme=light]{--bg: #f1f5f9;--surface: #ffffff;--surface2: #f8fafc;--surface3: #e2e8f0;--border: #cbd5e1;--text: #0f172a;--text-muted: #64748b;--text-dim: #475569;--green: #059669;--red: #dc2626;--orange: #ea580c;--blue: #2563eb;--purple: #7c3aed;--accent: #4f46e5;--accent-hover: #6366f1;--shadow: 0 2px 8px rgba(0,0,0,.08)}body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;min-height:100vh;line-height:1.5}.page{max-width:1400px;margin:0 auto;padding:24px 20px 80px}.expense-page{max-width:720px}.page-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;flex-wrap:wrap}.page-title-block{display:flex;align-items:center;gap:10px;flex:1}.app-title{font-size:22px;font-weight:700;color:var(--text);flex:1}.header-actions{display:flex;gap:8px;flex-wrap:wrap}.btn-primary{background:var(--accent);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:background .15s}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--surface2);color:var(--text);border:1px solid var(--border);padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;transition:border-color .15s}.btn-secondary:hover{border-color:var(--accent)}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border);padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px}.btn-ghost:hover{color:var(--text)}.btn-ghost-sm{background:transparent;color:var(--text-muted);border:none;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:12px}.btn-ghost-sm:hover{color:var(--text)}.btn-back{background:transparent;color:var(--text-muted);border:none;cursor:pointer;font-size:13px;padding:4px 0;white-space:nowrap}.btn-back:hover{color:var(--text)}.btn-icon{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:2px 6px;border-radius:4px;font-size:14px;line-height:1}.btn-icon:hover{color:var(--text);background:var(--surface2)}.btn-icon.btn-danger:hover{color:var(--red)}.btn-add{background:transparent;color:var(--accent);border:1px dashed var(--border);padding:6px 12px;border-radius:6px;cursor:pointer;font-size:12px;width:100%;margin-top:8px;transition:border-color .15s,background .15s}.btn-add:hover{border-color:var(--accent);background:var(--surface2)}.btn-add-inline{background:transparent;color:var(--accent);border:none;cursor:pointer;font-size:16px;padding:0 4px;line-height:1}.month-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.month-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:18px;transition:border-color .15s}.month-card:hover{border-color:var(--accent)}.month-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.month-label{font-size:17px;font-weight:600;color:var(--text)}.month-year{font-size:13px;color:var(--text-muted);margin-left:6px}.month-id{font-size:11px;color:var(--text-muted);background:var(--surface2);padding:2px 6px;border-radius:4px}.month-card-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.metric{display:flex;flex-direction:column;gap:2px}.metric-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.metric-value{font-size:15px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.spassgeld-bar{height:4px;background:var(--border);border-radius:2px;overflow:hidden;margin-bottom:14px}.spassgeld-bar-fill{height:100%;border-radius:2px;transition:width .3s ease}.month-card-actions{display:flex;gap:8px}.btn-card-primary{flex:1;background:var(--accent);color:#fff;border:none;padding:8px;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500}.btn-card-primary:hover{background:var(--accent-hover)}.btn-card-secondary{flex:1;background:var(--surface2);color:var(--text);border:1px solid var(--border);padding:8px;border-radius:6px;cursor:pointer;font-size:13px}.btn-card-secondary:hover{border-color:var(--accent)}.panels-row{display:grid;gap:16px;margin-bottom:20px}.top-panels,.bottom-panels{grid-template-columns:repeat(3,1fr)}@media (max-width: 900px){.top-panels,.bottom-panels{grid-template-columns:1fr}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px;overflow:hidden}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.panel-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.panel-total{font-size:14px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th{text-align:left;font-size:11px;color:var(--text-muted);font-weight:500;padding:4px 6px 8px;border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:3px 4px;vertical-align:middle}.data-table tr:hover td{background:var(--surface2)}.num-col{width:80px;text-align:right}.action-col{width:32px}.cell-input{background:transparent;border:1px solid transparent;color:var(--text);font-size:13px;padding:3px 6px;border-radius:4px;width:100%;font-family:inherit;transition:border-color .15s}.cell-input:focus{outline:none;border-color:var(--accent);background:var(--surface2)}.num-input{text-align:right;font-variant-numeric:tabular-nums}.cell-readonly{display:block;text-align:right;font-variant-numeric:tabular-nums;color:var(--text-dim);padding:3px 6px;font-size:13px}.spese-label{color:var(--text-dim);font-size:13px;padding:4px 6px}.spese-account{color:var(--text-muted);font-size:12px;padding:4px 6px}.live-row td{background:var(--surface2)!important}.live-label{color:var(--blue);font-size:13px;padding:4px 6px;font-style:italic}.live-account{color:var(--text-muted);font-size:12px;padding:4px 6px}.metrics-bar{display:flex;gap:12px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:20px}.metric-pill{display:flex;flex-direction:column;gap:4px;flex:1;min-width:110px}.metric-pill-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.metric-pill-value{font-size:16px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.metric-pill-input{background:var(--surface2);border:1px solid var(--border);color:var(--text);font-size:15px;font-weight:600;padding:3px 8px;border-radius:6px;width:100%;font-variant-numeric:tabular-nums}.metric-pill-input:focus{outline:none;border-color:var(--accent)}.month-title-input{background:transparent;border:1px solid transparent;color:var(--text);font-size:20px;font-weight:700;padding:4px 8px;border-radius:6px;font-family:inherit}.month-title-input:focus{outline:none;border-color:var(--accent);background:var(--surface)}.month-year-badge{font-size:14px;color:var(--text-muted);background:var(--surface2);padding:4px 10px;border-radius:6px}.section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:12px}.checklist-panel{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:20px}.checklist-group{margin-bottom:14px}.checklist-group-header{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border);margin-bottom:6px}.bank-label{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;flex:1}.bank-progress{font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}.checklist-row{display:flex;align-items:center;gap:8px;padding:4px 0;transition:opacity .15s}.checklist-row.done{opacity:.5}.check-box{width:16px;height:16px;accent-color:var(--green);cursor:pointer;flex-shrink:0}.check-name{flex:1;min-width:0}.check-amount{width:90px}.check-display{display:none}.strikethrough{text-decoration:line-through}.expense-header-title{font-size:18px;font-weight:700;flex:1}.budget-summary{display:flex;gap:16px;margin-bottom:8px}.budget-block{display:flex;flex-direction:column;gap:2px;flex:1;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:14px;text-align:center}.budget-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.budget-value{font-size:24px;font-weight:700;font-variant-numeric:tabular-nums}.budget-bar{height:6px;background:var(--border);border-radius:3px;overflow:hidden;margin-bottom:20px}.budget-bar-fill{height:100%;border-radius:3px;transition:width .4s ease}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}@media (max-width: 600px){.category-grid{grid-template-columns:repeat(2,1fr)}}.category-tile{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 8px;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:4px;transition:border-color .15s,background .15s;border-left:3px solid var(--cat-color, var(--border))}.category-tile:hover{background:var(--surface2)}.category-tile.active{border-color:var(--cat-color, var(--accent));background:var(--surface2)}.category-tile.empty{opacity:.5}.cat-name{font-size:11px;color:var(--text-muted);line-height:1.3}.cat-amount{font-size:15px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.filter-bar{display:flex;align-items:center;justify-content:space-between;background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:8px 12px;margin-bottom:12px;font-size:13px;color:var(--text-dim)}.tx-list{display:flex;flex-direction:column;gap:6px;margin-bottom:80px}.tx-row{display:flex;align-items:flex-start;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 12px;transition:border-color .15s}.tx-row:hover{border-color:var(--surface2)}.tx-row.delete-mode{border-color:var(--red)}.tx-date{font-size:13px;color:var(--text-muted);min-width:38px;padding-top:2px;font-variant-numeric:tabular-nums}.tx-main{flex:1;min-width:0}.tx-name{font-size:14px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tx-note{font-size:12px;color:var(--text-muted);margin-top:2px}.tx-badge{display:inline-block;font-size:11px;padding:2px 8px;border-radius:99px;margin-top:4px;font-weight:500}.tx-amount{font-size:15px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:2px}.tx-actions{display:flex;gap:4px;align-items:center}.fab{position:fixed;bottom:28px;right:24px;width:56px;height:56px;border-radius:50%;background:var(--accent);color:#fff;border:none;font-size:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #6366f166;transition:background .15s,transform .15s;z-index:100}.fab:hover{background:var(--accent-hover);transform:scale(1.05)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:200;padding:20px}.modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px;width:100%;max-width:440px}.modal-title{font-size:18px;font-weight:700;margin-bottom:20px}.form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.form-row label{font-size:12px;color:var(--text-muted);font-weight:500}.form-input{background:var(--surface2);border:1px solid var(--border);color:var(--text);font-size:14px;padding:8px 12px;border-radius:6px;font-family:inherit;transition:border-color .15s}.form-input:focus{outline:none;border-color:var(--accent)}select.form-input{cursor:pointer}.modal-actions{display:flex;gap:10px;margin-top:20px}.empty-state{text-align:center;color:var(--text-muted);padding:40px 20px;font-size:14px}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.lang-switcher{position:relative}.lang-btn{display:flex;align-items:center;gap:6px;white-space:nowrap}.lang-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:4px;display:flex;flex-direction:column;gap:2px;z-index:300;min-width:120px;box-shadow:0 8px 24px #0006}.lang-option{background:transparent;border:none;color:var(--text-dim);text-align:left;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit;transition:background .1s,color .1s}.lang-option:hover{background:var(--surface2);color:var(--text)}.lang-option.active{color:var(--accent);font-weight:600}.info-icon{font-size:10px;color:var(--text-muted);margin-left:4px;cursor:help}.layout{display:flex;flex-direction:column;min-height:100vh}.topnav{display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:56px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.topnav-logo{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;padding:0;color:var(--text);font-family:inherit;text-decoration:none}.topnav-logo-icon{font-size:20px}.topnav-logo-text{font-size:16px;font-weight:700;color:var(--text)}.topnav-actions{display:flex;align-items:center;gap:8px}.topnav-btn{background:transparent;border:1px solid var(--border);color:var(--text-dim);padding:6px 12px;border-radius:6px;cursor:pointer;font-size:13px;display:flex;align-items:center;gap:6px;font-family:inherit;transition:border-color .15s,color .15s}.topnav-btn:hover{border-color:var(--accent);color:var(--text)}.topnav-btn-label{display:none}@media (min-width: 500px){.topnav-btn-label{display:inline}}.topnav-dropdown{position:relative}.topnav-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:4px;min-width:160px;z-index:400;box-shadow:0 8px 32px #00000080}.topnav-menu-item{display:block;width:100%;text-align:left;background:none;border:none;color:var(--text-dim);padding:9px 12px;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit;transition:background .1s,color .1s}.topnav-menu-item:hover{background:var(--surface2);color:var(--text)}.topnav-menu-item.active{color:var(--accent);font-weight:600}.topnav-menu-item.danger:hover{color:var(--red)}.topnav-menu-divider{height:1px;background:var(--border);margin:4px 0}.layout-main{flex:1}.avatar-btn{width:36px;height:36px;border-radius:50%;background:var(--accent);border:2px solid var(--border);cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .15s}.avatar-btn:hover{border-color:var(--accent)}.avatar-btn-img{width:100%;height:100%;object-fit:cover}.avatar-btn-initials{font-size:15px;font-weight:700;color:#fff}.avatar-menu{min-width:220px}.avatar-menu-header{display:flex;align-items:center;gap:10px;padding:10px 12px}.avatar-menu-name{font-size:14px;font-weight:600;color:var(--text)}.avatar-menu-username{font-size:12px;color:var(--text-muted);margin-top:1px}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:20px}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:36px 32px;width:100%;max-width:400px;box-shadow:0 20px 60px #0006}.auth-logo{display:flex;align-items:center;gap:10px;margin-bottom:28px;justify-content:center}.auth-logo-icon{font-size:28px}.auth-logo-text{font-size:20px;font-weight:700;color:var(--text)}.auth-title{font-size:20px;font-weight:700;text-align:center;margin-bottom:6px}.auth-subtitle{font-size:13px;color:var(--text-muted);text-align:center;margin-bottom:20px;line-height:1.5}.auth-form{display:flex;flex-direction:column;gap:0}.auth-submit{width:100%;padding:10px;font-size:15px;margin-top:16px}.auth-back{width:100%;margin-top:8px;text-align:center}.auth-error{color:var(--red);font-size:13px;margin-top:8px;text-align:center}.auth-avatar-preview{display:flex;justify-content:center;margin-bottom:16px}.auth-avatar-img{width:72px;height:72px;border-radius:50%;object-fit:cover;border:3px solid var(--accent)}.auth-avatar-placeholder{width:72px;height:72px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;color:#fff}.auth-2fa-icon{font-size:40px;text-align:center;margin-bottom:12px}.totp-input{font-size:22px;letter-spacing:8px;text-align:center;font-variant-numeric:tabular-nums;font-weight:700}.profile-page{max-width:900px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 640px){.profile-grid{grid-template-columns:1fr}}.profile-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:22px}.twofa-card{grid-column:span 2}@media (max-width: 640px){.twofa-card{grid-column:span 1}}.profile-section-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:16px}.avatar-upload-area{display:flex;flex-direction:column;align-items:center;gap:12px}.avatar-large{width:100px;height:100px;border-radius:50%;background:var(--accent);overflow:hidden;display:flex;align-items:center;justify-content:center;border:3px solid var(--border)}.avatar-large-img{width:100%;height:100%;object-fit:cover}.avatar-large-initials{font-size:36px;font-weight:700;color:#fff}.avatar-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.avatar-hint{font-size:11px;color:var(--text-muted);text-align:center}.twofa-status{display:flex;flex-direction:column;gap:12px}.twofa-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:99px;font-size:13px;font-weight:600;align-self:flex-start}.twofa-badge.enabled{background:#34d39926;color:var(--green);border:1px solid var(--green)}.twofa-badge.disabled{background:#f871711a;color:var(--text-muted);border:1px solid var(--border)}.twofa-desc{font-size:13px;color:var(--text-dim);line-height:1.5;max-width:480px}.btn-danger-outline{background:transparent;border:1px solid var(--red);color:var(--red);padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit;transition:background .15s;align-self:flex-start}.btn-danger-outline:hover{background:#f871711a}.twofa-setup{display:flex;flex-direction:column;gap:10px}.twofa-step-label{font-size:13px;color:var(--text-dim)}.qr-code{width:200px;height:200px;border-radius:8px;border:2px solid var(--border);align-self:flex-start}.secret-details{font-size:12px;color:var(--text-muted);cursor:pointer}.secret-details summary{cursor:pointer}.totp-secret{display:block;margin-top:8px;background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:8px 12px;font-size:13px;letter-spacing:2px;word-break:break-all;color:var(--text);-webkit-user-select:all;user-select:all}.success-badge{font-size:13px;color:var(--green);font-weight:500}.lang-switcher{display:none}.admin-page{max-width:900px;margin:0 auto}.admin-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:24px;margin-bottom:20px}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:14px}.admin-table th{text-align:left;padding:8px 12px;color:var(--text-muted);font-weight:500;border-bottom:1px solid var(--border);white-space:nowrap}.admin-table td{padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:middle}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table-self td{background:#8b5cf60d}.admin-actions{display:flex;gap:6px;flex-wrap:wrap}.btn-sm{padding:4px 10px;font-size:12px;border-radius:6px;border:1px solid var(--border);background:var(--surface2);color:var(--text);cursor:pointer;transition:background .15s}.btn-sm:hover{background:var(--surface3, #2a2d3e)}.btn-danger-outline.btn-sm{border-color:var(--red);color:var(--red);background:transparent}.btn-danger-outline.btn-sm:hover{background:#f871711a}.role-badge{display:inline-block;padding:2px 8px;border-radius:99px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.role-badge.role-admin{background:#8b5cf633;color:#a78bfa}.role-badge.role-user{background:#6366f126;color:#818cf8}.admin-create-form{max-width:420px;display:flex;flex-direction:column;gap:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:28px;min-width:320px;max-width:440px;width:100%}.modal-box h3{margin:0 0 4px;font-size:16px;color:var(--text)}.muted{color:var(--text-muted);font-size:14px}[data-theme=light] .topnav{background:#fff;border-bottom-color:#e2e8f0}[data-theme=light] .auth-card{background:#fff;border-color:#e2e8f0}[data-theme=light] .month-card,[data-theme=light] .panel{background:#fff}[data-theme=light] .cell-input,[data-theme=light] .form-input{background:var(--surface2);color:var(--text);border-color:var(--border)}[data-theme=light] .modal{background:#fff}[data-theme=light] .modal-overlay{background:#0000004d}[data-theme=light] .data-table th{background:var(--surface2)}[data-theme=light] select.form-input{background:var(--surface2);color:var(--text)}[data-theme=light] .checklist-panel{background:#fff;border-color:#e2e8f0}[data-theme=light] .topnav-menu{background:#fff;border-color:#e2e8f0;box-shadow:var(--shadow)}[data-theme=light] .metric-pill{background:var(--surface2);border-color:var(--border)}[data-theme=light] .metric-pill-input{background:var(--surface);color:var(--text)}[data-theme=light] .month-title-input{background:transparent;color:var(--text)}[data-theme=light] .profile-card,[data-theme=light] .admin-card,[data-theme=light] .modal-box{background:#fff}.icon-btn{font-size:16px;padding:6px 8px;line-height:1}.readonly-banner{background:linear-gradient(90deg,#6366f11f,#8b5cf614);border-bottom:1px solid var(--border);color:var(--text-dim);font-size:12px;font-weight:500;text-align:center;padding:6px 16px;letter-spacing:.02em}[data-theme=light] .readonly-banner{background:linear-gradient(90deg,#4f46e50f,#7c3aed0a)}.empty-dashboard{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center;color:var(--text-muted)}.empty-dashboard-icon{font-size:48px;margin-bottom:16px}.empty-dashboard-title{font-size:20px;font-weight:600;color:var(--text-dim);margin-bottom:8px}.empty-dashboard-sub{font-size:14px;color:var(--text-muted)}.empty-dashboard-sub strong{color:var(--accent)}.formula-input-wrap{position:relative;display:inline-flex;width:100%}.formula-input-wrap .cell-input.has-formula{padding-right:22px;color:var(--accent);font-style:italic}.formula-badge{position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:10px;font-weight:700;color:var(--accent);opacity:.7;pointer-events:none;letter-spacing:0}.settings-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px;margin-bottom:20px}.settings-section-title{font-size:16px;font-weight:600;color:var(--text);margin:0 0 6px}.settings-section-desc{font-size:13px;color:var(--text-muted);margin:0 0 16px}.settings-section-desc code{background:var(--surface2);border:1px solid var(--border);border-radius:4px;padding:1px 5px;font-size:12px;color:var(--accent)}.settings-row{display:flex;align-items:center;gap:16px}.settings-label{font-size:14px;font-weight:500;color:var(--text-dim);min-width:120px}.settings-input-group{display:flex;align-items:center;gap:12px}.settings-hint{font-size:12px;color:var(--text-muted)}.settings-actions{display:flex;align-items:center;gap:12px;margin-top:4px}[data-theme=light] .settings-card{background:#fff}.active-hero{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:16px;padding:28px 28px 24px;margin-bottom:32px}.active-hero-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.active-hero-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.active-hero-month{font-size:26px;font-weight:700;color:var(--text);margin:0;line-height:1.1}.active-hero-year{color:var(--text-muted);font-weight:400;font-size:20px}.active-badge{background:#6366f126;color:var(--accent);font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;letter-spacing:.06em;white-space:nowrap}.active-hero-actions{display:flex;gap:8px;flex-shrink:0}.active-hero-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}@media (max-width: 700px){.active-hero-metrics{grid-template-columns:repeat(2,1fr)}}.active-metric{background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.active-metric-label{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:6px}.active-metric-value{font-size:20px;font-weight:700;color:var(--text)}.active-hero-lower{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width: 600px){.active-hero-lower{grid-template-columns:1fr}}.active-funmoney-labels,.active-checklist-labels{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.active-funmoney-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.active-funmoney-value{font-size:16px;font-weight:700}.active-funmoney-of{font-size:12px;color:var(--text-muted);font-weight:400}.active-funmoney-sub{font-size:12px;margin-top:4px;font-weight:500}.active-checklist-count{font-size:15px;font-weight:600;color:var(--accent)}.active-bar{height:8px;background:var(--surface2);border-radius:4px;overflow:hidden;border:1px solid var(--border)}.active-bar-fill{height:100%;border-radius:4px;transition:width .4s ease}.past-months-section{margin-top:4px}.past-months-heading{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin:0 0 14px}.month-grid-compact{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.month-card-compact{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px;cursor:pointer;transition:border-color .15s ease,transform .1s ease}.month-card-compact:hover{border-color:var(--accent);transform:translateY(-2px)}.mcc-header{display:flex;align-items:baseline;gap:6px;margin-bottom:10px}.mcc-name{font-size:15px;font-weight:600;color:var(--text)}.mcc-year{font-size:12px;color:var(--text-muted)}.mcc-metrics{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:10px}.mcc-metric{display:flex;flex-direction:column;gap:2px}.mcc-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.mcc-value{font-size:13px;font-weight:600;color:var(--text)}.mcc-btn-expenses{font-size:11px;color:var(--accent);background:none;border:none;padding:0;cursor:pointer;font-weight:500}.mcc-btn-expenses:hover{text-decoration:underline}[data-theme=light] .active-hero{background:#fff}[data-theme=light] .active-metric{background:#f8fafc}[data-theme=light] .month-card-compact{background:#fff}.settings-saved{font-size:13px;color:var(--green);font-weight:600}
