html,body{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;margin:0;padding:0}:root{--bg:#111;--panel:#1c1c1e;--text:#f5f5f7;--muted:#9a9aa0;--accent:#10a37f;--accent-press:#0d8a6c;--secondary:#3a3a3c;--secondary-press:#4a4a4c;--danger:#ff453a}*{box-sizing:border-box}html,body,#root{background:var(--bg);min-height:100vh;color:var(--text);margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Yu Gothic,sans-serif}.app{max-width:640px;padding:calc(env(safe-area-inset-top) + 16px) 16px calc(env(safe-area-inset-bottom) + 16px);flex-direction:column;gap:16px;min-height:100vh;margin:0 auto;display:flex}.header{justify-content:space-between;align-items:center;gap:12px;display:flex}.header h1{letter-spacing:.02em;margin:0;font-size:20px;font-weight:600}.icon-btn{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;margin:-8px;padding:8px;transition:color .12s,background .12s;display:inline-flex}.icon-btn:not(:disabled):active{color:var(--text);background:var(--secondary)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.editor{resize:none;background:var(--panel);width:100%;min-height:200px;color:var(--text);border:none;border-radius:12px;outline:none;flex:1;padding:12px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.5}.editor:focus{box-shadow:0 0 0 2px var(--accent)}.actions{flex-direction:column;gap:10px;padding-bottom:4px;display:flex}.btn{appearance:none;cursor:pointer;color:var(--text);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:14px 16px;font-size:16px;font-weight:600;transition:background .12s,opacity .12s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent)}.btn-primary:not(:disabled):active{background:var(--accent-press)}.btn-secondary{background:var(--secondary)}.btn-secondary:not(:disabled):active{background:var(--secondary-press)}.toast{left:50%;bottom:calc(env(safe-area-inset-bottom) + 24px);pointer-events:none;border-radius:999px;padding:10px 16px;font-size:14px;font-weight:500;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #0006}.toast-ok{background:var(--accent);color:#fff}.toast-error{background:var(--danger);color:#fff}.tabs{background:var(--panel);border-radius:10px;gap:4px;margin-left:auto;margin-right:8px;padding:4px;display:inline-flex}.tab{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:6px 12px;font-size:13px;font-weight:600;transition:color .12s,background .12s}.tab.is-active{background:var(--secondary);color:var(--text)}.tab:disabled{opacity:.4;cursor:not-allowed}.graph{flex-direction:column;flex:1;gap:20px;display:flex}.graph-empty{color:var(--muted);text-align:center;margin-top:40px}.graph-section{background:var(--panel);border-radius:12px;flex-direction:column;gap:8px;padding:14px 12px 8px;display:flex}.graph-section-head{justify-content:space-between;align-items:center;gap:8px;padding:0 4px;display:flex}.graph-section-head h2{color:var(--text);margin:0;font-size:14px;font-weight:600}.exercise-section{background:var(--panel);border-radius:12px;flex-direction:column;gap:14px;padding:0 12px 12px;display:flex}.exercise-heading{background:var(--panel);margin:calc(-1 * env(safe-area-inset-top)) -12px 0;padding:calc(env(safe-area-inset-top) + 10px) 12px 10px;z-index:1;border-radius:12px 12px 0 0;justify-content:space-between;align-items:baseline;gap:8px;font-size:14px;font-weight:600;display:flex;position:sticky;top:0}.exercise-meta{color:var(--muted);font-size:12px;font-weight:500}.exercise-chart{flex-direction:column;gap:4px;display:flex}.chart-label{color:var(--text);padding:0 4px;font-size:13px;font-weight:600}.graph-toggle{background:var(--secondary);border-radius:8px;gap:2px;padding:2px;display:inline-flex}.graph-toggle button{appearance:none;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600}.graph-toggle button.is-active{background:var(--panel);color:var(--text)}.chart-svg{width:100%;height:auto;display:block}.graph-note{color:var(--muted);margin:0;padding:0 4px 4px;font-size:12px}
