*{box-sizing:border-box}body{color:#111;background:#f7f7f7;margin:0;font-family:Arial,sans-serif}button{font:inherit;cursor:pointer}.home{min-height:calc(100vh - 64px)}.hero{text-align:center;max-width:1000px;margin:0 auto;padding:100px 24px 80px}.eyebrow{letter-spacing:2px;margin-bottom:20px;font-size:14px;font-weight:700}.hero h1{margin:0;font-size:clamp(42px,7vw,76px);line-height:1.05}.hero-text{max-width:650px;margin:28px auto 0;font-size:20px;line-height:1.6}.home-actions{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:40px;display:flex}.home-actions button{color:#fff;background:#111;border:1px solid #111;border-radius:8px;min-width:190px;padding:15px 24px}.home-actions button:last-child{color:#111;background:#fff}.features{grid-template-columns:repeat(3,1fr);gap:20px;max-width:1100px;margin:0 auto;padding:0 24px 80px;display:grid}.features div{background:#fff;border:1px solid #ddd;border-radius:12px;padding:28px}.features h2{margin-top:0;font-size:20px}.features p{color:#555;margin-bottom:0;line-height:1.6}@media (width<=700px){.hero{padding-top:70px}.features{grid-template-columns:1fr}.home-actions{flex-direction:column;align-items:stretch}.home-actions button{width:100%}}nav{background:#fff;border-bottom:1px solid #ddd;justify-content:center;align-items:center;gap:10px;min-height:64px;padding:12px 20px;display:flex}nav button{background:0 0;border:none;border-radius:6px;padding:8px 14px}nav button:hover{background:#eee}@media (width<=500px){nav{gap:4px;padding:10px}nav button{padding:8px;font-size:14px}}.movement-coach{max-width:1100px;margin:0 auto;padding:70px 24px}.movement-header{max-width:700px;margin-bottom:50px}.movement-header h1{margin:0;font-size:clamp(38px,6vw,64px);line-height:1.1}.movement-header>p{margin-top:20px;font-size:19px;line-height:1.6}.exercise-selection h2{margin-bottom:24px;font-size:24px}.exercise-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.exercise-card{color:#111;min-height:110px;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #111;border-radius:12px;padding:20px;font-size:17px;transition:border-color .15s,transform .15s;transform:translateY(-2px)}.exercise-card.selected{border:2px solid #111}.analysis-start{background:#fff;border:1px solid #ddd;border-radius:12px;margin-top:40px;padding:24px}.analysis-start>button{color:#fff;font:inherit;cursor:pointer;background:#111;border:none;border-radius:8px;padding:13px 24px}.input-options{margin-top:24px}.input-options h2{margin-bottom:16px}.input-options>button,.upload-button{color:#fff;font:inherit;cursor:pointer;background:#111;border:none;border-radius:8px;margin-right:12px;padding:13px 24px;display:inline-block}.input-options>button:disabled{opacity:.4;cursor:not-allowed}.upload-button:has(input:disabled){opacity:.4;cursor:not-allowed}.upload-button input{display:none}.recording-panel,.video-ready{background:#fff;border:1px solid #ddd;border-radius:10px;margin-top:24px;padding:20px}.recording-panel button{color:#fff;font:inherit;cursor:pointer;background:#111;border:none;border-radius:8px;padding:12px 20px}@media (width<=800px){.exercise-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=500px){.movement-coach{padding:50px 20px}.exercise-grid{grid-template-columns:1fr}}.camera-preview{background:#000;border-radius:10px;width:100%;max-width:640px;margin:20px 0;display:block}.camera-error{background:#f5f5f5;border-radius:8px;margin:16px 0;padding:12px}.video-ready button,.recording-panel button{color:#fff;font:inherit;cursor:pointer;background:#111;border:none;border-radius:8px;margin-top:12px;padding:12px 20px}.video-ready button:disabled{opacity:.5;cursor:not-allowed}.coaching{background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;margin-top:24px;padding:24px}.coaching h3{margin:0 0 18px;font-size:20px}.coaching-content{color:#334155;font-size:15px;line-height:1.65}.coaching-content h1,.coaching-content h2,.coaching-content h3{color:#0f172a;margin:20px 0 8px}.coaching-content h1:first-child,.coaching-content h2:first-child,.coaching-content h3:first-child{margin-top:0}.coaching-content p{margin:10px 0}.coaching-content ul{margin:8px 0 16px;padding-left:22px}.coaching-content li{margin:6px 0}.coaching-content strong{color:#0f172a}.coaching-content em{color:#64748b}.workout-planner{max-width:1100px;margin:0 auto;padding:70px 24px}.planner-header{max-width:720px;margin-bottom:50px}.planner-header h1{letter-spacing:-1.5px;margin:0;font-size:clamp(42px,6vw,68px);line-height:1.08}.planner-header>p{color:#555;max-width:650px;margin:20px 0 0;font-size:19px;line-height:1.6}.planner-builder{background:#fff;border:1px solid #ddd;border-radius:18px;flex-direction:column;gap:28px;padding:36px;display:flex;box-shadow:0 12px 40px #0000000a}.planner-section{border-bottom:1px solid #e8e8e8;padding-bottom:28px}.planner-section:last-of-type{border-bottom:none;padding-bottom:0}.planner-section h2{letter-spacing:-.3px;margin:0 0 18px;font-size:20px}.planner-options{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.planner-options.compact{grid-template-columns:repeat(3,1fr)}.planner-option{color:#111;text-align:left;background:#fafafa;border:1px solid #ddd;border-radius:14px;min-height:112px;padding:20px;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s}.planner-option:hover{background:#fff;border-color:#777;transform:translateY(-2px);box-shadow:0 8px 20px #0000000f}.planner-option.selected{color:#fff;background:#111;border-color:#111;box-shadow:0 8px 24px #00000024}.planner-option span{font-size:16px;font-weight:700;display:block}.planner-option small{color:#777;margin-top:8px;font-size:13px;line-height:1.4;display:block}.planner-option.selected small{color:#cfcfcf}.planner-two-column{grid-template-columns:1fr 1fr;gap:28px;display:grid}.planner-two-column .planner-section{border-bottom:none;padding-bottom:0}.planner-two-column .planner-options.compact{grid-template-columns:repeat(3,1fr)}.planner-two-column .planner-option{text-align:center;justify-content:center;align-items:center;min-height:78px;display:flex}.planner-controls{grid-template-columns:1fr 1fr;gap:18px;display:grid}.planner-controls label{flex-direction:column;gap:9px;font-size:14px;font-weight:700;display:flex}.planner-controls select{color:#111;width:100%;font:inherit;background:#fff;border:1px solid #ddd;border-radius:10px;outline:none;padding:14px 16px;transition:border-color .15s,box-shadow .15s}.planner-controls select:focus{border-color:#111;box-shadow:0 0 0 3px #0000000f}.generate-plan-button{color:#fff;background:#111;border:1px solid #111;border-radius:12px;width:100%;padding:18px 24px;font-size:16px;font-weight:700;transition:transform .18s,background .18s}.generate-plan-button:hover{background:#292929;transform:translateY(-2px)}.generate-plan-button:active{transform:translateY(0)}.generated-plan{flex-direction:column;gap:28px;display:flex}.plan-overview{color:#fff;background:#111;border:1px solid #ddd;border-radius:18px;justify-content:space-between;align-items:flex-end;gap:24px;padding:32px;display:flex}.plan-overview .eyebrow{color:#aaa;margin:0 0 12px}.plan-overview h2{letter-spacing:-1px;margin:0;font-size:clamp(28px,4vw,42px)}.plan-overview p:last-child{color:#bbb;margin:12px 0 0;font-size:15px}.reset-plan-button{color:#fff;white-space:nowrap;background:0 0;border:1px solid #555;border-radius:9px;padding:12px 18px;transition:background .15s,border-color .15s}.reset-plan-button:hover{color:#111;background:#fff;border-color:#fff}.workout-list{flex-direction:column;gap:20px;display:flex}.workout-card{background:#fff;border:1px solid #ddd;border-radius:16px;overflow:hidden}.workout-card-header{border-bottom:1px solid #e8e8e8;justify-content:space-between;align-items:center;gap:20px;padding:26px 28px;display:flex}.workout-day{letter-spacing:1.5px;color:#777;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.workout-card h3{letter-spacing:-.5px;margin:0;font-size:24px}.exercise-count{white-space:nowrap;background:#f1f1f1;border-radius:100px;padding:8px 12px;font-size:13px;font-weight:700}.planned-exercises{padding:0 28px}.planned-exercise{border-bottom:1px solid #eee;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:20px;padding:24px 0;display:grid}.planned-exercise:last-child{border-bottom:none}.exercise-number{color:#555;border:1px solid #ddd;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:13px;font-weight:700;display:flex}.planned-exercise-info h4{letter-spacing:-.2px;margin:0;font-size:17px}.planned-exercise-info p{color:#666;max-width:600px;margin:6px 0 10px;font-size:14px;line-height:1.5}.planned-exercise-info span{color:#555;background:#f2f2f2;border-radius:6px;padding:5px 9px;font-size:11px;font-weight:700;display:inline-block}.exercise-prescription{text-align:center;gap:28px;display:flex}.exercise-prescription div{flex-direction:column;gap:4px;min-width:54px;display:flex}.exercise-prescription strong{font-size:16px}.exercise-prescription span{text-transform:uppercase;letter-spacing:.7px;color:#777;font-size:11px}.planner-note{background:#f1f1f1;border:1px solid #ddd;border-radius:16px;padding:28px}.planner-note h3{margin:0 0 8px;font-size:18px}.planner-note p{color:#555;max-width:750px;margin:0;line-height:1.6}@media (width<=900px){.planner-options{grid-template-columns:repeat(2,1fr)}.planner-options.compact,.planner-two-column .planner-options.compact{grid-template-columns:repeat(3,1fr)}.planned-exercise{grid-template-columns:42px 1fr}.exercise-prescription{text-align:left;grid-column:2;justify-content:flex-start;padding-top:4px}}@media (width<=700px){.workout-planner{padding:48px 18px}.planner-header{margin-bottom:34px}.planner-builder{border-radius:14px;gap:24px;padding:22px}.planner-two-column{grid-template-columns:1fr;gap:24px}.planner-controls{grid-template-columns:1fr}.plan-overview{flex-direction:column;align-items:flex-start;padding:26px}.workout-card-header{flex-direction:column;align-items:flex-start;gap:14px;padding:22px}.planned-exercises{padding:0 22px}.exercise-prescription{gap:20px}.planner-note{padding:22px}}@media (width<=500px){.planner-options,.planner-options.compact,.planner-two-column .planner-options.compact{grid-template-columns:1fr}.planner-option{min-height:78px}.planner-option small{margin-top:5px}.planned-exercise{gap:14px}.exercise-prescription{flex-wrap:wrap;gap:14px}.exercise-prescription div{min-width:48px}.planner-header h1{letter-spacing:-1px}}html{scroll-behavior:smooth}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font-family:inherit}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #0000002e}button,a{transition:transform .18s,box-shadow .18s,background-color .18s,border-color .18s,color .18s,opacity .18s}button:active{transform:scale(.98)}::selection{color:#fff;background:#111}.workout-planner,.movement-coach,.home{animation:.45s both pageEnter}@keyframes pageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.planner-header{position:relative}.planner-header .eyebrow{letter-spacing:1.8px;align-items:center;gap:8px;font-size:11px;font-weight:800;display:inline-flex}.planner-header .eyebrow:before{content:"";background:#111;width:22px;height:1px}.planner-builder{position:relative;overflow:hidden}.planner-builder:before{content:"";background:#111;height:3px;position:absolute;top:0;left:0;right:0}.planner-section{transition:opacity .2s}.planner-option{position:relative;overflow:hidden}.planner-option:after{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff2e,#0000 45%);position:absolute;inset:0}.planner-option.selected{transform:translateY(-2px)}.planner-option.selected:before{content:"SELECTED";letter-spacing:.8px;color:#aaa;font-size:9px;font-weight:800;position:absolute;top:10px;right:10px}.generate-plan-button{position:relative;overflow:hidden;box-shadow:0 12px 24px #00000024}.generate-plan-button:after{content:"→";font-size:21px;transition:transform .2s;position:absolute;right:24px}.generate-plan-button:hover:after{transform:translate(4px)}.generate-plan-button:hover{box-shadow:0 16px 30px #0003}.plan-overview{position:relative;overflow:hidden}.plan-overview:after{content:"";pointer-events:none;border:1px solid #ffffff1f;border-radius:50%;width:240px;height:240px;position:absolute;top:-120px;right:-100px;box-shadow:0 0 0 35px #ffffff08,0 0 0 70px #ffffff05}.plan-overview>*{z-index:1;position:relative}.workout-card{transition:transform .2s,box-shadow .2s,border-color .2s}.workout-card:hover{border-color:#bbb;transform:translateY(-3px);box-shadow:0 14px 32px #0000000f}.workout-card-header{background:linear-gradient(90deg,#fff,#fafafa)}.exercise-number{transition:background .18s,color .18s,border-color .18s}.planned-exercise:hover .exercise-number{color:#fff;background:#111;border-color:#111}.planned-exercise{transition:background .18s}.planned-exercise:hover{background:#fafafa}.exercise-prescription strong{font-variant-numeric:tabular-nums}.planner-note{position:relative;overflow:hidden}.planner-note:before{content:"";background:#111;width:4px;position:absolute;top:0;bottom:0;left:0}@media (width<=700px){button,select{min-height:44px}.planner-option{min-height:88px}.generate-plan-button{min-height:56px}.generate-plan-button:after{right:20px}.workout-card:hover{transform:none}.planned-exercise:hover{background:0 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
