:root{--bg: #0a0a0a;--card: #1a1a2e;--accent: #0d9488;--accent2: #5eead4;--text: #e2e8f0;--muted: #64748b;--danger: #ef4444;--warn: #f59e0b;--success: #22c55e}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:-apple-system,system-ui,sans-serif}.screen{padding:16px;max-width:480px;margin:0 auto}.loading{text-align:center;padding:40px;color:var(--muted)}.empty{text-align:center;padding:40px}.hint{color:var(--muted);font-size:14px;margin-top:8px}h1{font-size:22px;margin-bottom:12px}h3{font-size:16px;margin:16px 0 8px;color:var(--accent2)}.card{background:var(--card);border-radius:12px;padding:14px;margin-bottom:10px;cursor:pointer;transition:transform .15s}.card:active{transform:scale(.98)}.marathon-card .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.marathon-card h3{font-size:16px;margin:0}.badge{font-size:11px;padding:3px 8px;border-radius:20px;font-weight:600;text-transform:uppercase}.badge.active{background:#0d948833;color:var(--accent2)}.badge.completed{background:#64748b33;color:var(--muted)}.badge.paused{background:#f59e0b33;color:var(--warn)}.card-stats{display:flex;gap:12px}.stat{flex:1;text-align:center}.stat-num{display:block;font-size:18px;font-weight:700;color:var(--accent2)}.stat-label{font-size:11px;color:var(--muted)}.back-btn{background:none;border:none;color:var(--accent2);font-size:15px;cursor:pointer;margin-bottom:8px;padding:4px 0}.dash-meta{display:flex;gap:12px;align-items:center;margin-bottom:16px;font-size:14px;color:var(--muted)}.dash-summary{display:flex;gap:8px;margin-bottom:16px}.summary-card{flex:1;background:var(--card);border-radius:10px;padding:12px;text-align:center}.summary-num{font-size:20px;font-weight:700;color:var(--accent2)}.summary-label{font-size:11px;color:var(--muted);margin-top:2px}.tabs{display:flex;gap:4px;margin-bottom:12px}.tab{flex:1;padding:10px;border:none;border-radius:8px;background:var(--card);color:var(--muted);font-size:14px;cursor:pointer}.tab.active{background:var(--accent);color:#fff}.participant-card .p-header{display:flex;justify-content:space-between;align-items:center}.participant-card h4{margin:0;font-size:15px}.p-weight{font-size:14px;font-weight:600;color:var(--accent2)}.p-cal{margin:8px 0 6px;font-size:13px;color:var(--muted)}.p-footer{display:flex;gap:12px;font-size:12px;color:var(--muted)}.warn{color:var(--danger)}.progress-bar{height:6px;background:#333;border-radius:3px;overflow:hidden;margin-top:4px;position:relative}.progress-fill{height:100%;border-radius:3px;transition:width .3s}.progress-text{position:absolute;right:0;top:-14px;font-size:11px;color:var(--muted)}.settings{padding:4px 0}.tone-options{display:flex;flex-direction:column;gap:8px}.tone-card{background:var(--card);border:2px solid transparent;border-radius:10px;padding:12px;cursor:pointer}.tone-card.selected{border-color:var(--accent)}.tone-label{font-weight:600;margin-bottom:4px}.tone-desc{font-size:13px;color:var(--muted)}.save-btn{width:100%;padding:12px;border:none;border-radius:10px;background:var(--accent);color:#fff;font-size:15px;font-weight:600;cursor:pointer;margin-top:12px}.save-btn:disabled{opacity:.5}.invite-link{background:var(--card);padding:10px;border-radius:8px;font-size:13px;word-break:break-all}.invite-link code{color:var(--accent2)}.section{margin-bottom:20px}.weight-chart{display:flex;gap:4px;align-items:flex-end;height:120px;padding:8px 0}.weight-bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}.weight-bar{width:100%;max-width:24px;background:var(--accent);border-radius:4px 4px 0 0;min-height:4px}.weight-val{font-size:10px;color:var(--muted);margin-bottom:2px}.weight-date{font-size:9px;color:var(--muted);margin-top:2px}.daily-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid #222}.daily-date{font-size:13px;color:var(--muted);width:40px}.daily-row .progress-bar{flex:1}.daily-cal{font-size:12px;width:70px;text-align:right}.food-item{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #222}.food-time{font-size:12px;color:var(--muted);width:70px}.food-name{flex:1;font-size:14px}.food-cal{font-size:13px;color:var(--accent2);font-weight:600}
