:root{--bg:#0f0f0f;--card:#1a1a1a;--border:#2a2a2a;--accent:#e8c547;--text:#f0f0f0;--muted:#888;--green:#4ade80;--red:#f87171;--content-max-width:600px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;padding:1.5rem 1rem 8rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.4}.container{max-width:var(--content-max-width);margin:0 auto}h1{color:var(--accent);margin-bottom:.25rem;font-size:1.8rem;font-weight:700}h2{color:var(--text);margin:1.25rem 0 .5rem;font-size:1.05rem;font-weight:600}h3{color:var(--accent);margin:.75rem 0 .35rem;font-size:.95rem;font-weight:600}.subtitle{color:var(--muted);margin-bottom:1.25rem;font-size:.9rem}.screen-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.screen-tabs{align-items:center;gap:.75rem;display:flex}.tab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:.4rem .6rem;font-size:.9rem;font-weight:600;text-decoration:none}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.form-row{flex-direction:column;gap:.35rem;margin-bottom:.85rem;display:flex}.form-row>span{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.75rem}.form-row-inline{grid-template-columns:1fr 1fr .75fr;gap:.5rem;display:grid}.form-field{flex-direction:column;gap:.35rem;display:flex}.form-field>span{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.75rem}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],select{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:8px;width:100%;min-height:44px;padding:.65rem .75rem;font-family:inherit;font-size:1rem}input:focus,select:focus{border-color:var(--accent);outline:none}.date-row{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.date-row label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.75rem}.btn-row{gap:.75rem;margin-top:1rem;display:flex}.btn-row-sticky{background:var(--bg);margin-top:1.5rem;padding:.75rem 0 .25rem;position:sticky;bottom:0}button{cursor:pointer;font-family:inherit}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary,.btn-secondary{border:none;border-radius:8px;flex:1;min-height:44px;padding:.85rem 1rem;font-size:.95rem;font-weight:600}.btn-primary{background:var(--accent);color:#000}.btn-secondary{background:var(--card);color:var(--text);border:1px solid var(--border)}.btn-ghost{color:var(--muted);background:0 0;border:none;padding:.4rem .6rem;font-size:.85rem}.status{text-align:center;opacity:0;border-radius:6px;margin-top:1rem;padding:.75rem;font-size:.9rem;font-weight:500;transition:opacity .3s}.status.show{opacity:1}.status.success{color:var(--green);background:#4ade801a}.status.error{color:var(--red);background:#f871711a}.pending-sets{margin-top:1.5rem}.section-title{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:.5rem;font-size:.85rem}.empty-hint{color:var(--muted);font-size:.9rem}.pending-exercise{background:var(--card);border:1px solid var(--border);border-radius:12px;margin-bottom:.75rem;padding:.85rem 1rem}.pending-list{flex-direction:column;gap:.4rem;list-style:none;display:flex}.pending-item{grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;font-size:.9rem;display:grid}.pending-set-index{color:var(--accent);min-width:2ch;font-weight:700}.pending-set-detail{color:var(--text)}.history-list h1{margin-bottom:.75rem}.history-days{flex-direction:column;gap:1rem;list-style:none;display:flex}.day-title{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.5rem;font-size:.8rem}.history-day-list{flex-direction:column;gap:.5rem;list-style:none;display:flex}.history-workout{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:.75rem 1rem}.history-workout-meta{color:var(--muted);margin-bottom:.4rem;font-size:.75rem}.history-sets{flex-direction:column;gap:.25rem;list-style:none;display:flex}.history-set{justify-content:space-between;gap:.5rem;font-size:.9rem;display:flex}.set-exercise{color:var(--text);font-weight:600}.set-detail{color:var(--muted);font-variant-numeric:tabular-nums}.connect-agent-cta{background:linear-gradient(145deg, #e8c5471a, var(--card) 55%);border:1px solid #e8c54773;border-radius:14px;margin:1.25rem 0 1.75rem;padding:1rem}.connect-agent-cta h2{margin-top:.2rem;font-size:1.25rem}.connect-agent-eyebrow{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:700}.connect-agent-copy,.connect-agent-option p,.connect-agent-footnote{color:var(--muted);font-size:.86rem}.connect-agent-endpoint{overflow-wrap:anywhere;border:1px solid var(--border);background:#0f0f0fa6;border-radius:8px;flex-direction:column;gap:.35rem;margin:1rem 0;padding:.75rem;display:flex}.connect-agent-endpoint span,.connect-agent-client-id{color:var(--muted);font-size:.72rem}.connect-agent-endpoint code,.connect-agent-client-id code{color:var(--text)}.connect-agent-options{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.75rem;display:grid}.connect-agent-option{border:1px solid var(--border);background:var(--bg);border-radius:10px;flex-direction:column;gap:.5rem;padding:.85rem;display:flex}.connect-agent-option h3{margin:0}.connect-agent-link{text-align:center;margin-top:auto;text-decoration:none;display:block}.connect-agent-footnote{margin-top:.85rem;font-size:.75rem}.auth-gate-loading{text-align:center;color:var(--muted);padding:2rem}.agent-oauth-callback-screen{padding-top:3rem}.agent-oauth-callback-card{margin-top:1.5rem}.agent-oauth-callback-code{word-break:break-all;background:var(--bg);border:1px solid var(--muted);-webkit-user-select:all;user-select:all;border-radius:6px;margin:1rem 0;padding:.75rem 1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.95rem;display:block}.login-screen{padding-top:3rem}.login-form{margin-top:1.5rem}@media (width>=720px){body{padding:2rem}}
