@import url("https://fonts.googleapis.com/css2?family=ABeeZee:ital@0;1&family=Righteous&display=swap");:root{--font-family-headings:"Righteous",cursive;--font-family-body:"ABeeZee",sans-serif;--touch-target-min:44px;--mobile-padding:8px;--desktop-padding:16px;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-mobile-min:1.0625rem;--text-button-mobile:1.25rem;--text-mobile-375:1.125rem;--text-mobile-360:1.0625rem;--button-height-mobile:48px;--button-height-desktop:48px;--primary-color:var(--turquesa-600,#00bec8);--secondary-color:var(--rosa-600,#e11d48);--accent-color:var(--tulip-tree-500,#eab308);--injury-warning:#dc2626;--readaptation:#16a34a}li,ol,ul{margin:0;padding:0;list-style:none}.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:var(--space-4,16px) var(--space-6,24px);border-radius:var(--space-2,8px);border:none;cursor:pointer;font-family:var(--font-family-body);font-weight:var(--font-weight-semibold,600);transition:all .2s ease;min-height:44px;text-decoration:none;white-space:nowrap;user-select:none;-webkit-tap-highlight-color:transparent;line-height:1.3}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none;box-shadow:none;background:var(--gris-400)!important}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.gap-2{gap:.5rem}@media (min-width:640px){.sm\:gap-3{gap:.75rem}}@media (max-width:640px){.btn,.btn-premium,.btn-secondary{font-size:var(--text-button-mobile,1.25rem)!important;line-height:1.3!important;min-height:var(--button-height-mobile,48px)!important;height:auto!important;padding:12px 4px!important}.btn span,.btn-premium span,.btn-secondary span{font-size:inherit!important;line-height:inherit!important}.grid-cols-2{gap:.5rem}}@media (min-width:640px){.sm\:text-\[1\.2rem\]{font-size:1.2rem!important}}.md\:grid-cols-2{grid-template-columns:1fr}@media (min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.md\:grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:768px){.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.gap-4{gap:1rem}.space-y-6>*+*{margin-top:1.5rem}.entrenamiento-personalizado-container body{font-family:var(--font-family-body);font-size:var(--text-base);line-height:1.6;background:var(--gris-100,#f3f4f6)!important}.entrenamiento-personalizado-container h1,.entrenamiento-personalizado-container h2,.entrenamiento-personalizado-container h3,.entrenamiento-personalizado-container h4,.entrenamiento-personalizado-container h5,.entrenamiento-personalizado-container h6{font-family:var(--font-family-headings)}.entrenamiento-personalizado-main-container{line-height:1.6;background:var(--gris-100,#f3f4f6);padding:var(--desktop-padding);padding-top:0;min-height:100vh;width:100%;min-width:360px}.entrenamiento-personalizado-main-content{background:white;max-width:1280px;width:100%;margin:0 auto;border-radius:12px;padding:var(--desktop-padding);box-shadow:0 10px 20px rgba(0,0,0,.1);overflow:visible}.entrenamiento-personalizado-header{margin-bottom:32px;position:relative}.entrenamiento-personalizado-home-button{position:absolute;left:0;top:0;border:2px solid var(--secondary-color);min-width:var(--touch-target-min);min-height:var(--touch-target-min);padding:8px;border-radius:8px;background:white;color:var(--secondary-color);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:1.25rem;font-weight:500}.entrenamiento-personalizado-home-button:hover{background:var(--secondary-color);color:white;transform:translateY(-1px);box-shadow:0 4px 12px rgba(225,29,72,.3)}.entrenamiento-personalizado-title-section{text-align:center;padding:0 80px}.entrenamiento-personalizado-main-title{font-family:var(--font-family-headings);font-size:var(--text-3xl);font-weight:700;color:var(--gris-900);margin-bottom:8px;line-height:1.2}.entrenamiento-personalizado-subtitle{font-size:var(--text-lg);color:var(--gris-600);margin:0;font-weight:400}.injury-warning-section{background:linear-gradient(135deg,#fee2e2,#fecaca);border:2px solid var(--injury-warning);border-radius:12px;padding:20px;margin:20px 0}.injury-warning-title{display:flex;align-items:center;gap:12px;color:var(--injury-warning);font-family:var(--font-family-headings);font-size:var(--text-xl);font-weight:600;margin-bottom:16px}.readaptation-section{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:2px solid var(--readaptation);border-radius:12px;padding:20px;margin:20px 0}.readaptation-title{display:flex;align-items:center;gap:12px;color:var(--readaptation);font-family:var(--font-family-headings);font-size:var(--text-xl);font-weight:600;margin-bottom:16px}.entrenamiento-personalizado-workout-container{margin-top:40px}.entrenamiento-personalizado-workout-blocks{display:grid;gap:24px}.entrenamiento-personalizado-workout-block{background:white;border:2px solid var(--gris-200);border-radius:12px;padding:20px;transition:all .3s ease}.entrenamiento-personalizado-workout-block:hover{border-color:var(--primary-color);box-shadow:0 4px 12px rgba(0,190,200,.15)}.entrenamiento-personalizado-workout-block.injury-block{border-color:var(--injury-warning);background:linear-gradient(135deg,#fff5f5,#fef2f2)}.entrenamiento-personalizado-workout-block.injury-block:hover{box-shadow:0 4px 12px rgba(220,38,38,.15)}.entrenamiento-personalizado-workout-block.readaptation-block{border-color:var(--readaptation);background:linear-gradient(135deg,#f0fdf4,#f0fdf4)}.entrenamiento-personalizado-workout-block.readaptation-block:hover{box-shadow:0 4px 12px rgba(22,163,74,.15)}.entrenamiento-personalizado-block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--gris-200)}.entrenamiento-personalizado-block-title{font-family:var(--font-family-headings);font-size:var(--text-xl);font-weight:600;color:var(--gris-900);margin:0}.entrenamiento-personalizado-btn-primary{background:linear-gradient(135deg,var(--primary-color) 0,var(--turquesa-700) 100%);color:white;border:none;padding:12px 24px;border-radius:8px;font-family:var(--font-family-body);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .3s ease;min-height:var(--button-height-desktop);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;gap:8px}.entrenamiento-personalizado-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,190,200,.3)}.entrenamiento-personalizado-btn-secondary{background:white;color:var(--primary-color);border:2px solid var(--primary-color);padding:10px 22px;border-radius:8px;font-family:var(--font-family-body);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .3s ease;min-height:var(--button-height-desktop);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;gap:8px}.entrenamiento-personalizado-btn-secondary:hover{background:var(--primary-color);color:white;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,190,200,.3)}.entrenamiento-personalizado-btn-danger{background:linear-gradient(135deg,var(--injury-warning) 0,#b91c1c 100%);color:white;border:none;padding:12px 24px;border-radius:8px;font-family:var(--font-family-body);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all .3s ease;min-height:var(--button-height-desktop);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;gap:8px}.entrenamiento-personalizado-btn-danger:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(220,38,38,.3)}@media (max-width:768px){.entrenamiento-personalizado-main-container{padding:var(--mobile-padding);padding-top:0}.entrenamiento-personalizado-main-content{border-radius:8px;padding:var(--mobile-padding)}.entrenamiento-personalizado-title-section{padding:0 60px}.entrenamiento-personalizado-main-title{font-size:var(--text-2xl)}.entrenamiento-personalizado-subtitle{font-size:var(--text-base)}.entrenamiento-personalizado-workout-blocks{gap:16px}.entrenamiento-personalizado-workout-block,.injury-warning-section,.readaptation-section{padding:16px}}@media (max-width:640px){.entrenamiento-personalizado-title-section{padding:0 50px}.entrenamiento-personalizado-main-title{font-size:var(--text-xl)}.entrenamiento-personalizado-subtitle{font-size:var(--text-sm)}.entrenamiento-personalizado-btn-danger,.entrenamiento-personalizado-btn-primary,.entrenamiento-personalizado-btn-secondary{font-size:var(--text-sm);padding:10px 16px;min-height:var(--button-height-mobile)}}.instructions-button,.video-button{background:var(--gris-600,#4b5563);color:white;border:1px solid var(--gris-600,#4b5563);padding:8px 24px;margin:0;border-radius:8px;font-size:var(--text-base);font-weight:600;transition:all .2s ease;display:inline-flex;align-items:center;gap:6px;min-height:var(--touch-target-min);cursor:pointer}.instructions-button:hover,.video-button:hover{background:var(--gris-700,#374151);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.regenerate-individual-button{background:#e11d48;color:white;border:none;padding:8px 20px;border-radius:8px;transition:all .2s ease;font-weight:700;cursor:pointer;min-height:var(--touch-target-min);display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-base)}.regenerate-individual-button:disabled{background:var(--gris-400);cursor:not-allowed;opacity:.5}.regenerate-individual-button:not(:disabled):hover{background:#be1238;transform:translateY(-1px);box-shadow:0 4px 12px rgba(225,29,72,.3)}.regenerate-block-button{background:#e11d48;color:white;border:none;padding:10px 32px;border-radius:8px;transition:all .2s ease;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:var(--text-base)}.regenerate-block-button:disabled{background:var(--gris-400);cursor:not-allowed;opacity:.5}.regenerate-block-button:not(:disabled):hover{background:#be1238;transform:translateY(-1px);box-shadow:0 2px 8px rgba(225,29,72,.3)}.regenerate-block-text{line-height:1.2;text-align:center;font-size:var(--text-base);white-space:normal}.save-block-button{background:#e11d48;color:white;border:none;padding:10px 32px;border-radius:8px;transition:all .2s ease;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:var(--text-base)}.save-block-button:disabled{background:var(--gris-400);cursor:not-allowed;opacity:.5}.save-block-button:not(:disabled):hover{background:#be1238;transform:translateY(-1px);box-shadow:0 2px 8px rgba(225,29,72,.3)}.save-block-text{line-height:1.2;text-align:center;font-size:var(--text-base);white-space:nowrap}.results-title{font-weight:700;margin:16px 0 24px;text-align:center;color:#be123c;font-size:var(--text-2xl);font-family:var(--font-family-headings);background:#fce7f3;padding:20px;border-radius:12px;border:2px solid #e11d48;box-shadow:0 2px 8px rgba(225,29,72,.1);display:flex;align-items:center;justify-content:center;gap:12px}.results-title .material-symbols-sharp{color:#be123c!important;font-weight:700!important}.workout-blocks-container{display:grid;grid-template-columns:1fr 1fr;gap:24px}.workout-block,.workout-blocks-container{margin-bottom:24px;overflow:visible;width:100%}.workout-block{padding:var(--desktop-padding);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.1);background:white}.workout-block-title{color:var(--rosa-600,#e11d48);font-family:var(--font-family-headings);font-size:1.3125rem;font-weight:700;margin:0 0 16px}@media (max-width:768px){.workout-blocks-container{grid-template-columns:1fr;gap:8px;margin-bottom:8px;overflow-x:hidden}.workout-block{padding:2px 4px 4px 0;margin-bottom:12px;border-radius:8px;overflow-x:hidden;overflow-y:visible;width:100%;min-width:0}.workout-block-title{font-size:1.3125rem}.exercise-item{margin-bottom:24px}.exercise-content{padding-left:16px;padding-right:16px}.exercise-name-text{max-width:180px;width:100%;font-size:var(--text-mobile-min);word-break:break-word;white-space:normal;overflow:hidden;text-overflow:ellipsis;height:auto}}@media (max-width:640px){.instructions-button,.video-button{font-size:14px!important;padding:8px 16px!important;max-width:140px}.regenerate-individual-button{padding:6px 12px!important;font-size:14px!important;max-width:48px!important;min-width:44px!important;flex-shrink:0}.regenerate-block-button,.save-block-button{padding:10px 16px!important;font-size:var(--text-mobile-min)!important;width:100%!important;white-space:normal!important;min-height:44px!important;margin-top:0!important;margin-bottom:12px!important}.exercise-name-text{max-width:200px}}@media (max-width:374px){.exercise-name-text{max-width:160px}}.badge-responsive{font-size:var(--text-sm);padding:4px 8px;margin:0;border-radius:4px;background:#f3f4f6;color:#374151;border:1px solid #e5e7eb;overflow:visible;white-space:nowrap;line-height:1.2;flex-shrink:1;min-width:fit-content}@media (max-width:768px){.badge-responsive{font-size:.625rem;padding:1px 3px;border-radius:3px;line-height:1.2}}@media (max-width:374px){.badge-responsive{font-size:.55rem;padding:1px 2px;border-radius:2px;line-height:1.1}}.entrenamiento-personalizado-loading{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--gris-600);font-size:var(--text-lg)}.entrenamiento-personalizado-loading-spinner{animate:spin 1s linear infinite;margin-right:12px;font-size:1.5rem;color:var(--primary-color)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.entrenamiento-personalizado-error{background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;padding:16px;color:#dc2626;margin:16px 0}.entrenamiento-personalizado-success{background:#ecfdf5;border:1px solid #86efac;border-radius:8px;padding:16px;color:#16a34a;margin:16px 0}.entrenamiento-personalizado-info{background:#eff6ff;border:1px solid #93c5fd;border-radius:8px;padding:16px;color:#1d4ed8;margin:16px 0}.injury-type-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:var(--text-sm);font-weight:600;background:var(--injury-warning);color:white}.injury-type-badge.rodilla{background:#dc2626}.injury-type-badge.hombro{background:#ea580c}.injury-type-badge.espalda{background:#c2410c}.injury-type-badge.muneca{background:#a21caf}.injury-type-badge.tobillo{background:#7c3aed}.block-badge{padding:4px 8px;border-radius:4px;font-size:var(--text-xs);font-weight:600;text-align:center;white-space:nowrap}.block-badge.mobility{background:rgba(0,190,200,.1);color:var(--primary-turquesa);border:1px solid var(--primary-turquesa)}.block-badge.core{background:rgba(225,29,72,.1);color:var(--secondary-rosa);border:1px solid var(--secondary-rosa)}.block-badge.strength{background:rgba(234,179,8,.1);color:var(--accent-tulip);border:1px solid var(--accent-tulip)}