:root { --bg:#fff; --fg:#111; --muted:#666; --accent:#cc3300; --muscle-primary:#cc3300; --muscle-secondary:#f0a080; }
* { box-sizing: border-box; }
html, body { margin:0; padding:0; font: 16px/1.4 system-ui, sans-serif; background: var(--bg); color: var(--fg); }
a { color: var(--accent); text-decoration: none; }
.content { padding: 1rem 1rem 5rem; max-width: 640px; margin: 0 auto; }
.bottom-nav { position: fixed; bottom:0; left:0; right:0; display:flex; justify-content: space-around; padding: 0.5rem; background:#111; color:#fff; }
.bottom-nav a { color:#fff; font-size: 0.9rem; padding: 0.5rem; }
.flash { padding: 0.75rem 1rem; margin: 0.5rem auto; max-width: 640px; border-radius: 6px; }
.flash-info { background:#eef; color:#113; }
.flash-error { background:#fdd; color:#700; }
.flash-success { background:#dfd; color:#060; }
form label { display:block; margin: 0.5rem 0 0.25rem; }
form input, form select, form button { font: inherit; padding: 0.6rem; width: 100%; max-width: 320px; }
form button { background: var(--accent); color:#fff; border:0; border-radius: 6px; padding: 0.8rem; margin-top: 0.75rem; }
.row { display:flex; gap:0.5rem; align-items:center; padding:0.5rem 0; border-bottom:1px solid #eee; }
.chip { display:inline-block; padding:2px 8px; font-size:0.8rem; background:#eee; border-radius: 999px; margin-right:4px; }
svg .muscle-primary { fill: var(--muscle-primary); }
svg .muscle-secondary { fill: var(--muscle-secondary); }
.day-tabs { display:flex; overflow-x:auto; gap:0.25rem; padding: 0.25rem 0; }
.day-tabs a { padding: 0.5rem 0.75rem; background:#eee; border-radius: 6px; color: var(--fg); }
.day-tabs a.active { background: var(--accent); color:#fff; }
.log-block { border:1px solid #eee; border-radius: 8px; padding: 1rem; margin: 1rem 0; }
.filters { display:flex; flex-wrap:wrap; gap: 0.5rem; align-items:end; }
.filters label { flex: 1 1 8rem; }
