*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:#0d0d14}#root{min-height:100vh}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}:root{--bg:#0d0d14;--bg2:#14141f;--bg3:#1c1c2e;--accent:#6c5ce7;--accent-light:#a29bfe;--text:#fff;--text2:#88a;--green:#00b894;--red:#e17055;--border:#ffffff12;--radius:14px}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px}.app{flex-direction:column;max-width:480px;min-height:100vh;margin:0 auto;display:flex}.header{z-index:10;background:var(--bg);justify-content:space-between;align-items:center;padding:16px 20px 12px;display:flex;position:sticky;top:0}.logo{letter-spacing:1px;color:var(--text);font-size:22px;font-weight:800}.avatar{background:var(--accent);border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:15px;font-weight:700;display:flex}.tabbar{border-bottom:1px solid var(--border);background:var(--bg);z-index:10;padding:0 8px;display:flex;position:sticky;top:62px}.tab-btn{cursor:pointer;color:var(--text2);background:0 0;border:none;border-bottom:2px solid #0000;flex-direction:column;flex:1;align-items:center;gap:3px;margin-bottom:-1px;padding:10px 0 8px;transition:color .15s;display:flex}.tab-btn.active{color:var(--accent-light);border-bottom-color:var(--accent)}.tab-icon{font-size:18px}.tab-label{font-size:12px;font-weight:500}.tab-badge{color:inherit;vertical-align:middle;background:#ffffff2e;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:5px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.mode-tab.active .tab-badge{background:#ffffff40}.task-row--archived{opacity:.55;cursor:default}.idea-card{background:var(--bg2);border-radius:var(--radius);border-left:3px solid var(--accent);align-items:flex-start;gap:12px;margin-bottom:6px;padding:14px;display:flex}.idea-icon{flex-shrink:0;margin-top:1px;font-size:20px}.main{flex:1;padding-bottom:24px;overflow-y:auto}.tab-content{flex-direction:column;gap:8px;padding:12px 16px;display:flex}.loader,.empty{text-align:center;color:var(--text2);padding:48px 24px;font-size:14px}.group{margin-bottom:8px}.group-header{justify-content:space-between;align-items:center;padding:10px 4px 6px;display:flex}.group-date{letter-spacing:.5px;color:var(--text2);font-size:11px;font-weight:600}.group-count{background:var(--bg3);color:var(--text2);border-radius:20px;padding:2px 7px;font-size:11px;font-weight:600}.task-row{background:var(--bg2);border-radius:var(--radius);cursor:pointer;align-items:flex-start;gap:12px;margin-bottom:6px;padding:14px;transition:background .1s;display:flex}.task-row:active{background:var(--bg3)}.task-row.done .task-title{color:var(--text2);text-decoration:line-through}.checkbox{border:2px solid var(--bg3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-top:1px;transition:all .15s;display:flex}.checkbox.checked{background:var(--accent);border-color:var(--accent)}.checkbox svg{width:12px;height:10px}.task-info{flex-direction:column;flex:1;gap:4px;display:flex}.task-title{color:var(--text);font-size:14px;font-weight:500;line-height:1.4}.task-time{color:var(--text2);align-items:center;gap:4px;font-size:12px;display:flex}.nutrition-summary{background:var(--bg2);border-radius:var(--radius);justify-content:space-around;margin-bottom:6px;padding:14px;display:flex}.nut-stat{flex-direction:column;align-items:center;gap:2px;display:flex}.nut-val{color:var(--accent-light);font-size:18px;font-weight:700}.nut-label{color:var(--text2);text-transform:uppercase;letter-spacing:.5px;font-size:10px}.meal-row{background:var(--bg2);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;padding:14px;display:flex}.meal-info{flex-direction:column;flex:1;gap:4px;display:flex}.meal-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.meal-kcal{color:var(--accent-light);white-space:nowrap;font-size:13px;font-weight:600}.meal-row--confirm{background:#e170551f;border:1px solid #e1705559}.meal-row--confirm .task-title{color:var(--red)}.meal-row--confirm .meal-kcal{color:var(--red);opacity:.6}.meal-row--deleting{opacity:.35;pointer-events:none}.meal-delete-btn{color:var(--text2);cursor:pointer;opacity:.45;background:0 0;border:none;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:18px;line-height:1;transition:all .15s;display:flex}.meal-delete-btn:active{background:var(--bg3);opacity:1}.meal-delete-btn--confirm{background:var(--red);color:#fff;opacity:1;font-size:13px;font-weight:700}.finance-summary{background:var(--bg2);border-radius:var(--radius);align-items:center;margin:4px 0 8px;padding:16px;display:flex}.fin-stat{flex-direction:column;flex:1;align-items:center;gap:3px;display:flex}.fin-label{color:var(--text2);text-transform:uppercase;letter-spacing:.4px;font-size:11px}.fin-val{font-size:14px;font-weight:700}.fin-stat.income .fin-val{color:var(--green)}.fin-stat.expense .fin-val{color:var(--red)}.fin-divider{background:var(--border);width:1px;height:32px}.tx-row{background:var(--bg2);border-radius:var(--radius);align-items:center;gap:12px;margin-bottom:6px;padding:12px 14px;transition:background .15s,border .15s;display:flex}.tx-row--confirm{background:#e170551f;border:1px solid #e1705559}.tx-row--confirm .task-title{color:var(--red)}.tx-row--deleting{opacity:.35;pointer-events:none}.tx-icon{text-align:center;flex-shrink:0;width:36px;font-size:24px}.tx-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.tx-amount{white-space:nowrap;font-size:14px;font-weight:700}.tx-amount.income{color:var(--green)}.tx-amount.expense{color:var(--red)}.tx-amount--faded{opacity:.45}.tx-delete-btn{color:var(--text2);cursor:pointer;opacity:.45;background:0 0;border:none;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:18px;line-height:1;transition:all .15s;display:flex}.tx-delete-btn:active{background:var(--bg3);opacity:1}.tx-delete-btn--confirm{background:var(--red);color:#fff;opacity:1;font-size:13px;font-weight:700}.mode-tabs{background:var(--bg2);border-radius:10px;gap:2px;padding:3px;display:flex}.mode-tab{color:var(--text2);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:7px 0;font-size:13px;font-weight:500;transition:all .15s}.mode-tab.active{background:var(--accent);color:#fff;font-weight:600}.date-nav{justify-content:space-between;align-items:center;padding:2px 0;display:flex}.nav-arrow{background:var(--bg2);color:var(--text);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;font-size:22px;line-height:1;transition:background .1s;display:flex}.nav-arrow:active{background:var(--bg3)}.nav-arrow:disabled{color:var(--text2);opacity:.4;cursor:default}.date-label{color:var(--text);font-size:16px;font-weight:700}.avatar-btn{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:opacity .15s;display:flex}.avatar-btn:active{opacity:.7}.modal-overlay{z-index:100;background:#0000008c;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-sheet{background:var(--bg2);border-radius:20px 20px 0 0;flex-direction:column;width:100%;max-width:480px;max-height:85vh;margin:0 auto;padding:12px 20px 32px;animation:.25s cubic-bezier(.32,.72,0,1) slideUp;display:flex;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-handle{background:#ffffff26;border-radius:2px;flex-shrink:0;width:40px;height:4px;margin:0 auto 20px}.profile-header{align-items:center;gap:16px;margin-bottom:24px;display:flex}.profile-avatar{background:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:24px;font-weight:700;display:flex;overflow:hidden}.profile-avatar img{object-fit:cover;width:100%;height:100%}.profile-info{flex-direction:column;gap:4px;display:flex}.profile-name{color:var(--text);font-size:18px;font-weight:700}.profile-username{color:var(--text2);font-size:13px}.profile-section-title{letter-spacing:.6px;text-transform:uppercase;color:var(--text2);margin-bottom:12px;font-size:11px;font-weight:600}.profile-loading,.profile-empty{text-align:center;color:var(--text2);padding:24px 0;font-size:14px;line-height:1.6}.facts-grid{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.fact-card{background:var(--bg3);border-radius:12px;align-items:center;gap:14px;padding:12px 14px;display:flex}.fact-icon{text-align:center;flex-shrink:0;width:28px;font-size:22px}.fact-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.fact-label{color:var(--text2);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:600}.fact-value{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;overflow:hidden}.fact-card--confirm{background:#e1705526;border:1px solid #e1705566}.fact-card--confirm .fact-label{color:var(--red)}.fact-card--confirm .fact-value{color:var(--text2);font-style:italic}.fact-card--deleting{opacity:.4;pointer-events:none}.fact-delete-btn{color:var(--text2);cursor:pointer;opacity:.5;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:18px;line-height:1;transition:all .15s;display:flex}.fact-delete-btn:hover{opacity:1;background:var(--bg2)}.fact-delete-btn:active{background:var(--bg3)}.fact-delete-btn--confirm{background:var(--red);color:#fff;opacity:1;font-size:14px;font-weight:700}.modal-close-btn{background:var(--bg3);width:100%;color:var(--text2);cursor:pointer;border:none;border-radius:12px;margin-top:4px;padding:14px;font-size:15px;font-weight:500;transition:background .1s}.modal-close-btn:active{background:var(--accent);color:#fff}.category-chips{-ms-overflow-style:none;scrollbar-width:none;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.category-chips::-webkit-scrollbar{display:none}.chip{background:var(--bg2);border:1px solid var(--border);color:var(--text2);cursor:pointer;white-space:nowrap;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:500;transition:all .15s}.chip.active{background:var(--accent);border-color:var(--accent);color:#fff}
