:root{--surface:#f4f0e8;--ink:#18231f;--muted:#65736b;--accent:#c65e3c;--success:#33745d;--danger:#a23d32;--focus:#e9a52e;--spacing:clamp(1rem,2.5vw,2rem);--radius:14px;--shadow:0 18px 45px #18231f18}*{box-sizing:border-box}body{margin:0;background:var(--surface);color:var(--ink);font:16px/1.5 Georgia,serif}.shell{max-width:900px;margin:auto;padding:clamp(2rem,7vw,6rem) var(--spacing)}.masthead{max-width:650px;border-left:3px solid var(--accent);padding-left:1.3rem}.eyebrow{font:700 .72rem/1.2 system-ui,sans-serif;letter-spacing:.14em;color:var(--accent);margin:0 0 .75rem}.masthead h1{font-size:clamp(2.7rem,7vw,5.6rem);line-height:.98;margin:0;letter-spacing:-.05em}.masthead h1 em{color:var(--accent);font-weight:400}.intro{color:var(--muted);font-size:1.15rem;margin:1.5rem 0 0}.progress-panel{margin:clamp(3rem,8vw,7rem) 0 clamp(3rem,7vw,5rem);max-width:600px}.section-heading h2{font-size:clamp(1.7rem,3vw,2.3rem);margin:0 0 1.25rem;letter-spacing:-.03em}.progress-row{display:flex;align-items:baseline;gap:.7rem}.progress-row strong{font-size:2.2rem}.progress-row span,.metrics small{color:var(--muted);font: .85rem system-ui,sans-serif}.progress-track{height:8px;background:#d9d4ca;border-radius:99px;margin:1rem 0 .7rem;overflow:hidden}.progress-track span{display:block;background:var(--success);height:100%;width:0;transition:width .3s ease}.progress-change{color:var(--muted);margin:0;font-size:.95rem}.workout{background:#fffdf9;border:1px solid #ded8cc;border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1.3rem,4vw,2.5rem);max-width:700px}.workout-top{display:flex;justify-content:space-between;gap:1rem;font:700 .72rem system-ui,sans-serif;letter-spacing:.1em}.status{color:var(--success)}.workout-type{color:var(--muted)}.workout h3{font-size:clamp(2rem,5vw,3.2rem);margin:.7rem 0 .4rem;letter-spacing:-.04em}.workout-note{color:var(--muted);max-width:52ch;margin:0}.metrics{display:flex;gap:clamp(1.2rem,6vw,4rem);border-top:1px solid #e5e0d7;border-bottom:1px solid #e5e0d7;margin:2rem 0;padding:1.1rem 0}.metrics div{display:grid;gap:.2rem}.metrics dt{font:700 .68rem system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.metrics dd{margin:0;font-size:1.35rem}.actions,.dialog-actions{display:flex;gap:.75rem;flex-wrap:wrap}.button{border:0;border-radius:999px;padding:.8rem 1.1rem;font:700 .86rem system-ui,sans-serif;cursor:pointer}.button.primary{background:var(--ink);color:#fff}.button.secondary{background:transparent;color:var(--ink);border:1px solid #b9b2a7}.button:hover{transform:translateY(-1px)}button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.demo-note{font:700 .68rem system-ui,sans-serif;letter-spacing:.1em;color:var(--muted);margin-top:3rem}dialog{border:0;border-radius:var(--radius);box-shadow:var(--shadow);padding:0;background:#fffdf9;color:var(--ink);max-width:440px;width:calc(100% - 2rem)}dialog::backdrop{background:#18231f88}dialog form{padding:2rem}.dialog-copy{color:var(--muted);margin-top:-.5rem}.field{display:grid;gap:.35rem;margin:1.2rem 0}.field label{font-weight:700}.field label span{color:var(--muted);font-weight:400}.field input{font:inherit;border:1px solid #b9b2a7;border-radius:8px;padding:.65rem;background:var(--surface);color:var(--ink)}.error-region{color:var(--danger);font:700 .85rem system-ui,sans-serif;min-height:1.5rem;margin:.6rem 0}.error-region:empty{min-height:0}.dialog-actions{justify-content:flex-end}@media(max-width:480px){.workout-top{display:block}.workout-type{display:block;margin-top:.45rem}.metrics{gap:1rem;justify-content:space-between}.actions .button{width:100%}.masthead h1{font-size:2.7rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.button:hover{transform:none}}
