:root{--bg:#0a0b10;--bg-deep:#07080d;--surface:#14161e;--surface-2:#1b1e28;--surface-3:#242836;--surface-glass:#14161eb8;--border:#262a36;--border-soft:#1d212c;--border-strong:#363b4d;--text:#f5f6fa;--text-soft:#d5d8e2;--text-muted:#8a8fa3;--text-dim:#565a6d;--accent:#ff7a45;--accent-2:#ff3d8a;--accent-hi:#ffb86b;--accent-fg:#0a0b10;--accent-glow:#ff7a4559;--accent-soft:#ff7a451f;--accent-grad:linear-gradient(135deg, #ffb86b 0%, #ff7a45 45%, #ff3d8a 100%);--cyan:#6ee7ff;--cyan-soft:#6ee7ff24;--danger:#ff5e6c;--danger-soft:#ff5e6c24;--success:#4ade80;--success-soft:#4ade8024;--warning:#fbbf24;--warning-soft:#fbbf2424;--push-color:#60a5fa;--pull-color:#c084fc;--legs-color:#4ade80;--core-color:#fbbf24;--cardio-color:#f472b6;--other-color:#94a3b8;--nav-height:72px;--radius-sm:.5rem;--radius:.75rem;--radius-md:.875rem;--radius-lg:1rem;--radius-xl:1.25rem;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px -8px #0009, 0 2px 6px #0000004d;--shadow-lg:0 20px 50px -20px #000c, 0 4px 12px #0006;--shadow-glow:0 8px 28px -6px var(--accent-glow);--ease:cubic-bezier(.22, .61, .36, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-size:16px}body{background:radial-gradient(900px 600px at 85% -10%, #ff3d8a1a, transparent 60%), radial-gradient(900px 700px at -10% 110%, #6ee7ff12, transparent 60%), linear-gradient(180deg, var(--bg-deep) 0%, var(--bg) 30%);color:var(--text);font-feature-settings:"cv11", "ss01", "ss03";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;letter-spacing:-.005em;background-attachment:fixed;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none}input,select,textarea{font:inherit;color:inherit}::selection{background:var(--accent-soft);color:var(--accent-hi)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border:2px solid var(--bg);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}.app-shell{flex-direction:column;min-height:100vh;display:flex}.page-content{padding-bottom:calc(var(--nav-height) + 1.25rem);flex:1;width:100%;max-width:640px;margin:0 auto}.bottom-nav{height:var(--nav-height);background:var(--surface-glass);-webkit-backdrop-filter:blur(20px)saturate(140%);border-top:1px solid var(--border);z-index:100;padding-bottom:env(safe-area-inset-bottom,0);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav:before{content:"";pointer-events:none;background:linear-gradient(#0000,#0a0b1066);position:absolute;inset:0}.nav-item{color:var(--text-muted);border-radius:var(--radius-sm);transition:color .18s var(--ease), transform .18s var(--ease);z-index:1;flex-direction:column;align-items:center;gap:.2rem;padding:.5rem 1rem;font-size:.7rem;font-weight:500;display:flex;position:relative}.nav-item:active{transform:scale(.94)}.nav-item:hover,.nav-item[aria-current=page]{color:var(--accent-hi)}.nav-item svg{width:1.45rem;height:1.45rem}.nav-item.start-btn{background:var(--accent-grad);color:var(--accent-fg);width:3.5rem;height:3.5rem;box-shadow:var(--shadow-glow), 0 2px 8px #0006;border:3px solid var(--bg);border-radius:50%;margin-top:-1.25rem;padding:0}.nav-item.start-btn:hover{color:var(--accent-fg)}.nav-item.start-btn svg{stroke-width:2.4px;width:2rem;height:2rem}h1,h2,h3,h4{letter-spacing:-.02em;color:var(--text)}h1{font-size:1.55rem;font-weight:700}h2{font-size:1.2rem;font-weight:600}h3{font-size:1rem;font-weight:600}.btn-primary{background:var(--accent-grad);color:var(--accent-fg);border-radius:var(--radius);letter-spacing:-.005em;transition:transform .1s var(--ease), box-shadow .18s var(--ease), filter .18s var(--ease);box-shadow:var(--shadow-sm), inset 0 1px 0 #ffffff2e;justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-size:.9375rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn-primary:before{content:"";pointer-events:none;background:linear-gradient(#ffffff29,#0000 50%);position:absolute;inset:0}.btn-primary:active:not(:disabled){transform:translateY(1px)scale(.99)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-glow), inset 0 1px 0 #ffffff38;filter:brightness(1.05)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--surface-2);color:var(--text);border-radius:var(--radius);border:1px solid var(--border-strong);transition:background .15s var(--ease), border-color .15s var(--ease);justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1.5rem;font-size:.9375rem;font-weight:600;display:inline-flex}.btn-secondary:hover:not(:disabled){background:var(--surface-3);border-color:var(--text-dim)}.btn-secondary:active:not(:disabled){transform:translateY(1px)}.btn-danger{background:var(--danger-soft);color:var(--danger);border-radius:var(--radius);transition:background .15s var(--ease);border:1px solid #ff5e6c4d;align-items:center;gap:.35rem;padding:.55rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex}.btn-danger:hover:not(:disabled){background:#ff5e6c33}.btn-ghost{color:var(--text-muted);border-radius:var(--radius-sm);transition:background .12s var(--ease), color .12s var(--ease);padding:.45rem .75rem;font-size:.875rem;font-weight:500}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.btn-ghost:disabled{opacity:.4;cursor:not-allowed}.full-width{width:100%}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-group label,label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:600}input[type=text],input[type=password],input[type=number],input[type=search],input[type=email],input[type=date],select,textarea{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);transition:border-color .15s var(--ease), background .15s var(--ease), box-shadow .15s var(--ease);appearance:none;padding:.7rem .95rem;font-size:1rem}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}input::placeholder,textarea::placeholder{color:var(--text-dim)}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a8fa3' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right .875rem center;background-repeat:no-repeat;background-size:1rem;padding-right:2.5rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color .15s var(--ease), transform .15s var(--ease);padding:1rem 1.125rem;position:relative}.card:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff0a,#0000);height:1px;position:absolute;inset:0 0 auto}.page-header{justify-content:space-between;align-items:center;gap:.75rem;padding:1.125rem 1rem .625rem;display:flex}.page-title{letter-spacing:-.025em;color:#0000;background:linear-gradient(#fff,#cdcfdb);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:700}.section{flex-direction:column;gap:.625rem;padding:.75rem 1rem;display:flex}.section-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;padding:0 .25rem;font-size:.7rem;font-weight:700}.badge{text-transform:uppercase;letter-spacing:.06em;border-radius:999px;align-items:center;padding:.2rem .55rem;font-size:.6875rem;font-weight:600;line-height:1.3;display:inline-flex}.badge-push{color:var(--push-color);background:#60a5fa26}.badge-pull{color:var(--pull-color);background:#c084fc26}.badge-legs{color:var(--legs-color);background:#4ade8026}.badge-core{color:var(--core-color);background:#fbbf2426}.badge-cardio{color:var(--cardio-color);background:#f472b626}.badge-other{color:var(--other-color);background:#94a3b826}.divider{background:linear-gradient(90deg, transparent, var(--border), transparent);height:1px;margin:.25rem 0}.empty-state{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:.875rem;padding:3rem 1rem;display:flex}.empty-state svg{opacity:.4;stroke-width:1.4px;width:3rem;height:3rem}.stat-row{flex-wrap:wrap;gap:.4rem;display:flex}.stat-pill{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-variant-numeric:tabular-nums;padding:.3rem .625rem;font-size:.8125rem}.stat-pill strong{color:var(--text);font-weight:600}.tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.4rem;padding:0 1rem;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);transition:all .15s var(--ease);text-transform:capitalize;white-space:nowrap;border-radius:999px;flex-shrink:0;padding:.45rem .95rem;font-size:.8125rem;font-weight:500}.tab:hover:not(.active){color:var(--text);border-color:var(--border-strong)}.tab.active{background:var(--text);color:var(--bg);border-color:var(--text);font-weight:600}.text-accent{color:var(--accent-hi)}.text-muted{color:var(--text-muted)}.text-soft{color:var(--text-soft)}.text-dim{color:var(--text-dim)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.tabular{font-variant-numeric:tabular-nums}.fade-in{animation:fade-in .24s var(--ease)}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 var(--accent-glow)}70%{box-shadow:0 0 0 12px #0000}to{box-shadow:0 0 #0000}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}
