@import url(https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap);:root{--accent-color:#fc3d21;--accent-hover:#e03119;--accent-light:#ff6b4a;--accent-dark:#d32f0f;--accent-transparent:#fc3d211a;--accent-shadow:0 4px 20px #fc3d214d;--primary-bg:#111;--secondary-bg:#1a1a1a;--surface-bg:#222;--card-bg:#ffffff0a;--card-hover-bg:#ffffff14;--glass:#ffffff0d;--glass-strong:#ffffff0f;--overlay-bg:#111111f2;--text-primary:#fff;--text-secondary:#e5e5e5;--text-tertiary:#ccc;--text-muted:#ccc;--text-disabled:#b3b3b3;--text-inverse:#111;--border-color:#ffffff1f;--border-hover:#ffffff40;--border-strong:#ffffff4d;--success-color:#22c55e;--success-bg:#22c55e1a;--space-xxs:2px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-xxl:48px;--space-3xl:64px;--font-family-display:"Bebas Neue","Oswald","Arial Black",system-ui,sans-serif;--font-family-sans:Verdana,Geneva,"DejaVu Sans",sans-serif;--font-family-mono:"SF Mono",Monaco,Consolas,"Liberation Mono","Courier New",monospace;--font-xs:0.75rem;--font-sm:0.875rem;--font-base:1rem;--font-lg:1.125rem;--font-xl:1.25rem;--font-2xl:1.5rem;--font-3xl:1.875rem;--font-4xl:2.25rem;--font-5xl:3rem;--text-xs:var(--font-xs);--text-sm:var(--font-sm);--text-base:var(--font-base);--text-lg:var(--font-lg);--text-xl:var(--font-xl);--text-2xl:var(--font-2xl);--text-3xl:var(--font-3xl);--text-4xl:var(--font-4xl);--text-5xl:var(--font-5xl);--font-light:300;--font-normal:400;--font-athletic:450;--font-medium:500;--font-semibold:600;--font-bold:700;--font-heavy:800;--font-black:900;--display-normal:400;--display-bold:400;--line-tight:1.25;--line-normal:1.5;--line-relaxed:1.75;--content-padding:1.5rem;--header-height:80px;--max-width:1200px;--sidebar-width:280px;--content-padding-mobile:1rem;--space-lg-mobile:16px;--space-xl-mobile:20px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--border-width:1px;--border-width-thick:2px;--shadow-sm:0 1px 3px #0000001f;--shadow-md:0 4px 6px #00000026;--shadow-lg:0 10px 25px #0003;--shadow-xl:0 20px 40px #00000040;--shadow-accent:0 8px 32px #fc3d2159;--duration-fast:150ms;--duration-base:250ms;--duration-slow:350ms;--duration-slower:500ms;--ease-in:cubic-bezier(0.4,0,1,1);--ease-out:cubic-bezier(0,0,0.2,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--ease-smooth:cubic-bezier(0.23,1,0.32,1);--z-base:1;--z-sticky:10;--z-dropdown:100;--z-overlay:200;--z-modal:300;--z-popover:400;--z-tooltip:500;--z-toast:1000;--btn-padding-sm:var(--space-xs) var(--space-md);--btn-padding-md:var(--space-sm) var(--space-lg);--btn-padding-lg:var(--space-md) var(--space-xl);--btn-min-height:44px;--btn-min-width:44px;--btn-icon-size:44px;--btn-touch-spacing:2px;--input-padding:var(--space-md);--input-min-height:44px;--input-border-width:1px;--card-padding:var(--space-lg);--card-padding-sm:var(--space-md)}@media (max-width:768px){:root{--content-padding:var(--content-padding-mobile);--space-lg:var(--space-lg-mobile);--space-xl:var(--space-xl-mobile)}}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0ms;--duration-base:0ms;--duration-slow:0ms;--duration-slower:0ms}}@media (prefers-contrast:high){:root{--border-color:#fff6;--text-muted:#fff;--text-disabled:#ccc}}@media (hover:none) and (pointer:coarse){:root{--btn-min-height:48px;--btn-min-width:48px;--btn-icon-size:48px;--input-min-height:48px;--btn-touch-spacing:4px}}:root{--primary-gradient:linear-gradient(135deg,var(--accent-color) 0%,var(--accent-dark) 100%);--secondary-gradient:linear-gradient(135deg,#ff6b6b,#ee5a52);--success-color:#10b981;--success-bg:#10b9811a;--warning-color:#f59e0b;--warning-bg:#f59e0b1a;--error-color:#ef4444;--error-bg:#ef44441a;--info-color:#3b82f6;--info-bg:#3b82f61a;--secondary-color:#a0aec0;--secondary-transparent:#a0aec01a;--primary-color:var(--primary-bg);--secondary-color-bg:var(--secondary-bg);--surface-primary:#ffffff0d;--surface-secondary:#ffffff14;--surface-hover:#ffffff1a;--surface-active:#fc3d211a;--border-primary:#ffffff1a;--border-secondary:#ffffff14;--border-accent:var(--accent-color);--shadow-card:0 4px 20px #0000001a;--shadow-card-hover:0 8px 30px #00000026;--card-gap:16px;--card-gap-mobile:12px;--card-min-height:320px;--card-min-height-mobile:280px;--hover-transform:translateY(-4px);--active-transform:scale(0.98)}.block{display:block}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.m-0{margin:0}.mt-auto{margin-top:auto}.mb-auto{margin-bottom:auto}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.p-0{padding:0}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.m-1{margin:.5rem}.m-2{margin:1rem}.m-3{margin:1.5rem}.m-4{margin:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.w-auto{width:auto}.h-auto{height:auto}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-accent{color:var(--accent-color)}.text-success{color:var(--success-color)}.text-error{color:var(--error-color)}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}@media (max-width:768px){.mobile\:hidden{display:none}.mobile\:block{display:block}.mobile\:flex{display:flex}.mobile\:text-center{text-align:center}.mobile\:flex-col{flex-direction:column}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-100{opacity:1}.invisible{visibility:hidden}.visible{visibility:visible}.static{position:static}.inset-0{bottom:0;left:0;right:0;top:0}.border{border-width:1px}.border-0{border-width:0}.rounded{border-radius:var(--border-radius-md)}.rounded-lg{border-radius:var(--border-radius-lg)}.rounded-full{border-radius:9999px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"kern" 1;text-rendering:optimizeLegibility}body,html{line-height:var(--line-normal);overflow-y:auto}body{background-color:var(--app-bg);font-family:var(--font-family-sans);font-size:var(--font-base);font-weight:var(--font-normal);min-height:100vh;overflow-x:hidden}body,h1,h2,h3,h4,h5,h6{color:var(--text-primary)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);line-height:var(--line-tight);margin-bottom:var(--space-md)}h1{font-size:var(--font-4xl)}h2{font-size:var(--font-3xl)}h3{font-size:var(--font-2xl)}h4{font-size:var(--font-xl)}h5{font-size:var(--font-lg)}h6{font-size:var(--font-base)}p{color:var(--text-secondary);line-height:var(--line-normal);margin-bottom:var(--space-md)}a{color:var(--accent-color);display:inline-block;position:relative;text-decoration:none;transition:all var(--duration-fast) var(--ease-out)}a:hover{color:var(--accent-hover);transform:translateY(-1px)}a:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--accent-color);outline-offset:2px}a:active{transform:translateY(0)}.link-primary{border-radius:var(--radius-sm);color:var(--accent-color);font-weight:var(--font-medium);padding:var(--space-xs) var(--space-sm);transition:all var(--duration-base) var(--ease-out)}.link-primary:hover{background:#fc3d211a;box-shadow:0 4px 15px #fc3d2133;color:var(--accent-hover);transform:translateY(-1px)}.link-secondary{color:var(--text-secondary);font-weight:var(--font-normal);transition:all var(--duration-base) var(--ease-out)}.link-secondary:hover{color:var(--text-primary);transform:translateY(-1px)}.link-subtle{color:var(--text-muted);font-size:var(--text-sm);transition:all var(--duration-base) var(--ease-out)}.link-subtle:hover{color:var(--text-secondary);transform:translateY(-1px)}.link-nav{border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);letter-spacing:.5px;padding:var(--space-sm) var(--space-md);text-transform:uppercase;transition:all var(--duration-base) var(--ease-out)}.link-nav:hover{background:#fc3d211a;box-shadow:0 4px 15px #fc3d2133;color:var(--accent-color);transform:translateY(-2px)}.link-glass{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff26;border-radius:var(--radius-md);color:var(--text-primary);padding:var(--space-sm) var(--space-md);transition:all var(--duration-base) var(--ease-out)}.link-glass:hover{background:#ffffff1a;border-color:var(--accent-color);box-shadow:0 8px 25px #fc3d214d;color:var(--accent-color);transform:translateY(-2px)}.link-underline{color:var(--text-primary);padding-bottom:var(--space-xs);position:relative}.link-underline:after{background:linear-gradient(90deg,var(--accent-color),var(--accent-hover));bottom:0;content:"";height:2px;left:0;position:absolute;transition:width var(--duration-base) var(--ease-out);width:0}.link-underline:hover:after{width:100%}.link-underline:hover{color:var(--accent-color);transform:none}.link-external:after{content:"↗";font-size:.8em;margin-left:var(--space-xs);opacity:.7}.link-disabled{color:var(--text-disabled);cursor:not-allowed;opacity:.6;pointer-events:none}ol,ul{margin-bottom:var(--space-md);padding-left:var(--space-lg)}li{color:var(--text-secondary);margin-bottom:var(--space-xs)}code{border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.875em;padding:var(--space-xxs) var(--space-xs)}code,pre{background-color:var(--surface-bg);font-family:var(--font-family-mono)}pre{border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:var(--space-md);overflow-x:auto;padding:var(--space-md)}pre code{background:none;border:none;padding:0}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}button{background:none;border:none;cursor:pointer;margin:0;padding:0}button:disabled{cursor:not-allowed;opacity:.6}:focus-visible{outline:2px solid var(--accent-color)}canvas,img,picture,svg,video{display:block;height:auto;max-width:100%}table{border-collapse:collapse;margin-bottom:var(--space-md);width:100%}td,th{border-bottom:1px solid var(--border-color);padding:var(--space-sm) var(--space-md);text-align:left}th{color:var(--text-primary);font-weight:var(--font-semibold)}td{color:var(--text-secondary)}::-webkit-scrollbar{height:8px}::-webkit-scrollbar-track{border-radius:var(--radius-sm)}::selection{background-color:var(--accent-color);color:var(--text-inverse)}::-moz-selection{background-color:var(--accent-color);color:var(--text-inverse)}@media print{*{background:#0000!important;box-shadow:none!important;color:#000!important;text-shadow:none!important}a,a:visited{text-decoration:underline}abbr[title]:after{content:" (" attr(title) ")"}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}}.sr-only{border-width:0;margin:-1px;padding:0}.skip-link{background:var(--text-primary);color:var(--text-inverse);left:var(--space-sm);top:-40px;transition:top var(--duration-fast) var(--ease-out);z-index:var(--z-toast)}.skip-link:focus{top:var(--space-sm)}@media (prefers-contrast:high){button,input,select,textarea{border:2px solid}}.btn-base{align-items:center;border:none;border-radius:var(--border-radius-md);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;line-height:1;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease;white-space:nowrap}.btn-primary{background:var(--accent-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-primary-hover);transform:translateY(-1px)}.btn-secondary{background:var(--bg-secondary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--accent-primary)}.btn-danger{background:var(--error-color);color:#fff}.btn-danger:hover:not(:disabled){background:var(--error-color-hover)}.btn-small{font-size:.75rem;padding:.5rem 1rem}.btn-large{font-size:1rem;padding:1rem 2rem}.btn-base:disabled,.btn-disabled{cursor:not-allowed;opacity:.5;transform:none!important}.input-base{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);color:var(--text-primary);font-size:.875rem;padding:.75rem;transition:all .2s ease;width:100%}.input-base:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-alpha);outline:none}.input-base::placeholder{color:var(--text-tertiary)}.input-error,.input-error:focus{border-color:var(--error-color)}.input-error:focus{box-shadow:0 0 0 3px var(--error-color-alpha)}.card,.card-base{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;padding:var(--space-md);position:relative;transition:all .2s ease}.card-base:hover,.card:hover{background:var(--card-hover-bg);border-color:var(--border-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-base.interactive,.card.interactive{cursor:pointer}.card-base.interactive:hover,.card.interactive:hover{border-color:var(--accent-color)}.card-compact{min-height:auto;padding:var(--space-sm)}.card-elevated{box-shadow:0 8px 32px #0003,inset 0 1px 0 #ffffff1a}.card-glass{background:linear-gradient(135deg,var(--glass) 0,#ffffff05 100%)}.card-header{align-items:flex-start;display:flex;gap:var(--space-md);justify-content:space-between}.card-title{flex:1 1;font-weight:var(--font-bold);line-height:1.2;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-subtitle{color:var(--text-secondary);line-height:1.4;margin:0}.card-meta{color:var(--text-muted);font-size:var(--font-sm);gap:var(--space-sm)}.card-meta,.card-meta-item{align-items:center;display:flex}.card-meta-item{gap:var(--space-xs)}.card-content{flex:1 1;gap:var(--space-md)}.card-content,.card-section{display:flex;flex-direction:column}.card-section{gap:var(--space-sm)}.card-section-title{color:var(--text-secondary);font-size:var(--font-sm);font-weight:var(--font-medium);letter-spacing:.5px;margin:0;text-transform:uppercase}.card-actions{gap:var(--space-xs)}.card-action-btn,.card-actions{align-items:center;display:flex}.card-action-btn{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;font-size:var(--font-sm);height:36px;justify-content:center;transition:var(--transition-card);width:36px}.card-action-btn:hover{background:var(--surface-hover);border-color:var(--border-accent);color:var(--text-primary);transform:translateY(-1px)}.card-action-btn.edit{color:#42a5f5}.card-action-btn.delete{color:#ff6b6b}.card-footer{align-items:center;border-top:1px solid var(--border-secondary);display:flex;justify-content:space-between}.modal-overlay{animation:modalFadeIn .2s ease;background:#000000b3;bottom:0;left:0;padding:1rem;right:0;top:0}.modal-content{animation:modalSlideIn .3s ease;background:var(--card-bg);border-radius:var(--border-radius-lg);overflow:auto}.modal-header{border-bottom:1px solid var(--border-color);margin-bottom:1.5rem;padding:1.5rem 1.5rem 0}.modal-title{font-size:1.5rem;font-weight:700}.modal-close{background:none;border-radius:var(--border-radius-sm);color:var(--text-secondary);font-size:1.5rem;padding:.5rem;transition:all .2s ease}.modal-close:hover{background:var(--bg-hover)}.modal-body{padding:0 1.5rem 1.5rem}.loading-base{align-items:center;color:var(--text-secondary);display:flex;justify-content:center;padding:2rem}.spinner{animation:spin 1s linear infinite;border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-primary);height:2rem;width:2rem}.skeleton{animation:skeleton 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-hover) 50%,var(--bg-secondary) 75%)}@media (max-width:768px){.card{gap:var(--card-gap-mobile);min-height:var(--card-min-height-mobile);padding:var(--card-padding-mobile)}.card-title{font-size:var(--font-lg)}.card-header{align-items:stretch;flex-direction:column;gap:var(--space-sm)}.card-actions{justify-content:center}}.inline-edit-container{display:inline-block;min-width:100px;position:relative}.primary-stat-value .inline-edit-container,.secondary-stat-value .inline-edit-container{min-width:auto}.inline-edit-container.editing{align-items:center;display:flex;gap:8px}.inline-edit-display{-webkit-tap-highlight-color:var(--accent-transparent);align-items:center;border-radius:var(--radius-sm);cursor:pointer;display:inline-block;display:flex;justify-content:center;line-height:var(--line-normal);min-height:var(--btn-min-height);padding:var(--space-xs) var(--space-sm);position:relative;touch-action:manipulation;transition:all var(--duration-fast) var(--ease-out);user-select:none;-webkit-user-select:none}.primary-stat-value .inline-edit-container,.secondary-stat-value .inline-edit-container{align-items:center;display:inline-flex;height:100%;min-width:0;width:100%}.primary-stat-value .inline-edit-display,.secondary-stat-value .inline-edit-display{align-items:center;display:inline-flex;flex:1 1;justify-content:center;margin:0;min-height:inherit;min-width:0;padding:0;width:100%}.primary-stat-value .inline-edit-value,.secondary-stat-value .inline-edit-value{display:inline;text-align:center;width:100%}@media (hover:hover) and (pointer:fine){.inline-edit-display:hover{background-color:rgba(var(--primary-rgb),.1)}}.inline-edit-display.disabled{cursor:default;opacity:1}.inline-edit-display.disabled:hover{background-color:initial;padding:inherit}.inline-edit-value{display:inline-block;word-break:break-word}.inline-edit-display .inline-edit-hint,.inline-edit-display.disabled .inline-edit-hint,.inline-edit-display:hover .inline-edit-hint,.inline-edit-hint{display:none!important}@media (hover:none) and (pointer:coarse){.inline-edit-display{-webkit-tap-highlight-color:var(--accent-transparent);min-height:var(--btn-min-height);padding:var(--space-sm) var(--space-md);touch-action:manipulation}.inline-edit-hint{display:none}.inline-edit-display:not(.disabled):active{background-color:rgba(var(--primary-rgb),.1);transform:scale(.98)}}.inline-edit-input{background:var(--surface-bg);border:var(--border-width-thick) solid var(--accent-color);border-radius:var(--radius-sm);color:var(--text-primary);flex:1 1;font-family:inherit;font-size:inherit;min-height:var(--input-min-height);min-width:calc(var(--btn-min-width)*2);outline:none;padding:var(--space-xs) var(--space-sm);touch-action:auto;user-select:text;-webkit-user-select:text}.inline-edit-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.2)}.workout-modal .inline-edit-display{border-radius:var(--radius-sm);line-height:var(--line-normal);min-height:var(--btn-min-height);padding:var(--space-xxs) var(--space-xs)}@media (hover:hover) and (pointer:fine){.workout-modal .inline-edit-display:hover:not(.disabled){background-color:#ffffff0d}}.workout-modal .inline-edit-display.disabled:hover{background-color:initial;padding:inherit}.workout-modal .inline-edit-hint{display:none!important}.workout-modal-title .inline-edit-display{background:#0000;color:inherit;font-size:inherit;font-weight:inherit;min-height:auto;padding:2px 4px;text-align:center;width:100%}@media (hover:hover) and (pointer:fine){.workout-modal-title .inline-edit-display.disabled:hover{background-color:initial;padding:2px 4px}}.workout-modal-description .inline-edit-display{line-height:1.7;min-height:40px;padding:var(--space-md);text-align:left;width:100%}@media (hover:hover) and (pointer:fine){.workout-modal-description .inline-edit-display.disabled:hover{background-color:initial;padding:var(--space-md)}}.set-metric-value .inline-edit-display{color:var(--text-primary);font-weight:var(--font-bold);min-height:var(--btn-min-height);min-width:var(--space-3xl);padding:var(--space-xs) var(--space-sm);text-align:center}@media (hover:hover) and (pointer:fine){.set-metric-value .inline-edit-display.disabled:hover{background-color:initial;padding:2px 4px}}.exercise-title h4 .inline-edit-display{color:inherit;font-size:inherit;font-weight:inherit;padding:4px 8px;text-align:left;width:100%}@media (hover:hover) and (pointer:fine){.exercise-title h4 .inline-edit-display.disabled:hover{background-color:initial;padding:4px 8px}}.set-metric .inline-edit-input{background:#ffffff0d;border:1px solid var(--border-color);color:var(--text-primary);font-weight:600;min-width:60px;text-align:center}.set-metric .inline-edit-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px #fc3d2133}.primary-stat-value .inline-edit-input{background:#ffffff0d;border:2px solid var(--accent-color);color:var(--accent-color);font-size:inherit;font-weight:800;text-align:center}.secondary-stat-value .inline-edit-input{background:#ffffff0d;border:1px solid var(--border-color);color:var(--text-primary);font-weight:600;min-width:50px;text-align:center}.inline-edit-container.editing{max-width:100%;width:100%}.workout-modal-title .inline-edit-container.editing{justify-content:center;width:100%}.workout-modal-description .inline-edit-container.editing{align-items:stretch;flex-direction:column;width:100%}.workout-modal-description .inline-edit-input{font-family:inherit;line-height:1.5;min-height:80px;padding:var(--space-md);resize:vertical;width:100%}.set-metric-value .inline-edit-container.editing{justify-content:center;width:100%}.primary-stat-value .inline-edit-container.editing{align-items:center;gap:4px;justify-content:center}.workout-modal .inline-edit-container,.workout-modal .inline-edit-display{box-sizing:border-box}.primary-stat-value,.secondary-stat-value,.set-metric-value{align-items:center;display:flex;height:100%;justify-content:center;min-height:inherit;position:relative}.stat-card--primary .stat-value .inline-edit-container,.stat-card--primary .stat-value .inline-edit-display{align-items:center;display:flex;height:100%;justify-content:center;min-height:var(--btn-min-height);width:100%}.stat-card--secondary .stat-value .inline-edit-container,.stat-card--secondary .stat-value .inline-edit-display{align-items:center;display:flex;height:100%;justify-content:center;min-height:calc(var(--btn-min-height)*.75);width:100%}.stat-card .stat-value:has(.inline-edit-container){align-items:center;display:flex;justify-content:center;min-height:inherit}.stat-card--primary .inline-edit-value{font-feature-settings:"tnum" on;display:inline;font-family:var(--font-family-sans);font-weight:var(--font-black)}.stat-card--primary .stat-value{align-items:center;display:flex;flex-direction:column;flex-wrap:nowrap;gap:2px;justify-content:center}.stat-card--primary .inline-edit-container,.stat-card--primary .inline-edit-display{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center;width:auto}.exercise-title h4 .inline-edit-container.editing{align-items:flex-start;width:100%}.exercise-title h4 .inline-edit-input{font-family:inherit;font-size:inherit;font-weight:inherit;text-align:left;width:100%}@media (max-width:1023px) and (min-width:769px){.workout-modal .inline-edit-display{align-items:center;display:flex;justify-content:center;min-height:40px;padding:6px 8px}.workout-modal-title .inline-edit-display{font-size:1.65rem;min-height:42px;padding:6px 10px}.set-metric-value .inline-edit-display{min-height:42px;min-width:55px;padding:6px}}@media (max-width:768px){.workout-modal .inline-edit-display{-webkit-tap-highlight-color:var(--accent-transparent);align-items:center;display:flex;justify-content:center;min-height:var(--btn-min-height);padding:var(--space-sm) var(--space-md);touch-action:manipulation}.stat-card--primary .stat-value .inline-edit-container,.stat-card--primary .stat-value .inline-edit-display{font-size:var(--font-2xl);min-height:var(--btn-min-height)}.stat-card--primary .inline-edit-value{font-size:clamp(1.6rem,5vw,1.8rem);font-weight:var(--font-black);line-height:1}.stat-card--primary .stat-value{gap:1px}.stat-card--secondary .stat-value .inline-edit-container,.stat-card--secondary .stat-value .inline-edit-display{font-size:var(--font-lg);min-height:calc(var(--btn-min-height)*.75)}.workout-modal-title .inline-edit-display{font-size:clamp(1.4rem,4vw,1.6rem);min-height:48px;padding:10px 14px}.workout-modal-description .inline-edit-display{align-items:flex-start;justify-content:flex-start;min-height:60px;padding:var(--space-md)}.set-metric-value .inline-edit-display{-webkit-tap-highlight-color:rgba(252,61,33,.15);min-height:48px;min-width:64px;padding:10px;touch-action:manipulation}.primary-stat-value .inline-edit-display{font-size:3.5rem;line-height:1;min-height:44px;padding:8px}.primary-stat-value .inline-edit-display.disabled:hover,.primary-stat-value .inline-edit-display:hover:not(.disabled){background-color:initial;padding:8px}.secondary-stat-value .inline-edit-display{align-items:center;display:flex;justify-content:center;min-height:44px;min-width:44px;padding:8px}.exercise-title h4 .inline-edit-display{-webkit-tap-highlight-color:rgba(252,61,33,.1);font-size:clamp(1.05rem,3vw,1.15rem);min-height:48px;padding:10px 14px;touch-action:manipulation}.inline-edit-input{-webkit-tap-highlight-color:transparent;box-sizing:border-box;font-size:var(--font-base);min-height:var(--input-min-height);min-width:calc(var(--btn-min-width)*1.5);padding:var(--space-sm) var(--space-md);touch-action:auto;user-select:text;-webkit-user-select:text}.set-metric .inline-edit-input{min-width:70px;padding:8px 10px}.primary-stat-value .inline-edit-input{font-size:2.5rem;min-width:100px;padding:12px 16px}.secondary-stat-value .inline-edit-input{min-width:60px;padding:8px 10px}.inline-edit-actions{gap:4px}.inline-edit-cancel,.inline-edit-save{font-size:16px;height:44px;padding:10px;width:44px}.inline-edit-hint{display:none}}@media (max-width:480px){.workout-modal .inline-edit-display{min-height:48px;padding:8px 10px}.stat-card--primary .stat-value .inline-edit-container,.stat-card--primary .stat-value .inline-edit-display{min-height:1.8rem}.stat-card--primary .inline-edit-value{font-size:1.5rem;font-weight:var(--font-black);line-height:1}.stat-card--primary .stat-value{gap:0}.stat-card--secondary .stat-value .inline-edit-container,.stat-card--secondary .stat-value .inline-edit-display{min-height:1rem}.workout-modal-title .inline-edit-display{font-size:clamp(1.3rem,4vw,1.4rem);min-height:48px;padding:12px}.primary-stat-value .inline-edit-display{font-size:2.8rem;line-height:1;padding:8px}.primary-stat-value .inline-edit-display.disabled:hover,.primary-stat-value .inline-edit-display:hover:not(.disabled){background-color:initial;padding:8px}.primary-stat-value .inline-edit-input{font-size:2rem;min-width:90px}.inline-edit-cancel,.inline-edit-save{font-size:18px;height:44px;padding:8px;width:44px}}.suggestions-dropdown{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#1a1a1afa;border:1px solid rgba(var(--primary-rgb),.3);border-radius:8px;box-shadow:0 8px 32px #00000080,0 2px 8px #0000004d,inset 0 1px 0 #ffffff1a;left:0;margin-top:4px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.suggestion-item{background:#ffffff05;border-bottom:1px solid #ffffff14;color:#fffffff2;cursor:pointer;font-weight:500;padding:12px 16px;transition:all .2s ease}.suggestion-item:last-child{border-bottom:none}.suggestion-item.highlighted,.suggestion-item:hover{background:rgba(var(--primary-rgb),.15);border-bottom-color:rgba(var(--accent-rgb),.2);color:var(--accent-color);transform:translateX(2px)}.suggestion-item.highlighted{border-left:3px solid var(--accent-color)}.suggestion-item{font-family:var(--font-family-sans);font-size:.95rem;letter-spacing:.01em}@media (max-width:768px){.suggestions-dropdown{box-shadow:0 2px 12px #0006;max-height:160px}.suggestion-item{align-items:center;display:flex;font-size:1rem;min-height:48px;padding:12px 16px}}@media (max-width:480px){.suggestion-item{min-height:52px;padding:14px 18px}}.inline-edit-container.with-suggestions{position:relative}@media (hover:none) and (pointer:coarse){.inline-edit-display:not(.disabled){overflow:hidden;position:relative}.inline-edit-display:not(.disabled):before{background:#fc3d214d;border-radius:50%;content:"";height:0;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;width:0;z-index:0}.inline-edit-display:not(.disabled):active:before{height:100%;width:100%}.inline-edit-display>*{position:relative;z-index:1}.inline-edit-display,.inline-edit-input,.suggestions-dropdown{touch-action:manipulation}}.workout-modal .suggestions-dropdown{z-index:1001}.exercise-title .inline-edit-container .suggestions-dropdown{background:var(--card-bg);border-color:rgba(var(--primary-rgb),.2)}.suggestion-item.loading{opacity:.6;pointer-events:none}.suggestion-item.recent{position:relative}.suggestion-item.recent:after{color:var(--accent-color);content:"↻";font-size:.8rem;opacity:.7;position:absolute;right:14px}body{font-weight:var(
    --font-athletic
  )!important}.display-xl{font-size:var(--font-5xl)}.display-lg,.display-xl{font-family:var(--font-family-display);font-weight:var(--display-bold);letter-spacing:.02em;line-height:var(--line-tight);text-transform:uppercase}.display-lg{font-size:var(--font-4xl)}.display-md{font-family:var(--font-family-display);font-size:var(--font-3xl);font-weight:var(--display-bold);letter-spacing:.02em;line-height:var(--line-tight);text-transform:uppercase}.text-heavy{font-weight:var(--font-heavy);letter-spacing:.01em}.text-black{font-weight:var(--font-black);letter-spacing:.01em}.text-athletic{font-weight:var(--font-athletic)}.workout-impact{font-family:var(--font-family-display);font-weight:var(--display-bold);letter-spacing:.05em;text-transform:uppercase}.stat-number{font-feature-settings:"tnum" on;font-family:var(--font-family-sans);font-weight:var(--font-black)}::selection{background:var(--accent-transparent);color:var(--text-primary)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--primary-bg)}::-webkit-scrollbar-thumb{background:var(--accent-color);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--accent-hover)}.loading{color:var(--text-muted);padding:var(--space-xxl)}@media (max-width:768px){.grid-cols-2,.grid-cols-3{grid-template-columns:1fr}}@media (max-width:480px){html{font-size:14px}}.btn{align-items:center;border:var(--border-width) solid #0000;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-weight:var(--font-medium);gap:var(--space-xs);justify-content:center;min-height:var(--btn-min-height);overflow:hidden;position:relative;text-decoration:none;transition:all var(--duration-fast) var(--ease-out)}.btn:disabled{cursor:not-allowed;opacity:.6;pointer-events:none}.btn-sm,.btn-small{font-size:var(--text-sm);padding:var(--space-sm) var(--space-md)}.btn-md,.btn-medium,.btn-sm,.btn-small{min-height:var(--btn-min-height);min-width:var(--btn-min-width)}.btn-md,.btn-medium{font-size:var(--text-base);padding:var(--space-md) var(--space-lg)}.btn-large,.btn-lg{font-size:var(--text-lg);min-height:52px;min-width:52px;padding:var(--space-lg) var(--space-xl)}@media (hover:none) and (pointer:coarse){.btn-sm,.btn-small{padding:var(--space-md) var(--space-lg)}.btn-md,.btn-medium,.btn-sm,.btn-small{min-height:48px;min-width:48px}.btn-large,.btn-lg{min-height:56px;min-width:56px}}.btn-primary{background:var(--accent-color);box-shadow:var(--shadow-accent);color:var(--text-inverse)}.btn-primary:hover{background:var(--accent-hover);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--surface-bg);border-color:var(--border-color);color:var(--text-primary)}.btn-secondary:hover{background:var(--card-hover-bg);border-color:var(--border-hover)}.btn-outline{background:#0000;border-color:var(--accent-color);color:var(--accent-color)}.btn-outline:hover{background:var(--accent-color);color:var(--text-inverse)}.btn-ghost{background:#0000;color:var(--text-secondary)}.btn-ghost:hover{background:var(--card-bg);color:var(--text-primary)}@media (hover:none) and (pointer:coarse){.btn-small{min-height:48px;padding:.75rem 1rem}.btn{min-height:56px;padding:1rem 1.5rem}}.btn-cta-primary,.primary-cta{background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));border:none;border-radius:var(--radius-lg);box-shadow:0 4px 15px #fc3d214d,inset 0 1px 0 #fff3;color:#fff;font-size:var(--text-lg);font-weight:var(--font-semibold);min-height:56px;overflow:hidden;padding:var(--space-lg) var(--space-xl);position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-cta-primary:before,.primary-cta:before{background:linear-gradient(135deg,#ffffff1a,#0000);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.btn-cta-primary:hover,.primary-cta:hover{box-shadow:0 8px 25px #fc3d2166,inset 0 1px 0 #ffffff4d;transform:translateY(-3px)}.btn-cta-primary:hover:before,.primary-cta:hover:before{opacity:1}.btn-cta-secondary,.secondary-cta{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0000;border:2px solid var(--accent-color);border-radius:var(--radius-lg);color:var(--accent-color);font-size:var(--text-base);font-weight:var(--font-semibold);min-height:52px;padding:var(--space-md) var(--space-xl);transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-cta-secondary:hover,.secondary-cta:hover{background:var(--accent-color);box-shadow:0 8px 25px #fc3d2166;color:#fff;transform:translateY(-2px)}.btn-icon{align-items:center;border-radius:var(--radius-md);display:flex;height:var(--btn-icon-size);justify-content:center;min-height:var(--btn-icon-size);min-width:var(--btn-icon-size);padding:0;width:var(--btn-icon-size)}.btn-icon-sm{height:40px;min-height:40px;min-width:40px;width:40px}.btn-icon-lg{height:56px;min-height:56px;min-width:56px;width:56px}@media (hover:none) and (pointer:coarse){.btn-icon{height:48px;min-height:48px;min-width:48px;width:48px}.btn-icon-sm{height:44px;min-height:44px;min-width:44px;width:44px}.btn-icon-lg{height:60px;min-height:60px;min-width:60px;width:60px}.btn-icon:active{transform:scale(.95);transition:transform .15s ease}}.time-slot-button{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff26;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);min-height:40px;padding:var(--space-sm) var(--space-md);text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.time-slot-button:hover{background:#fc3d211a;border-color:var(--accent-color);box-shadow:0 4px 15px #fc3d2133;color:var(--accent-color);transform:translateY(-1px)}.time-slot-button.selected{background:var(--accent-color);border-color:var(--accent-hover)}.submit-button,.time-slot-button.selected{box-shadow:0 4px 15px #fc3d214d;color:#fff}.submit-button{background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--text-base);font-weight:var(--font-semibold);min-height:48px;overflow:hidden;padding:var(--space-md) var(--space-xl);position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.submit-button:before{background:linear-gradient(135deg,#ffffff1a,#0000);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.submit-button:hover{box-shadow:0 8px 25px #fc3d2166;transform:translateY(-2px)}.submit-button:hover:before{opacity:1}.submit-button:disabled{box-shadow:0 4px 15px #fc3d2133;cursor:not-allowed;opacity:.6;transform:none}.close-button{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff26;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:40px}.close-button:hover{background:#ffffff1a;border-color:#ffffff4d;color:var(--text-primary);transform:scale(1.05)}.danger-button{background:var(--error-color);border:none;border-radius:var(--radius-md);box-shadow:0 2px 8px #dc267f4d;color:#fff;cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);min-height:40px;padding:var(--space-sm) var(--space-lg);transition:all .3s cubic-bezier(.4,0,.2,1)}.danger-button:hover{background:var(--error-hover);box-shadow:0 4px 15px #dc267f66;transform:translateY(-1px)}.reset-button{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0000;border:1px solid #fff3;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);min-height:40px;padding:var(--space-sm) var(--space-lg);transition:all .3s cubic-bezier(.4,0,.2,1)}.reset-button:hover{background:#ffffff0d;border-color:#ffffff4d;color:var(--text-secondary);transform:translateY(-1px)}.btn-full{justify-content:center;width:100%}.form-group{margin-bottom:var(--space-lg);position:relative}.form-label{color:var(--text-primary);display:block;font-size:var(--text-sm);font-weight:var(--font-medium);letter-spacing:.5px;margin-bottom:var(--space-xs);text-transform:uppercase}.form-input,.form-select,.form-textarea,input[type=date],input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],select,textarea{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:var(--radius-lg);box-shadow:inset 0 1px 0 #ffffff0d;color:var(--text-primary);font-family:inherit;font-size:var(--text-base);line-height:var(--line-normal);min-height:var(--input-min-height);padding:var(--space-md);transition:all var(--duration-base) var(--ease-out);width:100%}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:var(--text-muted);font-size:var(--text-base);left:var(--space-md);pointer-events:none;position:absolute;transition:color var(--duration-base) var(--ease-out);z-index:2}.input-wrapper input{padding-left:calc(var(--space-md)*2.5)}.input-wrapper:focus-within .input-icon{color:var(--accent-color)}.input-icon-right{left:auto;right:var(--space-md)}.input-wrapper input.has-right-icon{padding-right:calc(var(--space-md)*2.5)}.form-input::placeholder,.form-textarea::placeholder,input::placeholder,textarea::placeholder{color:var(--text-muted);font-weight:var(--font-normal)}.form-input:focus,.form-select:focus,.form-textarea:focus,input:focus,select:focus,textarea:focus{background:#ffffff14;border-color:var(--accent-color);box-shadow:0 0 0 3px #fc3d2126,inset 0 1px 0 #ffffff1a;outline:none}.form-input.error,.form-input:invalid,.form-textarea.error,.form-textarea:invalid,input.error,textarea.error{background:#ef44440d;border-color:var(--error-color);box-shadow:0 0 0 3px #ef444426}.form-input.success,.form-textarea.success,input.success,textarea.success{background:#22c55e0d;border-color:var(--success-color);box-shadow:0 0 0 3px #22c55e26}.form-input:disabled,.form-select:disabled,.form-textarea:disabled,input:disabled,select:disabled,textarea:disabled{background:#ffffff05;border-color:#ffffff0d;cursor:not-allowed;opacity:.6}.form-textarea,textarea{line-height:var(--line-relaxed);min-height:120px;padding-top:var(--space-md);resize:vertical}.form-select,select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23ccc' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right var(--space-md) center;background-repeat:no-repeat;background-size:16px 12px;cursor:pointer;padding-right:calc(var(--space-md)*2.5)}.form-select:focus,select:focus{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23fc3d21' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E")}input[type=range]{-webkit-appearance:none;background:#0000;border:none;min-height:20px;padding:0}input[type=range]::-webkit-slider-track{background:#ffffff1a;border-radius:2px;height:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-color);border:2px solid var(--primary-bg);border-radius:50%;box-shadow:0 2px 8px #fc3d214d;cursor:pointer;height:18px;width:18px}input[type=range]::-moz-range-track{background:#ffffff1a;border:none;border-radius:2px;height:4px}input[type=range]::-moz-range-thumb{background:var(--accent-color);border:2px solid var(--primary-bg);border-radius:50%;box-shadow:0 2px 8px #fc3d214d;cursor:pointer;height:18px;width:18px}input[type=date],input[type=datetime-local],input[type=time]{color-scheme:dark}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.form-group--error .form-input,.form-group--error .form-select,.form-group--error .form-textarea,.form-group--error input,.form-group--error select,.form-group--error textarea{background:#ef44440d;border-color:var(--error-color);box-shadow:0 0 0 3px #ef444426}.form-group--success .form-input,.form-group--success .form-select,.form-group--success .form-textarea,.form-group--success input,.form-group--success select,.form-group--success textarea{background:#22c55e0d;border-color:var(--success-color);box-shadow:0 0 0 3px #22c55e26}.form-error{color:var(--error-color)}.form-error,.form-success{align-items:center;display:flex;font-size:var(--text-sm);font-weight:var(--font-medium);gap:var(--space-xs);margin-top:var(--space-xs)}.form-success{color:var(--success-color)}.form-help{color:var(--text-muted);font-size:var(--text-sm);line-height:var(--line-relaxed);margin-top:var(--space-xs)}.form-input-sm,.input-sm{font-size:var(--text-sm);min-height:36px;padding:var(--space-sm) var(--space-md)}.form-input-lg,.input-lg{font-size:var(--text-lg);min-height:56px;padding:var(--space-lg) var(--space-xl)}.card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--card-bg);border:var(--border-width) solid var(--border-color);border-radius:var(--radius-lg);padding:var(--card-padding);transition:all var(--duration-base) var(--ease-out)}.card:hover{background:var(--card-hover-bg);border-color:var(--border-hover);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-sm{border-radius:var(--radius-md);padding:var(--card-padding-sm)}.card-interactive{cursor:pointer}.card-header{margin-bottom:var(--space-lg)}.card-title{color:var(--text-primary);font-size:var(--font-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-xs)}.card-subtitle{color:var(--text-muted);font-size:var(--font-sm)}.card-body{margin-bottom:var(--space-lg)}.card-footer{border-top:var(--border-width) solid var(--border-color);margin-top:var(--space-lg);padding-top:var(--space-md)}.modal-overlay{align-items:center;animation:fadeIn var(--duration-base) var(--ease-out);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--overlay-bg);display:flex;inset:0;justify-content:center;padding:var(--space-lg);position:fixed;z-index:var(--z-modal)}.modal-content{animation:slideInUp var(--duration-base) var(--ease-out);background:var(--primary-bg);border:var(--border-width) solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-height:90vh;max-width:90vw;overflow:hidden;position:relative}.modal-header{align-items:center;border-bottom:var(--border-width) solid var(--border-color);display:flex;justify-content:space-between;padding:var(--space-lg)}.modal-title{color:var(--text-primary);font-size:var(--font-2xl);font-weight:var(--font-semibold);margin:0}.modal-close{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;height:44px;justify-content:center;transition:all var(--duration-fast) var(--ease-out);width:44px}.modal-close:hover{background:var(--card-bg);color:var(--text-primary)}.modal-body{overflow-y:auto;padding:var(--space-lg)}.modal-footer{border-top:var(--border-width) solid var(--border-color);display:flex;gap:var(--space-md);justify-content:flex-end;padding:var(--space-lg)}.badge{align-items:center;border:var(--border-width) solid #0000;border-radius:var(--radius-full);display:inline-flex;font-size:var(--font-xs);font-weight:var(--font-medium);gap:var(--space-xxs);letter-spacing:.5px;padding:var(--space-xxs) var(--space-sm);text-transform:uppercase}.badge-primary{background:var(--accent-color);color:var(--text-inverse)}.badge-secondary{background:var(--surface-bg);border-color:var(--border-color);color:var(--text-secondary)}.badge-success{background:var(--success-bg);border-color:var(--success-color);color:var(--success-color)}.badge-warning{background:var(--warning-bg);border-color:var(--warning-color);color:var(--warning-color)}.badge-error{background:var(--error-bg);border-color:var(--error-color);color:var(--error-color)}.loading-spinner{border-top:2px solid var(--border-color);border:2px solid var(--border-color);border-top-color:var(--accent-color);height:24px;width:24px}.loading-dots{display:inline-flex;gap:var(--space-xs)}.loading-dots,.loading-dots:after,.loading-dots:before{animation:bounce 1.4s ease-in-out infinite both;background:var(--accent-color);border-radius:50%;content:"";height:8px;width:8px}.loading-dots:before{animation-delay:-.32s}.loading-dots:after{animation-delay:-.16s}.skeleton{animation:shimmer 2s infinite;background:linear-gradient(90deg,var(--surface-bg) 25%,var(--card-bg) 50%,var(--surface-bg) 75%);background-size:200% 100%;border-radius:var(--radius-sm)}.skeleton-line{height:1em;margin-bottom:var(--space-xs)}.skeleton-circle{aspect-ratio:1;border-radius:50%}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width:768px){.modal-content{margin:var(--space-md);max-width:calc(100vw - var(--space-lg))}.modal-body,.modal-footer,.modal-header{padding:var(--space-md)}.btn-lg{min-height:48px;padding:var(--space-md) var(--space-lg)}.card{padding:var(--space-md)}.form-input,.form-select,.form-textarea,input[type=date],input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],select,textarea{font-size:16px;min-height:48px}.form-label{font-size:var(--text-base);margin-bottom:var(--space-sm)}.form-group{margin-bottom:var(--space-xl)}.input-wrapper input{padding-left:calc(var(--space-lg) + 4px)}.input-icon{font-size:var(--text-lg);left:var(--space-md)}}@media (max-width:480px){.form-input-lg,.input-lg{font-size:var(--text-base);min-height:52px;padding:var(--space-md) var(--space-lg)}.form-textarea,textarea{min-height:100px}}.error-fallback{align-items:center;background:linear-gradient(135deg,#1f2937,#111827);border:1px solid #374151;border-radius:12px;display:flex;justify-content:center;margin:1rem 0;min-height:200px;overflow:hidden;padding:2rem;position:relative}.error-fallback:before{background:linear-gradient(90deg,#ef4444,#f59e0b,#10b981,#3b82f6);content:"";height:4px;left:0;opacity:.6;position:absolute;right:0;top:0}.error-fallback__content{color:#f9fafb;max-width:500px;text-align:center;width:100%}.error-fallback__icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));font-size:3rem;margin-bottom:1rem}.error-fallback__message{margin-bottom:2rem}.error-fallback__title{color:#f9fafb;font-family:var(--font-family-display);font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.error-fallback__description{color:#d1d5db;font-size:1rem;line-height:1.5;margin:0 0 1rem}.error-fallback__retry-info{color:#9ca3af;font-size:.875rem;font-style:italic;margin:0}.error-fallback__actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-bottom:2rem}.error-fallback--network:before{background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.error-fallback--auth:before{background:linear-gradient(90deg,#f59e0b,#d97706)}.error-fallback--firebase:before{background:linear-gradient(90deg,#10b981,#059669)}.error-fallback--validation:before{background:linear-gradient(90deg,#f59e0b,#d97706)}.error-fallback--render:before{background:linear-gradient(90deg,#8b5cf6,#7c3aed)}.error-fallback--unknown:before{background:linear-gradient(90deg,#ef4444,#dc2626)}.error-fallback__details{background:#111827;border:1px solid #374151;border-radius:8px;margin-top:2rem;overflow:hidden;text-align:left}.error-fallback__details summary{background:#1f2937;border-bottom:1px solid #374151;color:#d1d5db;cursor:pointer;font-weight:500;padding:1rem;-webkit-user-select:none;user-select:none}.error-fallback__details summary:hover{background:#374151}.error-fallback__details[open] summary{border-bottom:1px solid #374151}.error-fallback__debug{font-size:.875rem;line-height:1.5;padding:1rem}.error-detail{color:#d1d5db;margin-bottom:.75rem}.error-detail strong{display:inline-block;min-width:120px}.error-stack{background:#0f172a;border:1px solid #334155;border-radius:4px;color:#e2e8f0;font-family:var(--font-family-mono);font-size:.75rem;margin-top:.5rem;max-height:200px;overflow-x:auto;overflow-y:auto;padding:.75rem;white-space:pre-wrap;word-break:break-all}.error-fallback__support{border-top:1px solid #374151;margin-top:2rem;padding-top:1.5rem}.error-fallback__support-text{color:#9ca3af;font-size:.875rem;margin:0}.error-fallback__support-link{background:none;border:none;color:#3b82f6;cursor:pointer;font-family:inherit;font-size:inherit;padding:0;text-decoration:underline}.error-fallback__support-link:hover{color:#60a5fa}.error-fallback__support-link:focus{border-radius:2px;outline:2px solid #3b82f6;outline-offset:2px}@media (max-width:640px){.error-fallback{margin:.5rem 0;padding:1.5rem 1rem}.error-fallback__icon{font-size:2.5rem}.error-fallback__title{font-size:1.25rem}.error-fallback__description{font-size:.875rem}.error-fallback__actions{align-items:center;flex-direction:column}.error-fallback__actions button{max-width:200px;width:100%}.error-fallback__debug{padding:.75rem}.error-stack{font-size:.625rem;padding:.5rem}}@media (prefers-contrast:high){.error-fallback{background:#000;border:2px solid}.error-fallback__title{color:#fff}.error-fallback__description{color:#f0f0f0}.error-fallback__details{border:2px solid}}@media (prefers-reduced-motion:reduce){.error-fallback:before{background:#ef4444}}@media print{.error-fallback{background:#fff;border:1px solid #000;color:#000}.error-fallback:before{display:none}.error-fallback__details summary:after{content:" (Click to expand)"}}.error-notification-container{max-width:400px;pointer-events:none;position:fixed;width:100%;z-index:9500}.error-notification-container--top-right{right:1rem;top:1rem}.error-notification-container--top-left{left:1rem;top:1rem}.error-notification-container--bottom-right{bottom:1rem;right:1rem}.error-notification-container--bottom-left{bottom:1rem;left:1rem}.error-notification-container--top-center{left:50%;top:1rem;transform:translateX(-50%)}.error-notification-container--bottom-center{bottom:1rem;left:50%;transform:translateX(-50%)}.error-notification-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#111827f2;border:1px solid #374151;border-radius:8px 8px 0 0;justify-content:space-between;margin-bottom:.5rem;padding:.75rem 1rem;pointer-events:auto}.error-notification-count{color:#f9fafb;font-size:.875rem;font-weight:600}.error-notification-dismiss-all{background:none;border:none;border-radius:4px;color:#9ca3af;cursor:pointer;font-size:.75rem;padding:.25rem .5rem;transition:all .15s ease}.error-notification-dismiss-all:hover{background:#374151;color:#f9fafb}.error-notification-list{display:flex;flex-direction:column;gap:.5rem}.error-notification{animation:slideIn .3s ease-out forwards;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#111827f2;border:1px solid #374151;border-radius:8px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;overflow:hidden;pointer-events:auto;position:relative;transform:translateX(100%)}@keyframes slideIn{to{transform:translateX(0)}}.error-notification-progress{background:currentColor;bottom:0;height:2px;left:0;opacity:.6;position:absolute;transition:width .1s linear}.error-notification-content{padding:1rem}.error-notification-header{align-items:flex-start;display:flex;gap:.75rem;margin-bottom:0}.error-notification-icon{flex-shrink:0;font-size:1.25rem;margin-top:.125rem}.error-notification-text{flex:1 1;min-width:0}.error-notification-title{color:#f9fafb;font-weight:500;line-height:1.4;margin-bottom:.25rem}.error-notification-context{color:#9ca3af;font-size:.75rem;opacity:.8}.error-notification-actions{align-items:flex-start;display:flex;flex-shrink:0;gap:.25rem}.error-notification--low{border-left:4px solid #3b82f6}.error-notification--low .error-notification-progress{background:#3b82f6}.error-notification--medium{border-left:4px solid #f59e0b}.error-notification--medium .error-notification-progress{background:#f59e0b}.error-notification--high{border-left:4px solid #ef4444}.error-notification--high .error-notification-progress{background:#ef4444}.error-notification--critical{background:#ef44441a;border-left:4px solid #dc2626}.error-notification--critical .error-notification-progress{background:#dc2626}.error-notification--network{border-color:#3b82f6}.error-notification--auth{border-color:#f59e0b}.error-notification--firebase{border-color:#10b981}.error-notification--validation{border-color:#f59e0b}.error-notification--storage{border-color:#8b5cf6}.error-notification--permission{border-color:#ef4444}.error-notification-details{border-top:1px solid #374151;color:#d1d5db;font-size:.75rem;margin-top:.75rem;padding-top:.75rem}.error-detail{margin-bottom:.25rem;word-break:break-word}.error-detail strong{color:#f9fafb;font-weight:600}@media (max-width:640px){.error-notification-container{left:1rem!important;max-width:calc(100vw - 2rem);right:1rem!important;transform:none!important}.error-notification-container--bottom-center,.error-notification-container--top-center{left:1rem;transform:none}.error-notification-content{padding:.75rem}.error-notification-title{font-size:.875rem}.error-notification-actions{gap:.125rem}}@media (prefers-contrast:high){.error-notification{background:#000;border:2px solid}.error-notification-title{color:#fff}.error-notification-context{color:#f0f0f0}}@media (prefers-reduced-motion:reduce){.error-notification{animation:none;transform:translateX(0)}.error-notification-progress{transition:none}}@media print{.error-notification-container{display:none}}.error-notification button:focus{outline:2px solid #3b82f6;outline-offset:2px}.error-notification:hover{background:#1f2937fa}.error-notification.removing{animation:slideOut .3s ease-in forwards}@keyframes slideOut{to{opacity:0;transform:translateX(100%)}}.site-footer{background:var(--primary-bg);color:var(--text-primary);margin-top:var(--space-xl);min-height:auto;overflow:hidden;position:relative}.site-footer:before{background:radial-gradient(circle at 20% 20%,#fc3d2114 0,#0000 50%),radial-gradient(circle at 80% 80%,#fc3d210d 0,#0000 50%),linear-gradient(135deg,#111111f2,#1a1a1afa);bottom:0;z-index:1}.site-footer:after,.site-footer:before{content:"";left:0;position:absolute;right:0;top:0}.site-footer:after{background:linear-gradient(90deg,#0000,var(--accent-color),#0000);height:1px;opacity:.6;z-index:3}.footer-wave{display:none}.footer-content{margin:0 auto;max-width:1200px;padding:var(--space-lg) 0 var(--space-md);padding-left:clamp(1rem,4vw,2.5rem);padding-right:clamp(1rem,4vw,2.5rem);position:relative;z-index:4}.footer-trust-indicators{display:flex;flex-wrap:wrap;gap:var(--space-lg);justify-content:center;margin-bottom:var(--space-xl)}.footer-trust-item{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffff08;border:1px solid #ffffff1f;border-radius:var(--radius-lg);min-width:140px;overflow:hidden;padding:var(--space-md) var(--space-lg);position:relative;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.footer-trust-item:before{background:linear-gradient(135deg,#fc3d2108,#0000);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.footer-trust-item:hover{border-color:#fc3d214d;box-shadow:0 15px 35px #0003,inset 0 1px 0 #ffffff1a;transform:translateY(-4px)}.footer-trust-item:hover:before{opacity:1}.trust-metric{color:var(--accent-color);display:block;font-size:var(--text-2xl);font-weight:var(--font-bold);line-height:1;margin-bottom:var(--space-xs)}.trust-label{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);letter-spacing:.5px;text-transform:uppercase}.footer-row{grid-gap:var(--space-lg);align-items:center;display:grid;gap:var(--space-lg);grid-template-columns:1fr auto 1fr;width:100%}.footer-left{text-align:left}.footer-center{text-align:center}.footer-right{align-items:flex-end;display:flex;flex-direction:column;gap:var(--space-xs);text-align:right}.footer-logo{background:none;border:none;color:var(--text-primary);cursor:pointer;display:block;font-size:clamp(1.1rem,2.5vw,1.4rem);font-weight:var(--font-bold);letter-spacing:1.5px;margin-bottom:var(--space-xs);text-transform:uppercase;transition:color .3s ease}.footer-logo:hover{color:var(--accent-color)}.footer-tagline{color:var(--text-secondary);font-size:.9rem;line-height:1.4;margin:0;max-width:250px}.social-links{display:flex;gap:var(--space-xs);margin-bottom:var(--space-xs)}.social-link{align-items:center;background:#ffffff0d;border:1px solid #ffffff26;border-radius:var(--radius-lg);color:var(--text-primary);cursor:pointer;display:flex;font-size:.95rem;height:40px;justify-content:center;outline:none;position:relative;text-decoration:none;transition:all .3s ease;width:40px}.social-link:focus,.social-link:hover{background:var(--accent-color);border-color:var(--accent-color);box-shadow:0 4px 12px #fc3d214d;color:#fff;transform:translateY(-2px)}.social-link:focus{outline:2px solid var(--accent-color);outline-offset:2px}.social-link:active{transform:translateY(0);transition-duration:.1s}.footer-verse{max-width:300px}.verse-text{color:var(--text-secondary);font-size:.9rem;font-style:italic;font-weight:300;line-height:1.4;margin:0 0 var(--space-xs)}.verse-text:after,.verse-text:before{color:var(--accent-color);content:'"';opacity:.6}.verse-reference{color:var(--text-muted);font-size:.75rem;font-style:normal;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.copyright{margin:0}.copyright,.footer-copyright{color:var(--text-muted);font-size:.8rem}.footer-copyright{margin:var(--space-lg) 0 0;text-align:center}@media (min-width:1200px){.social-link{font-size:1.1rem;height:48px;width:48px}.social-links{gap:var(--space-sm)}}@media (min-width:769px){.social-link{font-size:1rem;height:44px;width:44px}.footer-right{justify-content:center;min-height:60px}}@media (max-width:768px){.footer-row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-lg);justify-content:space-between}.footer-left{order:1}.footer-right{align-items:center;order:2}.footer-center{align-items:center;display:flex;flex-direction:column;order:3;text-align:center;width:100%}.social-links{gap:var(--space-md);justify-content:center;margin-bottom:0}.footer-tagline{margin-bottom:0;max-width:280px}.footer-logo{margin-bottom:0}.footer-copyright{margin-top:var(--space-xl)}}@media (max-width:480px){.footer-content{padding:var(--space-lg) var(--space-md)}.footer-row{gap:var(--space-xl)}.footer-left{gap:var(--space-lg)}.footer-logo{font-size:1.2rem}.footer-tagline{font-size:.95rem;max-width:320px}.social-links{gap:var(--space-lg);margin-bottom:0}.social-link{font-size:1.1rem;height:44px;width:44px}.footer-copyright{font-size:.85rem}.footer-verse{max-width:320px}.verse-text{font-size:.95rem}}@media (prefers-reduced-motion:reduce){.footer-logo,.social-link{transition:none}.social-link:hover{transform:none}}.scroll-progress-bar{background:linear-gradient(90deg,var(--accent-color),#e03e2b);box-shadow:0 2px 10px #fc3d214d;height:3px;left:0;position:fixed;top:0;transform-origin:left;transition:opacity .3s ease;width:100%;z-index:100}.skip-link{transition:left .3s ease;z-index:10}body:has(.workout-modal-overlay) .skip-link,body:has([role=dialog]) .skip-link{display:none}.gym-navbar{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:linear-gradient(135deg,#111111d9,#111111f2);border-bottom:1px solid #ffffff1f;box-shadow:0 4px 20px #00000040;height:var(--header-height);justify-content:space-between;left:0;padding:0 clamp(.75rem,3vw,2rem);position:fixed;right:0;top:0;transition:all .3s ease;z-index:1000}.gym-nav-actions,.gym-navbar{align-items:center;display:flex}.gym-nav-actions{gap:1rem;gap:var(--space-md,1rem);z-index:12}.account-menu{position:relative}.account-trigger{background:#0000;border:1px solid #fff3;border-radius:999px;color:var(--text-primary);cursor:pointer;font-weight:500;padding:.45rem .9rem}.account-dropdown{background:#0f0f0ffa;border:1px solid #ffffff1a;border-radius:12px;box-shadow:0 10px 30px #0006;display:flex;flex-direction:column;gap:.25rem;min-width:180px;padding:.5rem;position:absolute;right:0;top:calc(100% + 10px);z-index:1200}.account-dropdown button{background:#0000;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;font-weight:500;padding:.6rem .8rem;text-align:left}.account-dropdown button:hover{background:#ffffff14;color:var(--text-primary)}.gym-navbar.scrolled{background:linear-gradient(135deg,#111111f2,#111111fa);box-shadow:0 8px 24px #00000059}.gym-logo{align-items:center;background:none;border:none;cursor:pointer;display:flex;padding:0;transition:all var(--duration-base) var(--ease-out);z-index:11}.gym-logo:hover{transform:translateY(-1px)}.gym-logo:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--accent-color);outline-offset:4px}.gym-logo-text{color:var(--text-primary);font-family:var(--font-family-display);font-size:clamp(1.1rem,2.5vw,1.5rem);font-weight:var(--display-bold);letter-spacing:clamp(2px,.8vw,3px);line-height:1.2;padding-bottom:5px;position:relative;text-transform:uppercase}.gym-logo-text:after{background:var(--accent-color);bottom:0;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:right;transition:transform .3s ease;width:100%}.gym-logo:hover .gym-logo-text:after{transform:scaleX(1);transform-origin:left}.gym-nav-links{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#111111f2,#111111fa);border-bottom:1px solid #fc3d2133;box-shadow:0 20px 40px #0006,inset 0 1px 0 #ffffff1a;display:flex;flex-direction:column;gap:1.5rem;gap:var(--space-lg,1.5rem);left:0;max-height:calc(100vh - 70px);max-height:calc(100vh - var(--header-height, 70px));opacity:0;overflow-y:visible;padding:2rem 1.5rem;padding:var(--space-xl,2rem) var(--space-lg,1.5rem);padding-bottom:max(2rem,env(safe-area-inset-bottom));padding-bottom:max(var(--space-xl,2rem),env(safe-area-inset-bottom));position:fixed;right:0;text-align:center;top:70px;top:var(--header-height,70px);transform:translateY(-100%);transition:all .4s cubic-bezier(.4,0,.2,1);visibility:hidden;z-index:1001}.mobile-auth-actions{border-top:1px solid #ffffff0f;margin-top:1rem;margin-top:var(--space-md,1rem);padding-top:1rem;padding-top:var(--space-md,1rem);width:100%}.mobile-auth-row{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.mobile-auth-item{background:#ffffff0f;border:1px solid #ffffff14;border-radius:999px;color:var(--text-secondary);cursor:pointer;font-size:.78rem;font-weight:500;letter-spacing:.3px;padding:.45rem .9rem;transition:all .2s ease;white-space:nowrap}.mobile-auth-item:active,.mobile-auth-item:hover{background:#ffffff1a;border-color:#ffffff26;color:var(--text-primary)}.gym-nav-links.active .mobile-auth-actions{animation:fadeIn .4s ease .35s both}.gym-nav-links.active{opacity:1;transform:translateY(0);visibility:visible}.nav-link{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;justify-content:center;letter-spacing:.8px;max-width:280px;opacity:0;padding:.5rem .75rem;position:relative;text-decoration:none;text-transform:uppercase;transform:translateY(-20px);transition:all .3s ease;width:100%}.nav-link:before{background:var(--accent-color);bottom:-2px;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%) scaleX(0);transform-origin:center;transition:transform .3s ease;width:100%}.nav-link:hover{color:var(--text-primary)}.nav-link:hover:before{transform:translateX(-50%) scaleX(1)}.menu-backdrop{animation:fadeInBackdrop .3s ease-out;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#00000080;bottom:0;cursor:pointer;left:0;position:fixed;right:0;top:0;z-index:8}@keyframes fadeInBackdrop{0%{backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);opacity:0}to{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:1}}.hamburger-menu{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;flex-direction:column;height:32px;justify-content:center;padding:4px;position:relative;transition:all .2s cubic-bezier(.25,.46,.45,.94);width:32px;z-index:11}.hamburger-menu:hover{opacity:.7;transform:scale(1.1)}.hamburger-menu:focus-visible{border-radius:4px;outline:2px solid var(--accent-color);outline-offset:2px}.hamburger-line{background:#fff;border-radius:1px;height:2px;margin:2px 0;transform-origin:center;transition:all .3s cubic-bezier(.25,.46,.45,.94);width:24px}.hamburger-menu.active .hamburger-line:first-child{background:var(--accent-color);transform:translateY(6px) rotate(45deg)}.hamburger-menu.active .hamburger-line:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger-menu.active .hamburger-line:nth-child(3){background:var(--accent-color);transform:translateY(-6px) rotate(-45deg)}.gym-nav-links.active .nav-link{animation:slideInDown .5s cubic-bezier(.4,0,.2,1) forwards}.gym-nav-links.active .nav-link:first-child{animation-delay:.1s}.gym-nav-links.active .nav-link:nth-child(2){animation-delay:.2s}.gym-nav-links.active .nav-link:nth-child(3){animation-delay:.3s}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (min-width:769px){.gym-nav-links{align-items:center;backdrop-filter:none;-webkit-backdrop-filter:none;background:none;border:none;box-shadow:none;flex:1 1;flex-direction:row;gap:var(--space-xl);height:auto;justify-content:center;max-height:none;opacity:1;overflow-y:visible;padding:0;position:static;transform:none;visibility:visible}.nav-link{font-size:.9rem;font-weight:500;letter-spacing:.8px;max-width:none;opacity:1;padding:var(--space-sm) var(--space-md);transform:none;width:auto}.hamburger-menu{display:none!important}.gym-nav-actions{margin-left:auto}.mobile-auth-actions{display:none}}@media (min-width:1200px){.gym-nav-links{gap:calc(var(--space-xl) + var(--space-md))}.nav-link{font-size:1rem;padding:var(--space-md) var(--space-xl)}}@media (max-width:768px){.hamburger-menu{display:flex!important;height:40px;padding:8px;width:40px}.hamburger-line{height:2.5px;width:24px}.hamburger-menu.active .hamburger-line:first-child{transform:translateY(7px) rotate(45deg)}.hamburger-menu.active .hamburger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.gym-nav-links{backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;background:linear-gradient(135deg,#111111f2,#111111fa)!important;flex-direction:column!important;gap:1rem!important;gap:var(--space-md,1rem)!important;max-height:calc(100vh - 70px);max-height:calc(100vh - var(--header-height, 70px));overflow-y:auto!important;padding:1.5rem!important;padding:var(--space-lg,1.5rem)!important;position:fixed!important;top:70px!important;top:var(--header-height,70px)!important;transform:translateY(-100%)!important;z-index:1001!important}.gym-nav-links.active{opacity:1!important;transform:translateY(0)!important;visibility:visible!important}.nav-link{justify-content:center!important;margin:0 auto!important;max-width:280px!important;padding:1rem 1.5rem!important;padding:var(--space-md,1rem) var(--space-lg,1.5rem)!important;width:100%!important}.gym-nav-actions{display:none}.account-trigger{font-size:.85rem;padding:.35rem .7rem}}@media (max-width:1024px){.gym-logo-text{font-size:1.3rem}}@media (prefers-reduced-motion:reduce){.gym-nav-links,.hamburger-line,.menu-backdrop,.nav-link{animation:none!important;transition:all .2s ease!important}.nav-link:before{display:none}}.gym-hero{align-items:flex-start;background:var(--primary-bg);box-sizing:border-box;color:var(--text-primary);display:flex;justify-content:flex-start;min-height:100vh;overflow:hidden;padding:0;position:relative;width:100%;z-index:1}.gym-hero:before{background:linear-gradient(90deg,#0000,var(--accent-color),#0000);content:"";height:1px;left:0;opacity:.6;position:absolute;right:0;top:0;z-index:2}.gym-hero-overlay{background:radial-gradient(ellipse at center,#0000001a 0,#0006 100%),linear-gradient(180deg,#1111114d 0,#1116 40%,#11111173 60%,#11111180);inset:0;position:absolute;z-index:1}.gym-hero .gym-navbar{background:linear-gradient(180deg,#1119,#11111140);border-bottom:1px solid #ffffff0d;box-shadow:none}.gym-hero-content{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:0;max-width:none;min-height:calc(100vh - var(--header-height));padding:calc(var(--header-height) + 3rem) clamp(2rem,5vw,4rem) 4rem;position:relative;text-align:center;transform:translateY(0);transition:transform .1s ease-out;width:100%;z-index:5}.gym-hero-text{max-width:800px;position:relative;z-index:2}.gym-hero-content h1{display:inline-block;font-family:var(--font-family-display)!important;font-size:4rem;font-weight:var(--display-bold);letter-spacing:.02em;line-height:1.1;margin-bottom:3rem;margin-top:2rem;position:relative;text-transform:uppercase}.gym-hero-content h1:after{background:var(--accent-color);bottom:-10px;content:"";height:3px;left:0;position:absolute;width:80px}.hero-main{-webkit-text-fill-color:#fff!important;animation:heroMainSlideIn .8s cubic-bezier(.4,0,.2,1) .2s forwards;background:none!important;color:#fff!important;display:inline-block;font-family:inherit;letter-spacing:inherit;opacity:0;text-shadow:3px 3px 10px #000000e6;text-transform:inherit;transform:translateY(30px)}.hero-accent{-webkit-text-fill-color:#0000!important;animation-delay:.6s;background:linear-gradient(135deg,var(--accent-color),#ff6b47)!important;-webkit-background-clip:text!important;background-clip:text!important;color:var(--accent-color)!important;font-weight:900;text-shadow:none!important}@keyframes heroMainSlideIn{to{opacity:1;transform:translateY(0)}}.gym-hero-content p{color:var(--text-secondary);font-size:1.25rem;font-weight:400;line-height:1.6;margin:1.5rem 0;max-width:600px;text-shadow:0 1px 2px #00000080}.gym-cta-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin:3rem 0 4rem}.hero-social-proof{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff0a;border:1px solid #ffffff1f;border-radius:16px;box-shadow:var(--shadow-lg);gap:1.5rem;justify-content:center;margin-bottom:3rem;margin-top:2rem;padding:1rem 2rem}.hero-social-proof,.proof-item{align-items:center;display:flex}.proof-item{flex-direction:column;gap:.5rem;text-align:center}.proof-metric{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent-color),#e03e2b);-webkit-background-clip:text;background-clip:text;color:var(--accent-color);font-size:2.5rem;font-weight:700;letter-spacing:-1px;line-height:1}.proof-text{color:var(--text-secondary);font-size:.8rem;font-weight:500;letter-spacing:.5px;opacity:.9;text-transform:uppercase}.proof-divider{background:linear-gradient(to bottom,#0000,var(--border-color),#0000);height:40px;opacity:.6;width:1px}.primary-cta.btn{align-items:center;background:linear-gradient(135deg,var(--accent-color) 0,#e03e2b 100%);border:1px solid #ff6b474d;border-radius:12px;box-shadow:0 1px 2px #0000001a,0 4px 12px #fc3d2140,0 8px 24px #fc3d2126;display:flex;font-size:1rem;font-weight:600;gap:.75rem;justify-content:center;padding:1rem 2rem;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.primary-cta.btn:hover{background:linear-gradient(145deg,#e03e2b 0,var(--accent-color) 100%);border-color:#ff6b4780;box-shadow:0 2px 4px #0000001a,0 8px 20px #fc3d2159,0 16px 40px #fc3d2133,0 0 30px #fc3d2126;transform:translateY(-3px)}.primary-cta .cta-arrow{display:inline-block;font-size:1.1rem;transition:transform .3s cubic-bezier(.4,0,.2,1)}.primary-cta.btn:hover .cta-arrow{transform:translateX(4px)}.primary-cta.btn:active{box-shadow:0 1px 2px #0000001a,0 4px 12px #fc3d214d;transform:translateY(-1px)}.secondary-cta.btn{background:#0000;border:2px solid var(--accent-color);color:var(--accent-color);font-size:1rem;font-weight:600;letter-spacing:normal;padding:1rem 2rem;text-transform:none;transition:all .2s ease}.secondary-cta.btn:hover{background:var(--accent-color);border-color:var(--accent-color);box-shadow:0 8px 25px #fc3d2166;color:#fff;transform:translateY(-2px)}.hero-subtitle{color:var(--text-secondary);font-size:1.2rem;font-weight:400;line-height:1.6;margin:3rem 0 4rem;max-width:600px;text-align:center}.hero-subtitle strong{color:var(--text-primary);font-weight:600}.trust-indicators{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin:2rem 0 1rem}.trust-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:color .2s ease}.trust-item:hover{color:var(--text-primary)}.trust-icon{color:var(--accent-color);font-size:.9rem;opacity:.8}.gym-cta-buttons .btn{overflow:hidden;position:relative;z-index:1}.gym-cta-buttons .btn:before{background:linear-gradient(135deg,#ffffff1a,#0000);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease;z-index:-1}.gym-cta-buttons .btn:hover:before{opacity:1}.pulse-btn{animation:pulse-glow 2s infinite}@keyframes pulse-glow{0%,to{box-shadow:0 4px 15px #fc3d214d}50%{box-shadow:0 8px 25px #fc3d2199}}.gym-login-form{animation:fadeIn .3s ease-in-out;background-color:#ffffff0d;border:1px solid var(--border-color);border-radius:4px;display:flex;flex-direction:column;gap:var(--spacing-sm);margin:0 0 var(--spacing-xl);max-width:350px;padding:var(--spacing-md)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.gym-login-form input{background-color:#ffffff0d;border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);padding:14px}.gym-login-form input::placeholder{color:var(--text-secondary)}.gym-features{grid-gap:2rem;animation:fadeInUp .8s cubic-bezier(.23,1,.32,1) 1s forwards;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:2rem 0;opacity:0;transform:translateY(30px)}.gym-feature{align-items:flex-start;animation:slideUp .5s cubic-bezier(.16,1,.3,1) forwards;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--border-radius);display:flex;gap:1rem;opacity:0;padding:var(--spacing-lg);text-align:left;transform:translateY(20px);transition:var(--transition)}.gym-feature:first-child{animation-delay:.2s}.gym-feature:nth-child(2){animation-delay:.4s}.gym-feature:nth-child(3){animation-delay:.6s}.gym-feature:hover{border-color:var(--accent-color);box-shadow:0 10px 20px #0003;transform:translateY(-5px)}.gym-feature-icon{align-items:center;background:var(--accent-transparent);border-radius:50%;color:var(--accent-color);display:flex;flex-shrink:0;font-size:1.25rem;height:48px;justify-content:center;width:48px}.gym-feature-text h4{color:var(--text-primary);font-size:1.1rem;margin:0 0 .75rem}.gym-feature-text p{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0}.scroll-down-indicator.btn{background:none;border:none;bottom:2.5rem;box-shadow:none;color:#ffffff80;flex-direction:column;font-size:.8rem;font-weight:400;left:50%;letter-spacing:.5px;opacity:.8;position:absolute;text-transform:lowercase;transform:translateX(-50%)}.scroll-down-indicator.btn:hover{background:none;box-shadow:none;color:var(--accent-color);opacity:1;transform:translateX(-50%) translateY(-3px)}.scroll-down-indicator.btn:hover .scroll-icon{animation-duration:1s;color:var(--accent-color);transform:scale(1.1)}.scroll-down-indicator .scroll-icon{animation:bounce 2.5s infinite;font-size:1rem;transition:all .3s ease}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-8px)}60%{transform:translateY(-4px)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}.gym-cta-buttons .btn,.gym-feature,.gym-hero-content{transform:translateZ(0);will-change:transform}@media (prefers-reduced-motion:reduce){.gym-feature,.hero-subtitle,.hero-word{animation:none!important;opacity:1!important;transform:none!important}.pulse-btn:before{animation:none!important}}.gym-hero-badge{align-items:center;align-self:start;animation:fadeInUp .8s cubic-bezier(.23,1,.32,1) 1.2s forwards;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff05;border:1px solid #ffffff14;border-radius:16px;box-shadow:0 15px 35px #0000004d;display:flex;margin:3rem 0 1rem;max-width:400px;opacity:0;overflow:hidden;padding:1.5rem 2rem;position:relative;transform:translateY(30px);transition:all .4s cubic-bezier(.23,1,.32,1)}.gym-hero-badge:hover{border-color:#fc3d2133;box-shadow:0 20px 40px #0006;transform:translateY(-5px) scale(1.02)}.gym-hero-badge:before{background:var(--accent-color);content:"";height:100%;left:0;position:absolute;top:0;width:4px}.badge-content{align-items:center;display:flex;flex-direction:column;padding:0 1.5rem}.badge-content:first-child{padding-left:.5rem}.badge-count{color:var(--accent-color);font-size:2rem;font-weight:700;line-height:1;margin-bottom:.5rem}.badge-text{color:var(--text-secondary);font-size:.85rem;letter-spacing:1px;text-transform:uppercase}.badge-divider{background:var(--border-color);height:40px;width:1px}@media (max-width:1024px){.gym-hero-content{min-height:calc(100vh - var(--header-height));padding-bottom:2rem;padding-top:calc(var(--header-height) + 1rem)}.gym-hero-text{margin:0 auto;max-width:600px;text-align:center;width:100%}.gym-features{grid-template-columns:1fr;margin:2rem auto;max-width:500px}.gym-hero-badge{margin:2rem auto 1rem}}@media (max-width:768px){:root{--content-padding:2rem}.gym-navbar{padding:max(0px,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-left)) 0 max(1rem,env(safe-area-inset-right))}.gym-logo-text{font-size:1.2rem;letter-spacing:1.5px}.gym-hero-content{justify-content:flex-start;min-height:calc(100vh - var(--header-height));padding:calc(var(--header-height) + 1.5rem) clamp(1rem,3vw,2rem) 3rem;padding-top:calc(var(--header-height) + 1.5rem)}.hero-social-proof{gap:1rem;margin-bottom:2rem;margin-top:1rem;padding:.75rem 1.5rem}.proof-metric{font-size:2.5rem}.proof-text{font-size:.9rem}.hero-main{font-size:3.5rem;line-height:.9}.gym-hero-content p{font-size:1.25rem;line-height:1.6}.gym-cta-buttons{flex-direction:column;gap:.75rem;margin:2.5rem 0 3rem}.primary-cta.btn{-webkit-overflow-scrolling:touch;align-items:center;justify-content:center;padding:1rem 1.5rem;text-align:center;width:100%}.primary-cta .cta-arrow{font-size:1.2rem}.secondary-cta.btn{border-width:2px;font-size:1rem;min-height:56px;padding:1rem 1.5rem;width:100%}.trust-indicators{gap:1.5rem;justify-content:center;margin:2rem 0}.trust-item{flex-direction:column;font-size:.85rem;gap:.5rem;text-align:center}}@media (max-width:480px){.gym-hero-content{gap:1.5rem;justify-content:flex-start;max-width:100%;min-height:calc(100vh - var(--header-height));padding:calc(var(--header-height) + 1.5rem) 1.25rem 2.5rem;padding-top:calc(var(--header-height) + 1.5rem)}.hero-social-proof{flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:1.5rem;margin-top:.5rem;padding:.5rem 1.5rem}.proof-item{min-width:80px}.proof-metric{font-size:1.8rem}.proof-text{font-size:.7rem;line-height:1.2}.proof-divider{height:30px}.hero-main{font-size:clamp(2.25rem,8vw,2.75rem);letter-spacing:.02em;line-height:1.1}.gym-hero-content .hero-subtitle,.gym-hero-content p{font-size:clamp(1.1rem,4.5vw,1.25rem);line-height:1.6;margin:1.25rem auto;max-width:85%;text-align:center;text-shadow:0 1px 3px #0009}.gym-cta-buttons{align-items:center;flex-direction:column;gap:1rem;margin:2rem 0 2.5rem;width:100%}.gym-cta-buttons .btn{font-size:clamp(1rem,4vw,1.1rem);max-width:320px;min-height:48px;min-width:120px;padding:14px 24px;width:100%}.primary-cta.btn{border-radius:12px;font-size:1rem;gap:.75rem;min-height:56px;padding:1.25rem 1.5rem;width:100%}.primary-cta .cta-arrow{font-size:1.15rem}.secondary-cta.btn{border-radius:12px;font-size:1rem;min-height:56px;padding:1.25rem 1.5rem;width:100%}.trust-indicators{gap:2rem;justify-content:center;margin:1rem 0}.trust-item{flex-direction:column;font-size:.85rem;gap:.5rem;text-align:center}.trust-icon{font-size:1.1rem}.gym-hero-text h1{font-size:2.2rem;line-height:1.1}.gym-hero-content p{font-size:1rem;line-height:1.5}.gym-cta-buttons,.gym-features{margin:1.5rem 0 1rem}.gym-hero-content p{margin:1rem 0}.gym-hero-badge{flex-direction:column;padding:1rem .5rem}.badge-divider{height:1px;margin:.5rem 0;width:60%}.scroll-down-indicator{display:none}}@media (max-width:360px){.gym-hero-content{gap:1rem;justify-content:flex-start;padding:calc(var(--header-height) + 1rem) 1rem 2rem;padding-top:calc(var(--header-height) + 1rem)}.hero-social-proof{align-items:center;flex-direction:row;flex-wrap:wrap;gap:.75rem;justify-content:space-around;margin-top:.5rem;padding:.5rem 1rem;text-align:center}.proof-item{min-width:70px}.proof-metric{font-size:1.4rem}.proof-text{font-size:.6rem}.proof-divider{display:none}.hero-main{font-size:2rem}.gym-hero-content p{font-size:.9rem}.primary-cta.btn{padding:1rem .75rem}.cta-main{font-size:.9rem}.cta-sub{font-size:.7rem}.trust-indicators{gap:1.5rem;margin:1rem 0}.trust-item{font-size:.8rem}}.video-play-button{align-items:center;background:#0000;border:1px solid #ffffff4d;border-radius:2px;cursor:pointer;display:flex;height:clamp(48px,12vw,60px);justify-content:center;min-height:48px;min-width:48px;position:absolute;right:20px;top:20px;transition:border-color .2s ease,transform .2s ease;width:clamp(48px,12vw,60px);z-index:6}.video-play-button:hover{border-color:#fff9;transform:scale(1.05)}.video-play-button:focus-visible{border-color:var(--accent-color);outline:2px solid var(--accent-color);outline-offset:2px}.video-play-button:active{transform:scale(.95);transition:transform .1s ease}.play-icon{border-bottom:clamp(5px,1.2vw,6px) solid #0000;border-left:clamp(8px,2vw,10px) solid #ffffffe6;border-top:clamp(5px,1.2vw,6px) solid #0000;height:0;margin-left:1px;width:0}.sr-only{clip:rect(0,0,0,0);height:1px;left:-10000px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@media (prefers-reduced-motion:reduce){.gym-hero-video{animation-play-state:paused!important}.video-play-button{transition:none}.video-play-button:hover{transform:none}}.gym-hero-video{display:block;filter:blur(.5px) brightness(.7) contrast(1.1);height:100vh;left:0;object-fit:cover;opacity:.6;pointer-events:none;position:absolute;top:0;transition:all .3s ease;width:100vw;z-index:0}.gym-hero-video:hover{filter:blur(.3px) brightness(.8) contrast(1.2)}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:200px;padding:32px;padding:var(--spacing-xl,32px)}.loading-container.small{min-height:100px;padding:24px;padding:var(--spacing-lg,24px)}.loading-container.large{min-height:400px;padding:48px;padding:var(--spacing-2xl,48px)}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #ffffff1a;border:3px solid var(--border-light,#ffffff1a);border-radius:50%;border-top:3px solid #fc3d21;height:40px;margin-bottom:16px;margin-bottom:var(--spacing-md,16px);width:40px}.loading-container.small .loading-spinner{border-width:2px;height:24px;width:24px}.loading-container.large .loading-spinner{border-width:4px;height:60px;width:60px}.loading-message{color:#ffffffb3;color:var(--text-secondary,#ffffffb3);font-size:1rem;font-size:var(--font-size-base,1rem);margin:0;text-align:center}.loading-container.small .loading-message{font-size:.875rem;font-size:var(--font-size-sm,.875rem)}.loading-container.large .loading-message{font-size:1.125rem;font-size:var(--font-size-lg,1.125rem)}.skeleton-container{display:flex;flex-direction:column;gap:16px;gap:var(--spacing-md,16px);padding:24px;padding:var(--spacing-lg,24px)}.skeleton-item{animation:skeleton-loading 1.5s infinite;background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a 50%,#ffffff0d 75%);background:linear-gradient(90deg,var(--surface,#ffffff0d) 25%,var(--surface-hover,#ffffff1a) 50%,var(--surface,#ffffff0d) 75%);background-size:200% 100%;border-radius:4px;border-radius:var(--radius-sm,4px);height:20px}.skeleton-item.title{height:32px;width:60%}.skeleton-item.text{height:16px;width:80%}.skeleton-item.short{width:40%}.skeleton-item.button{border-radius:8px;border-radius:var(--radius-md,8px);height:40px;width:120px}@keyframes skeleton-loading{0%{background-position:-200% 0}to{background-position:200% 0}}.loading-overlay{position:relative}.loading-overlay:before{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;bottom:0;content:"";display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.loading-overlay .loading-spinner{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:11}.flex,.flex-col{display:flex}.flex-col{flex-direction:column}.flex-row{display:flex;flex-direction:row}.flex-center{justify-content:center}.flex-between,.flex-center{align-items:center;display:flex}.flex-between{justify-content:space-between}.flex-start{justify-content:flex-start}.flex-end,.flex-start{align-items:center;display:flex}.flex-end{justify-content:flex-end}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.gap-sm{gap:.5rem}.gap-md{gap:1rem}.gap-lg{gap:1.5rem}.gap-xl{gap:2rem}.w-full{width:100%}.h-full{height:100%}.w-fit{width:-webkit-fit-content;width:fit-content}.h-fit{height:-webkit-fit-content;height:fit-content}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:-webkit-sticky;position:sticky}.center-absolute{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.top-right{right:1rem}.top-left,.top-right{position:absolute;top:1rem}.top-left{left:1rem}.bottom-right{bottom:1rem;position:absolute;right:1rem}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.z-1{z-index:1}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}:focus{outline:none}:focus-visible{outline:2px solid #3b82f6;outline:2px solid var(--accent-color,#3b82f6);outline-offset:2px}[role=button]:focus-visible,[role=link]:focus-visible,[tabindex]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:0 0 0 4px #fc3d211a;outline:2px solid #3b82f6;outline:2px solid var(--accent-color,#3b82f6);outline-offset:2px}@media (prefers-contrast:high){:focus-visible{outline:3px solid currentColor;outline-offset:2px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:0 0 0 6px #ffffff4d;outline:3px solid currentColor;outline-offset:2px}}.skip-link{background:var(--accent-color);border-radius:var(--radius-sm);color:#fff;font-weight:var(--font-medium);left:-9999px;padding:var(--space-sm) var(--space-md);position:absolute;text-decoration:none;top:0;transition:top .3s ease;z-index:10000}.skip-link:focus{left:var(--space-md);outline:2px solid var(--accent-hover);outline-offset:2px;top:var(--space-md)}.text-high-contrast{background-color:#111;color:#fff}.text-high-contrast-inverse{background-color:#fff;color:#111}.text-error{background-color:#dc2626;color:#fef2f2}.text-warning{background-color:#f59e0b;color:#111}.text-success{background-color:#059669;color:#fff}.text-info{background-color:#2563eb;color:#fff}.icon-button,.interactive-element,a,button,input[type=button],input[type=reset],input[type=submit]{min-height:44px;min-width:44px}.icon-button{align-items:center;display:inline-flex;justify-content:center}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media print{.skip-link{display:none}*{background:#0000!important;box-shadow:none!important;color:#000!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}}.focus-trap{position:relative}.focus-trap:focus{outline:none}[role=button],[role=link],[role=menuitem],[role=option],[role=tab]{position:relative}[role=button]:focus-visible:after,[role=link]:focus-visible:after,[role=menuitem]:focus-visible:after,[role=option]:focus-visible:after,[role=tab]:focus-visible:after{border:2px solid #3b82f6;border:2px solid var(--accent-color,#3b82f6);border-radius:4px;bottom:-2px;content:"";left:-2px;pointer-events:none;position:absolute;right:-2px;top:-2px}@media (prefers-color-scheme:dark){.text-high-contrast{background-color:#000;color:#fff}.text-high-contrast-inverse{background-color:#fff;color:#000}}@media (max-width:768px){body,button,input,select,textarea{font-size:16px}}.visually-hidden{clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.visually-hidden:focus{clip:auto!important;height:auto!important;margin:inherit!important;overflow:visible!important;padding:inherit!important;position:static!important;white-space:normal!important;width:auto!important}.sr-only{clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}:root{--app-bg:#111;--app-text:#fff}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#111;background-color:var(--app-bg);color:#fff;color:var(--app-text);font-family:var(--font-family-sans);margin:0;min-height:100%;overflow-x:hidden;padding:70px 0 0;padding-top:var(--header-height,70px);scroll-behavior:smooth;width:100%}.page-section{position:relative;scroll-margin-top:80px}body.homepage{padding-top:0}body[data-admin-active]{overflow:hidden;padding-top:0;position:relative}body.homepage:not([data-admin-active]){padding-top:0}body[data-admin-active].homepage{overflow:hidden;padding-top:0}.loading{align-items:center;background-color:#111;background-color:var(--app-bg);display:flex;justify-content:center;min-height:100vh}.loading:after{animation:spin 1s ease-in-out infinite;border:4px solid #ffffff1a;border-radius:50%;border-top-color:#4caf50;content:"";height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.App{height:100%;overflow-x:hidden;text-align:center;width:100%}*,.App{margin:0;padding:0}*{box-sizing:border-box}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#111;background-color:var(--app-bg);color:#fff;color:var(--app-text);display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}