:root{--tg-theme-bg-color: #1a1a2e;--tg-theme-text-color: #ffffff;--tg-theme-hint-color: #a0a0c0;--tg-theme-link-color: #64b5f6;--tg-theme-button-color: #5c6bc0;--tg-theme-button-text-color: #ffffff;--tg-theme-secondary-bg-color: #16213e;--accent-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--success-color: #4caf50;--success-bg: rgba(76, 175, 80, .15);--warning-color: #ff9800;--warning-bg: rgba(255, 152, 0, .15);--danger-color: #f44336;--danger-bg: rgba(244, 67, 54, .15);--info-color: #2196f3;--info-bg: rgba(33, 150, 243, .15);--card-bg: rgba(255, 255, 255, .05);--card-border: rgba(255, 255, 255, .1);--shadow: 0 4px 15px rgba(0, 0, 0, .2)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--tg-theme-bg-color);color:var(--tg-theme-text-color);min-height:100vh;overflow-x:hidden}#app{max-width:100%;padding-bottom:20px}.header{background:var(--accent-gradient);padding:20px;border-radius:0 0 24px 24px}.user-info{display:flex;align-items:center;gap:12px}.avatar{width:50px;height:50px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}.user-details h1{font-size:18px;font-weight:600}.user-details p{font-size:13px;opacity:.8}.tabs{display:flex;gap:6px;padding:16px 12px;overflow-x:auto;-webkit-overflow-scrolling:touch}.tab{flex:1;min-width:fit-content;padding:10px 12px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;color:var(--tg-theme-text-color);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.tab.active{background:var(--accent-gradient);border-color:transparent}.content{padding:0 12px}.tab-content{display:none}.tab-content.active{display:block;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-title{font-size:14px;font-weight:600;color:var(--tg-theme-hint-color);margin:20px 0 12px;padding-left:4px}.progress-section{margin-bottom:16px}.progress-header{margin-bottom:12px}.progress-header h3{font-size:16px;font-weight:600;color:var(--tg-theme-link-color)}.progress-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.progress-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;padding:12px;transition:all .2s ease}.progress-card.complete{background:var(--success-bg);border-color:var(--success-color)}.progress-card.good{background:var(--info-bg);border-color:var(--info-color)}.progress-card.warning{background:var(--warning-bg);border-color:var(--warning-color)}.progress-card.low{background:var(--danger-bg);border-color:var(--danger-color)}.progress-card-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.progress-type{font-size:11px;font-weight:600;padding:2px 6px;background:var(--accent-gradient);border-radius:4px;color:#fff}.progress-name{font-size:12px;color:var(--tg-theme-hint-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-values{display:flex;align-items:baseline;gap:4px;margin-bottom:8px}.progress-current{font-size:24px;font-weight:700}.progress-goal{font-size:14px;color:var(--tg-theme-hint-color)}.progress-bar-container{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden;margin-bottom:4px}.progress-bar-fill{height:100%;background:var(--accent-gradient);border-radius:3px;transition:width .5s ease}.progress-card.complete .progress-bar-fill{background:var(--success-color)}.progress-card.good .progress-bar-fill{background:var(--info-color)}.progress-card.warning .progress-bar-fill{background:var(--warning-color)}.progress-card.low .progress-bar-fill{background:var(--danger-color)}.progress-percent{font-size:11px;color:var(--tg-theme-hint-color);text-align:right}.progress-no-goal{font-size:11px;color:var(--tg-theme-hint-color);font-style:italic}.progress-summary{margin-top:12px;padding:16px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px}.summary-label{font-size:12px;color:var(--tg-theme-hint-color);margin-bottom:4px}.summary-values{display:flex;align-items:baseline;gap:6px;margin-bottom:8px}.summary-current{font-size:28px;font-weight:700;color:var(--tg-theme-link-color)}.summary-goal{font-size:16px;color:var(--tg-theme-hint-color)}.summary-percent{font-size:14px;color:var(--tg-theme-hint-color)}.summary-bar-container{height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.summary-bar-fill{height:100%;background:var(--accent-gradient);border-radius:4px;transition:width .5s ease}.date-nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:16px;padding:12px;background:var(--card-bg);border-radius:12px}.nav-btn{width:36px;height:36px;background:var(--tg-theme-secondary-bg-color);border:1px solid var(--card-border);border-radius:8px;color:var(--tg-theme-text-color);font-size:16px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.nav-btn:active{transform:scale(.95)}.nav-btn:disabled{opacity:.3;cursor:not-allowed}.stats-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px;background:var(--card-bg);border:1px solid var(--card-border)}.stats-table{width:100%;border-collapse:collapse;font-size:12px;min-width:400px}.stats-table th,.stats-table td{padding:10px 6px;text-align:center;border-bottom:1px solid var(--card-border)}.stats-table th{background:var(--tg-theme-secondary-bg-color);font-weight:600;position:sticky;top:0}.stats-table th:first-child,.stats-table td:first-child{text-align:left;padding-left:12px;min-width:80px}.stats-table tr:last-child td{border-bottom:none}.stats-table tr:hover td{background:#ffffff08}.stats-table .total-col{font-weight:600;color:var(--tg-theme-link-color)}.stats-table .member-name{font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:8px}.stats-table .highlight{background:#667eea33}.rank-badge{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:11px;font-weight:600;background:var(--card-bg);border:1px solid var(--card-border);flex-shrink:0}.rank-badge.rank-1{background:linear-gradient(135deg,gold,#ffb347);border-color:gold;color:#1a1a2e}.rank-badge.rank-2{background:linear-gradient(135deg,silver,#a8a8a8);border-color:silver;color:#1a1a2e}.rank-badge.rank-3{background:linear-gradient(135deg,#cd7f32,#b8860b);border-color:#cd7f32;color:#1a1a2e}.add-form,.goals-form{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;padding:20px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-group input[type=date],.form-group input[type=text],.form-group input[type=number],.form-group select{width:100%;padding:12px;background:var(--tg-theme-secondary-bg-color);border:1px solid var(--card-border);border-radius:12px;color:var(--tg-theme-text-color);font-size:16px}.activity-types{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.type-btn{padding:12px 8px;background:var(--tg-theme-secondary-bg-color);border:2px solid transparent;border-radius:12px;color:var(--tg-theme-text-color);font-size:11px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:4px}.type-btn .type-abbr{font-size:14px;font-weight:700}.type-btn .type-name{font-size:9px;color:var(--tg-theme-hint-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.type-btn.selected{border-color:var(--tg-theme-button-color);background:#5c6bc033}.count-input{display:flex;align-items:center;gap:12px;justify-content:center}.count-btn{width:44px;height:44px;background:var(--tg-theme-secondary-bg-color);border:1px solid var(--card-border);border-radius:12px;color:var(--tg-theme-text-color);font-size:20px;cursor:pointer;transition:all .2s ease}.count-btn:active{transform:scale(.95)}.count-input input{width:60px;text-align:center;font-size:24px;font-weight:600;background:transparent;border:none;color:var(--tg-theme-text-color)}.submit-btn{width:100%;padding:16px;background:var(--accent-gradient);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.submit-btn:active{transform:scale(.98)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.goals-month{text-align:center;font-size:16px;font-weight:600;margin-bottom:20px;color:var(--tg-theme-link-color)}.goals-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.goal-item{background:var(--tg-theme-secondary-bg-color);border-radius:12px;padding:12px}.goal-item label{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:8px}.goal-item .goal-abbr{font-size:11px;font-weight:600;padding:2px 6px;background:var(--accent-gradient);border-radius:4px;color:#fff}.goal-item input{width:100%;padding:10px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;color:var(--tg-theme-text-color);font-size:16px;text-align:center}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%) translateY(100px);padding:12px 24px;background:var(--tg-theme-text-color);color:var(--tg-theme-bg-color);border-radius:12px;font-size:14px;font-weight:500;z-index:2000;transition:transform .3s ease}.toast.show{transform:translate(-50%) translateY(0)}.loading{text-align:center;padding:40px;color:var(--tg-theme-hint-color)}.spinner{width:30px;height:30px;border:3px solid var(--card-border);border-top-color:var(--tg-theme-button-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 12px}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:40px 20px;color:var(--tg-theme-hint-color)}
