body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}table{margin-top:20px}th{background-color:#2c3e50;color:#fff}td{background-color:#34495e;color:#ecf0f1}tr:nth-child(2n){background-color:#2c3e50}tr:hover{background-color:#1abc9c}thead{border-bottom:2px solid #00bfae}button{margin-top:15px}button.close{background-color:tomato;margin-top:20px}button:disabled{background-color:#7d7d7d;cursor:not-allowed}input{background-color:#2d2d2d;border:1px solid #444;border-radius:5px;color:#fff;font-size:16px;margin:5px 0;padding:10px}input:focus{border-color:#00bfae;outline:none}label{display:block;font-size:18px;margin:10px 0 5px}body{font-family:Poppins,sans-serif}.container{background-color:#444;border-radius:15px;box-shadow:0 4px 6px #0000001a;max-width:800px;padding:30px;width:100%}h1{color:#00bfff;font-family:Montserrat,sans-serif;text-align:center}input[type=submit],input[type=text],select,textarea{background-color:#222;border:1px solid #ccc;border-radius:10px;color:#fff;font-size:16px;margin:12px 0;padding:12px;width:100%}input[type=submit]{background-color:#00bfff;border:none;color:#fff;cursor:pointer;transition:background-color .3s ease}input[type=submit]:hover{background-color:#09c}.card{background-color:#2a2a2a;border-radius:12px;margin-bottom:20px;padding:20px}textarea{background-color:#1c1c1c;border:none;color:#fff;font-size:14px;resize:vertical}.success-message{background-color:#32cd32}.error-message,.success-message{border-radius:5px;color:#fff;margin-top:20px;padding:10px;text-align:center}.error-message{background-color:#ff4c4c}.btn,button{background-color:#00bfff;border:none;border-radius:10px;color:#fff;cursor:pointer;font-family:Poppins,sans-serif;font-size:16px;padding:12px 20px}.btn:hover,button:hover{background-color:#09c}.container .form-group{margin-bottom:15px}.card .form-group{margin-bottom:10px}@media (max-width:768px){.container{padding:15px}h1{font-size:24px}}.modal{background:#00000080;overflow:hidden}.modal-content{height:auto;padding:20px}.modal-content button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:20px;padding:30px}.modal-content button:hover{background-color:#0056b3}body{align-items:center;background-color:#333;box-sizing:border-box;color:#fff;display:flex;flex-direction:column;font-family:Arial,sans-serif;height:100vh;justify-content:center;margin:0;padding:0}h1{color:#1e90ff;font-size:2.5rem;margin-bottom:20px}.button-container{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:30px}button{background-color:#1e90ff;border-radius:5px;font-size:16px;padding:12px 20px}button:hover{background-color:#4682b4;transform:translateY(-3px)}button:active{background-color:#5a9bd5;transform:translateY(0)}.modal{align-items:center;background-color:#000000b3;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal-content{animation:fadeIn .3s ease-in-out;background-color:#2e2e2e;border-radius:8px;box-shadow:0 4px 8px #0000004d;color:#fff;max-width:600px;padding:30px;width:80%}.modal-content button{background-color:tomato;margin:20px}@media (max-width:600px){.modal-content{padding:20px;width:90%}input[type=email],input[type=text],textarea{font-size:14px;padding:8px}button{font-size:18px;width:100%}}.client-details-section{background-color:#2c2c2c;border-radius:10px;box-shadow:0 4px 8px #0003;color:#fff;margin-top:20px}.client-details-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.client-details-section h2{color:#4caf50;flex:1 1;font-size:1.8rem;margin-bottom:0;text-align:center}.delete-client-btn{align-items:center;background-color:#e74c3c;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:6px;padding:10px 20px;transition:all .2s ease}.delete-client-btn:hover{background-color:#c0392b;box-shadow:0 4px 8px #e74c3c4d;transform:translateY(-2px)}.delete-client-btn:active{transform:translateY(0)}.profile-container{flex-direction:row}.preferences-info,.profile-info{background-color:#1a1a1a;padding:15px}.preferences-info h3,.profile-info h3{color:#4caf50;font-size:1.5rem}p{font-size:1rem;line-height:1.6;margin:5px 0}.client-details-section{margin-top:30px;padding:20px}.profile-container{gap:30px}.preferences-info,.profile-info{background-color:#222;border:1px solid #444}h2{margin-bottom:20px}.preferences-info h3,.profile-info h3{font-size:1.4rem;margin-bottom:15px;text-align:left}.client-details-section h2{position:relative}.client-details-section h2:after{background-color:#4caf50;content:"";display:block;height:2px;margin:10px auto 0;width:60%}button.active-client{background-color:#4caf50;border:2px solid #4caf50}@media (max-width:768px){.profile-container{flex-direction:column}}button:active{transform:scale(.98)}h2{color:#fff;font-size:1.6rem;margin-bottom:15px;text-align:center}button{border-radius:20px;font-size:1rem;padding:10px 15px;transition:all .2s ease-in-out}button:hover{background-color:#37a1e8;color:#fff}button.active-client{background:linear-gradient(90deg,#4caf50,#2a8f3a);border:none;box-shadow:0 4px 10px #0000004d;color:#fff;font-weight:700}button:focus{box-shadow:0 0 8px #4caf50;outline:none}.profile-container{background-color:#222;border-radius:8px;box-shadow:0 4px 10px #0000004d;justify-content:space-between;padding:15px}.preferences-info,.profile-info{background-color:#333;border-radius:8px;box-shadow:0 4px 8px #0003;color:#fff;flex:1 1;font-size:1rem;min-height:250px;overflow-y:auto;padding:20px}.preferences-info p,.profile-info p{margin:8px 0}.preferences-info h3,.profile-info h3{color:#0f0;margin-bottom:10px}.profile-container h2{border-bottom:2px solid #0f0;margin-top:0;padding-bottom:5px}@media (max-width:768px){.profile-container{flex-direction:column}.client-details-header{align-items:stretch;flex-direction:column}.client-details-section h2{text-align:center}.delete-client-btn{justify-content:center;width:100%}}.client-details-section input{background-color:#333;border:1px solid #555;border-radius:4px;box-sizing:border-box;color:#fff;font-size:14px;margin-bottom:10px;padding:8px;width:100%}.client-details-section input:focus{border-color:#00bfff;box-shadow:0 0 5px #00bfff;outline:none}.edit-buttons button{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;margin:10px;padding:10px 20px;transition:background-color .3s ease}.edit-buttons button:hover{background-color:#0056b3}.edit-buttons button:nth-child(2){background-color:#dc3545}.edit-buttons button:nth-child(2):hover{background-color:#a71d2a}.preferences-info,.profile-info{height:auto;overflow:hidden}.workout-generation-container{display:flex;flex-direction:column;gap:30px;margin:20px 0}.endurance-days-section,.strength-days-section{background-color:#2d2d2d;border:2px solid #444;border-radius:10px;padding:20px}.strength-days-section{border-color:#ff6b35}.endurance-days-section{border-color:#4ecdc4}.strength-days-section h3{color:#ff6b35;font-size:1.3em;margin-bottom:15px}.endurance-days-section h3{color:#4ecdc4;font-size:1.3em;margin-bottom:15px}.days-selection{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.days-selection label{-webkit-tap-highlight-color:transparent;align-items:center;background-color:#3d3d3d;border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;justify-content:center;min-height:44px;min-width:80px;padding:12px 16px;transition:all .2s ease;-webkit-user-select:none;user-select:none}.days-selection label:hover{background-color:#4d4d4d;transform:translateY(-2px)}.days-selection label:active{transform:translateY(0)}.days-selection input[type=checkbox]{accent-color:#ff6b35;cursor:pointer;flex-shrink:0;height:20px;margin:0;width:20px}.strength-days-section .days-selection label:hover{background-color:#ff6b3520;border-color:#ff6b35}.strength-days-section .days-selection label:has(input[type=checkbox]:checked){background-color:#ff6b35;border-color:#ff6b35;color:#fff}.strength-days-section .days-selection label:has(input[type=checkbox]:checked) span{color:#fff}.endurance-days-section .days-selection label:hover{background-color:#4ecdc420;border-color:#4ecdc4}.endurance-days-section .days-selection label:has(input[type=checkbox]:checked){background-color:#4ecdc4;border-color:#4ecdc4;color:#fff}.endurance-days-section .days-selection label:has(input[type=checkbox]:checked) span{color:#fff}.hybrid-day{background-color:#ff6b3520!important;border:2px solid #ff6b35!important;position:relative}.hybrid-indicator{align-items:center;background-color:#ff6b35;border-radius:50%;color:#fff;display:flex;font-size:10px;font-weight:700;height:16px;justify-content:center;position:absolute;right:-5px;top:-5px;width:16px}.workout-types-selection{margin-top:15px}.workout-types-selection h4{color:#ecf0f1;font-size:1.1em;margin-bottom:10px}.endurance-workout-section,.strength-workout-section{background-color:#2d2d2d;border-radius:10px;margin:20px 0;padding:20px}.strength-workout-section{border:2px solid #ff6b35}.endurance-workout-section{border:2px solid #4ecdc4}.strength-workout-section h3{color:#ff6b35;font-size:1.3em;margin-bottom:15px}.endurance-workout-section h3{color:#4ecdc4;font-size:1.3em;margin-bottom:15px}.strength-table th{background-color:#ff6b35;color:#fff}.endurance-table th{background-color:#4ecdc4;color:#fff}.workout-cards-mobile{display:none}.workout-table-desktop{display:block}.workout-day-card{background-color:#34495e;border:1px solid #555;border-radius:8px;margin-bottom:20px;padding:15px}.day-card-header{align-items:center;border-bottom:2px solid #555;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px;-webkit-user-select:none;user-select:none}.day-header-content{align-items:center;display:flex;flex:1 1;gap:10px}.day-card-header h4{color:#fff;font-size:1.2rem;font-weight:600;margin:0}.day-expand-toggle{align-items:center;background:#0000;border:2px solid #555;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1rem;height:36px;justify-content:center;padding:0;transition:all .2s ease;width:36px}.day-expand-toggle:hover{background-color:#555;border-color:#1e90ff}.muscle-group-badge{background-color:#ff6b35;border-radius:12px;color:#fff;font-size:.85rem;font-weight:500;padding:4px 12px}.muscle-group-badge.endurance{background-color:#4ecdc4}.exercise-card{border-left:3px solid #ff6b35}.endurance-card,.exercise-card{background-color:#1e2832!important;border-radius:8px;color:#fff!important;margin-bottom:12px;padding:12px}.endurance-card{border-left:3px solid #4ecdc4}.exercise-name-btn-mobile{background:#0000;border:none;color:#4da6ff;cursor:pointer;font-size:1.1rem;font-weight:700;line-height:1.4;margin-bottom:12px;padding:0;text-align:left;transition:color .2s ease;width:100%}.exercise-name-btn-mobile:hover{color:#1e90ff;text-decoration:underline}.exercise-details-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,1fr);margin-bottom:10px}.detail-item{background:linear-gradient(135deg,#fff,#f8f9fa)!important;border:2px solid #e9ecef!important;border-radius:10px;box-shadow:0 4px 12px #00000014!important;flex-direction:column;gap:4px;padding:12px}.detail-item:hover{box-shadow:0 6px 16px #0000001f!important}.detail-label{color:#495057!important;font-size:.8rem;font-weight:700;letter-spacing:1px;opacity:.9;text-transform:uppercase}.detail-value{color:#212529!important;font-size:1.2rem;font-weight:800;font-weight:600}.endurance-card .exercise-description,.endurance-card .exercise-explanation,.exercise-card .exercise-description,.exercise-card .exercise-explanation{background:#0000!important;border-left:none!important;border-radius:0!important;border-top:1px solid #444;color:#fff!important;font-size:.95rem;font-weight:400;line-height:1.7;margin-top:12px;margin:12px 0!important;padding-top:12px;padding:12px 0!important}.endurance-card .exercise-description strong,.endurance-card .exercise-explanation strong,.exercise-card .exercise-description strong,.exercise-card .exercise-explanation strong{color:#fff!important;display:block;font-size:1rem;font-weight:700;margin-bottom:8px}.endurance-card-header{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.modality-badge-mobile{background-color:#4ecdc4;text-transform:uppercase}.intensity-badge-mobile,.modality-badge-mobile{border-radius:8px;color:#fff;font-size:.85rem;font-weight:600;padding:4px 10px}.intensity-badge-mobile{background-color:#3498db}.workout-actions{background-color:#2d2d2d;border-radius:8px;bottom:0;gap:10px;margin-top:20px;padding:15px;position:-webkit-sticky;position:sticky;z-index:10}.workout-actions button{flex:1 1;font-size:1rem;font-weight:600;margin:0;min-height:44px;min-width:150px;padding:12px 24px}.workout-type-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.workout-type-row label{color:#ecf0f1;flex-shrink:0;font-weight:500;min-width:80px}.workout-type-row>div{flex:1 1;min-width:200px}.workout-type-row .css-1pahdxg-control,.workout-type-row .css-1s2u09g-control{font-size:16px;min-height:44px}.workout-type-row .css-1pahdxg-control:hover,.workout-type-row .css-1s2u09g-control:hover{border-color:#1e90ff}.workout-type-row .css-1hb7zxy-IndicatorsContainer{min-width:44px}.workout-type-row .css-1uccc91-singleValue,.workout-type-row .css-1wa3eu0-placeholder{font-size:16px}.workout-type-row .css-26l3qy-menu{font-size:16px;z-index:9999}.workout-type-row .css-1n7v3ny-option{align-items:center;display:flex;min-height:44px;padding:12px}select option:hover{background-color:#f0f0f0!important;color:#000!important}select:active,select:focus{background-color:#fff!important;color:#000!important}.modal-content{max-height:80vh}.client-details-section{max-height:75vh;overflow-y:auto;padding-right:10px}.profile-container{display:flex;flex-wrap:wrap;gap:20px;max-width:100%;overflow:hidden}.App{height:100vh;overflow-y:auto}input,select,textarea{background-color:#222;border:1px solid #ccc;border-radius:5px;color:#fff;font-size:16px;margin:5px 0;padding:8px;width:100%}table{max-height:50vh}.workout-form{max-height:75vh;overflow-y:auto;padding-right:10px}.grid-container{display:flex;flex-wrap:wrap;gap:20px}.days-selection{flex:1 1;min-width:200px}.workout-types-selection{flex:2 1;min-width:250px}select{border:1px solid #ccc;border-radius:5px;font-size:14px;padding:8px}select,select option{background-color:#fff!important;color:#000!important}button{background-color:#007bff;border:none;color:#fff;cursor:pointer;margin:5px;padding:10px;transition:background-color .3s ease,transform .2s ease}button:hover{background-color:#0056b3;transform:scale(1.05)}body.modal-open{overflow:hidden}.css-2b097c-container{width:100%!important}.css-1pahdxg-control,.css-1s2u09g-control{background-color:#333!important;border:1px solid #555!important;color:#fff!important}.css-14el2xx-placeholder{color:#bbb!important}.css-12jo7m5-MultiValue{background-color:#007bff!important;border-radius:5px!important;color:#fff!important}.css-12jo7m5-MultiValue__label{color:#fff!important}.css-12jo7m5-MultiValue__remove{background-color:initial!important;border-radius:50%!important;color:#fff!important;padding:3px!important}.css-12jo7m5-MultiValue__remove:hover{background-color:#f44!important}.css-26l3qy-menu{color:#fff!important}.css-26l3qy-menu,.css-4ljt47-MenuList{background-color:#222!important}.css-10wo9uf-option{background-color:#007bff!important;color:#fff!important}.css-10wo9uf-option:hover{background-color:#0056b3!important;color:#fff!important}.css-1okebmr-indicatorSeparator{background-color:#555!important}.css-tlfecz-indicatorContainer{color:#fff!important}.css-1pahdxg-control:focus{box-shadow:0 0 5px #007bff!important;outline:none!important}.table-container{max-width:100%;width:100%}table{background-color:#2d2d2d;border-collapse:collapse;border-radius:8px;box-shadow:0 4px 8px #0003;max-width:100%;min-width:800px;overflow:hidden}td,th{word-wrap:break-word;border:1px solid #ccc;padding:10px;text-align:left;white-space:normal}td{overflow-wrap:break-word;word-break:break-word}button{position:relative;z-index:3}.table-container{max-height:60vh;overflow-x:auto;overflow-y:auto}table{display:block;overflow-x:auto;white-space:nowrap;width:100%}thead{background-color:#2c3e50;position:-webkit-sticky;position:sticky;top:0;z-index:2}.workout-layout{grid-gap:16px;align-items:start;border:2px solid red;display:grid!important;gap:16px;grid-template-columns:2fr 1fr!important;max-width:100%;overflow-x:hidden;width:100%}.workout-pane{border:2px solid blue;max-width:100%;min-width:0;overflow-x:auto}.agent-sidebar{background:#1f2329;border:2px solid green;border-radius:12px;display:flex;flex-direction:column;gap:10px;max-height:80vh;max-width:400px;min-width:300px;padding:12px;position:-webkit-sticky;position:sticky;top:12px}.agent-quick{display:flex;flex-wrap:wrap;gap:8px}.agent-quick button{border-radius:8px;font-size:12px;padding:6px 10px}.agent-messages{background:#111418;border-radius:8px;max-height:40vh;min-height:160px;padding:8px}.msg.user{color:#e8e8e8}.msg.assistant{color:#a8d1ff}.agent-input{display:flex;gap:8px}.agent-input input{background:#0e1116;border:1px solid #2b2f36;border-radius:8px;color:#e8e8e8;flex:1 1;padding:8px}.agent-input button{border-radius:8px;padding:8px 12px}.send-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}@media (max-width:1200px){.workout-layout{gap:20px;grid-template-columns:1fr!important}.agent-sidebar{max-width:100%;min-width:100%}}@media (min-width:1201px){.workout-layout{grid-template-columns:2fr 1fr!important}}.quick-actions{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 15px #0000001a;margin:20px 0;padding:15px}.quick-actions h3{color:#fff;font-size:16px;font-weight:600;margin:0 0 15px;text-align:center}.quick-action-btn{background:#ffffffe6;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#333;display:block;font-size:14px;margin:8px 0;width:100%}.quick-action-btn:hover{background:#fff;box-shadow:0 4px 12px #00000026}.quick-action-btn:active{transform:translateY(0)}.video-modal-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.video-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000004d;max-height:90vh;max-width:90vw;overflow:hidden}.video-modal-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.video-modal-header h3{color:#333;font-size:1.5rem;margin:0}.close-btn{transition:background-color .2s}.close-btn:hover{background-color:#e9ecef;color:#333}.video-container{align-items:center;display:flex;justify-content:center;min-height:400px;padding:20px}.video-container iframe{border:none;border-radius:4px;height:400px;width:100%}.no-video-message{max-width:500px;padding:20px;text-align:center}.no-video-icon{font-size:4rem;margin-bottom:20px;opacity:.7}.no-video-message h4{color:#dc3545;font-size:1.3rem;margin-bottom:20px}.exercise-description{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin:20px 0;padding:20px;text-align:left}.exercise-description p{color:#333;line-height:1.6;margin:10px 0}.exercise-description p:first-child{color:#007bff;font-weight:600;margin-bottom:15px}.video-note{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-top:20px;padding:15px}.video-note p{color:#856404;font-size:.9rem;line-height:1.4;margin:0}.exercise-name-btn{background:none;border-radius:5px;color:#00bfae;display:block;font-size:inherit;padding:5px 10px;text-decoration:none}.exercise-name-btn:hover{background-color:#00bfae1a;color:#fff;transform:translateX(5px)}.exercise-name-btn:active{transform:translateX(5px) scale(.98)}.video-message{margin-top:10px}.video-message p{margin:5px 0}.video-link-item{margin:8px 0}.video-link-btn{background:linear-gradient(135deg,#00bfae,#08c);border-radius:20px;box-shadow:0 2px 8px #00bfae4d;font-size:14px;padding:8px 16px}.video-link-btn:hover{background:linear-gradient(135deg,#00d4c0,#09d);box-shadow:0 4px 12px #00bfae66}.message-content{margin-top:5px}.auth-screen{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-container{background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;max-width:450px;padding:40px;text-align:center;width:100%}.auth-container h1{color:#333;font-size:2rem;margin-bottom:10px}.auth-container p{color:#666;font-size:1.1rem;margin-bottom:30px}.google-login-section{display:flex;justify-content:center;margin-bottom:30px}.auth-error{background:#fdf2f2;border:1px solid #fecaca;border-radius:8px;color:#e74c3c;font-size:.9rem;margin:15px 0;padding:10px}.auth-note{background:#f8f9fa;border-left:4px solid #667eea;border-radius:10px;padding:20px}.auth-note p{color:#666;font-size:.9rem;margin:5px 0}.app-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.app-header h1{font-size:2rem;margin:0}.user-info{align-items:flex-end;display:flex;flex-direction:column;gap:5px}.user-name{font-size:1.1rem;font-weight:600}.user-email{font-size:.9rem;opacity:.9}.logout-button{background:#fff3;border:1px solid #ffffff4d;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;margin-top:5px;padding:8px 16px;transition:all .3s ease}.logout-button:hover{background:#ffffff4d;transform:translateY(-1px)}.public-workout-container{background-color:#1e1e1e;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.public-workout-header{background:linear-gradient(135deg,#2c3e50,#3498db);border-radius:15px;box-shadow:0 8px 32px #0000004d;margin-bottom:30px;padding:20px;text-align:center}.public-workout-header h1{color:#ecf0f1;font-size:2.5rem;margin-bottom:10px;text-shadow:2px 2px 4px #00000080}.public-workout-header p{color:#bdc3c7;font-size:1.2rem;margin:0}.public-workout-container .loading{color:#3498db;font-size:1.5rem;padding:50px;text-align:center}.public-workout-container .error{background-color:#2d2d2d;border:2px solid #e74c3c;border-radius:10px;color:#e74c3c;font-size:1.5rem;padding:50px;text-align:center}@media (max-width:768px){.public-workout-container{padding:10px}.public-workout-header h1{font-size:2rem}.public-workout-container .table-container{font-size:.9rem}.public-workout-container .table-container td,.public-workout-container .table-container th{padding:8px 4px}}.workout-layout{background-color:#2d2d2d;border-radius:15px;box-shadow:0 8px 32px #0000004d;margin-top:20px;padding:20px}.workout-pane h2{border-bottom:3px solid #3498db;color:#ecf0f1;font-size:2rem;margin-bottom:20px;padding-bottom:10px;text-align:center}.day-header{background:linear-gradient(135deg,#2c3e50,#3498db)!important;color:#fff!important;font-weight:700;text-align:center;vertical-align:middle}.muscle-group{font-size:.9rem;font-weight:400;opacity:.9}.exercise-name-btn{background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:8px 12px;text-align:left;transition:all .3s ease;width:100%}.exercise-name-btn:hover{background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 4px 12px #e74c3c66;transform:translateY(-2px)}.workout-actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-top:30px}.start-workout-btn,.workout-agent-btn{background:linear-gradient(135deg,#27ae60,#2ecc71);border:none;border-radius:10px;box-shadow:0 4px 15px #0003;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;padding:15px 25px;transition:all .3s ease}.start-workout-btn:hover,.workout-agent-btn:hover{background:linear-gradient(135deg,#2ecc71,#27ae60);box-shadow:0 8px 25px #0000004d;transform:translateY(-3px)}.workout-agent-btn{background:linear-gradient(135deg,#9b59b6,#8e44ad)}.workout-agent-btn:hover{background:linear-gradient(135deg,#8e44ad,#9b59b6)}.interactive-workout-active,.interactive-workout-start{animation:fadeIn .5s ease-in-out}.start-workout-btn:active,.workout-agent-btn:active{box-shadow:0 2px 8px #0000004d;transform:translateY(-1px)}.btn-close-public{box-shadow:0 2px 8px #0003;transition:all .3s ease}.btn-close-public:hover{background:#c0392b!important;box-shadow:0 4px 12px #0000004d;transform:scale(1.1)}.btn-close-public:active{transform:scale(.95)}.dashboard-nav{display:flex;justify-content:flex-end;margin-bottom:20px}.dashboard-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.dashboard-button:hover{box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.dashboard-wrapper{box-sizing:border-box;max-width:100%;overflow-x:hidden;position:relative;width:100%}.back-to-clients-button{background-color:#34495e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;margin-bottom:20px;min-height:44px;padding:10px 20px;transition:all .3s ease}.back-to-clients-button:hover{background-color:#3d566e;transform:translateX(-3px)}@media (max-width:480px){.back-to-clients-button{font-size:.95rem;margin-bottom:15px;padding:12px 20px;width:100%}}.clients-management-section{background-color:#2d2d2d;border-radius:10px;margin:20px 0;padding:20px}.clients-management-section h2{color:#fff;font-size:1.8rem;margin-bottom:20px}.clients-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:20px}.client-card{background-color:#34495e;border:2px solid #0000;border-radius:10px;box-shadow:0 4px 8px #0003;cursor:pointer;padding:20px;transition:all .3s ease}.client-card:hover{border-color:#1e90ff;box-shadow:0 6px 12px #0000004d;transform:translateY(-5px)}.client-card.active-client-card{background-color:#3d5a7a;border-color:#1e90ff;box-shadow:0 6px 12px #1e90ff66}.client-card-header{align-items:center;border-bottom:1px solid #555;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.client-card-header h3{color:#fff;font-size:1.3rem;margin:0}.client-goal{background-color:#2c3e50;border-radius:5px;color:#95a5a6;font-size:.9rem;padding:5px 10px}.workout-info{margin-top:15px}.workout-status-row{flex-wrap:wrap;justify-content:space-between;margin-bottom:15px}.workout-sent-badge{border-radius:20px;font-size:.85rem;font-weight:700;padding:6px 12px}.workout-sent-badge.sent{background-color:#27ae60;color:#fff}.workout-sent-badge.not-sent{background-color:#7f8c8d;color:#fff}.sent-date{color:#95a5a6;font-size:.85rem}.workout-status-row{align-items:center;display:flex;gap:10px;margin-bottom:10px}.workout-link-access-status{background-color:#2c3e50;border-radius:6px;margin-bottom:10px;margin-top:10px;padding:8px 12px}.link-access-info{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.link-access-badge{border-radius:12px;font-size:.8rem;font-weight:500;padding:4px 10px;white-space:nowrap}.link-access-badge.accessed{background-color:#27ae60;color:#fff}.link-access-badge.not-accessed{background-color:#7f8c8d;color:#fff}.link-access-time{color:#bdc3c7;font-size:.85rem}.link-access-count{color:#95a5a6;font-size:.8rem;font-style:italic}.workout-days-section{margin-bottom:15px}.workout-days-section strong{color:#ecf0f1;display:block;font-size:.95rem;margin-bottom:10px}.days-list{gap:12px}.day-item,.days-list{display:flex;flex-direction:column}.day-item{background-color:#2c3e50;border:1px solid #34495e;border-radius:8px;gap:8px;margin-bottom:8px;padding:10px}.day-header-row{gap:10px;justify-content:space-between}.day-header-row,.day-title-section{align-items:center;display:flex;flex-wrap:wrap}.day-title-section{gap:8px}.workout-types-badges{display:flex;flex-wrap:wrap;gap:6px}.workout-type-badge{border-radius:12px;font-size:.75rem;padding:4px 10px}.day-badge,.workout-type-badge{font-weight:500;white-space:nowrap}.day-badge{border-radius:15px;cursor:default;font-size:.85rem;padding:6px 12px}.reminder-status{display:flex;flex-wrap:wrap;gap:6px}.reminder-badge{border-radius:10px;cursor:default;font-size:.75rem;font-weight:500;padding:4px 8px;white-space:nowrap}.reminder-badge.sent{background-color:#27ae60;color:#fff}.reminder-badge.scheduled{background-color:#3498db;color:#fff}.reminder-badge.not-sent{background-color:#7f8c8d;color:#fff}.reminder-badge.not-scheduled{background-color:#e74c3c;color:#fff}.workout-date-badge{background-color:#9b59b6;border-radius:12px;color:#fff;font-size:.75rem;font-weight:500;margin-left:8px;padding:4px 10px;white-space:nowrap}.workout-activity-info{border-left:2px solid #4a5568;display:flex;flex-direction:column;font-size:.8rem;gap:4px;margin-top:8px;padding-left:12px;padding-top:8px}.workout-type-label{color:#a0aec0;font-size:.9rem;font-weight:600;margin-bottom:4px}.activity-item{align-items:center;display:flex;gap:10px;justify-content:space-between}.activity-item.no-activity{color:#95a5a6;font-style:italic;justify-content:flex-start}.activity-label{color:#bdc3c7;font-weight:500}.activity-time{color:#ecf0f1}.activity-time.completed{color:#2ecc71;font-weight:600}.workout-link-section{border-top:1px solid #555;margin-top:10px;padding-top:10px}.workout-link{background-color:#2c3e50;border-radius:4px;color:#1e90ff;display:inline-block;font-size:.85rem;font-weight:500;padding:6px 12px;text-decoration:none;transition:all .2s ease}.workout-link:hover{background-color:#1e90ff;color:#fff;transform:translateX(5px)}.no-workout{color:#95a5a6;font-style:italic;padding:20px;text-align:center}.clients-simple-list{display:flex;flex-wrap:wrap;gap:10px}.clients-simple-list button{margin-top:0}.client-search-container{margin-bottom:20px;position:relative;width:100%}.client-search-input{background-color:#2c3e50;border:2px solid #555;border-radius:8px;color:#fff;font-size:1rem;outline:none;padding:12px 40px 12px 15px;transition:all .3s ease;width:100%}.client-search-input:focus{background-color:#34495e;border-color:#1e90ff}.client-search-input::placeholder{color:#95a5a6}.clear-search-btn{background:#0000;border:none;border-radius:4px;color:#95a5a6;cursor:pointer;font-size:1.2rem;padding:5px 10px;position:absolute;right:10px;top:50%;transform:translateY(-50%);transition:all .2s ease}.clear-search-btn:hover{background-color:#555;color:#fff}.search-results-count{color:#95a5a6;font-size:.9rem;margin-bottom:15px;padding:8px 0}.clients-controls{background-color:#2c3e50;border-radius:8px;margin-bottom:15px;padding:12px}.sort-controls{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.sort-controls label{color:#ecf0f1;font-size:.9rem;font-weight:500}.sort-select{background-color:#34495e;border:2px solid #555;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;outline:none;padding:8px 12px;transition:all .2s ease}.sort-select:focus,.sort-select:hover{border-color:#1e90ff}.sort-select:focus{box-shadow:0 0 0 3px #1e90ff33}.sort-order-btn{align-items:center;background-color:#34495e;border:2px solid #555;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:1rem;justify-content:center;min-height:44px;min-width:44px;padding:8px 12px;transition:all .2s ease}.sort-order-btn:hover{background-color:#1e90ff;border-color:#1e90ff}.pagination-controls{align-items:center;background-color:#2c3e50;border-radius:8px;display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-top:25px;padding:15px}.pagination-btn{background-color:#34495e;border:2px solid #555;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;min-height:44px;min-width:100px;padding:10px 20px;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background-color:#1e90ff;border-color:#1e90ff;box-shadow:0 4px 8px #1e90ff4d;transform:translateY(-2px)}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:#ecf0f1;font-size:.95rem;font-weight:500;padding:0 10px}.client-card.collapsed{cursor:pointer}.client-card.expanded{cursor:default}.client-card-title-section{display:flex;flex:1 1;flex-direction:column;gap:8px}.expand-toggle-btn{align-items:center;background:#0000;border:2px solid #555;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1rem;height:36px;justify-content:center;padding:0;transition:all .2s ease;width:36px}.expand-toggle-btn:hover{background-color:#555;border-color:#1e90ff}.client-card-summary{border-top:1px solid #555;margin-top:10px;padding:15px 0}.summary-status-row{gap:10px;justify-content:space-between;margin-bottom:0}.status-badges-group,.summary-status-row{align-items:center;display:flex;flex-wrap:wrap}.status-badges-group{flex:1 1;gap:8px}.days-summary{background-color:#2c3e50;border-radius:10px;color:#bdc3c7;font-size:.85rem;padding:3px 8px}.view-workout-link{align-items:center;border-radius:4px;color:#1e90ff;display:inline-flex;flex-shrink:0;font-size:1.1rem;justify-content:center;line-height:1;padding:4px 6px;text-decoration:none;transition:all .2s ease}.view-workout-link:hover{background-color:#1e90ff;color:#fff;transform:scale(1.1)}.quick-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.client-card-summary .quick-actions{justify-content:flex-start}.quick-action-btn{border:none;border-radius:4px;display:inline-flex;font-size:.8rem;gap:4px;max-width:100%;overflow:hidden;padding:6px 10px;text-decoration:none;text-overflow:ellipsis;transition:all .2s ease;white-space:nowrap}.view-workout-btn{background-color:#1e90ff;color:#fff;font-size:.75rem;padding:5px 10px}.view-workout-btn:hover{background-color:#06c;box-shadow:0 4px 8px #1e90ff4d;transform:translateY(-2px)}.client-card-details{border-top:1px solid #555;margin-top:10px;padding-top:15px}@media (max-width:768px){.endurance-days-section,.strength-days-section{padding:15px}.endurance-days-section h3,.strength-days-section h3{font-size:1.2rem;margin-bottom:12px}.days-selection{gap:8px;margin-bottom:15px}.days-selection label{flex-basis:calc(50% - 4px);flex-grow:1;flex-shrink:1;font-size:.85rem;max-width:calc(50% - 4px);min-height:50px;min-width:calc(50% - 4px);padding:14px 12px}.days-selection input[type=checkbox]{height:22px;width:22px}.hybrid-indicator{font-size:12px;height:20px;right:-8px;top:-8px;width:20px}.workout-types-selection{margin-top:12px}.workout-types-selection h4{font-size:1rem;margin-bottom:12px}.workout-type-row{align-items:stretch;background-color:#2c3e50;border-radius:8px;flex-direction:column;gap:8px;margin-bottom:16px;padding:12px}.workout-type-row label{font-size:.95rem;margin-bottom:4px;min-width:auto}.workout-type-row>div{min-width:100%;width:100%}.workout-type-row .css-1pahdxg-control,.workout-type-row .css-1s2u09g-control{font-size:16px;min-height:48px;width:100%}.workout-type-row .css-1hb7zxy-IndicatorsContainer{min-width:48px}.workout-type-row .css-1uccc91-singleValue,.workout-type-row .css-1wa3eu0-placeholder{font-size:16px;padding:4px 0}.workout-type-row .css-1n7v3ny-option{font-size:16px;min-height:48px;padding:14px 12px}.workout-generation-container{gap:20px;margin:15px 0}label[for=trainer-notes],label[for=workout-duration]{display:block;font-size:1rem;font-weight:500;margin-bottom:8px;margin-top:15px}input#trainer-notes,select#workout-duration{min-height:48px;width:100%}input#trainer-notes,select#workout-duration,textarea#trainer-notes{background-color:#34495e;border:2px solid #555;border-radius:8px;color:#fff;font-size:16px;padding:12px}textarea#trainer-notes{font-family:inherit;min-height:100px;resize:vertical}.clients-management-section{padding:15px}.clients-management-section h2{font-size:1.5rem;margin-bottom:15px}.clients-grid{gap:15px;grid-template-columns:1fr}.client-card{border-radius:8px;padding:15px}.client-card-header{align-items:center;flex-direction:row;gap:10px;justify-content:space-between;margin-bottom:12px;padding-bottom:12px}.client-card-header h3{font-size:1.1rem;margin:0}.client-goal{font-size:.85rem;padding:4px 8px}.expand-toggle-btn{font-size:1.1rem;height:44px;min-height:44px;min-width:44px;width:44px}.workout-status-row{align-items:flex-start;flex-direction:column;gap:8px}.workout-sent-badge{font-size:.9rem;padding:8px 14px}.client-card-summary{padding:12px 0}.summary-status-row{align-items:center;flex-direction:row;gap:8px;justify-content:space-between}.status-badges-group{flex:1 1;gap:6px}.view-workout-link{font-size:1.2rem;min-height:36px;min-width:36px;padding:6px 8px}.days-summary{font-size:.8rem;padding:2px 6px}.workout-days-section{margin-bottom:12px}.workout-days-section strong{font-size:.9rem;margin-bottom:8px}.day-item{margin-bottom:10px;padding:12px}.day-header-row{align-items:flex-start;flex-direction:column;gap:8px}.day-title-section{flex-wrap:wrap;width:100%}.reminder-status{justify-content:flex-start;width:100%}.workout-activity-info{font-size:.85rem;padding-left:10px}.activity-item{align-items:flex-start;flex-direction:column;gap:4px}.workout-link{display:inline-block;font-size:.8rem;min-height:32px;padding:6px 10px;text-align:left;width:auto}.workout-link-section{margin-top:10px;padding-top:10px}.day-badge,.reminder-badge,.workout-date-badge,.workout-type-badge{font-size:.75rem;padding:5px 10px}.workout-types-badges{margin-top:6px}.workout-info{margin-top:12px}.link-access-info{align-items:flex-start;flex-direction:column;gap:8px}.link-access-badge{font-size:.85rem;padding:6px 12px}.clients-controls{padding:10px}.sort-controls{align-items:stretch;flex-direction:column;gap:8px}.sort-controls label{font-size:.85rem}.sort-order-btn,.sort-select{font-size:.9rem;padding:10px;width:100%}.pagination-controls{flex-direction:column;gap:10px;padding:12px}.pagination-btn{min-width:auto;width:100%}.pagination-info{order:-1;text-align:center;width:100%}}@media (max-width:480px){.days-selection label{flex:1 1 100%;max-width:100%;min-width:100%}.endurance-days-section,.strength-days-section{padding:12px}.workout-table-desktop{display:none}.workout-cards-mobile{display:block}.endurance-workout-section,.strength-workout-section{margin:15px 0;padding:15px}.endurance-workout-section h3,.strength-workout-section h3{font-size:1.1rem;margin-bottom:12px}.workout-day-card{margin-bottom:15px;padding:12px}.day-card-header{align-items:center;flex-direction:row;gap:10px}.day-header-content{align-items:flex-start;flex:1 1;flex-direction:column;gap:6px}.day-card-header h4{color:#fff;font-size:1.1rem}.day-expand-toggle{font-size:1.1rem;height:40px;min-height:40px;min-width:40px;width:40px}.endurance-card,.exercise-card{margin-bottom:10px;padding:10px}.exercise-details-grid{gap:6px;grid-template-columns:1fr}.exercise-name-btn-mobile{font-size:.95rem;margin-bottom:8px}.endurance-card .exercise-description,.endurance-card .exercise-explanation,.exercise-card .exercise-description,.exercise-card .exercise-explanation{background:#0000!important;border-left:none!important;border-radius:0!important;color:#fff!important;font-size:.9rem;font-weight:400;margin-top:10px;padding-top:10px;padding:10px 0!important}.endurance-card .exercise-description strong,.endurance-card .exercise-explanation strong,.exercise-card .exercise-description strong,.exercise-card .exercise-explanation strong{color:#fff!important;font-size:.95rem;font-weight:700}.workout-actions{background-color:#2d2d2d;border-top:2px solid #555;bottom:0;margin-top:15px;padding:12px;position:-webkit-sticky;position:sticky;z-index:100}.workout-actions button{font-size:1rem;min-height:48px;padding:14px;width:100%}.endurance-card-header{align-items:flex-start;flex-direction:column;gap:6px}.intensity-badge-mobile,.modality-badge-mobile{font-size:.8rem;padding:3px 8px}.clients-management-section{padding:10px}.clients-management-section h2{font-size:1.3rem}.client-card{padding:12px}.client-card-header h3{font-size:1rem}.client-search-input{font-size:.95rem;padding:10px 35px 10px 12px}.clear-search-btn{font-size:1rem;padding:4px 8px;right:8px}}.workout-agent{font-family:Arial,sans-serif}.agent-toggle,.workout-agent{bottom:75px;position:fixed;right:20px;z-index:1000}.agent-toggle{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:3px solid #ffffff4d;border-radius:50%;box-shadow:0 6px 25px #667eea80;color:#fff;cursor:pointer;display:flex;font-size:28px;height:70px;justify-content:center;transition:all .3s ease;width:70px}.agent-toggle:hover{box-shadow:0 6px 25px #0006;transform:translateY(-2px)}.agent-toggle:active{transform:translateY(0)}.agent-toggle:focus{outline:3px solid #ff6b35;outline-offset:2px}.agent-bubble{word-wrap:break-word;animation:bubbleAppear .5s ease-out,bubblePulse 2s ease-in-out .5s infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #ffffff4d;border-radius:20px;bottom:70px;box-shadow:0 8px 25px #667eea80,0 0 20px #667eea4d;box-sizing:border-box;color:#fff;font-size:.95rem;font-weight:600;line-height:1.3;max-width:200px;min-width:160px;overflow:visible;padding:12px 16px;position:absolute;right:20px;text-align:center;transform:translateX(calc(35px - 50%));white-space:normal;width:auto;z-index:1003}.bubble-content{position:relative;z-index:2}.bubble-arrow{border-left:10px solid #0000;border-right:10px solid #0000;border-top:10px solid #667eea;bottom:-10px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));height:0;position:absolute;right:calc(50% - 10px);transform:translateX(-35px);width:0;z-index:1}@keyframes bubbleAppear{0%{opacity:0;transform:translateY(10px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes bubblePulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.agent-interface{animation:slideIn .3s ease;background:#fff;border-radius:20px;bottom:80px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;height:700px;max-height:85vh;min-height:500px;overflow:hidden;position:absolute;right:0;width:450px}.agent-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px 20px 0 0;color:#fff;flex-shrink:0;padding:16px 20px;position:relative}.agent-header h3{font-size:1.4rem;font-weight:700;margin:0 0 8px;text-align:center}.agent-accessibility-controls{display:flex;gap:8px;margin-left:auto}.accessibility-toggle,.voice-toggle{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:14px;height:32px;justify-content:center;transition:all .3s ease;width:32px}.accessibility-toggle:hover,.voice-toggle:hover{border-color:#667eea;color:#667eea;transform:scale(1.1)}.accessibility-toggle.active,.voice-toggle.active{background:#667eea;border-color:#667eea;color:#fff}.accessibility-toggle:focus,.voice-toggle:focus{outline:2px solid #ff6b35;outline-offset:2px}.agent-header p{font-size:1rem;margin:0;opacity:.9;text-align:center}.agent-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:35px;justify-content:center;position:absolute;right:15px;top:15px;transition:all .3s ease;width:35px}.agent-close:hover{background:#ffffff4d;transform:scale(1.1)}.agent-status{background:linear-gradient(135deg,#28a745,#20c997);border-radius:20px;color:#fff;flex-shrink:0;font-size:.9rem;font-weight:600;margin:0 20px 20px;padding:10px 16px;text-align:center}.exercise-context-card{background:#fff;border:2px solid #e9ecef;border-radius:16px;box-shadow:0 4px 12px #00000014;flex-shrink:0;margin:0 20px 20px;padding:16px 20px}.exercise-context-card .exercise-name{color:#2c3e50;font-size:1.1rem;font-weight:700;line-height:1.4;margin:0 0 8px}.exercise-context-card .exercise-status{align-items:center;color:#6c757d;display:flex;font-size:.95rem;font-weight:500;gap:8px;margin:0 0 12px}.exercise-context-card .exercise-details{grid-gap:12px;border-top:1px solid #e9ecef;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));margin-top:12px;padding-top:12px}.exercise-detail-item{align-items:center;display:flex;flex-direction:column;gap:4px}.exercise-detail-label{color:#6c757d;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.exercise-detail-value{color:#667eea;font-size:1rem;font-weight:700}.agent-actions{grid-gap:12px;display:grid;flex-shrink:0;gap:12px;grid-template-columns:repeat(2,1fr);padding:0 20px 20px}.action-btn{align-items:center;background:#fff;border:2px solid #e9ecef;border-radius:12px;color:#495057;cursor:pointer;display:flex;flex-direction:column;font-size:1rem;font-weight:600;gap:6px;justify-content:center;line-height:1.3;min-height:50px;padding:15px 12px;text-align:center;transition:all .3s ease}.action-btn:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea33;color:#667eea;transform:translateY(-2px)}.action-btn:active{transform:translateY(0)}.action-btn .icon{font-size:1.2rem;margin-bottom:2px}.agent-progress{display:flex;flex-shrink:0;gap:10px;justify-content:center;margin-bottom:20px}.progress-dot{background:#e9ecef;border-radius:50%;height:10px;transition:all .3s ease;width:10px}.progress-dot.active{background:#667eea;transform:scale(1.2)}.agent-messages{-webkit-overflow-scrolling:touch;background:#f8f9fa;border-radius:15px;box-shadow:inset 0 2px 8px #0000001a;flex:1 1;margin:0 20px;overflow-y:auto;padding:20px;scroll-behavior:smooth}.message{word-wrap:break-word;border-radius:16px;box-shadow:0 2px 8px #00000014;font-size:1rem;line-height:1.6;margin-bottom:20px;max-width:90%;overflow-wrap:break-word;padding:16px 20px;position:relative;word-break:break-word}.message.user{background:linear-gradient(135deg,#00bfae,#08c);box-shadow:0 4px 12px #00bfae4d;color:#fff;font-weight:500;margin-left:auto;text-align:right}.message.agent{background:#fff;border:2px solid #e9ecef;box-shadow:0 4px 12px #0000001a;color:#2c3e50;font-weight:400;margin-right:auto;text-align:left}.message-timestamp{font-size:.8rem;font-weight:400;margin-top:8px;opacity:.7}.message.user .message-timestamp{color:#fffc}.message.agent .message-timestamp{color:#6c757d}.agent-input-section{background:#fff;border-top:1px solid #e9ecef;flex-shrink:0;padding:20px}.agent-input{background:#f8f9fa;border:2px solid #e9ecef;border-radius:18px;box-sizing:border-box;font-family:inherit;font-size:1rem;line-height:1.4;margin-bottom:12px;max-height:120px;min-height:50px;padding:14px 18px;resize:none;transition:all .3s ease;width:100%}.agent-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.agent-input::placeholder{color:#6c757d;font-size:1rem}.agent-input-buttons{gap:12px}.agent-input-buttons,.input-btn{display:flex;justify-content:center}.input-btn{align-items:center;background:#fff;border:2px solid #e9ecef;border-radius:50%;color:#6c757d;cursor:pointer;font-size:1.2rem;height:50px;transition:all .3s ease;width:50px}.input-btn:hover{background:#f8f9fa;border-color:#667eea;color:#667eea;transform:translateY(-2px)}.input-btn:active{transform:translateY(0)}.send-btn{border-color:#667eea}.send-btn:hover{border-color:#5a6fd8;color:#fff}.mic-btn{background:#28a745;border-color:#28a745;color:#fff}.mic-btn:hover{background:#218838;border-color:#218838;color:#fff}@media (min-width:769px){.agent-interface{height:750px;width:500px}.agent-header h3{font-size:1.6rem}.action-btn{padding:18px 16px}.action-btn,.agent-input{font-size:1.1rem;min-height:55px}.agent-input{padding:16px 20px}.input-btn{font-size:1.3rem;height:55px;width:55px}.messages-container{min-height:350px}.input-area{padding:18px 24px}.input-area input{font-size:1.1rem;min-height:55px;padding:16px 20px}.send-btn,.voice-btn{font-size:20px;height:55px;width:55px}}@media (max-width:768px){.workout-agent{position:fixed;z-index:1002}.agent-toggle,.workout-agent{bottom:max(75px,calc(75px + env(safe-area-inset-bottom)));right:15px}.agent-toggle{border:3px solid #ffffff4d;box-shadow:0 6px 25px #667eea80;font-size:24px;height:60px;width:60px}.agent-bubble{word-wrap:break-word;border:2px solid #ffffff4d;bottom:70px;font-size:.9rem;font-weight:600;max-width:180px;min-width:150px;padding:10px 14px;right:-3px;white-space:normal}.bubble-arrow{bottom:-10px;right:12px}.agent-interface{animation:slideUp .3s ease;border-radius:25px 25px 0 0;bottom:0;height:95vh;left:0;max-height:none;padding:15px;position:fixed;right:0;width:100%}.agent-header,.agent-interface{display:flex;flex-direction:column}.agent-header{align-items:center;border-bottom:2px solid #e9ecef;gap:8px;margin-bottom:20px;padding:15px 0}.agent-header h3{align-items:center;display:flex;font-size:1.8rem;font-weight:700;gap:12px;line-height:1.3;margin:0;text-align:center}.agent-header p{color:#6c757d;font-size:1.1rem;line-height:1.4;margin:0;text-align:center}.exercise-indicator,.personality-badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:15px;display:inline-flex;font-size:.9rem;font-weight:600;gap:6px;margin:0 8px;padding:6px 12px}.exercise-indicator{background:#ffc1074d;color:#856404;font-weight:600}.exercise-context-card{margin:0 15px 15px;padding:14px 18px}.exercise-context-card .exercise-name{font-size:1rem}.exercise-context-card .exercise-details{gap:10px;grid-template-columns:repeat(2,1fr)}.personality-badge{background:#fff3;color:#fff}.agent-status{border-radius:25px;font-size:1rem;margin-bottom:25px;padding:12px 20px}.agent-actions{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-bottom:30px}.action-btn{align-items:center;border-radius:15px;display:flex;flex-direction:column;font-size:1.1rem;font-weight:600;gap:8px;justify-content:center;line-height:1.3;min-height:60px;padding:18px 16px;text-align:center}.action-btn .icon{font-size:1.4rem;margin-bottom:4px}.agent-progress{gap:12px;justify-content:center;margin-bottom:30px}.progress-dot{height:12px;width:12px}.agent-messages{-webkit-overflow-scrolling:touch;background:#f8f9fa;border-radius:15px;box-shadow:inset 0 2px 8px #0000001a;flex:1 1;margin:0 0 20px;min-height:200px;overflow-y:auto;padding:20px;scroll-behavior:smooth;scrollbar-color:#c1c1c1 #f1f1f1;scrollbar-width:thin}.agent-messages::-webkit-scrollbar{width:6px}.agent-messages::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.agent-messages::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.agent-messages::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.agent-input-section{background:#fff;border-radius:15px;border-top:2px solid #e9ecef;box-shadow:0 -2px 10px #0000001a;margin-top:auto;padding:20px 0}.agent-input{background:#fff;border:2px solid #e9ecef;border-radius:20px;box-sizing:border-box;color:#333;font-size:1.1rem;height:60px;margin-bottom:15px;padding:16px 20px;width:100%}.agent-input:focus{background:#fff;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.agent-input::placeholder{color:#6c757d;font-size:1.1rem;opacity:.8}.agent-input-buttons{gap:15px;padding:0 20px}.agent-input-buttons,.input-btn{display:flex;justify-content:center}.input-btn{align-items:center;background:#fff;border:2px solid #e9ecef;border-radius:50%;box-shadow:0 2px 8px #0000001a;color:#6c757d;cursor:pointer;font-size:1.3rem;height:55px;transition:all .3s ease;width:55px}.input-btn:hover{background:#f8f9fa;border-color:#007bff;box-shadow:0 4px 12px #007bff33;color:#007bff;transform:translateY(-2px)}.input-btn:active{transform:translateY(0)}.send-btn{background:#007bff;border-color:#007bff;color:#fff}.send-btn:hover{background:#0056b3;border-color:#0056b3;color:#fff}.mic-btn{background:#28a745;border-color:#28a745;color:#fff}.mic-btn:hover{background:#1e7e34;border-color:#1e7e34;color:#fff}}@media (max-width:480px){.workout-agent{position:fixed;z-index:1002}.agent-toggle,.workout-agent{bottom:max(70px,calc(70px + env(safe-area-inset-bottom)));right:12px}.agent-toggle{font-size:22px;height:56px;width:56px}.agent-bubble{bottom:65px;font-size:.85rem;max-width:170px;min-width:140px;padding:10px 12px;right:-2px}.bubble-arrow{right:10px}.agent-interface{border-radius:20px 20px 0 0;height:100vh;padding:15px}.agent-header{margin-bottom:20px;padding:15px 0}.agent-header h3{font-size:1.6rem}.agent-header p{font-size:1rem}.agent-actions{gap:12px;grid-template-columns:1fr;margin-bottom:25px}.action-btn{font-size:1rem;min-height:55px;padding:16px 14px}.action-btn .icon{font-size:1.3rem}.agent-input{font-size:1rem;height:55px;padding:14px 18px}.input-btn{font-size:1.2rem;height:50px;width:50px}}@media (max-width:360px){.agent-interface{border-radius:15px 15px 0 0;padding:12px}.agent-header h3{font-size:1.5rem}.action-btn,.agent-header p{font-size:.95rem}.action-btn{min-height:50px;padding:14px 12px}.action-btn .icon{font-size:1.2rem}.agent-input{font-size:.95rem;height:50px;padding:12px 16px}.input-btn{font-size:1.1rem;height:48px;width:48px}}.context-bar{background:#f8f9fa;border-bottom:1px solid #e9ecef;flex-shrink:0;padding:12px 20px}.context-bar .exercise-info{color:#2c3e50;font-size:1rem;font-weight:600;margin-bottom:4px}.context-bar .exercise-status-text{color:#6c757d;font-size:.9rem;font-weight:500}.quick-actions{padding:12px 20px}.messages-container{margin:0 20px 20px;max-height:none;min-height:300px;padding:20px;position:relative}.input-area{align-items:center;background:linear-gradient(180deg,#fff 0,#f8f9fa);border-radius:0 0 20px 20px;border-top:1px solid #e9ecef;bottom:0;display:flex;gap:12px;padding:16px 20px;position:-webkit-sticky;position:sticky;z-index:10}.input-area input{background:#f8f9fa;border:2px solid #e9ecef;border-radius:20px;color:#333;flex:1 1;font-size:1rem;min-height:50px;outline:none;padding:14px 18px;transition:border-color .2s ease}.input-area input::placeholder{color:#6c757d;opacity:1}.input-area input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.input-area input:disabled{background:#f8f9fa;color:#6c757d}.send-btn,.voice-btn{align-items:center;border:none;border-radius:50%;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:50px;justify-content:center;transition:all .3s ease;width:50px}.voice-btn{background:#28a745;color:#fff}.voice-btn:hover{background:#218838;box-shadow:0 4px 12px #28a7454d;transform:translateY(-2px)}.voice-btn.listening{animation:pulse 1s infinite;background:#e74c3c}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.send-btn{background:#667eea;color:#fff}.send-btn:hover{background:#5a6fd8;box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.send-btn:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.messages-container::-webkit-scrollbar{width:8px}.messages-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.messages-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.messages-container::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.context-bar,.quick-actions{margin-bottom:15px;padding:10px 0}.messages-container{-webkit-overflow-scrolling:touch;background:#f8f9fa;border-radius:15px;box-shadow:inset 0 2px 8px #0000001a;flex:1 1;flex-grow:1;flex-shrink:1;margin:0 0 15px;min-height:250px;overflow-y:auto;padding:15px;scroll-behavior:smooth;scrollbar-color:#c1c1c1 #f1f1f1;scrollbar-width:thin}.input-area{background:#fff;border-radius:15px;border-top:2px solid #e9ecef;box-shadow:0 -2px 10px #0000001a;flex-shrink:0;margin-top:auto;padding:15px 0}.typing-indicator{align-items:center;display:flex;gap:4px;padding:8px 0}.typing-indicator span{animation:typing 1.4s ease-in-out infinite;background:#667eea;border-radius:50%;height:8px;width:8px}.typing-indicator span:first-child{animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.message-content{word-wrap:break-word;line-height:1.6;margin-bottom:8px;overflow-wrap:break-word}.quick-actions{grid-gap:12px;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:grid;flex-shrink:0;gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));padding:16px 20px}.quick-action-btn{align-items:center;background:#fff;border:2px solid #e9ecef;border-radius:12px;color:#2c3e50;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;justify-content:center;min-height:45px;padding:12px 16px;text-align:center;transition:all .3s ease}.quick-action-btn:hover{background:#f8f9fa;border-color:#667eea;box-shadow:0 4px 12px #667eea33;transform:translateY(-2px)}.endurance-session-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:8px 0;padding:16px;transition:box-shadow .2s ease}.endurance-session-card:hover{box-shadow:0 4px 8px #00000026}.endurance-session-card.editing{border-color:#2196f3;box-shadow:0 0 0 2px #2196f333}.session-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.modality-badge{background:#2196f3;border-radius:16px;color:#fff;font-size:12px;font-weight:700;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.session-actions{display:flex;gap:8px}.delete-btn,.edit-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:4px;transition:background-color .2s ease}.edit-btn:hover{background-color:#f0f0f0}.delete-btn:hover{background-color:#ffebee}.session-details{display:flex;flex-direction:column;gap:8px}.detail-row{align-items:center;display:flex;justify-content:space-between}.detail-row.notes{align-items:flex-start;flex-direction:column;gap:4px}.label{color:#666;font-weight:600}.label,.value{font-size:14px}.value{color:#333;font-weight:500}.value.intensity{font-weight:700}.edit-form{gap:12px}.edit-form,.form-row{display:flex;flex-direction:column}.form-row{gap:4px}.form-row label{color:#333;font-size:14px;font-weight:600}.form-row input,.form-row select,.form-row textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;transition:border-color .2s ease}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:#2196f3;box-shadow:0 0 0 2px #2196f333;outline:none}.form-row textarea{min-height:60px;resize:vertical}.form-actions{gap:8px}.cancel-btn,.save-btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s ease}.save-btn{background-color:#4caf50;color:#fff}.save-btn:hover{background-color:#45a049}.cancel-btn{background-color:#f44336;color:#fff}.cancel-btn:hover{background-color:#da190b}@media (max-width:768px){.endurance-session-card{padding:12px}.session-header{align-items:flex-start;flex-direction:column;gap:8px}.session-actions{align-self:flex-end}.detail-row{align-items:flex-start;flex-direction:column;gap:2px}}.add-endurance-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin:8px 0;padding:12px 20px;transition:all .3s ease}.add-endurance-btn:hover{box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.add-endurance-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;padding:24px;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.modal-header h3{color:#333;font-size:20px;font-weight:600;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:background-color .2s ease;width:30px}.close-btn:hover{background-color:#f0f0f0}.endurance-form{display:flex;flex-direction:column;gap:16px}.form-group label{color:#333}.form-group input,.form-group select,.form-group textarea{border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:14px;padding:12px;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group textarea{min-height:80px;resize:vertical}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-actions{border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;margin-top:8px;padding-top:16px}.cancel-btn,.submit-btn{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s ease}.cancel-btn{background-color:#f5f5f5;border:1px solid #ddd;color:#666}.cancel-btn:hover{background-color:#e0e0e0}.submit-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.submit-btn:hover{box-shadow:0 4px 8px #667eea4d;transform:translateY(-1px)}@media (max-width:768px){.modal-content{padding:20px;width:95%}.form-row{gap:12px;grid-template-columns:1fr}.form-actions{flex-direction:column}.cancel-btn,.submit-btn{width:100%}}.add-endurance-modal{animation:fadeIn .3s ease}.modal-content{animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.accessibility-settings-overlay{align-items:center;background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.accessibility-settings-modal{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border:2px solid #444;border-radius:16px;box-shadow:0 20px 40px #00000080;max-height:90vh;max-width:600px;overflow-y:auto;padding:0;width:100%}.accessibility-header{align-items:center;background:linear-gradient(135deg,#ff6b35,#f7931e);border-bottom:2px solid #444;border-radius:14px 14px 0 0;display:flex;justify-content:space-between;padding:20px 24px}.accessibility-header h2{color:#fff;font-size:1.5rem;font-weight:700;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:2rem;height:40px;justify-content:center;padding:0;transition:background-color .3s ease;width:40px}.close-button:hover{background-color:#fff3}.accessibility-content{padding:24px}.settings-section{background:#ffffff0d;border:1px solid #444;border-radius:12px;margin-bottom:32px;padding:20px}.settings-section h3{align-items:center;color:#ff6b35;display:flex;font-size:1.2rem;font-weight:600;gap:8px;margin:0 0 20px}.setting-item{background:#ffffff08;border:1px solid #333;border-radius:8px;margin-bottom:20px;padding:16px}.setting-item label{align-items:center;color:#e0e0e0;cursor:pointer;display:flex;font-weight:500;gap:12px;margin-bottom:8px}.setting-item input[type=checkbox]{accent-color:#ff6b35;cursor:pointer;height:20px;width:20px}.setting-item input[type=range]{accent-color:#ff6b35;cursor:pointer;margin-top:8px;width:100%}.setting-item select{background:#2d2d2d;border:1px solid #555;border-radius:6px;color:#e0e0e0;font-size:14px;margin-top:8px;padding:8px 12px;width:100%}.setting-description{color:#b0b0b0;font-size:.9rem;line-height:1.4;margin:0}.voice-commands-help{background:#4ecdc41a;border:1px solid #4ecdc4;border-radius:8px;margin-top:16px;padding:16px}.voice-commands-help h4{color:#4ecdc4;font-size:1rem;margin:0 0 12px}.voice-commands-help ul{color:#e0e0e0;margin:0;padding-left:20px}.voice-commands-help li{line-height:1.4;margin-bottom:8px}.test-buttons{display:flex;flex-wrap:wrap;gap:16px}.test-button{background:linear-gradient(135deg,#4ecdc4,#44a08d);border:none;border-radius:8px;box-shadow:0 4px 12px #4ecdc44d;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.test-button:hover:not(:disabled){box-shadow:0 6px 16px #4ecdc466;transform:translateY(-2px)}.test-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.features-list{grid-gap:12px;display:grid;gap:12px}.feature-item{background:#ffffff08;border-left:3px solid #ff6b35;border-radius:6px;color:#e0e0e0;line-height:1.4;padding:12px}.feature-item strong{color:#ff6b35;font-weight:600}.accessibility-footer{background:#0003;border-radius:0 0 14px 14px;border-top:2px solid #444;display:flex;justify-content:flex-end;padding:20px 24px}.save-button{background:linear-gradient(135deg,#ff6b35,#f7931e);border:none;border-radius:8px;box-shadow:0 4px 12px #ff6b354d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 32px;transition:all .3s ease}.save-button:hover{box-shadow:0 6px 16px #ff6b3566;transform:translateY(-2px)}@media (prefers-contrast:high){.accessibility-settings-modal{border:3px solid #fff}.setting-item{border:2px solid #fff}.feature-item{border-left:4px solid #fff}}@media (prefers-reduced-motion:reduce){.close-button,.save-button,.test-button{transition:none}.save-button:hover,.test-button:hover{transform:none}}@media (max-width:768px){.accessibility-settings-overlay{padding:10px}.accessibility-settings-modal{max-height:95vh}.accessibility-content{padding:16px}.settings-section{margin-bottom:24px;padding:16px}.test-buttons{flex-direction:column}.test-button{width:100%}}.quick-feedback-overlay{align-items:center;animation:fadeIn .2s ease-in;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.quick-feedback-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-width:400px;padding:24px;position:relative;width:90%}.quick-feedback-header{margin-bottom:20px;text-align:center}.quick-feedback-header h3{color:#333;font-size:20px;margin:0 0 8px}.exercise-name{color:#666;font-size:16px;margin:8px 0}.auto-dismiss{color:#999;font-size:12px;margin:4px 0 0}.star-rating-container{align-items:center;display:flex;flex-direction:column;margin:20px 0}.star-rating{display:flex;gap:8px;justify-content:center;margin-bottom:12px}.star-button{background:none;border:none;cursor:pointer;filter:grayscale(100%) opacity(.4);font-size:40px;padding:4px;transition:transform .1s ease}.star-button.active,.star-button:hover{filter:grayscale(0) opacity(1);transform:scale(1.1)}.rating-label{color:#666;font-size:14px;font-weight:500;margin:8px 0 0}.notes-container{animation:fadeIn .3s ease-in;margin:16px 0}.feedback-notes{border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:14px;padding:12px;resize:vertical;transition:border-color .2s;width:100%}.feedback-notes:focus{border-color:#4caf50;outline:none}.notes-count{color:#999;font-size:12px;margin:4px 0 0;text-align:right}.quick-feedback-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.btn-skip{background:#f5f5f5;border:1px solid #ddd;border-radius:8px;color:#666;cursor:pointer;font-size:14px;padding:10px 20px;transition:background-color .2s}.btn-skip:hover{background:#e8e8e8}.btn-submit{background:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background-color .2s}.btn-submit:hover{background:#45a049}.btn-submit:active{transform:scale(.98)}@media (max-width:480px){.quick-feedback-modal{max-width:95%;padding:20px}.star-button{font-size:36px}.quick-feedback-header h3{font-size:18px}}.workout-session{background:linear-gradient(135deg,#f8f9fa,#e9ecef);box-sizing:border-box;font-family:Arial,sans-serif;margin:0 auto;max-width:800px;min-height:100vh;overflow-x:hidden;padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) 20px max(20px,env(safe-area-inset-left))}.btn-back,.btn-back-day,.btn-next,.btn-previous,.btn-primary,.btn-start{min-height:44px;touch-action:manipulation}.session-active{-webkit-overflow-scrolling:touch;padding-bottom:100px}@supports (-webkit-touch-callout:none){.workout-session{min-height:-webkit-fill-available;padding-top:max(20px,env(safe-area-inset-top),20px)}.session-header{position:relative;z-index:10}.exercise-display{position:relative;z-index:5}.btn-start{bottom:20px!important;z-index:1000!important}.btn-next,.btn-start{isolation:isolate;left:50%!important;position:fixed!important;transform:translateX(-50%)!important;will-change:transform}.btn-next{bottom:max(80px,calc(80px + env(safe-area-inset-bottom)))!important;z-index:1001!important}@media (max-width:768px){.btn-start{bottom:max(15px,calc(15px + env(safe-area-inset-bottom)))!important}.btn-next{bottom:max(75px,calc(75px + env(safe-area-inset-bottom)))!important;left:calc(50% - 45px)!important;max-width:calc(100% - 100px)!important}}@media (max-width:480px){.btn-start{bottom:max(10px,calc(10px + env(safe-area-inset-bottom)))!important}.btn-next{bottom:max(70px,calc(70px + env(safe-area-inset-bottom)))!important;left:calc(50% - 40px)!important;max-width:calc(100% - 95px)!important}}}@supports (-webkit-touch-callout:none){.workout-session{min-height:100vh;min-height:-webkit-fill-available;padding-top:max(20px,env(safe-area-inset-top),20px)}.exercise-display,.session-header{margin-top:max(10px,env(safe-area-inset-top))}}@media screen and (max-height:600px){.workout-session{padding-top:max(25px,env(safe-area-inset-top))}.session-header{margin-top:20px;padding-top:30px}.exercise-display{margin-top:20px;padding-top:25px}}@media screen and (min-height:601px){.workout-session{padding-top:max(20px,env(safe-area-inset-top))}.session-header{margin-top:15px;padding-top:25px}.exercise-display{margin-top:15px;padding-top:20px}}@media (max-width:768px){.workout-session{padding-left:max(15px,env(safe-area-inset-left));padding-right:max(15px,env(safe-area-inset-right));padding-top:max(20px,env(safe-area-inset-top))}.session-header{margin-top:15px;padding-top:25px}.exercise-display{margin-top:15px;padding-top:20px}}@media (max-width:480px){.workout-session{padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right));padding-top:max(15px,env(safe-area-inset-top))}.session-header{margin-top:20px;padding-top:30px}.exercise-display{margin-top:20px;padding-top:25px}}.exercise-details{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:20px}.detail-item{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #e9ecef;border-radius:12px;box-shadow:0 4px 12px #00000014;padding:15px;text-align:center;transition:all .3s ease}.detail-item:hover{box-shadow:0 6px 16px #0000001f;transform:translateY(-2px)}.detail-item .label{color:#495057;display:block;font-size:.85rem;font-weight:700;letter-spacing:1px;margin-bottom:8px;opacity:.9;text-transform:uppercase}.detail-item .value{color:#212529;display:block;font-size:1.3rem;font-weight:800;line-height:1.2;margin:0}.session-header h1{color:#2c3e50;font-size:clamp(1.5rem,4vw,2.5rem);font-weight:700;line-height:1.2;margin-bottom:15px}.session-header{background:#fff;border-radius:15px;box-shadow:0 4px 15px #0000001a;margin-bottom:30px;margin-top:10px;padding:20px;text-align:center}.session-start h2{color:#2c3e50;font-size:clamp(1.2rem,3vw,1.8rem);margin-bottom:20px}.session-start{background:#fff;border-radius:15px;box-shadow:0 4px 15px #0000001a;margin-bottom:30px;padding:40px 20px 100px;position:relative;text-align:center;z-index:5}.session-start p{color:#6c757d;font-size:1.1rem;line-height:1.6;margin-bottom:30px}.btn-start{-webkit-tap-highlight-color:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#00bfae,#08c);border:2px solid #fff3;border-radius:30px;bottom:20px;box-shadow:0 4px 15px #00bfae4d;box-shadow:0 4px 15px #00bfae4d,inset 0 1px 0 #ffffff4d,inset 0 -1px 0 #0000001a;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:600;left:50%;letter-spacing:.5px;min-height:50px;min-width:200px;padding:15px 40px;position:fixed;text-shadow:0 1px 2px #0003;touch-action:manipulation;transform:translateX(-50%);transition:all .3s ease;user-select:none;-webkit-user-select:none;z-index:1000}.btn-start:hover{background:linear-gradient(135deg,#00d4c4,#09d);border-color:#ffffff4d;box-shadow:0 8px 25px #00bfae66,inset 0 1px 0 #fff6,inset 0 -1px 0 #0000001a;transform:translateX(-50%) translateY(-3px);transform:translateX(-50%) translateY(-3px) scale(1.02)}.btn-start:active{box-shadow:0 2px 10px #00bfae66,inset 0 1px 0 #fff3,inset 0 -1px 0 #0003;transform:translateX(-50%) translateY(-1px) scale(.98);transition:all .1s ease}@media (max-width:768px){.btn-start{border-width:2px;bottom:15px;box-shadow:0 3px 12px #00bfae4d,inset 0 1px 0 #ffffff4d,inset 0 -1px 0 #0000001a;font-size:1rem;min-width:180px;padding:12px 25px}.btn-start:hover{box-shadow:0 6px 20px #00bfae66,inset 0 1px 0 #fff6,inset 0 -1px 0 #0000001a;transform:translateX(-50%) translateY(-2px) scale(1.01)}.session-start{padding-bottom:80px;position:relative;z-index:5}.workout-session:has(.session-start) .btn-start{bottom:55px}.workout-session:has(.session-start) .accessibility-controls-compact{bottom:max(75px,calc(75px + env(safe-area-inset-bottom)));left:15px;transform:none}}@media (max-width:480px){.btn-start{border-width:2px;bottom:10px;box-shadow:0 2px 8px #00bfae4d,inset 0 1px 0 #ffffff4d,inset 0 -1px 0 #0000001a;font-size:.95rem;min-width:160px;padding:10px 20px}.btn-start:hover{box-shadow:0 4px 15px #00bfae66,inset 0 1px 0 #fff6,inset 0 -1px 0 #0000001a;transform:translateX(-50%) translateY(-1px) scale(1.01)}.session-start{padding-bottom:70px}.workout-session:has(.session-start) .btn-start{bottom:50px}.workout-session:has(.session-start) .accessibility-controls-compact{bottom:max(75px,calc(75px + env(safe-area-inset-bottom)));left:15px;transform:none}}.set-complete-animation{animation:fadeInOut 2s ease-in-out;left:50%;pointer-events:none;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:2000}.celebration-content{animation:scaleInOut 2s ease-in-out;background:linear-gradient(135deg,#28a745,#20c997);border-radius:20px;box-shadow:0 10px 40px #28a74580;color:#fff;padding:30px 50px;text-align:center}.celebration-icon{animation:bounce .6s ease-in-out;font-size:4rem;margin-bottom:10px}.celebration-text{font-size:1.5rem;font-weight:700;text-shadow:0 2px 4px #0003}@keyframes fadeInOut{0%,to{opacity:0}20%,80%{opacity:1}}@keyframes scaleInOut{0%,to{opacity:0;transform:scale(.8)}20%,80%{opacity:1;transform:scale(1)}}.exercise-transition{animation:slideInFade .3s ease-out;will-change:opacity,transform}@keyframes slideInFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.exercise-display{backface-visibility:hidden;-webkit-backface-visibility:hidden;padding-bottom:100px;transition:opacity .2s ease-out}.exercise-title{color:#212529;font-size:2rem;font-weight:700;margin-bottom:20px;text-align:center}.exercise-display{margin-top:10px;padding:30px 30px 100px;text-align:center;touch-action:pan-y;transition:opacity .3s ease,transform .3s ease}.exercise-display h2{color:#2c3e50;font-size:clamp(1.3rem,3.5vw,2rem);font-weight:700;margin-bottom:25px}.day-navigation{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:15px;box-shadow:0 4px 15px #0000001a;margin:20px 0;padding:20px;position:-webkit-sticky;position:sticky;top:10px;z-index:100}.day-navigation-header{margin-bottom:15px;text-align:center}.day-navigation-header h3{color:#2c3e50;font-size:1.2rem;font-weight:700;margin:0 0 5px}.day-navigation-header p{color:#6c757d;font-size:.9rem;font-style:italic;margin:0}.day-tabs-container{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.day-tab{-webkit-tap-highlight-color:transparent;align-items:center;background:#f8f9fa;border:2px solid #dee2e6;border-radius:25px;color:#495057;cursor:pointer;display:flex;flex-direction:column;font-size:1rem;font-weight:600;gap:2px;min-height:44px;min-width:120px;padding:12px 20px;text-align:center;touch-action:manipulation;transition:all .3s ease}.day-tab .day-name{font-size:1rem;font-weight:700}.day-tab .muscle-group{font-size:.8rem;font-weight:500;opacity:.8}.day-tab:hover{background:#e9ecef;border-color:#adb5bd;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.day-tab.active{background:linear-gradient(135deg,#00bfae,#08c);border-color:#00bfae;box-shadow:0 4px 15px #00bfae4d;color:#fff;transform:scale(1.05);z-index:10}.day-tab.active:hover{background:linear-gradient(135deg,#00a896,#0077b6);box-shadow:0 6px 20px #00bfae66;transform:scale(1.05) translateY(-2px)}.day-navigation-compact{margin:10px 0;position:-webkit-sticky;position:sticky;top:10px;z-index:100}.day-switcher-toggle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #dee2e6;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:#495057!important;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;justify-content:space-between;min-height:44px;padding:12px 16px;touch-action:manipulation;transition:all .3s ease;width:100%}.day-switcher-toggle:hover{background:#fff;border-color:#00bfae;box-shadow:0 4px 12px #00bfae33;color:#495057!important}.day-switcher-toggle:active,.day-switcher-toggle:focus{color:#495057!important;transform:scale(.98)}.current-day-indicator,.day-switcher-toggle[aria-expanded=true]{color:#495057!important}.current-day-indicator{align-items:center;display:flex;flex:1 1;gap:8px;text-align:left}.day-switcher-icon{font-size:.8rem;opacity:.7;transition:transform .3s ease}.day-switcher-toggle[aria-expanded=true] .day-switcher-icon{transform:rotate(180deg)}.day-tabs-container-compact{animation:slideDown .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;border-radius:12px;box-shadow:0 4px 15px #00000026;display:flex;flex-direction:column;gap:8px;margin-top:8px;max-height:400px;overflow-y:auto;padding:12px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.day-tab-compact{background:#f8f9fa;border:2px solid #dee2e6;border-radius:10px;color:#2c3e50;cursor:pointer;display:flex;flex-direction:column;font-size:.9rem;font-weight:600;gap:4px;min-height:44px;padding:10px 16px;text-align:left;touch-action:manipulation;transition:all .2s ease}.day-tab-compact:hover{background:#e9ecef;border-color:#00bfae;box-shadow:0 2px 6px #00bfae26;color:#2c3e50!important;transform:translateX(4px)}.day-tab-compact.active{background:linear-gradient(135deg,#00bfae,#08c);border-color:#00bfae;box-shadow:0 2px 8px #00bfae4d;color:#fff}.day-tab-compact.active:hover{background:linear-gradient(135deg,#00a896,#0077b6)}.day-tab-compact .day-name{color:inherit;font-size:.95rem;font-weight:700}.day-tab-compact .muscle-group{color:inherit;font-size:.8rem;font-weight:500;opacity:.9}.day-tab-compact:hover .day-name,.day-tab-compact:hover .muscle-group{color:#2c3e50!important}.session-progress{box-sizing:border-box;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-around;margin-top:20px;max-width:100%;padding:0 10px;width:100%}@media (max-width:768px){.session-progress{align-items:center;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:10px;margin-top:max(60px,env(safe-area-inset-top) + 30px);padding:0 5px}.session-progress span{word-wrap:break-word;flex:0 1 auto;font-size:.85rem;line-height:1.2;max-width:calc(33.333% - 6px);min-width:auto;padding:8px 12px;white-space:normal}.workout-session:not(.session-start) .session-progress{margin-top:max(40px,env(safe-area-inset-top) + 20px)}}.session-progress span{background:linear-gradient(135deg,#00bfae,#08c);border-radius:20px;box-shadow:0 2px 8px #00bfae4d;box-sizing:border-box;color:#fff;flex:0 1 auto;font-size:.9rem;font-weight:600;min-width:-webkit-fit-content;min-width:fit-content;overflow:hidden;padding:8px 16px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.btn-previous{background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:10px;box-shadow:0 3px 12px #28a7454d;color:#fff;cursor:pointer;font-size:16px;font-weight:700;letter-spacing:.5px;min-width:160px;padding:15px 30px;text-align:center;text-transform:uppercase;transition:all .3s ease}.btn-previous:hover:not(:disabled){background:linear-gradient(135deg,#20c997,#17a2b8);box-shadow:0 6px 20px #28a74566;transform:translateY(-3px)}.btn-previous:disabled{background:#e9ecef;box-shadow:0 2px 4px #0000001a;color:#6c757d;cursor:not-allowed;transform:none}.back-navigation-details{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.btn-back,.btn-back-day{background:linear-gradient(135deg,#6c757d,#5a6268);border:none;border-radius:6px;box-shadow:0 2px 8px #00000026;color:#fff;cursor:pointer;font-size:13px;font-weight:600;min-width:120px;padding:10px 16px;text-align:center;transition:all .3s ease}.btn-back-day:hover:not(:disabled),.btn-back:hover:not(:disabled){background:linear-gradient(135deg,#5a6268,#495057);box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.btn-back-day:disabled,.btn-back:disabled{background:#e9ecef;box-shadow:0 2px 4px #0000001a;color:#6c757d;cursor:not-allowed;transform:none}.btn-back-day{background:linear-gradient(135deg,#17a2b8,#138496)}.btn-back-day:hover:not(:disabled){background:linear-gradient(135deg,#138496,#117a8b)}@media only screen and (device-width:390px) and (device-height:844px) and (-webkit-device-pixel-ratio:3){.session-progress{margin-top:max(80px,env(safe-area-inset-top) + 40px)}.workout-session:not(.session-start) .session-progress{margin-top:max(50px,env(safe-area-inset-top) + 25px)}.session-progress{margin-top:max(80px,env(safe-area-inset-top) + 40px)}.back-navigation{margin-top:25px;padding-top:20px}}@media only screen and (device-width:428px) and (device-height:926px) and (-webkit-device-pixel-ratio:3){.session-progress{margin-top:max(80px,env(safe-area-inset-top) + 40px)}.back-navigation{margin-top:25px;padding-top:20px}}@media only screen and (device-width:844px) and (device-height:390px) and (-webkit-device-pixel-ratio:3){.session-progress{margin-top:max(40px,env(safe-area-inset-top) + 20px)}.back-navigation{margin-top:20px;padding-top:15px}}.exercise-instruction,.exercise-tip{border-radius:10px;margin:15px 0;padding:16px;text-align:left}.exercise-instruction h3,.exercise-tip h3{color:#2c3e50;font-size:1.2rem;margin-bottom:10px}.exercise-instruction p,.exercise-tip p{color:#6c757d;line-height:1.6}.exercise-actions{align-items:center;flex-direction:row;gap:10px;margin-top:30px;padding-bottom:100px;position:static}.exercise-actions .btn-next{bottom:80px!important;isolation:isolate;left:50%!important;margin:0!important;max-width:none!important;position:fixed!important;transform:translateX(-50%)!important;width:auto!important;z-index:1001!important}.btn-previous-bottom{background:linear-gradient(135deg,#6c757d,#5a6268);border:none;border-radius:8px;box-shadow:0 2px 8px #00000026;color:#fff;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:600;max-width:200px;min-width:auto;padding:10px 20px;text-align:center;transition:all .3s ease}.btn-previous-bottom:hover:not(:disabled){background:linear-gradient(135deg,#5a6268,#495057);box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.btn-previous-bottom:disabled{background:#e9ecef;box-shadow:0 2px 4px #0000001a;color:#6c757d;cursor:not-allowed;transform:none}.btn-next{-webkit-tap-highlight-color:transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#28a745,#20c997);border:3px solid #fff6;border-radius:25px;bottom:max(80px,calc(80px + env(safe-area-inset-bottom)))!important;box-shadow:0 6px 20px #28a74580,0 2px 8px #0003,inset 0 1px 0 #fff6,inset 0 -1px 0 #0000001a;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;isolation:isolate;left:50%!important;letter-spacing:.5px;min-height:50px;min-width:200px;padding:15px 30px;position:fixed!important;text-shadow:0 1px 3px #0000004d;touch-action:manipulation;transform:translateX(-50%)!important;transition:all .3s ease;user-select:none;-webkit-user-select:none;will-change:transform;z-index:1001!important}.btn-next:hover{background:linear-gradient(135deg,#2fb344,#25d4a3);border-color:#ffffff4d;box-shadow:0 8px 25px #28a74566,inset 0 1px 0 #fff6,inset 0 -1px 0 #0000001a;transform:translateX(-50%) translateY(-3px);transform:translateX(-50%) translateY(-3px) scale(1.02)}.btn-next:active,.btn-previous-bottom:active,.btn-safety:active,.btn-start:active{transform:translateX(-50%) scale(.95);transition:transform .1s ease}.btn-previous-bottom:active,.btn-safety:active{transform:scale(.95)}.btn-next:active{box-shadow:0 2px 10px #28a74566,inset 0 1px 0 #fff3,inset 0 -1px 0 #0003;transform:translateX(-50%) translateY(-1px) scale(.98);transition:all .1s ease}.btn-next:focus{box-shadow:0 4px 15px #28a7454d,inset 0 1px 0 #ffffff4d,inset 0 -1px 0 #0000001a,0 0 0 3px #28a7454d;outline:none}.rest-display{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:1px solid #90caf9;border-radius:15px;margin:20px 0;padding:40px;text-align:center}.rest-display h2{color:#1565c0;font-size:2rem}.rest-display h2,.rest-timer{margin-bottom:30px}.rest-timer-container{align-items:center;display:flex;justify-content:center;margin:30px 0}.rest-timer-circle{height:200px;position:relative;width:200px}.rest-timer-svg{height:100%;transform:rotate(-90deg);width:100%}.rest-timer-bg{transition:stroke-dashoffset .3s ease}.rest-timer-progress{transition:stroke-dashoffset 1s linear}.rest-timer-content{left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.rest-timer-content .timer-display{color:#1565c0;display:block;font-family:Courier New,monospace;font-size:2.5rem;font-weight:700;margin-bottom:5px}.rest-label{color:#1976d2;font-size:.9rem;margin:0}.timer-display{color:#856404;display:block;font-family:Courier New,monospace;font-size:4rem;font-weight:700;margin-bottom:15px}.rest-display p{color:#1976d2;font-size:1.2rem;margin:0}.btn-skip-rest{background:#dc3545;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 25px;transition:all .3s ease}.btn-skip-rest:hover{background:#c82333;transform:translateY(-1px)}.workout-celebration{animation:fadeInUp .6s ease-out;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 10px 40px #667eea4d;color:#fff;margin:20px 0;padding:40px 20px;text-align:center}.workout-celebration-loading{position:relative}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.celebration-header{margin-bottom:30px}.celebration-icon-large{animation:bounce 1s ease-in-out;font-size:80px;margin-bottom:20px}.celebration-loading-icon{animation:bounce 1s ease-in-out infinite}.celebration-header h1{font-size:2.5rem;font-weight:700;margin:0 0 10px;text-shadow:2px 2px 4px #0003}.celebration-subtitle{font-size:1.3rem;margin:0;opacity:.95}.celebration-stats{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:15px;margin:30px 0;padding:25px}.celebration-stats h2{font-size:1.8rem;font-weight:600;margin:0 0 20px}.stats-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-bottom:20px}.stat-card{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fff3;border-radius:12px;padding:20px 15px;transition:transform .3s ease}.stat-card:hover{transform:scale(1.05)}.stat-icon{font-size:2rem;margin-bottom:10px}.stat-value{color:gold;font-size:2rem;font-weight:700;margin-bottom:5px;text-shadow:1px 1px 2px #0000004d}.stat-label{font-size:.9rem;letter-spacing:.5px;opacity:.9;text-transform:uppercase}.celebration-goals{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:15px;margin:30px 0;padding:25px}.celebration-goals h2{font-size:1.8rem;font-weight:600;margin:0 0 15px}.goal-message{font-size:1.1rem;line-height:1.6;margin:0;opacity:.95}.celebration-summary{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:15px;margin:30px 0;padding:25px}.celebration-summary h2{font-size:1.8rem;font-weight:600;margin:0 0 15px}.celebration-summary p{font-size:1.1rem;line-height:1.6;margin:0 0 15px;opacity:.95}.celebration-summary p:last-child{margin-bottom:0}.summary-encouragement{font-style:italic;opacity:.9}.celebration-next-workout{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #fff3;border-radius:15px;margin:30px 0;padding:25px}.celebration-next-workout h2{font-size:1.8rem;font-weight:600;margin:0 0 15px}.next-workout-preview{font-size:1.1rem;font-weight:500;line-height:1.6;margin:0 0 10px;opacity:.95}.next-workout-focus{font-size:1rem;font-style:italic;margin:0;opacity:.85}.next-workout-teaser{color:gold;font-size:1.1rem;font-style:italic;font-weight:500;line-height:1.6;margin:0;opacity:.95}.celebration-loading-container{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:15px;display:flex;flex-direction:column;gap:20px;justify-content:center;margin:30px 0;min-height:200px;padding:40px 25px}.loading-spinner{height:80px;margin:0 auto;position:relative;width:80px}.spinner-ring{animation:spin 1.2s cubic-bezier(.5,0,.5,1) infinite;border:4px solid #0000;border-radius:50%;border-top-color:gold;height:100%;position:absolute;width:100%}.spinner-ring:first-child{animation-delay:-.45s;border-top-color:#ff6b35}.spinner-ring:nth-child(2){animation-delay:-.3s;border-top-color:gold;height:70%;left:15%;top:15%;width:70%}.spinner-ring:nth-child(3){animation-delay:-.15s;border-top-color:#4ecdc4;height:50%;left:25%;top:25%;width:50%}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-message{align-items:center;animation:pulse 2s ease-in-out infinite;color:gold;display:flex;font-size:1.3rem;font-weight:600;justify-content:center;line-height:1.4;margin:0;min-height:3.5em;text-align:center;text-shadow:2px 2px 4px #0000004d}.loading-submessage{font-size:1rem;font-style:italic;margin:0;opacity:.8}.celebration-actions{display:flex;flex-direction:column;gap:15px;margin-top:30px}.btn-celebration{border:none;border-radius:12px;box-shadow:0 4px 15px #0003;cursor:pointer;font-size:1.1rem;font-weight:600;min-height:50px;padding:15px 30px;transition:all .3s ease}.btn-primary.btn-celebration{background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff}.btn-primary.btn-celebration:hover{box-shadow:0 6px 20px #ff6b3566;transform:translateY(-2px)}.btn-secondary.btn-celebration{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;color:#fff}.btn-secondary.btn-celebration:hover{background:#ffffff4d;transform:translateY(-2px)}@media (max-width:768px){.workout-celebration{padding:30px 15px}.celebration-header h1{font-size:2rem}.celebration-subtitle{font-size:1.1rem}.stats-grid{gap:10px;grid-template-columns:repeat(2,1fr)}.stat-card{padding:15px 10px}.stat-value{font-size:1.5rem}.loading-message{font-size:1.1rem;min-height:3em}}.workout-completed{background:#fff;border-radius:15px;box-shadow:0 4px 15px #0000001a;padding:60px 20px;text-align:center}.workout-completed h1{color:#28a745;font-size:2.5rem;margin-bottom:20px}.workout-completed p{color:#6c757d;font-size:1.2rem;margin-bottom:30px}.btn-primary{background:linear-gradient(135deg,#00bfae,#08c);border:none;border-radius:25px;color:#fff;cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:600;padding:15px 30px;text-decoration:none;transition:all .3s ease}.btn-primary:hover{box-shadow:0 6px 20px #00bfae66;transform:translateY(-2px)}.workout-session-error,.workout-session-loading{color:#6c757d;font-size:1.2rem;padding:60px 20px;text-align:center}.workout-session-error{color:#dc3545}.exercise-video-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 15px #0000001a;box-sizing:border-box;margin:15px 0;max-width:100%;padding:16px;width:100%}.exercise-video-link{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;width:100%}.exercise-video-link h3{color:#fff;font-size:1.2rem;margin:0 0 12px;text-align:center;text-shadow:0 2px 4px #0000004d;width:100%}.video-link-btn{word-wrap:break-word;align-items:center;background:linear-gradient(45deg,#ff6b6b,#ee5a24);border:none;border-radius:25px;box-shadow:0 4px 15px #0003;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-block;display:flex;font-size:1.1rem;font-weight:700;justify-content:center;line-height:1.3;margin:10px auto;max-width:300px;min-height:50px;padding:15px 30px;text-align:center;text-decoration:none;transition:all .3s ease;white-space:normal;width:100%}.video-link-btn:hover{background:linear-gradient(45deg,#ee5a24,#ff6b6b);box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.video-link-btn:active{transform:translateY(0)}.video-note{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0003;border-radius:8px;color:#ffffffe6;font-size:.95rem;line-height:1.4;margin:15px 0 0;padding:10px 15px;text-align:center}.exercise-video-link.no-video{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #dee2e6;box-shadow:0 2px 8px #0000000d}.exercise-video-link.no-video h3{color:#495057;text-shadow:none}.exercise-video-link.no-video .video-note{color:#6c757d}.agent-prompt{animation:pulse-glow 2s ease-in-out infinite;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 15px #667eea4d;margin-top:20px;padding:20px;text-align:center}.agent-prompt-text{color:#fff;font-size:1rem;line-height:1.6;margin:10px 0;text-shadow:0 2px 4px #0003}.agent-prompt-text strong{font-size:1.1rem;font-weight:700}.agent-prompt-text:first-child{margin-top:0}.agent-prompt-text:last-child{margin-bottom:0}@keyframes pulse-glow{0%,to{box-shadow:0 4px 15px #667eea4d}50%{box-shadow:0 4px 20px #667eea80}}.video-preview-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 15px #0000001a;color:#fff;margin:25px 0;padding:20px}.video-preview-section h3{color:#fff;font-size:1.3rem;margin:0 0 10px;text-align:center;text-shadow:0 2px 4px #0000004d}.video-preview-section p{color:#fff;font-size:.95rem;margin:0 0 20px;opacity:.95;text-align:center}.video-preview-grid{grid-gap:10px;display:grid;gap:10px;margin-bottom:15px}.video-preview-item{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:inherit;display:flex;justify-content:space-between;padding:12px 15px;text-decoration:none;transition:all .2s ease}.video-preview-item.has-video{border-left:4px solid #4caf50}.video-preview-item.has-video.clickable{cursor:pointer}.video-preview-item.has-video.clickable:hover{background:#fff3;box-shadow:0 2px 8px #4caf504d;transform:translateX(2px)}.video-preview-item.has-video.clickable:active{background:#ffffff26;transform:translateX(1px)}.video-preview-item.no-video{border-left:4px solid #ff9800}.exercise-name{color:#fff;font-size:.95rem;font-weight:600}.video-status{color:#fff;font-size:.85rem;opacity:.95}.video-preview-more{background:#0000;border:none;color:#fff;cursor:pointer;font-size:.9rem;font-style:italic;opacity:.9;padding:10px;text-align:center;transition:opacity .2s ease;width:100%}.video-preview-more:hover{opacity:1}.video-preview-more:active{opacity:.8}.mobility-preview-section{background:linear-gradient(135deg,#ff9800,#f57c00);border-radius:12px;box-shadow:0 4px 15px #0000001a;color:#fff;margin:25px 0;padding:20px}.mobility-preview-section h3{color:#fff;font-size:1.3rem;margin:0 0 10px;text-align:center;text-shadow:0 2px 4px #0000004d}.mobility-preview-section p{color:#fff;font-size:.95rem;margin:0 0 20px;opacity:.95;text-align:center}.mobility-preview-grid{grid-gap:10px;display:grid;gap:10px;margin-bottom:15px}.mobility-preview-item{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:inherit;display:flex;justify-content:space-between;padding:12px 15px;text-decoration:none;transition:all .2s ease}.mobility-preview-item.clickable{cursor:pointer}.mobility-preview-item.clickable:hover{background:#fff3;box-shadow:0 2px 8px #ff98004d;transform:translateX(2px)}.mobility-preview-item.clickable:active{background:#ffffff26;transform:translateX(1px)}.mobility-preview-item .exercise-name{color:#fff;font-size:.95rem;font-weight:600}.mobility-preview-item .exercise-details{color:#fff;font-size:.85rem;opacity:.95}.mobility-preview-item .video-indicator{font-size:1rem;margin-left:8px}.mobility-preview-more{color:#fff;font-size:.9rem;font-style:italic;opacity:.9;padding:10px;text-align:center}.safety-reminder{background:linear-gradient(135deg,#ff6b6b,#ee5a24);border-radius:10px;box-shadow:0 3px 10px #0000001a;gap:12px;margin:15px 0;padding:12px 16px;position:relative}.safety-reminder,.safety-reminder-dismiss{align-items:center;color:#fff;display:flex}.safety-reminder-dismiss{background:#fff3;border:none;border-radius:50%;cursor:pointer;flex-shrink:0;font-size:1.5rem;height:28px;justify-content:center;line-height:1;padding:0;position:absolute;right:8px;top:8px;transition:all .2s ease;width:28px}.safety-reminder-dismiss:hover{background:#ffffff4d;transform:scale(1.1)}.safety-icon{flex-shrink:0;font-size:1.5rem}.safety-content{flex:1 1;padding-right:30px}.safety-content h4{font-size:1rem;font-weight:700;margin:0 0 4px}.safety-content p{font-size:.85rem;line-height:1.4;margin:0;opacity:.95}.safety-tips-modal-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.safety-tips-modal{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000004d;max-height:80vh;max-width:500px;overflow-y:auto;position:relative;width:100%}.safety-tips-modal-header{align-items:center;background:linear-gradient(135deg,#ff6b6b,#ee5a24);border-bottom:2px solid #ff6b6b;border-radius:16px 16px 0 0;display:flex;justify-content:space-between;padding:20px 24px}.safety-tips-modal-header h2{color:#fff;font-size:1.5rem;font-weight:700;margin:0}.safety-tips-modal-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:2rem;height:36px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:36px}.safety-tips-modal-close:hover{background:#ffffff4d;transform:scale(1.1)}.safety-tips-modal-content{color:#2c3e50;font-size:1.1rem;line-height:1.6;padding:24px}.safety-tips-modal-content p{margin:0}.safety-tips-modal-footer{border-top:1px solid #e9ecef;display:flex;justify-content:flex-end;padding:16px 24px}.safety-tips-modal-footer .btn-primary{background:linear-gradient(135deg,#00bfae,#08c);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease}.safety-tips-modal-footer .btn-primary:hover{background:linear-gradient(135deg,#00a896,#0077b6);box-shadow:0 4px 12px #00bfae4d;transform:translateY(-2px)}@media (max-width:768px){.workout-session{margin:0;padding:max(15px,env(safe-area-inset-top)) max(15px,env(safe-area-inset-right)) 15px max(15px,env(safe-area-inset-left))}.exercise-display,.session-header{margin-top:10px}.session-header h1{font-size:2rem;line-height:1.2}.session-start{margin-bottom:20px;padding:30px 15px}.session-start h2{font-size:1.5rem}.session-start p{font-size:1rem}.exercise-display,.rest-display{padding:20px 15px}.exercise-display h2{font-size:1.6rem;margin-bottom:20px}.exercise-details{gap:12px;grid-template-columns:1fr}.detail-item{padding:12px}.detail-item .label{font-size:.8rem}.detail-item .value{font-size:1rem}.exercise-instruction h3,.exercise-tip h3{font-size:1.1rem}.exercise-instruction p,.exercise-tip p{font-size:.95rem;line-height:1.5}.timer-display{font-size:3.5rem}.day-navigation{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffffa;border:2px solid #00bfae33;box-shadow:0 6px 20px #00000026;margin:15px 0;padding:15px;position:-webkit-sticky;position:sticky;top:5px;z-index:200}.day-navigation-header h3{font-size:1.1rem}.day-navigation-header p{font-size:.85rem}.day-tabs-container{gap:8px}.day-tab{border-width:2px;font-weight:700;letter-spacing:.5px;min-height:52px;min-width:100px;padding:12px 16px}.day-tab .day-name{font-size:.95rem}.day-tabs-container-compact{max-height:350px}.day-navigation-compact{margin:10px 0}.day-switcher-toggle{font-size:.9rem;padding:10px 14px}.day-tabs-container-compact{gap:6px;padding:10px}.day-tab-compact{font-size:.85rem;padding:10px 14px}.day-tab .muscle-group{font-size:.75rem}.accessibility-controls-compact{bottom:15px;gap:10px;left:50%;transform:translateX(-50%)}.btn-next{bottom:75px}.accessibility-button-compact,.voice-command-button-compact{font-size:18px;height:44px;min-height:44px;min-width:44px;width:44px}.day-tab.active{border-width:3px;box-shadow:0 6px 20px #00bfae66;transform:scale(1.08)}.session-progress{align-items:center;flex-direction:row;flex-wrap:wrap;gap:8px;justify-content:center;padding:0 5px}.session-progress span{word-wrap:break-word;flex:0 1 auto;font-size:.8rem;line-height:1.2;max-width:calc(33.333% - 6px);min-width:auto;padding:8px 10px;text-align:center;white-space:normal}.btn-next{font-size:1.1rem;max-width:300px;padding:15px 30px;width:100%}.exercise-video-section{box-sizing:border-box;margin:15px 0;max-width:100%;padding:15px;width:100%}.exercise-video-link{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;width:100%}.video-link-btn{word-wrap:break-word;box-sizing:border-box;display:block;font-size:1rem;font-weight:600;-webkit-hyphens:auto;hyphens:auto;line-height:1.3;margin:10px auto;max-width:100%;min-height:52px;overflow-wrap:break-word;padding:14px 20px;white-space:normal;width:calc(100% - 40px)}.exercise-video-link h3{font-size:1.2rem;margin-bottom:15px;text-align:center;width:100%}.video-note{box-sizing:border-box;font-size:.9rem;margin:15px 0 0;padding:10px;width:100%}.video-preview-section{margin:20px 0;padding:15px}.video-preview-item{flex-direction:column;gap:8px;text-align:center}.exercise-name{font-size:.9rem}.video-status{font-size:.8rem}.safety-reminder{flex-direction:column;gap:10px;padding:15px;text-align:center}.safety-icon{font-size:1.5rem}.safety-content h4{font-size:1rem}.safety-content p{font-size:.85rem}}@media (max-width:480px){.workout-session{padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) 10px max(10px,env(safe-area-inset-left))}.exercise-display,.session-header{margin-top:15px}.session-header h1{font-size:1.6rem}.session-start{padding:25px 15px}.session-start h2{font-size:1.3rem}.session-start p{font-size:.95rem}.btn-start{font-size:1rem;padding:12px 25px}.exercise-display,.rest-display{padding:15px 10px}.exercise-display h2{font-size:1.4rem;margin-bottom:15px}.exercise-details{gap:10px}.detail-item{padding:10px}.detail-item .label{font-size:.75rem}.detail-item .value{font-size:.9rem}.exercise-instruction h3,.exercise-tip h3{font-size:1rem}.exercise-instruction p,.exercise-tip p{font-size:.9rem}.timer-display{font-size:3rem}.btn-next{font-size:1rem;padding:12px 20px}.session-progress{margin-bottom:10px;margin-top:15px}.day-navigation{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffc;border:2px solid #00bfae4d;box-shadow:0 8px 25px #0003;margin:12px 0;padding:12px;position:-webkit-sticky;position:sticky;top:3px;z-index:250}.day-navigation-header h3{font-size:1rem}.day-navigation-header p{font-size:.8rem}.day-tabs-container{gap:6px}.day-tab{border-width:2px;font-weight:700;letter-spacing:.3px;min-height:50px;min-width:85px;padding:10px 12px}.day-tab .day-name{font-size:.9rem}.day-tab .muscle-group{font-size:.7rem}.day-tab.active{border-width:3px;box-shadow:0 8px 25px #00bfae80;transform:scale(1.1)}.day-navigation-compact{margin:8px 0}.day-switcher-toggle{font-size:.85rem;padding:8px 12px}.day-tabs-container-compact{gap:5px;max-height:300px;padding:8px}.day-tab-compact{font-size:.8rem;min-height:40px;padding:8px 12px}.day-tab-compact .day-name{font-size:.85rem}.day-tab-compact .muscle-group{font-size:.75rem}.session-progress{flex-wrap:wrap;gap:6px;justify-content:center;padding:0 5px}.session-progress span{flex:0 1 auto;font-size:.75rem;line-height:1.2;max-width:calc(33.333% - 5px);min-width:auto;padding:8px 10px}.session-progress span,.video-link-btn{word-wrap:break-word;white-space:normal}.video-link-btn{font-size:.95rem;font-weight:600;line-height:1.1;min-height:50px;padding:12px 16px}.safety-tips-modal-overlay{padding:5px}.safety-tips-modal-header{padding:12px 16px}.safety-tips-modal-header h2{font-size:1.1rem}.safety-tips-modal-close{font-size:1.5rem;height:32px;width:32px}.safety-tips-modal-content{font-size:.95rem;padding:16px}.safety-tips-modal-footer{padding:10px 16px}.safety-tips-modal-footer .btn-primary{font-size:.95rem;padding:10px 20px}.accessibility-controls-compact{bottom:10px;gap:8px;left:50%;transform:translateX(-50%)}.btn-next{bottom:70px}.accessibility-button-compact,.voice-command-button-compact{font-size:16px;height:40px;min-height:40px;min-width:40px;width:40px}}@media (max-width:360px){.workout-session{padding:8px}.session-header h1{font-size:1.4rem}.exercise-display h2{font-size:1.2rem}.timer-display{font-size:2.5rem}.btn-next,.btn-start{font-size:.9rem;padding:10px 20px}}@media (max-width:768px){.exercise-video-section{box-sizing:border-box;margin:12px 0;max-width:100%;padding:12px;width:100%}.exercise-video-link{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;width:100%}.video-link-btn{word-wrap:break-word;box-sizing:border-box;display:block;font-size:.95rem;line-height:1.3;margin:10px auto;max-width:100%;min-height:48px;overflow-wrap:break-word;padding:12px 15px;width:calc(100% - 30px)}.exercise-video-link h3{font-size:1.1rem;margin-bottom:12px;text-align:center;width:100%}.video-note{box-sizing:border-box;font-size:.85rem;line-height:1.4;margin:12px 0 0;padding:8px 10px;width:100%}.video-preview-section{margin:20px 0;padding:15px}.video-preview-item{flex-direction:column;gap:8px;text-align:center}.exercise-name{font-size:.9rem}.video-status{font-size:.8rem}.safety-reminder{flex-direction:column;gap:10px;padding:15px;text-align:center}.safety-icon{font-size:1.5rem}.safety-content h4{font-size:1rem}.safety-content p{font-size:.85rem}}@media (max-width:360px){.video-link-btn{word-wrap:break-word;font-size:.9rem;-webkit-hyphens:auto;hyphens:auto;line-height:1.1;min-height:48px;overflow-wrap:break-word;padding:10px 12px;white-space:normal}.exercise-display{margin-top:25px;padding-top:30px}.session-header{margin-top:25px;padding-top:35px}}@media (max-width:320px){.video-link-btn{word-wrap:break-word;font-size:.85rem;-webkit-hyphens:auto;hyphens:auto;line-height:1;min-height:44px;overflow-wrap:break-word;padding:8px 10px;white-space:normal}.exercise-display{margin-top:30px;padding-top:35px}.session-header{margin-top:30px;padding-top:40px}}@media (max-width:768px){.btn-next{border-width:2px;bottom:max(75px,calc(75px + env(safe-area-inset-bottom)))!important;box-shadow:0 3px 12px #28a7454d,inset 0 1px 0 #ffffff4d,inset 0 -1px 0 #0000001a;font-size:.95rem;isolation:isolate!important;left:calc(50% - 45px)!important;max-width:calc(100% - 100px);min-width:160px;padding:12px 20px;position:fixed!important;transform:translateX(-50%)!important;will-change:transform;z-index:1001!important}.btn-next:hover{box-shadow:0 6px 20px #28a74566,inset 0 1px 0 #fff6,inset 0 -1px 0 #0000001a;transform:translateX(-50%) translateY(-2px) scale(1.01)}.exercise-display,.session-active{padding-bottom:80px}}@media (max-width:480px){.btn-next{border-width:2px;bottom:max(70px,calc(70px + env(safe-area-inset-bottom)))!important;box-shadow:0 2px 8px #28a7454d,inset 0 1px 0 #ffffff4d,inset 0 -1px 0 #0000001a;font-size:.9rem;isolation:isolate!important;left:calc(50% - 40px)!important;max-width:calc(100% - 95px);min-width:140px;padding:10px 18px;position:fixed!important;transform:translateX(-50%)!important;will-change:transform;z-index:1001!important}.btn-next:hover{box-shadow:0 4px 15px #28a74566,inset 0 1px 0 #fff6,inset 0 -1px 0 #0000001a;transform:translateX(-50%) translateY(-1px) scale(1.01)!important}.exercise-display,.session-active{padding-bottom:70px}}.endurance-sessions-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin:20px 0;padding:16px}.endurance-toggle-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 20px;transition:all .3s ease;width:100%}.endurance-toggle-btn:hover{box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.endurance-toggle-btn.active{background:linear-gradient(135deg,#4caf50,#45a049)}.endurance-sessions-container{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;margin-top:16px;padding:16px}.endurance-sessions-container h4{color:#333;font-size:18px;font-weight:600;margin:0 0 16px}.endurance-sessions-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.no-sessions{background:#fff;border:2px dashed #ddd;border-radius:8px;color:#666;font-style:italic;padding:20px;text-align:center}.endurance-display{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:2px solid #4ecdc4;border-radius:12px;box-shadow:0 4px 12px #4ecdc433;margin:16px 0;padding:24px}.endurance-display h2{color:#2c3e50;font-size:24px;font-weight:700;margin:0 0 20px;text-align:center}.endurance-details{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:24px}.endurance-details .detail-item{background:#fffc;border:1px solid #4ecdc4;border-radius:8px;padding:12px;text-align:center}.endurance-details .label{color:#4ecdc4;display:block;font-size:12px;font-weight:600;margin-bottom:4px;text-transform:uppercase}.endurance-details .value{color:#2c3e50;display:block;font-size:16px;font-weight:700}.endurance-timer{background:#ffffffe6;border:2px solid #4ecdc4;border-radius:12px;margin:24px 0;padding:20px;text-align:center}.timer-display-large{color:#4ecdc4;font-family:Courier New,monospace;font-size:48px;font-weight:700;margin-bottom:8px}.timer-label{color:#2c3e50;font-size:16px;font-weight:600;margin:0}.endurance-instruction{background:#4ecdc41a;border-left:4px solid #4ecdc4;border-radius:8px;margin:16px 0;padding:16px}.endurance-instruction h3{color:#2c3e50;font-size:16px;font-weight:600;margin:0 0 8px}.endurance-instruction p{color:#2c3e50;line-height:1.5;margin:0}.endurance-intervals{background:#4ecdc41a;border-left:4px solid #4ecdc4;border-radius:8px;margin:16px 0;padding:16px}.endurance-intervals h3{color:#2c3e50;font-size:16px;font-weight:600;margin:0 0 12px}.intervals-list{display:flex;flex-direction:column;gap:8px}.interval-item{align-items:center;background:#fffc;border:1px solid #4ecdc4;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.interval-work{color:#e74c3c;font-weight:600}.interval-rest{color:#3498db;font-weight:600}.interval-repeats{color:#2c3e50;font-weight:600}.endurance-actions{margin-top:24px}.endurance-actions .btn-next,.endurance-actions .btn-previous-bottom{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-weight:600;padding:12px 20px;transition:all .3s ease}.endurance-actions .btn-previous-bottom{background:#95a5a6;color:#fff}.endurance-actions .btn-previous-bottom:hover:not(:disabled){background:#7f8c8d;transform:translateY(-2px)}.endurance-actions .btn-previous-bottom:disabled{background:#bdc3c7;cursor:not-allowed;opacity:.6}.endurance-actions .btn-next{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff}.endurance-actions .btn-next:hover{box-shadow:0 4px 12px #4ecdc44d;transform:translateY(-2px)}.endurance-preview-section{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:2px solid #4ecdc4;border-radius:12px;margin:16px 0;padding:20px}.endurance-preview-section h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 12px}.endurance-preview-section p{color:#2c3e50;font-size:14px;margin:0 0 16px}.endurance-preview-grid{display:flex;flex-direction:column;gap:12px}.endurance-preview-item{background:#fffc;border:1px solid #4ecdc4;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:12px 16px}.session-modality{align-items:center;color:#2c3e50;display:flex;flex-wrap:wrap;font-size:16px;font-weight:600;gap:8px}.interval-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;font-size:.7em;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.session-details{color:#7f8c8d;font-size:14px;font-weight:500}.interval-summary{background:#f0f4ff;border-left:3px solid #667eea;border-radius:4px;color:#667eea;display:block;font-size:.85em;font-weight:600;margin-top:4px;padding:8px 12px}.session-controls{display:flex;gap:12px;justify-content:center;margin-top:16px}.btn-start-session{background:linear-gradient(135deg,#4ecdc4,#44a08d);border:none;border-radius:8px;box-shadow:0 4px 12px #4ecdc44d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-start-session:hover{box-shadow:0 6px 16px #4ecdc466;transform:translateY(-2px)}.active-controls{display:flex;gap:12px}.btn-pause-session{background:linear-gradient(135deg,#f39c12,#e67e22);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:all .3s ease}.btn-pause-session:hover{box-shadow:0 4px 12px #f39c124d;transform:translateY(-2px)}.btn-reset-session{background:linear-gradient(135deg,#95a5a6,#7f8c8d);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:all .3s ease}.btn-reset-session:hover{box-shadow:0 4px 12px #95a5a64d;transform:translateY(-2px)}.heart-rate-zone{background:#4ecdc41a;border:2px solid #4ecdc4;border-radius:12px;margin:20px 0;padding:20px}.heart-rate-zone h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 16px;text-align:center}.hr-zone-display{display:flex;justify-content:center}.hr-zone-info{background:#ffffffe6;border:3px solid;border-radius:12px;box-shadow:0 4px 12px #0000001a;min-width:200px;padding:20px;text-align:center}.hr-zone-name{font-size:24px;font-weight:700;margin-bottom:8px}.hr-zone-range{color:#2c3e50;font-size:16px;font-weight:600;margin-bottom:8px}.hr-zone-intensity{color:#7f8c8d;font-size:14px;font-weight:500}.interval-timer{background:#e74c3c1a;border:2px solid #e74c3c;border-radius:12px;margin:20px 0;padding:20px}.interval-timer h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 16px;text-align:center}.interval-display{text-align:center}.interval-phase{color:#e74c3c;font-size:20px;font-weight:700;margin-bottom:12px}.interval-time{color:#2c3e50;font-family:Courier New,monospace;font-size:36px;font-weight:700;margin-bottom:8px}.interval-progress{color:#7f8c8d;font-size:14px;font-weight:500}@media (max-width:768px){.session-controls{align-items:center;flex-direction:column}.active-controls{flex-direction:column;max-width:200px;width:100%}.btn-pause-session,.btn-reset-session,.btn-start-session{width:100%}.hr-zone-info{min-width:150px;padding:16px}.hr-zone-name{font-size:20px}.interval-time{font-size:28px}.endurance-sessions-section{margin:16px 0;padding:12px}.endurance-sessions-container{padding:12px}.endurance-toggle-btn{font-size:14px;padding:10px 16px}}.exercise-actions{padding-bottom:80px;position:relative}.endurance-actions,.exercise-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:20px}.btn-safety{align-items:center;background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:8px;box-shadow:0 4px 12px #e74c3c4d;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:.9rem;font-weight:600;gap:8px;justify-content:center;max-width:200px;padding:10px 20px;transition:all .3s ease}.btn-safety:hover{box-shadow:0 6px 16px #e74c3c66;transform:translateY(-2px)}.btn-safety:focus{outline:3px solid #ff6b35;outline-offset:2px}.accessibility-controls-compact{bottom:20px;display:flex;flex-direction:row;gap:12px;left:50%;position:fixed;transform:translateX(-50%);z-index:998}.workout-session:has(.session-start) .btn-start{bottom:60px}@media (max-width:768px){.workout-session:has(.session-start) .accessibility-controls-compact{bottom:max(75px,calc(75px + env(safe-area-inset-bottom)));left:15px;transform:none;z-index:900}}.accessibility-button-compact{align-items:center;background:linear-gradient(135deg,#4ecdc4,#44a08d);border:none;border-radius:50%;box-shadow:0 4px 12px #4ecdc466;color:#fff;cursor:pointer;display:flex;font-size:18px;height:44px;justify-content:center;min-height:44px;min-width:44px;touch-action:manipulation;transition:all .3s ease;width:44px}.accessibility-button-compact:hover{box-shadow:0 6px 16px #4ecdc480;transform:scale(1.1)}.accessibility-button-compact:focus{outline:3px solid #ff6b35;outline-offset:2px}.accessibility-button-compact:active{transform:scale(.95)}.voice-command-button-compact{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:18px;height:44px;justify-content:center;min-height:44px;min-width:44px;touch-action:manipulation;transition:all .3s ease;width:44px}.voice-command-button-compact:hover:not(:disabled){box-shadow:0 6px 16px #667eea80;transform:scale(1.1)}.voice-command-button-compact:focus{outline:3px solid #ff6b35;outline-offset:2px}.voice-command-button-compact:active:not(:disabled){transform:scale(.95)}.voice-command-button-compact:disabled{background:linear-gradient(135deg,#ccc,#999);cursor:not-allowed;opacity:.6}.voice-command-button-compact.enabled{background:linear-gradient(135deg,#667eea,#764ba2)}.voice-command-button-compact.listening{animation:pulse 1.5s infinite;background:linear-gradient(135deg,#ff6b35,#f7931e);box-shadow:0 4px 12px #ff6b3580}.accessibility-controls{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin:20px 0}.accessibility-button{align-items:center;background:linear-gradient(135deg,#4ecdc4,#44a08d);border:none;border-radius:8px;box-shadow:0 4px 12px #4ecdc44d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.accessibility-button:hover{box-shadow:0 6px 16px #4ecdc466;transform:translateY(-2px)}.accessibility-button:focus{outline:3px solid #ff6b35;outline-offset:2px}.voice-command-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;min-height:44px;overflow:hidden;padding:12px 20px;position:relative;transition:all .3s ease}.voice-command-button:hover:not(:disabled){box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.voice-command-button:focus{outline:3px solid #ff6b35;outline-offset:2px}.voice-command-button:disabled{background:linear-gradient(135deg,#ccc,#999);cursor:not-allowed;opacity:.6}.voice-command-button.enabled{background:linear-gradient(135deg,#667eea,#764ba2)}.voice-command-button.listening{animation:pulse 1.5s infinite;background:linear-gradient(135deg,#ff6b35,#f7931e)}.voice-command-label{font-size:14px;font-weight:500}@keyframes pulse{0%{box-shadow:0 0 0 0 #ff6b35b3}70%{box-shadow:0 0 0 10px #ff6b3500}to{box-shadow:0 0 0 0 #ff6b3500}}@media (prefers-contrast:high){.accessibility-button{background:#000;border:3px solid #fff;color:#fff}.accessibility-button:hover{background:#333}}@media (prefers-reduced-motion:reduce){.accessibility-button{transition:none}.accessibility-button:hover{transform:none}}@media (max-width:768px){#root,body,html{max-width:100vw!important;overflow-x:hidden!important;width:100%!important}}.dashboard-container{background-color:#2d2d2d;box-sizing:border-box;color:#fff;margin:0 auto;max-width:1400px;min-height:100vh;overflow-x:hidden;padding:20px;position:relative;width:100%}.dashboard-container *{box-sizing:border-box;max-width:100%}.dashboard-header{align-items:center;border-bottom:2px solid #444;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.dashboard-header h1{color:#1e90ff;font-size:2rem;margin:0}.dashboard-controls{align-items:center;display:flex;gap:15px}.dashboard-controls label{align-items:center;color:#ecf0f1;display:flex;font-weight:500;gap:10px}.dashboard-controls select{background-color:#34495e;border:1px solid #555;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 12px}.dashboard-controls select:hover{background-color:#3d566e}.dashboard-controls select:focus{border-color:#1e90ff;outline:none}.dashboard-error,.dashboard-loading{color:#95a5a6;font-size:1.2rem;padding:40px;text-align:center}.dashboard-error{color:#e74c3c}.dashboard-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:40px}.kpi-card{background:linear-gradient(135deg,#34495e,#2c3e50);border:1px solid #4a5568;border-radius:12px;box-shadow:0 4px 15px #0000004d;padding:25px;transition:transform .3s ease,box-shadow .3s ease}.kpi-card:hover{box-shadow:0 6px 20px #0006;transform:translateY(-5px)}.kpi-label{color:#bdc3c7;font-size:.9rem;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.kpi-value{color:#1e90ff;font-size:2.5rem;font-weight:700;margin-bottom:5px}.kpi-subtext{color:#95a5a6;font-size:.85rem;font-style:italic}.dashboard-charts{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:30px;max-width:100%;overflow-x:hidden;width:100%}@media (max-width:480px){.dashboard-charts{grid-template-columns:1fr;min-width:0}}.chart-container{background-color:#34495e;border:1px solid #4a5568;border-radius:12px;box-shadow:0 4px 15px #0000004d;box-sizing:border-box;max-width:100%;overflow-x:hidden;padding:25px;width:100%}.chart-container h2{border-bottom:2px solid #4a5568;color:#ecf0f1;font-size:1.3rem;margin:0 0 20px;padding-bottom:10px}.chart-bars{-webkit-overflow-scrolling:touch;align-items:flex-end;display:flex;gap:4px;height:300px;overflow-x:auto;padding:10px 0;scrollbar-color:#4a5568 #2d2d2d;scrollbar-width:thin}.chart-bars::-webkit-scrollbar{height:8px}.chart-bars::-webkit-scrollbar-track{background:#2d2d2d;border-radius:4px}.chart-bars::-webkit-scrollbar-thumb{background:#4a5568;border-radius:4px}.chart-bars::-webkit-scrollbar-thumb:hover{background:#5a6578}.chart-bar-wrapper{align-items:center;display:flex;flex:1 1;flex-direction:column;min-width:30px}.chart-bar-container{align-items:flex-end;height:100%}.chart-bar,.chart-bar-container{display:flex;justify-content:center;width:100%}.chart-bar{align-items:flex-start;background:linear-gradient(180deg,#1e90ff,#06c);border-radius:4px 4px 0 0;cursor:pointer;min-height:2px;padding-top:5px;position:relative;transition:all .3s ease}.chart-bar:hover{opacity:.8;transform:scaleY(1.05)}.chart-bar.completion{background:linear-gradient(180deg,#27ae60,#1e8449)}.bar-value{color:#fff;font-size:.7rem;font-weight:700;text-shadow:0 1px 2px #00000080}.chart-label{color:#95a5a6;font-size:.7rem;height:40px;margin-left:-10px;margin-top:5px;text-align:center;transform:rotate(-45deg);transform-origin:top left;white-space:nowrap;width:60px}@media (max-width:768px){.dashboard-container{max-width:100%;overflow-x:hidden;padding:12px;width:100%}.dashboard-header{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:20px;padding-bottom:15px}.dashboard-header h1{font-size:1.4rem;line-height:1.2}.dashboard-controls{width:100%}.dashboard-controls label{align-items:flex-start;flex-direction:column;font-size:.9rem;gap:8px;width:100%}.dashboard-controls select{font-size:.95rem;min-height:44px;padding:10px 12px;width:100%}.dashboard-summary{gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:25px}.kpi-card{padding:18px}.kpi-label{font-size:.85rem}.kpi-value{font-size:2rem;line-height:1.1}.kpi-subtext{font-size:.8rem}.dashboard-charts{gap:18px;grid-template-columns:1fr;margin-top:25px}.chart-container{overflow:hidden;padding:18px}.chart-container h2{font-size:1.1rem;line-height:1.3;margin-bottom:15px}.chart-bars{gap:3px;height:220px;padding:10px 5px}.chart-bar-wrapper{flex:0 0 auto;min-width:28px}.chart-bar{border-radius:3px 3px 0 0;min-width:24px}.chart-label{font-size:.65rem;height:40px;margin-left:-8px;width:55px}.bar-value{font-size:.7rem;padding:2px 4px}}@media (max-width:480px){.dashboard-container{max-width:100vw;overflow-x:hidden;padding:10px 8px;position:relative;width:100%}.dashboard-container *{box-sizing:border-box;max-width:100%}.dashboard-charts,.dashboard-controls,.dashboard-header,.dashboard-summary{max-width:100%;overflow-x:hidden;width:100%}.dashboard-header{gap:10px;margin-bottom:15px;padding-bottom:12px}.dashboard-header h1{font-size:1.25rem;line-height:1.3}.dashboard-controls{width:100%}.dashboard-controls label{font-size:.9rem;width:100%}.dashboard-controls select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23fff' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;font-size:.95rem;min-height:44px;padding:12px 40px 12px 14px;width:100%}.dashboard-summary{gap:10px;grid-template-columns:1fr;margin-bottom:20px;max-width:100%;overflow-x:hidden;width:100%}.kpi-card{padding:16px}.kpi-label{font-size:.8rem;line-height:1.3;margin-bottom:8px}.kpi-value{font-size:1.9rem;line-height:1.1;margin-bottom:6px}.kpi-subtext{font-size:.75rem;line-height:1.4}.dashboard-charts{gap:15px;margin-top:20px}.chart-container,.dashboard-charts{max-width:100%;overflow-x:hidden;width:100%}.chart-container{border-radius:10px;overflow-y:visible;padding:14px}.chart-container h2{font-size:.95rem;line-height:1.3;margin-bottom:12px;padding-bottom:8px}.chart-bars{-webkit-overflow-scrolling:touch;gap:2px;height:200px;max-width:100%;overflow-x:auto;overflow-y:visible;padding:10px 4px;scrollbar-width:thin;width:100%}.chart-bar-wrapper{flex:0 0 auto;min-width:24px}.chart-bar{border-radius:3px 3px 0 0;min-width:22px;padding-top:4px}.bar-value{font-size:.7rem;font-weight:600;padding:2px 3px}.chart-label{font-size:.6rem;height:35px;margin-left:-10px;margin-top:4px;overflow:visible;transform:rotate(-45deg);transform-origin:top left;white-space:nowrap;width:50px}.dashboard-error,.dashboard-loading{font-size:.95rem;line-height:1.5;padding:25px 15px}}@media (max-width:360px){.dashboard-container{max-width:100%;overflow-x:hidden;padding:8px 6px;width:100%}.dashboard-header h1{font-size:1.1rem;line-height:1.2}.dashboard-controls select{font-size:.9rem;padding:10px 12px}.kpi-card{padding:14px}.kpi-label{font-size:.75rem}.kpi-value{font-size:1.7rem}.kpi-subtext{font-size:.7rem}.chart-container{padding:12px}.chart-container h2{font-size:.9rem}.chart-bars{height:180px;padding:8px 3px}.chart-bar-wrapper{min-width:22px}.chart-bar{min-width:20px}.bar-value{font-size:.65rem}.chart-label{font-size:.55rem;height:32px;width:45px}}@media (max-width:768px) and (orientation:landscape){.dashboard-container{padding:10px}.dashboard-summary{gap:10px;grid-template-columns:repeat(4,1fr)}.kpi-card{padding:12px}.kpi-value{font-size:1.6rem}.kpi-label{font-size:.75rem}.kpi-subtext{font-size:.7rem}.chart-bars{height:160px}.chart-container{padding:15px}}.dev-auth-bypass{background-color:#fff5f5;border:2px dashed #ff6b6b;border-radius:8px;margin:20px 0;padding:20px;text-align:center}.dev-login-section h3{color:#d63031;margin-bottom:10px}.dev-login-section p{color:#636e72;margin-bottom:15px}.dev-login-btn{background-color:#00b894;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;margin-bottom:15px;padding:10px 20px}.dev-login-btn:hover{background-color:#00a085}.dev-user-info{align-items:center;display:flex;gap:15px;justify-content:center;margin-bottom:15px}.dev-badge{background-color:#fdcb6e;border-radius:4px;color:#2d3436;font-size:12px;font-weight:700;padding:4px 8px}.dev-logout-btn{background-color:#e17055;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.dev-logout-btn:hover{background-color:#d63031}.dev-note{color:#636e72;font-style:italic;line-height:1.4}body.landing-page-active,body:has(.landing-page),html.landing-page-active,html:has(.landing-page){align-items:normal!important;display:block!important;height:auto!important;justify-content:normal!important;left:0!important;margin:0!important;min-height:100vh!important;overflow-x:hidden!important;overflow-y:auto!important;padding:0!important;position:relative!important;top:0!important;transform:none!important}#root.landing-page-active,#root:has(.landing-page){display:block!important;height:auto!important;left:0!important;margin:0!important;min-height:100vh!important;padding:0!important;position:relative!important;top:0!important}.landing-page{background:#fff;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;left:0;line-height:1.6;margin:0;min-height:100vh;overflow-x:hidden;overflow-y:visible;padding:0;position:relative;top:0;width:100%}.landing-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #0000000d;margin:0;padding:16px 0;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:100}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 24px}.logo{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:24px;font-weight:700}.trainer-link{color:#667eea;font-size:14px;font-weight:500;text-decoration:none;transition:opacity .2s}.trainer-link:hover{opacity:.7}.hero-section{background:linear-gradient(135deg,#f8f9ff,#fff);box-sizing:border-box;margin-top:0;overflow:hidden;padding:80px 24px;position:relative;width:100%}.hero-section:before{background:radial-gradient(circle,#667eea1a 0,#0000 70%);border-radius:50%;content:"";height:600px;position:absolute;right:-10%;top:-50%;width:600px}.hero-content{margin:0 auto;max-width:800px;position:relative;text-align:center;z-index:1}.hero-badge{background:#667eea1a;border-radius:24px;color:#667eea;display:inline-block;font-size:14px;font-weight:500;margin-bottom:24px;padding:8px 16px}.hero-headline{color:#1a1a1a;font-size:clamp(36px,6vw,64px);font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:0 0 24px}.hero-headline .highlight{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text}.hero-subheadline{color:#4a5568;font-size:clamp(18px,2.5vw,22px);line-height:1.6;margin:0 auto 40px;max-width:700px}.hero-cta{margin-bottom:48px}.cta-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 20px #667eea4d;color:#fff;cursor:pointer;font-size:18px;font-weight:600;min-width:220px;padding:18px 40px;transition:all .3s ease}.cta-primary:hover{box-shadow:0 6px 30px #667eea66;transform:translateY(-2px)}.cta-primary:active{transform:translateY(0)}.cta-primary.large{font-size:20px;padding:20px 48px}.cta-note{color:#718096;font-size:14px;margin-top:12px}.hero-features{display:flex;flex-wrap:wrap;gap:32px;justify-content:center;margin-top:48px}.hero-feature-item{color:#4a5568;font-size:16px;gap:8px}.check-icon,.hero-feature-item{align-items:center;display:flex}.check-icon{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;flex-shrink:0;font-size:14px;font-weight:600;height:24px;justify-content:center;width:24px}.section-container{margin:0 auto;max-width:1200px;padding:0 24px}.section-title{color:#1a1a1a;font-size:clamp(32px,5vw,48px);font-weight:800;letter-spacing:-.02em;margin:0 0 16px;text-align:center}.how-it-works{background:#fff;padding:100px 0}.steps-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:64px}.step-card{background:#f8f9ff;border:1px solid #667eea1a;border-radius:16px;padding:32px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.step-card:hover{box-shadow:0 8px 30px #667eea26;transform:translateY(-4px)}.step-number{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:24px;font-weight:700;height:56px;justify-content:center;margin:0 auto 24px;width:56px}.step-card h3{color:#1a1a1a;font-size:22px;font-weight:700;margin:0 0 12px}.step-card p{color:#4a5568;font-size:16px;line-height:1.6;margin:0}.value-proposition{background:linear-gradient(135deg,#f8f9ff,#fff);padding:100px 0}.value-description{color:#4a5568;font-size:20px;line-height:1.7;margin:0 auto 64px;max-width:800px;text-align:center}.value-features{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.value-feature{align-items:flex-start;display:flex;gap:20px}.value-icon{flex-shrink:0;font-size:32px}.value-feature h4{color:#1a1a1a;font-size:20px;font-weight:700;margin:0 0 8px}.value-feature p{color:#4a5568;font-size:16px;line-height:1.6;margin:0}.accessibility-section{background:linear-gradient(135deg,#f0f4ff,#fff);padding:100px 0}.accessibility-content{margin:0 auto;max-width:1200px}.accessibility-badge{background:#667eea1a;border-radius:24px;color:#667eea;display:inline-block;font-size:14px;font-weight:500;margin-bottom:24px;padding:8px 16px;text-align:center;width:100%}.accessibility-intro{color:#4a5568;font-size:20px;line-height:1.7;margin:0 auto 64px;max-width:900px;text-align:center}.accessibility-features-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:64px}.accessibility-feature-card{background:#fff;border:2px solid #667eea33;border-radius:16px;box-shadow:0 2px 10px #667eea0d;padding:32px;text-align:center;transition:all .3s ease}.accessibility-feature-card:hover{border-color:#667eea66;box-shadow:0 8px 30px #667eea26;transform:translateY(-4px)}.accessibility-icon{font-size:48px;margin-bottom:20px}.accessibility-feature-card h3{color:#1a1a1a;font-size:22px;font-weight:700;margin:0 0 12px}.accessibility-feature-card p{color:#4a5568;font-size:16px;line-height:1.6;margin:0}.accessibility-cta{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;padding:40px;text-align:center}.accessibility-message{font-size:18px;line-height:1.7;margin:0 auto;max-width:800px}.accessibility-message strong{display:block;font-size:20px;margin-bottom:12px}.features-section{background:#fff;padding:100px 0}.features-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:64px}.feature-card{background:#fff;border:1px solid #00000014;border-radius:16px;padding:32px;transition:all .3s ease}.feature-card:hover{border-color:#667eea4d;box-shadow:0 8px 30px #667eea1a;transform:translateY(-2px)}.feature-icon{font-size:40px;margin-bottom:20px}.feature-card h3{color:#1a1a1a;font-size:22px;font-weight:700;margin:0 0 12px}.feature-card p{color:#4a5568;font-size:16px;line-height:1.6;margin:0}.testimonials-section{background:#fff;padding:100px 0}.testimonial-card{background:linear-gradient(135deg,#f8f9ff,#fff);border:1px solid #667eea1a;border-radius:20px;box-shadow:0 4px 20px #667eea14;margin:0 auto 48px;max-width:800px;padding:48px;position:relative}.testimonial-content{position:relative}.quote-icon{color:#667eea33;font-family:Georgia,serif;font-size:80px;font-weight:700;left:-10px;line-height:1;position:absolute;top:-20px}.testimonial-text{color:#1a1a1a;font-size:20px;font-style:italic;line-height:1.7;margin:0 0 32px;padding-left:20px;position:relative;z-index:1}.testimonial-author{display:flex;flex-direction:column;gap:4px}.author-name{color:#667eea;font-size:18px;font-weight:700}.author-role{color:#718096;font-size:14px}.personal-note{background:linear-gradient(135deg,#fff8e1,#fff);border-left:4px solid #ffc107;border-radius:12px;margin:0 auto;max-width:700px;padding:32px;text-align:center}.note-text{color:#1a1a1a;font-size:18px;line-height:1.7;margin:0}.note-text strong{color:#667eea;font-weight:700}.final-cta-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:100px 0;text-align:center}.final-cta-content h2{font-size:clamp(36px,5vw,48px);font-weight:800;letter-spacing:-.02em;margin:0 0 16px}.final-cta-content>p{font-size:20px;margin:0 0 40px;opacity:.95}.final-cta-content .cta-primary{background:#fff;box-shadow:0 4px 20px #0003;color:#667eea}.final-cta-content .cta-primary:hover{background:#f8f9ff;box-shadow:0 6px 30px #0000004d}.final-cta-content .cta-note{color:#fffc}.landing-footer{background:#1a1a1a;color:#fff;padding:40px 0}.footer-content{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 24px}.footer-links{display:flex;gap:24px}.footer-links a{color:#ffffffb3;font-size:14px;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#fff}@media (max-width:768px){.hero-section{padding:60px 24px}.hero-features{flex-direction:column;gap:16px}.accessibility-section,.features-section,.final-cta-section,.how-it-works,.testimonials-section,.value-proposition{padding:60px 0}.testimonial-card{padding:32px 24px}.testimonial-text{font-size:18px;padding-left:10px}.personal-note{padding:24px}.note-text{font-size:16px}.features-grid,.steps-grid,.value-features{gap:24px;grid-template-columns:1fr}.footer-content{flex-direction:column;text-align:center}.header-content{padding:0 16px}}@media (max-width:480px){.hero-headline{font-size:32px}.hero-subheadline{font-size:18px}.cta-primary{padding:16px 32px;width:100%}}.workout-viewer{background:#fff;font-family:sans-serif;padding:1rem}.day-toggle{background-color:#1e1e2f;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1.1rem;margin-bottom:.5rem;padding:.5rem 1rem;text-align:left;width:100%}.exercise-card{background:#f8f8f8;border:1px solid #e0e0e0;border-radius:6px;box-shadow:0 0 5px #0000000d;margin:.5rem 0;padding:.75rem}.exercise-card h4{color:#1a1a1a;font-size:1.2rem;font-weight:600;margin-bottom:1rem}.exercise-details{background:#fff;border:1px solid #d0d0d0;border-radius:4px;margin:.75rem 0;padding:.75rem}.detail-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:.5rem 0}.detail-item:last-child{border-bottom:none}.detail-label{color:#2c3e50;font-size:.9rem;font-weight:600;min-width:80px}.detail-value{color:#34495e;font-size:.9rem;font-weight:500}.exercise-instruction,.exercise-tip{background:#f8f9fa;border-left:4px solid #007bff;border-radius:4px;margin:.75rem 0;padding:.75rem}.exercise-tip{border-left-color:#ffc107}.exercise-instruction h5,.exercise-tip h5{color:#2c3e50;font-size:1rem;font-weight:600;margin-bottom:.5rem}.exercise-instruction p,.exercise-tip p{color:#495057;font-size:.9rem;line-height:1.5;margin:0}.workout-viewer *{color:inherit}.workout-viewer .exercise-card .exercise-details *{color:inherit!important}.workout-viewer .exercise-card .exercise-details .detail-label{color:#2c3e50!important}.workout-viewer .exercise-card .exercise-details .detail-value{color:#34495e!important}.onboarding-container{align-items:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);box-sizing:border-box;display:flex;justify-content:center;min-height:100vh;overflow-x:hidden;padding:20px}.onboarding-card{animation:slideUp .4s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;box-sizing:border-box;max-width:500px;padding:24px;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.onboarding-header{margin-bottom:20px;text-align:center}.onboarding-header h1{color:#1f2937;font-size:32px;font-weight:700;margin:0 0 8px}.onboarding-header p{color:#6b7280;font-size:16px;margin:0}.onboarding-form{gap:14px}.form-group,.onboarding-form{display:flex;flex-direction:column}.form-group{gap:6px}.form-group label{color:#374151;font-size:14px;font-weight:600}.required{color:#ef4444;white-space:nowrap}.form-group input[type=email],.form-group input[type=tel],.form-group input[type=text]{border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:16px;padding:12px 16px;transition:all .2s;width:100%}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input.error{background-color:#fef2f2;border-color:#dc2626}.form-group input.error:focus{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.form-group input:disabled{background-color:#f3f4f6;cursor:not-allowed}.error-message{align-items:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;display:flex;font-size:13px;font-weight:500;gap:6px;line-height:1.4;margin-top:4px;padding:8px 12px}.error-message:before{content:"⚠";flex-shrink:0;font-size:16px}.checkbox-group{margin-bottom:4px;margin-top:4px}.checkbox-group-optional{opacity:.85}.checkbox-label{align-items:flex-start;cursor:pointer;display:flex;font-weight:400;gap:12px}.checkbox-label input[type=checkbox]{cursor:pointer;flex-shrink:0;height:20px;margin-top:4px;width:20px}.checkbox-text{color:#4b5563;font-size:14px;line-height:1.4}.optional-label{color:#8b5cf6;font-weight:600}.learn-more-link{color:#9ca3af;font-size:14px;text-decoration:underline;transition:color .2s}.learn-more-link:hover{color:#667eea}.reassurance-text{color:#9ca3af;font-size:12px;line-height:1.3;margin-left:32px;margin-top:4px}.error-banner{background-color:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:14px;padding:12px 16px}.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:4px;padding:14px 24px;transition:all .2s}.submit-button:hover:not(:disabled){box-shadow:0 10px 20px #667eea4d;transform:translateY(-2px)}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{cursor:not-allowed;opacity:.6}.onboarding-footer{border-top:1px solid #e5e7eb;margin-top:20px;padding-top:16px;text-align:center}.onboarding-footer p{color:#6b7280;font-size:12px;margin:0}.onboarding-footer a{color:#667eea;text-decoration:none}.onboarding-footer a:hover{text-decoration:underline}.success-card{text-align:center}.success-icon{margin-bottom:24px}.success-icon,.success-icon-small{display:flex;justify-content:center}.success-icon-small{align-items:center;gap:12px;margin-bottom:12px}.account-created-text{color:#1f2937;font-size:16px;font-weight:600}.simplified-content{display:flex;flex-direction:column;gap:20px;text-align:center}.phone-check-simple{align-items:center;color:#1f2937;display:flex;font-size:24px;font-weight:700;gap:8px;justify-content:center;margin:0}.phone-emoji-animated{animation:phone-bounce 2s ease-in-out infinite;display:inline-block;font-size:28px}@keyframes phone-bounce{0%,to{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-6px) rotate(-5deg)}50%{transform:translateY(-8px) rotate(0deg)}75%{transform:translateY(-6px) rotate(5deg)}}.phone-check-motivation-simple{color:#4b5563;font-size:15px;line-height:1.5;margin:0}.sms-preview-small{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin:0 auto;max-width:400px;padding:12px 16px}.sms-preview-text-small{color:#4b5563;font-size:13px;font-style:italic;line-height:1.4;margin:0;text-align:left}.success-header h1{color:#1f2937;font-size:32px;font-weight:700;margin:0 0 8px}.success-header p{color:#6b7280;font-size:16px;margin:0 0 32px}.progress-framing{margin-bottom:12px}.progress-step{color:#10b981;font-size:14px;font-weight:600;margin:0}.welcome-message-small{margin-bottom:20px}.welcome-message-small p{color:#1f2937;font-size:18px;font-weight:500;margin:0}.progress-next{color:#6b7280;font-size:13px;margin:0}.success-content{display:flex;flex-direction:column;gap:24px}.success-item{background-color:#f9fafb;border-radius:8px;padding:20px;text-align:left}.success-item h3{color:#1f2937;font-size:18px;font-weight:600;margin:0 0 8px}.success-item p{color:#4b5563;font-size:14px;line-height:1.6;margin:0 0 8px}.phone-check-highlight{animation:pulse-border 2s ease-in-out infinite;background:linear-gradient(135deg,#f0f4ff,#e8f0fe);border:2px solid #667eea;padding:28px;text-align:center}@keyframes pulse-border{0%,to{border-color:#667eea;box-shadow:0 0 0 0 #667eea66}50%{border-color:#764ba2;box-shadow:0 0 0 8px #667eea00}}.phone-icon-wrapper{display:flex;justify-content:center;margin-bottom:16px}.phone-icon{animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.phone-check-title{color:#667eea;font-size:24px;font-weight:700;margin:0 0 12px;text-align:center}.phone-check-message{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 8px;text-align:center}.phone-check-motivation{color:#4b5563;font-size:14px;font-style:italic;line-height:1.5;margin:0 0 12px;text-align:center}.phone-check-instruction{color:#374151;font-size:15px;font-weight:500;line-height:1.6;margin:0 0 16px;text-align:center}.sms-preview{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-top:16px;padding:16px;text-align:left}.sms-preview-label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.sms-preview-text{color:#4b5563;font-size:14px;font-style:italic;line-height:1.5;margin:0 0 8px}.sms-delivery-reassurance{color:#6b7280;font-size:12px;font-style:normal;margin:0;text-align:center}.sms-note{color:#6b7280;font-size:12px;font-style:italic}.success-actions{margin-top:8px}.positive-reinforcement{color:#10b981;font-size:14px;font-weight:500;margin:0 0 12px;text-align:center}.primary-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 32px;transition:all .2s}.primary-button:hover{box-shadow:0 10px 20px #667eea4d;transform:translateY(-2px)}@media (max-width:640px){.onboarding-container{align-items:flex-start;min-height:100vh;min-height:100dvh;padding:4px}.onboarding-card{border-radius:12px;margin:0;padding:16px}.onboarding-header{margin-bottom:12px}.onboarding-header h1{font-size:22px;margin:0 0 2px}.onboarding-header p{font-size:13px}.onboarding-form{gap:6px}.form-group{gap:2px}.form-group label{font-size:13px}.form-group input[type=email],.form-group input[type=tel],.form-group input[type=text]{font-size:16px;padding:6px 12px}.checkbox-group{margin-bottom:0;margin-top:0}.checkbox-text{font-size:12px;line-height:1.3}.checkbox-label{gap:6px}.checkbox-label input[type=checkbox]{height:18px;margin-top:1px;width:18px}.error-message{font-size:12px;margin-top:1px;padding:5px 10px}.submit-button{font-size:15px;margin-top:2px;padding:10px 20px}.error-banner{font-size:13px;padding:8px 12px}.onboarding-footer{margin-top:8px;padding-top:8px}.onboarding-footer p{font-size:11px}.reassurance-text{font-size:11px;margin-left:26px;margin-top:0}.phone-check-highlight{padding:20px}.phone-check-title{font-size:20px}.phone-check-message{font-size:14px}.phone-check-instruction{font-size:13px}.sms-preview{padding:12px}.phone-icon{height:40px;width:40px}.progress-step{font-size:13px}.progress-next{font-size:12px}.phone-check-motivation,.positive-reinforcement{font-size:13px}.success-icon-small{margin-bottom:10px}.account-created-text{font-size:15px}.progress-framing{margin-bottom:10px}.welcome-message-small{margin-bottom:16px}.welcome-message-small p{font-size:16px}.simplified-content{gap:16px}.phone-check-simple{flex-wrap:wrap;font-size:20px}.phone-emoji-animated{font-size:24px}.phone-check-motivation-simple{font-size:14px}.sms-preview-small{padding:10px 12px}.sms-preview-text-small{font-size:12px}}.legal-page{word-wrap:break-word;box-sizing:border-box;color:#1f2937!important;font-family:Arial,sans-serif;line-height:1.8;margin:0 auto;max-width:900px;padding:40px 20px}.legal-page,.legal-page-wrapper{background:#fff!important;left:0;min-height:100vh;overflow-x:hidden;position:relative;top:0;width:100%}.legal-page-wrapper{overflow-y:auto!important}body:has(.legal-page),html:has(.legal-page){background:#fff!important;color:#1f2937!important;height:auto!important;overflow-x:hidden!important;overflow-y:auto!important;position:relative!important;top:0!important}.legal-page h1{border-bottom:3px solid #667eea;color:#1f2937!important;font-size:2.5rem;font-weight:700;margin-bottom:40px;margin-top:0;padding-bottom:15px}.legal-page h2{color:#374151!important;font-size:1.75rem;margin-bottom:20px;margin-top:40px}.legal-page h2,.legal-page h3{font-weight:600;line-height:1.4}.legal-page h3{color:#4b5563!important;font-size:1.35rem;margin-bottom:15px;margin-top:30px}.legal-page p{color:#1f2937!important;font-size:1.05rem;line-height:1.8;margin-bottom:18px;max-width:100%}.legal-page ul{margin-bottom:25px;max-width:100%;padding-left:30px}.legal-page li{color:#1f2937!important;font-size:1.05rem;line-height:1.7;margin-bottom:12px}.legal-page strong{color:#1f2937!important;font-weight:600}.legal-page a{color:#667eea!important;text-decoration:underline}.legal-page a:hover{color:#764ba2!important}.disclaimer{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:15px;padding:30px}.disclaimer-box{background:#fff;border:2px solid #ffc107;border-radius:10px;box-shadow:0 4px 15px #0000001a;margin:20px 0;padding:20px}.disclaimer-box h2{color:#856404;margin-bottom:15px;margin-top:0}.disclaimer-box ul{margin-bottom:0}.disclaimer-footer{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;color:#856404;font-size:1.1rem;margin-top:30px;padding:20px;text-align:center}@media (max-width:768px){.legal-page{padding:20px 15px}.legal-page h1{font-size:2rem}.legal-page h2{font-size:1.5rem}.legal-page h3{font-size:1.2rem}.legal-page li,.legal-page p{font-size:1rem}.disclaimer{padding:20px}.disclaimer-box{padding:15px}}
/*# sourceMappingURL=main.ff7bbcbf.css.map*/